Csound 🌀 Bulka

Использование CSound с Strudel

🧪 Strudel имеет экспериментальную поддержку csound, используя @csound/browser.

Импорт .orc файлов

Чтобы использовать существующие инструменты csound, вы можете загрузить и использовать orc файл из URL следующим образом:

Обратите внимание, что вышеуказанный URL использует сокращение github:, которое разрешается в raw файл на github, но вы можете использовать любой URL по вашему желанию.

Замечательный livecode.orc by Steven Yi поставляется с множеством готовых к использованию звуков:

Написание собственных инструментов

Вы можете определить свой собственный инструмент(ы) с помощью loadCsound следующим образом:

Параметры

Функция .csound отправляет следующие p значения:

p1имя инструмента, например CoolSynth
p2смещение времени, когда он должен играть
p3длительность события / hap
p4частота в герцах
p5нормализованный gain, 0-1

Существует альтернативная функция .csoundm с другим подходом:

p4номер midi клавиши, неокругленный, 0-127
p5midi velocity, 0-127

В обоих случаях p4 получается из значения freq или note.

Ограничения / Планы на будущее

Помимо перечисленных выше p значений, никакие другие параметры пока не могут быть использованы в pattern. Это также означает, что аудио эффекты работать не будут. В будущем интеграция может быть улучшена путем передачи всех параметров управления pattern в инструмент csound. Это может работать через уникальный channel для каждого значения. Каналы могут быть прочитаны вот так. Также может иметь смысл иметь стандартную библиотеку csound инструментов для эффектов strudel.

Теперь давайте погрузимся в Functional JavaScript API