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; + }; +}) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 49f8ece85e5d..ccd1642c6caa 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -70,6 +70,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 @@ -257,6 +258,7 @@ , libGL , libGLU , libiconv +, libilbc , libjack2 , libjxl , libmodplug @@ -592,6 +594,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") @@ -750,6 +753,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 ]