ffmpeg: enable vmaf support

Closes: #41489 [via git-merge-pr]
This commit is contained in:
Eugen Zagorodniy 2023-01-06 20:50:38 +02:00 committed by Duncaen
parent 4ba217410b
commit f911df2616
No known key found for this signature in database
GPG Key ID: 335C1D17EC3D6E35
2 changed files with 45 additions and 3 deletions

View File

@ -0,0 +1,40 @@
#==================================================================================================
# From 031f1561cd286596cdb374da32f8aa816ce3b135 Mon Sep 17 00:00:00 2001
# From: Christopher Degawa <christopher.degawa@intel.com>
# Date: Thu, 20 Oct 2022 22:55:27 -0500
# Subject: [PATCH] avcodec/libsvtav1: remove compressed_ten_bit_format and simplify alloc_buffer
#
# compressed_ten_bit_format has been deprecated upstream and has no effect
# and can be removed. Plus, technically it was never used in the first place
# since it would require the app (ffmpeg) to set it and do additional
# processing of the input frames.
#
# Also simplify alloc_buffer by removing calculations relating to the non-existant processing.
#
# Signed-off-by: Christopher Degawa <christopher.degawa@intel.com>
#==================================================================================================
--- a/libavcodec/libsvtav1.c
+++ b/libavcodec/libsvtav1.c
@@ -124,16 +124,12 @@ static int svt_print_error(void *log_ctx, EbErrorType err,
static int alloc_buffer(EbSvtAv1EncConfiguration *config, SvtContext *svt_enc)
{
- const int pack_mode_10bit =
- (config->encoder_bit_depth > 8) && (config->compressed_ten_bit_format == 0) ? 1 : 0;
- const size_t luma_size_8bit =
- config->source_width * config->source_height * (1 << pack_mode_10bit);
- const size_t luma_size_10bit =
- (config->encoder_bit_depth > 8 && pack_mode_10bit == 0) ? luma_size_8bit : 0;
+ const size_t luma_size = config->source_width * config->source_height *
+ (config->encoder_bit_depth > 8 ? 2 : 1);
EbSvtIOFormat *in_data;
- svt_enc->raw_size = (luma_size_8bit + luma_size_10bit) * 3 / 2;
+ svt_enc->raw_size = luma_size * 3 / 2;
// allocate buffer for in and out
svt_enc->in_buf = av_mallocz(sizeof(*svt_enc->in_buf));
--
GitLab

View File

@ -2,7 +2,7 @@
# audacity also needs to be bumped when a new ffmpeg version bumps libavformat's soname!
pkgname=ffmpeg
version=4.4.4
revision=1
revision=2
short_desc="Decoding, encoding and streaming software"
maintainer="Orphaned <orphan@voidlinux.org>"
license="GPL-3.0-or-later"
@ -17,7 +17,7 @@ makedepends="zlib-devel bzip2-devel freetype-devel alsa-lib-devel libXfixes-deve
libvorbis-devel x264-devel xvidcore-devel jack-devel SDL2-devel
libcdio-paranoia-devel librtmp-devel libmodplug-devel gnutls-devel
speex-devel celt-devel harfbuzz-devel libass-devel opus-devel ocl-icd-devel
libbs2b-devel libvidstab-devel $(vopt_if pulseaudio pulseaudio-devel)
libbs2b-devel libvidstab-devel vmaf-devel $(vopt_if pulseaudio pulseaudio-devel)
$(vopt_if vaapi libva-devel) $(vopt_if vdpau libvdpau-devel)
$(vopt_if x265 x265-devel) $(vopt_if v4l2 v4l-utils-devel)
$(vopt_if fdk_aac fdk-aac-devel) $(vopt_if vpx libvpx-devel)
@ -69,6 +69,8 @@ post_patch() {
ppc64le*) ;;
ppc*) _apply_patch -p1 ${FILESDIR}/altivec.patch ;;
esac
vsed -i libavfilter/vf_libvmaf.c -e 's!/usr/local/share/model/\(vmaf_v0.6.1\).pkl!/usr/share/vmaf/\1.json!'
}
do_configure() {
@ -113,7 +115,7 @@ do_configure() {
$(vopt_if fdk_aac '--enable-nonfree --enable-libfdk-aac') \
--disable-libopencore_amrnb --disable-libopencore_amrwb \
--disable-libopenjpeg \
--enable-postproc --enable-opencl ${_args} \
--enable-postproc --enable-opencl --enable-libvmaf ${_args} \
$(vopt_enable x265 libx265) \
$(vopt_enable v4l2 libv4l2) \
$(vopt_enable aom libaom) $(vopt_enable vaapi) $(vopt_enable vdpau) \