This library has the goal of parse a HLS m3u8 into a doubly linked list and, for some tags, we can access the tag struct from the node.
This data structure allows us to access the manifest sorted and apply operations (modify, add and remove) to them. So we can access the HLS data (decode), manipulate it, and get it back in string format (encode).
- Add discontinuity tag for
SSAI segments manipulation
- Change discontinuity sequence tag count
- Remove DRM for SSAI segments manipulation by adding the tag
#EXT-X-KEY:METHOD=NONE
- Add
SGAI
at DateRange tags - Remove packager comment lines
To simplify the way we access the tags attributes, some nodes can be accessed via custom structs:
- Media Manifest (StreamInf)
- Segment
- DateRange
go get github.com/globocom/go-m3u8