Исследование звукового тракта Windows Media Player

Дата обновления: 20 Августа 2013
2013-08-20T02:04
Audiophile's Software

Исследовательскую трилогию по части звуковых плееров я завершу наименее популярным в кругу энтузиастов, но широко распространенным среди рядовых пользователей плеером — Windows Media Player.

Подобные продукты Microsoft редко отличаются высокой прозрачностью и конфигурируемостью, так что фактически представляют собой черный ящик — есть только вход и выход. Что происходит внутри этого ящика — мы попытаемся узнать в ходе исследования.

Итак, имеется ОС Windows 7 SP1 Ultimate x64 с установленным Windows Media Player 12. Для чистоты эксперимента я предварительно удалил все кодеки и фильтры (т.к. данный плеер использует DirectShow, а точнее Media Foundation).

Для начала проверим плеер на тестовом несжатом WAV семпле (24 бит 96 кГц). В системе везде установим соответствующий формат данных.

На первый взгляд всё играет исправно. Регулятор громкости плеера синхронизирован с микшером Windows. RMAA также докладывает о хороших результатах, идентичных воспроизведению через ASIO 2.0. Похоже, с lossless у нас всё в порядке — поток идет напрямую от декодера к WASAPI (в режиме shared). Аналогичные результаты я получил и для WMA lossless (также в режиме 24 бит 96 кГц). Однако, давайте попробуем трюк с понижением разрядности. Установим в свойствах звукового устройства формат 16 бит и посмотрим, каким образом система выполнит преобразование 24->16.

Вверху спектр исходного 24-битного семлпа, внизу — результирующий 16-битный. Как мы видим, операционная система выполняет дизеринг, и это просто замечательно. Подобная картина наблюдается и с остальными семплрейтами, в т.ч. 44.1 кГц.

Но, что касается дизеринга — здесь есть подводные камни. Если установить в свойствах звукового устройства 16-битный формат, при воспроизведении 16-битного аудио система всё равно будет подмешивать в него дезер, что не есть хорошо. Подробнее об этом я написал в новости.

Теперь, когда за lossless мы в общем-то спокойны, можно переходить к тесту декодеров lossy.

Начнем конечно же с MP3. Кстати, экспресс тест декодеров я выкладывал на форуме.

Я закодировал тестовый файл 24 бит 44.1 кГц в MP3, затем воспроизвел его через WMP и foobar2000, записывая всё это Райтмарком. Давайте глянем в отчет.

Здесь у меня плохие новости — WMP использует для MP3 16-битное декодирование с фиксированной точкой. Во-первых это сужает динамический диапазон записи, если исходный материал имел разрядность более 16 бит, во-вторых это делает невозможным избежание клиппинга.

Что самое интересное — в WMP есть даже некоторое подобие ReplayGain, функционирующее для файлов из библиотеки, которые уже были хотя бы раз полностью проиграны. Но, опять же, клиппинг из-за фиксированной точки происходит уже в декодере, и обработчик здесь не помогает.

Но тут обнаруживается приятная неожиданность. Декодеры WMA и AAC работают с повышенной разрядностью:

Это уже хорошо — качественные рипы high-res аудио в этих форматах будут воспроизводиться с сохранением динамического диапазона. Но давайте посмотрим, как дела обстоят с клиппингом. Создадим AAC файл с превышением допустимого уровня на 6 дБ.

Превосходно! По результатам моего теста WMP использует декодирование в формате 32 бит с плавающей точкой, и в этом же формате выводит звук — в итоге с клиппингом борется limiter APO, входящий в состав WASAPI.

Должен сказать, что лимитер этот достаточно качественный. Я специально создал тестовый сигнал в виде синусоиды с частотой 60 Гц, промодулированной частотой 1 Гц и завысил уровень на 6 дБ. В то время как Advanced Limiter на этом сигнале давал слышимые срезы, limiter APO справился с клиппингом на ура.

Выводы

Итак, во многом Windows Media Player меня приятно удивил. Большей частью его достоинства обусловлены работой новой звуковой подсистемы Windows, так что вся обработка по сути происходит уже после «черного ящика». В результате мы получаем качественное воспроизведение lossless любой разрядности, возможность понижения разрядности с дизерингом, а также качественное ресемплирование. Но вот если мы захотим воспроизвести качественный MP3 файл в 16-битном режиме, то получим полный букет искажений — клиппинг, сужение динамического диапазона при декодировании в 16 бит, да еще и совершенно ненужный здесь дезер в придачу.

С другой стороны, редко когда встретишь звуковую карту без поддержки 24-битного аудио, да и MP3 из 24-битных источников попадаются совсем нечасто. А вот что касается форматов WMA и AAC — здесь у плеера полный порядок. Так что мой вердикт — вполне юзабельно.


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

