Qmpot — программируемый звуковой редактор

в 16:50, , рубрики: Delphi, paintcad, qmpot, звуковой редактор, Программирование, Работа со звуком

Qmpot — программируемый звуковой редактор - 1

Первым звуковым редактором, который я увидел в своей жизни — был Фонограф (sndrec32.exe) в Windows 98. Недолго я игрался с ним, записывал до 1 минуты звука с микрофона (потом запись прерывалась) и прослушивал полученное. А еще переконвертировал звуки из одного качества в другое.

Вторым звуковым редактором, который я увидел — был Cool Edit Pro 2000 (который теперь называется Adobe Audition). Но когда я порылся в нем достаточно — я был расстроен, эту штуку называют «звуковой редактор», но она только редактирует звук. В ней нельзя написать музыку с нуля. В ее наследнике — Adobe Audition, правда, позже добавили систему дорожек, в которые можно понапихать loop-ов и наделать музыки из них.

Потом я еще увидел Cakewalk Pro Audio (Cakewalk Sonar), Fruity Loops, Sound Forge и т.д.

Но еще с того 1998-2000 года во мне затаилось желание создавать звук и вставлять в него любые ноты в любые места во времени. Причем делать это как в простом режиме («воон туда эту ноту запихай-ка»), так и в более сложном («зажмем этот аккорд, сыграем в этом стиле, потом другой аккорд, сыграем его в другом стиле»).

И год с лишним назад, в декабре 2013 года я начал делать этот редактор.

Причем делать его начал в рамках проекта PaintCAD 4Windows, который давно умеет делать AVI фильмы из нарисованных кадров, но получающиеся AVI — немое кино, без звука. Поэтому паинткаду очень была нужна возможность создавать WAV файлы с нуля или редактировать другие, собирая из них озвучку для AVI. Ну а где создание звуковых файлов — там и написание музыки недалеко.

Чтобы попасть в Qmpot (читается «кумпот») — надо запустить паинткад:

Qmpot — программируемый звуковой редактор - 2

А дальше:
— либо нажать Ctrl+Q;
— либо нажать 0 (ноль) на клавиатуре и выбрать в меню «Экстра»-«Редактор звука Qmpot»:

Qmpot — программируемый звуковой редактор - 3

Открывшийся Qmpot будет пуст.

Qmpot — программируемый звуковой редактор - 4

И хотя:
— в нем можно создать новый звук (через «Создать (Ctrl+N)»),
— можно загружать WAV файлы (через «Открыть (Ctrl+O)»),
— можно лазить курсором (с клавиатуры) по звуку, ускоряя перемещение в 10 раз (если зажать Shift) или в 100 раз (если зажать Ctrl+Shift),
— можно масштабировать звук с помощью Ctrl+Плюс и Ctrl+Минус,
— можно перемещать курсор в конкретное или случайное место по кнопке «Перейти (Ctrl+G)»
— можно пробелом (или по кнопке «Выделить (Пробел)») выделять фрагменты звука,
— можно включить по Ctrl+I информацию об отсчетах под курсором (амплитуда и производная) и под границами выделения (разницы амплитуд и производных, для создания собственных loop-ов)
— можно вырезать, копировать, вставлять, удалять выделенное (Ctrl+X, Ctrl+C, Ctrl+V, Del)
— можно нажать «Команды (Ctrl+K)» и править вручную амплитуды отсчетов, менять границы выделения, изменять длину массива и звука, транспонировать звук
— можно нажать «Эффекты (Ctrl+E)» и применять к выделенному фрагменту звука различные эффекты (от простого изменения громкости до перемещения источника звука в пространстве относительно слушателя),
— можно сохранить отредактированный звук в WAV файл (через «Сохранить (Ctrl+S)»),
это все не главное.

Программирование музыки

Главное начинается если нажать кнопку «Программа (F3)» и тогда откроется поле редактирования QMP программ (скриптов):

Qmpot — программируемый звуковой редактор - 5

Комментарии в этом поле прописываются двойным слэшем в начале. Ими удобно помечать куплеты/припевы и др.части музыки.

Одна из команд уже введена в поле — это X. Поставьте на нее курсор и прочтите под текстовым полем программы «Завершить выполнение» и «X (без параметров)». Для любой команды под курсором здесь отображается ее назначение и синтаксис:

