Fix compilation with newer ffmpeg, bug 369523
authorAndreas Hüttel <dilfridge@gentoo.org>
Sun, 18 Sep 2011 10:08:03 +0000 (10:08 +0000)
committerAndreas Hüttel <dilfridge@gentoo.org>
Sun, 18 Sep 2011 10:08:03 +0000 (10:08 +0000)
Package-Manager: portage-2.1.10.18/cvs/Linux x86_64

app-cdr/k3b/ChangeLog
app-cdr/k3b/Manifest
app-cdr/k3b/files/k3b-2.0.2-ffmpeg.patch [new file with mode: 0644]
app-cdr/k3b/k3b-2.0.2-r1.ebuild

index 69183b10d648675f6cd160a0addc00c85f8a361a..7f349264ea4ab61ae0822e2a231dfc93c5217f37 100644 (file)
@@ -1,6 +1,10 @@
 # ChangeLog for app-cdr/k3b
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-cdr/k3b/ChangeLog,v 1.266 2011/08/11 09:37:25 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-cdr/k3b/ChangeLog,v 1.267 2011/09/18 10:08:03 dilfridge Exp $
+
+  18 Sep 2011; Andreas K. Huettel <dilfridge@gentoo.org> k3b-2.0.2-r1.ebuild,
+  +files/k3b-2.0.2-ffmpeg.patch:
+  Fix compilation with newer ffmpeg, bug 369523
 
   11 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org> k3b-2.0.2-r1.ebuild:
   Optional is JUST FINE! It won't build the docs folder without it being
index 232d8a57912ffb2a239284ceb5fb677775584fc3..4a0847eddeb96ff2840341131ecf7ebde90861ac 100644 (file)
@@ -1,14 +1,25 @@
 -----BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
+Hash: SHA512
 
+AUX k3b-2.0.2-ffmpeg.patch 3298 RMD160 0e7cff12151cfa33f87f4d4d425921e01fd1a9ba SHA1 8120c0e22e6c41ea285ca6060be13723ed91c52b SHA256 4285080dd207ba7282bde1de73b98c49c80e0d02e7ab53cb0317a94b08a2a547
 DIST k3b-2.0.2.tar.bz2 12833321 RMD160 a0289eb9ccec9607c2bdac3fc7c69102eec5ee40 SHA1 8b30a4d07942e82559b01bc07dea6bcf2defd532 SHA256 af176f29c1d2339c4648d461476227cb07bcd0c75056f2a4006f253e3ef5b7cd
-EBUILD k3b-2.0.2-r1.ebuild 3279 RMD160 9ff06d2a5641f0c54c71f61ba05f84352f58a0ee SHA1 3376e65179c64265a33d43d68c2450168483ee95 SHA256 7f03d234fa1f0c03c546bd7bfb86f9c611a4f78518e01006cfd32c1d05a3e3b8
-MISC ChangeLog 38538 RMD160 ad1ba0660c1566b057817d963cba16abada6370b SHA1 f36c958a8c57fe683db8fa54ead5b967733c7926 SHA256 d3b65f4d34a6a5e8afaf20c1c28bb81a4cd0ffaae8b3cb4c9a33beb230c3b4d6
+EBUILD k3b-2.0.2-r1.ebuild 3324 RMD160 fb85db3a384a18b1df5e962652136aec9c03942a SHA1 f38276c724626d03ec619d0cfe2401cb4f6ae5e4 SHA256 7cbed4931f30b3c6ca0af17de611a7c5a219aa0d34748ee0495d76304b76d3eb
+MISC ChangeLog 38698 RMD160 5dda918681fcb21a7ba6fc6f019d5498f46fc617 SHA1 e1220ac6991775535fd88ecb01b630985c364258 SHA256 2842ae956986b75410f45607a6aadb13a0d820de76dbd9540970f8fb562f37a1
 MISC metadata.xml 328 RMD160 5b743e23199d1fe9055c726d7d177ee0e2f7e915 SHA1 73b1368091e675957fe43af4c9ce71b6049def16 SHA256 c7ade5871825684e83ad0a4126a78df11f40cfb6d7ac6578c8b65f3491ef01a0
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.18 (GNU/Linux)
+Version: GnuPG v2.0.17 (GNU/Linux)
 
-iEYEARECAAYFAk5DouAACgkQHB6c3gNBRYfiDQCfawMUZXm9pPj74pYqmeOp1kcz
-boUAoM+3RCvT4qmbi+vtubtpUIjWeR2r
-=rJMi
+iQIcBAEBCgAGBQJOdcM6AAoJEEb+UGWnxTyHWYAP/0YzlYCBgOvEm4/rx0ORbwas
+w/hB5QGq5FCca8XDW0al0BN+3QLlLyFI09eqtHrMYLc2C/zqmnEOidemZz91w1n+
+PWUdnNPvX3J2YYK7AQFkocEBmZXDW5NEnZ6OBOHZ9bTe+NAVuzOo8uZc4Y3l9Xgc
+OiCh4WiYRWTYTN1AZnTiEnXHEgKNM88IJoNTNR3vWYK5xBPaJCJgSiSfuayEv9s0
+oQmbgEy2O1fBJHW9hMm9L8fFEwadcfKnIe4DAnwHQRQ07pZBuXXO7vQ2zxHJo6gd
+0ZdQy7lLZXQSofB0GS3o475NqGHM4rOXA9XCTsrvR2gqlo8DFks7fmy2nm+ZYhf6
+eKamFjsSJb3lon6FjercQYjN3sOu0gJx6m/QDX+XQdIsJe0657Bh/7jbaHUihPhe
+63AWul2IsoE/zsxz2vEkY9pU/5wJaMo3H8SIwF18pzKkceWLNF2ZLa1WsVgL6ltX
+VJt6at3IABd7BorgwVsjuaUG/fGMokqWCQoq3HFWlT4Qu3lmj2XWkTpftbXrtjFj
+c65H3LxLMFQeQ96CXX1/0HdaiNQ0h9mJf5N9zOSlzZka1LzVGizSPuBNzifBi5DA
+uyQ7nNwXlpzyAVi1fH+oOQ9YoJBZirruGFG5DCJdrW96VX+nRIt18ty+Nx3P1E3f
+/Or8GHQ1yFUgTlRGF7be
+=/5av
 -----END PGP SIGNATURE-----
