Date: Tuesday, March 8, 2016 @ 23:30:22 Author: anatolik Revision: 261233
FS#48454 fix pcm_a52.c broken by the recent ffmpeg 3 update The patch has been sent upstream but not reviewed yet Added: alsa-plugins/trunk/0002-replace-avcodec_alloc_free_frame.patch Modified: alsa-plugins/trunk/PKGBUILD ---------------------------------------------+ 0002-replace-avcodec_alloc_free_frame.patch | 32 ++++++++++++++++++++++++++ PKGBUILD | 9 ++++--- 2 files changed, 38 insertions(+), 3 deletions(-) Added: 0002-replace-avcodec_alloc_free_frame.patch =================================================================== --- 0002-replace-avcodec_alloc_free_frame.patch (rev 0) +++ 0002-replace-avcodec_alloc_free_frame.patch 2016-03-08 22:30:22 UTC (rev 261233) @@ -0,0 +1,32 @@ +--- a/a52/pcm_a52.c.orig 2016-03-04 18:21:12.606805770 +0100 ++++ b/a52/pcm_a52.c 2016-03-04 18:34:22.653240501 +0100 +@@ -62,6 +62,11 @@ + #define AV_CODEC_ID_AC3 CODEC_ID_AC3 + #endif + ++#if LIBAVCODEC_VERSION_INT < 0x371c01 ++#define av_frame_alloc avcodec_alloc_frame ++#define av_frame_free avcodec_free_frame ++#endif ++ + struct a52_ctx { + snd_pcm_ioplug_t io; + snd_pcm_t *slave; +@@ -513,7 +518,7 @@ + rec->inbuf = NULL; + } + #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54, 28, 0) +- avcodec_free_frame(&rec->frame); ++ av_frame_free(&rec->frame); + #else + av_freep(&rec->frame); + #endif +@@ -557,7 +562,7 @@ + { + struct a52_ctx *rec = io->private_data; + #ifdef USE_AVCODEC_FRAME +- rec->frame = avcodec_alloc_frame(); ++ rec->frame = av_frame_alloc(); + if (!rec->frame) + return -ENOMEM; + if (av_samples_alloc(rec->frame->data, rec->frame->linesize, Modified: PKGBUILD =================================================================== --- PKGBUILD 2016-03-08 22:21:23 UTC (rev 261232) +++ PKGBUILD 2016-03-08 22:30:22 UTC (rev 261233) @@ -5,7 +5,7 @@ pkgname=alsa-plugins pkgver=1.1.0 -pkgrel=2 +pkgrel=3 pkgdesc="Extra alsa plugins" arch=(i686 x86_64) url="http://www.alsa-project.org" @@ -18,13 +18,16 @@ 'libsamplerate: libsamplerate resampling plugin' 'speex: libspeexdsp resampling plugin') source=("ftp://ftp.alsa-project.org/pub/plugins/$pkgname-$pkgver.tar.bz2" - 0001-Do-not-use-deprecated-FFmpeg-API.patch) + 0001-Do-not-use-deprecated-FFmpeg-API.patch + 0002-replace-avcodec_alloc_free_frame.patch) sha1sums=('1436db17989468d082691b817b338e44ba932c4b' - '6b032eb20ea1222e78dc862e61e5dad70a8ef2bb') + '6b032eb20ea1222e78dc862e61e5dad70a8ef2bb' + 'dc42d1b9ada91d26fbddad2aaf42931edf0b8e9d') prepare() { cd $pkgname-$pkgver patch -p1 < ../0001-Do-not-use-deprecated-FFmpeg-API.patch + patch -p1 < ../0002-replace-avcodec_alloc_free_frame.patch } build() {