Qmpot — программируемый звуковой редактор - 6

Поставьте курсор между комментарием и командой X. Нажмите кнопку «Команда (Shift+F3)» справа от поля ввода программы. Выберите «N — новый звук», а потом «Монозвук 16 бит». В программе появится строка:

N 11025,16,1,5S

она означает «создать новый пустой звук с частотой дискретизации 11025 Гц, разрядностью звука 16 бит, одним каналом и длиной 5 секунд».

Меню по кнопке «Команда (Shift+F3)» позволяет вставлять любые команды в программу, если лень смотреть помощь, а название команды вы забыли.

Qmpot — программируемый звуковой редактор - 7

Также все команды с примерами и картинками можно посмотреть если в паинткаде или кумпоте нажать F1 и выбрать раздел помощи «Экстра» — «Звуковой редактор Qmpot» — «Список команд».

Добавим после команды N следующую команду:

LT 1,11025,16,1,0.5,0.5

она означает «загрузить треугольную/пилообразную волну в инструмент номер 1 с параметрами частота дискретизации 11025 Гц, разрядность 16 бит, 1 канал, амплитудой 50% от максимальной и заполнением 50%».

«Заполнение» для треугольной волны — это ее «пилообразность». Заполнение 50% (0.5) — это чистый треугольный сигнал (картинка посередине):
Qmpot — программируемый звуковой редактор - 8

Синусоидальный сигнал — звучит очень мягко, треугольный — пожестче, пилообразный — еще жестче, и прямоугольный — самый жесткий. Любой из этих сигналов, а также шумовой сигнал можно загрузить в качестве инструментов: LS — синус, LT — треугольник/пилообразный, LR — прямоугольный, LN — шумовой.

Теперь у нас 2 команды — создан звук и загружена треугольная волна как инструмент номер 1. Добавим первую ноту. Для этого после команды LT вставьте команду:

PL 1,0,10,1S,0

она означает записать инструментом номер 1 ноту в оба канала (0 — оба канала, 1 — левый, 2 — правый, т.к. звук моно — то при 0 все равно только в первый канал будет записан звук), по смещению 10 отсчетов от начала звука, длительностью 1 секунда, и тоном ноты 0 (До 4-й октавы, С4).

Тон ноты — это смещение в полутонах относительно исходного тона инструмента. Вот на этом рисунке сверху фортепианной клавиатуры показаны номера нот:

Qmpot — программируемый звуковой редактор - 9

Т.е. хотите ноту До — поставьте 0, хотите Ре — поставьте 2, хотите Ми — поставьте 3, хотите До на октаву выше — поставьте 12 и т.д.

Нажмите кнопку «Запуск (Shift+F5)» справа от поля ввода программы (или Shift+F5 на клавиатуре). Программа будет запущена и выдаст «результат».

Qmpot — программируемый звуковой редактор - 10

Нажмите внизу на панели «Играть/Пауза (F5)» (или просто F5 на клавиатуре) и прослушайте его (будет 1 секунда с нотой и 4 секунды тишины, т.к. задана пятисекундная длина звука в команде N).

Напишем частушки в миноре. Это аккорды Dm,Am,E,Am. В соответствии с изображением клавиатуры фортепиано вверху и номерами нот на ней:
Dm это три ноты D4,F4,A4, т.е. в номерах нот это 2,5,9.
Am это ноты A3,C4,E4, в номерах это -3,0,4.
E это E3,G#3,B3, в номерах это -8,-4,-1.

Изменим длину звука в команде N на 9 секунд (чтоб влезли частушки). И командами PL набиваем эти аккорды с этими номерами нот, каждую ноту сделаем длиной 0,5 секунды:
— первые три ноты от DM со смещением 0 секунд и 1 секунда (дважды),
— вторые три ноты от Am со смещением 2 секунда и 3 секунды (дважды),
— третьи три ноты от E со смещением 4 секунды и 5 секунд (дважды),
— последние три ноты от Am со смещением 6 секунд и 7 секунд (дважды).

Получаем (скопируйте этот скрипт и вставьте его в поле программы заместо того что там было):

