Видео смотреть бесплатно

Смотреть красивое видео

Официальный сайт 24/7/365

Смотреть видео бесплатно

Audiophile's Software

Сравнение пяти ресемплеров для foobar2000 + ASIO4ALL Resampler (обновлено 18.11.2015)

Дата обновления: 18 Ноября 2015
2015-11-18T14:05
Audiophile's Software

Copyright (C) 2014, Taras Kovrijenko

Полное или частичное копирование текста допускается только с письменного разрешения автора.

О тесте

Данный тест призван выяснить, какой ресемплер для плеера foobar2000 обладает самым высоким качеством в режиме 44->48 kHz.

Для того чтобы Вы вникли в суть дела, рекомендую прочитать статью из журнала «Звукорежиссер» под названием «Конвертеры частоты дискретизации».

1. ПО и конфигурация ПК

В тесте использовалось следующее ПО:

Microsoft Windows 7 Ultimate SP1 x64

Core (2011-06-05 09:16:20 UTC)
foobar2000 core 1.1.7

foo_benchmark.dll (2011-08-23 09:44:06 UTC)
Decoding Speed Test 1.1

foo_converter.dll (2011-06-05 09:13:50 UTC)
Converter 1.5

foo_dsp_resampler.dll (2011-08-23 09:42:57 UTC)
SoX Resampler 0.7.0

foo_dsp_spxresample.dll (2011-08-23 09:42:25 UTC)
Speex Resampler 0.1

foo_dsp_srcresample.dll (2011-08-23 09:42:40 UTC)
Secret Rabbit Code Resampler 0.1

foo_dsp_ssrc.dll (2011-08-23 09:43:14 UTC)
Resampler DSP (SSRC) 0.57

foo_dsp_std.dll (2011-06-05 09:14:22 UTC)
Standard DSP Array 1.0

foo_input_std.dll (2011-06-05 09:13:58 UTC)
Standard Input Array 1.0

foo_ui_std.dll (2011-06-05 09:14:24 UTC)
Default User Interface 0.9.5

ASIO4ALL 2.10

18/11/2015: foobar2000 1.3.9 with dbPoweramp/SSRC Resampler

RightMark Audio Analyzer 6.2.3

Adobe Audition 2.0

Sony Sound Forge 10.0c

Конфигурация компьютера:

ASUS P7H55-V
Intel Core i3 530, 2.93 GHz; (Наборы инструкций x86, x86-64, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2)
2x2Gb DDR3 1333 MHz

2. Тест качества

2.1 Подготовка

Для начала создадим тестовые звуковые файлы.

  1. Первый сигнал будет представлять собой синусоиду с плавающей частотой в диапазоне от 1 до 22050 Гц. Вот параметры генерации данного сигнала в Adobe Audition:

    Generate Tones

    С помощью визуального сравнения спектров исходного и результирующего файла мы сможем проанализировать качество работы ресемплера, а именно полосу пропускания и степень подавления копий спектра возникших в результате повышения частоты дискретизации. Параметры, спектрограмма и АЧХ нашего сигнала:

    File name : Untitled.wav
    Duration : 0:04.000 (176 400 samples)
    Sample rate : 44100 Hz
    Channels : 2
    Bits per sample : 16
    Bitrate : 1411 kbps
    Codec : PCM
    Encoding : lossless


    Orirginal Spectrogram

    Orirginal Spectrum

  2. Второй тестовый семпл представляет собой единичный импульс с минимальной продолжительностью (1/44100 с) и максимальной амплитудой. С его помощью мы сможем увидеть импульсный отклик фильтров (ресемплеров), определить их тип (минимально-фазовый, линейный) а также оценить звон. Создан в программе Sony Sound Forge 10:

    Impulse

    File name : impulse.wav
    Duration : 0:04.000 (176 400 samples)
    Sample rate : 44100 Hz
    Channels : 2
    Bits per sample : 16
    Bitrate : 1411 kbps
    Codec : PCM
    Encoding : lossless

