Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
Announcements
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.
3058 Discussions

Intel Media SDK AAC Encoder - cannot encode AAC HE or 5.1 (6 channels)

Tsviatko_J_
Beginner
413 Views

Hi,

I've downloaded and trying to use the Intel Media AAC Audio Encoder. The AAC encoder and decoder works great with Low Complexity profile in stereo mode. However if I try to set HE profile the produced AAC plays with clicks and pops. The effect is the same if I set the number of channels > 2.

Here is how I setup the AAC Encoder:

                // Configure audio encoder parameters
                MFXAParam.mfx.CodecId = MFX_CODEC_AAC;
                MFXAParam.mfx.CodecProfile = MFX_PROFILE_AAC_HE;
                MFXAParam.mfx.BitPerSample = 16;
                MFXAParam.mfx.NumChannel = 2;
                MFXAParam.mfx.SampleFrequency = 48000;
                MFXAParam.mfx.Bitrate = 96000;
                MFXAParam.mfx.OutputFormat = MFX_AUDIO_AAC_ADTS;
                MFXAParam.mfx.StereoMode = MFX_AUDIO_AAC_LR_STEREO;

The Query and initialization function returns no error on these parameters. The encoding passes without any problems, but the resulting AAC file has clicks. If I change the  CodecProfile to MFX_PROFILE_AAC_LC, everything works perfectly.

The same issue appears if I try setting the NumChannels to 6 (for 5.1) - even in MFX_PROFILE_AAC_LC again the produced AAC has clicks.

I'm using libmfxaudiosw32.dll - 6.0.0.1 from media_audio_6.0.0.1.

Any help would be really appreciated.

Regards,

Tsviatko

0 Kudos
1 Solution
Harshdeep_B_Intel
413 Views

Hi Tsviatko,

Apologies that you are running into this issue. Currently, today in Audio for windows we have support for both AAC and AAC-HE in our audio library. However, only Audio decoder part supports more than 2 channels. Audio encoder supports mono or stereo only. Hence you are able to get the AAC HE working when set to mono encoding. Hope this information is helpful!

Thank you,

 

View solution in original post

0 Kudos
3 Replies
Surbhi_M_Intel
Employee
413 Views

Hi Tsviatko

This is not a known issue, since it is not captured in our release notes. It would be great if you can send us a reproducer which can replicate this problem with a small input and system analyzer logs(tool for this is present at <installed directory>\mediasdk\tools\mediasdk_system_analyzer to look into this issue. 

Thanks,
Surbhi

0 Kudos
Tsviatko_J_
Beginner
413 Views

Hi Surbhi,

Here is a compilable C++ sample for reproducing the AAC HE and multi-channel (>2) problem:

http://www.jongbel.com/download/IntelAACHEEncoderIssue/IntelAudioAACHEEncoderIssue.zip

The sample includes the source PCM stream, the required .h, .lib and .dll files - it can be directly compiled and run. The produced AAC HE stream has pops and clicks.

Tried with different bit rates (AAC HE should be up to 96 kbps), different channels, SampleFrequency, OutputFormat, StereoMode. No combination seemed to work. The only way
I was able to get the AAC HE working is to set it to mono encoding - 1 mono channel. 

, and here are the logs from the analyzer:

http://www.jongbel.com/download/IntelAACHEEncoderIssue/MediaSDK_System_Analyzer_win32_Log.txt
http://www.jongbel.com/download/IntelAACHEEncoderIssue/MediaSDK_System_Analyzer_x64_Log.txt

Thank you.

Best Regards,
Tsviatko

 

0 Kudos
Harshdeep_B_Intel
414 Views

Hi Tsviatko,

Apologies that you are running into this issue. Currently, today in Audio for windows we have support for both AAC and AAC-HE in our audio library. However, only Audio decoder part supports more than 2 channels. Audio encoder supports mono or stereo only. Hence you are able to get the AAC HE working when set to mono encoding. Hope this information is helpful!

Thank you,

 

0 Kudos
Reply