Android-устройства в качестве миди-контроллера
Я уверен, что многие из тех, кто пользуется компьютером в качестве музыкального инструмента, обладают миди-клавиатурами, либо миди-контроллерами. Это действительно удобно! Причем, даже если вы не выступаете вживую, то крутить ручки или, к примеру, сыграть партию «вживую» гораздо интересней и эффективней, чем писать ее в секвенсоре. Впрочем, эти устройства – дополнительная статья расходов, что не всегда по карману непрофессиональным музыкантам. Но, к счастью, разработчики софта улучшают и улучшают его. И на данный момент любой обладатель Android-устройства может превратить его в миди-контроллер. Как сделать это в конкретных программах и будет данная статья.
Что мы имеем на данный момент
Итак, я предполагаю, что Вы – счастливый обладатель андроид-устройства и, естественно, компьютера на базе windows. Рассматривать iMac и совместимые устройства я, к сожалению, не имею возможности, но уверен, там все происходит подобным образом. Примеры будут на основе Ableton, хотя можно использовать и другие секвенсоры с поддержкой миди. Теперь насчет андроид-устройства. В моем случае – это телефон Lenovo A750 с Android ICS 4. Опять же, на более ранних ОС я не имею возможности проверить, так что будем отталкиваться от такой конфигурации.
Программы я выбрал бесплатные, доступные на сервисе Google-Play. Ссылки будут указаны далее. Первая – это Touch OSC (https://play.google.com/store/apps/details?id=net.hexler.touchosc_a). Вторая – FingerPlay MIDI (https://play.google.com/store/apps/details?id=com.flat20.fingerplay&hl=ru). И если первая позволяет работать, в общем, без дополнительных программ (со своим драйвером), то вторая требует установки на компьютере своего сервера в виде отдельной программы. Но обо всем по-порядку.
Подготовка
Для начала нам нужно установить виртуальные миди-порты. Как это сделать, я описывал в статье про миди-маппинг. Кто не знает – читаем. Во-вторых, у нас должно быть настроено соединение wi-fi, со статическим ip-адресом. В windows 7 это можно проверить (сделать), зайдя в «Центр управления сетями и общим доступом-Беспроводное сетевое соединение-Свойства-Протокол интернета версии tcp/ipv4» (рис. 1).
Рисунок 1. Установка статического IP-адреса на компьютере.
Как видим на рисунке, установлен статический адрес 192.168.1.57. Нам нужно будет запомнить этот адрес, он нам пригодится далее, в настройке программ на андроиде.
Во-вторых, должно быть установлено wi-fi соединение между компьютером и телефоном. Вариантов тут много. Лично у меня установлен обычный роутер wi-fi, со стандартными настройками, через него и соединяется компьютер и телефон. Возможны и другие варианты подключения напрямую телефона и компьютера через wi-fi, но это тема отдельной статьи. Предполагаем, что соединение между компьютером и телефоном существует. Теперь устанавливаем на телефон вышеуказанные программы и будем начинать.
FingerPlay MIDI
Первая пограмма – FingerPlay MIDI. Кроме основной программы в памяти телефона, она требует установки сервера на компьютере, для создания собственного канала, через который будут передаваться миди-сообщения в виртуальный порт (Midi-Yoke) на компьютере. Для начала настроим ее в телефоне. Запускаем ее, нажимаем на значке настроек (кнопка с шестеренкой) и попадаем во вкладку Settings (рис. 2).
Рисунок 2. Настройки FingerPlay.
Во-первых, устанавливаем Server type – FingerServer. Во-вторых, в Server Address устанавливаем ip-адрес нашего компьютера. Теперь на компьютере разархивируем FingerPlayServer.zip и запускаем run.bat. Хочу обратить внимание, что для его работы необходимо наличие java. Итак, появляется окно, в котором мы видим статус подключения телефона и компьютера. Теперь на телефоне ставим галочку напротив Connect to server и если все правильно, то статус превратится в Connected to 192.168.1.57 (или адрес вашего компьютера). Окно сервера на компьютере тоже изменится, показывая, что устройство подключено (рис. 3).
Рисунок 3. Окно сервера FingerPlay.
Как видим, в статусе – Phone connected, что означает, что телефон подключен, а также отображается на какой выход приходят миди-сообщения (Midi-Yoke 1). Кроме того, в настройках на телефоне, мы можем выбрать другое виртуальное миди-устройство (рис. 4).
Рисунок 4. Выбор миди-устройства для вывода сообщений.
Вот, собственно и вся подготовка. Теперь можно покрутить любой регулятор и в окне сервера появятся сообщения о том, какой параметр изменяется. Теперь самое время перейти в Ableton.
В Ableton нам достаточно выбрать то, миди-устройство, которое указано в FingerPlay (в нашем примере, Midi-Yoke 1) (рис. 5).
Рисунок 5. Включаем Midi-Yoke 1 в Ableton.
Если все правильно, то теперь можно замапить разные контроллеры и кнопки. И касаясь экрана на телефоне, управлять параметрами в Ableton. Например, перейдем в раскладку (Layout) для микшера в FingerPlay (она занимает среднее положение на панели справа, см. рис.6).
Рисунок 6. Раскладка микшера в FingerPlay.
Теперь в Ableton нажимаем Ctrl+M, включается режим миди-маппинга. Нажимаем, к примеру, на регуляторе громкости первого канала в Ableton и касаемся первого регулятора на экране телефона. Если все правильно, в карте маппинга появится новая запись (рис. 7).
Рисунок 7. Новый параметр в карте миди-маппинга.
Нажимаем Ctrl+M для возвращения в обычный режим. И теперь если мы касаемся первого регулятора на экране, у нас изменяется громкость на первом канале в Ableton! (рис. 8).
Рисунок 8. Регулятор на экране телефона управляет регулятором в Ableton.
Вот и все, миссия выполнена. Аналогично можно замапить кнопки, которые находятся в другой раскладке FingerPlay и пользоваться.
Touch OSC
Это приложение отличается от предыдущего мультиплатформенностью. Его клиент доступен не только для андроида, но и для iOs. А сервер, соответственно, может работать и на mac-совместимых компьютерах. Но я буду рассматривать связку android+windows 7, как и упоминал выше. Сервер для windows можно скачать на официальном сайте по этой ссылке: http://hexler.net/pub/touchosc/touchosc-bridge-1.0.1-win32.zip.
Устанавливаем его в телефон и на ПК, если все верно, то в системном трее на ПК появится иконка TouchOSC bridge (рис. 9).
Рисунок 9. Сервер TouchOSC Bridge установлен и запущен.
Обращаю внимание на то, что данная программа умеет работать не только по миди-протоколу, но и по протоколу OSC. Нас интересует в данном случае миди. Что касается соединения с компьютером - требования те же (см. выше). Теперь перейдем к настройкам TouchOSC на телефоне. При запуске программы сразу запускается окно настроек. Здесь мы кликаем на Midi Bridge (рис. 10) и вписываем ip-адрес нашего компьютера.
Рисунок 10. Настройки Touch OSC в телефоне.
Здесь есть одна сложность, с которой я очень долго промучился. Дело в том, что у меня телефон ни в какую не хотел показывать мой компьютер в списке Found Hosts. Там постоянно отображался 0. Несмотря на это, все заработало замечательно, так что не обращаем на это внимание и продолжаем. Переходим в Ableton.
В Ableton, как несложно догадаться, нам нужно выбрать миди-порт Touch OSC. На этот раз это собственный порт, который появляется в системе после установки сервера (рис. 11).
Рисунок 11. Настройки Touch OSC в Ableton.
Теперь можно пробовать мапить кнопки и регуляторы в Ableton, как указано выше. Аналогично можно использовать наш андроид-контроллер и в других секвенсорах.
Немного об интерфейсе и возможностях
Особых сложностей, как видим, не возникает. Лично для меня самой большой сложностью было законнектить компьютер с телефоном, и то, только в случае с TouchOSC. А что же они по сути нам предлагают в качестве контроллеров? Сразу скажу, что TouchOSC будет посильнее и в плане интерфейса, и в плане уже готовых раскладок.
Рисунок 12. Раскладка Keys в TouchOSC.
Здесь доступно 5 раскладок, в каждой из которых по 3 закладки. На рисунке 12, к примеру мы видим, что есть даже раскладка одной октавы пианино. Поддержка мультитача присутствует. Кроме того, в Touch OSC есть гораздо большее количество контроллеров – тут и клавиатура и всевозможные регуляторы, фейдеры, кроссфейдеры, X-Y-контроллеры. Finger Play, к сожалению, обладает всего несколькими типами контроллеров, клавиатуры нет. И раскладка у него всего лишь одна. Зато, в отличии от Touch OSC, здесь можно собственноручно, без проблем редактировать эти раскладки, создавать свои. Конечно, придется разобраться в синтаксисе, либо использовать онлайн-конструктор (https://dl.dropbox.com/u/1856630/fingerplay/index.html). Хотя он работает, мягко говоря, не очень хорошо. В Touch OSC загрузка раскладок доступна только для iPod, iPhone. Редактирование возможно и на windows. Хотя в сети есть способ как загрузить свою раскладку на андроид-устройство. Но метод довольно сложный.
Итог
Что ж, на данный момент обе программы со своими обязанностями вполне справляются. У каждой есть плюсы и минусы, но тем не менее, имея ноутбук, wi-fi и телефон на базе андроид можно успешно использовать телефон в качестве контроллера. Если же выбирать из этих программ, я все же отдаю предпочтение Touch OSC.
Farmatique, 12.03.2013
CJCity.ru
Jerry - А как же touchdaw
Dj Суровый - Долго мучился, мочился, но коннект сей получился.
Хоть я и суровый, но играю снова.
Трогайте экранчики, сильны будут пальчики.
Девочки и мальчики, предохраняйте одуванчики.
urit - Спасибо, очень интересно.
Александр - Спасибо за информацию)Очень интересно и всё работает)осталось разобраться как тот же кик при ударе на телефоне отзывался в программе)