Minimp4
Minimalistic MP4 mux/demux single header library
Install / Use
/learn @lieff/Minimp4README
Mini MP4
Easy embeddable MP4 mux/demux library.
Usage
Muxing
Muxing can be done using 3 modes. Default mode uses one big mdat chunk:

This is most efficient mode, but disadvantage is that we need go back and patch mdat chunk size. This can be a problem in some cases, for example if stream transfered over network. To workaround this sequential mode is used:

This mode do not make any backwards seek. And last mode is fragmented aka fMP4.

This mode stores track information first and spreads indexes across all stream, so decoding can start before whole stream available. This mode is sequential too and usually used by browsers and HLS streaming.
Bindings
- https://github.com/darkskygit/minimp4.rs - rust bindings
Interesting links
- https://github.com/aspt/mp4
- https://github.com/l30nnguyen/minimum_mp4_muxer
- https://github.com/DolbyLaboratories/dlb_mp4demux
- https://github.com/DolbyLaboratories/dlb_mp4base
- https://github.com/ireader/media-server/tree/master/libmov
- https://github.com/wlanjie/mp4
- https://github.com/MPEGGroup/isobmff
- http://www.itscj.ipsj.or.jp/sc29/open/29view/29n7644t.doc
- http://atomicparsley.sourceforge.net/mpeg-4files.html
- http://cpansearch.perl.org/src/JHAR/MP4-Info-1.12/Info.pm
- https://developer.apple.com/library/archive/documentation/QuickTime/QTFF/QTFFPreface/qtffPreface.html
- http://xhelmboyx.tripod.com/formats/mp4-layout.txt
Related Skills
node-connect
335.9kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
82.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
335.9kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
82.7kCommit, push, and open a PR