//введите сюда QMP-команды
N 11025,16,1,9S
LT 1,11025,16,1,0.5,0.5
//Dm 2,5,9
PL 1,0,0S,0.5S,2
PL 1,0,0S,0.5S,5
PL 1,0,0S,0.5S,9
PL 1,0,1S,0.5S,2
PL 1,0,1S,0.5S,5
PL 1,0,1S,0.5S,9
//Am -3,0,4
PL 1,0,2S,0.5S,-3
PL 1,0,2S,0.5S,0
PL 1,0,2S,0.5S,4
PL 1,0,3S,0.5S,-3
PL 1,0,3S,0.5S,0
PL 1,0,3S,0.5S,4
//E -8,-4,-1
PL 1,0,4S,0.5S,-8
PL 1,0,4S,0.5S,-4
PL 1,0,4S,0.5S,-1
PL 1,0,5S,0.5S,-8
PL 1,0,5S,0.5S,-4
PL 1,0,5S,0.5S,-1
//Am -3,0,4
PL 1,0,6S,0.5S,-3
PL 1,0,6S,0.5S,0
PL 1,0,6S,0.5S,4
PL 1,0,7S,0.5S,-3
PL 1,0,7S,0.5S,0
PL 1,0,7S,0.5S,4
X

Нажмите кнопку «Запуск (Shift+F5)» справа от поля ввода программы (или Shift+F5 на клавиатуре). А потом F5 для прослушивания.

Можно вызывать не по три ноты сразу, а сначала одну, а потом две других (эти две сдвинем на полсекунды). Получим (скопируйте этот скрипт и вставьте его в поле программы заместо того что там было):

//введите сюда QMP-команды
N 11025,16,1,9S
LT 1,11025,16,1,0.5,0.5
//Dm 2,5,9
PL 1,0,0S,0.5S,2
PL 1,0,0.5S,0.5S,5
PL 1,0,0.5S,0.5S,9
PL 1,0,1S,0.5S,2
PL 1,0,1.5S,0.5S,5
PL 1,0,1.5S,0.5S,9
//Am -3,0,4
PL 1,0,2S,0.5S,-3
PL 1,0,2.5S,0.5S,0
PL 1,0,2.5S,0.5S,4
PL 1,0,3S,0.5S,-3
PL 1,0,3.5S,0.5S,0
PL 1,0,3.5S,0.5S,4
//E -8,-4,-1
PL 1,0,4S,0.5S,-8
PL 1,0,4.5S,0.5S,-4
PL 1,0,4.5S,0.5S,-1
PL 1,0,5S,0.5S,-8
PL 1,0,5.5S,0.5S,-4
PL 1,0,5.5S,0.5S,-1
//Am -3,0,4
PL 1,0,6S,0.5S,-3
PL 1,0,6.5S,0.5S,0
PL 1,0,6.5S,0.5S,4
PL 1,0,7S,0.5S,-3
PL 1,0,7.5S,0.5S,0
PL 1,0,7.5S,0.5S,4
X

Нажмите кнопку «Запуск (Shift+F5)» справа от поля ввода программы (или Shift+F5 на клавиатуре). А потом F5 для прослушивания.

Добавим к звучанию инструмента эффект «эхо», для этого после команды LT вставьте команду:

SE 1,3,0,0.25S,40

она означает, что каждая нота инструмента 1 превратится в 3 ноты. Первая нота будет там, куда ее поставила команда PL. Вторая будет вставлена со смещением 0,25 секунды и амплитудой 60% (100 минус 40). Третья будет вставлена со смещением 0,25+0,25 секунды и амплитудой 20% (100 минус 40 минус 40).

Из-за эхо ноты будут сильно накладываться друг на друга, поэтому во избежание достижения предела по амплитуде (и среза звука до пределов -128 до 127 для 8 бит, или от -32768 до 32767 для 16 бит) уменьшим также в команде LT амплитуду сигнала с 0,5 до 0,3.

Получим:

