diff libmpdemux/demuxer.c @ 30396:5fe2615e5db7

Remove ds_fill_buffer calls from demux_resync, they cause issues at least with the ASF demuxer (seek seems to end up right after the keyframe?) and seem to have no purpose anyway.
author reimar
date Tue, 26 Jan 2010 21:08:01 +0000
parents b2c5e608155a
children 98dc6ae7ede2
line wrap: on
line diff
--- a/libmpdemux/demuxer.c	Tue Jan 26 18:19:57 2010 +0000
+++ b/libmpdemux/demuxer.c	Tue Jan 26 21:08:01 2010 +0000
@@ -1201,17 +1201,20 @@
     return res;
 }
 
+/**
+ * Do necessary reinitialization after e.g. a seek.
+ * Do _not_ call ds_fill_buffer between the seek and this, it breaks at least
+ * seeking with ASF demuxer.
+ */
 static void demux_resync(demuxer_t *demuxer)
 {
     sh_video_t *sh_video = demuxer->video->sh;
     sh_audio_t *sh_audio = demuxer->audio->sh;
     demux_control(demuxer, DEMUXER_CTRL_RESYNC, NULL);
     if (sh_video) {
-        ds_fill_buffer(demuxer->video);
         resync_video_stream(sh_video);
     }
     if (sh_audio) {
-        ds_fill_buffer(demuxer->audio);
         resync_audio_stream(sh_audio);
     }
 }