First public release of the mp4-rb gem on RubyGems.org.
What's in the gem
- MP4 parser — every atom parsed with BinData (
ftyp,mvhd,tkhd,stsd,stts,stsc,stsz,stco,co64,ctts,elst,saio,saiz,senc, …). - Metadata + sample-table cache — pluggable backends (
Memorydefault,SQLiteoptional). - fMP4 segmenter — keyframe-aligned segmentation via
MP4::Nolan. - DASH + HLS emitters — MPD XML (Nokogiri) + master/media m3u8 playlists referencing the same segment bytes.
- Full MP4 remux — regenerated
moovfrom cache. - XLSX per-sample analysis workbook.
What's NOT in the gem
The Sinatra origin server (lib/mp4/server/) and the Docker demo stack (Dockerfile, docker-compose.yml, Justfile) stay in the repo but are excluded from the gem — this release ships the library only. Run just demo in a checkout for the interactive playback demo.
Install
gem install mp4-rb
Disclaimer
This is a learning project, not production software. See the README for the honest disclaimer.