summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_mkv.c
diff options
context:
space:
mode:
authoreugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-09-12 21:45:06 +0000
committereugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-09-12 21:45:06 +0000
commitfa6bc3aa4fcb76d74dff93f7882af4bc534d59d2 (patch)
tree5b60f09bb8ba1175cb52225c7c777be748089ab7 /libmpdemux/demux_mkv.c
parentee0ac67094f740c5db1eb714f0aee299921963fd (diff)
downloadmpv-fa6bc3aa4fcb76d74dff93f7882af4bc534d59d2.tar.bz2
mpv-fa6bc3aa4fcb76d74dff93f7882af4bc534d59d2.tar.xz
Fix seeking in Matroska files with non-default TimecodeScale value.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19817 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_mkv.c')
-rw-r--r--libmpdemux/demux_mkv.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libmpdemux/demux_mkv.c b/libmpdemux/demux_mkv.c
index 1519995cec..7b402152f0 100644
--- a/libmpdemux/demux_mkv.c
+++ b/libmpdemux/demux_mkv.c
@@ -3660,7 +3660,8 @@ demux_mkv_seek (demuxer_t *demuxer, float rel_seek_secs, float audio_delay, int
for (i=0; i < mkv_d->num_indexes; i++)
if (mkv_d->indexes[i].tnum == demuxer->video->id)
{
- diff = target_timecode + mkv_d->first_tc - (int64_t) mkv_d->indexes[i].timecode;
+ diff = target_timecode + mkv_d->first_tc -
+ (int64_t) mkv_d->indexes[i].timecode * mkv_d->tc_scale / 1000000.0;
if ((flags & 1 || target_timecode <= mkv_d->last_pts*1000)
&& diff >= 0 && diff < min_diff)