//введите сюда QMP-команды
N 11025,16,1,9S
LT 1,11025,16,1,0.3,0.5
SE 1,3,0,0.25S,40
//Dm 2,5,9
PL 1,0,0S,0.5S,2
PL 1,0,0.5S,0.5S,5
PL 1,0,0.5S,0.5S,9
PL 1,0,1S,0.5S,2
PL 1,0,1.5S,0.5S,5
PL 1,0,1.5S,0.5S,9
//Am -3,0,4
PL 1,0,2S,0.5S,-3
PL 1,0,2.5S,0.5S,0
PL 1,0,2.5S,0.5S,4
PL 1,0,3S,0.5S,-3
PL 1,0,3.5S,0.5S,0
PL 1,0,3.5S,0.5S,4
//E -8,-4,-1
PL 1,0,4S,0.5S,-8
PL 1,0,4.5S,0.5S,-4
PL 1,0,4.5S,0.5S,-1
PL 1,0,5S,0.5S,-8
PL 1,0,5.5S,0.5S,-4
PL 1,0,5.5S,0.5S,-1
//Am -3,0,4
PL 1,0,6S,0.5S,-3
PL 1,0,6.5S,0.5S,0
PL 1,0,6.5S,0.5S,4
PL 1,0,7S,0.5S,-3
PL 1,0,7.5S,0.5S,0
PL 1,0,7.5S,0.5S,4
X

Выполните по Shift+F5 и прослушайте полученное по F5.

Теперь сделаем стереомелодию. Для этого:
— пропишем в команде N два канала: N 11025,16,2,9S
— загрузим второй инструмент, точно такой же как первый, и для обоих зададим одинаковое эхо
— расставим относительно слушателя первый инструмент слева спереди в 500 мм: IP 1,-500,500
— расставим относительно слушателя второй инструмент справа спереди в 500 мм: IP 2,500,500
— в каждом аккорде первую ноту будет играть первый инструмент, а две других — второй инструмент

Получим:

//введите сюда QMP-команды
N 11025,16,2,9S
//первый инструмент
LT 1,11025,16,1,0.3,0.5
SE 1,3,0,0.25S,40
IP 1,-500,500
//второй инструмент
LT 2,11025,16,1,0.3,0.5
SE 2,3,0,0.25S,40
IP 2,500,500
//Dm 2,5,9
PL 1,0,0S,0.5S,2
PL 2,0,0.5S,0.5S,5
PL 2,0,0.5S,0.5S,9
PL 1,0,1S,0.5S,2
PL 2,0,1.5S,0.5S,5
PL 2,0,1.5S,0.5S,9
//Am -3,0,4
PL 1,0,2S,0.5S,-3
PL 2,0,2.5S,0.5S,0
PL 2,0,2.5S,0.5S,4
PL 1,0,3S,0.5S,-3
PL 2,0,3.5S,0.5S,0
PL 2,0,3.5S,0.5S,4
//E -8,-4,-1
PL 1,0,4S,0.5S,-8
PL 2,0,4.5S,0.5S,-4
PL 2,0,4.5S,0.5S,-1
PL 1,0,5S,0.5S,-8
PL 2,0,5.5S,0.5S,-4
PL 2,0,5.5S,0.5S,-1
//Am -3,0,4
PL 1,0,6S,0.5S,-3
PL 2,0,6.5S,0.5S,0
PL 2,0,6.5S,0.5S,4
PL 1,0,7S,0.5S,-3
PL 2,0,7.5S,0.5S,0
PL 2,0,7.5S,0.5S,4
X

Упрощение ввода номеров нот

При написании мелодий побольше и похитрей — возникают проблемы:

Первая проблема — скрипт растет. Тут помогают комментарии, можно пометить любые части программы, чтоб не вглядываться в аргументы команд, а сразу понять «тут вступление», «тут проигрыш» и т.д.

Вторая проблема — номера нот трудно вводить по памяти.

Чтобы решить эту проблему — в Qmpot была добавлена система «Ввод нот». Она позволяет использовать виртуальное фортепиано, виртуальную шестиструнную гитару и виртуальную сетку барабанов для создания массивов команд PL (или P) и перетаскивания их в QMP программу. Также позволяет играть на физической клавиатуре как на фортепиано/барабанах и записывать сыгранное в виде QMP-команд.

Чтобы запустить «Ввод нот» — нажмите справа от поля программы кнопку «Ввод нот (Shift+F7)» или просто Shift+F7 на клавиатуре.

Ввод нот: Фортепиано

После запуска «ввода нот» фортепиано включено по умолчанию.

Qmpot — программируемый звуковой редактор - 11

