Skip to content

Releases: grafov/m3u8

Support custom tags

09 Aug 13:14
036100c
Compare
Choose a tag to compare

Feature:

  1. Support custom tags (#138 #82 )

Thanks to @mjneil for contributing.

Major release, add support for more tags and attributes

25 Jul 02:28
920643e
Compare
Choose a tag to compare

This is a major release version after v0.10 since 2017, added lots of features and bugfix.

Features:

  1. Add reader support for EXT-OATCLS-SCTE35 and EXT-X-CUE-OUT (#81)
  2. Make comma optional in #EXTINF when strict mode is false (#85, #84)
  3. Encode Segment.Map attribute (#94)
  4. Add support for AVERAGE-BANDWIDTH, FRAME-RATE and HDCP-LEVEL attributes of EXT-X-STREAM-INF tag (#112, #132)
  5. Add support for EXT-X-DISCONTINUITY-SEQUENCE tag (#112)
  6. Add writer support of the SeqId attribute of MediaSegment (#124)
  7. Add support for EXT-X-INDEPENDENT-SEGMENTS tag (#128, #103)
  8. Add support for EXT-X-START tag (#131)

Bugfix:

  1. Omit URI for Key method NONE (#95, #68)
  2. Increase sequence number in Slide() method automatically (#113, #72)
  3. Decode got error while #EXT-X-PROGRAM-DATE-TIME exists in media playlist (#121, #120)
  4. Add new line after EXT-X-DISCONTINUITY-SEQUENCE (#129)

Thanks to @bradleyfalzon @andyborn @0xApe @soldiermoth @mlafeldt @eric @soldiermoth @mihail812 @agparadiso @leikao for contributing.

Improved date/time parsing and closed captions

19 Mar 22:47
Compare
Choose a tag to compare

The release introduces two features:

  • Add closed captions to writer. Refs #79, #80 Thanks to @mbowBC for this contribution.

  • Customizable TimeParse() function allows broad support for time formats beside RFC3339. It allows parse playlists for devices that not strictly conform dates and times standards. By default it uses FullTimeParse() that implemented parsing that follows date representations from ISO/IEC 8601:2004.
    Refs #78 Thanks to @md2k for this contribution.

  • Comments slightly polished.

License changed to BSD

13 Nov 21:31
Compare
Choose a tag to compare

This release has no new features or bugfixes. It just moved license of the project from GNU GPL to BSD. See the new LICENSE in the root of the repo. Previous release v0.8 and the versions below available under GNU GPL v.3.

More explanations in the issue #71 and in the release notes of the previous release. If you have complains please create an issue or drop me a mail.

The bugfixes and upcoming license changing

12 Nov 22:53
Compare
Choose a tag to compare

There are a lot of bugfixes and optimizations.

This is the last release under GNU GPL license. As decided by the maintainers of the project the code from the next release will be covered by BSD 3-clause license (#71). It will allow usage of m3u8 package in any kind of projects include the projects under proprietary licenses. It is no problem for GPL projects as conditions of GPL license allows include the code under BSD-licenses.

So the next release v0.9 will be with the same code but include the new license. The code of the version 0.8 and below can be used under GNU GPL.

There are a lot of contributions was made since the project started. As initial author of the project I very glad that this piece of the code was useful and attracted other people for participating. I am very grateful for all the participants for their contribution to the project! So if the conditions of BSD license totally inappropriate for a contributor and he don't want to see his name among authors of the code under non-GPL license then he can create the issue with a complain or just drop me a mail. Then I will remove the patches from this contributor and replace them with a new code under my authorship. I not sure how it is correct from the view of law but m3u8 is amateur project for me so I don't want spend many time for license questions. It is the code only matters.

A lot of fixes + SCTE tag support

24 Apr 20:55
Compare
Choose a tag to compare

Features:

#42, #41, #40 SCTE35 tag support
#39, #37 Starting serNo from 0 not from 1.

Bugfixes:

#43 Fix #36 Media Playlist Set* methods modifying wrong segment
#38 Fixed bug of writing vod playlist

Apply keyformat and keyformatversions per segment

09 Jan 17:19
Compare
Choose a tag to compare

Small fix by @bradleyfalzon:

  • Use segment Keyformat and Keyformatversions on MediaPlaylist.Encode() #32

No API changed.

Non-standard tag Name

17 Oct 23:09
Compare
Choose a tag to compare

Minor feature added:

  • Support Name attribute in #EXT-X-STREAM-INF tag #30

Bugfix:

  • Append Args if playlist already has query params #31

No changes in API.

Keyformat version encoding

04 Oct 08:24
Compare
Choose a tag to compare

Minor features added:

  • Added encoding for KEYFORMATVERSIONS for AES encrypted playlists (refs #28)
  • Added copyright for library authors referenced to AUTHORS file.

No API changes.

One more fix

22 Aug 11:30
Compare
Choose a tag to compare
  • Fixed unnecessary playlist version change in SetDefaultKey (pull request #24 related to #23)

No API changes.