1

我正在尝试用 Python 编写节拍器应用程序,并且打算发布适用于 Android 和 iOS 的应用程序。我发现了一些像 Kivy 这样的跨平台框架,但缺乏对音频的支持。更具体地说,我需要非常精确的音频计时,我不能依赖线程计时或事件。我想将音频数据直接写入设备的音频输出,或者创建一个可以即时播放的 MIDI 文件。问题是,我找不到任何适合这项任务的框架。

我知道很多游戏都是用 Python 为 Android 编写的,而且这些游戏的声音计时非常出色且精确。我需要帮助找到:

  1. 一种使用 Python 在 Android 中即时创建和播放 MIDI 文件的方法,
  2. 适用于 Android 的 Python 框架,具有合适的音频 API,可将声音直接写入音频设备,或者至少以非常准确的时间播放音频。

谢谢!

4

1 回答 1

1

我正在寻找同样的东西。我也在看基维。我可以看到音频的可能解决方案是将 3rd 方应用程序作为 Kivy 中的“配方”挂钩。

有 aubio,显然可以为 iOS/Android 编译(请参阅有关此的 stackoverflow 问题),但我相信您必须为它获取自己的音频源,这可能由 kivy 中的音频流子项目处理。

Kivy/audiostream 导入它出现的核心 libpd 项目,因此您可以使用 libpd python 绑定。我认为这是阻力最小的路径,但是在尝试运行示例时遇到了问题。

我认为这两种方法都可以,但都需要一些努力才能开始使用。

于 2013-04-29T20:42:45.393 回答