mp4aacadtsfmp4

How does the fmp4 file populate the esds box according to the ADTS of the AAC frame?


My source AAC frame contains the ADTS header. I need to initialize the esds box in the fmp4 file according to the ADTS, cut out the ADTS header and fill in the rest data, but I have tried many times without success (the player can't parse out the audio). The following is my ADTS data. Which parameters of the esds box I configured need to be modified?

ADTS

FF 1111 1111 0-7 bit

F9 1111 1001 8-15 bit MPEG-2 no CRC

60 0110 0000 16-23 bit AAC Main

40 0100 0000 24-27 bit

enter image description here

enter image description here


Solution

  • You need to parse the adts to get the audio object type, frequency index, and channel count. Then write an audio specific config. https://wiki.multimedia.cx/index.php/MPEG-4_Audio#Audio_Specific_Config