diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c index e1f96feda3..871afb571b 100644 --- a/libavformat/hlsenc.c +++ b/libavformat/hlsenc.c @@ -2947,7 +2947,7 @@ static int hls_init(AVFormatContext *s) av_log(hls, AV_LOG_DEBUG, "start_number evaluated to %"PRId64"\n", hls->start_sequence); } - hls->recording_time = hls->init_time ? hls->init_time : hls->time; + hls->recording_time = hls->init_time && hls->max_nb_segments > 0 ? hls->init_time : hls->time; if (hls->flags & HLS_SPLIT_BY_TIME && hls->flags & HLS_INDEPENDENT_SEGMENTS) { // Independent segments cannot be guaranteed when splitting by time