Package org.jaudiotagger.audio.mp4.atom

Class Summary
AbstractMp4Box Abstract mp4 box, contain a header and then rawdata (which may include child boxes)
Mp4BoxHeader Everything in MP4s are held in boxes (formally known as atoms), they are held as a hierachial tree within the MP4.
Mp4DrmsBox DrmsBox Replaces mp4a box on drm files Need to skip over data in order to find esds atom Specification not known, so just look for byte by byte 'esds' and then step back four bytes for size
Mp4EsdsBox EsdsBox ( stream specific description box), usually holds the Bitrate/No of Channels

It contains a number of (possibly optional?) sections (section 3 - 6) (contaning optional filler) with differeent info in each section.

Mp4FreeBox FreeBox ( padding)
Mp4MdhdBox MdhdBox ( media (stream) header), holds the Sampling Rate used.
Mp4MetaBox This MP4MetaBox is the parent of metadata, it also contains a small amount of data that needs to be processed before we can examine the children
Mp4Mp4aBox Mp4aBox ( sample (frame encoding) description box) At first glance appears to hold no of channels but actually always returns 2 even for mono recordings so just need to skip over data in order to get to child atom esds
Mp4MvhdBox MvhdBox (movie (presentation) header box)
Mp4StcoBox StcoBox ( media (stream) header), holds offsets into the Audio data
Mp4StsdBox StsdBox ( sample (frame encoding) description box)
 

Enum Summary
Mp4EsdsBox.AudioProfile Audio profile, held in Section 5 this is usually type LOW_COMPLEXITY
Mp4EsdsBox.Kind File type, held in Section 4 , only really expecting type 0x64 (AAC)