Можно лазить синим курсором по клавишам и зажимать их пробелом (или кнопкой «Выбрать (ПРОБЕЛ)»).

Самое простое использование фортепиано:
— зажимаем пробелом ноты аккорда,
— необязательный шаг: жмем «Звук (ENTER)» (или просто Enter) чтобы прослушать в MIDI что все правильно зажали,
— жмем кнопку «Добавить (CTRL+ENTER)» (или просто Ctrl+Enter) и ноты оказываются в виде команд справа в поле программы:

Qmpot — программируемый звуковой редактор - 12

Далее можно скопировать полученные команды кнопкой «Копировать (Ctrl+C)» и затем, выйдя по ESC из ввода нот, вставить их уже в вашу программу куда надо.

На получаемые ноты влияют параметры на панели внизу окна (надо же как-то управлять их смещением, длительностью и т.д.):

Номер — номер инструмента, прописываемый в командах PL.
Смещение — смещение в мс, прописываемое в командах PL. Смещение можно быстро изменять нажатием на кнопки "-"(Ctrl+Минус) и "+"(Ctrl+Плюс) по бокам от него. При этом оно изменяется на величину «Шаг».
Длина — длительность нот в мс, прописываемая в командах PL.

Таким образом, можно:
— выставить смещение в 0 мс если оно не ноль (Ctrl+A),
— зажать первый аккорд,
— нажать Ctrl+Enter,
— зажать другой аккорд,
— увеличить смещение (Ctrl+Плюс),
— снова нажать Ctrl+Enter,
— зажать третий аккорд,
— увеличить смещение,
— снова нажать Ctrl+Enter.
И т.д. А когда будет достаточно команд — копируем их по Ctrl+C, закрываем Ввод нот по Esc и вставляем полученные команды в программу.

Если лень каждый раз увеличивать смещение — нажмите кнопку «Авто+ (Ctrl+P)» и тогда после каждого добавления нот по Ctrl+Enter смещение будет увеличиваться само.

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

Стили игры и Тест команд

Над полем программы во «Вводе нот» есть две кнопки:

Qmpot — программируемый звуковой редактор - 13

Кнопкой «Тест команд (Ctrl+U)» можно, не выходя из «Ввода нот», прослушать введенные команды на треугольной волне для фортепиано/гитары и на шумовых барабанах для сетки барабанов.

Кнопкой «Стиль игры (Ctrl+B)» можно выбрать определенные стили игры. Для фортепиано это фортепианные стили, для гитары — гитарные, а для барабанов — это встроенные ритмы (рок, хип-хоп и т.д). Также можно задать свой стиль.

Текущий стиль игры отображается под кнопкой «Стиль игры». В фортепиано по умолчанию это стиль «Играть всё». Выглядит он как «A-1D».

Стили фортепиано кодируются командами и цифрами, написанными через тире:
A — сыграть одновременно все зажатые ноты;
Наборы цифр 1-9 — сыграть указанную ноту из зажатого аккорда (если зажаты три ноты — то 1 сыграет первую ноту, 2 — вторую, 3 — третью, 13 — первую и третью одновременно, 4 — ничего не сыграет, т.к. только три зажаты);
шаговD — задержка между предыдущими нотами и следующими в долях «шагов» параметра «Шаг» из нижней части окна, при этом длина предыдущих нот определяется параметром «Длина» из нижней части окна;
шаговL — задержка между предыдущими нотами и следующими в долях «шагов» параметра «Шаг» из нижней части окна, при этом длина предыдущих нот равна этой задержке (ноты тянутся до следующих нот).

Например, вышеупомянутый стиль «Играть всё» — это A-1D, где A — проиграть все, 1D — выждать один «Шаг».

А стиль «Пары (1 шаг)» — кодируется как 2-0.25L-34-0.25L-1-0.25L-34-0.25L, что означает:
2-0.25L: 2 зажатая в аккорде нота играется четверть Шага;
34-0.25L: 3 и 4 зажатая в аккорде нота играется четверть Шага;
1-0.25L: 1 зажатая в аккорде нота играется четверть Шага;
34-0.25L: 3 и 4 зажатая в аккорде нота играется четверть Шага.
В итоге целый Шаг заполнен нотами.

