From 24e52f664337d6d27cea7a76a456a0df626fd45f Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 5 Nov 2014 21:50:20 +0100 Subject: demux_mkv: for subtitle preroll, consider all clusters This considered only index entries that were for the same track ID as the track used for seeking. This doesn't make much sense for preroll; it'll just possibly skip clusters, and select an earlier cluster. One possible negative side-effect is that the preroll might be too tight now, and miss subtitle packets more often. --- demux/demux_mkv.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'demux/demux_mkv.c') diff --git a/demux/demux_mkv.c b/demux/demux_mkv.c index 417ac1ba38..ee1693ee58 100644 --- a/demux/demux_mkv.c +++ b/demux/demux_mkv.c @@ -2716,11 +2716,9 @@ static struct mkv_index *seek_with_cues(struct demuxer *demuxer, int seek_id, if (flags & SEEK_SUBPREROLL) { uint64_t prev_target = 0; for (size_t i = 0; i < mkv_d->num_indexes; i++) { - if (seek_id < 0 || mkv_d->indexes[i].tnum == seek_id) { - uint64_t index_pos = mkv_d->indexes[i].filepos; - if (index_pos > prev_target && index_pos < seek_pos) - prev_target = index_pos; - } + uint64_t index_pos = mkv_d->indexes[i].filepos; + if (index_pos > prev_target && index_pos < seek_pos) + prev_target = index_pos; } if (mkv_d->index_has_durations) { // If there are no earlier subtitles overlapping with the -- cgit v1.2.3