finds.dev

xqq/mpegts.js

HTML5 MPEG2-TS / FLV Stream Player

View on GitHub

★ 2,290JavaScriptApache-2.0updated Sep 2026

// the take

mpegts.js is a browser player that transmuxes MPEG2-TS and FLV streams into fragmented MP4 and feeds them to the HTML5 <video> element via Media Source Extensions. It's aimed at developers building low-latency live-stream viewers — DVB/ISDB broadcast, surveillance cameras, RTMP-style feeds — and is the actively developed successor to flv.js with much broader codec support.

Real, ongoing codec work rather than a repo coasting on flv.js's old base: AV1 over MPEG-TS and Enhanced RTMP, HEVC, Opus/FLAC over HTTP-FLV, LOAS AAC, EAC-3 all landed recently. The latency story is backed by actual mechanisms in the source (live-latency chaser/synchronizer, automatic playback-rate adjustment to catch the live edge), not just a claim in the README. Small memory footprint (~10MiB JS heap per instance) and support for MSE-in-Workers on Chrome and Safari, useful if you're running multiple player instances or targeting weaker hardware. Unusually good test coverage for a low-level demuxing library — dedicated parser tests for AAC, AC-3, AV1, H.265, MP3, and Opus across both TS and FLV containers.

No seeking for static TS file playback — it's an open TODO, so this is live-stream-only in practice. Single-maintainer project with an 'All Rights Reserved' copyright notice despite the Apache-2.0 license; this is exactly the kind of bit-level parsing code that's risky to patch without the original author. iOS support is version-gated and fragile — entirely broken below iOS 17.1, and dependent on Apple's non-standard ManagedMediaSource API, so you're exposed to whatever Apple changes in future WebKit releases. The library only covers the client side — you still need a TS/FLV origin server with correctly configured CORS, which the project explicitly offloads to something like SRS, so real deployments carry meaningful server-side ops work beyond this repo.

We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →

// at a glance

Stars
2,290
Forks
299
Language
JavaScript
License
Apache-2.0
Last commit
29 Sep 2026

// nearby

If mpegts.js isn't quite it.

All repos →