summaryrefslogtreecommitdiffstats
path: root/libmpdemux
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-10-05 21:28:55 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-10-05 21:28:55 +0000
commit11e7ea9df4f36759363618bab4d1b00d8ae688b7 (patch)
treed67e4d81438fb78a8c29e5696b4509703286ddd2 /libmpdemux
parent9b128fa2e4e07ed9496cda63abced1dd4b6da218 (diff)
downloadmpv-11e7ea9df4f36759363618bab4d1b00d8ae688b7.tar.bz2
mpv-11e7ea9df4f36759363618bab4d1b00d8ae688b7.tar.xz
Fix demux_demuxers seeking if the video demuxer does not set
demuxer->video->pts (e.g. lavf). Previous code would start audio from beginning. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20077 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux')
-rw-r--r--libmpdemux/demux_demuxers.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libmpdemux/demux_demuxers.c b/libmpdemux/demux_demuxers.c
index d676e82ab2..a71d80892b 100644
--- a/libmpdemux/demux_demuxers.c
+++ b/libmpdemux/demux_demuxers.c
@@ -71,6 +71,11 @@ static void demux_demuxers_seek(demuxer_t *demuxer,float rel_seek_secs,float aud
demux_seek(priv->vd,rel_seek_secs,audio_delay,flags);
// Get the new pos
pos = demuxer->video->pts;
+ if (!pos) {
+ demux_fill_buffer(priv->vd, demuxer->video);
+ if (demuxer->video->first)
+ pos = demuxer->video->first->pts;
+ }
if(priv->ad != priv->vd) {
sh_audio_t* sh = (sh_audio_t*)demuxer->audio->sh;