From e512aef61b66802be8c849599f02510a3f00d64d Mon Sep 17 00:00:00 2001 From: henry Date: Sat, 31 Dec 2005 07:37:37 +0000 Subject: check the intermediate audio buffer otherwise, data can get stuck between the demuxer and filter layer causing a premature end of audio. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17275 b3059339-0415-0410-9bf9-f77b7e298cf2 --- mplayer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mplayer.c') diff --git a/mplayer.c b/mplayer.c index 2cbeab5865..3e8002f8ca 100644 --- a/mplayer.c +++ b/mplayer.c @@ -2599,7 +2599,7 @@ while(sh_audio){ current_module="decode_audio"; // Enter AUDIO decoder module t=GetTimer(); while(sh_audio->a_out_buffer_leneof || sh_audio->a_in_buffer_len > 0)){ + (!d_audio->eof || sh_audio->a_in_buffer_len > 0 || sh_audio->a_buffer_len > 0)){ int ret=decode_audio(sh_audio,&sh_audio->a_out_buffer[sh_audio->a_out_buffer_len], playsize-sh_audio->a_out_buffer_len,sh_audio->a_out_buffer_size-sh_audio->a_out_buffer_len); if(ret<=0) { // EOF? -- cgit v1.2.3