streaming

Media streaming and broadcast systems in Go
Log | Files | Refs | README | LICENSE

commit b279aa15601e646f78eded27b6dd92982381a6d4
parent 91f1014862063aaa40dc0f67c163374d01ef7fcc
Author: Oliver Lowe <o@olowe.co>
Date:   Tue, 28 May 2024 10:46:39 +1000

m3u8: write EXT-X-MEDIA-SEQUENCE on playlist write

Diffstat:
Mm3u8/parse.go | 1+
Mm3u8/write.go | 1+
2 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/m3u8/parse.go b/m3u8/parse.go @@ -16,6 +16,7 @@ const ( tagRendition = "#EXT-X-MEDIA" tagPlaylistType = "#EXT-X-PLAYLIST-TYPE" // RFC 8216, 4.4.3.5 tagTargetDuration = "#EXT-X-TARGETDURATION" // RFC 8216, 4.4.3.1 + tagMediaSequence = "#EXT-X-MEDIA-SEQUENCE" // RFC 8216, 4.3.3.2 tagEndList = "#EXT-X-ENDLIST" // RFC 8216, 4.4.3.4 tagIndependentSegments = "#EXT-X-INDEPENDENT-SEGMENTS" // RFC 8216, 4.3.5.1 ) diff --git a/m3u8/write.go b/m3u8/write.go @@ -24,6 +24,7 @@ func Encode(w io.Writer, p *Playlist) error { if p.TargetDuration > 0 { fmt.Fprintf(w, "%s:%d\n", tagTargetDuration, p.TargetDuration/time.Second) } + fmt.Fprintf(w, "%s:%d\n", tagMediaSequence, p.Sequence) for _, seg := range p.Segments { if seg.Discontinuity { fmt.Fprintln(w, tagDiscontinuity)