Midi клавиатура своими руками – , . — , .

Как сделать удобный синтезатор своими руками / Habr

В детстве у меня было пианино, такое настоящее, советское, киллограм на 300. Мне нравилось на нем бренчать, а после окончания музыкальной школы даже кое-что играть. Пианино — это классно, аутентично, но совершенно не практично. А чтобы совсем прям для души, нужна еще и барабанная установка, пяток примочек к электрогитаре, кларнет, ситар и сэмпловые лупы…

Конечно, сейчас уже не нужно из квартиры делать гараж-студию на заначку в шесть зарплат, достаточно установить на ПК бесплатный музыкальный редактор. Но, неудобно это все.

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

Синтезатор ведь что из себя представляет? Большое устройство, с музыкальной клавиатурой, которое где-то должно занимать прилично места. В которое встроена акустика, а ведь у меня уже есть ресивер с колонками. В которое встроен плохенький ПК, а ведь у меня есть хороший ПК.

Получается, что за 40 тысяч я покупаю то, что у меня уже есть в лучшем качестве, за исключением лишь клавиатуры. Это просто какой-то максимум нерациональных расходов.

В поисках отдельной клавиатуры я набрел на такой класс устройств как USB MIDI Keyboard.

Мне всегда казалось, что MIDI это из области профессиональной музыкальной деятельности.

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

Вот оно!

В голове сразу сложился план. Подключаем MIDI-клавиатуру к домашнему медиацентру на базе Raspberry Pi 3, где крутится программный синтезатор, позволяя в любое время любому желающему исполнить свой очередной шедевр. На таких MIDI-клавиатурах как правило есть набор регуляторов и дополнительных кнопок, которые программируются на различные эффекты или дополнительные музыкальные инструменты. Выглядит и звучит это очень круто!

Есть устройства побольше и поменьше, есть подороже и чуть дешевле. Я выбрал вариант за примерно 5 тыр. У него две октавы, нормального размера клавиши, кнопки для ударников, ручки настройки, то есть все, о чем может мечтать начинающий музыкант-электронщик.

Я не спец в создании музыки на ПК, поэтому было сложно искать пути реализации своей задумки. Информацию приходилось собирать по крупицам. Пазл постепенно стал складываться и получилось собрать работающее решение, которым с вами и делюсь. Как ни странно, но в стандартном дистрибутиве Raspbian/Debian нашлось все что нужно, даже не пришлось подключать внешние репозитории.

В качестве секвенсера (приложения, воспроизводящего MIDI-файлы) используется fluidsynth.

MIDI-клавиатура сразу обнаруживается через ALSA и доступна для подключения к секвенсеру.

Для воспроизведения звуков различных инструментов используются открытые базы сэмплов в формате SoundFont2. Для начала установим это все.

sudo -s
apt-get update
apt-get -y install alsa-utils fluid-soundfont-gm fluidsynth

Подключаем MIDI-клавиатуру к Raspberry и запускаем секвенсер в режиме сервера:

fluidsynth -i -s -a alsa -g 3 /usr/share/sounds/sf2/FluidR3_GM.sf2

Выполняем команду:

aconnect -o

В результате мы увидим список доступных MIDI-клиентов:

client 14: 'Midi Through' [type=kernel]
    0 'Midi Through Port-0'
client 20: 'VMini' [type=kernel]
    0 'VMini MIDI 1    '
    1 'VMini MIDI 2    '
client 128: 'FLUID Synth (1628)' [type=user]
    0 'Synth input port (1628:0)'

Здесь нам важно запомнить номера клиентов клавиатуры и секвенсера, чтобы затем соединить их командой:

aconnect 20:0 128:0

Теперь у нас все готово для игры на Yamaha Piano (это дефолтный инструмент). Почитайте мануал по fluidsynth, там есть много интересных команд, например, чтобы сменить инструмент на ударники или духовые, задать величину реверберации или хоруса.

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