diff --git a/app-cdr/k3b/files/k3b-2.0.2-ffmpeg.patch b/app-cdr/k3b/files/k3b-2.0.2-ffmpeg.patch
new file mode 100644 (file)
index 0000000..2878b1e
--- /dev/null
@@ -0,0 +1,96 @@
+commit 61ca30beb978f68e72257408777c6433f33129bd
+Author: Michal Malek <michalm@jabster.pl>
+Date:   Sun Aug 28 20:18:53 2011 +0200
+
+    Fixed compilation with new FFMPEG
+    
+    BUG: 274817
+    FIXED-IN: 2.0.3
+
+diff --git a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
+index 0ad59fc..0c5f366 100644
+--- a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
++++ b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
+@@ -109,7 +109,13 @@ bool K3bFFMpegFile::open()
+ #else
+     ::AVCodecContext* codecContext =  d->formatContext->streams[0]->codec;
+ #endif
+-    if( codecContext->codec_type != CODEC_TYPE_AUDIO ) {
++    if( codecContext->codec_type != 
++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 64, 0)
++        AVMEDIA_TYPE_AUDIO)
++#else
++        CODEC_TYPE_AUDIO)
++#endif
++    {
+         kDebug() << "(K3bFFMpegFile) not a simple audio stream: " << m_filename;
+         return false;
+     }
+@@ -225,8 +231,11 @@ QString K3bFFMpegFile::typeComment() const
+ QString K3bFFMpegFile::title() const
+ {
+     // FIXME: is this UTF8 or something??
+-    if( d->formatContext->title[0] != '\0' )
+-        return QString::fromLocal8Bit( d->formatContext->title );
++    AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "TITLE", NULL, 0 );
++    if( ade == NULL )
++        return QString();
++    if( ade->value != '\0' )
++        return QString::fromLocal8Bit( ade->value );
+     else
+         return QString();
+ }
+@@ -235,8 +244,11 @@ QString K3bFFMpegFile::title() const
+ QString K3bFFMpegFile::author() const
+ {
+     // FIXME: is this UTF8 or something??
+-    if( d->formatContext->author[0] != '\0' )
+-        return QString::fromLocal8Bit( d->formatContext->author );
++    AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "ARTIST", NULL, 0 );
++    if( ade == NULL )
++        return QString();
++    if( ade->value != '\0' )
++        return QString::fromLocal8Bit( ade->value );
+     else
+         return QString();
+ }
+@@ -245,8 +257,11 @@ QString K3bFFMpegFile::author() const
+ QString K3bFFMpegFile::comment() const
+ {
+     // FIXME: is this UTF8 or something??
+-    if( d->formatContext->comment[0] != '\0' )
+-        return QString::fromLocal8Bit( d->formatContext->comment );
++    AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "COMMENT", NULL, 0 );
++    if( ade == NULL )
++        return QString();
++    if( ade->value != '\0' )
++        return QString::fromLocal8Bit( ade->value );
+     else
+         return QString();
+ }
+@@ -309,8 +324,13 @@ int K3bFFMpegFile::fillOutputBuffer()
+ #if LIBAVCODEC_VERSION_MAJOR < 52
+         int len = ::avcodec_decode_audio(
+ #else
++   #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 64, 0)
++        int len = ::avcodec_decode_audio3(
++   #else
+         int len = ::avcodec_decode_audio2(
++   #endif
+ #endif
++
+ #ifdef FFMPEG_BUILD_PRE_4629
+             &d->formatContext->streams[0]->codec,
+ #else
+@@ -318,7 +338,11 @@ int K3bFFMpegFile::fillOutputBuffer()
+ #endif
+             (short*)d->alignedOutputBuffer,
+             &d->outputBufferSize,
++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 64, 0)
++            &d->packet );
++#else
+             d->packetData, d->packetSize );
++#endif
+         if( d->packetSize <= 0 || len < 0 )
+             ::av_free_packet( &d->packet );
index c2dd21c64c9dbb6c4eaca8484c3bca0e238fe048..f899ea113deea9fa40c1fcc2e95e84ff3b09c213 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-cdr/k3b/k3b-2.0.2-r1.ebuild,v 1.8 2011/08/11 09:37:25 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-cdr/k3b/k3b-2.0.2-r1.ebuild,v 1.9 2011/09/18 10:08:03 dilfridge Exp $
 
 EAPI=4
 
@@ -63,6 +63,8 @@ RDEPEND="${DEPEND}
 
 DOCS+=( ChangeLog )
 
+PATCHES=( "${FILESDIR}/${P}-ffmpeg.patch" )
+
 src_configure() {
        mycmakeargs=(
                -DK3B_BUILD_K3BSETUP=OFF