This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AAC-HE decoder problem with LATM complaint streams

Hi,

Environment : AAC-HE Decoder version v01.30.10 on DM6467T  with dvsdk version dvsdk_3_10_00_16.

The decoded output audio data from AAC-HE decoder having glitches.

PFA input source file(receive_aac.txt, 48KHz and sterio) and raw pcm file(rawAac.txt) from decoder.

Decoder buffer requirements from TI decode demo application as :"Adec required Out size buf : 8192" and "Adec required input size buf : 3840"6825.receive_aac.txt

Could some one plz let me know if the decoder decodes and gives proper audio at your end.

Regards,

Sreeni.

 

  • Hi

    PFA attached decoded output file which I could not upload in the earlier post.

    Regards,

    Sreeni.0257.rawAac.txt

     

  • Hi Seenu,

    This stream has more than one program/subframe and layer. TI's decoder supports single program, single layer streams.

    Decoder will throw error for such frames and may be decoding frames with single programs/layers.

    Ram

  • Hi Ram,

    I did not get  "This stream has more than one program/subframe and layer"? 

    Actually it is playing good in vlc player and I have captured only single elementry stream which has Sterio 48k samples/s.  

    Could you plz tell me What is single layer stream?

    How do we identify such frames to avoid giving it to dcoder so that we can get actuall audio out.

    Regards,

    Sreeni.

     

     

     

  • Hi Seenu,

    I had shared one link on LOAS/LATM header information.

    Please refer page 54.

    numSubFrames, numProgram and numLayer fields in header need to be 1 for TI's decoder.

    Let me know

    Are you observing any error from the decoder? Are you able to decode other LATM streams?

    Ram

  • Hi Ram,

    I could see return value from decoder -1 when the header format is like "56 e1 4f ff a6 90 4c ....". 

    And decoder decodes fine when frame starts with "56 e1 4a 20 00 13 11 ... ".

    As of my understanding  in the second format where decoder decodes 7571.One_ts.txt-> sync byte : 56 E (11 bits)  , 1 4a ( next 13 bits is length) and from here it starts with muxVersion(1), muxVersionA(1) , taraBufFullness (2 + 8) ,

    allStreamsSametimeFraming(1) , numSubframes(6) and numPrograms(4) numlayers (3).  Here no version information and no subframes and no programs (20 00).  Is this correct?

    And in the first format where decoder fails  :   sync byte : 56 E (11 bits)  , 1 4f ( next 13 bits is length) and from here it starts with muxVersion(1), muxVersionA(1) , taraBufFullness (2 + 8) ,

    allStreamsSametimeFraming(1) , numSubframes(6) and numPrograms(4) numlayers (3).    Here I do not understand the byte with (0xff) .

    If it is version info then muxVersionA  should be zero according to standard, here it is not so I thought 0xff is not version info. Is it correct?

    So if the above understanding is right then we can skip the frames start with "56 e1 4a 20 00 13 11 ... ". to avoid decoder error.

    Please let me know how can we proceed with these kind of streams.

    >Are you able to decode other LATM streams?

    No I downloaded one ts file which has AAC LATM complaint stream, even this stream also givies same result because it has same formats as mentioned above.

    PFA aac file,ts file and ce debug.

    Regards,

    Sreeni. 

     2021.One_aac.txt0882.ce_debug.txt

  • Hi Seenu,

    TI's decoder expects, all these fields to be 0 in bitstream.

    muxVersion, numPrograms, numlayers , numSubframes.  56 e1 4a 20 00 13 11 satisfiles this I guess.

    Which is the source of this stream? Are you aware of the encoder used? We have encoded few streams and used same for our decoder. I can share few streams if you need.

    Ram

  • Hi Ram,

    Yeah you are right when frame stats with 56 e1 4a 20 00 13 11  .... format then it decodes fine, but with other format it failes to decoe.

    >Which is the source of this stream?

    I had shared one ts file which has 720P video and AAC-LATM complaint Audio stream, you can try with that.

    And actual source is dvb-s2 signal from our clients in europe. We are really struck up over here.

    Ram, Could you please let us know if the decoder is not supporting this kind of streams then should we get new version of decoder once TI updates?

    or is there any other solution for this?

    Regards,

    Sreeni.

  • Hi Seenu,

    When we developed decoder for LATM, we had spec which supports only muxVersion = 0 and hence we supported streams with muxVersion=0.

    LATM Specs might have been updated with muxVersion != 0 and DVB-s2 may be using latest spec to encode LATM headers. 

    TI's decoder will not be able to decode these streams then.

    Are these streams playable with VLC?

    Ram

  • Hi Ram,

    >Are these streams playable with VLC?

    Yes, these streams are playing good with vlc player.

    >TI's decoder will not be able to decode these streams then.

    Is it possible to update decoder alogrithm with latest LATM specs where in muxVersion and muxVersionA  ! = 0 and even for sub frames and layers aswell?

    Regards,

    Sreeni.

  • Hi Seenu,

    I verified two streams shared by you using analyser. Stream doesn't have more than one program/layer or subframe. It must be due to some other corruption, TI decoder is not able to decode.

    In bitstream, 0xFF can after 0x56E. Can you please few more streams. It will help us to analyse further?

    Ram