cat > /etc/init.d/fluidsynth << EOF
#!/bin/bash
 
### BEGIN INIT INFO
# Provides:          fluidsynth
# Required-Start:    $all
# Required-Stop:     
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Fluidsynth deamon to play via MIDI-keyboard
### END INIT INFO

startDaemon() {
      sleep 30s && fluidsynth -i -s -a alsa -g 3 --load-config=/home/osmc/midi-router >/var/log/fluidsynth &
      sleep 60s && aconnect 20:0 128:0 &
}

stopDaemon() {
    pkill -9 fluidsynth &> /dev/null
}

restartDaemon() {
    stopDaemon
    startDaemon
}

case "$1" in
    start)
        startDaemon
        ;;
    stop)
        stopDaemon
        ;;
    restart)
        restartDaemon
        ;;
    status)
        ;;
    *)
        startDaemon
esac
exit 0
EOF

Регистрируем демон для автозапуска:

chmod 755 /etc/init.d/fluidsynth
update-rc.d fluidsynth defaults

Обратите внимание, теперь при старте секвенсеру передается конфигурационный файл (/home/osmc/midi-router), содержащий команды, превращающие нашу клавиатуру в настоящий синтезатор.

Тут дело вот в чем. Каждая клавиша и крутилка на клавиатуре посылает определенные события, со своим номером. Я так понял тут особенных стандартов нет, так что каждый производитель творит что хочет. Например, я хочу чтобы квадратные клавиши звучали ударными, остальные клавиши звучали пианино, ручки управляли громкостью, реверберацией и хорусом.

Так вот, мне необходимо замэпить коды событий от клавиатуры на разные инструменты, а коды от ручек на коды, которые понимает секвенсер. В fluidsynth это делается при помощи router. Именно эти команды и содержатся в конфигурационном файле.

Вот пример моего конфигурационного файла, с комментариями того, что он делает.

cat > /home/osmc/midi-router << EOF
# загружаем стандартные инструменты и ударники, найденные где-то на просторах Сети
load /usr/share/sounds/sf2/FluidR3_GM.sf2
load /home/osmc/241-Drums.SF2
# связываем инструмент каждый со своим каналом
select 1 2 128 0
select 2 1 0 0
# по умолчанию звук идет на канал 0
# перенаправляем события с квадратных клавиш на канал с ударными
router_begin note
router_chan 0 0 0 1
router_par1 36 48 1 0
router_end
# события с остальных клавиш перенаправляем на канал с пианино
router_begin note
router_chan 0 0 0 2
router_par1 0 35 1 0
router_end
router_begin note
router_chan 0 0 0 2
router_par1 49 255 1 0
router_end
# события с ручек мэпим на события, которые понимает секвенсер,
# полный их список есть в документации на сайте fluidsynth
router_begin cc 
router_chan 0 0 0 2
router_par1 14 14 0 98
router_end
router_begin cc 
router_chan 0 0 0 2
router_par1 15 15 0 11
router_end
router_begin cc 
router_chan 0 0 0 2
router_par1 16 16 0 91
router_end
router_begin cc 
router_chan 0 0 0 2
router_par1 17 17 0 93
router_end
# выключаем громкость на канале 0, 
# иначе при нажатии на клавишу 
# разные инструменты будут звучать одновременнно
cc 0 7 0
EOF

Чтобы узнать какие коды генерирует именно ваше устройство, необходимо воспользоваться этой утилитой:

aseqdump -p 20:0

Она слушает и выводит на консоль события с MIDI-клавиатуры. Нажмите кнопку или покрутите ручку и вы увидите тип, канал и код события. Вы можете запрограммировать свою клавиатуру таким образом, каким захотите, а не так, как это придумали инженеры, разработавшие конкретный синтезатор. За что большое спасибо разработчикам fluidsynth, alsa, SoundFont2, Raspberry и V-Mini.

Кстати, эта тема с DIY-синтезаторами нашла отражение в нескольких изобретениях, рекомендую к изучению: раз и два.

habr.com

Как сделать midi клавиатуру 🚩 миди клавиатура самодельная 🚩 Электроника

Вам понадобится

  • — компьютерная клавиатура;
  • — неработающий синтезатор/электропианино;
  • — паяльник.

Инструкция

Воспользуйтесь специальной программой, чтобы сделать миди-клавиатуру из обычной компьютерной. Например, FL studio, Bome’s Mouse Keyboard, Virtual_MIDI_Keyboard. Скачайте приложение Virtual midi piano, для этого перейдите по ссылке vmpk.sourceforge.net. Данная программа позволит переназначить клавиши сделанной вами клавиатуры, чтобы использовать ее как миди.

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

Возьмите ненужную компьютерную клавиатуру, она должна быть рабочей и иметь выход USB. Это необходимо для одновременной работы компьютерной клавиатуры и миди. Разберите ее, вы увидите, что в момент нажатия кнопки на разных «пленочках» замыкается два контакта, это начинается от платы, которая, в свою очередь, тоже имеет две стороны с контактами. На листик бумаги перепишите, какие контакты соответствуют каким кнопкам. Идите по порядку расположения клавиш, чтобы не запутаться.

Припаяйте к каждому контакту платы проводок длиной 15-25 сантиметров с оголенным концом. Это необходимо, чтобы не паять провода от клавиш пианино к плате, так как там немного места, и проще будет их скрутить. Возьмите клавиши от пианино, припаяйте к каждому контакту клавиши по проводку. Вы получите в результате ряд клавиш с щетиной.

Возьмите листок со схемой и скрутите провода от пианино с проводами от компьютерной клавиатуры. Откройте приложение Virtual midi piano и перейдите во вкладку «Правка», выберите пункт «Привязка клавиш» и по очереди назначьте нужные кнопки. Выйдите из программы. Создание midi-клавиатуры завершено.

www.kakprosto.ru

Как использовать клавиатуру компьютера в качества midi-устройства?

Думаю, что те, кто пытался работать со звуком на компьютере, наверняка слышали о таких устройствах, как midi-контроллеры. Да и многие люди, далёкие от создания музыки имели возможность лицезреть артистов на выступлениях с разнообразными «крутилками» и «нажималками» за баснословную цену. Как же заиметь такую полезную штуку, не потратив ни копейки? Достойный вариант – это самодельная MIDI-клавиатура.

Небольшой ликбез по миди-конроллерам

Midi-контроллер (от английской аббревиатуры “MIDI” – обозначение интерфейса, используемого в программах) – устройство, позволяющее расширить возможности компьютера в плане midi-коммуникации.

Что позволяют делать данные устройства?

MIDI-контроллеры позволяют взаимодействовать как с программой создания и записи музыки (секвенсором, трекером и т.п.), так и коммутировать софт с внешними аппаратными модулями. Под последним понимаются различного вида клавиши, пульты, механические микшеры, тачпады.

Главная проблема данного класса «примочек», для начинающего музыканта, состоит в их высокой цене: средняя стоимость полноценного нового клавишного MIDI-инструмента составляет 7 тысяч. Сумма, конечно, смешная, если вы где-то работаете и неплохо зарабатываете. (Ведь в России зарплата на душу населения составляет 28 тысяч, считая рабочим населением младенцев и пенсионеров).

Но если вы, к примеру, студент, то для вас такой ценник будет «кусачим». Из-за этого аспекта, использование самодельной MIDI-клавиатуры становится оптимальным решением проблемы.

Что нужно делать, чтобы у вас появилась самодельная миди-клавиатура?

