Музыкальный портал
info@topzvuk.com

Как делают плагины-эмуляторы

Как делают плагины-эмуляторы
0

Как делают плагины-эмуляторы

Раздел: Плагины
Дата публикации: 22 марта 2015, 16:34
Нравится
Нравится
благодаря плагинам, эмулирующим свойства реальных устройств, огромное количество легендарных студийных аппаратов стало "доступно" для простых смертных. Но как разработчики могут захватить волшебство оригиналов? К каким компромиссам приходится прибегать? Мы поговорим об этом со специалистами, чья работа заключается в превращении ламп и трансформаторов в холодные строчки программного кода…

Базовые подходы
Есть два основных пути для разработчика, которыми он может следовать при создании плагина, эмулирующего свойства конкретного аналогового или цифрового процессора. Первый способ – это пропустить через устройство множество статических и динамических сигналов, измерить характеристики вход-выход при всех параметрах настройки и разработать соответствующий DSP-код, точно воссоздающий все эти изменения. Второй способ – это исследовать принципиальную схему и смоделировать её составляющие элементы/блоки. Большинство разработчиков комбинирует оба метода.

David Berners (Universal Audio):
«Любое классическое оборудование можно физически смоделировать в цифровой форме» - говорит Дэвид Бернерс (руководитель исследовательских работ в компании Universal Audio). «Вообще, сделать точную модель аналогового устройства с широкодиапазонным нелинейным поведением – ещё та задача. Но именно эта нелинейность зачастую делает звучание этих аппаратов столь привлекательным и желанным. И чем нелинейнее их поведение, тем сложнее будет физическая модель и тем больше потребуется вычислительных мощностей».

Один из эффектов, пока ещё слишком сложных для точного моделирования – это звучание реальных акустических пространств. «Акустические пространства проще моделировать, пользуясь статистическим анализом или прямым измерением при помощи сэмплирования» - заявляет Бернерс, который также ведёт курсы по DSP и физическому моделированию в Центре компьютерных исследований в области музыки и акустики Стэндфортского университета (Stanford University’s Center for Computer Research in Music and Acoustics - CCRMA).

«Большинство моделей берёт за основу линейную составляющую, которую легко захватить. Но весь трюк – в нелинейных моделях», подтверждает Edmund Pirali из компании Intelligent Devices (не так давно выпустила плагин, эмулирующий знаменитый аналоговый эффект Marshall Time Modulator). «Конечно, Вы можете попробовать сделать полностью реалистичную модель, но это чрезвычайно сложно и ресурсозатратно. Таким образом, общий подход – это или прибегнуть к интерполяции различий между отдельными линейными моделями, или разработать методы имитации нелинейного поведения. Так как все аналоговые устройства состоят из компонентов с достаточно определённым поведением, то цифровое моделирование этих компонентов не представляет особой сложности. Главная задача – захватить дрейф параметров, пробои и утечки, непредсказуемое поведение. Мы моделировали поведение различных маленьких блоков Time Modulator’а. Большая часть времени была потрачена на разработку корректных моделей всевозможных вариантов поведения компонентов, и затем – на создание эффективных алгоритмов комплексной нелинейной модели».

Уди Хеннис (Waves) полагает, что успех моделирования зависит от многих факторов. Он считает, что намного проще работать с устройствами, у которых имеются шаговые регуляторы. Если требуется, Вы легко можете восстановить нужные настройки, поскольку каждому параметру соответствует чётко определённое положение регулятора. Если у ручек нет фиксированных положений, намного труднее добиться полной повторяемости, поскольку даже небольшие отклонения от точных позиций могут очень сильно повлиять на характеристики прибора. 

«Если эффект подчиняется законам физики, его можно смоделировать» - утверждает Никлас Одельхольм из компании Softube. «Парни в CERN умудряются моделировать чрезвычайно стохастическое поведение фундаментальных частиц, и моделирование звуковых устройств не сильно от этого отличается. Плагин влияет на сигнал точно таким же путём, как и реальный прибор, но только это делается при помощи математических вычислений. Главные ограничения – это требуемые вычислительные мощности и/или время, необходимое для вычислений. К примеру, точное моделирование поведения звуковых волн в помещении (как они распространяются, отражаются, затухают, взаимодействуют друг с другом, стенами и т.п.) – чрезвычайно ресурсозатратно. Вероятно, алгоритмам потребуется какое-то время на вычисление точных моделей…»

Colin McDowell (McDSP)
«Всё, что сделано в железе, может быть воссоздано в виде программного обеспечения» - декларирует Коулин МакДауэлл, основатель и президент компании McDSP. «При написании программ Вы практически не ограничены никакими рамками… Вам предоставлено намного больше гибкости, чем при работе с «неподвижным» железом. Я считаю, что утверждение по поводу того, что «классические» аналоговые устройства способны на что-то такое, что не может сделать средний компьютер – мягко говоря, сильно устарело. Ограничения, если таковые вообще имеются, существуют только лишь в воображении, опыте и творческом потенциале разработчиков плагинов».

«Фактически, мы ограничены мощностью процессоров и нашим пониманием (или недопониманием) глубинных основ работы тех или иных устройств» - говорит Кен Богданович (Ken Bogdanowicz) из компании Sound Toys. «Если процессор линеен и статичен, мы легко можем его смоделировать. Для измерения передаточной функции достаточно использовать синусоидальные развёртки или широкополосные испытательные сигналы. Но если характеристики устройства изменяются во времени или оно имеет нелинейное поведение, то мы должны понять КАК оно работает. Иногда это может быть сделано путём снятия характеристик с отдельных элементов схемы. В других случаях всё намного сложнее. Среди подобных задач – моделирование аналоговой ленты или некоторых древних цифровых ревербераторов, рабочие алгоритмы которых неизвестны».

Иногда возникают ограничения, связанные с недостаточным количеством информации об устройствах, включая вариации входных и выходных импедансов. «Вообще, плагины работают друг с другом и с внешним миром так, будто между ними стоят идеальные буферные блоки», говорит Дэвид Трембли (David Tremblay), DSP-программист из компании Avid. «В реальном мире устройства могут взаимодействовать, что приводит к изменениям в особенностях искажений или частотных характеристик. Теоретически, это можно смоделировать, но обычно алгоритм не «знает», что к нему было подключено. Это одна из причин, почему мы добавили систему согласования импедансов True-Z в наш Eleven Rack».

Крис Таунсенд (Avid) добавляет: «Возможно, мы бы смоделировали взаимодействие между гитарой и усилителем, но для этого мы должны знать импеданс гитары во всём частотном диапазоне, что совершенно не практично».

Трембли завершает начатую тему: «Конечно, ещё одно очевидное ограничение – это время, и сколько из него потребуется на разработку эмуляции. Вы можете провести годы, исследуя все варианты использования или поведения, но бизнес диктует свои условия…».

«Мы редко делаем полные модели существующего аналогового оборудования» - говорит Матеуш Возняк (Mateusz Wozniak), главный разработчик компании PSP Audioware. «В большинстве случаев, мы не пытаемся имитировать определённые устройства. Скорее, мы просто стараемся перенести лучшие аналоговые особенности в цифровую среду. Если мы находим правильное решение и оно звучит хорошо, то это…хорошо».

«Мы слушаем оборудование и стараемся ознакомиться с ним как можно ближе», говорит МакДауэлл. «Процесс моделирования – это метод «чёрного ящика»: мы посылаем в устройство множество сигналов, смотрим выходные изменения, и затем начинаем разрабатывать алгоритмы, которые делают те же самые вещи. Некоторые сигналы очень просты, другие – сложны, но идея позади каждого состоит в том, чтобы высветить особенности моделируемого аппарата. Конечно, есть базовые методики моделирования (с использованием набора тестовых тонов или частотных развёрток), но мы считаем, что многие из этих сигналов не являются тем, с чем предназначено работать устройство.

При измерениях крайне важно определить, что является реальным ответом, и что – артефактами тестового сигнала. Ещё лучше, если Вы умеете создавать тестовые сигналы, работающие внутри операционного диапазона моделируемого аппарата. Фокусироваться на «благозвучных» особенностях и удалять плохие (если таковые имеются), понять, как испытательные сигналы затрагиваются устройством – вот прекрасный способ для создания программного обеспечения, которым люди будут пользоваться с не меньшим удовольствием, чем настоящими приборами!

