源数据为 AMR-NB 5.9kbit/s (AMR_5.90)
我已经尝试了以下设置(以及十几种变体),但我得到的只是垃圾音频。有人知道 AMR 的正确设置吗?
AudioStreamBasicDescription asbd;
asbd.mSampleRate = 8000.0;
asbd.mFormatID = kAudioFormatAMR;
asbd.mFormatFlags = 0;
asbd.mBytesPerPacket = 15; // (118>>3)
asbd.mFramesPerPacket = 1;
asbd.mBytesPerFrame = 15;
asbd.mChannelsPerFrame = 1;
asbd.mBitsPerChannel = 118; //tried also 0 and 13
asbd.mReserved = 0;
基于来自维基百科的 AMR 信息:
采样频率 8 kHz/13 位(20 ms 帧 160 个样本)
分别为比特率 4.75、5.15、5.90、6.70、7.40、7.95、10.2 或 12.2 kbit/s 生成 95、103、118、134、148、159、204 或 244 比特的帧长度
以及来自这里的数据结构描述: