summaryrefslogtreecommitdiff
path: root/pkgs/development/libraries/ffmpeg
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/ffmpeg')
-rw-r--r--pkgs/development/libraries/ffmpeg/2.8.nix3
-rw-r--r--pkgs/development/libraries/ffmpeg/3.4.nix5
-rw-r--r--pkgs/development/libraries/ffmpeg/4.nix13
-rw-r--r--pkgs/development/libraries/ffmpeg/generic.nix7
-rw-r--r--pkgs/development/libraries/ffmpeg/v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch35
5 files changed, 55 insertions, 8 deletions
diff --git a/pkgs/development/libraries/ffmpeg/2.8.nix b/pkgs/development/libraries/ffmpeg/2.8.nix
index 309cd2b3b356..6d94c2e9974b 100644
--- a/pkgs/development/libraries/ffmpeg/2.8.nix
+++ b/pkgs/development/libraries/ffmpeg/2.8.nix
@@ -4,4 +4,7 @@ callPackage ./generic.nix (rec {
version = "${branch}.17";
branch = "2.8";
sha256 = "05bnhvs2f82aq95z1wd3wr42sljdfq4kiyzqwhpji983mndx14vl";
+ knownVulnerabilities = [
+ "CVE-2021-30123"
+ ];
} // args)
diff --git a/pkgs/development/libraries/ffmpeg/3.4.nix b/pkgs/development/libraries/ffmpeg/3.4.nix
index be341d588c1d..25c0a12f731a 100644
--- a/pkgs/development/libraries/ffmpeg/3.4.nix
+++ b/pkgs/development/libraries/ffmpeg/3.4.nix
@@ -1,4 +1,4 @@
-{ callPackage, fetchpatch
+{ callPackage
# Darwin frameworks
, Cocoa, CoreMedia
, ...
@@ -9,4 +9,7 @@ callPackage ./generic.nix (rec {
branch = "3.4.8";
sha256 = "1d0r4yja2dkkyhdwx1migq46gsrcbajiv66263a5sq5bfr9dqkch";
darwinFrameworks = [ Cocoa CoreMedia ];
+ knownVulnerabilities = [
+ "CVE-2021-30123"
+ ];
} // args)
diff --git a/pkgs/development/libraries/ffmpeg/4.nix b/pkgs/development/libraries/ffmpeg/4.nix
index 95207b5386f8..df3d0732393e 100644
--- a/pkgs/development/libraries/ffmpeg/4.nix
+++ b/pkgs/development/libraries/ffmpeg/4.nix
@@ -1,12 +1,17 @@
-{ callPackage, fetchpatch
+{ callPackage
# Darwin frameworks
, Cocoa, CoreMedia, VideoToolbox
+, stdenv, lib
, ...
}@args:
callPackage ./generic.nix (rec {
- version = "4.3.2";
- branch = "4.3";
- sha256 = "0flik4y7c5kchj65p3p908mk1dsncqgzjdvzysjs12rmf1m6sfmb";
+ version = "4.4";
+ branch = "4.4";
+ sha256 = "03kxc29y8190k4y8s8qdpsghlbpmchv1m8iqygq2qn0vfm4ka2a2";
darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ];
+
+ /* Work around https://trac.ffmpeg.org/ticket/9242 */
+ patches = lib.optional stdenv.isDarwin
+ ./v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch;
} // args)
diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix
index 82f1a8bf5646..7e4a6a080987 100644
--- a/pkgs/development/libraries/ffmpeg/generic.nix
+++ b/pkgs/development/libraries/ffmpeg/generic.nix
@@ -17,7 +17,7 @@
# Darwin frameworks
, Cocoa, darwinFrameworks ? [ Cocoa ]
# Inherit generics
-, branch, sha256, version, patches ? [], ...
+, branch, sha256, version, patches ? [], knownVulnerabilities ? [], ...
}:
/* Maintainer notes:
@@ -213,7 +213,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A complete, cross-platform solution to record, convert and stream audio and video";
- homepage = "http://www.ffmpeg.org/";
+ homepage = "https://www.ffmpeg.org/";
+ changelog = "https://github.com/FFmpeg/FFmpeg/blob/n${version}/Changelog";
longDescription = ''
FFmpeg is the leading multimedia framework, able to decode, encode, transcode,
mux, demux, stream, filter and play pretty much anything that humans and machines
@@ -224,6 +225,6 @@ stdenv.mkDerivation rec {
license = licenses.gpl3;
platforms = platforms.all;
maintainers = with maintainers; [ codyopel ];
- inherit branch;
+ inherit branch knownVulnerabilities;
};
}
diff --git a/pkgs/development/libraries/ffmpeg/v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch b/pkgs/development/libraries/ffmpeg/v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch
new file mode 100644
index 000000000000..c0c2c1fb23bb
--- /dev/null
+++ b/pkgs/development/libraries/ffmpeg/v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch
@@ -0,0 +1,35 @@
+From 5b562aaddbc6e7a94a079c2e88230b205a7f4d73 Mon Sep 17 00:00:00 2001
+From: Zane van Iperen <zane@zanevaniperen.com>
+Date: Sat, 15 May 2021 19:33:52 +1000
+Subject: [PATCH v2] avcodec/videotoolboxenc: #define TARGET_CPU_ARM64 to 0 if
+ not provided by the SDK
+
+Fixes build failure on older SDKs without it.
+
+Fixes #9242
+
+Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
+---
+ libavcodec/videotoolboxenc.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+NB: This is untested, I do not have a Mac to try it on.
+
+diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
+index 58239e0ab9..f063a86e73 100644
+--- a/libavcodec/videotoolboxenc.c
++++ b/libavcodec/videotoolboxenc.c
+@@ -50,6 +50,10 @@ enum { kCVPixelFormatType_420YpCbCr10BiPlanarFullRange = 'xf20' };
+ enum { kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange = 'x420' };
+ #endif
+
++#ifndef TARGET_CPU_ARM64
++# define TARGET_CPU_ARM64 0
++#endif
++
+ typedef OSStatus (*getParameterSetAtIndex)(CMFormatDescriptionRef videoDesc,
+ size_t parameterSetIndex,
+ const uint8_t **parameterSetPointerOut,
+--
+2.29.3
+