@slax/hls-parse — A robust M3U8 / HLS playlist parser.
Parses M3U8 playlists according to RFC 8216 (HTTP Live Streaming).
import { parse } from '@skax/hls-parse';const playlist = parser(`#EXTM3U#EXT-X-TARGETDURATION:10#EXTINF:9.009,segment.ts#EXT-X-ENDLIST`);if (playlist.isMasterPlaylist) { console.log('Master:', playlist.variants.length);} else { console.log('Media:', playlist.segments.length);} Copy
import { parse } from '@skax/hls-parse';const playlist = parser(`#EXTM3U#EXT-X-TARGETDURATION:10#EXTINF:9.009,segment.ts#EXT-X-ENDLIST`);if (playlist.isMasterPlaylist) { console.log('Master:', playlist.variants.length);} else { console.log('Media:', playlist.segments.length);}
const playlist = parser(m3u8, { uri: 'https://example.com/hls/main.m3u8'});// All relative URIs are resolved to absolute Copy
const playlist = parser(m3u8, { uri: 'https://example.com/hls/main.m3u8'});// All relative URIs are resolved to absolute
@slax/hls-parse — A robust M3U8 / HLS playlist parser.
Parses M3U8 playlists according to RFC 8216 (HTTP Live Streaming).
Features
Example: Quick Start
Example: With URL Resolution