Hi,
In the first case, you are setting the input sample rate incorrectly for the first file:
Code:
RArray<TInt> configParams;
> configParams.Append(16000);
> configParams.Append(1);
> configParams.Append(1);
> configParams.Append(1024);
> configParams.Append(0);
> configParams.Append(0);
> configParams.Append(0);
> configParams.Append(0);
> configParams.Append(16);
> configParams.Append(0);
> iCodec = CMMFCodec::NewL(TUid::Uid(0x101faf81));
> iCodec->ConfigureL(TUid::Uid(KUidMmfCodecAudioSettings),
> (TDesC8&)configParams);
> configParams.Close();
The last item is for sample rate conversion, should be 0 for no extra SRC, 8000 fixed or 16000 fixed.
If you don't have the correct input sample rate set though, this may affect the output.
eAac+ is a bit more complicated and I can't claim to be an expert. Have you tried checking what happens when you switch on the downsampled mode?
configParams.Append(iSampleRate);
configParams.Append(iChannel);
configParams.Append(1);
configParams.Append(4096);
configParams.Append(1024);
configParams.Append(iSampleRate);
configParams.Append(0);
configParams.Append(0); //change this to 1?
configParams.Append(16);
configParams.Append(16000);
configParams.Append(0);
Sorcery