Другие компании предпочитают моделировать схему устройства. Благодаря такому подходу, Вы можете буквально полностью воссоздать его в виде программного кода, и настраивать параметры до тех пор, пока смоделированная и оригинальная версии не зазвучат идентично. Так какой же подход лучше? Моделируя схемотехнику, Вы можете эмулировать устройства с самым экзотическим поведением и создавать практически идеальные копии оригиналов. Однако, здесь Вам придётся вступить в такую скользкую область, как права на интеллектуальную собственность. Используя «чёрный ящик», Вы воссоздаете свойства прибора, опираясь лишь на измерения входных и выходных сигналов. Что происходит внутри неизвестно. Таким образом, реализация конкретного алгоритма зависит только лишь от творческого потенциала разработчиков. Но что Вы сделали, если «заимствовали» чью-то схему и воссоздали её в виде плагина? На мой взгляд, здесь меньше творчества – это больше копия, чем новая разработка. Другое дело, если Ваша компания выпускает и оригинальное железо (например, как Universal Audio): тогда это уже не заимствование, а портирование продукта на новую платформу».

George Massenburg
Известный разработчик Джордж Мэссенбург считает, что совершенно не обязательно пытаться эмулировать реальные аппараты. «При разработке цифрового параметрического эквалайзера MDW всё делалось с нуля. Всё было новым. Кроме того, я даже существенно отошёл от предыдущей работы в этой области. Конечно, некоторые компании очень хорошо моделируют эквалайзеры (Мэссенбург делает реверанс в сторону Universal Audio), но я считаю, что лучше всего работают те вещи, которые не столько «смоделированы» или «эмулированы», сколько просто тщательно спроектированы и запрограммированы.

Насколько хорошо работает любой цифровой процессор, зависит от нескольких факторов, среди которых и доступная вычислительная мощность. DSP-программист с хорошими ушами обычно добивается большего успеха, чем парень, опирающийся исключительно на эмуляции MATLAB. Смоделированные эквалайзеры могут работать хорошо, но, как мне кажется, практически невозможно достоверно смоделировать аналоговый компрессор/лимитер».

Процессы моделирования
В основе моделирующей программы лежит DSP-код, имитирующий изменения амплитудно-частотной характеристики в зависимости от поступающего сигнала и настроек графического интерфейса – иными словами, от положения нарисованных ручек и переключателей. Если имеется принципиальная схема моделируемого устройства, то обычно используется специализированное программное обеспечение, помогающее разработать многомерное дифференциальное уравнение, связывающее выходные значения с изменениями по входу и управляющими параметрами. Это математическое выражение и будет базовой «передаточной функцией» этого устройства.

SPICE (Simulation Program with Integrated Circuit Emphasis) – популярная программа с открытым кодом, используемая для проверки целостности электрических схем и предсказания их поведения. После того, как будут введены все компоненты схемы, программа сгенерирует различные I/O-графики, которые могут использоваться для вычисления передаточных функций. Смоделированные цепи могут содержать различные типы элементов – как активных, так и пассивных. При помощи отдельного компилятора создаётся исполняемый код для той или иной платформы.

Многие разработчики обычно начинают процесс моделирования с тщательного изучения принципиальной схемы оригинала. Дэвид Бернерс (UA): «Мы начинаем с рассмотрения принципиальной схемы, которую часто получаем непосредственно от проектировщиков оригинальных аппаратов. Это помогает выявить потенциальные источники нелинейности. Если таковые имеются, мы должны разработать ряд тестовых сигналов, которые выставят их во всей красе. В результате, у каждого моделируемого устройства будет свой собственный набор испытательных сигналов. Например, мы б не использовали одни и те же сигналы для тестирования 1176 и LA2A, даже при том, что они оба компрессоры. Иногда мы демонтируем устройство, чтобы сделать надлежащие измерения: отключаем боковые цепи в компрессорах, удаляем блоки подмагничивания из ленточных дилэев, выпаиваем некоторые катушки и т.п.

По большей части, наши эмуляции используют физическое моделирование электрических цепей, а не моделирование сигнала. Моделирование сигнала прекрасно подходит для линейных систем, но даёт неадекватные результаты для нелинейных. К примеру, невозможно снять полную характеристику с нелинейного прибора (такого, как старинный аналоговый компрессор), пользуясь только лишь конечным набором тестовых сигналов.

Даже если оригиналы очень линейны, точная модель должна включать такие вещи, как разброс параметров отдельных компонентов и различные паразитные эффекты. Например, даже у самой высококачественной катушки индуктивности есть сопротивление и ёмкость».

pl.jpg

Уди Хеннис (Waves): «По существу, все модели – это более или менее сложные дифференциальные уравнения. На ранних стадиях моделирования разработка алгоритмов обычно осуществляется в какой-нибудь гибкой, пусть даже и не самой эффективной с точки зрения использования ресурсов, математической среде – например, в MATLAB. Это помогает проверить, правильно ли выбраны концепция и технология моделирования. Только после этого начнётся программирование максимально эффективного специфического DSP-кода. К слову, мы используем разные методики даже при моделировании однотипных устройств. Например, наши эквалайзеры SSL, API и PuigTec используют различные движки фильтров, что позволяет добиться максимального соответствия с оригиналом.

К тому же, реальные параметры отдельных компонентов далеко не всегда совпадают с тем, что написано в схеме. Делая множество измерений между входом и выходом, мы можем использовать наиболее подходящие алгоритмы для вычисления фактических параметров, включая влияние паразитных связей. Этот метод более точен, чем выпаивание деталей и измерение их индивидуальных характеристик, поскольку некоторые электрические свойства зависят других компонентов, находящихся в цепи».

И вообще, прежде чем начать работу, следует убедиться, что Ваш образец исправен и работает как положено. Уди Хеннис: «Мы много консультируемся с экспертами... Иногда нам приходится совершать дальние поездки, чтобы найти правильный аппарат».

Bill Gardner (Wave Arts)
Президент компании Wave Arts Билл Гарднер говорит, что такое моделирование «в вычислительном отношении очень затратно; потребление ресурсов растёт в кубической прогрессии от числа узлов/нодов в цепи. (Под узлом подразумевается точка соединения двух и более компонентов). Например, наш плагин Tube Saturator имеет два «ламповых» каскада усиления (эмулируется двойной триод 12AX7) и шесть узлов в нелинейной секции. Он потребляет 33% мощности процессора P4 2,8 ГГц при обработке монофонического сигнала с частотой дискретизации 44,1 кГц. Удвоение количества узлов предоставляет восьмикратное увеличение нагрузки. Полноценный ламповый усилитель, как например Fender Champ с 24 узлами в цепи, предоставил бы 64-кратное увеличение. Таким образом, для работы адекватного эмулятора потребовалось бы 20 таких процессоров! Однако, мощность CPU постоянно растёт. В недалёком будущем мы сможем моделировать любое аналоговое устройство, просто собирая его [виртуальную] схему и управляя ею в реальном времени. И, могу сказать, что эти модели даже будут лучше, чем оригиналы: точно установленные параметры, идеально подобранные компоненты, отсутствие шума…»

Udi Hennis (Waves)
«Аналоговые цепи, даже нелинейные, подчиняются физическим законам. Следовательно, их поведение можно смоделировать с любой произвольной точностью. Виртуальная схема полностью определяет поведение цепи. Больше нет нужды применять отдельные специализированные методики для моделирования каждого компонента и надеяться, что в куче это даст правильный результат. Теперь все компоненты – и линейные, и нелинейные – могут моделироваться в одной рабочей среде. У большинства элементов теперь есть идеальное математическое описание. Конечно, не всегда и не всё так гладко: например, поведение катушек индуктивности и трансформаторов может осложняться такими явлениями, как насыщение и гистерезис. Таким образом, иногда требуются дополнительные, более детальные модели. Но если устройство состоит из элементов с чётко известными характеристиками, достаточно просто собрать его [виртуальную] схему».

Thomas Valter (TC Electronic)
Томас Вальтер из компании TC Electronic говорит, что они используют проприетарные инструменты для разработки моделей. «Большая часть работы над алгоритмом делается без привязки к конкретной платформе. Алгоритмы живут в компьютере, мы пропускаем через них звуковые потоки, слушаем и вносим изменения, чтобы добиться максимального звукового качества. На поздних этапах мы начинаем заниматься реализацией алгоритма в виде плагина. Поначалу мы используем совершенно утрированный стандартный графический интерфейс – только фейдеры и кнопки. К концу процесса добавляется полный GUI и происходит компиляция DSP-алгоритма в виде специфического плагина того или иного формата. Это самая лёгкая часть работы. Самая сложная – заставить алгоритм вести себя так, как мы этого хотим».

Финальное прослушивание
Итак, DSP-код написан и оформлен в виде плагина. Настала заключительная стадия – оценка того, насколько точно плагин имитирует оригинальное устройство.

Уди Хеннис (Waves): «Мы делаем многократные измерения и прослушивания, пытаясь определить сильные и слабые стороны… В самую первую очередь мы оцениваем такие вещи, как частотная характеристика, линейность и THD (Total Harmonic Distortion – коэффициент нелинейных искажений). Кроме того, такие побочные явления, как шум и гул, оказывают значительное влияние на общее звучание. Таким образом, мы прилагаем все усилия, чтобы добиться максимального соответствия».

Томас Вальтер (TC Electronic): «Наши «золотые уши» могут услышать малейшие нюансы в работе алгоритмов, и сообщить программистам, на что следует обратить особое внимание… Мы не только определяем [при помощи приборов], насколько близко к оригинальному устройству работает плагин, но и как это воспринимается на слух профессиональными звукоинженерами».

«Каждое устройство уникально и представляет свой собственный клубок проблем», говорит Андреас Мазуркевич (Andreas Mazurkiewicz) из компании Steinberg. «Визуальное отображение информации не менее важно, чем слушание. Иногда, если для анализа особо трудной проблемы недостаточно генератора сигналов и спектроанализатора, я пишу специальные инструменты».

МакДауэлл (McDSP): «…Во многих случаях, мы приглашаем на тесты владельцев оригинальных устройств, поскольку опытные уши могут заметить различия, пропущенные нашими специалистами».

Никлас Одельхольм (Softube): «Например, типичные ошибки – это другой оттенок искажения или слегка изменённая атака компрессора. Мы стараемся найти компоненты или цепи, которые вызывают эти различия. Например, были небольшие отличия в том, как наша модель 1176-го компрессора искажала сигнал при малом времени восстановления. И мы нашли причину: напряжение смещения в детекторной цепи оригинала отличалось на 2 милливольта. Виртуальная модель была откорректирована, и всё встало на свои места. Ещё один случай: в плагине RS127 Green (из Abbey Road Brilliance Pack) при определённых параметрах настройки наблюдались расхождения с оригиналом. Мы заново измерили все компоненты и удостоверились, что конструкция устройства соответствует схеме. Всё выглядело хорошо, но звучало по-другому. Наконец, мы поняли, что причиной всех наших страданий послужил бракованный переменный резистор. Когда мы вычислили, где прячется косяк, то вставили это в модель и всё тут же заработало. Зачастую, одна ошибка порождает множество других: неправильная частотная характеристика входного трансформатора компрессора повлияет на форму искажения в следующей секции; эта секция, в свою очередь, повлияет на время восстановления…И так далее. Как только Вы находите, где прячется ошибка, всё становится на свои места».

Алекс Уэстнер (Alex Westner) из компании Cakewalk говорит: «Мы прислушиваемся и к положительным, и к отрицательным отзывам. …Иногда, люди сами не знают, что им нравится, а что нет. Таким образом, мы будем корректировать свою модель согласно их положительным ответам, а не пытаться сохранить верность тому, что первоначально собирались смоделировать».

Кен Богданович (Sound Toys): «Сначала мы слушаем, и лишь потом измеряем. Мы слушаем множество различных источников – чистые тоны, барабаны, вокалы, гитары и полные миксы – в широком диапазоне уровней и настроек. Если что-то звучит неправильно, мы снова достаём наши измерительные инструменты и пытаемся локализовать проблему».

Дейв Бернерс (UA): «Наши слухачи работают в тесном взаимодействии с разработчиками. Одно из преимуществ физического моделирования состоит в том, что в процессе анализа схемы [оригинального устройства] наши инженеры очень близко знакомятся с ней, что значительно усиливает интуицию относительно поведения оборудования. Таким образом, становится легче идентифицировать найденные в процессе слуховых тестов проблемы. Конечно, мы также тесно сотрудничаем с проектировщиками оригинальных устройств из таких компаний, как Neve, Manley Labs, Empirical Labs, Roland и EMT. Это гарантирует, что результаты будут отвечать и нашим, и их стандартам».

Заключение
Дебаты по поводу качества этих эмуляций вряд ли закончатся в обозримом будущем. С другой стороны, не каждый из нас способен приобрести оригинальные устройства, которые, зачастую, имеются в единичных экземплярах и стоят бешеных денег. И плагины дают возможность любому пользователю DAW поставить себе на службу их уникальный звуковой характер. К тому же, количество одновременно работающих плагинов ограничено только мощностью центрального процессора. И Вашим вкусом…

Перевод подготовил: Вячеслав Бережной 

Как делают плагины-эмуляторы

<div>благодаря плагинам, эмулирующим свойства реальных устройств, огромное количество легендарных студийных аппаратов стало &quot;доступно&quot; для простых смертных. Но как разработчики могут захватить волшебство оригиналов? К каким компромиссам приходится прибегать? Мы поговорим об этом со специалистами, чья работа заключается в превращении ламп и трансформаторов <b>в холодные строчки программного кода…</b></div> <div> <br /> </div> <div><b>Базовые подходы</b></div> <div>Есть два основных пути для разработчика, которыми он может следовать при создании плагина, эмулирующего свойства конкретного аналогового или цифрового процессора. Первый способ – это пропустить через устройство множество статических и динамических сигналов, измерить характеристики вход-выход при всех параметрах настройки и разработать соответствующий DSP-код, точно воссоздающий все эти изменения. Второй способ – это исследовать принципиальную схему и смоделировать её составляющие элементы/блоки. Большинство разработчиков комбинирует оба метода.</div> <div> <br /> </div> <div><b>David Berners (Universal Audio):</b></div> <div>«Любое классическое оборудование можно физически смоделировать в цифровой форме» - говорит Дэвид Бернерс (руководитель исследовательских работ в компании Universal Audio). «Вообще, сделать точную модель аналогового устройства с широкодиапазонным нелинейным поведением – ещё та задача. Но именно эта нелинейность зачастую делает звучание этих аппаратов столь привлекательным и желанным. И чем нелинейнее их поведение, тем сложнее будет физическая модель и тем больше потребуется вычислительных мощностей».</div> <div> <br /> </div> <div>Один из эффектов, пока ещё слишком сложных для точного моделирования – это звучание реальных акустических пространств. «Акустические пространства проще моделировать, пользуясь статистическим анализом или прямым измерением при помощи сэмплирования» - заявляет Бернерс, который также ведёт курсы по DSP и физическому моделированию в Центре компьютерных исследований в области музыки и акустики Стэндфортского университета (Stanford University’s Center for Computer Research in Music and Acoustics - CCRMA).</div> <div> <br /> </div> <div>«Большинство моделей берёт за основу линейную составляющую, которую легко захватить. Но весь трюк – в нелинейных моделях», подтверждает Edmund Pirali из компании Intelligent Devices (не так давно выпустила плагин, эмулирующий знаменитый аналоговый эффект Marshall Time Modulator). «Конечно, Вы можете попробовать сделать полностью реалистичную модель, но это чрезвычайно сложно и ресурсозатратно. Таким образом, общий подход – это или прибегнуть к интерполяции различий между отдельными линейными моделями, или разработать методы имитации нелинейного поведения. Так как все аналоговые устройства состоят из компонентов с достаточно определённым поведением, то цифровое моделирование этих компонентов не представляет особой сложности. Главная задача – захватить дрейф параметров, пробои и утечки, непредсказуемое поведение. Мы моделировали поведение различных маленьких блоков Time Modulator’а. Большая часть времени была потрачена на разработку корректных моделей всевозможных вариантов поведения компонентов, и затем – на создание эффективных алгоритмов комплексной нелинейной модели».</div> <div> <br /> </div> <div><b>Уди Хеннис (Waves)</b> полагает, что успех моделирования зависит от многих факторов. Он считает, что намного проще работать с устройствами, у которых имеются шаговые регуляторы. Если требуется, Вы легко можете восстановить нужные настройки, поскольку каждому параметру соответствует чётко определённое положение регулятора. Если у ручек нет фиксированных положений, намного труднее добиться полной повторяемости, поскольку даже небольшие отклонения от точных позиций могут очень сильно повлиять на характеристики прибора. </div> <div> <br /> </div> <div>«Если эффект подчиняется законам физики, его можно смоделировать» - утверждает Никлас Одельхольм из компании Softube. «Парни в CERN умудряются моделировать чрезвычайно стохастическое поведение фундаментальных частиц, и моделирование звуковых устройств не сильно от этого отличается. Плагин влияет на сигнал точно таким же путём, как и реальный прибор, но только это делается при помощи математических вычислений. Главные ограничения – это требуемые вычислительные мощности и/или время, необходимое для вычислений. К примеру, точное моделирование поведения звуковых волн в помещении (как они распространяются, отражаются, затухают, взаимодействуют друг с другом, стенами и т.п.) – чрезвычайно ресурсозатратно. Вероятно, алгоритмам потребуется какое-то время на вычисление точных моделей…»</div> <div> <br /> </div> <div><b>Colin McDowell (McDSP)</b></div> <div>«Всё, что сделано в железе, может быть воссоздано в виде программного обеспечения» - декларирует Коулин МакДауэлл, основатель и президент компании McDSP. «При написании программ Вы практически не ограничены никакими рамками… Вам предоставлено намного больше гибкости, чем при работе с «неподвижным» железом. Я считаю, что утверждение по поводу того, что «классические» аналоговые устройства способны на что-то такое, что не может сделать средний компьютер – мягко говоря, сильно устарело. Ограничения, если таковые вообще имеются, существуют только лишь в воображении, опыте и творческом потенциале разработчиков плагинов».</div> <div> <br /> </div> <div>«Фактически, мы ограничены мощностью процессоров и нашим пониманием (или недопониманием) глубинных основ работы тех или иных устройств» - говорит Кен Богданович (Ken Bogdanowicz) из компании Sound Toys. «Если процессор линеен и статичен, мы легко можем его смоделировать. Для измерения передаточной функции достаточно использовать синусоидальные развёртки или широкополосные испытательные сигналы. Но если характеристики устройства изменяются во времени или оно имеет нелинейное поведение, то мы должны понять КАК оно работает. Иногда это может быть сделано путём снятия характеристик с отдельных элементов схемы. В других случаях всё намного сложнее. Среди подобных задач – моделирование аналоговой ленты или некоторых древних цифровых ревербераторов, рабочие алгоритмы которых неизвестны».</div> <div> <br /> </div> <div>Иногда возникают ограничения, связанные с недостаточным количеством информации об устройствах, включая вариации входных и выходных импедансов. «Вообще, плагины работают друг с другом и с внешним миром так, будто между ними стоят идеальные буферные блоки», говорит Дэвид Трембли (David Tremblay), DSP-программист из компании Avid. «В реальном мире устройства могут взаимодействовать, что приводит к изменениям в особенностях искажений или частотных характеристик. Теоретически, это можно смоделировать, но обычно алгоритм не «знает», что к нему было подключено. Это одна из причин, почему мы добавили систему согласования импедансов True-Z в наш Eleven Rack».</div> <div> <br /> </div> <div><b>Крис Таунсенд (Avid) </b>добавляет: «Возможно, мы бы смоделировали взаимодействие между гитарой и усилителем, но для этого мы должны знать импеданс гитары во всём частотном диапазоне, что совершенно не практично».</div> <div> <br /> </div> <div><b>Трембли</b> завершает начатую тему: «Конечно, ещё одно очевидное ограничение – это время, и сколько из него потребуется на разработку эмуляции. Вы можете провести годы, исследуя все варианты использования или поведения, но бизнес диктует свои условия…».</div> <div> <br /> </div> <div>«Мы редко делаем полные модели существующего аналогового оборудования» - говорит Матеуш Возняк (Mateusz Wozniak), главный разработчик компании PSP Audioware. «В большинстве случаев, мы не пытаемся имитировать определённые устройства. Скорее, мы просто стараемся перенести лучшие аналоговые особенности в цифровую среду. Если мы находим правильное решение и оно звучит хорошо, то это…хорошо».</div> <div> <br /> </div> <div>«Мы слушаем оборудование и стараемся ознакомиться с ним как можно ближе», говорит МакДауэлл. «Процесс моделирования – это метод «чёрного ящика»: мы посылаем в устройство множество сигналов, смотрим выходные изменения, и затем начинаем разрабатывать алгоритмы, которые делают те же самые вещи. Некоторые сигналы очень просты, другие – сложны, но идея позади каждого состоит в том, чтобы высветить особенности моделируемого аппарата. Конечно, есть <b>базовые методики моделирования</b> (с использованием набора тестовых тонов или частотных развёрток), но мы считаем, что многие из этих сигналов не являются тем, с чем предназначено работать устройство.</div> <div> <br /> </div> <div>При измерениях крайне важно определить, что является реальным ответом, и что – артефактами тестового сигнала. Ещё лучше, если Вы умеете создавать тестовые сигналы, работающие внутри операционного диапазона моделируемого аппарата. Фокусироваться на «благозвучных» особенностях и удалять плохие (если таковые имеются), понять, как испытательные сигналы затрагиваются устройством – вот прекрасный способ для создания программного обеспечения, которым люди будут пользоваться с не меньшим удовольствием, чем настоящими приборами!</div> <div> <br /> </div> <div>Другие компании предпочитают моделировать схему устройства. Благодаря такому подходу, Вы можете буквально полностью воссоздать его в виде программного кода, и настраивать параметры до тех пор, пока смоделированная и оригинальная версии не зазвучат идентично. Так какой же подход лучше? Моделируя схемотехнику, Вы можете эмулировать устройства с самым экзотическим поведением и создавать практически идеальные копии оригиналов. Однако, здесь Вам придётся вступить в такую скользкую область, как права на интеллектуальную собственность. Используя «чёрный ящик», Вы воссоздаете свойства прибора, опираясь лишь на измерения входных и выходных сигналов. Что происходит внутри неизвестно. Таким образом, реализация конкретного алгоритма зависит только лишь от творческого потенциала разработчиков. Но что Вы сделали, если «заимствовали» чью-то схему и воссоздали её в виде плагина? На мой взгляд, здесь меньше творчества – это больше копия, чем новая разработка. Другое дело, если Ваша компания выпускает и оригинальное железо (например, как Universal Audio): тогда это уже не заимствование, а портирование продукта на новую платформу».</div> <div> <br /> </div> <div><b>George Massenburg</b></div> <div>Известный разработчик Джордж Мэссенбург считает, что совершенно не обязательно пытаться эмулировать реальные аппараты. «При разработке цифрового параметрического эквалайзера MDW всё делалось с нуля. Всё было новым. Кроме того, я даже существенно отошёл от предыдущей работы в этой области. Конечно, некоторые компании очень хорошо моделируют эквалайзеры (Мэссенбург делает реверанс в сторону Universal Audio), но я считаю, что лучше всего работают те вещи, которые не столько «смоделированы» или «эмулированы», сколько просто тщательно спроектированы и запрограммированы.</div> <div> <br /> </div> <div>Насколько хорошо работает любой цифровой процессор, зависит от нескольких факторов, среди которых и доступная вычислительная мощность. DSP-программист с хорошими ушами обычно добивается большего успеха, чем парень, опирающийся исключительно на эмуляции MATLAB. Смоделированные эквалайзеры могут работать хорошо, но, как мне кажется, практически невозможно достоверно смоделировать аналоговый компрессор/лимитер».</div> <div> <br /> </div> <div><b>Процессы моделирования</b></div> <div>В основе моделирующей программы лежит DSP-код, имитирующий изменения амплитудно-частотной характеристики в зависимости от поступающего сигнала и настроек графического интерфейса – иными словами, от положения нарисованных ручек и переключателей. Если имеется принципиальная схема моделируемого устройства, то обычно используется специализированное программное обеспечение, помогающее разработать многомерное дифференциальное уравнение, связывающее выходные значения с изменениями по входу и управляющими параметрами. Это математическое выражение и будет базовой «передаточной функцией» этого устройства.</div> <div> <br /> </div> <div><b>SPICE </b>(Simulation Program with Integrated Circuit Emphasis) – популярная программа с открытым кодом, используемая для проверки целостности электрических схем и предсказания их поведения. После того, как будут введены все компоненты схемы, программа сгенерирует различные I/O-графики, которые могут использоваться для вычисления передаточных функций. Смоделированные цепи могут содержать различные типы элементов – как активных, так и пассивных. При помощи отдельного компилятора создаётся исполняемый код для той или иной платформы.</div> <div> <br /> </div> <div>Многие разработчики обычно начинают процесс моделирования с тщательного изучения принципиальной схемы оригинала. Дэвид Бернерс (UA): «Мы начинаем с рассмотрения принципиальной схемы, которую часто получаем непосредственно от проектировщиков оригинальных аппаратов. Это помогает выявить потенциальные источники нелинейности. Если таковые имеются, мы должны разработать ряд тестовых сигналов, которые выставят их во всей красе. В результате, у каждого моделируемого устройства будет свой собственный набор испытательных сигналов. Например, мы б не использовали одни и те же сигналы для тестирования 1176 и LA2A, даже при том, что они оба компрессоры. Иногда мы демонтируем устройство, чтобы сделать надлежащие измерения: отключаем боковые цепи в компрессорах, удаляем блоки подмагничивания из ленточных дилэев, выпаиваем некоторые катушки и т.п.</div> <div> <br /> </div> <div>По большей части, <b>наши эмуляции используют физическое моделирование электрических цепей,</b> а не моделирование сигнала. Моделирование сигнала прекрасно подходит для линейных систем, но даёт неадекватные результаты для нелинейных. К примеру, невозможно снять полную характеристику с нелинейного прибора (такого, как старинный аналоговый компрессор), пользуясь только лишь конечным набором тестовых сигналов.</div> <div> <br /> </div> <div>Даже если оригиналы очень линейны, точная модель должна включать такие вещи, как разброс параметров отдельных компонентов и различные паразитные эффекты. Например, даже у самой высококачественной катушки индуктивности есть сопротивление и ёмкость».</div> <div> <br /> </div> <div><img src="/upload/medialibrary/311/pl.jpg" title="pl.jpg" border="0" alt="pl.jpg" width="512" height="266" /> <br /> </div> <div> <br /> </div> <div><b>Уди Хеннис (Waves)</b>: «По существу, все модели – это более или менее сложные дифференциальные уравнения. На ранних стадиях моделирования разработка алгоритмов обычно осуществляется в какой-нибудь гибкой, пусть даже и не самой эффективной с точки зрения использования ресурсов, математической среде – например, в MATLAB. Это помогает проверить, правильно ли выбраны концепция и технология моделирования. Только после этого начнётся программирование максимально эффективного специфического DSP-кода. К слову, мы используем разные методики даже при моделировании однотипных устройств. Например, наши эквалайзеры SSL, API и PuigTec используют различные движки фильтров, что позволяет добиться максимального соответствия с оригиналом.</div> <div> <br /> </div> <div>К тому же, реальные параметры отдельных компонентов далеко не всегда совпадают с тем, что написано в схеме. Делая множество измерений между входом и выходом, мы можем использовать наиболее подходящие алгоритмы для вычисления фактических параметров, включая влияние паразитных связей. Этот метод более точен, чем выпаивание деталей и измерение их индивидуальных характеристик, поскольку некоторые электрические свойства <b>зависят других компонентов</b>, находящихся в цепи».</div> <div> <br /> </div> <div>И вообще, прежде чем начать работу, следует убедиться, что Ваш образец исправен и работает как положено. Уди Хеннис: «Мы много консультируемся с экспертами... Иногда нам приходится совершать дальние поездки, чтобы найти правильный аппарат».</div> <div> <br /> </div> <div><b>Bill Gardner (Wave Arts)</b></div> <div>Президент компании Wave Arts Билл Гарднер говорит, что такое моделирование «в вычислительном отношении очень затратно; потребление ресурсов растёт в кубической прогрессии от числа узлов/нодов в цепи. (Под узлом подразумевается точка соединения двух и более компонентов). Например, наш плагин Tube Saturator имеет два «ламповых» каскада усиления (эмулируется двойной триод 12AX7) и шесть узлов в нелинейной секции. Он потребляет 33% мощности процессора P4 2,8 ГГц при обработке монофонического сигнала с частотой дискретизации 44,1 кГц. Удвоение количества узлов предоставляет восьмикратное увеличение нагрузки. Полноценный ламповый усилитель, как например Fender Champ с 24 узлами в цепи, предоставил бы 64-кратное увеличение. Таким образом, для работы адекватного эмулятора потребовалось бы 20 таких процессоров! Однако, мощность CPU постоянно растёт. В недалёком будущем мы сможем моделировать любое аналоговое устройство, просто собирая его [виртуальную] схему и управляя ею в реальном времени. И, могу сказать, что эти модели даже будут лучше, чем оригиналы: точно установленные параметры, идеально подобранные компоненты, отсутствие шума…»</div> <div> <br /> </div> <div><b>Udi Hennis (Waves)</b></div> <div>«Аналоговые цепи, даже нелинейные, подчиняются физическим законам. Следовательно, их поведение можно смоделировать с любой произвольной точностью. Виртуальная схема полностью определяет поведение цепи. Больше нет нужды применять отдельные специализированные методики для моделирования каждого компонента и надеяться, что в куче это даст правильный результат. Теперь все компоненты – и линейные, и нелинейные – могут моделироваться в одной рабочей среде. У большинства элементов теперь есть идеальное математическое описание. Конечно, не всегда и не всё так гладко: например, поведение катушек индуктивности и трансформаторов может осложняться такими явлениями, как насыщение и гистерезис. Таким образом, иногда требуются дополнительные, более детальные модели. Но если устройство состоит из элементов с чётко известными характеристиками, достаточно просто собрать его [виртуальную] схему».</div> <div> <br /> </div> <div><b>Thomas Valter (TC Electronic)</b></div> <div>Томас Вальтер из компании TC Electronic говорит, что они используют проприетарные инструменты для разработки моделей. «Большая часть работы над алгоритмом делается без привязки к конкретной платформе. Алгоритмы живут в компьютере, мы пропускаем через них звуковые потоки, слушаем и вносим изменения, чтобы добиться максимального звукового качества. На поздних этапах мы начинаем заниматься реализацией алгоритма в виде плагина. Поначалу мы используем совершенно утрированный стандартный графический интерфейс – только фейдеры и кнопки. К концу процесса добавляется полный GUI и происходит компиляция DSP-алгоритма в виде специфического плагина того или иного формата. Это самая лёгкая часть работы. Самая сложная – заставить алгоритм вести себя так, как мы этого хотим».</div> <div> <br /> </div> <div><b>Финальное прослушивание</b></div> <div>Итак, DSP-код написан и оформлен в виде плагина. Настала заключительная стадия – оценка того, насколько точно плагин имитирует оригинальное устройство.</div> <div> <br /> </div> <div><b>Уди Хеннис (Waves):</b> «Мы делаем многократные измерения и прослушивания, пытаясь определить сильные и слабые стороны… В самую первую очередь мы оцениваем такие вещи, как частотная характеристика, линейность и THD (Total Harmonic Distortion – коэффициент нелинейных искажений). Кроме того, такие побочные явления, как шум и гул, оказывают значительное влияние на общее звучание. Таким образом, мы прилагаем все усилия, чтобы добиться максимального соответствия».</div> <div> <br /> </div> <div><b>Томас Вальтер (TC Electronic): </b>«Наши «золотые уши» могут услышать малейшие нюансы в работе алгоритмов, и сообщить программистам, на что следует обратить особое внимание… Мы не только определяем [при помощи приборов], насколько близко к оригинальному устройству работает плагин, но и как это воспринимается на слух профессиональными звукоинженерами».</div> <div> <br /> </div> <div>«Каждое устройство уникально и представляет свой собственный клубок проблем», говорит Андреас Мазуркевич (Andreas Mazurkiewicz) из компании Steinberg. «Визуальное отображение информации не менее важно, чем слушание. Иногда, если для анализа особо трудной проблемы недостаточно генератора сигналов и спектроанализатора, я пишу специальные инструменты».</div> <div> <br /> </div> <div><b>МакДауэлл (McDSP):</b> «…Во многих случаях, мы приглашаем на тесты владельцев оригинальных устройств, поскольку опытные уши могут заметить различия, пропущенные нашими специалистами».</div> <div> <br /> </div> <div><b>Никлас Одельхольм (Softube):</b> «Например, типичные ошибки – это другой оттенок искажения или слегка изменённая атака компрессора. Мы стараемся найти компоненты или цепи, которые вызывают эти различия. Например, были небольшие отличия в том, как наша модель 1176-го компрессора искажала сигнал при малом времени восстановления. И мы нашли причину: напряжение смещения в детекторной цепи оригинала отличалось на 2 милливольта. Виртуальная модель была откорректирована, и всё встало на свои места. Ещё один случай: в плагине RS127 Green (из Abbey Road Brilliance Pack) при определённых параметрах настройки наблюдались расхождения с оригиналом. Мы заново измерили все компоненты и удостоверились, что конструкция устройства соответствует схеме. Всё выглядело хорошо, но звучало по-другому. Наконец, мы поняли, что причиной всех наших страданий послужил бракованный переменный резистор. Когда мы вычислили, где прячется косяк, то вставили это в модель и всё тут же заработало. Зачастую, одна ошибка порождает множество других: неправильная частотная характеристика входного трансформатора компрессора повлияет на форму искажения в следующей секции; эта секция, в свою очередь, повлияет на время восстановления…И так далее. Как только Вы находите, где прячется ошибка, всё становится на свои места».</div> <div> <br /> </div> <div>Алекс Уэстнер (Alex Westner) из компании Cakewalk говорит: «Мы прислушиваемся и к положительным, и к отрицательным отзывам. …Иногда, люди сами не знают, что им нравится, а что нет. Таким образом, мы будем корректировать свою модель согласно их положительным ответам, а не пытаться сохранить верность тому, что первоначально собирались смоделировать».</div> <div> <br /> </div> <div>Кен Богданович (Sound Toys): «Сначала мы слушаем, и лишь потом измеряем. Мы слушаем множество различных источников – чистые тоны, барабаны, вокалы, гитары и полные миксы – в широком диапазоне уровней и настроек. Если что-то звучит неправильно, мы снова достаём наши измерительные инструменты и пытаемся локализовать проблему».</div> <div> <br /> </div> <div>Дейв Бернерс (UA): «Наши слухачи работают в тесном взаимодействии с разработчиками. Одно из преимуществ физического моделирования состоит в том, что в процессе анализа схемы [оригинального устройства] наши инженеры очень близко знакомятся с ней, что значительно усиливает интуицию относительно поведения оборудования. Таким образом, становится легче идентифицировать найденные в процессе слуховых тестов проблемы. Конечно, мы также тесно сотрудничаем с проектировщиками оригинальных устройств из таких компаний, как Neve, Manley Labs, Empirical Labs, Roland и EMT. Это гарантирует, что результаты будут отвечать и нашим, и их стандартам».</div> <div> <br /> </div> <div><b>Заключение</b></div> <div>Дебаты по поводу качества этих эмуляций вряд ли закончатся в обозримом будущем. С другой стороны, не каждый из нас способен приобрести оригинальные устройства, которые, зачастую, имеются в единичных экземплярах и стоят бешеных денег. И плагины дают возможность любому пользователю DAW поставить себе на службу их уникальный звуковой характер. К тому же, количество одновременно работающих плагинов ограничено только мощностью центрального процессора. И Вашим вкусом…</div> <div> <br /> </div> <div><i>Перевод подготовил: Вячеслав Бережной </i></div>

2016-07-03

Топ Звук
Россия
Московская область
Москва
ул. Ботаническая, дом 3
8 (905) 506-3-506
5
5
1
5
1
Как делают плагины-эмуляторы

Как делают плагины-эмуляторы

Как делают плагины-эмуляторы

<div>благодаря плагинам, эмулирующим свойства реальных устройств, огромное количество легендарных студийных аппаратов стало &quot;доступно&quot; для простых смертных. Но как разработчики могут захватить волшебство оригиналов? К каким компромиссам приходится прибегать? Мы поговорим об этом со специалистами, чья работа заключается в превращении ламп и трансформаторов <b>в холодные строчки программного кода…</b></div> <div> <br /> </div> <div><b>Базовые подходы</b></div> <div>Есть два основных пути для разработчика, которыми он может следовать при создании плагина, эмулирующего свойства конкретного аналогового или цифрового процессора. Первый способ – это пропустить через устройство множество статических и динамических сигналов, измерить характеристики вход-выход при всех параметрах настройки и разработать соответствующий DSP-код, точно воссоздающий все эти изменения. Второй способ – это исследовать принципиальную схему и смоделировать её составляющие элементы/блоки. Большинство разработчиков комбинирует оба метода.</div> <div> <br /> </div> <div><b>David Berners (Universal Audio):</b></div> <div>«Любое классическое оборудование можно физически смоделировать в цифровой форме» - говорит Дэвид Бернерс (руководитель исследовательских работ в компании Universal Audio). «Вообще, сделать точную модель аналогового устройства с широкодиапазонным нелинейным поведением – ещё та задача. Но именно эта нелинейность зачастую делает звучание этих аппаратов столь привлекательным и желанным. И чем нелинейнее их поведение, тем сложнее будет физическая модель и тем больше потребуется вычислительных мощностей».</div> <div> <br /> </div> <div>Один из эффектов, пока ещё слишком сложных для точного моделирования – это звучание реальных акустических пространств. «Акустические пространства проще моделировать, пользуясь статистическим анализом или прямым измерением при помощи сэмплирования» - заявляет Бернерс, который также ведёт курсы по DSP и физическому моделированию в Центре компьютерных исследований в области музыки и акустики Стэндфортского университета (Stanford University’s Center for Computer Research in Music and Acoustics - CCRMA).</div> <div> <br /> </div> <div>«Большинство моделей берёт за основу линейную составляющую, которую легко захватить. Но весь трюк – в нелинейных моделях», подтверждает Edmund Pirali из компании Intelligent Devices (не так давно выпустила плагин, эмулирующий знаменитый аналоговый эффект Marshall Time Modulator). «Конечно, Вы можете попробовать сделать полностью реалистичную модель, но это чрезвычайно сложно и ресурсозатратно. Таким образом, общий подход – это или прибегнуть к интерполяции различий между отдельными линейными моделями, или разработать методы имитации нелинейного поведения. Так как все аналоговые устройства состоят из компонентов с достаточно определённым поведением, то цифровое моделирование этих компонентов не представляет особой сложности. Главная задача – захватить дрейф параметров, пробои и утечки, непредсказуемое поведение. Мы моделировали поведение различных маленьких блоков Time Modulator’а. Большая часть времени была потрачена на разработку корректных моделей всевозможных вариантов поведения компонентов, и затем – на создание эффективных алгоритмов комплексной нелинейной модели».</div> <div> <br /> </div> <div><b>Уди Хеннис (Waves)</b> полагает, что успех моделирования зависит от многих факторов. Он считает, что намного проще работать с устройствами, у которых имеются шаговые регуляторы. Если требуется, Вы легко можете восстановить нужные настройки, поскольку каждому параметру соответствует чётко определённое положение регулятора. Если у ручек нет фиксированных положений, намного труднее добиться полной повторяемости, поскольку даже небольшие отклонения от точных позиций могут очень сильно повлиять на характеристики прибора. </div> <div> <br /> </div> <div>«Если эффект подчиняется законам физики, его можно смоделировать» - утверждает Никлас Одельхольм из компании Softube. «Парни в CERN умудряются моделировать чрезвычайно стохастическое поведение фундаментальных частиц, и моделирование звуковых устройств не сильно от этого отличается. Плагин влияет на сигнал точно таким же путём, как и реальный прибор, но только это делается при помощи математических вычислений. Главные ограничения – это требуемые вычислительные мощности и/или время, необходимое для вычислений. К примеру, точное моделирование поведения звуковых волн в помещении (как они распространяются, отражаются, затухают, взаимодействуют друг с другом, стенами и т.п.) – чрезвычайно ресурсозатратно. Вероятно, алгоритмам потребуется какое-то время на вычисление точных моделей…»</div> <div> <br /> </div> <div><b>Colin McDowell (McDSP)</b></div> <div>«Всё, что сделано в железе, может быть воссоздано в виде программного обеспечения» - декларирует Коулин МакДауэлл, основатель и президент компании McDSP. «При написании программ Вы практически не ограничены никакими рамками… Вам предоставлено намного больше гибкости, чем при работе с «неподвижным» железом. Я считаю, что утверждение по поводу того, что «классические» аналоговые устройства способны на что-то такое, что не может сделать средний компьютер – мягко говоря, сильно устарело. Ограничения, если таковые вообще имеются, существуют только лишь в воображении, опыте и творческом потенциале разработчиков плагинов».</div> <div> <br /> </div> <div>«Фактически, мы ограничены мощностью процессоров и нашим пониманием (или недопониманием) глубинных основ работы тех или иных устройств» - говорит Кен Богданович (Ken Bogdanowicz) из компании Sound Toys. «Если процессор линеен и статичен, мы легко можем его смоделировать. Для измерения передаточной функции достаточно использовать синусоидальные развёртки или широкополосные испытательные сигналы. Но если характеристики устройства изменяются во времени или оно имеет нелинейное поведение, то мы должны понять КАК оно работает. Иногда это может быть сделано путём снятия характеристик с отдельных элементов схемы. В других случаях всё намного сложнее. Среди подобных задач – моделирование аналоговой ленты или некоторых древних цифровых ревербераторов, рабочие алгоритмы которых неизвестны».</div> <div> <br /> </div> <div>Иногда возникают ограничения, связанные с недостаточным количеством информации об устройствах, включая вариации входных и выходных импедансов. «Вообще, плагины работают друг с другом и с внешним миром так, будто между ними стоят идеальные буферные блоки», говорит Дэвид Трембли (David Tremblay), DSP-программист из компании Avid. «В реальном мире устройства могут взаимодействовать, что приводит к изменениям в особенностях искажений или частотных характеристик. Теоретически, это можно смоделировать, но обычно алгоритм не «знает», что к нему было подключено. Это одна из причин, почему мы добавили систему согласования импедансов True-Z в наш Eleven Rack».</div> <div> <br /> </div> <div><b>Крис Таунсенд (Avid) </b>добавляет: «Возможно, мы бы смоделировали взаимодействие между гитарой и усилителем, но для этого мы должны знать импеданс гитары во всём частотном диапазоне, что совершенно не практично».</div> <div> <br /> </div> <div><b>Трембли</b> завершает начатую тему: «Конечно, ещё одно очевидное ограничение – это время, и сколько из него потребуется на разработку эмуляции. Вы можете провести годы, исследуя все варианты использования или поведения, но бизнес диктует свои условия…».</div> <div> <br /> </div> <div>«Мы редко делаем полные модели существующего аналогового оборудования» - говорит Матеуш Возняк (Mateusz Wozniak), главный разработчик компании PSP Audioware. «В большинстве случаев, мы не пытаемся имитировать определённые устройства. Скорее, мы просто стараемся перенести лучшие аналоговые особенности в цифровую среду. Если мы находим правильное решение и оно звучит хорошо, то это…хорошо».</div> <div> <br /> </div> <div>«Мы слушаем оборудование и стараемся ознакомиться с ним как можно ближе», говорит МакДауэлл. «Процесс моделирования – это метод «чёрного ящика»: мы посылаем в устройство множество сигналов, смотрим выходные изменения, и затем начинаем разрабатывать алгоритмы, которые делают те же самые вещи. Некоторые сигналы очень просты, другие – сложны, но идея позади каждого состоит в том, чтобы высветить особенности моделируемого аппарата. Конечно, есть <b>базовые методики моделирования</b> (с использованием набора тестовых тонов или частотных развёрток), но мы считаем, что многие из этих сигналов не являются тем, с чем предназначено работать устройство.</div> <div> <br /> </div> <div>При измерениях крайне важно определить, что является реальным ответом, и что – артефактами тестового сигнала. Ещё лучше, если Вы умеете создавать тестовые сигналы, работающие внутри операционного диапазона моделируемого аппарата. Фокусироваться на «благозвучных» особенностях и удалять плохие (если таковые имеются), понять, как испытательные сигналы затрагиваются устройством – вот прекрасный способ для создания программного обеспечения, которым люди будут пользоваться с не меньшим удовольствием, чем настоящими приборами!</div> <div> <br /> </div> <div>Другие компании предпочитают моделировать схему устройства. Благодаря такому подходу, Вы можете буквально полностью воссоздать его в виде программного кода, и настраивать параметры до тех пор, пока смоделированная и оригинальная версии не зазвучат идентично. Так какой же подход лучше? Моделируя схемотехнику, Вы можете эмулировать устройства с самым экзотическим поведением и создавать практически идеальные копии оригиналов. Однако, здесь Вам придётся вступить в такую скользкую область, как права на интеллектуальную собственность. Используя «чёрный ящик», Вы воссоздаете свойства прибора, опираясь лишь на измерения входных и выходных сигналов. Что происходит внутри неизвестно. Таким образом, реализация конкретного алгоритма зависит только лишь от творческого потенциала разработчиков. Но что Вы сделали, если «заимствовали» чью-то схему и воссоздали её в виде плагина? На мой взгляд, здесь меньше творчества – это больше копия, чем новая разработка. Другое дело, если Ваша компания выпускает и оригинальное железо (например, как Universal Audio): тогда это уже не заимствование, а портирование продукта на новую платформу».</div> <div> <br /> </div> <div><b>George Massenburg</b></div> <div>Известный разработчик Джордж Мэссенбург считает, что совершенно не обязательно пытаться эмулировать реальные аппараты. «При разработке цифрового параметрического эквалайзера MDW всё делалось с нуля. Всё было новым. Кроме того, я даже существенно отошёл от предыдущей работы в этой области. Конечно, некоторые компании очень хорошо моделируют эквалайзеры (Мэссенбург делает реверанс в сторону Universal Audio), но я считаю, что лучше всего работают те вещи, которые не столько «смоделированы» или «эмулированы», сколько просто тщательно спроектированы и запрограммированы.</div> <div> <br /> </div> <div>Насколько хорошо работает любой цифровой процессор, зависит от нескольких факторов, среди которых и доступная вычислительная мощность. DSP-программист с хорошими ушами обычно добивается большего успеха, чем парень, опирающийся исключительно на эмуляции MATLAB. Смоделированные эквалайзеры могут работать хорошо, но, как мне кажется, практически невозможно достоверно смоделировать аналоговый компрессор/лимитер».</div> <div> <br /> </div> <div><b>Процессы моделирования</b></div> <div>В основе моделирующей программы лежит DSP-код, имитирующий изменения амплитудно-частотной характеристики в зависимости от поступающего сигнала и настроек графического интерфейса – иными словами, от положения нарисованных ручек и переключателей. Если имеется принципиальная схема моделируемого устройства, то обычно используется специализированное программное обеспечение, помогающее разработать многомерное дифференциальное уравнение, связывающее выходные значения с изменениями по входу и управляющими параметрами. Это математическое выражение и будет базовой «передаточной функцией» этого устройства.</div> <div> <br /> </div> <div><b>SPICE </b>(Simulation Program with Integrated Circuit Emphasis) – популярная программа с открытым кодом, используемая для проверки целостности электрических схем и предсказания их поведения. После того, как будут введены все компоненты схемы, программа сгенерирует различные I/O-графики, которые могут использоваться для вычисления передаточных функций. Смоделированные цепи могут содержать различные типы элементов – как активных, так и пассивных. При помощи отдельного компилятора создаётся исполняемый код для той или иной платформы.</div> <div> <br /> </div> <div>Многие разработчики обычно начинают процесс моделирования с тщательного изучения принципиальной схемы оригинала. Дэвид Бернерс (UA): «Мы начинаем с рассмотрения принципиальной схемы, которую часто получаем непосредственно от проектировщиков оригинальных аппаратов. Это помогает выявить потенциальные источники нелинейности. Если таковые имеются, мы должны разработать ряд тестовых сигналов, которые выставят их во всей красе. В результате, у каждого моделируемого устройства будет свой собственный набор испытательных сигналов. Например, мы б не использовали одни и те же сигналы для тестирования 1176 и LA2A, даже при том, что они оба компрессоры. Иногда мы демонтируем устройство, чтобы сделать надлежащие измерения: отключаем боковые цепи в компрессорах, удаляем блоки подмагничивания из ленточных дилэев, выпаиваем некоторые катушки и т.п.</div> <div> <br /> </div> <div>По большей части, <b>наши эмуляции используют физическое моделирование электрических цепей,</b> а не моделирование сигнала. Моделирование сигнала прекрасно подходит для линейных систем, но даёт неадекватные результаты для нелинейных. К примеру, невозможно снять полную характеристику с нелинейного прибора (такого, как старинный аналоговый компрессор), пользуясь только лишь конечным набором тестовых сигналов.</div> <div> <br /> </div> <div>Даже если оригиналы очень линейны, точная модель должна включать такие вещи, как разброс параметров отдельных компонентов и различные паразитные эффекты. Например, даже у самой высококачественной катушки индуктивности есть сопротивление и ёмкость».</div> <div> <br /> </div> <div><img src="/upload/medialibrary/311/pl.jpg" title="pl.jpg" border="0" alt="pl.jpg" width="512" height="266" /> <br /> </div> <div> <br /> </div> <div><b>Уди Хеннис (Waves)</b>: «По существу, все модели – это более или менее сложные дифференциальные уравнения. На ранних стадиях моделирования разработка алгоритмов обычно осуществляется в какой-нибудь гибкой, пусть даже и не самой эффективной с точки зрения использования ресурсов, математической среде – например, в MATLAB. Это помогает проверить, правильно ли выбраны концепция и технология моделирования. Только после этого начнётся программирование максимально эффективного специфического DSP-кода. К слову, мы используем разные методики даже при моделировании однотипных устройств. Например, наши эквалайзеры SSL, API и PuigTec используют различные движки фильтров, что позволяет добиться максимального соответствия с оригиналом.</div> <div> <br /> </div> <div>К тому же, реальные параметры отдельных компонентов далеко не всегда совпадают с тем, что написано в схеме. Делая множество измерений между входом и выходом, мы можем использовать наиболее подходящие алгоритмы для вычисления фактических параметров, включая влияние паразитных связей. Этот метод более точен, чем выпаивание деталей и измерение их индивидуальных характеристик, поскольку некоторые электрические свойства <b>зависят других компонентов</b>, находящихся в цепи».</div> <div> <br /> </div> <div>И вообще, прежде чем начать работу, следует убедиться, что Ваш образец исправен и работает как положено. Уди Хеннис: «Мы много консультируемся с экспертами... Иногда нам приходится совершать дальние поездки, чтобы найти правильный аппарат».</div> <div> <br /> </div> <div><b>Bill Gardner (Wave Arts)</b></div> <div>Президент компании Wave Arts Билл Гарднер говорит, что такое моделирование «в вычислительном отношении очень затратно; потребление ресурсов растёт в кубической прогрессии от числа узлов/нодов в цепи. (Под узлом подразумевается точка соединения двух и более компонентов). Например, наш плагин Tube Saturator имеет два «ламповых» каскада усиления (эмулируется двойной триод 12AX7) и шесть узлов в нелинейной секции. Он потребляет 33% мощности процессора P4 2,8 ГГц при обработке монофонического сигнала с частотой дискретизации 44,1 кГц. Удвоение количества узлов предоставляет восьмикратное увеличение нагрузки. Полноценный ламповый усилитель, как например Fender Champ с 24 узлами в цепи, предоставил бы 64-кратное увеличение. Таким образом, для работы адекватного эмулятора потребовалось бы 20 таких процессоров! Однако, мощность CPU постоянно растёт. В недалёком будущем мы сможем моделировать любое аналоговое устройство, просто собирая его [виртуальную] схему и управляя ею в реальном времени. И, могу сказать, что эти модели даже будут лучше, чем оригиналы: точно установленные параметры, идеально подобранные компоненты, отсутствие шума…»</div> <div> <br /> </div> <div><b>Udi Hennis (Waves)</b></div> <div>«Аналоговые цепи, даже нелинейные, подчиняются физическим законам. Следовательно, их поведение можно смоделировать с любой произвольной точностью. Виртуальная схема полностью определяет поведение цепи. Больше нет нужды применять отдельные специализированные методики для моделирования каждого компонента и надеяться, что в куче это даст правильный результат. Теперь все компоненты – и линейные, и нелинейные – могут моделироваться в одной рабочей среде. У большинства элементов теперь есть идеальное математическое описание. Конечно, не всегда и не всё так гладко: например, поведение катушек индуктивности и трансформаторов может осложняться такими явлениями, как насыщение и гистерезис. Таким образом, иногда требуются дополнительные, более детальные модели. Но если устройство состоит из элементов с чётко известными характеристиками, достаточно просто собрать его [виртуальную] схему».</div> <div> <br /> </div> <div><b>Thomas Valter (TC Electronic)</b></div> <div>Томас Вальтер из компании TC Electronic говорит, что они используют проприетарные инструменты для разработки моделей. «Большая часть работы над алгоритмом делается без привязки к конкретной платформе. Алгоритмы живут в компьютере, мы пропускаем через них звуковые потоки, слушаем и вносим изменения, чтобы добиться максимального звукового качества. На поздних этапах мы начинаем заниматься реализацией алгоритма в виде плагина. Поначалу мы используем совершенно утрированный стандартный графический интерфейс – только фейдеры и кнопки. К концу процесса добавляется полный GUI и происходит компиляция DSP-алгоритма в виде специфического плагина того или иного формата. Это самая лёгкая часть работы. Самая сложная – заставить алгоритм вести себя так, как мы этого хотим».</div> <div> <br /> </div> <div><b>Финальное прослушивание</b></div> <div>Итак, DSP-код написан и оформлен в виде плагина. Настала заключительная стадия – оценка того, насколько точно плагин имитирует оригинальное устройство.</div> <div> <br /> </div> <div><b>Уди Хеннис (Waves):</b> «Мы делаем многократные измерения и прослушивания, пытаясь определить сильные и слабые стороны… В самую первую очередь мы оцениваем такие вещи, как частотная характеристика, линейность и THD (Total Harmonic Distortion – коэффициент нелинейных искажений). Кроме того, такие побочные явления, как шум и гул, оказывают значительное влияние на общее звучание. Таким образом, мы прилагаем все усилия, чтобы добиться максимального соответствия».</div> <div> <br /> </div> <div><b>Томас Вальтер (TC Electronic): </b>«Наши «золотые уши» могут услышать малейшие нюансы в работе алгоритмов, и сообщить программистам, на что следует обратить особое внимание… Мы не только определяем [при помощи приборов], насколько близко к оригинальному устройству работает плагин, но и как это воспринимается на слух профессиональными звукоинженерами».</div> <div> <br /> </div> <div>«Каждое устройство уникально и представляет свой собственный клубок проблем», говорит Андреас Мазуркевич (Andreas Mazurkiewicz) из компании Steinberg. «Визуальное отображение информации не менее важно, чем слушание. Иногда, если для анализа особо трудной проблемы недостаточно генератора сигналов и спектроанализатора, я пишу специальные инструменты».</div> <div> <br /> </div> <div><b>МакДауэлл (McDSP):</b> «…Во многих случаях, мы приглашаем на тесты владельцев оригинальных устройств, поскольку опытные уши могут заметить различия, пропущенные нашими специалистами».</div> <div> <br /> </div> <div><b>Никлас Одельхольм (Softube):</b> «Например, типичные ошибки – это другой оттенок искажения или слегка изменённая атака компрессора. Мы стараемся найти компоненты или цепи, которые вызывают эти различия. Например, были небольшие отличия в том, как наша модель 1176-го компрессора искажала сигнал при малом времени восстановления. И мы нашли причину: напряжение смещения в детекторной цепи оригинала отличалось на 2 милливольта. Виртуальная модель была откорректирована, и всё встало на свои места. Ещё один случай: в плагине RS127 Green (из Abbey Road Brilliance Pack) при определённых параметрах настройки наблюдались расхождения с оригиналом. Мы заново измерили все компоненты и удостоверились, что конструкция устройства соответствует схеме. Всё выглядело хорошо, но звучало по-другому. Наконец, мы поняли, что причиной всех наших страданий послужил бракованный переменный резистор. Когда мы вычислили, где прячется косяк, то вставили это в модель и всё тут же заработало. Зачастую, одна ошибка порождает множество других: неправильная частотная характеристика входного трансформатора компрессора повлияет на форму искажения в следующей секции; эта секция, в свою очередь, повлияет на время восстановления…И так далее. Как только Вы находите, где прячется ошибка, всё становится на свои места».</div> <div> <br /> </div> <div>Алекс Уэстнер (Alex Westner) из компании Cakewalk говорит: «Мы прислушиваемся и к положительным, и к отрицательным отзывам. …Иногда, люди сами не знают, что им нравится, а что нет. Таким образом, мы будем корректировать свою модель согласно их положительным ответам, а не пытаться сохранить верность тому, что первоначально собирались смоделировать».</div> <div> <br /> </div> <div>Кен Богданович (Sound Toys): «Сначала мы слушаем, и лишь потом измеряем. Мы слушаем множество различных источников – чистые тоны, барабаны, вокалы, гитары и полные миксы – в широком диапазоне уровней и настроек. Если что-то звучит неправильно, мы снова достаём наши измерительные инструменты и пытаемся локализовать проблему».</div> <div> <br /> </div> <div>Дейв Бернерс (UA): «Наши слухачи работают в тесном взаимодействии с разработчиками. Одно из преимуществ физического моделирования состоит в том, что в процессе анализа схемы [оригинального устройства] наши инженеры очень близко знакомятся с ней, что значительно усиливает интуицию относительно поведения оборудования. Таким образом, становится легче идентифицировать найденные в процессе слуховых тестов проблемы. Конечно, мы также тесно сотрудничаем с проектировщиками оригинальных устройств из таких компаний, как Neve, Manley Labs, Empirical Labs, Roland и EMT. Это гарантирует, что результаты будут отвечать и нашим, и их стандартам».</div> <div> <br /> </div> <div><b>Заключение</b></div> <div>Дебаты по поводу качества этих эмуляций вряд ли закончатся в обозримом будущем. С другой стороны, не каждый из нас способен приобрести оригинальные устройства, которые, зачастую, имеются в единичных экземплярах и стоят бешеных денег. И плагины дают возможность любому пользователю DAW поставить себе на службу их уникальный звуковой характер. К тому же, количество одновременно работающих плагинов ограничено только мощностью центрального процессора. И Вашим вкусом…</div> <div> <br /> </div> <div><i>Перевод подготовил: Вячеслав Бережной </i></div>

Загрузка комментариев...