lavf/segment: add EXT-X-MEDIA-SEQUENCE tag in M3U8 header
authorStefano Sabatini <stefasab@gmail.com>
Sat, 1 Sep 2012 15:59:20 +0000 (17:59 +0200)
committerStefano Sabatini <stefasab@gmail.com>
Tue, 4 Sep 2012 09:28:16 +0000 (11:28 +0200)
libavformat/segment.c

index fe4addd..e94d639 100644 (file)
@@ -54,6 +54,7 @@ typedef struct {
     AVFormatContext *avf;
     char *format;          ///< format to use for output segment files
     char *list;            ///< filename for the segment list file
+    int   list_count;      ///< list counter
     int   list_size;       ///< number of entries for the segment list file
     double list_max_segment_time; ///< max segment time in the current list
     ListType list_type;    ///< set the list type
@@ -154,6 +155,7 @@ static int segment_list_open(AVFormatContext *s)
     if (seg->list_type == LIST_TYPE_M3U8) {
         avio_printf(seg->list_pb, "#EXTM3U\n");
         avio_printf(seg->list_pb, "#EXT-X-VERSION:3\n");
+        avio_printf(seg->list_pb, "#EXT-X-MEDIA-SEQUENCE:%d\n", seg->list_count);
     }
 
     return ret;
@@ -168,6 +170,7 @@ static void segment_list_close(AVFormatContext *s)
                     (int)ceil(seg->list_max_segment_time));
         avio_printf(seg->list_pb, "#EXT-X-ENDLIST\n");
     }
+    seg->list_count++;
 
     avio_close(seg->list_pb);
 }