grafov / m3u8

Parser and generator of M3U8-playlists for Apple HLS. Library for Go language. :cinema:
http://tools.ietf.org/html/draft-pantos-http-live-streaming
BSD 3-Clause "New" or "Revised" License
1.23k stars 315 forks source link

EXT-X-KEY tags apply to all segments that come after it #139

Open tmm1 opened 5 years ago

tmm1 commented 5 years ago

This fixes an issue where MediaSegment.Key is not set correctly

coveralls commented 5 years ago

Coverage Status

Coverage decreased (-0.02%) to 74.127% when pulling cb4f5a669a5642b3f769a4efb2a19ff52bb81945 on fancybits:segment-keys into 920643e7fcabbe6078c26b65e6b38ae9306f5b33 on grafov:master.

coveralls commented 5 years ago

Coverage Status

Coverage decreased (-0.02%) to 74.127% when pulling cb4f5a669a5642b3f769a4efb2a19ff52bb81945 on fancybits:segment-keys into 920643e7fcabbe6078c26b65e6b38ae9306f5b33 on grafov:master.

coveralls commented 5 years ago

Coverage Status

Coverage decreased (-0.02%) to 74.127% when pulling cb4f5a669a5642b3f769a4efb2a19ff52bb81945 on fancybits:segment-keys into 920643e7fcabbe6078c26b65e6b38ae9306f5b33 on grafov:master.

tmm1 commented 5 years ago

Ping @leikao

mjneil commented 5 years ago

This change would cause decoding and re-encoding some playlists to have KEY tags on every segment when they previously did not. For a long playlist this could add a lot of unnecessary bytes to the m3u8.

unki2aut commented 3 years ago

@tmm1 actually interpreting the key tags (application to a segment) is the job of the code using this library (e.g. a streaming player). The playlist representation should be as small as possible, so also what @mjneil writes.