Таким образом, выбрав стиль «Пары (1 шаг)» и зажав аккорд из 4 нот — можно по Ctrl+Enter получать команды целой музыкальной фразы 2-34-1-34 со сдвигами во времени, а не просто аккорда.

Ввод нот со стилем игры (общий алгоритм)

1) По кнопке «Номер (Ctrl+I)» указать номер инструмента, который будет использован в QMP командах;
2) По кнопке «Очистить (Ctrl+X)» очистить предыдущую программу «ввода нот» (если она была введена до этого);
3) По кнопке «Шаг (Ctrl+S)» указать длину шага в мс;
4) По кнопке «Смещение (Ctrl+A)» выставить начальное смещение в 0 мс (или другое, если требуется выставить ноты не с начала мелодии);
5) Сбросить ранее зажатые ноты по кнопке «Сброс клавиш (Ctrl+K)» и зажать очередной аккорд из 4 нот, перемещая курсор и нажимая кнопку «Выбрать (Пробел)»;
6) По кнопке «Добавить (Ctrl+ENTER)» «сыграть» зажатый аккорд выбранным стилем игры (команды игры добавятся в QMP программу в текстовом поле справа);
7) Увеличить смещение на один шаг кнопкой "+"(Ctrl+Плюс);
8) Если дальше нужно ввести также другие аккорды мелодии — перейти к п.5 для ввода следующего аккорда.
9) Нажать «Тест команд (Ctrl+U)» для прослушивания полученной мелодии на треугольном сигнале;
10) Нажать «Копировать (Ctrl+C)» для копирования QMP команд, выйти из «Ввода нот» по ESC, вставить команды в QMP программу в основном окне Qmpot;

Совет: если предварительно включить режим по кнопке «Авто+ (Ctrl+P)», то п.7 выполнять не потребуется, смещение будет само увеличиваться на необходимое количество шагов после каждого добавления нот по кнопке «Добавить (Ctrl+ENTER)».

Другие стили могут длиться не один шаг, а более, например, предустановленный стиль «Перебор (2 шага)» использует 8 итераций по 0.25 шага (т.е. занимает 2 шага). Тогда при ручном изменении смещения необходимо после «Добавить (Ctrl+ENTER)» увеличивать смещение на 2 шага (кнопкой "+"(Ctrl+Плюс)). В случае автоувеличения смещения («Авто+ (Ctrl+P)») необходимое количество шагов будет автоматически добавляться к смещению.

Также в меню выбора стиля игры по кнопке «Стиль игры (Ctrl+B)» можно вручную вводить свои стили игры. В том же меню можно загружать/сохранять в QPS (Qmpot Piano Style) файлы со стилем игры и текущим зажатым аккордом на фортепиано.

Qmpot — программируемый звуковой редактор - 14

Ввод нот: Шестиструнная гитара

Для перехода к гитаре нажмем внизу на панели кнопку «Инструмент (Ctrl+G)».

Qmpot — программируемый звуковой редактор - 15

Здесь, как и фортепиано, можно бегать курсором по грифу и зажимать струны. Незажатая струна — не участвует в аккорде, поэтому, например, для простого ля-минора Am надо зажать все как обычно, а свободные струны — на нулевом ладу, и тогда по Ctrl+Enter весь аккорд будет скинут в программу:

Qmpot — программируемый звуковой редактор - 16

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

Qmpot — программируемый звуковой редактор - 17

Ввод нот: Сетка барабанов

Для перехода к гитаре нажмем еще раз внизу на панели кнопку «Инструмент (Ctrl+G)».

Qmpot — программируемый звуковой редактор - 18

Классическая сетка, которая используется в Cakewalk, Fruity Loops и много где еще. Только по вертикали не ноты фортепиано, а номера барабанов.

А по горизонтали время в пределах выбранного размера по кнопке «Размер (Ctrl+E)». Например, при выбранном размере 8/4 сетка будет выглядеть как показано на скриншоте вверху — 8 столбцов, разделены в группы по 4 столбца.

Расставьте ноты по барабанам вот так:

Qmpot — программируемый звуковой редактор - 19

Нажмите «Звук (ENTER)» (или просто Enter) чтобы прослушать ритм в MIDI. Он будет проигран дважды чтобы оценить стыковку ритма с самим собой.

