Я тут решил, что пришло время продемонстрировать, на что способен MIDI-баян в его текущем состоянии.
Заодно и обкатаю Lusta Dick на публике.
Блог обо всём.
В предыдущей заметке я докладывал про увеличенную частоту измерения значений датчика давления. И чтобы лучше показать работу датчика я записал короткий ролик.
Обращать внимание нужно на управление громкостью с помощью меха. На мои кривые руки, не всегда попадающие в кнопки, внимания не обращать. 🙂
(ЖЖ почему-то не показывает встроенный видео-плеер. Поэтому идите на основной блог по ссылке ниже. Там всё показывает.)
Всё-таки для реалистичной работы датчика давления 40 измерений в секунду — это слишком мало.
Сегодня я провёл эксперимент и поставил 70 измерений в секунду.
И получилось хорошо. Появилась возможность делать действительно резкие акценты мехом. Темоло зазвучало по-другому. Ну и в целом работа мехом теперь очень похожа на «аналоговый» инструмент. Теперь я доволен. Так и оставлю.
Готово то, для чего придумывалась и реализовывалась возможность проигрывать в аккомпанементе не только ударные, но и мелодию.
Вот так это звучит через мой синтезатор:
Осталось доучить партию трубы (в правой) и баса (в левой). И, возможно, попробовать добавить второй голос в правую руку (но сокрее всего я это сразу не осилю).
Наконец я сделал то, ради чего менял движок для работы с управляющими кнопками.
Теперь у меня не 4 программируемых кнопки, а, типа, 12. Для каждой из 4-х физических кнопок можно программировать одиночное, двойное и тройное нажатие.
Вот демонстрация того, как это выглядит:
Мне нравится, как Alex Gyver реализует кнопочное управление своими самоделками. Минимум кнопок (обычно всего одна), максимум возможностей. За счет комбинирования многократных нажатий и удерживаний.
Тоже так хочу.
И на днях скачал себе библиотеку EncButton, реализующую всю эту красоту. Непосредственно её использовать мне оказалось неудобно, и я решил взять оттуда алгоритмы и реализовать всё самостоятельно.
И только я открыл редактор и начал лазить по коду, как что-то меня заставило прочитать документацию. И внезапно стало понятно, что я собрался ломиться в открытую дверь. Потому что всё, что мне надо, уже изложено в соответствующем разделе. И для наглядности даже сделана веб-симуляция, чтобы можно было всё понажимать и потрогать.
В результате (как это часто бывает) написать свой вариант управляющей кнопки оказалось проще и быстрее, чем прикручивать библиотечную реализацию.

Реализованы так называемые «сбивки» (то, что англоговорящие называют drum fills).
Так как моя ритм-машина проигрывает MIDI-файлы с карты памяти, сбивка — это тоже файл, записанный на ту же карту памяти с тем же именем, что и основной файл, но со специальным суффиксом к имени. В одновном MIDI файле есть спец-метка, которая определяет тот момент, когда должна начинать воспроизводиться сбивка. Как только файл сбивки проигран, возвращаемся к воспроизведению основного файла.
Всё примитивно просто.
Думал я, что реализация займёт значительно больше времени. Но оказалось, что работы там меньше, чем я думал.
Читать далее «Ритм-машина v2 — готова»