2.2 Обработка и анализ

  1. Загружаем тестовые файлы в foobar2000 и конвертируем в WAV с включением одного из тестируемых ресемплеров. Выходным форматом будет 32 bit WAV с плавающей точкой, т.к. именно в таком виде плагины foobar2000 работают с аудио. Получаем следующие файлы (для PPHS):

File name : Untitled_PPHS.wav
Duration : 0:04.000 (192 000 samples)
Sample rate : 48000 Hz
Channels : 2
Bits per sample : 32
Bitrate : 3072 kbps
Codec : PCM (floating-point)
Encoding : lossless

File name : impulse_PPHS.wav
Duration : 0:04.000 (192 000 samples)
Sample rate : 48000 Hz
Channels : 2
Bits per sample : 32
Bitrate : 3072 kbps
Codec : PCM (floating-point)
Encoding : lossless

 2. Загружаем результат для первого тестового файла в Adobe Audition и смотрим на спектрограмму.

 3. Анализируем результат обработки этого же тестового файла программой RightMark Audio Analyzer.

 4. Загружаем результат обработки второго файла в Adobe Audition и смотрим на импульсный отклик.

2.3 Результаты

PPHS

PPHS Settings

PPHS Spectrogram

PPHS Spectrum

PPHS Impulse Response

Что же мы видим? Проанализировав графики, можно заключить что ресемплирование было произведено весьма качественно, крутизна среза частот небольшая, начинается спад АЧХ примерно на уровне 21600 Гц (теоретическая максимальная частота в исходом аудио - 22050Гц), что приемлемо. Подавления отражений спектра в диапазоне выше 22050Гц на достаточном уровне, но всё-же неидеально, хотя на слух это заметить невозможно. Импульсный отклик указывает на то, что это фильтр с линейной фазой: звон равномерно распределен до и после всплеска.

SSRC

SSRC Settings

SSRC Spectrogram

SSRC Spectrum

SSRC Impulse Response

Сразу бросается в глаза изменение продолжительности: обработка привела к увеличению продолжительности на 0.5 секунды. Вероятно, это баг плагина. Но вообще, данный ресемплер показал очень достойный результат. Подавление отражений спектра отличное (отражения не видны даже на спектрограмме), полоса пропускания - практически полная. На графике импульсного отклика заметен немного иной характер звона, чем у PPHS - очевидно это связано с более крутым срезом. Тип фазы - линейная.

dbPoweramp/SSRC

dbPoweramp/SSRC Settings

dbPoweramp/SSRC Spectrogram

dbPoweramp/SSRC Spectrum

dbPoweramp/SSRC Impulse Response

По-видимому, это новая версия библиотеки SSRC. Здесь отсутствует баг с изменением продолжительности, а спад АЧХ более плавный. В остальном результаты совпадают.

SRC (Secret Rabbit Code)

SRC Settings

SRC Spectrogram

SRC Spectrum

SRC Impulse Response

Спад частот плавный, начиная примерно с 21200 Гц. Импульсный отклик очень схож с PPHS. Линейная фаза.

SoX (Sound eXchange)

SoX Settings

SoX Spectrogram

SoX Spectrum

SoX Impulse Response

Результат полностью соответствует настройкам: подавление отражений отличное, полоса пропускания - 95% (спад начинается примерно с 20900 Гц), фаза линейная.

Теперь же, для максимизации частотного диапазона регулятор passband установим на 99% + включим поддержку алиазинга (отражений спектра в области граничной частоты).

SoX Settings

SoX Spectrogram

SoX Spectrum

SoX Impulse Response

В этом режиме мы получили полную полосу пропускания, но ценой наличия отражений в области 22050 Гц (хотя с таким уровнем в -100 dBFS они конечно же слышны не будут), а также незначительно увеличенной продолжительности звона. В случае же отключенного алиазинга мы получим следующую картину:

SoX Spectrogram

SoX Spectrum

В целом результат SoX можно считать аналогичным SSRC.

Speex

Speex Settings

Speex Spectrogram

Speex Spectrum

Speex Impulse Response

Этот совсем недавно появившийся плагин-ресемплер явно не отстает от своих соперников. Частотный срез располагается в диапазоне примерно 21300-21900 Гц. Фаза линейная.

