Drumlabooh | Драмлабух: ABOUT

🥁 Home | Главная 🥁 About | Инфа 🥁 Install | Скачать 🥁 Manual | Руководство 🥁 Donate | Донат 🥁 Github🥁

screen shot
Video on Youtube

В комплекте с Drumlabooh идет несколько десятков драмкитов, подходящих под разные стили музыки. Вот как звучат некоторые из них.
Drumlabooh comes with several dozen drum kits suitable for various music styles. Here's how some of them sound.

Jazzkit

Dry

With Dragonfly reverb

Sixties Basic

Dry

With Dragonfly reverb

Features

* DAW Compatibility
* Linux LV2/VST3i, Windows VST3i plugin format
* Supported sample drumkit formats: Drumlabooh, Hydrogen, SFZ, and simple directories with samples
* Bundled with high quality drumkits designed after legendary acoustic drums and drum machines
* Stereo (with built-in mixer) or multi (36 channels) output
* Built-in mixer with Pan, Volume, mute controls and Pan mode option
* FX for each instrument slot: LP, HP resonance filters and Analog knob to make the sound warmer (per-instrument or/and for the whole mix)
* Up to 36 instrument slots with layers (max 127 layers)
* Layer change by MIDI velocity, Round Robin or Random order
* Multi single-shot samples per slot
* Automatic open hihat mute on hihat close
* Kit-defined (user-defined) mute groups
* Drumkit image (if provided) at plugin window
* Flexible MIDI mapping modes
* Written in C++, based on JUCE toolkit

Some history

Drumlabooh was written as a replacement for Drumrox, my fork of DrMr (see Nicklan’s DrMr and Filipe Coelho’s fork).

DrMr is a cool C/GTK+2 LV2 plugin that I used for years, but then it stopped supporting the current Hydrogen drumkit format. At first, I "fixed" the kit XML files manually, and at some point I made a fork of DrMr called Drumrox and fixed Hydrogen kit format reader at the XML parsing level.

It was in the spring of 2023.

C is not my favorite language, so I converted the codebase to C++ and wrote a new drumkit loader using the PugiXML parser. Soon SFZ and my own simple kit format were added. I also replaced the note on/off LEDs with clickable buttons and redesigned the window a bit, but I still didn’t feel comfortable with the old code - I didn’t understand some parts of it. I also found the LV2 documentation too obscure for me. Alas!

After upgrading my PC, I noticed that Ardour could record MIDI events with some pre-delay (or negative shift). I read about this bug, and it didn’t seem fixable anytime soon. I would have been happy to use Drumrox in another DAW, Reaper, but DrMr’s UI was based on GTK2, and Reaper does not support GTK2 GUIs! I spent a lot of time experimenting with small toolkits that produce X-based GUIs, then (of course!) started to write my own one - but then I tried JUCE and... that’s how Drumlabooh was born!

From Drumrox I took my drumkit loader code, ported it to JUCE, and used the resampler from Speex. After some time, I started adding new features...

Возможности

* Инфа по совместимости с DAW
* Формат плагинов: Linux LV2/VST3i, Windows VST3i
* Поддерживаемые форматы драмкитов: Drumlabooh, Hydrogen, SFZ, обычные папки с сэмплами
* Драмлабух поставляется с десятками драмкитов, созданными на основе сэмплов легендарных акустических ударных и драм-машин.
* Стереовывод (со встроенным микшером), либо 36 отдельных выходных каналов
* Встроенный микшер с регуляторами панорамы, громкости, заглушения, и выбором режима панорамы
* Эффекты для каждого инструмента: фильтры низких и высоких частот, а также сатуратор Аналог для придания звуку теплоты (отдельно для инструмента либо всего микса)
* Сэмплерный движок на 36 инструментов с поддержкой 127 слоев в каждом
* Поддержка множества вариантов сэмплов на один слот (удобно для скаченных из сети архивов, где лежат папки с сэмплами)
* Режимы воспроизведения слоев: MIDI velocity, Round Robin, Random Order
* Автоматические заглушение открытого хайхета если играется закрытый
* Определенные в ките (или пользователем) группы заглушения
* Отображение картинки драмкита, если таковая включена в его состав
* Удобный и простой MIDI mapping
* Плагин написан на C++ с использованием тулкита JUCE

История создания

Drumlabooh был написан как заменаDrumrox, моему форку популярного некогда плагина DrMr (см.Nicklan's DrMr and Filipe Coelho's fork.

DrMr это классный, написанный на C/Gtk+2 LV2-плагин который я использовал годами, он умел загружать драмкиты формата Hydrogen, а потом формат Hydrogen поменялся, и DrMr перестал его понимать. Сначала я правил XML-файлы драмкитов вручную, чтобы DrMr их понимал, а затем решил исправить это дело в самом DrMr на уровне кода, так возник мой форк - Drumrox. Это было весной 2023.

Язык Си - не мой любимый, так что я перевел всё под С++ и переписал на Плюсы часть кода - парсер и загрузчик драмкитов (используя Pugi), сделал поддержку SFZ, придумал свой, упрощенный формат драмкитов, заменил графические диоды на кнопки с названиями инструментов - словом, поменял часть начинки и интерфейса, а также переписал внутренний микшер. Дальше дело особо не двигалось, ибо я не понимал часть старого кода и не мог толком разобраться в документации по API LV2 - словом, дальше шибко развивать Драмрокс я не мог и особо не хотел.

А была одна фигня. После апгрейда компа отошла в прошлое моя звуковуха M-Audio Audiophile, ее стало некуда тулить, я стал использовать встроенную звуковуху, а еще юсб-шную M-Audio Solo, и в связи или не связи с этим заметил, что Ардор при записи с MIDI-клавы помещает ноты раньше чем нужно, после окончания записи на дорожку. Это оказался известный глюк и никто его не чинил. Я бы стал использовать для творчества другую программу, например Рипер, но мне нужен был Драмрокс, а его интерфейс на основе GTK2 работал, по большому счету, только в Ардоре. И это непобедимая данность.

Поэтому я написал с нуля Драмлабуха, положив в основу тулкит JUCE, что позволило плагину работать под всеми DAW, воплотил в нем всё что было в Драмроксе, и могу развивать дальше сколько вздумается.