From 6867264ec4c918011aadceee09cc86a0d5ee90c9 Mon Sep 17 00:00:00 2001 From: corey Date: Mon, 17 Apr 2006 16:31:42 +0000 Subject: [PATCH] Include buffered decoded audio in A-V sync calculations. Patch by Uoti Urpala, uoti<>urpala<>pp1<>inet<>fi git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18130 b3059339-0415-0410-9bf9-f77b7e298cf2 --- mplayer.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/mplayer.c b/mplayer.c index e7f4607d9b..554956faf7 100644 --- a/mplayer.c +++ b/mplayer.c @@ -3494,8 +3494,7 @@ while(sh_audio){ if(playsize>0){ sh_audio->a_out_buffer_len-=playsize; memmove(sh_audio->a_out_buffer,&sh_audio->a_out_buffer[playsize],sh_audio->a_out_buffer_len); - sh_audio->delay+=playback_speed*playsize/((float)((ao_data.bps && sh_audio->afilter) ? - ao_data.bps : sh_audio->o_bps)); + sh_audio->delay+=playback_speed*playsize/(float)ao_data.bps; } break; @@ -3798,7 +3797,7 @@ if(time_frame>0.001 && !(vo_flags&256)){ -sh_audio->a_in_buffer_len/(float)sh_audio->i_bps, a_pts+(ds_tell_pts(d_audio)-sh_audio->a_in_buffer_len)/(float)sh_audio->i_bps); #endif - a_pts+=(ds_tell_pts(d_audio)-sh_audio->a_in_buffer_len)/(float)sh_audio->i_bps; + a_pts+=(ds_tell_pts(d_audio)-sh_audio->a_in_buffer_len)/(float)sh_audio->i_bps - sh_audio->a_out_buffer_len*playback_speed/(float)ao_data.bps; } v_pts=sh_video ? sh_video->pts : d_video->pts;