Дополнительно: ASIO4ALL Resampler

ASIO4ALL Settings

ASIO4ALL Spectrogram

ASIO4ALL Spectrum

ASIO4ALL Impulse Response

Очевидно, что в данном случае разработчики значительно упростили алгоритм ресемплирования, чтобы он работал в реальном времени на большинстве процессоров. Как результат - плохое подавление алиазинга, даже в слышимом диапазоне частот.

2.4 О результатах

Все алгоритмы (кроме ASIO4ALL) показали более чем хорошие результаты и определенно не должны приводить к слышимому ухудшению звучания. Если же руководствоваться крутизной среза и степенью подавления отражений в его области, их всё-таки можно расположить следующим образом (в порядке убывания качества):

 1. dbPoweramp/SSRC
 2. SoX
 3. Speex
 4. SRC9 (Secret Rabbit Code)
 5. PPHS
 6. ASIO4ALL Resampler

Но не надо забывать, что качество — только одна сторона медали. А потому перейдем к тесту скорости.

3. Тест скорости

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

В качестве тестового файла выберем генерируемый программой RightMark Audio Analyzer сигнал с параметрами 16 бит 44.1 кГц. Тест производится с помощью плагина Decoding Speed Test для foobar2000 с включением одного из тестируемых DSP (настройки ресемплеров аналогичны приведенным на скриншотах выше).

Decoding Speed Test settings

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

3.2 Результаты

В результате теста получаем лог, который ниже приведен для каждого ресемплера.

PPHS

Total length: 11:47.906
Info Read time: 0:00.000
Opening time: 0:00.008
Decoding time: 0:22.330
31.701x realtime

SSRC

Total length: 11:47.906
Info Read time: 0:00.000
Opening time: 0:00.008
Decoding time: 0:30.914
22.899x realtime

dbPoweramp/SSRC

Total length: 10:44.414
Info Read time: 0:00.000
Opening time: 0:00.000
Decoding time: 0:18.893
34.107x realtime

SRC

Total length: 11:47.906
Info Read time: 0:00.000
Opening time: 0:00.008
Decoding time: 1:00.065
11.785x realtime

SoX (Best, Passband 99%, Allow aliasing)

Total length: 11:47.906
Info Read time: 0:00.000
Opening time: 0:00.008
Decoding time: 0:07.665
92.356x realtime

Speex

Total length: 11:47.906
Info Read time: 0:00.000
Opening time: 0:00.008
Decoding time: 1:50.764
6.391x realtime

3.3 О результатах

Показателем скорости является отношение продолжительности файла к времени его обработки (например, 10x realtime).

Самым быстрым оказался SoX, что объясняется поддержкой инструкций SSE3. Неплохую скорость показал стандартный ресемплер PPHS и SSRC. SRC9 и Speex в данных режимах оказались очень медленными и будут давать при воспроизведении сильную нагрузку на процессор (особенно на слабые).

Выводы

Ресемплер Sound eXchange явно выигрывает у остальных DSP и идеально подходит для ресемплинга в режиме реального времени. SSRC, хоть и незначительно, но превосходит SoX по качеству, правда при этом является медленным (в 3 раза медленнее). Как вы уже поняли, использовать сторонний компонент SSRC не нужно — теперь более новая версия встроена в плеер (при полной установке). И ешё: также существует еще один компонент — SSRC X, с возможностью тонкой настройки, однако на самых высоких настройках он всё же уступает версии dbPoweramp.

Учитывая скорость обработки, PPHS дал также приемлемые результаты, а вот SRC9 и Speex, хоть и дают высокое качество, но имеют слишком низкую скорость.

Ресемплер встроенный в ASIO4ALL использовать не рекомендуется, т.к. он хоть и избавит от менее качественной софтовой передискретизации драйверами некоторых звуковых карт, но всё равно может давать слышимые искажения.


    P.S. Для того чтобы полностью раскрыть потенциал ресемплера, его тестирование лучше проводить на материале с высокой разрядностью — 24 бит и выше. При обработке же 16-битного материала нелинейные искажения вносимые обработкой (для данных ресемплеров/режимов их работы) находятся ниже шумов квантования. Тестирование работы ресемплеров с материалом более высокой глубины квантования неактуально, т.к. большинство материала в наших музыкальных коллекциях имеет разрядность 16 бит, а аудио более высокого качества, например DVD-Audio, имеет обычно частоту дискретизации 48 или 96 кГц и ресемплер в таком случае чаще всего не требуется.


