0

是否可以AVAudioPlayer用来播放自定义声音(例如,我将生成正弦波然后播放)?文档说AVAudioPlayer可以用来:

从文件或内存缓冲区播放声音

但我找不到播放自定义生成声音的例子,只有从文件或互联网加载的内存缓冲区。有可能吗?我在哪里可以找到更多信息?

谢谢 :)

4

2 回答 2

1

经过广泛的搜索(搜索文档和谷歌搜索),我得出结论:

从文件或内存缓冲区播放声音

指包含格式化音频数据的内存缓冲区。如果您的磁盘或 Internet 上的某个地方有 MP3,您可以将其加载到内存缓冲区中然后播放。这就是他们的意思。如果要播放生成的声音,可以使用 OpenAL 或 AudioUnits。

于 2012-07-11T10:56:31.170 回答
0

你可以用 OpenAL 做到这一点:

void* bufferData; // your generated sound
int bufferDataLength; // length

alGenBuffers(1, &bufferID);
alBufferData(bufferID, AL_FORMAT_MONO8, bufferData, bufferDataLength, 44100);
于 2012-06-27T10:23:32.597 回答