summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/ffmpeg-add-av_stream_get_first_dts-for-chromium.patch
diff options
context:
space:
mode:
author宋文武 <iyzsong@member.fsf.org>2025-02-07 18:02:06 +0800
committerAndreas Enge <andreas@enge.fr>2025-07-18 20:17:40 +0200
commitb8e3696fc50826601fe1190380f0d1979378f11d (patch)
treea59bb0b42f8bbc7112fec111a6dd9ce6b1093f8e /gnu/packages/patches/ffmpeg-add-av_stream_get_first_dts-for-chromium.patch
parentc54715b14dc9d6a4fb31678314b10584206ec0e9 (diff)
gnu: ffmpeg: Add 'av_stream_get_first_dts' patch for QtWebEngine.
* gnu/packages/patches/ffmpeg-add-av_stream_get_first_dts-for-chromium.patch: New patch. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/video.scm (ffmpeg) [patches]: Add it. Change-Id: I819076f8eb1cd2d62f2bbf18c7ceee10cb59adba
Diffstat (limited to 'gnu/packages/patches/ffmpeg-add-av_stream_get_first_dts-for-chromium.patch')
-rw-r--r--gnu/packages/patches/ffmpeg-add-av_stream_get_first_dts-for-chromium.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/patches/ffmpeg-add-av_stream_get_first_dts-for-chromium.patch b/gnu/packages/patches/ffmpeg-add-av_stream_get_first_dts-for-chromium.patch
new file mode 100644
index 0000000000..f6cb278e9b
--- /dev/null
+++ b/gnu/packages/patches/ffmpeg-add-av_stream_get_first_dts-for-chromium.patch
@@ -0,0 +1,37 @@
+Add 'av_stream_get_first_dts' for Chromium and QtWebEngine.
+
+Taken from Arch Linux:
+ <https://gitlab.archlinux.org/archlinux/packaging/packages/ffmpeg/-/blob/a02c1a15706ea832c0d52a4d66be8fb29499801a/add-av_stream_get_first_dts-for-chromium.patch>
+
+---
+diff '--color=auto' -rupN ffmpeg.orig/libavformat/avformat.h ffmpeg/libavformat/avformat.h
+--- ffmpeg.orig/libavformat/avformat.h 2022-08-19 17:42:47.323422603 +0200
++++ ffmpeg/libavformat/avformat.h 2022-08-19 17:42:51.347130436 +0200
+@@ -1128,6 +1128,10 @@ struct AVCodecParserContext *av_stream_g
+ */
+ 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 '--color=auto' -rupN ffmpeg.orig/libavformat/mux_utils.c ffmpeg/libavformat/mux_utils.c
+--- ffmpeg.orig/libavformat/mux_utils.c 2022-08-19 17:42:47.346758108 +0200
++++ ffmpeg/libavformat/mux_utils.c 2022-08-19 17:47:28.549589002 +0200
+@@ -37,6 +37,13 @@ int64_t av_stream_get_end_pts(const AVSt
+ return AV_NOPTS_VALUE;
+ }
+
++// 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 ^^^
++
+ int avformat_query_codec(const AVOutputFormat *ofmt, enum AVCodecID codec_id,
+ int std_compliance)
+ {