Update ffmpeg to 5.0

This commit is contained in:
Martchus 2022-01-25 18:19:45 +01:00
parent b4d4f855c7
commit 4584f05fad
2 changed files with 53 additions and 4 deletions

View File

@ -9,7 +9,7 @@
_name=ffmpeg
pkgname=ffmpeg-custom
pkgver=4.4.1
pkgver=5.0
pkgrel=1
epoch=1
pkgdesc='Complete solution to record, convert and stream audio and video (with more features enabled than regular ffmpeg)'
@ -111,14 +111,16 @@ provides=(
)
conflicts=("$_name")
_tag=7e0d640edf6c3eee1816b105c2f7498c4f948e74
_tag=390d6853d0ef408007feb39c0040682c81c02751
source=(
git+https://git.ffmpeg.org/ffmpeg.git#tag=${_tag}
'vmaf-model-path.patch'
vmaf-model-path.patch
add-av_stream_get_first_dts-for-chromium.patch
)
sha256sums=(
'SKIP'
'8dff51f84a5f7460f8893f0514812f5d2bd668c3276ef7ab7713c99b71d7bd8d'
8dff51f84a5f7460f8893f0514812f5d2bd668c3276ef7ab7713c99b71d7bd8d
91973c465f01446a999f278f0c2a3763304994dba1ac35de0e4c72f12f39409e
)
#pkgver() {
@ -132,6 +134,9 @@ prepare() {
git cherry-pick -n 988f2e9eb063db7c1a678729f58aab6eba59a55b # fix nvenc on older gpus
patch -Np1 -i "${srcdir}"/vmaf-model-path.patch
# https://crbug.com/1251779
patch -Np1 -i "${srcdir}"/add-av_stream_get_first_dts-for-chromium.patch
}
build() {

View File

@ -0,0 +1,44 @@
From 95aab0fd83619408995720ce53d7a74790580220 Mon Sep 17 00:00:00 2001
From: "liberato@chromium.org" <liberato@chromium.org>
Date: Wed, 7 Jul 2021 19:01:22 -0700
Subject: [PATCH] Add av_stream_get_first_dts for Chromium
[foutrelis: adjust for new FFStream struct replacing AVStreamInternal]
---
libavformat/avformat.h | 4 ++++
libavformat/utils.c | 7 +++++++
2 files changed, 11 insertions(+)
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index cd7b0d941c..b4a6dce885 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -1010,6 +1010,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 de7580c32d..0ef0fe530e 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -121,6 +121,13 @@ int64_t av_stream_get_end_pts(const AVStream *st)
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 ^^^
+
struct AVCodecParserContext *av_stream_get_parser(const AVStream *st)
{
return st->internal->parser;