Начнем с того, что на вашем компьютере должен быть установлен секвенсор. (Все нюансы будут рассмотрены на примере секвенсора Fl Studio и программы-эмулятора Vanilin MIDI Keyboard – одной из самых популярных в своем классе).

  1. Вам нужно скачать и установить  Vanilin MIDI Keyboard. Найти программу можно на её официальном сайте.
  2. Допустим, что вы уже установили это (или подобное) приложение, теперь вернитесь на рабочий стол – там должен появиться ярлык. С помощью этого ярлыка запускаете эмулятор и заходите в настройки.
  3. Если на компьютере стоит стандартная  звуковая карта, встроенная в чипсет, то после клика на пункт меню «Device» вы должны увидеть два подпункта: «Устройство переназначения MIDI» и «Программный синтезатор звуковой». Кликните на «Устройство переназначения MIDI».
  4. Сверните программу. В правом нижнем углу панели задач (где-то рядом с часами) должен появиться уже знакомый вам значок программы.
  5. Запустите секвенсор. Выберите меню опций («Options») и кликните на подпункт настроек MIDI («MIDI settings»)
  6. В строке выходов MIDI («Output») выберите «Устройство переназначения MIDI»

После того, как переделаете все эти нехитрые действия, создайте какой-нибудь инструмент и попробуйте нажать на любую буквенную клавишу клавиатуры. Если вы сделали все правильно и не установили пустой (или мьютированный) инструмент, то вы должны услышать звук.

Все, теперь у вас в руках настоящий клавишный инструмент! Теперь вы сможете не только видеть и слушать звук, но и ощущать прикосновения к клавишам вашего собственного фортепиано.

Автор – Власов Сим Азек

music-education.ru

USB Footswitch или как сделать из обычной клавиатуры MIDI контроллер…

В основном статья рассчитана на гитарастов и иже с ними, так как мало кому необходим ножной контроллер, включил доп клаву, забиндил клавиши и вперед. Хотя может вот для диджеев такое управление вполне уместно. Но лучше всего оно подходит для Guitar Rig и Th2. В общем сегодня мы будем собирать нечто похожее на:

И так, для начала необходимо собрать необходимые запчасти. Вот их небольшой список:

— Корпус. Первое и самое основное что требуется, сложно найти подходящее. Я прикупил для этого дела чехол для кия.
— USB клавиатура, желательно не очень древняя, ибо возможно распайка не подойдет.
— Клавиши (те, что я подобрал): PBS-16B (ФУТЫ), SPA-101B4 (ДОПЫ), PBS-15B push ON (ВКЛ). Все без фиксации. Приобрести можно в Чип и Дипе.
— Провода. Много одножильных. Я думаю для этого лучше всего подойдет витая пара. 2х метров за глаза. Только разматывать неудобно.
— Ну и паяльник думаю почти у каждого найдется, кто решил собирать сей девайс.
— Инструменты для проделывания отверстий в корпусе. Кто чем горазд, можно хоть саморезом, а потом править ножом, но опять же думаю у всех найдется дрель.

Ну что ж, приступим. Первое что необходимо сделать это наметить и просверлить отверстия в корпусе:

Далее вставляем и закрепляем клавиши. С эти проблем возникнуть не должно вообще.

Теперь приступим к более вредной части изготовления нашего футсвича. Паяем провода в соответствии с схемой, не забываем на входа с клавы вешать опознавательные листки с номерами входов:

Должно получится что-то типа этого:

Сейчас начнется очень ювелирный процесс по пайке к контроллеру от УСБ клавиатуры. Замечу, если вам повезло купить/найти/отнять клавиатуру с таким контроллером, как на прикрепленной выше схеме, то без паяльной станции не обойтись. Прикрепить к корпусу плату можно почти любыми подручными средствами, жидкие гвозди, саморезы, суперклей, силикон, да и вообще если пинать сильно не будите, то и так держится, но зависит от корпуса, витая пара плотно прижимает плату.

