diff -r c36d67f77f75 -r eb1e5d7cc688 mmlibs/mmfw/src/Plugin/Codec/audio/MmfimaadpcmTopcm16codec.cpp --- a/mmlibs/mmfw/src/Plugin/Codec/audio/MmfimaadpcmTopcm16codec.cpp Thu Jun 24 10:37:45 2010 +0100 +++ b/mmlibs/mmfw/src/Plugin/Codec/audio/MmfimaadpcmTopcm16codec.cpp Fri Jul 09 12:23:13 2010 +0100 @@ -233,7 +233,7 @@ User::Leave(KErrArgument); } - const TUint KImaAdpcmBitsPerSample = 4; + // SamplesPerBlock = [(BlockAlign - 4 * Channels) * 8] / (BitsPerSample * Channels) + 1 iSamplesPerBlock = (iBlockAlign - 4 * iChannels) * 8 / (KImaAdpcmBitsPerSample * iChannels) + 1; } @@ -252,7 +252,9 @@ } void CMMFImaAdPcmPcm16Codec::SetFileBlockLength(TUint aBlockAlign) - { - iBlockAlign = aBlockAlign; + { + iBlockAlign = aBlockAlign; + iSamplesPerBlock = (iBlockAlign - 4 * iChannels) * 8 / (KImaAdpcmBitsPerSample * iChannels) + 1; + }