【问题标题】:Communicate with external MIDI device from Android device从 Android 设备与外部 MIDI 设备通信
【发布时间】:2011-12-08 18:24:28
【问题描述】:

Android 平台可以使用哪些类与外部 MIDI 设备进行通信(输入/输出)?我有 HTC Desire 智能手机,它有 USB 端口,我认为可以使用标准 USB 电缆 + [Type A -> Mini A] 转换器将它连接到 MIDI 合成器。我想编写一个 MIDI 音序器应用程序,它能够从合成器录制 MIDI 流,然后再播放。

【问题讨论】:

    标签: android midi


    【解决方案1】:

    简短回答:没有。稍微长一点的答案:在 HTC Desire 上,没有对 USB 主机模式的内置支持(您需要它,因为 USB-midi 适配器将是 USB 客户端)。 (Android 3.1 确实支持 USB 主机模式,但 HTC Desire 不支持) 如果你不怕烙铁,你可以选择 midi-over-bluetooth 路线:http://nettoyeur.noisepages.com/2011/01/midi-over-bluetooth-part-iii-new-hardware/

    【讨论】:

      【解决方案2】:

      这方面发生了很大变化。以下库允许使用 API 12+ 上的 USB OTG 适配器进行 MIDI i/o:

      https://github.com/kshoji/USB-MIDI-Driver

      它远非完美,在我的测试中,相当崩溃,但对于寻找相关课程的人来说,它至少应该是一个很好的起点。

      【讨论】:

      • 看起来很有希望,会看看这个!谢谢!
      【解决方案3】:

      正如@edovino 所说,您需要 USB 主机模式,然后是驱动程序。

      如果您不介意围绕手机进行操作,并且硬件支持它,那么您确实有一些选择。看看这个链接:http://sven.killig.de/android/N1/2.2/usb_host/

      这个家伙能够让音频、视频、键盘和其他一些东西正常工作。他包括音频/MIDI 驱动程序。

      【讨论】:

        【解决方案4】:

        是的,如上所述,使用手机是不可行的,因为它不提供 USB 主机功能。在过去的几个月里,我一直在虔诚地工作,为我的合成器制作一个 XY 控制器,以便我可以传输控制器值以用于表演。我想,这就是您想要使用附加功能做的事情。

        蓝牙绝对是一种选择,如果您查找 libpd,Peter Brinkmann 本人已经解决了这个问题,并承认用于 MIDI 的蓝牙加密狗并不遥远。

        WiFi 也是人们可能愿意关注的东西。使用 rtpMIDI,我们可以在 PC 端创建会话,并使用几乎任何支持 WiFI 的 MIDI 设备来传输/接收数据。如果您希望使用手机控制软件合成器,这似乎很理想。 TouchDAW 和 TouchOSC,android 上的应用程序,利用了这个功能。

        使用 USB-Android 驱动程序,我看到的唯一问题是不支持使用 USB 主机进行同步传输。因此,我们不能保证延迟确定性。但是,考虑到没有附加其他总线配件,在我的测试中性能似乎相当不错。

        【讨论】:

          猜你喜欢
          • 2012-02-14
          • 1970-01-01
          • 1970-01-01
          • 2013-04-07
          • 1970-01-01
          • 2018-02-17
          • 1970-01-01
          • 2012-06-16
          • 1970-01-01
          相关资源
          最近更新 更多