From 46a3c3a4bc93a4c40cf5613a15be9f33f2cfe6ff Mon Sep 17 00:00:00 2001 From: Crony Akatsuki Date: Wed, 2 Jul 2025 11:58:25 +0200 Subject: [PATCH] feat(destkop): add script for video optimisation. --- .../cross-platform/home-manager/scripts/bin/optimise-vid | 6 ++++++ modules/cross-platform/home-manager/scripts/default.nix | 4 ++++ 2 files changed, 10 insertions(+) create mode 100755 modules/cross-platform/home-manager/scripts/bin/optimise-vid diff --git a/modules/cross-platform/home-manager/scripts/bin/optimise-vid b/modules/cross-platform/home-manager/scripts/bin/optimise-vid new file mode 100755 index 0000000..8452611 --- /dev/null +++ b/modules/cross-platform/home-manager/scripts/bin/optimise-vid @@ -0,0 +1,6 @@ +#!/usr/bin/env sh + +File="$1" +FileOptimized="${File%.*}-optimized.mp4" + +ffmpeg -y -hwaccel cuda -hwaccel_output_format cuda -c:v h264_cuvid -i "$File" -c:v h264_nvenc -preset:v p7 -tune:v hq -rc:v vbr -cq:v 29 -b:v 0 -profile:v high "$FileOptimized" diff --git a/modules/cross-platform/home-manager/scripts/default.nix b/modules/cross-platform/home-manager/scripts/default.nix index af7386d..821a715 100644 --- a/modules/cross-platform/home-manager/scripts/default.nix +++ b/modules/cross-platform/home-manager/scripts/default.nix @@ -23,5 +23,9 @@ with pkgs; # Add dependencies to the runtime for my iso2chd script wrapProgram $out/bin/iso2chd \ --prefix PATH : ${lib.makeBinPath [mame-tools]} + + # Add dependencies for optimise-vid script + wrapProgram $out/bin/optimise-vid \ + --prefix PATH : ${lib.makeBinPath [ffmpeg cudatoolkit]} ''; }