android - iOS 或 Android 中移动麦克风的跨平台库

标签 android cross-platform openal portaudio libpd

我正在 Android 中开发一个应用程序,它可以录制来自麦克风的声音并通过 WIFI 发送。对于录音,我使用 Audiorecord 和 Audiotrack。因为 Android 不提供低延迟,所以我一直在寻找一个音频库,它提供低延迟并且能够跨平台用于以后的 iOS 实现。

现在我路过:

  • libpd
  • 录音室
  • OpenAL 软件

我的问题是:

  1. 在我的情况下,最推荐或更容易实现这些库中的哪个?也许有任何实现示例?

  2. 当我广播通过 Audiorecord 录制的原始音频数据时,我如何过滤自己制作的音频数据包?我应该为每个音频数据包发送一个 ID 并通过 Auditrack 进行过滤吗?

谢谢 维克斯

最佳答案

几天来我一直在研究这个问题,老实说,我发现在我研究低延迟 android 录制的所有地方,所有 android 版本似乎都没有一致的结果,甚至物理设备之间的一致性。

article最近于 2015 年 11 月发布,详细介绍了我在 Android 上的低延迟录制的整体情况。

至于使用什么库,被认为最简单的是真正的意见,而不是 SO 通常处理的内容。我个人在我的项目中使用 OpenAL,但延迟对我来说不是问题。如果是的话,我可能会选择 portaudio,因为它更容易集成 Steinberg 的 ASIO 驱动程序,这将使 Windows 开发更容易。对于 OSX,核心音频似乎不需要与 Windows 相同类型的低延迟驱动程序。

因此,为了回答您的问题,我不认为列出的任何库都适用于每个操作系统的低延迟。无论您使用哪一个,您都可能必须支持特定于平台的功能。

我列出的文章确实建议有一个付费图书馆,但是,这可能有用,但由于我没有使用过它,所以我无法对此发表意见。

关于android - iOS 或 Android 中移动麦克风的跨平台库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35152723/

相关文章:

ios - 如何在 iOS 上播放现场音频?

java - 获取 map 中的用户位置

java - 想要每次保存 for 循环中的值

android - onSaveInstanceState() 不保证被调用

c++ - 学习特定于 Linux 的 API 是否有意义?

c++ - 具有非阻塞控制台输入的跨平台方式

android - 如何在没有阴影的 AppBar 下面添加一个 TabView

检查系统是否实现了功能

audio - 来自麦克风的 OpenAL 实时音频处理

c - 在 C 中的 OpenAL 中播放频率