Android OpenAL?

标签 android audio android-ndk openal alsa

有没有人为 Android 构建过 OpenAL,或者在系统上找到了它的共享库?这似乎是对任何类型游戏的明显需求,但那里没有资源。据我所知,Android java 声音库似乎无法进行音高更改,因此似乎需要 OpenAL。我知道 OpenAL Soft 可以构建在 ALSA 之上,但我不确定是否有人这样做,而且我敢肯定这需要我一个月的时间。

如果在没有 OpenAL 的情况下在 Android 上进行声音处理的某个地方有很好的指南,那也很好。只是 OpenAL 是游戏制作者的一种标准,将我的数千行代码移植到这个系统会很好,在我深入研究之前,我认为这是 NDK 的重点,发现几乎没有系统上的共享库访问权限。

谢谢.. 我希望我自己可以在不成为 Java 专家的情况下进行移植。到目前为止真的不喜欢 NDK!

最佳答案

现在有几个选项可用于 NDK 音频:

  1. 它不是 OpenAL,但 OpenSL ES 1.0.1 是 API 级别 9 (2.3) 的 NDK 的官方部分。更多信息 here .

  2. OpenAL Soft在其 git master 中有一个 OpenSL ES 后端(自 1.13 版起未发布)。然而,此时它在 Android 上已损坏,因为它是为 OpenSL ES 1.1 而不是 1.0.1 编写的。见 this commit进行修复。

  3. 正如前面的回答中提到的,OpenAL Soft 的 JNI 后端链接到并描述了 here作为 2.3 之前的 Android 平台上 OpenAL 的唯一选项。但是,这是 OpenAL Soft 的一个过时分支 - 我已将后端更新到最新版本 on a github repo here以及 OpenSL ES 1.0.1 修复。还包括 untested optional patch声称可以提供更好的性能和更少的延迟。

关于Android OpenAL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2587295/

相关文章:

android - 为什么服务停止

android - 如何使用 javacv/opencv 在 android 中将音频与视频集成?

Android 应用程序和代码许可

android-ndk - JNI 检测到应用程序错误 : use of invalid jobject

android - 如何在安卓中唤醒屏幕

java - 无法从 AlertDialog 访问 ArrayAdapter

python - 音频无法播放pygame

c++ - 错误 Undefined reference to 'std::__ndk1::locale::~locale()'

Android ListView performLaunchActivity错误不显示xml布局

javascript - 类型错误 : Cannot destructure property `stat` of 'undefined' or 'null'