Compare commits
6 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e9961c8031 |
||
|
|
8e1416f0c7 | ||
|
|
3e4867aff1 | ||
|
|
cb8b75595f | ||
|
|
cde4f15f76 | ||
|
|
c00c27c8fd |
7 changed files with 202 additions and 73 deletions
109
0001-lavc-libopenh264-Drop-openh264-runtime-version-check.patch
Normal file
109
0001-lavc-libopenh264-Drop-openh264-runtime-version-check.patch
Normal file
|
|
@ -0,0 +1,109 @@
|
||||||
|
From a641e629591d68bd3edd99bddec623dc31295f6b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kalev Lember <klember@redhat.com>
|
||||||
|
Date: Wed, 6 Dec 2023 14:37:34 +0100
|
||||||
|
Subject: [PATCH] lavc/libopenh264: Drop openh264 runtime version checks
|
||||||
|
|
||||||
|
Years ago, openh264 releases often changed their ABI without changing
|
||||||
|
the library soname. To avoid running into ABI issues, a version check
|
||||||
|
was added to lavc libopenh264 code to error out at runtime in case the
|
||||||
|
build time and runtime openh264 versions don't match.
|
||||||
|
|
||||||
|
This should no longer be an issue with newer openh264 releases and we
|
||||||
|
can drop the runtime version check and rely on upstream doing the right
|
||||||
|
thing and bump the library soname if the ABI changes, similar to how
|
||||||
|
other libraries are consumed in ffmpeg.
|
||||||
|
|
||||||
|
Almost all major distributions now include openh264 and this means there
|
||||||
|
are more eyes on ABI changes and issues are discovered and reported
|
||||||
|
quickly. See e.g. https://github.com/cisco/openh264/issues/3564 where an
|
||||||
|
ABI issue was quickly discovered and fixed.
|
||||||
|
|
||||||
|
Relaxing the check allows downstream distributions to build ffmpeg
|
||||||
|
against e.g. openh264 2.3.1 and ship an update to ABI-compatible
|
||||||
|
openh264 2.4.0, without needing to coordinate a lock step update between
|
||||||
|
ffmpeg and openh264 (which can be difficult if openh264 is distributed
|
||||||
|
by Cisco and ffmpeg comes from the distro, such as is the case for
|
||||||
|
Fedora).
|
||||||
|
|
||||||
|
Signed-off-by: Kalev Lember <klember@redhat.com>
|
||||||
|
---
|
||||||
|
libavcodec/libopenh264.c | 15 ---------------
|
||||||
|
libavcodec/libopenh264.h | 2 --
|
||||||
|
libavcodec/libopenh264dec.c | 4 ----
|
||||||
|
libavcodec/libopenh264enc.c | 4 ----
|
||||||
|
4 files changed, 25 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/libavcodec/libopenh264.c b/libavcodec/libopenh264.c
|
||||||
|
index 0f6d28ed88..c80c85ea8b 100644
|
||||||
|
--- a/libavcodec/libopenh264.c
|
||||||
|
+++ b/libavcodec/libopenh264.c
|
||||||
|
@@ -46,18 +46,3 @@ void ff_libopenh264_trace_callback(void *ctx, int level, const char *msg)
|
||||||
|
int equiv_ffmpeg_log_level = libopenh264_to_ffmpeg_log_level(level);
|
||||||
|
av_log(ctx, equiv_ffmpeg_log_level, "%s\n", msg);
|
||||||
|
}
|
||||||
|
-
|
||||||
|
-int ff_libopenh264_check_version(void *logctx)
|
||||||
|
-{
|
||||||
|
- // Mingw GCC < 4.7 on x86_32 uses an incorrect/buggy ABI for the WelsGetCodecVersion
|
||||||
|
- // function (for functions returning larger structs), thus skip the check in those
|
||||||
|
- // configurations.
|
||||||
|
-#if !defined(_WIN32) || !defined(__GNUC__) || !ARCH_X86_32 || AV_GCC_VERSION_AT_LEAST(4, 7)
|
||||||
|
- OpenH264Version libver = WelsGetCodecVersion();
|
||||||
|
- if (memcmp(&libver, &g_stCodecVersion, sizeof(libver))) {
|
||||||
|
- av_log(logctx, AV_LOG_ERROR, "Incorrect library version loaded\n");
|
||||||
|
- return AVERROR(EINVAL);
|
||||||
|
- }
|
||||||
|
-#endif
|
||||||
|
- return 0;
|
||||||
|
-}
|
||||||
|
diff --git a/libavcodec/libopenh264.h b/libavcodec/libopenh264.h
|
||||||
|
index dbb9c5d429..0b462d6fdc 100644
|
||||||
|
--- a/libavcodec/libopenh264.h
|
||||||
|
+++ b/libavcodec/libopenh264.h
|
||||||
|
@@ -34,6 +34,4 @@
|
||||||
|
|
||||||
|
void ff_libopenh264_trace_callback(void *ctx, int level, const char *msg);
|
||||||
|
|
||||||
|
-int ff_libopenh264_check_version(void *logctx);
|
||||||
|
-
|
||||||
|
#endif /* AVCODEC_LIBOPENH264_H */
|
||||||
|
diff --git a/libavcodec/libopenh264dec.c b/libavcodec/libopenh264dec.c
|
||||||
|
index 7d650ae03e..b6a9bba2dc 100644
|
||||||
|
--- a/libavcodec/libopenh264dec.c
|
||||||
|
+++ b/libavcodec/libopenh264dec.c
|
||||||
|
@@ -52,13 +52,9 @@ static av_cold int svc_decode_init(AVCodecContext *avctx)
|
||||||
|
{
|
||||||
|
SVCContext *s = avctx->priv_data;
|
||||||
|
SDecodingParam param = { 0 };
|
||||||
|
- int err;
|
||||||
|
int log_level;
|
||||||
|
WelsTraceCallback callback_function;
|
||||||
|
|
||||||
|
- if ((err = ff_libopenh264_check_version(avctx)) < 0)
|
||||||
|
- return AVERROR_DECODER_NOT_FOUND;
|
||||||
|
-
|
||||||
|
if (WelsCreateDecoder(&s->decoder)) {
|
||||||
|
av_log(avctx, AV_LOG_ERROR, "Unable to create decoder\n");
|
||||||
|
return AVERROR_UNKNOWN;
|
||||||
|
diff --git a/libavcodec/libopenh264enc.c b/libavcodec/libopenh264enc.c
|
||||||
|
index f518d0894e..6f231d22b2 100644
|
||||||
|
--- a/libavcodec/libopenh264enc.c
|
||||||
|
+++ b/libavcodec/libopenh264enc.c
|
||||||
|
@@ -110,14 +110,10 @@ static av_cold int svc_encode_init(AVCodecContext *avctx)
|
||||||
|
{
|
||||||
|
SVCContext *s = avctx->priv_data;
|
||||||
|
SEncParamExt param = { 0 };
|
||||||
|
- int err;
|
||||||
|
int log_level;
|
||||||
|
WelsTraceCallback callback_function;
|
||||||
|
AVCPBProperties *props;
|
||||||
|
|
||||||
|
- if ((err = ff_libopenh264_check_version(avctx)) < 0)
|
||||||
|
- return AVERROR_ENCODER_NOT_FOUND;
|
||||||
|
-
|
||||||
|
if (WelsCreateSVCEncoder(&s->encoder)) {
|
||||||
|
av_log(avctx, AV_LOG_ERROR, "Unable to create encoder\n");
|
||||||
|
return AVERROR_UNKNOWN;
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
From: Andreas Schneider <asn@cryptomilk.org>
|
||||||
|
|
||||||
fdk-aac-free-devel is GPL compatible
|
fdk-aac-free-devel is GPL compatible
|
||||||
|
|
||||||
See https://bugzilla.redhat.com/show_bug.cgi?id=1501522#c112
|
See https://bugzilla.redhat.com/show_bug.cgi?id=1501522#c112
|
||||||
|
|
|
||||||
46
ffmpeg-chromium.patch
Normal file
46
ffmpeg-chromium.patch
Normal file
|
|
@ -0,0 +1,46 @@
|
||||||
|
From 4464ecf750bb9440e2571a8d810627cdec85ae02 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Frank Liberato <liberato@chromium.org>
|
||||||
|
Date: Wed, 7 Jul 2021 19:01:22 -0700
|
||||||
|
Subject: [PATCH] Add av_stream_get_first_dts for Chromium
|
||||||
|
|
||||||
|
---
|
||||||
|
libavformat/avformat.h | 4 ++++
|
||||||
|
libavformat/utils.c | 7 +++++++
|
||||||
|
2 files changed, 11 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
|
||||||
|
index f12fa7d904..0b9fd1f061 100644
|
||||||
|
--- a/libavformat/avformat.h
|
||||||
|
+++ b/libavformat/avformat.h
|
||||||
|
@@ -1128,6 +1128,10 @@ struct AVCodecParserContext *av_stream_get_parser(const AVStream *s);
|
||||||
|
*/
|
||||||
|
int64_t av_stream_get_end_pts(const AVStream *st);
|
||||||
|
|
||||||
|
+// Chromium: We use the internal field first_dts vvv
|
||||||
|
+int64_t av_stream_get_first_dts(const AVStream *st);
|
||||||
|
+// Chromium: We use the internal field first_dts ^^^
|
||||||
|
+
|
||||||
|
#define AV_PROGRAM_RUNNING 1
|
||||||
|
|
||||||
|
/**
|
||||||
|
diff --git a/libavformat/utils.c b/libavformat/utils.c
|
||||||
|
index cf4d68bff9..7d750abf88 100644
|
||||||
|
--- a/libavformat/utils.c
|
||||||
|
+++ b/libavformat/utils.c
|
||||||
|
@@ -55,6 +55,13 @@ int ff_unlock_avformat(void)
|
||||||
|
return ff_mutex_unlock(&avformat_mutex) ? -1 : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
+// Chromium: We use the internal field first_dts vvv
|
||||||
|
+int64_t av_stream_get_first_dts(const AVStream *st)
|
||||||
|
+{
|
||||||
|
+ return cffstream(st)->first_dts;
|
||||||
|
+}
|
||||||
|
+// Chromium: We use the internal field first_dts ^^^
|
||||||
|
+
|
||||||
|
/* an arbitrarily chosen "sane" max packet size -- 50M */
|
||||||
|
#define SANE_CHUNK_SIZE (50000000)
|
||||||
|
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
From 4739b0c97b3378bdaf737171777fe9a71a53eff1 Mon Sep 17 00:00:00 2001
|
From 1f48740db0dda8d6ec1b97a7f4a794e381a65636 Mon Sep 17 00:00:00 2001
|
||||||
From: Neal Gompa <ngompa@fedoraproject.org>
|
From: Neal Gompa <ngompa@fedoraproject.org>
|
||||||
Date: Wed, 12 Oct 2022 09:41:27 -0400
|
Date: Wed, 12 Oct 2022 09:41:27 -0400
|
||||||
Subject: [PATCH] avcodec/openh264: Add the ability to dlopen() OpenH264
|
Subject: [PATCH] avcodec/openh264: Add the ability to dlopen() OpenH264
|
||||||
|
|
@ -14,12 +14,12 @@ Signed-off-by: Neal Gompa <ngompa@fedoraproject.org>
|
||||||
---
|
---
|
||||||
configure | 3 +
|
configure | 3 +
|
||||||
libavcodec/Makefile | 1 +
|
libavcodec/Makefile | 1 +
|
||||||
libavcodec/libopenh264.c | 18 +++-
|
libavcodec/libopenh264.c | 5 ++
|
||||||
libavcodec/libopenh264_dlopen.c | 147 ++++++++++++++++++++++++++++++++
|
libavcodec/libopenh264_dlopen.c | 147 ++++++++++++++++++++++++++++++++
|
||||||
libavcodec/libopenh264_dlopen.h | 58 +++++++++++++
|
libavcodec/libopenh264_dlopen.h | 58 +++++++++++++
|
||||||
libavcodec/libopenh264dec.c | 10 +++
|
libavcodec/libopenh264dec.c | 10 +++
|
||||||
libavcodec/libopenh264enc.c | 10 +++
|
libavcodec/libopenh264enc.c | 10 +++
|
||||||
7 files changed, 245 insertions(+), 2 deletions(-)
|
7 files changed, 234 insertions(+)
|
||||||
create mode 100644 libavcodec/libopenh264_dlopen.c
|
create mode 100644 libavcodec/libopenh264_dlopen.c
|
||||||
create mode 100644 libavcodec/libopenh264_dlopen.h
|
create mode 100644 libavcodec/libopenh264_dlopen.h
|
||||||
|
|
||||||
|
|
@ -64,7 +64,7 @@ index 457ec58377..08a26fba5f 100644
|
||||||
OBJS-$(CONFIG_LIBOPENH264_ENCODER) += libopenh264enc.o libopenh264.o
|
OBJS-$(CONFIG_LIBOPENH264_ENCODER) += libopenh264enc.o libopenh264.o
|
||||||
OBJS-$(CONFIG_LIBOPENJPEG_DECODER) += libopenjpegdec.o
|
OBJS-$(CONFIG_LIBOPENJPEG_DECODER) += libopenjpegdec.o
|
||||||
diff --git a/libavcodec/libopenh264.c b/libavcodec/libopenh264.c
|
diff --git a/libavcodec/libopenh264.c b/libavcodec/libopenh264.c
|
||||||
index 0f6d28ed88..a124c3fa1e 100644
|
index c80c85ea8b..128c3d9846 100644
|
||||||
--- a/libavcodec/libopenh264.c
|
--- a/libavcodec/libopenh264.c
|
||||||
+++ b/libavcodec/libopenh264.c
|
+++ b/libavcodec/libopenh264.c
|
||||||
@@ -20,8 +20,13 @@
|
@@ -20,8 +20,13 @@
|
||||||
|
|
@ -81,26 +81,6 @@ index 0f6d28ed88..a124c3fa1e 100644
|
||||||
|
|
||||||
#include "libavutil/error.h"
|
#include "libavutil/error.h"
|
||||||
#include "libavutil/log.h"
|
#include "libavutil/log.h"
|
||||||
@@ -52,8 +57,17 @@ int ff_libopenh264_check_version(void *logctx)
|
|
||||||
// Mingw GCC < 4.7 on x86_32 uses an incorrect/buggy ABI for the WelsGetCodecVersion
|
|
||||||
// function (for functions returning larger structs), thus skip the check in those
|
|
||||||
// configurations.
|
|
||||||
-#if !defined(_WIN32) || !defined(__GNUC__) || !ARCH_X86_32 || AV_GCC_VERSION_AT_LEAST(4, 7)
|
|
||||||
- OpenH264Version libver = WelsGetCodecVersion();
|
|
||||||
+ // Also, for dlopened OpenH264, we should not do the version check. It's too punitive.
|
|
||||||
+#if !defined(_WIN32) || !defined(__GNUC__) || !ARCH_X86_32 || AV_GCC_VERSION_AT_LEAST(4, 7) || !defined(CONFIG_LIBOPENH264_DLOPEN)
|
|
||||||
+ OpenH264Version libver;
|
|
||||||
+
|
|
||||||
+#ifdef CONFIG_LIBOPENH264_DLOPEN
|
|
||||||
+ if (loadLibOpenH264(logctx)) {
|
|
||||||
+ return AVERROR_EXTERNAL;
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+ libver = WelsGetCodecVersion();
|
|
||||||
if (memcmp(&libver, &g_stCodecVersion, sizeof(libver))) {
|
|
||||||
av_log(logctx, AV_LOG_ERROR, "Incorrect library version loaded\n");
|
|
||||||
return AVERROR(EINVAL);
|
|
||||||
diff --git a/libavcodec/libopenh264_dlopen.c b/libavcodec/libopenh264_dlopen.c
|
diff --git a/libavcodec/libopenh264_dlopen.c b/libavcodec/libopenh264_dlopen.c
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000..49ea8ff44f
|
index 0000000000..49ea8ff44f
|
||||||
|
|
@ -319,7 +299,7 @@ index 0000000000..d7d8bb7cad
|
||||||
+
|
+
|
||||||
+#endif /* HAVE_LIBOPENH264_DLOPEN_H */
|
+#endif /* HAVE_LIBOPENH264_DLOPEN_H */
|
||||||
diff --git a/libavcodec/libopenh264dec.c b/libavcodec/libopenh264dec.c
|
diff --git a/libavcodec/libopenh264dec.c b/libavcodec/libopenh264dec.c
|
||||||
index 007f86b619..57aa3bc1d1 100644
|
index 7e14d4dd7d..a805598446 100644
|
||||||
--- a/libavcodec/libopenh264dec.c
|
--- a/libavcodec/libopenh264dec.c
|
||||||
+++ b/libavcodec/libopenh264dec.c
|
+++ b/libavcodec/libopenh264dec.c
|
||||||
@@ -19,8 +19,12 @@
|
@@ -19,8 +19,12 @@
|
||||||
|
|
@ -335,7 +315,7 @@ index 007f86b619..57aa3bc1d1 100644
|
||||||
|
|
||||||
#include "libavutil/common.h"
|
#include "libavutil/common.h"
|
||||||
#include "libavutil/fifo.h"
|
#include "libavutil/fifo.h"
|
||||||
@@ -56,6 +60,12 @@ static av_cold int svc_decode_init(AVCodecContext *avctx)
|
@@ -55,6 +59,12 @@ static av_cold int svc_decode_init(AVCodecContext *avctx)
|
||||||
int log_level;
|
int log_level;
|
||||||
WelsTraceCallback callback_function;
|
WelsTraceCallback callback_function;
|
||||||
|
|
||||||
|
|
@ -345,11 +325,11 @@ index 007f86b619..57aa3bc1d1 100644
|
||||||
+ }
|
+ }
|
||||||
+#endif
|
+#endif
|
||||||
+
|
+
|
||||||
if ((err = ff_libopenh264_check_version(avctx)) < 0)
|
if (WelsCreateDecoder(&s->decoder)) {
|
||||||
return AVERROR_DECODER_NOT_FOUND;
|
av_log(avctx, AV_LOG_ERROR, "Unable to create decoder\n");
|
||||||
|
return AVERROR_UNKNOWN;
|
||||||
diff --git a/libavcodec/libopenh264enc.c b/libavcodec/libopenh264enc.c
|
diff --git a/libavcodec/libopenh264enc.c b/libavcodec/libopenh264enc.c
|
||||||
index db252aace1..75289678da 100644
|
index 5257906567..80481f3d0a 100644
|
||||||
--- a/libavcodec/libopenh264enc.c
|
--- a/libavcodec/libopenh264enc.c
|
||||||
+++ b/libavcodec/libopenh264enc.c
|
+++ b/libavcodec/libopenh264enc.c
|
||||||
@@ -19,8 +19,12 @@
|
@@ -19,8 +19,12 @@
|
||||||
|
|
@ -365,7 +345,7 @@ index db252aace1..75289678da 100644
|
||||||
|
|
||||||
#include "libavutil/attributes.h"
|
#include "libavutil/attributes.h"
|
||||||
#include "libavutil/common.h"
|
#include "libavutil/common.h"
|
||||||
@@ -137,6 +141,12 @@ static av_cold int svc_encode_init(AVCodecContext *avctx)
|
@@ -114,6 +118,12 @@ static av_cold int svc_encode_init(AVCodecContext *avctx)
|
||||||
WelsTraceCallback callback_function;
|
WelsTraceCallback callback_function;
|
||||||
AVCPBProperties *props;
|
AVCPBProperties *props;
|
||||||
|
|
||||||
|
|
@ -375,9 +355,9 @@ index db252aace1..75289678da 100644
|
||||||
+ }
|
+ }
|
||||||
+#endif
|
+#endif
|
||||||
+
|
+
|
||||||
if ((err = ff_libopenh264_check_version(avctx)) < 0)
|
if (WelsCreateSVCEncoder(&s->encoder)) {
|
||||||
return AVERROR_ENCODER_NOT_FOUND;
|
av_log(avctx, AV_LOG_ERROR, "Unable to create encoder\n");
|
||||||
|
return AVERROR_UNKNOWN;
|
||||||
--
|
--
|
||||||
2.36.1
|
2.36.1
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,32 +0,0 @@
|
||||||
From: Lynne <dev@lynne.ee>
|
|
||||||
Date: Sun, 25 Dec 2022 00:03:30 +0000 (+0100)
|
|
||||||
Subject: hwcontext_vulkan: remove optional encode/decode extensions from the list
|
|
||||||
X-Git-Url: http://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff_plain/eb0455d64690eed0068e5cb202f72ecdf899837c
|
|
||||||
|
|
||||||
hwcontext_vulkan: remove optional encode/decode extensions from the list
|
|
||||||
|
|
||||||
They're not currently used, so they don't need to be there.
|
|
||||||
Vulkan stabilized the decode extensions less than a week ago, and their
|
|
||||||
name prefixes were changed from EXT to KHR. It's a bit too soon to be
|
|
||||||
depending on it, so rather than bumping, just remove these for now.
|
|
||||||
---
|
|
||||||
|
|
||||||
diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c
|
|
||||||
index f1db1c7291..2a9b5f4aac 100644
|
|
||||||
--- a/libavutil/hwcontext_vulkan.c
|
|
||||||
+++ b/libavutil/hwcontext_vulkan.c
|
|
||||||
@@ -358,14 +358,6 @@ static const VulkanOptExtension optional_device_exts[] = {
|
|
||||||
{ VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME, FF_VK_EXT_EXTERNAL_WIN32_MEMORY },
|
|
||||||
{ VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME, FF_VK_EXT_EXTERNAL_WIN32_SEM },
|
|
||||||
#endif
|
|
||||||
-
|
|
||||||
- /* Video encoding/decoding */
|
|
||||||
- { VK_KHR_VIDEO_QUEUE_EXTENSION_NAME, FF_VK_EXT_NO_FLAG },
|
|
||||||
- { VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME, FF_VK_EXT_NO_FLAG },
|
|
||||||
- { VK_KHR_VIDEO_ENCODE_QUEUE_EXTENSION_NAME, FF_VK_EXT_NO_FLAG },
|
|
||||||
- { VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME, FF_VK_EXT_NO_FLAG },
|
|
||||||
- { VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME, FF_VK_EXT_NO_FLAG },
|
|
||||||
- { VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME, FF_VK_EXT_NO_FLAG },
|
|
||||||
};
|
|
||||||
|
|
||||||
/* Converts return values to strings */
|
|
||||||
34
ffmpeg.spec
34
ffmpeg.spec
|
|
@ -101,8 +101,8 @@
|
||||||
Name: ffmpeg
|
Name: ffmpeg
|
||||||
%global pkg_name %{name}%{?pkg_suffix}
|
%global pkg_name %{name}%{?pkg_suffix}
|
||||||
|
|
||||||
Version: 5.1.2
|
Version: 5.1.4
|
||||||
Release: 12%{?dist}
|
Release: 3%{?dist}
|
||||||
Summary: A complete solution to record, convert and stream audio and video
|
Summary: A complete solution to record, convert and stream audio and video
|
||||||
License: GPLv3+
|
License: GPLv3+
|
||||||
URL: https://ffmpeg.org/
|
URL: https://ffmpeg.org/
|
||||||
|
|
@ -128,12 +128,19 @@ Patch2: ffmpeg-new-coder-errors.patch
|
||||||
# Allow to build with fdk-aac-free
|
# Allow to build with fdk-aac-free
|
||||||
# See https://bugzilla.redhat.com/show_bug.cgi?id=1501522#c112
|
# See https://bugzilla.redhat.com/show_bug.cgi?id=1501522#c112
|
||||||
Patch3: ffmpeg-allow-fdk-aac-free.patch
|
Patch3: ffmpeg-allow-fdk-aac-free.patch
|
||||||
# Upstream fix for vulkan-headers 1.3.236.0+
|
# Drop openh264 runtime version checks
|
||||||
Patch4: ffmpeg-vulkan-headers.patch
|
# https://patchwork.ffmpeg.org/project/ffmpeg/list/?series=10211
|
||||||
|
Patch4: 0001-lavc-libopenh264-Drop-openh264-runtime-version-check.patch
|
||||||
|
|
||||||
# Set up dlopen for openh264
|
# Set up dlopen for openh264
|
||||||
Patch1001: ffmpeg-dlopen-openh264.patch
|
Patch1001: ffmpeg-dlopen-openh264.patch
|
||||||
|
|
||||||
|
# Add first_dts getter to libavformat for Chromium
|
||||||
|
# See: https://bugzilla.redhat.com/show_bug.cgi?id=2240127
|
||||||
|
# Reference: https://crbug.com/1306560
|
||||||
|
Patch1002: ffmpeg-chromium.patch
|
||||||
|
|
||||||
|
|
||||||
Requires: libavcodec%{?pkg_suffix}%{_isa} = %{version}-%{release}
|
Requires: libavcodec%{?pkg_suffix}%{_isa} = %{version}-%{release}
|
||||||
Requires: libavdevice%{?pkg_suffix}%{_isa} = %{version}-%{release}
|
Requires: libavdevice%{?pkg_suffix}%{_isa} = %{version}-%{release}
|
||||||
Requires: libavfilter%{?pkg_suffix}%{_isa} = %{version}-%{release}
|
Requires: libavfilter%{?pkg_suffix}%{_isa} = %{version}-%{release}
|
||||||
|
|
@ -150,6 +157,7 @@ BuildRequires: flite-devel >= 2.2
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: game-music-emu-devel
|
BuildRequires: game-music-emu-devel
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
|
BuildRequires: git-core
|
||||||
BuildRequires: gnupg2
|
BuildRequires: gnupg2
|
||||||
BuildRequires: gsm-devel
|
BuildRequires: gsm-devel
|
||||||
BuildRequires: ladspa-devel
|
BuildRequires: ladspa-devel
|
||||||
|
|
@ -345,6 +353,7 @@ Requires: libswresample%{?pkg_suffix}%{_isa} = %{version}-%{release}
|
||||||
## Note, we can do this because openh264 is provided in a default-enabled
|
## Note, we can do this because openh264 is provided in a default-enabled
|
||||||
## third party repository provided by Cisco.
|
## third party repository provided by Cisco.
|
||||||
Recommends: libopenh264.so.%{openh264_soversion}%{?lib64_suffix}
|
Recommends: libopenh264.so.%{openh264_soversion}%{?lib64_suffix}
|
||||||
|
Suggests: openh264%{_isa}
|
||||||
|
|
||||||
%description -n libavcodec%{?pkg_suffix}
|
%description -n libavcodec%{?pkg_suffix}
|
||||||
The libavcodec library provides a generic encoding/decoding framework
|
The libavcodec library provides a generic encoding/decoding framework
|
||||||
|
|
@ -554,7 +563,7 @@ This subpackage contains the headers for FFmpeg libswscale.
|
||||||
gpgv2 --quiet --keyring %{SOURCE3} %{SOURCE2} %{SOURCE0}
|
gpgv2 --quiet --keyring %{SOURCE3} %{SOURCE2} %{SOURCE0}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%autosetup -a1 -p1
|
%autosetup -a1 -S git_am
|
||||||
install -m 0644 %{SOURCE20} enable_decoders
|
install -m 0644 %{SOURCE20} enable_decoders
|
||||||
install -m 0644 %{SOURCE21} enable_encoders
|
install -m 0644 %{SOURCE21} enable_encoders
|
||||||
# fix -O3 -g in host_cflags
|
# fix -O3 -g in host_cflags
|
||||||
|
|
@ -870,6 +879,21 @@ rm -rf %{buildroot}%{_datadir}/%{name}/examples
|
||||||
%{_mandir}/man3/libswscale.3*
|
%{_mandir}/man3/libswscale.3*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Nov 06 2024 Fabio Valentini <decathorpe@gmail.com> - 5.1.4-3
|
||||||
|
- Rebuild for dav1d 1.5.0
|
||||||
|
|
||||||
|
* Wed Dec 06 2023 Kalev Lember <klember@redhat.com> - 5.1.4-2
|
||||||
|
- Prefer openh264 over noopenh264
|
||||||
|
- Backport upstream patch to drop openh264 runtime version checks
|
||||||
|
|
||||||
|
* Tue Nov 14 2023 Neal Gompa <ngompa@fedoraproject.org> - 5.1.4-1
|
||||||
|
- Update to 5.1.4
|
||||||
|
- Add ffmpeg chromium support patch (#2240127)
|
||||||
|
- Use git to apply patches
|
||||||
|
|
||||||
|
* Tue Mar 28 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 5.1.3-1
|
||||||
|
- Update to 5.1.3
|
||||||
|
|
||||||
* Wed Feb 15 2023 Neal Gompa <ngompa@fedoraproject.org> - 5.1.2-12
|
* Wed Feb 15 2023 Neal Gompa <ngompa@fedoraproject.org> - 5.1.2-12
|
||||||
- Enable support for the RIST protocol through librist
|
- Enable support for the RIST protocol through librist
|
||||||
|
|
||||||
|
|
|
||||||
4
sources
4
sources
|
|
@ -1,4 +1,4 @@
|
||||||
SHA512 (ffmpeg-free-5.1.2.tar.xz) = 8dfb1b8a7d60357abbb21b38526ece67efec38cb52c01ed03b540d350ac82576ce68de3294a4cc6f166c36defa3933e2f9d4652b290e167bf8b6f220921e1e50
|
SHA512 (ffmpeg-free-5.1.4.tar.xz) = 73365770b6049528d08fb199de30d61c31327f050d66d87876d26388cc85feaae5c2f1cad6b06f34c7fbb28a1dff0df55d15653f7f5e216e9662cfe902bd8d5a
|
||||||
SHA512 (ffmpeg-5.1.2.tar.xz.asc) = 6afc898e3898a7d34e21f0f0bd0553765a46257332c6ece6226e3e043b842275a8d885b9ccca34bc90a2f008ae5fa14515276d23f921a518a63a47f6504af115
|
SHA512 (ffmpeg-5.1.4.tar.xz.asc) = f161815d47c988f8b6281a95f22301d07a22ddc41a2a84bfc126b4d7de0e9175da499c2cc15b3bdaa415af0e8ed1d2b4d52096a81b4a3d804effb00ff9e8ec5b
|
||||||
SHA512 (ffmpeg-dlopen-headers.tar.xz) = 97e6986fc2bb9dfa4516135a76b04d27ceb52ff96f0af21a6169919aeefefb4d2e2e24a771959689cdbec385f5d71614ba661223c67c0e94089a6dd823a30099
|
SHA512 (ffmpeg-dlopen-headers.tar.xz) = 97e6986fc2bb9dfa4516135a76b04d27ceb52ff96f0af21a6169919aeefefb4d2e2e24a771959689cdbec385f5d71614ba661223c67c0e94089a6dd823a30099
|
||||||
SHA512 (ffmpeg.keyring) = 9b36506835db36f776b7ddb53ad6fa9e915e6ca2f9c7cfebe8eb45513e1036a985283590a840ca313a111bf35dc3731f68885aaafb1fb7011ec433cc119e5165
|
SHA512 (ffmpeg.keyring) = 9b36506835db36f776b7ddb53ad6fa9e915e6ca2f9c7cfebe8eb45513e1036a985283590a840ca313a111bf35dc3731f68885aaafb1fb7011ec433cc119e5165
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue