
Концепция
Проект является продолжением DIGITAL DOOMSDAY SUPERCOLLIDER с учетом переработанной концепции. Суть моего эксперимента заключалась в том, чтобы заставить нейросеть создать собственное видение апокалиптичного звука будущего посредством копирования и переработки одной и той же группы синтезаторов. В моем видении концепция близка к феномену симулякра: пересоздавая один и тот же объект, искусственный интеллект производит новое уникальное звучание, а соединив несколько вариаций воедино и доведя их до бесконечного цикла ошибок, может сложиться образное представление о том, что такое цифровой апокалипсис.
Проект представляет собой алгоритмическую композицию сыгранную при помощи трёх вариантов одного и того же проекта в SuperCollider. Код содержит оригинальные синтезаторы и две наиболее рабочие вариации от нейросети. Каждая группа синтезаторов является самостоятельным инструментом. Звук накладывается слоями поочередном включением разных частей кода.
Первая группа синтезаторов
Первый синтезатор (\pad) создает звук пэда. Он состоит из нескольких операторов. Сначала задаются переменные для частоты звука и гармонических отклонений от основной частоты. Затем формируется звук с помощью операторов SinOsc.ar (синусоидальный осциллятор), Rand (случайное значение), midiratio (преобразование величины в диапазон частот) и Splay.ar (распределение звука в пространстве). Затем звук умножается на огибающую звука с помощью оператора Env.asr (экспоненциальное затухание). Затем, уровень громкости понижается на -20 дБ с помощью оператора -20.dbamp и выходит на аудио устройство с помощью оператора Out.ar.

Второй синтезатор (\kick) создает звук бочки. Он состоит из операторов SinOsc.ar и Env.perc (экспоненциальное нарастание и затухание). Звук умножается на огибающую и подается на два аудио канала с помощью оператора! 2 Затем звук выходит на аудио устройство с помощью оператора Out.ar.

Третий синтезатор (\padFx) представляет собой эффектор для основного пэда. Он получает звук с помощью оператора In.ar, затем умножает его на огибающую и заменяет на выходе исходный звук с помощью оператора ReplaceOut.ar.
Далее идут два объекта Routine. Первый синтезатор (\kick) повторяется с интервалом в 1 секунду внутри первой Routine. Вторая Routine создает массив из трех синтезаторов (\pad) с разными частотами. Затем они играются в течение 5 секунд и останавливаются.
Вторая группа синтезаторов
Синтезаторы: SynthDef (\pad) — создает пэд-синтезатор. Использует SinOsc и Pluck для генерации звука пэда. Проигрывает несколько синусоидальных осцилляторов с разными частотами и detune. Затем производит пространственную обработку звука и настраивает огибающую амплитуды звука. SynthDef (\kick) — создает кик-синтезатор. Использует Pluck для генерации звука кика. Проигрывает осциллятор Pluck с заданной огибающей амплитуды звука. SynthDef (\padFx) — создает синтезатор эффектов для пэда. Использует задержку и огибающую для обработки звука пэда. Заменяет исходный звук на обработанный.
Секвенсор: SynthDef (\sequencer) — создает секвенсор, который проигрывает пэд-синтезатор с заданными частотами и длительностями. Секвенсор проигрывается циклически через определенные интервалы времени.
Запуск: Synth (\padFx) — запускает синтезатор эффектов для пэда. Pbind (\instrument, \kick, \dur, 0.5).play — запускает паттерн кика. Synth (\sequencer) — запускает секвенсор.
Третья группа синтезаторов
pad: Задается переменная snd, freq и detunes. detunes вычисляется как массив значений от -0.03 до 0.03. snd задается как сумма двух SinOsc с разными частотами и случайными значениями. snd умножается на огибающую Env
kick: snd задается как SinOsc с частотой умноженной на огибающую Env. Затем snd дублируется и выводится на два канала. Затем snd умножается на огибающую Env.
padFx: Задается переменная snd. snd получает входной сигнал из выхода out. snd умножается на огибающую Env с заданными параметрами. Заменяется выход out на snd.
Routine: Создается вложенная Routine, которая воспроизводит kick с заданным интервалом. Внешняя Routine создает три синтезатора pad с разными частотами (62, 64, 65) с интервалом 5 секунд. Через 5 секунд после создания трех синтезаторов pad, каждый из них останавливается (устанавливается значение gate в 0).
Алгоритмическая композиция