Оглавление:

Сделай сам Chewie Monsta Looper (по мотивам Эда Ширана): 7 шагов
Сделай сам Chewie Monsta Looper (по мотивам Эда Ширана): 7 шагов

Видео: Сделай сам Chewie Monsta Looper (по мотивам Эда Ширана): 7 шагов

Видео: Сделай сам Chewie Monsta Looper (по мотивам Эда Ширана): 7 шагов
Видео: Assassin's Creed Origins [Full Game Movie - All Cutscenes Longplay] Gameplay Walkthrough No Commenta 2024, Ноябрь
Anonim
Сделай сам Chewie Monsta Looper (по мотивам Эда Ширана)
Сделай сам Chewie Monsta Looper (по мотивам Эда Ширана)

Так что я слышал об Эде Ширане уже несколько лет и никогда особо не обращал на него внимания. Мне нравились некоторые из этих песен по радио, но я думал, что он просто еще один поп-исполнитель, пока я не сказал, что он исполняет «Shape of You» на Грэмми в 2017 году. Я был потрясен! Мне даже эта песня не понравилась, но смотреть, как он исполняет ее вживую со своей петлевой педалью, было завораживающе. Я поискал в Интернете информацию об этой педали и обнаружил, что там не так много информации. Наконец я нашел статью, в которой говорилось, что он был изготовлен на заказ Эдом и его гитарным техником, что разочаровало меня, пока я, наконец, не наткнулся на «edsutcliffe» (https://www.instructables.com/id/DIY-Chewie-Monst…).), в которой был «секретный соус» о том, как именно это работает. Я был взволнован и сразу приступил к работе. Однако, работая с инструкциями, я натолкнулся на несколько "ошибок", поэтому я написал это руководство. Страница Эдсутклиффа отлично описывает детали и то, как они сочетаются друг с другом. Мое намерение здесь - заполнить некоторые из пробелов, которые сводили меня с ума и стоили мне часов, если не дней, попыток решить проблемы. Поэтому, хотя я не собираюсь рассказывать вам шаг за шагом, как построить педаль петли (большинство из которых вы можете найти на странице edsutcliffe), я собираюсь провести вас через ключевые проблемы интеграции, которые меня беспокоили.

Шаг 1: педаль

Педаль
Педаль
Педаль
Педаль
Педаль
Педаль

Педаль кажется самой важной частью проекта, но сама по себе она - самая простая и прямая часть проекта. Мой совет - начать медленно, сначала создать грубый мокап и поэкспериментировать с ним. Я обнаружил, что до тех пор, пока вы действительно не начнете его использовать, трудно понять, чего вы хотите. Вы можете подумать, что трех треков достаточно, но, немного поиграв, вы можете обнаружить, что вам действительно нужен четвертый трек. Поменять его позже - не самое легкое дело. Даже когда я создавал свою вторую версию педали, я ходил туда-сюда по поводу добавления кнопки «UNDO», но отказался от этого. Позже я обнаружил, что это действительно полезно, но я не оставил для этого достаточно места. В итоге мне пришлось уйти от "программистов" и в многозадачном режиме нажать кнопку CLEAR. Теперь у меня так, что короткое нажатие запускает UNDO, а долгое нажатие запускает CLEAR.

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

На Amazon есть много вариантов, но те, которые я использовал, приведены ниже.

  • Педальный переключатель
  • Чехлы для ногтей

Педаль

Шаг 2: Arduino

Ардуино
Ардуино
Ардуино
Ардуино

В инструкциях, вместо того, чтобы говорить вам просто о произведенной плате Arduino, он перечисляет каждый компонент, а вы создаете свой собственный. На мой взгляд, это смешно, учитывая, что плата производителя в Интернете стоит ~ 10 долларов, так что сделайте себе одолжение и просто сделайте это.

www.amazon.com/Elegoo-EL-CB-001-ATmega328P…

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

Основы

  • Педаль имеет 8 кнопок и 2 светодиода.
  • Нажатие кнопки отправляет командное сообщение MIDI от Arduino.
  • Кнопки (пока я описываю функцию каждой кнопки, сам код Arduino не делает ничего, кроме отправки MIDI-команды. MIDI-команда должна быть привязана к сценарию в Mobius, который будет рассмотрен позже)
  • Кнопки состоят из двух групп

    • Global = отправляет одну и ту же MIDI-команду независимо от режима
    • На основе режима = отправка различных MIDI-команд в зависимости от режима
  • На основе режима:

    • MODE = эта кнопка изменяет «режим» педали (запись / воспроизведение / регулировка громкости)

      • Короткое нажатие переключает между режимами записи и воспроизведения.
      • Длительное нажатие (более 1 секунды) переходит в режим регулировки громкости.
    • ЗАПИСЬ / ВОСПРОИЗВЕДЕНИЕ

      • В режиме ЗАПИСИ = В режиме СБРОС он запустит цикл и закроет его при следующем нажатии и перейдет в режим наложения. После этого происходит переключение между воспроизведением и наложением текущей дорожки.
      • В режиме воспроизведения = включает и перезапускает все треки
    • X / СТОП

      • В режиме записи = применяет функцию «мгновенного умножения» к текущей дорожке.
      • В режиме воспроизведения = выключить и приостановить все треки
    • ДОРОЖКИ 1/2/3

      • В режиме ЗАПИСИ = В режиме СБРОС он запустит цикл и закроет его при следующем нажатии и перейдет в режим воспроизведения. После этого происходит переключение между воспроизведением и наложением выбранной дорожки.
      • В режиме воспроизведения = переключение между отключением звука и воспроизведением
      • В режиме регулировки громкости = дорожка 2 циклически переключает дорожки, дорожка 1 уменьшает выходной уровень (громкость) текущей дорожки на 5, дорожка 3 увеличивает выходной уровень текущей дорожки на 5.
  • Глобальный

    • СБРОС = применяет функцию «Общий сброс»
    • ЧИСТО

      • Короткое нажатие (<1000 мс) применяет функцию "UNDO" к текущей дорожке.
      • Длительное нажатие (> = 1000 мс) применяет функцию «ОЧИСТИТЬ» к текущей дорожке.
  • Светодиоды

    • Светодиод REC = красный, горит в режиме записи.
    • Светодиод VOL = синий, горит в режиме регулировки громкости.
  • Булавки

    • ЗАПИСЬ / ВОСПРОИЗВЕДЕНИЕ = контакт 3
    • СБРОС = контакт 4
    • X / STOP = контакт 5
    • CLEAR = контакт 6
    • ДОРОЖКА 1 = контакт 7
    • ДОРОЖКА 2 = контакт 8
    • ДОРОЖКА 3 = контакт 9
    • MODE = контакт 10
    • Светодиод REC = контакт 11
    • VOL LED = контакт 12

Примечание: друг сообщества Клаудио внес некоторые изменения в эскиз и поделился им с нами. Спасибо, Клаудио!

Шаг 3: MIDI-интерфейс

MIDI интерфейс
MIDI интерфейс
MIDI интерфейс
MIDI интерфейс

Я чувствую, что эта область не была охвачена очень четко в другом руководстве. В основном, как обсуждалось в разделе Arduino, педаль и Arduino просто выводят MIDI-команду на основе нажатой кнопки. Для использования вам необходимо отправить MIDI на ПК, на котором запущен Mobius. Я нашел 3 способа сделать это, и это зависит от типа аудиоинтерфейса, который вы покупаете (еще больше).

  1. Вариант 1. В зависимости от того, какой аудиоинтерфейс вы покупаете, некоторые из них имеют встроенные порты ввода / вывода MIDI. В этом случае вы можете просто следовать инструкциям и вытащить последовательный канал на Arduino и подключить его к порту MIDI In. Затем вы сможете выбрать его в качестве источника MIDI-контроллера позже, когда настроите Mobius.
  2. Вариант 2. В моем аудиоинтерфейсе не было встроенного MIDI-порта, поэтому это было проблемой. Поэтому я сначала вытащил последовательный канал, как в варианте 1, и купил отдельный адаптер MIDI-USB. Хотя это сработало, я обнаружил, что это неуклюже и ненадежно. К тому же я был расстроен, потому что это было третье USB-соединение, а на моем компьютере их было только два. Я мог отсоединить кабель от Arduino, который я использовал для питания и отладки, но это означало, что мне понадобится внешний источник питания для него.
  3. Вариант 3 - я не понимал, почему я не могу получать MIDI-команды через USB-соединение и иметь такое же подключение к Arduino. Я знал, что должен быть способ. После долгих поисков в Интернете я наконец нашел способ использовать два бесплатных приложения.

    • loopMIDI - это бесплатное приложение с ироничным названием позволяет создавать «виртуальный» MIDI-порт на вашем ПК. Все, что вам нужно сделать, это установить его и определить виртуальный порт MIDI Out, и все. Он будет запускаться автоматически при загрузке.
    • Безволосый MIDI - эта программа позволяет вам создать «последовательный мост», чтобы вы могли сопоставить последовательный COM-порт, используемый для программирования вашего Arduino, с виртуальным MIDI-портом, который вы только что создали с помощью loopMIDI. И Whalla! Теперь вам нужно только одно USB-соединение от ПК к Arduino.
    • ПРИМЕЧАНИЕ. Если вы выберете вариант 3, вам необходимо убедиться, что в коде Arduino для скорости передачи последовательного канала установлено значение 38400 вместо стандартного 31250, используемого MIDI.
    • // Устанавливаем скорость передачи MIDI:
    • //Serial.begin(31250);
    • // Устанавливаем скорость передачи 38400 для MIDI без волос
    • Серийный.начало (38400)

Шаг 4: аудиоинтерфейс

Аудио интерфейс
Аудио интерфейс

Так что это, вероятно, самый важный компонент, который вам придется выбрать. Поскольку низкая стоимость была для меня ключевым фактором, я искал недорогой аудиоинтерфейс. В итоге я остановился на BEHRINGER U-PHORIA UM2 (https://www.amazon.com/Behringer-UM2-BEHRINGER-UP…), потому что он был дешевым и имел 2 входных канала и 2 выходных канала, что мне было все, что мне нужно.. Есть много вариантов, но позже они могут немного изменить настройку Mobius.

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

Я действительно думал, что это будет просто, но это оказалось самой сложной проблемой для меня, и я почти отказался от проекта. Когда вы впервые подключаете его к компьютеру, Windows автоматически устанавливает драйвер, и вы думаете, что все настроено, не так ли? Неправильный. После того, как я впервые настроил его и начал записывать треки, я обнаружил, что задержка была настолько плохой (более секунды), что педаль была практически непригодной для использования. Я должен был делать что-то не так. Опять же, после тонны поисков в Интернете я обнаружил проблему. Windows установит драйвер MME по умолчанию для аудиоинтерфейса. Драйверы MME имеют очень высокую задержку и не подходят для записи в реальном времени. Мне пришлось зайти на сайт Behringer и найти драйвер ASIO для моего конкретного интерфейса. Драйверы ASIO специально разработаны для минимизации задержки, которая вам здесь нужна. После установки этого драйвера задержка записи не была обнаружена даже человеческим ухом. Итак, вывод здесь заключается в том, что какой бы аудиоинтерфейс вы ни использовали, убедитесь, что вы получили драйвер ASIO от производителя и избавите себя от головной боли, которую я испытал.

Шаг 5: Мебиус

Мебиус
Мебиус
Мебиус
Мебиус

Посмотрим правде в глаза, без Mobius все, что у нас есть до сих пор, - это педальная плата MIDI-контроллера. Mobius - это бесплатная программа, созданная Circular Labs (https://www.circularlabs.com/), которая выполняет всю запись и зацикливание. Это действительно потрясающая программа. При этом документации от Circular Lab, которую я обнаружил, очень не хватало. После установки вы получите окно с 8 дорожками и множеством кнопок, счетчиков и счетчиков. Мне потребовалось время, чтобы понять, как перемещаться по графическому интерфейсу и настраивать его под свои нужды. К счастью, я нашел видео на YouTube, опубликованное edsutcliffe, которое шаг за шагом проведет вас через настройку.

После этого единственной частью настройки, с которой у меня были проблемы, было сопоставление определенного входного канала с определенной дорожкой. В видео используется 4-канальный интерфейс, и каждый канал отображается в Mobius независимо. Интерфейс UM2, который я использовал, фактически использует один стереоканал и независимо использует правый и левый каналы. Таким образом, я вижу только 1 «канал» в Mobius, но я могу отобразить один канал, перемещая настройку «Панорама» до упора влево или вправо. Итак, у меня есть дорожки 1 и 2 с панорамированием вправо, так что записывается только канал 2 (инструмент). Затем для трека 3 я оставил панораму посередине, чтобы я мог записать на него микрофон или гитару. Если я хочу записать только микрофон, я бы полностью перешел на левый канал.

Шаг 6: скрипты Мебиуса и привязки MIDI

Скрипты Мебиуса и привязки MIDI
Скрипты Мебиуса и привязки MIDI

Последний кусок головоломки - это скрипты Мебиуса и привязки MIDI. Несмотря на то, что я очень хорошо знаком с компьютерным программированием, я обнаружил, что язык сценариев Mobius немного сбивает с толку и плохо документирован. Мне потребовалось много времени и много настроек, чтобы получить их так, как я хотел, но, в конце концов, они работают для того, что мне нужно. Шаги по привязке скриптов к командам MIDI в Mobius подробно описаны в видео на YouTube в шаге 5.

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

Шаг 7: Версия 1.5

Версия 1.5
Версия 1.5
Версия 1.5
Версия 1.5
Версия 1.5
Версия 1.5
Версия 1.5
Версия 1.5

Поэтому, проработав педаль почти два года, я решил, что хочу немного изменить ее работу. Я сталкивался с некоторыми случаями, когда функция «ВОСПРОИЗВЕДЕНИЕ ВСЕХ» усложняла задачу. Часто у меня отключили трек, и я хочу остановить весь трек и просто перезапустить два трека, которые там играли. При текущей операции все три трека перезапустились бы, и мне пришлось бы быстро отключить ненужный трек. К сожалению, мне не удалось найти хороший способ сделать это в Mobius. Для этого мне пришлось сделать это внутри кода Arduino. Помните, что педаль и код Arduino были в значительной степени «тупыми». Он отправлял MIDI-команду только при нажатии педали, а скрипты Мебиуса сделали все остальное. С этим изменением я в основном переместил весь интеллект воспроизведения в код Arduino и отслеживал состояния каждой отдельной дорожки. Так что в итоге получилось почти полностью переписать код Arduino. Я даже закончил создание небольшой отладочной педали для разработки и тестирования нового кода. Если вас интересует мой новый метод, читайте дальше, иначе функции, описанные выше, будут работать нормально.

Для того, чтобы «PLAY ALL» работал так, как я хотел, мне пришлось добавить новое состояние к каждому треку с помощью «ARM». Раньше в режиме PLAY нажатие педали трека переключало режим MUTE и PLAY. Теперь нажатие на педаль перейдет от PLAY к MUTE, а затем переключится между ARM и MUTE. Звук трека не будет включен, пока он не будет в состоянии ARM, а затем будет нажата педаль PLAY. Когда нажата педаль STOP, все треки в PLAY переводятся в режим ARM, и только они будут перезапущены при нажатии PLAY. Проблема в том, что в Mobius нет индикации относительно состояния ARM. Чтобы решить эту проблему, я добавил трехцветный светодиод к каждой дорожке, где MUTE выключен, PLAY - зеленый, REC / OVERDUB - красный, а ARM - желтый.

Теперь, делая это, я совершил «головокружительную» ошибку. У моего Arduino UNO не было достаточно цифровых входов / выходов для управления новыми светодиодами, поэтому я обновился до Arduino Mega (https://www.amazon.com/gp/product/B01H4ZLZLQ/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1). Таким образом, опубликованный код использует для него расположение контактов вместо UNO. Позже я понял, что мог переместить 6 педалей на аналоговые входы, а затем использовать цифровые сигналы для управления светодиодами. Мой код можно легко изменить, чтобы он работал таким образом, и если будет достаточно интереса, я даже сделаю это сам и опубликую. Однако Mega всего на 5 долларов больше, чем UNO, и дает вам на 32 ввода / вывода больше, так что я не думаю, что это имеет большое значение.

Последнее, о чем я хочу поговорить, это сами светодиоды треков. Я использовал их от Amazon (https://www.amazon.com/gp/product/B077XBMJFZ/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1). Я назвал их «трехцветными» светодиодами, но если вы их поищете, они будут «двухцветными». Это потому, что они содержат только два светодиода, зеленый и красный. Однако, включив их одновременно, вы получите желтый цвет. Также имейте в виду, что, поскольку они являются «общим анодом» и что вы подаете 5 В на общий вывод и должны подключить вывод Arduino к катоду. Это делает светодиоды «активными при низком уровне», поэтому они будут выключены, когда на выводе Arduino высокий уровень, и горят, когда он низкий. Если вы покупаете разные светодиоды, которые не являются общими анодами, тогда код Arduino не будет работать так, как написано, но его можно легко адаптировать. Наконец, я потратил много времени на настройку номиналов резисторов, пока не смог получить желаемый цвет. Зеленый цвет ярче красного, поэтому я использую резистор 1 кОм, чтобы уменьшить его яркость. Другой вариант - подключить светодиоды к цифровым каналам ШИМ и регулировать яркость с помощью функции analogWrite (pin, value).

К вашему сведению - очевидно, Instructables.com больше не позволяет пользователям загружать файлы.zip, поэтому я поместил все скрипты и код aurduino в github. Пожалуйста, получите доступ к нему здесь.

github.com/mjoseph81/loop_pedal_public

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

Рекомендуемые: