summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Woudstra2023-06-03 11:12:32 +0200
committerEric Woudstra2023-06-03 11:12:32 +0200
commite889ad5fe813022c7d82920976ed73b3ec2e1ddc (patch)
tree42361fe3f00769b35afc1d6d6898cfec99b8073c
parent20f437b96a19df83f3b2ca8f17acc6ec327b0e9a (diff)
downloadaur-e889ad5fe813022c7d82920976ed73b3ec2e1ddc.tar.gz
ffmpeg6 here and ffmpeg4.4 in separate package
-rw-r--r--.SRCINFO19
-rw-r--r--PKGBUILD68
-rw-r--r--add-av_stream_get_first_dts-for-chromium.patch31
3 files changed, 96 insertions, 22 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 92a1730ba308..91cc42183a5e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = ffmpeg-v4l2-request-git
pkgdesc = FFmpeg with v4l2-request and drmprime
- pkgver = 5.1.2.r322505
- pkgrel = 1
+ pkgver = 6.0.r329749
+ pkgrel = 2
epoch = 2
url = https://ffmpeg.org/
arch = armv7h
@@ -13,7 +13,10 @@ pkgbase = ffmpeg-v4l2-request-git
makedepends = git
makedepends = ladspa
makedepends = linux-api-headers
+ makedepends = mesa
makedepends = nasm
+ makedepends = opencl-headers
+ makedepends = vulkan-headers
depends = alsa-lib
depends = bzip2
depends = fontconfig
@@ -26,11 +29,15 @@ pkgbase = ffmpeg-v4l2-request-git
depends = libass.so
depends = libavc1394
depends = libbluray.so
+ depends = libbs2b.so
depends = libdav1d.so
depends = libdrm
depends = libfreetype.so
+ depends = libgl
depends = libiec61883
+ depends = libjxl.so
depends = libmodplug
+ depends = libopenmpt.so
depends = libpulse
depends = libraw1394
depends = librsvg-2.so
@@ -45,6 +52,7 @@ pkgbase = ffmpeg-v4l2-request-git
depends = libvorbisenc.so
depends = libvorbis.so
depends = libvpx.so
+ depends = libvulkan.so
depends = libwebp
depends = libx11
depends = libx264.so
@@ -55,11 +63,11 @@ pkgbase = ffmpeg-v4l2-request-git
depends = libxv
depends = libxvidcore.so
depends = libzimg.so
+ depends = ocl-icd
depends = opencore-amr
depends = openjpeg2
depends = opus
depends = sdl2
- depends = sndio
depends = speex
depends = srt
depends = v4l-utils
@@ -73,12 +81,13 @@ pkgbase = ffmpeg-v4l2-request-git
provides = libavformat.so
provides = libavutil.so
provides = libpostproc.so
- provides = libswscale.so
provides = libswresample.so
+ provides = libswscale.so
provides = ffmpeg
- provides = ffmpeg4.4
conflicts = ffmpeg
source = git+https://github.com/jernejsk/FFmpeg
+ source = add-av_stream_get_first_dts-for-chromium.patch
+ sha256sums = SKIP
sha256sums = SKIP
pkgname = ffmpeg-v4l2-request-git
diff --git a/PKGBUILD b/PKGBUILD
index 9a72480e8b44..2d92475d0d18 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,16 +1,27 @@
-
# Maintainer: Eric Woudstra <ericwouds AT gmail DOT com>
+# Contributor: Yatao Li
# Contributor: Maxime Gauduin <alucryd@archlinux.org>
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
# Contributor: Paul Mattal <paul@archlinux.org>
+# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
+# - use -fPIC in host cflags for v7/v8 to fix print_options.c compile
+# - remove makedepends on ffnvcodec-headers, remove --enable-nvenc, --enable-nvdec
+# - remove depends on aom, remove --enable-libaom
+# - remove depends on intel-media-sdk, remove --enable-libmfx
+# - remove depends on vmaf, remove --enable-vmaf
+# - remove depends on rav1e, remove --enable-librav1e
+# - remove depends on svt-av1, remove --enable-libsvtav1
+# - remove --enable-lto
+
pkgname=ffmpeg-v4l2-request-git
+# pkgname=ffmpeg
_srcname=FFmpeg
-pkgver=5.1.2.r322505
-pkgrel=1
+pkgver=6.0.r329749
+pkgrel=2
epoch=2
pkgdesc='FFmpeg with v4l2-request and drmprime'
arch=('armv7h' 'aarch64')
@@ -29,11 +40,15 @@ depends=(
libass.so
libavc1394
libbluray.so
+ libbs2b.so
libdav1d.so
libdrm
libfreetype.so
+ libgl
libiec61883
+ libjxl.so
libmodplug
+ libopenmpt.so
libpulse
libraw1394
librsvg-2.so
@@ -48,6 +63,7 @@ depends=(
libvorbisenc.so
libvorbis.so
libvpx.so
+ libvulkan.so
libwebp
libx11
libx264.so
@@ -58,11 +74,11 @@ depends=(
libxv
libxvidcore.so
libzimg.so
+ ocl-icd
opencore-amr
openjpeg2
opus
sdl2
- sndio
speex
srt
v4l-utils
@@ -76,32 +92,42 @@ makedepends=(
git
ladspa
linux-api-headers
+ mesa
nasm
+ opencl-headers
+ vulkan-headers
)
optdepends=(
'avisynthplus: AviSynthPlus support'
'ladspa: LADSPA filters'
)
-provides=('libavcodec.so' 'libavdevice.so' 'libavfilter.so' 'libavformat.so'
- 'libavutil.so' 'libpostproc.so' 'libswscale.so' 'libswresample.so'
- 'ffmpeg' 'ffmpeg4.4')
-conflicts=('ffmpeg')
+provides=(
+ libavcodec.so
+ libavdevice.so
+ libavfilter.so
+ libavformat.so
+ libavutil.so
+ libpostproc.so
+ libswresample.so
+ libswscale.so
+ ffmpeg)
+conflicts=(
+ ffmpeg
+)
source=(
'git+https://github.com/jernejsk/FFmpeg'
+ add-av_stream_get_first_dts-for-chromium.patch
)
sha256sums=(
SKIP
+ SKIP
)
-#_version='4.4.1'
-#_branch1='v4l2-request-hwaccel-'$_version'-Nexus-Alpha1'
-#_branch2='v4l2-drmprime-v6-'$_version'-Nexus-Alpha1'
-#_branch3=''
-
- _version='5.1.2'
- _branch1='v4l2-request-n'$_version
- _branch2='v4l2-drmprime-n'$_version
- _branch3='vf-deinterlace-v4l2m2m-n'$_version
+ #_version='5.1.2'
+_version='6.0'
+_branch1='v4l2-request-n'$_version
+_branch2='v4l2-drmprime-n'$_version
+_branch3='vf-deinterlace-v4l2m2m-n'$_version
prepare() {
cd ${_srcname}
@@ -116,6 +142,8 @@ prepare() {
git -c "user.name=Your Name" -c "user.email=you@example.com" \
merge --no-edit origin/$_branch3
fi
+
+ patch -Np1 -i ../add-av_stream_get_first_dts-for-chromium.patch # https://crbug.com/1251779
}
pkgver() {
@@ -150,6 +178,7 @@ build() {
--enable-ladspa \
--enable-libass \
--enable-libbluray \
+ --enable-libbs2b \
--enable-libdav1d \
--enable-libdrm \
--enable-libfreetype \
@@ -157,11 +186,13 @@ build() {
--enable-libgsm \
--enable-libiec61883 \
--enable-libjack \
+ --enable-libjxl \
--enable-libmodplug \
--enable-libmp3lame \
--enable-libopencore_amrnb \
--enable-libopencore_amrwb \
--enable-libopenjpeg \
+ --enable-libopenmpt \
--enable-libopus \
--enable-libpulse \
--enable-librsvg \
@@ -181,8 +212,11 @@ build() {
--enable-libxml2 \
--enable-libxvid \
--enable-libzimg \
+ --enable-opencl \
+ --enable-opengl \
--enable-shared \
--enable-version3 \
+ --enable-vulkan $CONFIG \
\
--arch=$CARCH \
--enable-v4l2_m2m \
diff --git a/add-av_stream_get_first_dts-for-chromium.patch b/add-av_stream_get_first_dts-for-chromium.patch
new file mode 100644
index 000000000000..20ea725dabf4
--- /dev/null
+++ b/add-av_stream_get_first_dts-for-chromium.patch
@@ -0,0 +1,31 @@
+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)
+ {