From f236d96d3bc15b0c86efdb1beaae30203ceacdcf Mon Sep 17 00:00:00 2001 From: jopejoe1 Date: Tue, 13 Aug 2024 23:24:11 +0200 Subject: [PATCH 1/2] libilbc: init at 3.0.4 --- pkgs/by-name/li/libilbc/package.nix | 53 +++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 pkgs/by-name/li/libilbc/package.nix diff --git a/pkgs/by-name/li/libilbc/package.nix b/pkgs/by-name/li/libilbc/package.nix new file mode 100644 index 000000000000..e2d2ab71bdb8 --- /dev/null +++ b/pkgs/by-name/li/libilbc/package.nix @@ -0,0 +1,53 @@ +{ + stdenv, + fetchFromGitHub, + gitUpdater, + testers, + lib, + cmake, + ninja, + pkg-config, + abseil-cpp_202103, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "libilbc"; + version = "3.0.4"; + + src = fetchFromGitHub { + owner = "TimothyGu"; + repo = "libilbc"; + rev = "v${finalAttrs.version}"; + hash = "sha256-GpvHDyvmWPxSt0K5PJQrTso61vGGWHkov7U9/LPrDBU="; + }; + + nativeBuildInputs = [ + cmake + ninja + pkg-config + ]; + + buildInputs = [ abseil-cpp_202103 ]; + + outputs = [ + "out" + "bin" + "dev" + "doc" + ]; + + passthru = { + updateScript = gitUpdater { rev-prefix = "v"; }; + tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + }; + + meta = with lib; { + description = "Packaged version of iLBC codec from the WebRTC project"; + homepage = "https://github.com/TimothyGu/libilbc"; + changelog = "https://github.com/TimothyGu/libilbc/blob/v${finalAttrs.version}/NEWS.md"; + maintainers = with maintainers; [ jopejoe1 ]; + pkgConfigModules = [ "lilbc" ]; + platforms = platforms.all; + license = licenses.bsd3; + }; +}) From d91ad22d821e0406b34f250a8ed361fb781009e2 Mon Sep 17 00:00:00 2001 From: jopejoe1 Date: Tue, 13 Aug 2024 23:24:26 +0200 Subject: [PATCH 2/2] ffmpeg: add ilbc options --- pkgs/development/libraries/ffmpeg/generic.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 6d76cf7cdcae..57ef741fb528 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -69,6 +69,7 @@ , withGsm ? withFullDeps # GSM de/encoder , withHarfbuzz ? withHeadlessDeps && lib.versionAtLeast version "6.1" # Needed for drawtext filter , withIconv ? withHeadlessDeps +, withIlbc ? withFullDeps # iLBC de/encoding , withJack ? withFullDeps && !stdenv.isDarwin # Jack audio , withJxl ? withFullDeps && lib.versionAtLeast version "5" # JPEG XL de/encoding , withLadspa ? withFullDeps # LADSPA audio filtering @@ -252,6 +253,7 @@ , libGL , libGLU , libiconv +, libilbc , libjack2 , libjxl , libmodplug @@ -619,6 +621,7 @@ stdenv.mkDerivation (finalAttrs: { (enableFeature withHarfbuzz "libharfbuzz") ] ++ [ (enableFeature withIconv "iconv") + (enableFeature withIlbc "libilbc") (enableFeature withJack "libjack") ] ++ optionals (versionAtLeast finalAttrs.version "5.0") [ (enableFeature withJxl "libjxl") @@ -774,6 +777,7 @@ stdenv.mkDerivation (finalAttrs: { ++ optionals withGsm [ gsm ] ++ optionals withHarfbuzz [ harfbuzz ] ++ optionals withIconv [ libiconv ] # On Linux this should be in libc, do we really need it? + ++ optionals withIlbc [ libilbc ] ++ optionals withJack [ libjack2 ] ++ optionals withJxl [ libjxl ] ++ optionals withLadspa [ ladspaH ]