Skip to content

v0.4.0 - MP4/M4A Support

Choose a tag to compare

@decriptor decriptor released this 01 Jan 02:52
· 70 commits to main since this release

MP4/M4A Format Support

This release adds full read/write support for MP4/M4A audio files (AAC, ALAC) with iTunes-style metadata.

Highlights

  • Full MP4/M4A support - ISO 14496-12/14 compliant box parsing
  • iTunes metadata - All standard atoms (©nam, ©ART, ©alb, trkn, disk, covr, etc.)
  • Audio properties - Duration, sample rate, bitrate, channels, codec detection
  • Album art - JPEG/PNG cover art via covr atom
  • MusicBrainz IDs - Full support via freeform atoms
  • ReplayGain/R128 - Track and album gain values
  • MediaFile factory - Auto-detection of MP4 format
  • Atomic writes - Safe file saving with mdat relocation

Audio Codec Support

  • AAC (via esds parsing)
  • ALAC (via magic cookie parsing)
  • Detection for FLAC, Opus, AC-3, E-AC-3 in MP4 container

Metadata Atoms

Category Atoms
Basic Title, Artist, Album, Genre, Year, Comment, Composer
Album Album Artist, Track/Disc Numbers, Compilation, Gapless
Sort AlbumSort, ArtistSort, TitleSort, ComposerSort
Classical Work, Movement Name/Number/Count, Show Movement
Freeform MusicBrainz IDs, AcoustID, ReplayGain, R128, ISRC

Statistics

  • 197 new MP4 tests
  • 2,318 total tests passing
  • 88.67% code coverage

See CHANGELOG.md for full details.