summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2008-09-22 20:32:41 +0000
committerAlexis Ballier <aballier@gentoo.org>2008-09-22 20:32:41 +0000
commitb9a31ef2400c022d106a9dd48697456026bfcea9 (patch)
treee4a538deab08b90ee1d6ddfd217827ada1a7ece5
parentUpdated patch to fix bug #238402 reported by André Terpstra <andre@terpstra.... (diff)
downloadgentoo-2-b9a31ef2400c022d106a9dd48697456026bfcea9.tar.gz
gentoo-2-b9a31ef2400c022d106a9dd48697456026bfcea9.tar.bz2
gentoo-2-b9a31ef2400c022d106a9dd48697456026bfcea9.zip
Fix build with latest ffmpeg
(Portage version: 2.2_rc9/cvs/Linux 2.6.26.5 x86_64)
-rw-r--r--media-video/dvbcut/ChangeLog6
-rw-r--r--media-video/dvbcut/dvbcut-0.5.4-r1.ebuild3
-rw-r--r--media-video/dvbcut/files/dvbcut-0.5.4-lavc.patch42
3 files changed, 49 insertions, 2 deletions
diff --git a/media-video/dvbcut/ChangeLog b/media-video/dvbcut/ChangeLog
index 40f1a57324a2..5c7bef4e2555 100644
--- a/media-video/dvbcut/ChangeLog
+++ b/media-video/dvbcut/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for media-video/dvbcut
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/dvbcut/ChangeLog,v 1.13 2008/08/06 23:27:32 aballier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/dvbcut/ChangeLog,v 1.14 2008/09/22 20:32:41 aballier Exp $
+
+ 22 Sep 2008; Alexis Ballier <aballier@gentoo.org>
+ +files/dvbcut-0.5.4-lavc.patch, dvbcut-0.5.4-r1.ebuild:
+ Fix build with latest ffmpeg
06 Aug 2008; Alexis Ballier <aballier@gentoo.org>
+files/dvbcut-0.5.4-gcc43.patch, dvbcut-0.5.4-r1.ebuild:
diff --git a/media-video/dvbcut/dvbcut-0.5.4-r1.ebuild b/media-video/dvbcut/dvbcut-0.5.4-r1.ebuild
index 06bf4daccff1..b80297845dd5 100644
--- a/media-video/dvbcut/dvbcut-0.5.4-r1.ebuild
+++ b/media-video/dvbcut/dvbcut-0.5.4-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/dvbcut/dvbcut-0.5.4-r1.ebuild,v 1.5 2008/08/06 23:27:32 aballier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/dvbcut/dvbcut-0.5.4-r1.ebuild,v 1.6 2008/09/22 20:32:41 aballier Exp $
EAPI=1
@@ -43,6 +43,7 @@ src_unpack() {
epatch "${FILESDIR}/${P}-ffmpeg-compat2.patch"
epatch "${FILESDIR}/${P}-ffmpeg-compat3.patch"
epatch "${FILESDIR}/${P}-avformat-api-changes.patch"
+ epatch "${FILESDIR}/${P}-lavc.patch"
if has_version ">=media-video/ffmpeg-0.4.9_p20080326"; then
epatch "${FILESDIR}/${P}-ffmpeg-0.4.9_p20080326.diff"
diff --git a/media-video/dvbcut/files/dvbcut-0.5.4-lavc.patch b/media-video/dvbcut/files/dvbcut-0.5.4-lavc.patch
new file mode 100644
index 000000000000..2306ad906b9c
--- /dev/null
+++ b/media-video/dvbcut/files/dvbcut-0.5.4-lavc.patch
@@ -0,0 +1,42 @@
+Index: dvbcut-0.5.4/src/avframe.cpp
+===================================================================
+--- dvbcut-0.5.4.orig/src/avframe.cpp
++++ dvbcut-0.5.4/src/avframe.cpp
+@@ -39,7 +39,7 @@ avframe::avframe(AVFrame *src, AVCodecCo
+ (u_int8_t*)tobefreed,
+ ctx->pix_fmt,ctx->width,ctx->height);
+
+- img_copy((AVPicture *)f, (const AVPicture *) src,
++ av_picture_copy((AVPicture *)f, (const AVPicture *) src,
+ ctx->pix_fmt, ctx->width, ctx->height);
+
+ f->pict_type = src->pict_type;
+Index: dvbcut-0.5.4/src/mpgfile.cpp
+===================================================================
+--- dvbcut-0.5.4.orig/src/mpgfile.cpp
++++ dvbcut-0.5.4/src/mpgfile.cpp
+@@ -250,7 +250,7 @@ void mpgfile::initaudiocodeccontext(int
+
+ int16_t samples[6*1536]; // must be enough for 6 AC-3 channels --mr
+ int frame_size=sizeof(samples);
+- avcodec_decode_audio(S->avcc,samples,&frame_size,(uint8_t*) sd->getdata(),sd->inbytes());
++ avcodec_decode_audio2(S->avcc,samples,&frame_size,(uint8_t*) sd->getdata(),sd->inbytes());
+ avcodec_close(S->avcc);
+ }
+
+Index: dvbcut-0.5.4/src/playaudio.cpp
+===================================================================
+--- dvbcut-0.5.4.orig/src/playaudio.cpp
++++ dvbcut-0.5.4/src/playaudio.cpp
+@@ -42,9 +42,9 @@ void playaudio(const void *data, uint32_
+
+ while (len>0) {
+ int16_t samples[MIN_BUFFER_SAMPLES > avcc->frame_size ? MIN_BUFFER_SAMPLES : avcc->frame_size ];
+- int frame_size;
++ int frame_size = AVCODEC_MAX_AUDIO_FRAME_SIZE;;
+
+- int bytesDecoded=avcodec_decode_audio(avcc,samples,&frame_size,(uint8_t*)d,len);
++ int bytesDecoded=avcodec_decode_audio2(avcc,samples,&frame_size,(uint8_t*)d,len);
+
+ if (bytesDecoded<0) {
+ fprintf(stderr,"avcodec_decode_audio returned %d\n",bytesDecoded);