diff options
author | Alexis Ballier <aballier@gentoo.org> | 2011-05-11 19:11:38 +0000 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2011-05-11 19:11:38 +0000 |
commit | 065bb677ef53e39e21401c66e0c4bc40fd082292 (patch) | |
tree | 08fa3fc486e15b20bd2bab070f6c9e5b84d1a3aa /media-libs/xine-lib | |
parent | Stable on amd64 wrt bug #365393 (diff) | |
download | historical-065bb677ef53e39e21401c66e0c4bc40fd082292.tar.gz historical-065bb677ef53e39e21401c66e0c4bc40fd082292.tar.bz2 historical-065bb677ef53e39e21401c66e0c4bc40fd082292.zip |
fix build with ffmpeg/libav trunk
Package-Manager: portage-2.2.0_alpha32/cvs/Linux x86_64
Diffstat (limited to 'media-libs/xine-lib')
-rw-r--r-- | media-libs/xine-lib/ChangeLog | 6 | ||||
-rw-r--r-- | media-libs/xine-lib/Manifest | 11 | ||||
-rw-r--r-- | media-libs/xine-lib/files/xine-lib-1.1.19-ffmpeg.patch | 103 | ||||
-rw-r--r-- | media-libs/xine-lib/xine-lib-1.1.19.ebuild | 5 |
4 files changed, 117 insertions, 8 deletions
diff --git a/media-libs/xine-lib/ChangeLog b/media-libs/xine-lib/ChangeLog index 0d8513c681e0..357de0d54906 100644 --- a/media-libs/xine-lib/ChangeLog +++ b/media-libs/xine-lib/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for media-libs/xine-lib # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/xine-lib/ChangeLog,v 1.642 2011/04/10 20:10:06 scarabeus Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/xine-lib/ChangeLog,v 1.643 2011/05/11 19:11:38 aballier Exp $ + + 11 May 2011; Alexis Ballier <aballier@gentoo.org> xine-lib-1.1.19.ebuild, + +files/xine-lib-1.1.19-ffmpeg.patch: + fix build with ffmpeg/libav trunk 10 Apr 2011; Tomáš Chvátal <scarabeus@gentoo.org> xine-lib-1.1.19.ebuild: Move to virtual/ffmpeg from media-video/ffmpeg. Fixes bug #362083. diff --git a/media-libs/xine-lib/Manifest b/media-libs/xine-lib/Manifest index 74a4bb62dfae..a43f35442ebb 100644 --- a/media-libs/xine-lib/Manifest +++ b/media-libs/xine-lib/Manifest @@ -1,16 +1,17 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 +AUX xine-lib-1.1.19-ffmpeg.patch 4521 RMD160 6c7f8f6708f0c230f809a80de76cb0b63dc86659 SHA1 de8d432d3472abd0409934a7c194140096310018 SHA256 4b24e0144bfd34ee37bc4493bbb0f5fd06b3097a92cccd8175b22581d8041937 AUX xine-lib-1.1.19-xvmc.patch 485 RMD160 781a7fbc5dcc9f3c25de83625509fcce3950cca8 SHA1 f78834833e3aeb05f555688ab657ae05cd0691c7 SHA256 6be3ceb8edd7626e93c617de3068374dd638e1445c7308d88b24614e9bbceaf0 DIST xine-lib-1.1.15-textrel-fix.patch 29373 RMD160 4702a26f42251614f5f6c99b4770f82da36577ae SHA1 e04d04dbd736fd17be8cf0583d47630850a89bf9 SHA256 1d6aa047cb0a13f248aea2e06e16b9758b9c39d8b7e42b32d0b52b424d26b33e DIST xine-lib-1.1.19.tar.xz 5782580 RMD160 7b8c2a4e5bcd0984414360d8d589aa533a9040f3 SHA1 f65f762d2e16adf04b9d715c91ee0bc02c322a7d SHA256 f834f646880bb44186018d12280ac27c8314447de9335b6fe390157b26df9cd9 -EBUILD xine-lib-1.1.19.ebuild 5606 RMD160 7669d32a8207e02c1b09edcff23e05859337db76 SHA1 923e924055acd4ffb3eb03eb0c239f10faad7f50 SHA256 20a2eee6e36063006f78eb53e2bbe69c000ae7ca82e702852612002239453881 -MISC ChangeLog 74582 RMD160 6a9a22cfedd4f5813b39bda95db337a8300f12f0 SHA1 ddf1297743091f2f29dfa70aa408e7b9bc1de82a SHA256 818f7afd8aca87775b4aed94e09b7b9f946949622a62e93e6bff1212a3736cd8 +EBUILD xine-lib-1.1.19.ebuild 5641 RMD160 01bf8a074e16571e2d63161b027df2c2c684818c SHA1 2153e0d9742a21ee417fe7e2028fd633cba93149 SHA256 4427df891249014998a51905c1ed7de19ec76a664eb2af7d73a48e9604cd0a5b +MISC ChangeLog 74733 RMD160 4d0d520272e87c8a61195cf3c545c97f5ffa51f2 SHA1 264314a061b936bf577dffe77752509ac730a871 SHA256 52b0d10e55a4f41d0ef0a6e397d640092ca2b0441b5fde7b2beae03594b01c61 MISC metadata.xml 2913 RMD160 ea5722272700444f2ffe366feb88dfd0a18636df SHA1 97d2d10cc63bde0a4bfc46b9b8c4474ee0337b45 SHA256 4929566b88860ef0c53c15ed84ce5d8bbd36692461631fd3d4814dc9bc0807cf -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (GNU/Linux) -iEYEARECAAYFAk2iDqMACgkQHB6c3gNBRYcBMwCfQPJPlueWJ2SyByc2perjBHEe -q6EAniUpEEhd0sjpCJeDWDeaqkWmk8yZ -=swln +iEYEARECAAYFAk3K33AACgkQvFcC4BYPU0q88QCfaHIsgaxO928t1tqc4/V6lT69 +1UEAoJCmbUA+WKrA2JzDrIu1Mgou7p3G +=QA+J -----END PGP SIGNATURE----- diff --git a/media-libs/xine-lib/files/xine-lib-1.1.19-ffmpeg.patch b/media-libs/xine-lib/files/xine-lib-1.1.19-ffmpeg.patch new file mode 100644 index 000000000000..5d05a9c0871f --- /dev/null +++ b/media-libs/xine-lib/files/xine-lib-1.1.19-ffmpeg.patch @@ -0,0 +1,103 @@ +Index: xine-lib-1.1.19/src/combined/ffmpeg/ff_audio_decoder.c +=================================================================== +--- xine-lib-1.1.19.orig/src/combined/ffmpeg/ff_audio_decoder.c ++++ xine-lib-1.1.19/src/combined/ffmpeg/ff_audio_decoder.c +@@ -285,12 +285,15 @@ static void ff_audio_decode_data (audio_ + + if (!this->output_open) { + if (!this->audio_bits || !this->audio_sample_rate || !this->audio_channels) { ++ AVPacket pkt; + decode_buffer_size = AVCODEC_MAX_AUDIO_FRAME_SIZE; +- avcodec_decode_audio2 (this->context, ++ av_init_packet( &pkt ); ++ pkt.data = &this->buf[0]; ++ pkt.size = this->size; ++ avcodec_decode_audio3 (this->context, + (int16_t *)this->decode_buffer, + &decode_buffer_size, +- &this->buf[0], +- this->size); ++ &pkt); + this->audio_bits = this->context->bits_per_sample; + this->audio_sample_rate = this->context->sample_rate; + this->audio_channels = this->context->channels; +@@ -310,12 +313,15 @@ static void ff_audio_decode_data (audio_ + + offset = 0; + while (this->size>0) { ++ AVPacket pkt; + decode_buffer_size = AVCODEC_MAX_AUDIO_FRAME_SIZE; +- bytes_consumed = avcodec_decode_audio2 (this->context, ++ av_init_packet( &pkt ); ++ pkt.data = &this->buf[offset]; ++ pkt.size = this->size; ++ bytes_consumed = avcodec_decode_audio3 (this->context, + (int16_t *)this->decode_buffer, + &decode_buffer_size, +- &this->buf[offset], +- this->size); ++ &pkt); + + if (bytes_consumed<0) { + xprintf (this->stream->xine, XINE_VERBOSITY_DEBUG, +Index: xine-lib-1.1.19/src/combined/ffmpeg/ff_video_decoder.c +=================================================================== +--- xine-lib-1.1.19.orig/src/combined/ffmpeg/ff_video_decoder.c ++++ xine-lib-1.1.19/src/combined/ffmpeg/ff_video_decoder.c +@@ -1026,6 +1026,7 @@ static void ff_handle_mpeg12_buffer (ff_ + + uint8_t *current; + int next_flush; ++ AVPacket pkt; + + got_picture = 0; + if (!flush) { +@@ -1055,12 +1056,14 @@ static void ff_handle_mpeg12_buffer (ff_ + } + + /* skip decoding b frames if too late */ +- this->context->hurry_up = (this->skipframes > 0); ++ this->context->skip_frame = (this->skipframes > 0? AVDISCARD_NONREF : AVDISCARD_DEFAULT); + ++ av_init_packet( &pkt ); ++ pkt.data = this->mpeg_parser->chunk_buffer; ++ pkt.size = this->mpeg_parser->buffer_size; + lprintf("avcodec_decode_video: size=%d\n", this->mpeg_parser->buffer_size); +- len = avcodec_decode_video (this->context, this->av_frame, +- &got_picture, this->mpeg_parser->chunk_buffer, +- this->mpeg_parser->buffer_size); ++ len = avcodec_decode_video2 (this->context, this->av_frame, ++ &got_picture, &pkt); + lprintf("avcodec_decode_video: decoded_size=%d, got_picture=%d\n", + len, got_picture); + len = current - buf->content - offset; +@@ -1112,7 +1115,7 @@ static void ff_handle_mpeg12_buffer (ff_ + + } else { + +- if (this->context->hurry_up) { ++ if (this->context->skip_frame > AVDISCARD_DEFAULT) { + /* skipped frame, output a bad frame */ + img = this->stream->video_out->get_frame (this->stream->video_out, + this->bih.biWidth, +@@ -1303,13 +1306,16 @@ static void ff_handle_buffer (ff_video_d + this->size = 0; + got_picture = 0; + } else { ++ AVPacket pkt; + /* skip decoding b frames if too late */ +- this->context->hurry_up = (this->skipframes > 0); ++ this->context->skip_frame = (this->skipframes > 0? AVDISCARD_NONREF : AVDISCARD_DEFAULT); + + lprintf("buffer size: %d\n", this->size); +- len = avcodec_decode_video (this->context, this->av_frame, +- &got_picture, &chunk_buf[offset], +- this->size); ++ av_init_packet( &pkt ); ++ pkt.data = &chunk_buf[offset]; ++ pkt.size = this->size; ++ len = avcodec_decode_video2 (this->context, this->av_frame, ++ &got_picture, &pkt); + + #ifdef AVCODEC_HAS_REORDERED_OPAQUE + /* reset consumed pts value */ diff --git a/media-libs/xine-lib/xine-lib-1.1.19.ebuild b/media-libs/xine-lib/xine-lib-1.1.19.ebuild index 0ebe73d2322c..ee287f791066 100644 --- a/media-libs/xine-lib/xine-lib-1.1.19.ebuild +++ b/media-libs/xine-lib/xine-lib-1.1.19.ebuild @@ -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/media-libs/xine-lib/xine-lib-1.1.19.ebuild,v 1.13 2011/04/10 20:10:06 scarabeus Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/xine-lib/xine-lib-1.1.19.ebuild,v 1.14 2011/05/11 19:11:38 aballier Exp $ EAPI=3 inherit eutils flag-o-matic toolchain-funcs multilib @@ -90,7 +90,8 @@ DEPEND="${RDEPEND} src_prepare() { epatch "${DISTDIR}"/${PN}-1.1.15-textrel-fix.patch \ - "${FILESDIR}"/${P}-xvmc.patch + "${FILESDIR}"/${P}-xvmc.patch \ + "${FILESDIR}"/${P}-ffmpeg.patch } src_configure() { |