[FFmpeg-cvslog] lavf/dashenc: Delete HLS manifests on trailer writing if remove_at_exit is set.

Andrey Semashev git at videolan.org
Sun Dec 2 15:38:13 EET 2018


ffmpeg | branch: master | Andrey Semashev <andrey.semashev at gmail.com> | Wed Nov 28 14:36:09 2018 +0300| [84c17449ce221c42475403a133e91c7677034c98] | committer: Karthick J

lavf/dashenc: Delete HLS manifests on trailer writing if remove_at_exit is set.

This fixes HLS manifests being left behind if remove_at_exit is set.

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

 libavformat/dashenc.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c
index a7d8c4e237..af3f0ee167 100644
--- a/libavformat/dashenc.c
+++ b/libavformat/dashenc.c
@@ -1619,6 +1619,18 @@ static int dash_write_trailer(AVFormatContext *s)
             dashenc_delete_file(s, filename);
         }
         dashenc_delete_file(s, s->url);
+
+        if (c->hls_playlist && c->master_playlist_created) {
+            for (i = 0; i < s->nb_streams; i++) {
+                OutputStream *os = &c->streams[i];
+                if (os->segment_type == SEGMENT_TYPE_MP4) {
+                    get_hls_playlist_name(filename, sizeof(filename), c->dirname, i);
+                    dashenc_delete_file(s, filename);
+                }
+            }
+            snprintf(filename, sizeof(filename), "%smaster.m3u8", c->dirname);
+            dashenc_delete_file(s, filename);
+        }
     }
 
     return 0;



More information about the ffmpeg-cvslog mailing list