Генератор агрегата
Генераторы единиц измерения (или ugens ) являются основными формальными единицами во многих MUSIC-N в стиле языках программирования компьютерной музыки . Их иногда называют кодами операций (особенно в Csound ), хотя это выражение неточно, поскольку это не инструкции машинного уровня.
Генераторы модулей образуют строительные блоки для разработки синтеза и обработки сигналов алгоритмов в программном обеспечении. Например, простой генератор единиц измерения, называемый OSC, может генерировать синусоидальный сигнал определенной частоты (заданный в качестве входных данных или аргумента функции или класса , представляющего генератор единиц). ENV может быть генератором модулей, очерчивающим функцию точки останова. Таким образом, ENV можно использовать для управления амплитуды огибающей генератора OSC посредством уравнения OSC*ENV. Генераторы модулей часто используют предопределенные массивы значений для своих функций (которые заполняются сигналами или другими фигурами путем вызова определенной функции генератора).
Теория синтеза звука с помощью генератора единиц была впервые разработана и реализована Максом Мэтьюзом и его коллегами из Bell Labs в 1950-х годах.
Пример кода
[ редактировать ]В языке SuperCollider .ar метод в классе SinOsc представляет собой UGen, генерирующий синусоидальную волну . В приведенном ниже примере создается синусоидальный сигнал с частотой 440, фазой 0 и амплитудой 0,5.
SinOsc.ar(440, 0, 0.5);