From dd78812a70f0f0950f1058f16db1686de705b024 Mon Sep 17 00:00:00 2001 From: Atemu Date: Sun, 10 Nov 2024 09:11:43 +0100 Subject: [PATCH 1/8] ffmpeg-headless: enable vulkan /nix/store/m5ghr321rsxpfl001c5fdh56y9f42lpd-ffmpeg-headless-7.1-bin 233072648 /nix/store/rjimh83l9pdpmd7qvanvfhkwr13cmbz5-ffmpeg-headless-7.1-bin 234001624 --- pkgs/development/libraries/ffmpeg/generic.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index eab578cf931fa..759dd2eeef08a 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -127,7 +127,7 @@ , withVorbis ? withHeadlessDeps # Vorbis de/encoding, native encoder exists , withVpl ? false # Hardware acceleration via intel libvpl , withVpx ? withHeadlessDeps && stdenv.buildPlatform == stdenv.hostPlatform # VP8 & VP9 de/encoding -, withVulkan ? withSmallDeps && !stdenv.hostPlatform.isDarwin +, withVulkan ? withHeadlessDeps && !stdenv.hostPlatform.isDarwin , withVvenc ? withFullDeps && lib.versionAtLeast version "7.1" # H.266/VVC encoding , withWebp ? withHeadlessDeps # WebP encoder , withX264 ? withHeadlessDeps && withGPL # H.264/AVC encoder From 3f601a9255f8c6c34f8cf68bfbed8c01b6dd20ad Mon Sep 17 00:00:00 2001 From: Atemu Date: Sun, 10 Nov 2024 09:21:23 +0100 Subject: [PATCH 2/8] ffmpeg-headless: enable fribidi /nix/store/rjimh83l9pdpmd7qvanvfhkwr13cmbz5-ffmpeg-headless-7.1-bin 234001624 /nix/store/pk5bgvay9yb1hl6pcda2fs9d33s7gws0-ffmpeg-headless-7.1-bin 234002056 --- pkgs/development/libraries/ffmpeg/generic.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 759dd2eeef08a..31e0925056ed0 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -63,7 +63,7 @@ , withFontconfig ? withHeadlessDeps # Needed for drawtext filter , withFreetype ? withHeadlessDeps # Needed for drawtext filter , withFrei0r ? withFullDeps && withGPL # frei0r video filtering -, withFribidi ? withFullDeps # Needed for drawtext filter +, withFribidi ? withHeadlessDeps # Needed for drawtext filter , withGme ? withFullDeps # Game Music Emulator , withGnutls ? withHeadlessDeps , withGsm ? withFullDeps # GSM de/encoder From 34a886774394d0bcfebb81bae427d92ecd1fe652 Mon Sep 17 00:00:00 2001 From: Atemu Date: Sun, 10 Nov 2024 09:24:16 +0100 Subject: [PATCH 3/8] ffmpeg-headless: enable bluray /nix/store/pk5bgvay9yb1hl6pcda2fs9d33s7gws0-ffmpeg-headless-7.1-bin 234002056 /nix/store/4gmnzizak5ca1skhf9r9m2m0jcbik8ap-ffmpeg-headless-7.1-bin 236116824 --- pkgs/development/libraries/ffmpeg/generic.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 31e0925056ed0..a967da3db459f 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -40,7 +40,7 @@ , withAribcaption ? withFullDeps && lib.versionAtLeast version "6.1" # ARIB STD-B24 Caption Decoder/Renderer , withAss ? withHeadlessDeps && stdenv.hostPlatform == stdenv.buildPlatform # (Advanced) SubStation Alpha subtitle rendering , withAvisynth ? withFullDeps # AviSynth script files reading -, withBluray ? withFullDeps # BluRay reading +, withBluray ? withHeadlessDeps # BluRay reading , withBs2b ? withFullDeps # bs2b DSP library , withBzlib ? withHeadlessDeps , withCaca ? withFullDeps # Textual display (ASCII art) From 610b0fd1995945d6309feb36ee40912403766887 Mon Sep 17 00:00:00 2001 From: Atemu Date: Sun, 10 Nov 2024 09:46:55 +0100 Subject: [PATCH 4/8] ffmpeg-headless: enable xml2 /nix/store/4gmnzizak5ca1skhf9r9m2m0jcbik8ap-ffmpeg-headless-7.1-bin 236116824 /nix/store/nqardac1g5h774bprz145fsl4qm2p92l-ffmpeg-headless-7.1-bin 236173272 --- pkgs/development/libraries/ffmpeg/generic.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index a967da3db459f..da9689cdeb291 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -140,7 +140,7 @@ , withXevd ? withFullDeps && lib.versionAtLeast version "7.1" && !xevd.meta.broken # MPEG-5 EVC decoding , withXeve ? withFullDeps && lib.versionAtLeast version "7.1" && !xeve.meta.broken # MPEG-5 EVC encoding , withXlib ? withFullDeps # Xlib support -, withXml2 ? withFullDeps # libxml2 support, for IMF and DASH demuxers +, withXml2 ? withHeadlessDeps # libxml2 support, for IMF and DASH demuxers , withXvid ? withHeadlessDeps && withGPL # Xvid encoder, native encoder exists , withZimg ? withHeadlessDeps , withZlib ? withHeadlessDeps From 2fa42d7b13c4b9c39aa19a5680b1ca81faed99a2 Mon Sep 17 00:00:00 2001 From: Atemu Date: Sun, 10 Nov 2024 09:24:42 +0100 Subject: [PATCH 5/8] ffmpeg-headless: enable openmpt /nix/store/nqardac1g5h774bprz145fsl4qm2p92l-ffmpeg-headless-7.1-bin 236173272 /nix/store/a9a7n7w0dhcjay5vi41xy685m6md1hkw-ffmpeg-headless-7.1-bin 294694384 This may look like quite an increase but if you combine it with a noteworthy package such as pipewire, the increase is only ~5MiB: /nix/store/cs43xb7x8bqy0igaip0vrsgjij5aafc9-foo 657507664 /nix/store/xcgc1k9mn8f9fqns9832dnnlhnxm6dka-foo 661376384 With actual closures, I believe this would be even less. --- pkgs/development/libraries/ffmpeg/generic.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index da9689cdeb291..855b3a5fe1f7e 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -93,7 +93,7 @@ , withOpengl ? withFullDeps && !stdenv.hostPlatform.isDarwin # OpenGL rendering , withOpenh264 ? withFullDeps # H.264/AVC encoder , withOpenjpeg ? withHeadlessDeps # JPEG 2000 de/encoder -, withOpenmpt ? withFullDeps # Tracked music files decoder +, withOpenmpt ? withHeadlessDeps # Tracked music files decoder , withOpus ? withHeadlessDeps # Opus de/encoder , withPlacebo ? withFullDeps && !stdenv.hostPlatform.isDarwin # libplacebo video processing library , withPulse ? withSmallDeps && stdenv.hostPlatform.isLinux # Pulseaudio input support From ca1689f486da5fc2d8c9d14c48851db60e80cb1a Mon Sep 17 00:00:00 2001 From: Atemu Date: Sun, 10 Nov 2024 10:15:56 +0100 Subject: [PATCH 6/8] ffmpeg-headless: enable zvbi /nix/store/a9a7n7w0dhcjay5vi41xy685m6md1hkw-ffmpeg-headless-7.1-bin 294694384 /nix/store/2wxab02vqydrmm19m4wiffz1ic3v7528-ffmpeg-headless-7.1-bin 295755456 --- pkgs/development/libraries/ffmpeg/generic.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 855b3a5fe1f7e..6d9e060172a34 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -145,7 +145,7 @@ , withZimg ? withHeadlessDeps , withZlib ? withHeadlessDeps , withZmq ? withFullDeps # Message passing -, withZvbi ? withFullDeps # Teletext support +, withZvbi ? withHeadlessDeps # Teletext support /* * Licensing options (yes some are listed twice, filters and such are not listed) From a4065db12315af754aa30a3a9d4fc710ab6f55b2 Mon Sep 17 00:00:00 2001 From: Atemu Date: Sun, 10 Nov 2024 08:38:28 +0100 Subject: [PATCH 7/8] ffmpeg-headless: enable opencl /nix/store/2wxab02vqydrmm19m4wiffz1ic3v7528-ffmpeg-headless-7.1-bin 295755456 /nix/store/0km9wmmxs4aasna3jvx6ksigbi5qlas8-ffmpeg-headless-7.1-bin 296508848 --- pkgs/development/libraries/ffmpeg/generic.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 6d9e060172a34..865dd20bb72c2 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -87,7 +87,7 @@ , withNvdec ? withHeadlessDeps && withNvcodec , withNvenc ? withHeadlessDeps && withNvcodec , withOpenal ? withFullDeps # OpenAL 1.1 capture support -, withOpencl ? withFullDeps +, withOpencl ? withHeadlessDeps , withOpencoreAmrnb ? withFullDeps && withVersion3 # AMR-NB de/encoder , withOpencoreAmrwb ? withFullDeps && withVersion3 # AMR-WB decoder , withOpengl ? withFullDeps && !stdenv.hostPlatform.isDarwin # OpenGL rendering From 523038d9f9d9278e4f639ffd1c7499054849f773 Mon Sep 17 00:00:00 2001 From: Atemu Date: Fri, 22 Nov 2024 09:51:45 +0100 Subject: [PATCH 8/8] ffmpeg-headless: enable cuda-llvm This pulls in clang as a build input but as it turns out this actually _reduces_ closure size slightly: /nix/store/0km9wmmxs4aasna3jvx6ksigbi5qlas8-ffmpeg-headless-7.1-bin 296508848 /nix/store/d0dl773klln23daxy1f24xcpbgch184a-ffmpeg-headless-7.1-bin 296402944 Fixes https://github.com/NixOS/nixpkgs/issues/344114 --- pkgs/development/libraries/ffmpeg/generic.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 865dd20bb72c2..b7862b9c36dba 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -49,7 +49,7 @@ , withChromaprint ? withFullDeps # Audio fingerprinting , withCodec2 ? withFullDeps # codec2 en/decoding , withCuda ? withFullDeps && withNvcodec -, withCudaLLVM ? withFullDeps +, withCudaLLVM ? withHeadlessDeps , withCudaNVCC ? withFullDeps && withUnfree && config.cudaSupport , withCuvid ? withHeadlessDeps && withNvcodec , withDav1d ? withHeadlessDeps # AV1 decoder (focused on speed and correctness)