[FFmpeg-cvslog] avformat/hlsenc: fix missing first segment bug in fmp4 mode

Steven Liu git at videolan.org
Sun Oct 29 06:33:25 EET 2017


ffmpeg | branch: master | Steven Liu <lq at chinaffmpeg.org> | Sun Oct 29 12:31:49 2017 +0800| [c3e279e75227946046ccb447d355b557118a616c] | committer: Steven Liu

avformat/hlsenc: fix missing first segment bug in fmp4 mode

fix ticket id: #6776
fix code logic error, need not check first segment.

Signed-off-by: Steven Liu <lq at chinaffmpeg.org>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c3e279e75227946046ccb447d355b557118a616c
---

 libavformat/hlsenc.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c
index 55ce800c5a..530fc11305 100644
--- a/libavformat/hlsenc.c
+++ b/libavformat/hlsenc.c
@@ -1080,7 +1080,7 @@ static int hls_window(AVFormatContext *s, int last)
                 avio_printf(out, ",BYTERANGE=\"%"PRId64"@%"PRId64"\"", en->size, en->pos);
             }
             avio_printf(out, "\n");
-        } else {
+        }
             if (hls->flags & HLS_ROUND_DURATIONS)
                 avio_printf(out, "#EXTINF:%ld,\n",  lrint(en->duration));
             else
@@ -1088,7 +1088,7 @@ static int hls_window(AVFormatContext *s, int last)
             if (byterange_mode)
                 avio_printf(out, "#EXT-X-BYTERANGE:%"PRId64"@%"PRId64"\n",
                             en->size, en->pos);
-        }
+
         if (hls->flags & HLS_PROGRAM_DATE_TIME) {
             time_t tt, wrongsecs;
             int milli;
@@ -1113,11 +1113,9 @@ static int hls_window(AVFormatContext *s, int last)
             avio_printf(out, "#EXT-X-PROGRAM-DATE-TIME:%s.%03d%s\n", buf0, milli, buf1);
             prog_date_time += en->duration;
         }
-        if (!((hls->segment_type == SEGMENT_TYPE_FMP4) && (en == hls->segments))) {
             if (hls->baseurl)
                 avio_printf(out, "%s", hls->baseurl);
             avio_printf(out, "%s\n", en->filename);
-        }
     }
 
     if (last && (hls->flags & HLS_OMIT_ENDLIST)==0)



More information about the ffmpeg-cvslog mailing list