ffmpeg_demux: fix readrate to respect initial burst

Fixes #21510
This commit is contained in:
Gyan Doshi
2026-01-20 17:32:00 +05:30
parent 10db62d205
commit fe0813d6e2

View File

@@ -525,6 +525,9 @@ static void readrate_sleep(Demuxer *d)
pts = av_rescale(ds->dts, 1000000, AV_TIME_BASE);
now = av_gettime_relative();
wc_elapsed = now - d->wallclock_start;
if (pts <= stream_ts_offset + initial_burst) continue;
max_pts = stream_ts_offset + initial_burst + (int64_t)(wc_elapsed * d->readrate);
lag = FFMAX(max_pts - pts, 0);
if ( (!ds->lag && lag > 0.3 * AV_TIME_BASE) || ( lag > ds->lag + 0.3 * AV_TIME_BASE) ) {