1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-14 02:45:43 +00:00

Retry deciding to get audio parameters several times on errors, this avoids

failing to init the decoder completely just because the first packet is broken.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29553 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
reimar 2009-08-26 19:05:36 +00:00
parent 0b8fc28ba7
commit d66f6b4538

View File

@ -36,6 +36,7 @@ static int preinit(sh_audio_t *sh)
static int init(sh_audio_t *sh_audio)
{
int tries = 0;
int x;
AVCodecContext *lavc_context;
AVCodec *lavc_codec;
@ -106,7 +107,9 @@ static int init(sh_audio_t *sh_audio)
}
// Decode at least 1 byte: (to get header filled)
do {
x=decode_audio(sh_audio,sh_audio->a_buffer,1,sh_audio->a_buffer_size);
} while (x <= 0 && tries++ < 5);
if(x>0) sh_audio->a_buffer_len=x;
sh_audio->channels=lavc_context->channels;