mirror of https://git.ffmpeg.org/ffmpeg.git
hlsenc: make EXT-X-MEDIA-SEQUENCE always increase
This commit is contained in:
parent
9b1370aced
commit
27a15e0af6
|
@ -39,6 +39,7 @@ typedef struct ListEntry {
|
||||||
typedef struct HLSContext {
|
typedef struct HLSContext {
|
||||||
const AVClass *class; // Class for private options.
|
const AVClass *class; // Class for private options.
|
||||||
int number;
|
int number;
|
||||||
|
int64_t sequence;
|
||||||
AVOutputFormat *oformat;
|
AVOutputFormat *oformat;
|
||||||
AVFormatContext *avf;
|
AVFormatContext *avf;
|
||||||
float time; // Set by a private option.
|
float time; // Set by a private option.
|
||||||
|
@ -105,6 +106,8 @@ static int append_entry(HLSContext *hls, uint64_t duration)
|
||||||
} else
|
} else
|
||||||
hls->nb_entries++;
|
hls->nb_entries++;
|
||||||
|
|
||||||
|
hls->sequence++;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -138,8 +141,8 @@ static int hls_window(AVFormatContext *s, int last)
|
||||||
avio_printf(hls->pb, "#EXTM3U\n");
|
avio_printf(hls->pb, "#EXTM3U\n");
|
||||||
avio_printf(hls->pb, "#EXT-X-VERSION:3\n");
|
avio_printf(hls->pb, "#EXT-X-VERSION:3\n");
|
||||||
avio_printf(hls->pb, "#EXT-X-TARGETDURATION:%d\n", target_duration);
|
avio_printf(hls->pb, "#EXT-X-TARGETDURATION:%d\n", target_duration);
|
||||||
avio_printf(hls->pb, "#EXT-X-MEDIA-SEQUENCE:%d\n",
|
avio_printf(hls->pb, "#EXT-X-MEDIA-SEQUENCE:%"PRId64"\n",
|
||||||
FFMAX(0, hls->number - hls->size));
|
FFMAX(0, hls->sequence - hls->size));
|
||||||
|
|
||||||
for (en = hls->list; en; en = en->next) {
|
for (en = hls->list; en; en = en->next) {
|
||||||
avio_printf(hls->pb, "#EXTINF:%d,\n", en->duration);
|
avio_printf(hls->pb, "#EXTINF:%d,\n", en->duration);
|
||||||
|
|
Loading…
Reference in New Issue