Как известно, Amiga содержит аналоговый НЧ-фильтр (т.н. реконструирующий фильтр) придающий звуку создаваемому audio-чипом "Paula" более богатое звучание. По мысли разработчиков Amiga этот НЧ-фильтр призван ликвидировать сглаженность звучания присущую синтезированному звуку. Имеется 2 режима работы audio-выхода. В первом из них, стерео-звук 6 дБ/октаву пропускается через RC-цепочку и обрезается на частоте 4,9 КГц (справедливо для моделей до Amiga 1200). Во втором режиме, стерео-звук 12 дБ/октаву пропускается через НЧ-фильтр Баттерворта работающий в диапазоне до 3,2 КГц (3275 Гц, если быть точным). Причём второй режим на Amiga 1200 дополнительно индицирован ярко горящим LED-индикатором на корпусе Amiga.
Попытки цифрового воссоздания звучания Amiga предпринимались неоднократно, авторами различных программ и на разных платформах. Однако, на практике всё сводилось к линейной интерполяции на частоте около 30 КГц. Также было установлено что audio-чип Paula может генерировать звук в диапозоне от 20 Гц до 29 КГц (точнее 28867 Гц). По выше описанным причинам такой подход сегодня считается неверным т.к. audio-чип не умеет выполнять интерполяцию звука и к тому же его звучание оказалось очень зависимым, как от элементной базы Amiga (в т.ч. ревизии Paula), так и от разрешения чипсетного экрана (PAL, NTSC).
Наиболее точное (с графиками и программой их построения) исследование звучания НЧ-фильтра Amiga произвели один из соавторов кроссплатформенного треккера Milkytracker англичанин Christopher O'Neill (Deltafire/df) и финский разработчик Antti S. Lankila. В последних версиях Milkytracker можно даже включить фильтр (ресэмплер) для выбора разных видов интерполяций и фильтров Amiga 500, Amiga 500 (LED), Amiga 1200 и Amiga 1200 (LED). Для воссоздания звучания используются т.н. квантизирующие blep-таблицы. К сожалению, попытка "загнать" эти таблички в Audacity не увенчалась успехом т.к. списки во встроенном Lisp выдают переполнение на таком кол-ве значений (например, 8 Кб цифр для A500). Поэтому, для написания Nyquist-плагина пришлось ограничиться встроенными функциями Audacity для реализации НЧ-фильтров с заданными характеристиками. Выглядит получившийся plugin таким образом:
Вы просто "натравляете" на выделенный фрагмент подходящий ресэмплер и нажимаете кнопку "OK":
Linear Interpolation |
Интерполяция |
6 дБ/окт. |
28867 Гц |
Amiga 500 |
RC-фильтр |
6 дБ/окт. |
4900 Гц |
Amiga 500 (LED) |
Баттерворт |
12 дБ/окт. |
3275 Гц |
Amiga 1200 |
без фильтрации |
6 дБ/окт. |
28867 Гц |
Amiga 1200 (LED) |
Баттерворт |
12 дБ/окт. |
3275 Гц |
Для установки AmigaFilter plugin скопируйте файл "AmigaFilter.ny" в соответствующую директорию Audacity:
- Для MS Windows это как правило "C:\Program Files\Audacity" (или "C:\Program Files\Audacity 1.3 Beta (Unicode)" для версии 1.3).
- Для 64-битных версий MS Windows папку Audacity надо искать соответственно в папке "Program Files (x86)".
- Для Mac OS X, нужная папка находится в "/Applications".
- В Linux нужная директория находится обычно в "/usr/share/audacity/" если Audacity устанавливалась из репозитория или в "/usr/local/share/audacity" если компилировалась. Альтернативным путём м.б. создание "~/.audacity-files/plug-ins/" в домашней директории пользователя и размещение "AmigaFilter.ny" в ней. Это позволит избежать перезаписи соответствующей директории "plug-ins" при последующих обновлениях Audacity.