OpenAL 是用于跨平台音频处理的正确音频库吗?

发布于 2024-11-25 17:00:21 字数 94 浏览 0 评论 0原文

我正在制作一个应用程序,可以对音频文件执行音调变换和时间拉伸等操作,并实时播放它们。 OpenAL 是适合这个的库吗?或者有什么东西可以做得更好,并且很容易在不同平台上重用?

I am making an application that will do things like pitch shifting and time stretching to audio files, and play them back in real time. Is OpenAL the right library for this? Or is there something that could do this better, and would be easy to reuse for different platforms?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

记忆で 2024-12-02 17:00:21

OpenAL 无法进行音调变换或时间拉伸。为此,您需要一个第三方库,例如 SoundTouch。

此外,OpenAL 不支持实时音频处理。您可以使用缓冲区队列来伪造它,但这有点做作,因为您需要不断轮询以查看缓冲区何时完成播放,然后对下一个处理的缓冲区进行排队,并且您需要使缓冲区保持非常小或存在音频响应滞后的风险。但是,较小的排队缓冲区可能会导致性能、计时和点击问题。

OpenAL can't do pitch shifting or time stretching. For that, you'll need a 3rd party library such as SoundTouch.

As well, OpenAL doesn't support realtime audio processing. You can kind of fake it using buffer queues, but it's a bit hokey because you'd need to keep polling to see when a buffer has finished playing and then queue the next processed buffer, and you'd need to keep your buffers very small or risk laggy audio response. However, small queued buffers can potentially lead to performance, timing, and clicking issues.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文