Как сделать андроид контроллер

Статьи / Софт

Я уверен, что многие из тех, кто пользуется компьютером в качестве музыкального инструмента, обладают миди-клавиатурами, либо миди-контроллерами. Это действительно удобно! Причем, даже если вы не выступаете вживую, то крутить ручки или, к примеру, сыграть партию «вживую» гораздо интересней и эффективней, чем писать ее в секвенсоре. Впрочем, эти устройства – дополнительная статья расходов, что не всегда по карману непрофессиональным музыкантам. Но, к счастью, разработчики софта улучшают и улучшают его. И на данный момент любой обладатель 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-адреса на компьютере
Рисунок 1. Установка статического IP-адреса на компьютере.

Как видим на рисунке, установлен статический адрес 192.168.1.57. Нам нужно будет запомнить этот адрес, он нам пригодится далее, в настройке программ на андроиде.

Во-вторых, должно быть установлено wi-fi соединение между компьютером и телефоном. Вариантов тут много. Лично у меня установлен обычный роутер wi-fi, со стандартными настройками, через него и соединяется компьютер и телефон. Возможны и другие варианты подключения напрямую телефона и компьютера через wi-fi, но это тема отдельной статьи. Предполагаем, что соединение между компьютером и телефоном существует. Теперь устанавливаем на телефон вышеуказанные программы и будем начинать.

FingerPlay MIDI

Первая пограмма – FingerPlay MIDI. Кроме основной программы в памяти телефона, она требует установки сервера на компьютере, для создания собственного канала, через который будут передаваться миди-сообщения в виртуальный порт (Midi-Yoke) на компьютере. Для начала настроим ее в телефоне. Запускаем ее, нажимаем на значке настроек (кнопка с шестеренкой) и попадаем во сделать вкладку Settings (рис. 2).

Рис.2. Настройки FingerPlay
Рисунок 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
Рисунок 3. Окно сервера FingerPlay.

Как видим, в статусе – Phone connected, что означает, что телефон подключен, а также отображается на какой выход приходят миди-сообщения (Midi-Yoke 1). Кроме того, в настройках на телефоне, мы можем выбрать другое виртуальное миди-устройство (рис. 4).

Рис.4. Выбор миди-устройства для вывода сообщений
Рисунок 4. Выбор миди-устройства для вывода сообщений.

Вот, собственно и вся подготовка. Теперь можно покрутить любой регулятор и в окне сервера появятся сообщения о том, какой параметр изменяется. Теперь самое время перейти в Ableton.

В Ableton нам достаточно выбрать то, миди-устройство, которое указано в FingerPlay (в нашем примере, Midi-Yoke 1) (рис. 5).

Рис.5. Включаем Midi-Yoke 1 в Ableton
Рисунок 5. Включаем Midi-Yoke 1 в Ableton.

Если все правильно, то теперь можно замапить разные контроллеры и кнопки. И касаясь экрана на телефоне, управлять параметрами в Ableton. Например, перейдем в раскладку (Layout) для микшера в FingerPlay (она занимает среднее положение на панели справа, см. рис.6).

Рис.6. Раскладка микшера в FingerPlay
Рисунок 6. Раскладка микшера в FingerPlay.

Теперь в Ableton нажимаем Ctrl+M, включается режим миди-маппинга. Нажимаем, к примеру, на регуляторе громкости первого канала в Ableton и касаемся первого регулятора на экране телефона. Если все правильно, в карте маппинга появится новая запись (рис. 7).

Рис.7. Новый параметр в карте миди-маппинга
Рисунок 7. Новый параметр в карте миди-маппинга.

Нажимаем Ctrl+M для возвращения в обычный режим. И теперь если мы касаемся первого регулятора на экране, у нас изменяется громкость на первом канале в Ableton! (рис. 8).

Рис.8. Регулятор на экране телефона управляет регулятором в Ableton
Рисунок 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 установлен и запущен
Рисунок 9. Сервер TouchOSC Bridge установлен и запущен.

Обращаю внимание на то, что данная программа умеет работать не только по миди-протоколу, но и по протоколу OSC. Нас интересует в данном случае миди. Что касается соединения с компьютером - требования те же (см. выше). Теперь перейдем к настройкам TouchOSC на телефоне. При запуске программы сразу запускается окно настроек. Здесь мы кликаем на Midi Bridge (рис. 10) и вписываем ip-адрес нашего компьютера.

Рис.10. Настройки Touch OSC в телефоне
Рисунок 10. Настройки Touch OSC в телефоне.

Здесь есть одна сложность, с которой я очень долго промучился. Дело в том, что у меня телефон ни в какую не хотел показывать мой компьютер в списке Found Hosts. Там постоянно отображался 0. Несмотря на это, все заработало замечательно, так что не обращаем на это внимание и продолжаем. Переходим в Ableton.

В Ableton, как несложно догадаться, нам нужно выбрать миди-порт Touch OSC. На этот раз это собственный порт, который появляется в системе после установки сервера (рис. 11).

Рис.11. Настройки Touch OSC в Ableton
Рисунок 11. Настройки Touch OSC в Ableton.

Теперь можно пробовать мапить кнопки и регуляторы в Ableton, как указано выше. Аналогично можно использовать наш андроид-контроллер и в других секвенсорах.

Немного об интерфейсе и возможностях

Особых сложностей, как видим, не возникает. Лично для меня самой большой сложностью было законнектить компьютер с телефоном, и то, только в случае с TouchOSC. А что же они по сути нам предлагают в качестве контроллеров? Сразу скажу, что TouchOSC будет посильнее и в плане интерфейса, и в плане уже готовых раскладок.

Рис.12. Раскладка Keys в 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


Закрыть ... [X]

Использование вместо контроллера телефона на Android ГЕОДЕЗИСТ От чего красный глаз после наращивания

Как сделать андроид контроллер Как сделать андроид контроллер Как сделать андроид контроллер Как сделать андроид контроллер Как сделать андроид контроллер Как сделать андроид контроллер Как сделать андроид контроллер