summaryrefslogtreecommitdiffstats
path: root/libmpcodecs
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-08-01 23:36:40 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-08-01 23:36:40 +0000
commitc16275939d6d006dc6d1d7b11e79ae38ce2bda3f (patch)
tree37f73b5e9842dfe9877f017b4ad3b24e055f7258 /libmpcodecs
parentaf9942aa5a35896bcd1db0527de5ca306203213c (diff)
downloadmpv-c16275939d6d006dc6d1d7b11e79ae38ce2bda3f.tar.bz2
mpv-c16275939d6d006dc6d1d7b11e79ae38ce2bda3f.tar.xz
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. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23994 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs')
-rw-r--r--libmpcodecs/ad_ffmpeg.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libmpcodecs/ad_ffmpeg.c b/libmpcodecs/ad_ffmpeg.c
index f5c289c301..fa88061f5d 100644
--- a/libmpcodecs/ad_ffmpeg.c
+++ b/libmpcodecs/ad_ffmpeg.c
@@ -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;