Protectimus Solutions предлагает широчайший спектр программных и аппаратных токенов двухфакторной аутентификации. ОТП токен обеспечит высокий уровень защиты аккаунтов Ваших пользователей.

 
   
Категория: Авторские статьи | Автор: | Добавил: Audiophile
Просмотров: 11596| Рейтинг: 5.0/5, голосов: 1
Комментариев: 12
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
0   Спам
[10] Drown363Together (23 Мая 2014 13:18)
Drown363Together
ВСЕМ ПРИВЕТ И ДОБРЫХ ВЫХОДНЫХ!
Cкриншоты делал в "Проигрыватель Windows Media" , скидываю три примера скриншотов где улучшалось качества. Первый скрин это где было улучшение качества, а второй где обычное. Скриншоты с обычным качеством делал сегодня  имено для того чтобы сравнить насколько различно качество. Так что клавишами вперед назад это будет заметно вполне.

Файлы скидываю сюда на долгое хранение в формате архива 7-Zip  http://files.mail.ru/06ED225CDDDD46FE818D77432ADA142E ( до 22 июня на хранение, кто скачает, продлит на 30 дней)

Если ссылка указывает на несуществующую страницу то копируйте в адресную строку.

Формат оригинальный изображений - PNG, захватывал скрин в видео с клавишой "prt sc"  когда было и улучшенное и обычное.  До сих пор не могу понять как улучшалось качества видео. Видно что в "улучшенном" цвет более насыщен и ярче, больше заметна четкость и отсутствуют лишние "пыльные пиксели". Словно в "обычном" есть невидимой слой который мешает.

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

Скрины взял на примере видеофайла "S01E01 - Strategy X_(fm)"  640Х480 пикселей. Обрезал скрины специально для проверки качества в Paint.NET, сохранял все в PNG не меняя форматов изображений. Парадокс в том что еще и "улучшенное" больше весит чем обычное ! Откуда улучшение ?!

Надеюсь на разъяснения, может кто знаком с таким "явлением" ?.
0   Спам
[9] Drown363Together (15 Мая 2014 16:06)
Drown363Together
Скриншоты будут там прямо видно что лучше изображение, скину ждите плиз
0   Спам
[7] Drown363Together (09 Апреля 2014 12:17)
Drown363Together
Здравствуйте, было случаи что этот проигрыватель реально  улучшал качество изображения, но до тех пор пока я его не выключал и снова включал и кроме как "чудом" это не назвать , реально улучшал я не многословлю,  в чем же дело, может и не стоит в этом копаться, но реально "пиксельная" пыль , всяческие неровности почти пропадали, даже цвет менялся на живой...

Как можно, объяснить когда исходник на время превращался в "лучшее" чем оригинал ?
+1   Спам
[8] Audiophile (12 Апреля 2014 17:33)
Audiophile
Скриншоты в студию. Вообще, есть технологии от видеокарты, способные "улучшать" картинку. И они могут работать не везде и не всегда.
0   Спам
[11] Drown363Together (01 Июля 2014 18:47)
Drown363Together
Скрины в студию предоставил ) Жду ответа )
0   Спам
[5] Tritus (09 Сентября 2013 00:05)
Для WMP, кстати, существует и ASIO-плагин. Называется ASIO Window Media Player Plugin. Скачать можно с SourceForge. music
+2   Спам
[2] sergejholod (24 Августа 2013 09:01)
на iTunes еще можете такой обзор сделать?  thumbs_up
0   Спам
[1] TMainStream (23 Августа 2013 13:54)
Не знаю, как в Win7, но в Windows XP WMP11 использует mp3 декодер от Fraunhofer, причём датированный, если я не ошибаюсь, началом 2000-х, а то и концом 90-х. Мне почему-то так кажется, что о поддержке разрядности больше 16 бит или о плюшках типа дизеринга там и говорить не стоит.
0   Спам
[3] Audiophile (27 Августа 2013 16:41)
Audiophile
откуда сведения о декодере?
0   Спам
[4] TMainStream (28 Августа 2013 20:18)
В WinXP есть файл %windir%\system32\l3codecx.ax который является декодером mp3. Именно этим декодером пользуется WMP.
0   Спам
[6] Tritus (09 Сентября 2013 00:50)
Если в WMP выбрать в меню пункт "Справка" => "О программе" и нажать там "Служба технической поддержки", то отобразится список "Аудиокодеки", где указан ACM декодер от Fraunhofer.
0   Спам
[12] Tritus (03 Июня 2019 12:36)
Мне кажется, что кодер от Fraunhofer несколько недооценен. В Windows 10 используется ACM кодер/декодер Fraunhofer IIS MPEG Layer-3 Codec (Professional) версии 3.4.0, который может кодировать стерео в CBR вплоть до 320kBit/s, 44100Hz или 48000Hz. Причем спектрограммы файлов в CBR320 существенно отличаются от спектрограмм файлов, закодированных последним кодером от Lame.