Тестирование плееров. Ресемплер.

В статье “Тестирование плееров. Звуковой движок” мы убедились, что AIMP, впрочем, как и остальные участники теста, умеет выводить звук без изменений, то есть побитово точно. Но плеер – это лишь одно из звеньев цепочки воспроизведения звука, после него идут микшер Windows, драйвер звуковой карты и сама звуковая карта. Это значит, что результаты того теста верны только для идеального случая, когда параметры файла совпадают с настройками плеера, операционной системы, драйвера звуковой карты, а так же с возможностями “железа” звуковой карты. Во всех остальных случаях в игру вступают различного рода обработчики, приводящие цифровой звуковой поток в формат, пригодный для преобразования в аналоговый сигнал. Один из таких обработчиков – ресемплер.

Для начала разберемся, что такое ресемплер (resampler) и для чего он нужен. Если говорить общими словами, ресемплер применяется для изменения частоты дискретизации цифрового сигнала. Для чего же изменять эту частоту в плеерах? Во-первых, если звуковая карта (и/или ее драйвер) не поддерживает частоту дискретизации, которую имеет файл, то файл либо не будет проигрываться вообще, либо будет проигрываться  с измененной скоростью – или быстрее, или медленнее. Во-вторых, без подгона треков под одну частоту не смогут корректно работать эффекты плавного перехода с одного трека в другой.

Задача этой статьи – исследовать, как влияют ресемплеры разных плееров на качество воспроизведения музыкального материала.

Подопытные плееры:

  • AIMP 2.61.583 (встроенный ресемплер)
  • AIMP 3.55.1312 (встроенный ресемплер, настройки качества по умолчанию)
  • Foobar 2000 v1.2.9 (ресемплер “из коробки” PPHS, опция ultra mode включена)
  • XMPlay 3.7 (встроенный ресемплер, максимальные настройки качества)

Помимо плееров в тестах будет участвовать Windows 8 Audio Resampler, который включается при обычном (не эксклюзивном) методе выводе звука, если настройки операционной системы не совпадают с форматом вывода звука аудиоплеера.

Конфигурация

  • ОС: Windows 8 x64
  • Метод вывода звука: DirectSound
  • Звуковая карта: Virtual Audio Cable
    Виртуальная звуковая карта позволяет исключить особенности железа и реализации драйверов к нему. В добавок к этому, с нее проще списать выходные данные
  • Настройки плееров и ОС: 44.1 кГц (48 кГц), 24 Бит/сэмпл, громкость 100%, эквалайзер и другие эффекты выключены

Методика тестирования

Для замеров будем использовать RightMark Audio Analyzer (RMAA). Для этого сгенерируем в ней тестовые WAV файлы со следующими характеристиками 44.1 кГц (192 кГц), 24 Бит/сэмпл. Будем воспроизводить эти файлы в плеерах, записывать выходной сигнал в файл и анализировать с помощью той же RMAA. Тестовый файл представляет собой два сигнала: первый – так называемый мультитон – шум по всей области доступных частот (для проверки частотного диапазона), второй сигнал – чистая синусоида частотой 1 кГц (для проверки гармонических искажений).

Замечание 1: AIMP2 не имеет возможности выбора целевой частоты дискретизации, любую частоту он преобразует в 44.1 кГц с помощью стандартных возможностей компонентов DirectSound-а, поэтому он участвует только в тесте 192 кГц >> 44.1 кГц.

Замечание 2: Тестирование Windows 8 Audio Resampler проводилось с помощью AIMP 3.55. Частота вывода плеера настраивалась такой же, как у файла, а выходная частота настраивалась в самой ОС.

Тест1: Преобразование 192 кГц >> 44.1 кГц

192_44_frequency1

Преобразование 192 кГц в 44,1 кГц. Частотный диапазон

На графиках мы видим достаточно крутой срез частот на уровне 20 кГц всеми ресемплерами, что означает отличное подавление паразитных частот, возникающих при понижении частоты дискретизации – так называемого алиасинга.

192_44_THD1

Преобразование 192 кГц в 44,1 кГц. Гармонические искажения

График AIMP2 практически совпал с графиком Windows, это подтверждает информацию о том, что AIMP2 пользуется встроенными возможностями ОС для передискретизации сигнала. Самый красивый график гармонических искажений получился у XMPlay, но не стоит забывать, что в AIMP3 в настройках мы установили не максимальное качество передискретизации.

Тест2: Преобразование 44.1 кГц >> 48 кГц 

44_48_frequency1

Преобразование 44,1 кГц в 48 кГц. Частотный диапазон

Картина очень схожа с предыдущим тестом, за исключением того, что ресемплеры Foobar 2000 и XMPlay захватывают несколько больший диапазон частот.

44_48_THD1

Преобразование 44,1 кГц в 48 кГц. Гармонические искажения

Гармонические искажения всех ресемплеров на том же уровне, что и в предыдущем тесте.

Тест3: Сравнение настроек качества ресемплера АИМП3 (44.1 кГц >> 48 кГц)

44_48_AIMP3_frequency1

Ресемплер AIMP3. Частотный диапазон

44_48_AIMP3_THD1

Ресемплер AIMP3. Гармонические искажения

Теперь мы убедились, что лидерство XMPlay в предыдущих тестах было временным. На максимальных настройках качества результаты работы ресемплера AIMP3 ничуть не хуже. Оптимальными являются два последних положения ползунка качества ресемплинга.

Выводы

Все ресемплеры показали хорошие результаты. Не стоит смущаться чуть более высокими гармоническими искажениями ресемплера Windows (на уровне -120 дБ). Динамический диапазон человеческого слуха составляет 120 дБ, топовые звуковые карты имеют диапазон 110-120 дБ, а значит, что эти самые гармонические искажения попросту не дойдут до акустической системы и, тем более, до уха.

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

 

Leave a Reply