From 8da898c5eee6e08463289c29f39e582827ddab2b Mon Sep 17 00:00:00 2001 From: Antoine Viallon Date: Thu, 18 May 2023 00:35:40 +0200 Subject: [PATCH] [Desktop/Multimedia+Optimizations] Move ffmpeg optimizations to multimedia --- desktop/multimedia.nix | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/desktop/multimedia.nix b/desktop/multimedia.nix index 0a1eced..734e741 100644 --- a/desktop/multimedia.nix +++ b/desktop/multimedia.nix @@ -3,16 +3,32 @@ with lib; let cfg = config.aviallon.desktop; generalCfg = config.aviallon.general; + filterConfig = pkgs.callPackage ./pipewire-noise-filter.cfg.nix { noiseFilterStrength = cfg.audio.noise-filter.strength; }; + + # Multimedia Packages + + myFFmpeg = let + withUnfree = pkgs.unstable.ffmpeg-full.override { withUnfree = true; }; + withTensorflow = withUnfree.overrideAttrs (old: { + buildInputs = (old.buildInputs or []) ++ [ pkgs.libtensorflow ]; + configureFlags = (old.configureFlags or []) ++ [ "--enable-libtensorflow" ]; + }); + in withTensorflow; + + + myFFmpeg_opt = config.aviallon.optimizations.optimizePkg { lto = false; } myFFmpeg; + + ffmpeg_4 = config.aviallon.optimizations.optimizePkg { } pkgs.ffmpeg_4; obs-studio = pkgs.obs-studio.override { inherit ffmpeg_4; }; myWrapOBS = pkgs.wrapOBS.override { inherit obs-studio; }; in { config = mkIf (cfg.enable && !generalCfg.minimal) { environment.systemPackages = with pkgs; [ - myFFmpeg + myFFmpeg_opt krita (myWrapOBS { plugins = with obs-studio-plugins; [ obs-pipewire-audio-capture @@ -25,6 +41,10 @@ in { jamesdsp # Audio post-processing ]; + nixpkgs.overlays = [(final: prev: { + myFFmpeg = myFFmpeg_opt; + })]; + # Enable sound. sound.enable = mkOverride 40 false;