├── .github └── workflows │ └── rust.yml ├── .gitignore ├── Cargo.toml ├── LICENSE ├── README.md ├── benches └── bench_main.rs ├── examples ├── mp4copy.rs ├── mp4dump.rs ├── mp4info.rs ├── mp4sample.rs ├── mp4writer.rs ├── mpeg_aac_decoder │ ├── .gitignore │ ├── Cargo.toml │ ├── audio_aac.m4a │ └── src │ │ └── main.rs └── simple.rs ├── src ├── error.rs ├── lib.rs ├── mp4box │ ├── avc1.rs │ ├── co64.rs │ ├── ctts.rs │ ├── data.rs │ ├── dinf.rs │ ├── edts.rs │ ├── elst.rs │ ├── emsg.rs │ ├── ftyp.rs │ ├── hdlr.rs │ ├── hev1.rs │ ├── ilst.rs │ ├── mdhd.rs │ ├── mdia.rs │ ├── mehd.rs │ ├── meta.rs │ ├── mfhd.rs │ ├── minf.rs │ ├── mod.rs │ ├── moof.rs │ ├── moov.rs │ ├── mp4a.rs │ ├── mvex.rs │ ├── mvhd.rs │ ├── smhd.rs │ ├── stbl.rs │ ├── stco.rs │ ├── stsc.rs │ ├── stsd.rs │ ├── stss.rs │ ├── stsz.rs │ ├── stts.rs │ ├── tfdt.rs │ ├── tfhd.rs │ ├── tkhd.rs │ ├── traf.rs │ ├── trak.rs │ ├── trex.rs │ ├── trun.rs │ ├── tx3g.rs │ ├── udta.rs │ ├── vmhd.rs │ ├── vp09.rs │ └── vpcc.rs ├── reader.rs ├── track.rs ├── types.rs └── writer.rs └── tests ├── lib.rs └── samples ├── big_buck_bunny.jpg ├── big_buck_bunny_metadata.m4v ├── extended_audio_object_type.mp4 ├── minimal.mp4 ├── minimal_fragment.m4s └── minimal_init.mp4 /.github/workflows/rust.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/.github/workflows/rust.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/.gitignore -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/README.md -------------------------------------------------------------------------------- /benches/bench_main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/benches/bench_main.rs -------------------------------------------------------------------------------- /examples/mp4copy.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/examples/mp4copy.rs -------------------------------------------------------------------------------- /examples/mp4dump.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/examples/mp4dump.rs -------------------------------------------------------------------------------- /examples/mp4info.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/examples/mp4info.rs -------------------------------------------------------------------------------- /examples/mp4sample.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/examples/mp4sample.rs -------------------------------------------------------------------------------- /examples/mp4writer.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/examples/mp4writer.rs -------------------------------------------------------------------------------- /examples/mpeg_aac_decoder/.gitignore: -------------------------------------------------------------------------------- 1 | /Cargo.lock 2 | /target 3 | -------------------------------------------------------------------------------- /examples/mpeg_aac_decoder/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/examples/mpeg_aac_decoder/Cargo.toml -------------------------------------------------------------------------------- /examples/mpeg_aac_decoder/audio_aac.m4a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/examples/mpeg_aac_decoder/audio_aac.m4a -------------------------------------------------------------------------------- /examples/mpeg_aac_decoder/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/examples/mpeg_aac_decoder/src/main.rs -------------------------------------------------------------------------------- /examples/simple.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/examples/simple.rs -------------------------------------------------------------------------------- /src/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/error.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/mp4box/avc1.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/avc1.rs -------------------------------------------------------------------------------- /src/mp4box/co64.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/co64.rs -------------------------------------------------------------------------------- /src/mp4box/ctts.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/ctts.rs -------------------------------------------------------------------------------- /src/mp4box/data.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/data.rs -------------------------------------------------------------------------------- /src/mp4box/dinf.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/dinf.rs -------------------------------------------------------------------------------- /src/mp4box/edts.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/edts.rs -------------------------------------------------------------------------------- /src/mp4box/elst.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/elst.rs -------------------------------------------------------------------------------- /src/mp4box/emsg.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/emsg.rs -------------------------------------------------------------------------------- /src/mp4box/ftyp.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/ftyp.rs -------------------------------------------------------------------------------- /src/mp4box/hdlr.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/hdlr.rs -------------------------------------------------------------------------------- /src/mp4box/hev1.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/hev1.rs -------------------------------------------------------------------------------- /src/mp4box/ilst.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/ilst.rs -------------------------------------------------------------------------------- /src/mp4box/mdhd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/mdhd.rs -------------------------------------------------------------------------------- /src/mp4box/mdia.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/mdia.rs -------------------------------------------------------------------------------- /src/mp4box/mehd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/mehd.rs -------------------------------------------------------------------------------- /src/mp4box/meta.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/meta.rs -------------------------------------------------------------------------------- /src/mp4box/mfhd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/mfhd.rs -------------------------------------------------------------------------------- /src/mp4box/minf.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/minf.rs -------------------------------------------------------------------------------- /src/mp4box/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/mod.rs -------------------------------------------------------------------------------- /src/mp4box/moof.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/moof.rs -------------------------------------------------------------------------------- /src/mp4box/moov.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/moov.rs -------------------------------------------------------------------------------- /src/mp4box/mp4a.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/mp4a.rs -------------------------------------------------------------------------------- /src/mp4box/mvex.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/mvex.rs -------------------------------------------------------------------------------- /src/mp4box/mvhd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/mvhd.rs -------------------------------------------------------------------------------- /src/mp4box/smhd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/smhd.rs -------------------------------------------------------------------------------- /src/mp4box/stbl.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/stbl.rs -------------------------------------------------------------------------------- /src/mp4box/stco.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/stco.rs -------------------------------------------------------------------------------- /src/mp4box/stsc.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/stsc.rs -------------------------------------------------------------------------------- /src/mp4box/stsd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/stsd.rs -------------------------------------------------------------------------------- /src/mp4box/stss.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/stss.rs -------------------------------------------------------------------------------- /src/mp4box/stsz.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/stsz.rs -------------------------------------------------------------------------------- /src/mp4box/stts.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/stts.rs -------------------------------------------------------------------------------- /src/mp4box/tfdt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/tfdt.rs -------------------------------------------------------------------------------- /src/mp4box/tfhd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/tfhd.rs -------------------------------------------------------------------------------- /src/mp4box/tkhd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/tkhd.rs -------------------------------------------------------------------------------- /src/mp4box/traf.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/traf.rs -------------------------------------------------------------------------------- /src/mp4box/trak.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/trak.rs -------------------------------------------------------------------------------- /src/mp4box/trex.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/trex.rs -------------------------------------------------------------------------------- /src/mp4box/trun.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/trun.rs -------------------------------------------------------------------------------- /src/mp4box/tx3g.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/tx3g.rs -------------------------------------------------------------------------------- /src/mp4box/udta.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/udta.rs -------------------------------------------------------------------------------- /src/mp4box/vmhd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/vmhd.rs -------------------------------------------------------------------------------- /src/mp4box/vp09.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/vp09.rs -------------------------------------------------------------------------------- /src/mp4box/vpcc.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/mp4box/vpcc.rs -------------------------------------------------------------------------------- /src/reader.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/reader.rs -------------------------------------------------------------------------------- /src/track.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/track.rs -------------------------------------------------------------------------------- /src/types.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/types.rs -------------------------------------------------------------------------------- /src/writer.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/src/writer.rs -------------------------------------------------------------------------------- /tests/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/tests/lib.rs -------------------------------------------------------------------------------- /tests/samples/big_buck_bunny.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/tests/samples/big_buck_bunny.jpg -------------------------------------------------------------------------------- /tests/samples/big_buck_bunny_metadata.m4v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/tests/samples/big_buck_bunny_metadata.m4v -------------------------------------------------------------------------------- /tests/samples/extended_audio_object_type.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/tests/samples/extended_audio_object_type.mp4 -------------------------------------------------------------------------------- /tests/samples/minimal.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/tests/samples/minimal.mp4 -------------------------------------------------------------------------------- /tests/samples/minimal_fragment.m4s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/tests/samples/minimal_fragment.m4s -------------------------------------------------------------------------------- /tests/samples/minimal_init.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alfg/mp4-rust/HEAD/tests/samples/minimal_init.mp4 --------------------------------------------------------------------------------