A learning-oriented Ruby library for parsing ISO/IEC 14496-12 MP4 containers and turning them into adaptive-streaming assets. Parses every atom with BinData, memoises the sample table into a pluggable cache (memory or SQLite), cuts each track into keyframe-aligned fMP4 segments, and emits both DASH (MPD) manifests and HLS (m3u8) master + media playlists that reference the same segment bytes. Also includes a full MP4 remux path (regenerated moov from the cache) and an XLSX per-sample analysis workbook. Read the code, run the demo, learn how MP4 works under the hood. Not production software.
Required Ruby Version
>= 2.6.0
Authors
Edgars Meinarts
Versions
- 0.1.0 July 09, 2026 (45 KB)