# HG changeset patch # User reimar # Date 1162758569 0 # Node ID e3f4ad403fff5e783c4a5a097c45a47fd23014e4 # Parent de8bbed6c79e198dc78c047ed2c5eafe7f018363 Fix index-based seeking in audio-only files, fixes bug #621 diff -r de8bbed6c79e -r e3f4ad403fff libmpdemux/demux_mkv.c --- a/libmpdemux/demux_mkv.c Sun Nov 05 20:18:37 2006 +0000 +++ b/libmpdemux/demux_mkv.c Sun Nov 05 20:29:29 2006 +0000 @@ -3725,11 +3725,12 @@ else { mkv_index_t *index = NULL; + int seek_id = (demuxer->video->id < 0) ? demuxer->audio->id : demuxer->video->id; /* let's find the entry in the indexes with the smallest */ /* difference to the wanted timecode. */ for (i=0; i < mkv_d->num_indexes; i++) - if (mkv_d->indexes[i].tnum == demuxer->video->id) + if (mkv_d->indexes[i].tnum == seek_id) { diff = target_timecode + mkv_d->first_tc - (int64_t) mkv_d->indexes[i].timecode * mkv_d->tc_scale / 1000000.0;