From f0b35933491b3aab9e1808a977fca015efaaa1dd Mon Sep 17 00:00:00 2001 From: mvji <33432858+mvji@users.noreply.github.com> Date: Thu, 14 Jul 2022 15:08:35 +0200 Subject: [PATCH] deps/media-playback: Fix invalid seek at reset When AVFormatContext->startime is set to AV_NO_PTS mp_media_reset try to seek to INT64_MIN use 0 instead. Fix loop with aac file --- deps/media-playback/media-playback/media.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/deps/media-playback/media-playback/media.c b/deps/media-playback/media-playback/media.c index 16a047265..bad3bc21d 100644 --- a/deps/media-playback/media-playback/media.c +++ b/deps/media-playback/media-playback/media.c @@ -558,12 +558,15 @@ static bool mp_media_reset(mp_media_t *m) int64_t next_ts = mp_media_get_base_pts(m); int64_t offset = next_ts - m->next_pts_ns; + int64_t start_time = m->fmt->start_time; + if (start_time == AV_NOPTS_VALUE) + start_time = 0; m->eof = false; m->base_ts += next_ts; m->seek_next_ts = false; - seek_to(m, m->fmt->start_time); + seek_to(m, start_time); pthread_mutex_lock(&m->mutex); stopping = m->stopping;