Нажмите «Добавить (CTRL+ENTER)» (или просто Ctrl+Enter) чтобы скинуть ноты ритма в поле программы. Нажатие на кнопку «Тест команд (Ctrl+U)» проиграет на шумовых барабанах ритм из поля программы.

Чтобы использовать в QMP-программе полученные таким способом команды ритма — надо предварительно загрузить в этой QMP-программе аж 9 инструментов (9 различных барабанов).

Поэтому в основном окне Qmpot в меню по кнопке «Команда (Shift+F3)» есть вызов «шумовых барабанов» — барабанов на шумовых сигналах. Достаточно выбрать номер стартового барабана (если 1 — то они займут номера инструментов с 1 по 9, если 20 — то с 20 по 28 и т.д.) и разрядность (8 или 16 бит) и они будут у вас в программе. Вот, например, программа с набранным выше ритмом и шумовыми барабанами:

//введите сюда QMP-команды
N 11025,16,1,4S

//барабаны
//bass
LN 1,44100,16,1,0.5,0.001S
ST 1,-66
SF 1,0.001S,0.032S
//acoustic snare
LN 2,44100,16,1,0.5,0.008S
ST 2,-48
SF 2,0.001S,0.128S
//clap
LN 3,44100,16,1,0.5,0.004S
ST 3,-36
SF 3,0.001S,0.032S
//electric snare
LN 4,44100,16,1,0.5,0.008S
ST 4,-40
SF 4,0.001S,0.064S
//closed hi-hat
LN 5,44100,16,1,0.2,0.012S
SF 5,0.001S,0.011S
//open hi-hat
LN 6,44100,16,1,0.3,0.24S
SF 6,0.01S,0.23S
//tomtom
LN 7,44100,16,1,0.5,0.0015S
ST 7,-60
SF 7,0.001S,0.048S
//crash
LN 8,44100,16,1,0.5,0.24S
ST 8,-6
SF 8,0.01S,0.33S
//ride
LN 9,44100,16,1,0.3,0.30S
ST 9,-2
SF 9,0.03S,0.27S
//конец барабанов

P 1,0,0S,0
P 1,0,1S,0
P 2,0,0.5S,0
P 2,0,1.5S,0
P 5,0,0.25S,0
P 5,0,0.75S,0
P 5,0,1.25S,0
P 5,0,1.75S,0
P 6,0,1.75S,0
P 1,0,2S,0
P 1,0,3S,0
P 2,0,2.5S,0
P 2,0,3.5S,0
P 5,0,2.25S,0
P 5,0,2.75S,0
P 5,0,3.25S,0
P 5,0,3.75S,0
P 6,0,3.75S,0
X

В меню «Стиль игры (Ctrl+B)» можно выбирать различные предустановленные ритмы.

Qmpot — программируемый звуковой редактор - 20

Строка стиля «123456789-(необходимая задержка)D» устанавливается автоматически в зависимости от текущего размера, выбранного по кнопке «Размер (Ctrl+E)».

Ввод нот: игра на PC клавиатуре

Когда во «Вводе нот» включены инструменты Фортепиано или Шестиструнная гитара — то на физической клавиатуре компьютера можно играть как на клавиатуре фортепиано.

Основная часть клавиатуры — два ряда клавиш:
Верхний ряд -WE-TYU-OP-] — черные клавиши, ноты До#, Ре#, Фа#, Соль#, Ля#, До#, Ре#, Фа#.
Нижний ряд ASDFGHJKL;' — белые клавиши, ноты До, Ре, Ми, Фа, Соль, Ля, Си, До, Ре, Ми, Фа.

Qmpot — программируемый звуковой редактор - 21

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

Иногда с мелодией удобно играть/записывать басовый аккомпанемент, поэтому:
— ниже «нижнего ряда» есть ряд клавиш ZXC...<>? — он играет роль белых клавиш фортепиано, но на октаву ниже основной части клавиатуры.
— аналогично выше «верхнего ряда» есть ряд клавиш 123...)-= — он играет роль черных клавиш фортепиано, но на октаву ниже основной части клавиатуры.

Поэтому рекомендуется играть на рядах клавиш ASDF… и QWER… мелодию, а на рядах ZXCV… и 1234… басовый аккомпанемент к ней. Например, A — нота До, Z — нота До на октаву ниже.

