Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
6688 Discussions

AACEncoder - Encoded ADTS stream cannot be played with Quicktime

I am using IPP 6.0 with AACEncoder to encode PCM stream to AAC. Below are my AAC encoding parameters.
pAudioInData = new UMC::MediaData;
// These parameters are needed for AAC encoder initialization
aacEncoderParams.m_info_in.sample_frequency = sampleFreq;
aacEncoderParams.m_info_in.channels = channel;
aacEncoderParams.m_info_out.bitrate = bitrate;
//aacEncoderParams.m_info_out.stream_type = UMC::AAC_MPEG4_STREAM;
//aacEncoderParams.m_info_out.sample_frequency = sampleFreq;
//aacEncoderParams.m_info_out.channels = channel;
aacEncoderParams.audioObjectType = AOT_AAC_LC;
aacEncoderParams.auxAudioObjectType = AOT_UNDEF; //can only be equal to AOT_SBR or not
// equal to AOT_SBR);
aacEncoderParams.stereo_mode = UMC_AAC_LR_STEREO;
aacEncoderParams.ns_mode = 0;
aacEncoderParams.outputFormat = UMC_AAC_ADTS;
pAudioInData = new UMC::MediaData;

I tried AOT_AAC_LC, it seems to return MPEG-2 AAC stream in ADTS output format
I also tried AOT_AAC_LTP, it seems to return MPEG-4 AAC stream in ADTS output format.
However, both streams are unable to be played by Quicktime player. VLC plays them well.
Anyone has any idea on this issue? Or, Quicktime does not support IPP AAC encoded stream?
Also, is there anyway to tell IPP AACEncoder to generate AAC MPEG-4 LC stream rather than the current MPEG-2 LC stream?
Thanks in advance
0 Kudos
2 Replies

IPP AAC Encoder supports MPEG-2 AAC standard and any AAC player should be able to play it. MPEG4 AAC has some additional fetaures which are not used by IPPEncoder.
If you'd like just to have an "MPEG4" word in your stream viewer (or whatever you use to watch stream info) let me know and I'll tell you the line in codeto change. As a result only one bit will be changed in AAC header but the data itself will be the same.

Concerning problems with playback, I don't see any problems with your code. Besides I've just encoded a stream myself and it is played by QT without problems. I use 7.6.6(1671) version of QuickTime.

If you still have problems you can sendyour stream to investigate the issue.

0 Kudos

I recently came across this problem as well. I was using Quicktime version 7.6.4 and after seeing your post upgraded to the latest Quicktime 7.6.8 and with the new version it works. So Apple must have added some functionality between 7.6.4 and 7.6.6 to play certain types of aac streams.
0 Kudos