m3u8 parser for rust
Find a file
Sanchayan Maity 124d174094 playlist: Write EXT-X-MAP before everything else
In the presence of EXT-X-MAP tag, let it be written to the playlist
first. Otherwise we end up with a playlist with an output like below
where the X-MAP tag appears after the BYTERANGE.

#EXTM3U
#EXT-X-VERSION:6
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-TARGETDURATION:5
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-I-FRAMES-ONLY
#EXT-X-BYTERANGE:2710@28
#EXT-X-MAP:URI="init00000.mp4"
2025-08-04 11:20:45 +03:00
.github/workflows Check cargo fmt on CI 2021-10-19 19:48:26 +02:00
examples Re-export all types from the crate root and remove the playlist sub-module 2021-11-18 15:00:01 +02:00
sample-playlists EXTINF tags need to be in floating-point format to work with AWS Elemental MediaConvert 2024-02-14 16:29:47 +02:00
src playlist: Write EXT-X-MAP before everything else 2025-08-04 11:20:45 +03:00
tests EXTINF tags need to be in floating-point format to work with AWS Elemental MediaConvert 2024-02-14 16:29:47 +02:00
.gitignore Version 1.0.0 2016-06-03 20:56:45 +02:00
Cargo.toml Update version to 6.0.0 2024-01-26 18:56:34 +01:00
LICENSE LICENSE 2016-06-03 21:25:34 +02:00
masterplaylist.m3u8 Version 1.0.0 2016-06-03 20:56:45 +02:00
mediaplaylist.m3u8 Version 1.0.0 2016-06-03 20:56:45 +02:00
playlist.m3u8 Version 1.0.0 2016-06-03 20:56:45 +02:00
README.md Update readme 2022-04-09 12:59:07 +02:00

m3u8-rs

crates.io API

A Rust library for parsing m3u8 playlists (HTTP Live Streaming) link. Uses the nom library for all of the parsing.

Examples

Examples can be found in the examples folder.