При текущем инструменте «Фортепиано» все нажимаемые на физической клавиатуре клавиши отображаются на виртуальной клавиатуре в окне «Ввода нот».

Ввод нот: запись игры на PC клавиатуре

По кнопке «Запись (Ctrl+R)» можно включить/выключить режим записи, тогда все сыгранное будет дописано в виде QMP команд в поле программы. При этом первая нажатая нота получит смещение 0 секунд, остальные ноты будут записываться относительно момента нажатия первой ноты.

Чтобы записываемые смещения и длительности нот были выравнены по времени — используйте квантование:
1) Установите по кнопке «Темп (Ctrl+T)» необходимый темп игры, также можете настроить и включить метроном (MIDI или Видео) чтобы послушать темп игры и даже оставить его включенным на время записи (предупреждение: на слабых компьютерах звучание MIDI метронома может сбиваться и лагать, тогда используйте видео-метроном и следите за появляющимися на экране шариками);
2) Нажмите кнопку «Квант (Ctrl+F)» и введите, например, 2. Это означает что смещения и длительности нот будут кратны 1/2 от длительности удара темпа. При темпе 120 ударов в минуту 1 удар темпа составляет 0.5 секунды, а 1/2 длительности удара темпа составляет 0.25 секунды, поэтому все смещения и длительности записываемых нот будут кратны значению 0.25 секунды.

Важно: современные особенности устройства физических клавиатур не позволяют зажимать большое количество клавиш одновременно. Поэтому будьте готовы смириться с тем, что при игре/записи на физической клавиатуре при нажатии более 2 клавиш одновременно — некоторые нажатия клавиш могут быть пропущены системой игры/записи. Это нормально. Все зависит от вашей клавиатуры, в идеале — просто старайтесь больше 2 клавиш одновременно не нажимать, тогда все будет нормально.

Ввод нот: игра и запись игры на барабанах на PC клавиатуре

Когда во «Вводе нот» включен инструмент Барабанная сетка — то на физической клавиатуре компьютера можно играть как на всех 9 барабанах в сетке и записывать эту игру по кнопке «Запись (Ctrl+R)». Клавиши для игры/записи:

Ряд клавиш ASDFGHJKL — барабаны от 1 до 9.

Заключение

В этой статье-мануале достаточно кратко описан звуковой редактор Qmpot. А точнее описаны только программирование и система «Ввод нот».

В системе помощи (по кнопке F1 в паинткаде или кумпоте) в разделе «Экстра» — «Звуковой редактор Qmpot» вы можете найти дополнительную неописанную в статье информацию:
— об основах редактирования звука (что такое частота дискретизации, разрядность, как записывается звук в файлы и т.д.),
— о загрузке инструментов из файлов INS+WAV и просто из WAV сэмплов,
— о создании собственных инструментов,
— о поиске и задании loop-а (цикла, повторяющейся части) в создаваемых вами инструментах,
— об извлечении готовых инструментов из SF2/DLS звуковых банков,
— о применении эффектов в редакторе Qmpot (фильтрация, подавление шумов, реверс звука, перемещение источника звука относительно слушателя с учетом эффекта Допплера и т.д.),
— о записи звука со входов звуковой карты, с веб-камеры и т.д.,
— и многое другое.

В звуковом редакторе Qmpot, используя описанные выше способы, вы можете сочинить мелодии, обработать звуки и даже сделать озвучку для создаваемых вами в паинткаде фильмов и анимаций (AVI файлов).

WAV-озвучку можно прикрепить к AVI-файлу в меню Утилиты паинткада. Там же можно извлечь WAV-озвучку из любого AVI-файла:

Qmpot — программируемый звуковой редактор - 22

Скачать PaintCAD 4Windows с Qmpot внутри
вы можете по ссылкам (12,6 Мб):
RAR: blackstrip.ru/pcw.rar
ZIP: blackstrip.ru/pcw.zip
SFX-EXE: blackstrip.ru/pcw.exe

Бонусная мелодия для Qmpot для тех, кто дочитал статью до конца: blackstrip.ru/bonusmusic.txt (на шумовых барабанах и двух треугольных волнах!).

Автор: blackstrip

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js