[MPlayer-cvslog] r23994 - trunk/libmpcodecs/ad_ffmpeg.c

reimar subversion at mplayerhq.hu
Thu Aug 2 01:36:40 CEST 2007


Author: reimar
Date: Thu Aug  2 01:36:40 2007
New Revision: 23994

Log:
Set lavc_context->channels before opening the codec, it is sufficient to
select the desired number of codecs for ffdca and does not break other codecs
like ffvorbis that do not (re)set the channel number during decode.


Modified:
   trunk/libmpcodecs/ad_ffmpeg.c

Modified: trunk/libmpcodecs/ad_ffmpeg.c
==============================================================================
--- trunk/libmpcodecs/ad_ffmpeg.c	(original)
+++ trunk/libmpcodecs/ad_ffmpeg.c	Thu Aug  2 01:36:40 2007
@@ -86,6 +86,8 @@ static int init(sh_audio_t *sh_audio)
                lavc_context->extradata_size);	
     }
 
+    // Set desired number of channels
+    lavc_context->channels = audio_output_channels;
     /* open it */
     if (avcodec_open(lavc_context, lavc_codec) < 0) {
         mp_msg(MSGT_DECAUDIO,MSGL_ERR, MSGTR_CantOpenCodec);
@@ -105,8 +107,6 @@ static int init(sh_audio_t *sh_audio)
        sh_audio->ds->ss_mul = 2*sh_audio->wf->nChannels; // 1 byte*ch/packet
    }
 
-   // Set desired number of channels
-   lavc_context->channels = audio_output_channels;
    // Decode at least 1 byte:  (to get header filled)
    x=decode_audio(sh_audio,sh_audio->a_buffer,1,sh_audio->a_buffer_size);
    if(x>0) sh_audio->a_buffer_len=x;



More information about the MPlayer-cvslog mailing list