Generate and parse m3u8 playlists for HTTP Live Streaming (HLS) in Crystal.
MIT License
Generate and parse m3u8 playlists for HTTP Live Streaming (HLS).
Add this to your application's shard.yml
:
dependencies:
m3u8:
github: akiicat/m3u8
require "m3u8"
module App
include M3U8
end
playlist = Playlist.new
playlist.items << SegmentItem.new(duration: 10.991, segment: "test_01.ts")
playlist.to_s
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TARGETDURATION:10
#EXTINF:10.991,
test_01.ts
#EXT-X-ENDLIST
file = File.read "spec/playlists/master.m3u8"
playlist = Playlist.parse(file)
playlist.master? # => true