All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.10.1 - 2026-01-23
- handle compressorname encoding of length (#113)
- Add #[non_exhaustive] to Codec enum (#114)
- add support for the refs sample groups (#106)
- add cprt and kind child boxes (#104)
- add support for ccst child in hvc1 (#102)
- add nmhd and sthd boxes (#103)
0.10.0 - 2026-01-14
- add strict mode feature, enable on test (#99)
- implement ftab box (#100)
- implement mfra container and nested tfra and mfro boxes (#98)
- add initial support for senc box (#96)
- implement sidx box (#94)
- avoid inlining a couple more test files (#95)
- avoid checking for is_some() on encode, since encode is supported on Option<..> (#93)
- Stop manually inlining test files. (#90)
- implement prft box (#91)
- add cslg box (#89)
- add support for ilst "tool" box (#86)
- add btrt, colr and pasp support for VP8 and VP9 codecs (#88)
- add btrt box for Opus codec (#87)
- implement box (#85)
- Log unknown atoms instead of (sometimes) returning an error. (#84)
- fix taic encoding (#83)
- minor comment fix (#82)
- add support for btrt box in uncompressed audio (#80)
- Add support for raw audio as per ISO/IEC 23003-5 (#78)
0.9.2 - 2025-11-30
- Don't require fmt::Debug for Buf/BufMut. (#73)
0.9.1 - 2025-11-09
- (skip) free and skip boxes are now automatically skipped during parsing (#69)
- (hdlr) Skips trailing padding in hdlr (#70)
- (meta) add support for QuickTime style meta box (#68)
- (eac3) uses the correct number of sub streams, consumes all remaining bytes by definition (#61)
0.9.0 - 2025-09-21
- (eac3) make box members public (#59)
- [breaking] add saiz and saio to traf (#49)
- support multiple saio and saiz boxes (#44)
- add support for AC-3 sample entry and related dac3 box (#58)
- implement basic FLAC support (#57)
- minor code fixes (#56)
- Relaxed reserved bits validation on
Avccdecode (#55) - Fix some clippy warnings by boxing Trak. (#52)
- Add claude.md (#51)
- Add Claude Code GitHub Workflow (#50)
- Add optional boxes used in fragmented mp4 (#47)
- Shrink the size of the Meta struct. (#48)
- Optionally add the first-sample-flags (#46)
0.8.1 - 2025-05-15
- Fix some missing serde attributes. (#42)
0.8.0 - 2025-05-13
- add uncompressed video support (#38)
- add TAIClockInfoBox (taic) support (#37)
- add support for BitRateBox (btrt) (#35)
- add ColourInformationBox (colr) (#34)
- add PixelAspectRatioBox (pasp) (#32)
- correct hvcC parsing and encoding (#41)
- Add HEIF support (top level metabox) (#40)
- Initial Opus support. (#39)
- Add auxiliary information box support (#36)
0.7.2 - 2025-03-18
0.7.1 - 2025-03-09
- Opps. (#27)
0.7.0 - 2025-03-09
- Add #[non_exhaustive] to the huge enums. (#26)
- Maybe support VP8 too? (#25)
- Added support for Hvc1 atoms. (#23)
0.6.0 - 2025-03-03
0.5.0 - 2025-03-03
0.4.0 - 2025-01-14
0.3.0 - 2024-10-18
0.2.1 - 2024-09-24
- Crude serde support. (#6)
- Fix trun first_sample (#7)
- Added read_until helper. (#5)
- Fix a README link
0.2.0 - 2024-09-06
- Async support and better documentation.
- v0.1.0