Copyright (C) 2014, Taras Kovrijenko
Полное или частичное копирование текста допускается только с письменного разрешения автора.
1. Вступление
Для начала - что же такое ABX тест? В области аудио так обычно называют метод определения слышимой разницы между двумя звуковыми фрагментами. Метод наиболее эффективен для определения потенциальных различий находящихся вблизи порога слышимости. Главным преимуществом теста является то что слушатель не знает какой именно фрагмент (из двух) воспроизводится в данный момент, таким образом мы полностью исключаем т.н. "эффект пустышки". Другой важный момент - возможность выполнения нескольких "проходов" тестирования (точнее, многократное повторное тестирование), что значительно уменьшает влияние случайности.
Происходит тест следующим образом. Тестер присваивает кнопке A один фрагмент, кнопке B - второй, а программа случайным образом присваивает кнопке X один из них (тестеру неизвестно, какой именно). Далее, посредством нажатий на кнопки, тестер может в любой последовательности неограниченно слушать A, B и X, после чего должен определить чему соответствует X: А или B. Потом тест повторяется.
По мере выполнения каждого прохода, программа подсчитывает вероятность "заблуждения" тестера, т.е. вероятность того что он не слышит разницу. Например, если тестер правильно ответил при первом проходе, вероятность будет 50 %, если и второй проход даст такой же результат - 25%, и т.д.
Положительным (тестер действительно слышит различия) результат считается после как минимум 13-ти правильных ответов в 16-ти проходах. При чем, рекомендуемое количество проходов - именно 16, т.к. при меньшем количестве влияние случайности всё еще недостаточно мало, а слишком большое количество проходов приводит к утомлению тестера.
2. Подготовка к тесту
А теперь - как это выглядит на практике. Существует множество типов ABX теста - с двумя неизвестными X и Y, с одним заведомо известным C и т.д., я же опишу тот которым пользуюсь сам.
Приведу пример тестирования кодека LAME MP3. Для теста нам понадобится foobar2000 со стандартным набором плагинов плюс плагин ABX Comparator а также, возможно, плагин вывода Kernel Streaming. Скачать это всё конечно же можно на этой странице. Foobar2000 выбран так как содержит в себе декодеры всех популярных форматов аудио, необходимые обработчики ну и настраиваемый вывод звука.
Предварительно давайте разберемся с настройками плеера. В настройках плеера на вкладке DSP должны быть все необходимые для качественного вывода плагины (подробно о настройке вывода можно почитать в статье Организация качественного вывода звука на компьютере - настройка foobar2000 и не только). На вкладке Playback должна быть включена ReplayGain обработка:
ReplayGain понадобится нам для эффективного выравнивания воспринимаемой громкости двух треков, т.к. конвертирование (особенно с низким битрейтом) часто приводит к существенному изменению громкости.
Важное замечание: во время теста потребуется мгновенное переключение между треками, лучше всего с этим справляется Kernel Streaming (для Windows XP) или WASAPI (для Windows Vista/7). Использование ASIO не рекомендуется, так как зачастую дает большую задержку при переключении между треками.
Теперь о материале для тестирования. Необходимо выбрать трек, на котором мы хотели бы протестировать кодек. Трек желательно выбирать с широким частотным диапазоном и достаточно высоким уровнем ВЧ, так как при кодировании практически все кодеки первым делом ограничивают частотный диапазон и это является одним из главных факторов влияющих на звучание результирующего аудио. Трек конечно же должен быть в хорошем качестве, настоятельно рекомендуется именно lossless (надеюсь, по всем понятным причинам).
И так, теперь задача стоит в выборе параметров и собственно в самом конвертировании. Чтобы не повторяться, даю ссылку на описание настройки конвертера и конечно же LAME.
Для "наглядности" возьмем следующие параметры
-S -b 128 --noreplaygain - %d
С подобными параметрами сегодня конвертируется большое количество музыкального "ширпотреба" (юзерами которых не сильно заботит чистота звука), качество полученного аудио условно считается соответствующим качеству аудио на Audio CD. На самом деле это конечно далеко не так, надеюсь, что Вы это сами услышите.
И последнее. Проверьте чтобы оба трека (исходный и закодированный) имели ReplayGain теги. Проверить это можно нажав в foobar2000 правой кнопкой на треке и перейдя в Properties на вторую вкладку. Там должна быть графа ReplayGain, а в ней обязательно должны быть значения Track Gain и Track Peak. Если в каком-то из треков не записаны ReplayGain теги, нажмите на нем правой кнопкой, выберите ReplayGain->Scan Per-File Track Gain и по окончании сканирования нажмите кнопку Update File Tags.
3. Запуск теста
Теперь у нас есть исходный трек в lossless и, полученный из него посредством конвертирования, трек в формате MP3 с постоянным битрейтом 128 кбит/с.
Добавляем оба трека в плейлист foobar2000, выделяем их, жмем правой кнопкой мыши и выбираем Utilities-->ABX Two Tracks....
В появившемся окне должна стоять галка Use DSP (current playback settings) (если конечно у Вас в настройках включен хоть один DSP), и Use ReplayGain / simple track gain (default: off). Обратите внимание на надпись указывающую что программе требуется определенное место на диске для временных файлов. Жмем OK и ждем пока треки декодируются/обрабатываются и помещаются во временную папку. Появится окно плагина.
4. Прослушивание
Кнопке A соответствует первый трек, кнопке B - второй. Кнопки X и Y отвечают также за файлы A и B, но соответствие неизвестно и может меняться с каждым следующим проходом (trial). С помощью кнопок Play A/B/X/Y Вы можете запускать воспроизведение и не прерывая его (если стоит галка Keep playback position when changing track) переключаться между этими "фрагментами". После прослушивания (в любом порядке и неограниченное количество раз) Вы должны определить соответствие: например, что X - это A, а Y - B; делается это нажатием соотв. кнопки. Чтобы подтвердить выбор, нажмите кнопку Next trial, при этом трек (или его фрагмент, см. далее) будет проигрываться с начала. По окончании прохода можно будет увидеть, правильным ли был выбор - пункт Score отображает количество правильных ответов и количество выполненных проходов.
Параллельно, с каждым проходом рассчитывается вероятность заблуждения (Probability that you were guessing...). Есть возможность скрывать результаты (Hide results) до окончания теста. С помощью ползунка Position можно прокручивать тестовый трек и выбирать только определенный его фрагмент, указав его начало и конец с помощью кнопок Set start и Set end, кнопка Reset, находящаяся справа внизу, сбрасывает выбор фрагмента, после чего проигрываться будет весь трек. Другая же кнопка Reset - в левом нижем углу - полностью сбрасывает результаты теста.
5. Анализ и сохранение результатов.
И так, Вы прошли рекомендуемые 16 проходов. Думаю, в данном случае Вам не составило большого труда хотя бы 13 раз из 16-ти дать правильный ответ (если это не так, то у Вас либо очень плохое оборудование, либо плохой слух, ну или Вы выбрали совершенно неподходящий трек, который очень плохо выявляет артефакты компрессии). Теперь Вы можете с уверенностью сказать что слышите разницу между оригиналом и MP3 LAME 128 kbps, более того - подтвердить это отчетом, который плагин предложит Вам сохранить при нажатии кнопки Exit.
Отчет содержит: версию плагина, версию плеера, дату тестирования, время выполнения каждого прохода, результат для каждого прохода, общий результат - вероятность заблуждения в процентах.
Хочу еще сказать, что если Вы будете публиковать свои результаты, желательно вдобавок указывать подробную информацию о аудиоматериале для теста (а лучше приложить сам фрагмент на котором Вы явно слышите отличия), обязательно также указывать версию кодека и параметры кодирования, например: LAME 3.98.2, -S -b 128 --noreplaygain - %d . Еще можно указать звуковое оборудование на котором выполнялось тестирование - звуковую карту, наушники/усилитель/акустику, etc.
Информация от спонсора
«Анатомия Сна»: всё для здорового и полноценного сна.На сайте компании Вы может ознакомиться с ассортиментом товаров, приобрести кровати, спальные принадлежности и наматрасники в СПБ, а также много другое. В наличии имеются товары как для взрослых, так и для детей.
Материалы по теме:
Что такое "эффект пустышки"?
Двойной слепой ("Домашний компьютер" №6 от 5 июня 2007 года)
ABX - Hydrogenaudio Knowledgebase
|