Информация от спонсора

Теперь можно легко, бесплатно и без регистрации качать музыку с любых сайтов, которые вы посещаете. Программа ЛовиMusic позволит быстро и просто скачать музыку с zaycev.net, VKontakte, Odnoklassniki.ru и других ресурсов.


Полезные ссылки:

Плагины для foobar2000
Преобразование аудио высокой разрядности в 16 бит/44.1 кГц стерео
 
  Tweet  
Категория: Авторские статьи | Автор: | Добавил: Audiophile
Просмотров: 106712 | Теги: SSRC, SoX, SRC, resampler, Speex, PPHS| Рейтинг: 5.0/5, голосов: 5
Комментариев: 21
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
0   Спам
[21] bracsadance (20 Мая 2018 16:49)
Комрады!
Немного не догоняю!
Я пользуюсь foobar-ом v 1.3.8, вывожу звук по USB на внешний ЦАП...
Мне НУЖНО ИЛИ НЕ НУЖНО включать Resampler (SoX) в настройках foobar-a ПРИ ВОСПРОИЗВЕДЕНИИ
во вкладке DSP Manager?

Или только при конвертации Hi-Res-а в WAV в настройках Converter setup..?
+1   Спам
[20] Rollinnn (31 Марта 2018 14:56)
Rollinnn
Кстати, использование ресемплера может в некоторых случаях приводить к возникновению слышимых щелчков между треками. Видео с демонстрацией проблемы - https://youtu.be/KYvIA116JsY. Но в видео описан очень долгий и неудобный способ решения проблемы.
Сейчас проблема решается просто использованием новой версии (0.8.4) ресемлера SoX для фубара - https://goo.gl/dq6E5p (для работы нужен фубар 1.3.x + установленный в системе MSVC 2017 (https://aka.ms/vs/15/release/VC_redist.x86.exe) ИЛИ фубар 1.4 и выше) или новой версии SRC ресемплера - http://www.foobar2000.org/components/view/foo_dsp_src_resampler (для работы нужен фубар 1.4 и выше). В этих новых версиях используется экстраполяция сигнала в начале и в конце трека для предотвращения щелчков между треками.
0   Спам
[15] truvo (04 Декабря 2017 03:26)
В тексте этой статьи прочёл:

"Информация от спонсора Теперь можно легко, бесплатно и без регистрации качать музыку с
любых сайтов, которые вы посещаете. Программа ЛовиMusic позволит быстро и
просто скачать музыку с zaycev.net, VKontakte, Odnoklassniki.ru и других ресурсов"

