源数据为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个帧的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位的帧长度
这里的数据结构描述:
答案 0 :(得分:1)
iOS降低了AMR支持,因此新的解决方案是使用OpenCoreAMR将数据转换为PCM