iphone - AudioUnit 帧的最大值?

标签 iphone ios audio audiounit

我有使用 AudioUnit 将正弦波渲染到输出的简单代码。我的问题是:我应该在框架中放入的值范围是多少?我的意思是,在 AudioUnitRender 函数中,我应该为缓冲区数组提供一些音频数据……那么我应该输入什么值?目前我正在插入从 -1 到 1 的值,但我发现我也可以使用更大的值......

那么我应该使用的最大值是多少(代表 100% 的音量)?

谢谢 :)

最佳答案

这完全取决于您使用的流格式。您应该创建一个 AudioStreamBasicDescription并将其设置为音频单元的输入格式。有许多不同的流格式,每种都有不同的方式来表示“100% 音量”是什么。如果您选择浮点,那么它将是 -1.0 到 1.0,但如果您选择无符号 16 位,那么它将是从 0 到 65535。

我不确定你已经有什么代码来设置你的音频单元,但这里似乎显示了一个很好的例子:
http://atastypixel.com/blog/using-remoteio-audio-unit/

在该示例中,您会注意到它正在创建一个 AudioStreamBasicDescription并使用 kAudioFormatFlagIsSignedInteger 选择线性 PCM标志,每个 channel 16 位和 1 个 channel 。这意味着值将从 -32768 变为 32767。

关于iphone - AudioUnit 帧的最大值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8289844/

相关文章:

iphone - 自动发送消息和邮件?

ios - 如何在 Avfoundation 中正确更改采样率

matlab - 将电影文件拆分为音频和视频Psychtoolbox

iphone - 针对 iPhone os 2.2.1 和 iPhone os 3.0 进行开发

ios - 解析 json 时出现结束错误时出现 Alamofire 垃圾

iphone - MapView - 让注释一次出现一个

ios - 如何交叉编译 GCC 以生成适用于 iOS 设备(arm、armv7)的 libgfortran?

c++ - 这两个位运算符在做什么?

iphone - UITableViewCell 帮助中的 UITextField

iphone - 存储大量音频资源