Связь с внешним MIDI-устройством с Android-устройства - PullRequest
1 голос
/ 16 октября 2011

Какие классы доступны для платформы Android для связи (вход / выход) с внешним MIDI-устройством?У меня смартфон HTC Desire, у него есть USB-порт, я бы предположил, что его можно подключить к MIDI-синтезатору, используя стандартный USB-кабель + конвертер [Type A -> Mini A].Я хотел бы написать приложение для секвенсора MIDI, которое могло бы записывать поток MIDI из синтезатора, а затем воспроизводить его позже.

Ответы [ 4 ]

2 голосов
/ 16 октября 2011

Краткий ответ: нет. Немного более длинный ответ: в HTC Desire нет встроенной поддержки режима хоста USB (который вам нужен, так как адаптер USB-MIDI будет USB-клиентом). (Android 3.1 имеет некоторую поддержку режима USB Host, но это не доступно для HTC Desire) Если вы не боитесь паяльника, вы можете пойти по MIDI-через Bluetooth-маршрут: http://nettoyeur.noisepages.com/2011/01/midi-over-bluetooth-part-iii-new-hardware/

1 голос
/ 07 февраля 2013

Многое изменилось на этом фронте.Следующая библиотека допускает MIDI-ввод / вывод с помощью USB OTG-адаптера на API 12 +:

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

Это далеко от совершенства, и в моих тестах, довольно аварийный, но это должнопо крайней мере, будет хорошей отправной точкой для тех, кто ищет соответствующие классы.

0 голосов
/ 10 ноября 2013

Да, как указывалось выше, использование телефона не представляется возможным, поскольку оно не обеспечивает возможности USB-хоста. Последние несколько месяцев я неукоснительно работал над созданием XY-контроллера для моего синтезатора, чтобы я мог передавать значения контроллера для использования в выступлениях. Я считаю, что это то, что вы хотите сделать с дополнительным функционалом.

Bluetooth определенно является опцией, и если вы ищете libpd, Питер Бринкманн сам решил эту проблему и признал, что Bluetooth-ключи для MIDI не за горами.

WiFi - это то, на что можно захотеть посмотреть. Используя rtpMIDI, мы можем создавать сеансы на стороне ПК и использовать практически любое MIDI-устройство с поддержкой WiFI для передачи / получения данных. Если вы ищете для управления программными синтезаторами с помощью телефона, это кажется идеальным. TouchDAW и TouchOSC, приложения для Android, используют эту функцию.

С драйвером USB-Android единственная проблема, которую я вижу, это отсутствие поддержки изохронной передачи с использованием USB-хоста. Таким образом, мы не можем гарантировать задержку детерминированную. Но, учитывая отсутствие других шинных аксессуаров, в моих тестах производительность кажется довольно приличной.

0 голосов
/ 17 октября 2011

Как сказал @edovino, вам нужен режим USB-хоста, а затем драйверы.

Если вы не возражаете против рутинга вокруг вашего телефона, и аппаратное обеспечение его поддерживает, у вас есть несколько вариантов.Проверьте эту ссылку: http://sven.killig.de/android/N1/2.2/usb_host/

Этот парень смог заставить работать аудио, видео, клавиатуру и некоторые другие вещи.Он включает в себя аудио / MIDI драйверы.

...