Делаем косметические улучшения, кто захочет, припаяет диод на корпус от NUB LOCK’а… Сделает отверстие под провод и перепротянет USB кабель. Ну а там, на что уж фантазии хватит. Конечный результат:

Фаза 2. Настройка программного обеспечения. Надеюсь это для каждого изготовившего сей девайс не станет проблемой. Для Guitar Rig делается все проще некуда, включаем NUM Lock, включаем ригу, открываем OPTIONS — CONTROLLER, нажимаем MENU, ищем необходимое действие, кикаем на клавишу Learn и выбираем подходящую кнопку на нашем контроллере. Затем нажимаем на Add Controller и проводим снова те же операции. И так пока не наберем все что необходимо или не закончатся клавиши. Так же можно назначить клавишу на почти любое действие в 3ей риге, нажимаем правой кнопкой мыши на объект и жамкаем снова на Learn.

А вот теперь если есть интерес настроить все это детище на Midi команды, то придется еще немного развлечься.
Значит нам необходимо ПО, которое биндит клавиши на миди команды. И такая программуля есть, правда аналогов не встречал, благо лечить от жадности не нужно. Называется Virtual Midi Controller, настраивается действие по клавише во вкладке C IN, установка — Setup — Далее — Далее. Вот ссылка.

Вместе с ней ставиться и виртуальный MIDI кабель, так что лишних телодвижений делать не придется. Для совсем ленивых выкладываю предустановку банка для футсвича: банк — им следует заменить файл в корне папки с программой, по умолчанию C:\Program Files\Virtual Midi Controller\ , предварительно выйдя из VMC. Для удобства в SETUP поставить галку Run In Background и в основном окне VMC ткнуть на букву К, после чего принимать команды прога будет и в свернутом режиме. Теперь для выхода из проги требуется ликвидировать ее в трее. И вот начиная с этой минуты вы сможете управлять и Nuendo и Sonar с футсвича. Ну и естественно Th2 тоже через миди хватает нашу клаву.

Будут вопросы, обращайтесь…

Следующий задуманные проекты:
— Экранирование гитары.
— Комбик своими руками.

Успехов Вам в муздеятельности…

neerlin.livejournal.com

Дешевый способ сделать звук с клавиатуры MIDI, без ПК

Во-первых, есть ли у вашей клавиатуры USB разъемы MIDI out (DIN) … … или это только USB?

Если это только USB, то можно получить аппаратный преобразователь (от USB до традиционного MIDI MIDI), который должен работать, пока клавиатура USB Midi является «совместимой с классом». Примером является http://www.kentonuk.com/products/items/utilities/usb-host.shtml .

Если у вас есть традиционное (DIN) MIDI-соединение, вы сможете использовать любой Midi-звуковой модуль. Много лет назад эти блоки были наиболее привычными для использования с миди-клавиатурой — часто с промежуточным секвенсором на компьютере. Эти модули также иногда называют «расширителями».

Вы хотите обратить внимание на тип, который вы получаете. Многие современные аппаратные миди-модули представляют собой синтезаторы в аналоговом стиле, которые продаются с пользой от физического контроля, при этом предполагается, что в наши дни люди будут получать звуки «хлеба с маслом» (фортепиано, струны и т. Д.) Со своих компьютеров. Эти звуки аналогового стиля могут быть именно тем, что вы хотите, но даже в этом случае вы можете быть осторожны, чтобы не выбрать что-то с полифонией, которая слишком ограничена для того, что вы хотите играть.

Может случиться так, что взгляд на секонд-хенд даст вам что-то ближе к тому, что вам нужно. Вот некоторые примеры (чисто примеры, а не рекомендации) старых модулей ‘Sample + Synthesis’, которые должны иметь выбор звуков для глушения:

Roland JV-1080:

Корг X5DR:

Конечно, при покупке чего-то, что может быть 20 или более лет, вы должны учитывать, что надежность может быть проблемой, прежде чем положить свои деньги.

askentire.net