Скачал эту программу. Установил. Не работает. Снес. :(
0  
[16] Audiophile (08 Декабря 2017 20:17)
Audiophile
Это же реклама. Зарегистрировались - теперь её не будет.
0   Спам
[17] truvo (08 Декабря 2017 20:29)
Ну, я и был зарегистрирован, просто просматривал эту статью, не залогинившись...

При чем тут "вижу — не вижу"? Речь о том, что реклама прямо не соответствует действительности. Разве вам интересно так обманывать ожидания незарегистрированных пользователей?

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

В любом случае это уже не реклама, а просто дезинформация.
Ответ: Я не могу отвечать и не отвечаю за качество рекламируемого материала и работоспособность чего-либо по рекламным ссылкам.
0   Спам
[14] IronAngel72 (29 Сентября 2017 01:27)
Самый качественный ресемплер находится в Korg Audio Gate.
0   Спам
[13] Rollinnn (09 Июня 2017 14:10)
Rollinnn
Показалось мне, что по представленым картинкам, где импульс изображён на waveform, трудно оценить продолжительность звона, тем более, что временной шкалы на них и вовсе нет. Поэтому, вот картинки, по которым, на мой взгляд, продолжительность звона оценивать удобнее. Тот же ресемплинг из 44.1 в 48. Для тех, кто не в курсе: всё, что по бокам от основного "столбика" - это и есть звон. Формально, при прочих равных, чем меньше продолжительность звона, тем лучше.Не забывайте смотреть на шкалу времени.
Оригинальный импульс (44.1 кГц)


Ресемплированный в 48 кГц:

dBpoweramp/SSRC из foobar2000 1.3.15


PHHS ultra mode


Secret rabbit code BEST


SoX (0.8.3) best, полоса - 95%, No aliasing, фаза - 50%


SoX (0.8.3) best, полоса - 99%, No aliasing, фаза - 50%


SSRCX preset Otachan Ultra
0   Спам
[18] anta777 (12 Декабря 2017 01:09)
В каком редакторе Вы добились такого представления?
0   Спам
[19] Rollinnn (12 Декабря 2017 17:00)
Rollinnn
Это SoX - http://sox.sourceforge.net/
Команда для генерации спектрограммы такого вида:
Код
sox.exe входнойфайл.wav -n spectrogram -x 1600 -Y 1200 -h -z 180 -o выходнойфайл.png

Можно прикрутить к конвертеру фубара.
0   Спам
[12] Evgenivasilevv85 (29 Января 2016 14:36)
Evgenivasilevv85
Спасибо большое за данную статью!! Очень мне она помогла. happy
0   Спам
[10] gungstar (21 Октября 2015 17:37)
доброго. подскажите настройки Sound Forge для создания 2го тестового семпла
0  
[11] Audiophile (22 Октября 2015 17:35)
Audiophile
А какие настройки? Просто карандашом рисуете точку.
0   Спам
[9] maxim-b (10 Сентября 2015 17:22)
maxim-b
В foobar2000 1.3.9 новый ресемплер:
Цитата
New high-quality but slow resampler based on dBpoweramp/SSRC code, as an alternative to fb2k's PPHS resampler.
0   Спам
[5] j7n (15 Марта 2015 05:59)
j7n
В каких случаях желательно использовать фильтр минимальной фазы (SoX)?
0  
[6] Audiophile (17 Марта 2015 21:39)
Audiophile
Как правило, в звуковой обработке минимальную фазу использовать не следует, т. к. она увеличивает пре-эхо. Эта возможность скорей для исследовательских целей.
0   Спам
[7] Rollinnn (25 Августа 2015 00:36)
Rollinnn
Вообще-то, минимальная фаза (minimum phase) как раз уменьшает пре-эхо, точнее совсем убирает.
Цитата из мануала к SoX: A phase response setting may be used to control the distribution of any transient echo between
‘pre’ and ‘post’: with minimum phase, there is no pre-echo but the longest post-echo; with linear
phase, pre and post echo are in equal amounts (in signal terms, but not audibility terms); the intermediate
phase setting attempts to find the best compromise by selecting a small length (and level)
of pre-echo and a medium lengthed post-echo.
0  
[8] Audiophile (25 Августа 2015 09:24)
Audiophile
да, спасибо. Я имел ввиду амплитуду осцилляций вообще.
0   Спам
[4] kiavan92 (24 Августа 2014 03:30)
kiavan92
http://www.foobar2000.org/components/view/foo_dsp_multiresampler
3 режима интерполяции, какой-то ограниченно-полосной синтез, и любимые всеми тёплыми ламповыми аудиофилами «ступеньки». По твоей методике ещё не тестил.
0   Спам
[3] Palintin (04 Июля 2013 18:29)
Palintin
Может есть необходимость провести тестирование для современных версий.
Объясните если не сложно, как по графику определить какой лучше? На что обращать внимание? Чем руководствоваться при оценке графиков?
0   Спам
[1] MaximusPanin (18 Мая 2013 01:57)
MaximusPanin
Вопрос: карта до 192000, если выставить в ресемплере максимум 192000, файлы с меньшим разрешением не будут обрабатываться или все пойдут через плагин ?
0   Спам
[2] Audiophile (18 Мая 2013 08:30)
Audiophile
разрешением?

Смотреть видео онлайн


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн