mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
choose next sample by sample position
when streams' next dts difference is below AV_TIME_BASE, to reduce seeking, needed for slow underlying protocols (http), a slightly modified patch from elupus, elupus at ecce dot se Originally committed as revision 11226 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
88808c60af
commit
2aaf95a210
@ -1511,7 +1511,9 @@ static int mov_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
int64_t dts = av_rescale(current_sample->timestamp * (int64_t)msc->time_rate, AV_TIME_BASE, msc->time_scale);
|
||||
|
||||
dprintf(s, "stream %d, sample %d, dts %"PRId64"\n", i, msc->current_sample, dts);
|
||||
if (dts < best_dts) {
|
||||
if (!sample ||
|
||||
((FFABS(best_dts - dts) <= AV_TIME_BASE && current_sample->pos < sample->pos) ||
|
||||
(FFABS(best_dts - dts) > AV_TIME_BASE && dts < best_dts))) {
|
||||
sample = current_sample;
|
||||
best_dts = dts;
|
||||
sc = msc;
|
||||
|
Loading…
Reference in New Issue
Block a user