Sync ffmpeg-custom with regular package

This commit is contained in:
Martchus 2022-09-13 23:40:39 +02:00
parent 10a80dfb5e
commit 032cf231a8
2 changed files with 27 additions and 38 deletions

View File

@ -9,8 +9,8 @@
_name=ffmpeg
pkgname=ffmpeg-custom
pkgver=5.0.1
pkgrel=2
pkgver=5.1.1
pkgrel=1
epoch=1
pkgdesc='Complete solution to record, convert and stream audio and video (with more features enabled than regular ffmpeg)'
arch=('x86_64')
@ -30,9 +30,11 @@ depends=(
libass.so
libavc1394
libbluray.so
libbs2b.so
libdav1d.so
libdrm
libfreetype.so
libgl
libiec61883
libmfx
libmodplug
@ -51,6 +53,7 @@ depends=(
libvorbis.so
libvorbisenc.so
libvpx.so
libvulkan.so
libwebp
libx11
libx264.so
@ -61,6 +64,7 @@ depends=(
libxv
libxvidcore.so
libzimg.so
ocl-icd
opencore-amr
openjpeg2
opus
@ -86,7 +90,9 @@ makedepends=(
ffnvcodec-headers
git
ladspa
mesa
nasm
opencl-headers
vulkan-headers
opencl-clhpp
openal
@ -114,22 +120,19 @@ conflicts=("$_name")
options=(
debug
)
_tag=9687cae2b468e09e35df4cea92cc2e6a0e6c93b3
_tag=8536e629f0c35c0e8a2b67e65d3bc60a088fe413
source=(
git+https://git.ffmpeg.org/ffmpeg.git#tag=${_tag}
ffmpeg-vmaf2.x.patch
git+https://git.ffmpeg.org/ffmpeg.git?signed#tag=${_tag}
add-av_stream_get_first_dts-for-chromium.patch
)
b2sums=(
SKIP
65039aac811bfd143359e32720cd6ca64124f1789c1b624bd28a5bd75b37362b2a3b6b402203c4e9d137fb1d00895114f3789df40f8381091d38c98e7876cc8a
3f2ee7606500fa9444380d138959cd2bccfbba7d34629a17f4f6288c6bde29e931bbe922a7c25d861f057ddd4ba0b095bbd675c1930754746d5dd476b3ccbc13
555274228e09a233d92beb365d413ff5c718a782008075552cafb2130a3783cf976b51dfe4513c15777fb6e8397a34122d475080f2c4483e8feea5c0d878e6de
)
validpgpkeys=(DD1EC9E8DE085C629B3E1846B18E8928B3948D64) # Michael Niedermayer <michael@niedermayer.cc>
prepare() {
cd ffmpeg
git cherry-pick -n 988f2e9eb063db7c1a678729f58aab6eba59a55b # fix nvenc on older gpus
patch -Np1 -i ../ffmpeg-vmaf2.x.patch # vmaf 2.x support
patch -Np1 -i ../add-av_stream_get_first_dts-for-chromium.patch # https://crbug.com/1251779
}
@ -140,7 +143,6 @@ pkgver() {
build() {
cd $_name
./configure \
--prefix=/usr \
--disable-debug \
@ -158,6 +160,7 @@ build() {
--enable-libaom \
--enable-libass \
--enable-libbluray \
--enable-libbs2b \
--enable-libdav1d \
--enable-libfreetype \
--enable-libfribidi \
@ -194,19 +197,18 @@ build() {
--enable-libzimg \
--enable-nvdec \
--enable-nvenc \
--enable-omx \
--enable-opencl \
--enable-opengl \
--enable-shared \
--enable-version3 \
--enable-vulkan \
--enable-omx \
--enable-libfdk_aac \
--enable-vaapi \
--enable-vdpau \
--enable-opencl \
--enable-openal \
--enable-vulkan \
--enable-nonfree
# note: removing --enable-libglslang for now due to "ERROR: libglslang not found"
make
make tools/qt-faststart
make doc/ff{mpeg,play}.1

View File

@ -1,19 +1,7 @@
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);
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);
@ -24,11 +12,10 @@ index cd7b0d941c..b4a6dce885 100644
#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)
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;
}
@ -39,6 +26,6 @@ index de7580c32d..0ef0fe530e 100644
+}
+// Chromium: We use the internal field first_dts ^^^
+
struct AVCodecParserContext *av_stream_get_parser(const AVStream *st)
int avformat_query_codec(const AVOutputFormat *ofmt, enum AVCodecID codec_id,
int std_compliance)
{
return st->internal->parser;