GNOME Bugzilla – Bug 608114
Unable to decode RAW AAC data
Last modified: 2010-01-26 02:29:18 UTC
Greetings! I have searched and searched, and I have not found a solution. It doesn't seem like many people are trying to decode RAW AAC streams. So I am asking for help... Using the gst_faad plug-in (or the ffdec_aac) plug-in, I am unable to properly decode RAW AAC data. The AAC data is without header. I looks packetized. I am able to use faad to decode the audio to WAV (or other profiles) successfully. This works: # faad libfaad-stream.dat (Playable libfaad-stream.wav) This (among any variation I tried over two weeks of trial), does not work. The sound output sounds like it's being fast-forwarded: # gst-launch-0.10 filesrc location=libfaad-stream.dat ! audio/mpeg,mpegversion=4,channels=2,rate=48000,framed=true ! decodebin ! autoaudiosink I have tried passing proper codec_data, the result is the same. Any ideas?
Created attachment 152278 [details] RAW AAC stream, 2 channels @ 48kHz This is the sample data I have been testing with. I should note that faad (from libfaad2) is able to decode this.
RAW AAC streams are not in a container, nor do they have ADIF or ADTS headers, which are the normal means of using AAC without a container. There's no way to detect such a stream other than to attempt to decode it. Parsing such files is possible, but is about as complicated as decoding. It's best to convert files like this to something useful using 'faad -a', which outputs an ADTS stream.