@@ -1288,8 +1288,10 @@ static int parse_playlist(AVFormatContext *s, const char *url, VariantStream *vs
new_start_pos = avio_tell(vs->avf->pb);
vs->size = new_start_pos - vs->start_pos;
ret = hls_append_segment(s, hls, vs, vs->duration, vs->start_pos, vs->size);
- vs->last_segment->discont_program_date_time = discont_program_date_time;
- discont_program_date_time += vs->duration;
+ if (hls->flags & HLS_PROGRAM_DATE_TIME) {
+ vs->last_segment->discont_program_date_time = discont_program_date_time;
+ discont_program_date_time += vs->duration;
+ }
if (ret < 0)
goto fail;
vs->start_pos = new_start_pos;
fix ticket: 9238 There should check option flags with HLS_PROGRAM_DATE_TIME before set discont_program_date_time. Signed-off-by: Steven Liu <lq@chinaffmpeg.org> --- libavformat/hlsenc.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)