changeset 18129:7fde1f1cc648

Include buffered decoded audio in A-V sync calculations. Patch by Uoti Urpala, uoti<<dot>>urpala<<at>>pp1<<dot>>inet<<dot>>fi
author corey
date Mon, 17 Apr 2006 16:31:42 +0000
parents a1006db4fe43
children eadedbf1fc49
files mplayer.c
diffstat 1 files changed, 2 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/mplayer.c	Mon Apr 17 13:47:57 2006 +0000
+++ b/mplayer.c	Mon Apr 17 16:31:42 2006 +0000
@@ -3494,8 +3494,7 @@
   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 @@
 	  -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;