x264 and ffmpeg updates coming to rawhide

Dominik 'Rathann' Mierzejewski dominik at greysector.net
Wed Dec 17 22:55:44 CET 2008


On Thursday, 04 December 2008 at 21:31, Dominik 'Rathann' Mierzejewski wrote:
> On Thursday, 04 December 2008 at 21:15, Dominik 'Rathann' Mierzejewski wrote:
> > On Thursday, 04 December 2008 at 14:17, Dominik 'Rathann' Mierzejewski wrote:
> > > On Wednesday, 03 December 2008 at 19:06, Dominik 'Rathann' Mierzejewski wrote:
> > > > In the long-standing tradition of breaking stuff right after a new release,
> > > > I'm going to update x264 and ffmpeg in the devel branch.
> > > > 
> > > > x264 brings ABI and API changes (albeit minor). I haven't checked ffmpeg
> > > > yet, but there's certainly an ABI version bump in libavcodec and probably
> > > > some API changes as well.
> > > > 
> > > > Right now x264 is blocked on some ppc compilation issue which I'm currently
> > > > trying to fix with the help of one x264 developer. I'll keep you posted.
> > > 
> > > OK, x264 build succeeded. Could someone test it on ppc/ppc64?
> > 
> > ffmpeg build coming soon, too. It brings libavcodec ABI version bump and some
> > API changes.
> 
> Affected packages:
> 
> xine-lib-extras-freeworld

Builds against current ffmpeg with Rex's patches. I'm attaching a cleaned-up
version of Rex's patch that is a bit smaller because it avoids changing whitespace.

Regards,
R.

-- 
Fedora http://fedoraproject.org/wiki/User:Rathann
RPMFusion http://rpmfusion.org | MPlayer http://mplayerhq.hu
"Faith manages."
        -- Delenn to Lennier in Babylon 5:"Confessions and Lamentations"
-------------- next part --------------
diff -up xine-lib-1.1.15/src/combined/ffmpeg/ff_audio_decoder.c.ffmpeg_api xine-lib-1.1.15/src/combined/ffmpeg/ff_audio_decoder.c
--- xine-lib-1.1.15/src/combined/ffmpeg/ff_audio_decoder.c.ffmpeg_api	2008-07-16 01:13:03.000000000 +0200
+++ xine-lib-1.1.15/src/combined/ffmpeg/ff_audio_decoder.c	2008-12-17 22:54:15.000000000 +0100
@@ -269,7 +269,11 @@ static void ff_audio_decode_data (audio_
        * bits/sample for some codecs (e.g. MS ADPCM) */
       this->audio_bits = 16;  
   
+#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
       this->context->bits_per_sample = this->audio_bits;
+#else
+     this->context->bits_per_coded_sample = this->audio_bits;
+#endif
       this->context->sample_rate = this->audio_sample_rate;
       this->context->channels    = this->audio_channels;
       this->context->codec_id    = this->codec->id;
@@ -322,12 +326,21 @@ static void ff_audio_decode_data (audio_
 
     if (!this->output_open) {
       if (!this->audio_bits || !this->audio_sample_rate || !this->audio_channels) {
+#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
         avcodec_decode_audio (this->context,
                               (int16_t *)this->decode_buffer,
                               &decode_buffer_size,
                               &this->buf[0],
                               this->size);
 	this->audio_bits = this->context->bits_per_sample;
+#else
+        avcodec_decode_audio2 (this->context,
+                              (int16_t *)this->decode_buffer,
+                              &decode_buffer_size,
+                              &this->buf[0],
+                              this->size);
+        this->audio_bits = this->context->bits_per_coded_sample;
+#endif
 	this->audio_sample_rate = this->context->sample_rate;
 	this->audio_channels = this->context->channels;
 	if (!this->audio_bits || !this->audio_sample_rate || !this->audio_channels)
diff -up xine-lib-1.1.15/src/combined/ffmpeg/ff_video_decoder.c.ffmpeg_api xine-lib-1.1.15/src/combined/ffmpeg/ff_video_decoder.c
--- xine-lib-1.1.15/src/combined/ffmpeg/ff_video_decoder.c.ffmpeg_api	2008-07-16 23:01:56.000000000 +0200
+++ xine-lib-1.1.15/src/combined/ffmpeg/ff_video_decoder.c	2008-12-17 22:54:56.000000000 +0100
@@ -939,7 +939,11 @@ static void ff_handle_header_buffer (ff_
               this->context->extradata_size);
       }
       
+#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
       this->context->bits_per_sample = this->bih.biBitCount;
+#else
+      this->context->bits_per_coded_sample = this->bih.biBitCount; 
+#endif
             
     } else {
     


More information about the rpmfusion-developers mailing list