我正在使用音频单元录制一些 PCM 音频。在回调中,当我有 30 秒的音频时,我想将比特率为 12kb/s 的 8000Hz AAC 编码文件写入磁盘。
这是我使用的 AudioStreamBasicDescription,但我的输出最终为 40 kb/s。我的问题是,我可以更改一些参数以降低比特率,如果可以,我应该修改哪些参数?
// specify the M4A
AudioStreamBasicDescription outputFormat = {0};
outputFormat.mSampleRate = 8000.0;
outputFormat.mFormatID = kAudioFormatMPEG4AAC;
outputFormat.mFormatFlags = kMPEG4Object_AAC_Main;
outputFormat.mChannelsPerFrame = 1;
Run Code Online (Sandbox Code Playgroud)
mBitsPerChannel请参阅AudioStreamBasicDescription 中的字段。
一个音频样本的位数。例如,对于使用 kAudioFormatFlagsCanonical 格式标志的线性 PCM 音频,请按如下方式计算此字段的值:
mBitsPerChannel = 8 * sizeof (AudioSampleType);
Run Code Online (Sandbox Code Playgroud)
对于压缩格式,将此字段设置为 0。
| 归档时间: |
|
| 查看次数: |
1285 次 |
| 最近记录: |