Тестирование плееров. Звуковой движок.

Мне часто доводилось слышать и читать отзывы о качестве звука различных плееров.  У одного “звук ужасный”, у другого “зажаты верхи”, у третьего “слабая стерео панорама”, у четвертого “звук просто супер”.  Кроме этого, после выхода AIMP3 с собственным звуковым движком, на нашем форуме расплодились темы, в которых пользователи жаловались, что AIMP3 звучит хуже AIMP2. Так же было немало хвалебных сообщений, что новая версия по звуку значительно лучше старой. Где же истина?

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

Выбор пал на 4 плеера: популярный и всем известный Winamp; Foobar2000, прославившийся своим качественным звуком; и, конечно же, AIMP2 и AIMP3.

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

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

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

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

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

Тест1: 16 bit.

16 bit

Частотная характеристика

Частотная характеристика

Динамический диапазон

Динамический диапазон

Нелинейные искажения + шум (при уровне -3 дБ)

Нелинейные искажения + шум (при уровне -3 дБ)

Интермодуляционные искажения

Интермодуляционные искажения

Как говорится, найдите 5 отличий. Параметры одинаковые, графики совпали до пикселя. Плееры выдают абсолютно одинаковый звук.

Тест2: 24 bit.

24-bit

Частотная характеристика

Частотная характеристика

Динамический диапазон

Динамический диапазон

Нелинейные искажения + шум (при уровне -3 дБ)

Нелинейные искажения + шум (при уровне -3 дБ)

Интермодуляционные искажения

Интермодуляционные искажения

И вот опять наша любимая игра с поиском отличий.

Выводы

А комментировать-то нечего, звук всех плееров одинаковый.

Надеюсь, я не зря проводил тесты. Основная цель их была доказать, что звук всех четырех плееров абсолютно идентичен, что называется “as is” (как есть). Ни о каких “выпяченных низах” или “зажатых верхах” речи и быть не может.
Спасибо за внимание.

38 thoughts on “Тестирование плееров. Звуковой движок.

  1. sergio7786

    но меня мучает вопрос. почему же тогда кажется что они поют по разному? самовнушение?

    1. soolo Post author

      На восприятие влияет масса факторов: от положения слушателя и источника звука в пространстве, угла поворота головы до особенностей человеческого слуха и психологических факторов. Про обманы зрения слышали? Обманы слуха так же существуют.
      Ну и повторюсь: для адекватного сравнения отключались эквалайзер, эффекты, ресемплер.

    2. wizard

      нет никакого самовнушения, разные библиотеки, разные настройки, соответственно и разный звук. Прикрутите DFX плагин к winamp и без всякого но заметите разницу в звучании, идет прогамная обработка звука.

    1. soolo Post author

      Это монстр без настроек.
      Там не понятно что с какой частотой выводится, через какой интерфейс и с какой битностью.

      Ну и плееры я выбрал не случайно. АИМП3 по качеству звука чаще всего сравнивали именно с АИМП2, Фубаром и Винампом, WMP вспоминался лишь при наездах на интерфейс =)

        1. soolo Post author

          Кто говорит? Аудиофилы? Люди, которые слышат разницу в звучании между двумя разными проводами питания?
          Вдумайтесь в смысл графика “частотная характеристика” – ровная прямая линия на уровне 0 дБ – куда уже чище?
          Только что по-быстрому проверил WMP в режиме 16 бит – те же самые графики.

          1. ScrollUnLock

            Спасибо! Теперь будет, что ответить фанатикам WMP)

  2. wizard

    Да уж. Интересные выводы, просто даже гениальные. Я бы удивился, если бы было по другому. Ну что ж, поясню.
    1. RightMark Audio Analyzer – это пакет для тестирования звуковой карты на ее пригодность к высокачественному воспроизведению и записи звука. Соответственно к програмным плеерам не имеет никакого отношения, т.к. использовали вообще виртдрайвер.
    2. Плееры одинаковые? если принимать во внимание среду разработки, то да. Но ведь и суть каждой программы, а плееры это именно просто программы:) состоит в ее коде, алгоритме, в расширяемости в конце концов и уж в последнюю очередь в прилепленном интерфейсе.
    3. Исключили особенности железа и реализации драйверов к нему??? тогда вопрос, почему бы вам не протестировать MsWord, например, спорим графики будут такие тоже? Программой для железа протестировали код программы на С++ на предмет АЧХ, мысль улавливаете? Получается что-то типа рекламы растительного масла без холестерина (которого в нем и быть не может) 🙂

    Ладно. Я согласен с автором насчет обмана слуха, теперь в медицине будет новый термин, но как я уже сказал, сам по себе плеер тестировать просто бессмысленно. Конечный продукт-это результат работы всех составляющих, и никакие тесты здесь не помогут. Согласитесь, без толку выбирать плеер, когда у вас стоит встроенное аудио, поставьте качественную аудиоплату и хорошие колонки, и Вы поймете в чем разница. Как различаются bass библиотеки, какие ресемплеры выдают звук с тормозами, а какие летают, в каком плеере будет звучать мелодия с плавающим битрейтом, а в каком тупо обрежутся частоты, просто сравните настройки и конечный результат. Конечно стоит упомянуть и про соответствующий размер помещения, глупо в сортире включать басы на всю катушку. Кстати, WMP -пожалуй единственный продукт, который воспроизводит звук с плавающим битрейтом до 720Кb/c, AIMP сможет? Нет. Соответственно и качественные записи лучше слушать WMP. Но это все дело вкуса. Лично у меня на ноутбуке давно прижился AIMP2, просто и удобно, а камерную музыку я не слушаю :). Спасибо за внимание.

    1. Artem

      Если вы обратили внимание, цель теста была именно замерить разные плееры, т.к. очень часто пользователи сравнивают именно плееры на одинаковом железе с одинаковыми параметрами. Конечно же, для нас с вами, эти выводы тривиальны.

      >>> Кстати, WMP -пожалуй единственный продукт, который воспроизводит звук с плавающим битрейтом до 720Кb/c, AIMP сможет? Нет.

      Про какой формат идет речь?

      1. wizard

        Я вас понял, а вы видимо не совсем. Какой смысл программой для тестирования железа тестировать голый софт? Каким макаром можно снять АЧХ у программы с виртдрайвером, а не с железа? Я же предложил автору опуса протестировать ворд, в чем проблема 🙂 Да бог с ним..

        Артем, я часто бывал за границей и покупал диски с музыкой, лицензионные, была такая возможность…так вот при воспроизведении их на компьютере звук менялся настолько, что просто невозможно описать, просто был вообще другим. И единственная программа которая более менее сносно их воспроизводила был WMP, там я и заметил разницу в битрейте, был 640-720kb/c, пару дисков 960. Ни один плеер, ни при каких настройках(точнее декодер плеера) поток с битрейтом больше 640 Кбит/сек не способен воспроизвести, кроме WMP , возможно я ошибаюсь, но я не встречал. Кстати, родные мелодии в WMP( Бетховен5 и т.д.) тоже воспроизводятся 720kb/c. Что касается формата, то это просто аудио диск, не MP3. Почему прижился именно AIMP2? -просто удобно и не глючит как 3, интерфейс нравится, вот и вся история.

        1. Artem

          Я вас понял, а вы видимо не совсем. Какой смысл программой для тестирования железа тестировать голый софт? Каким макаром можно снять АЧХ у программы с виртдрайвером, а не с железа? Я же предложил автору опуса протестировать ворд, в чем проблема Да бог с ним.

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

          Кстати, родные мелодии в WMP( Бетховен5 и т.д.) тоже воспроизводятся 720kb/c. Что касается формата, то это просто аудио диск, не MP3.

          Обычный аудио диск имеет скорость потока в 1411 кбит/с и отлично проигрывается в AIMP. Что касается формата MP3, вернее его расширений, AIMP (ровно как и большинство других продуктов) поддерживает оригинальную спецификацию MP3, проще говоря, он НЕ поддерживает MP3 Free Format, MP3 PRO, MP3 HD. То, что плеер показывает вам 700 кбит/с, еще не означает, что там действительно столько. Лично AIMP в случае переменного битрейта показывает средний, основываясь на опорных фреймах (см. этот пост: http://www.aimp.ru/forum/index.php?topic=35010.msg206435#msg206435 )

          Почему прижился именно AIMP2? -просто удобно и не глючит как 3, интерфейс нравится, вот и вся история.

          Очень интересно знать, в каком месте глючит 3ий, т.к. будущее именно за ним, а не за умершим много лет назад 2м =)

    2. soolo Post author

      wizard – вы аудиофил? Тогда спорить с вами бессмысленно. Если же вы адекватный человек – прочитайте, то что написал выше Артём, ну и небольшой комментарий от меня ниже.
      RMAA – программа для анализа звука, идущего со звуковой карты, либо звуковых ФАЙЛОВ. Файл можно записать как с выхода звуковой карты, так и исхитриться и записать напрямую с плеера.
      Я проследил путь звука от файла, открытого в плеере, до входа в звуковую карту – на этом пути никаких искажений не выявлено и это доказывают не только графики (их я тут рисовал больше для наглядности), это доказывает простое тупое побитовое сравнение файлов, записанных от разных плееров, с исходным файлом.
      Что происходит со звуком дальше – как его искажает звуковая карта, усилитель, колонки, помещение, уши или мозг слушателя – меня не инетересовало.

      1. wizard

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

        Артем, спасибо за объяснение, а почему и отчего у меня глючит aimp3 и почему за ним будущее я даже разбираться не буду, мне лень, возможно дело просто в ОС или моих ручках.

        1. Artem

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

          а почему и отчего у меня глючит aimp3 и почему за ним будущее я даже разбираться не буду, мне лень, возможно дело просто в ОС или моих ручках.

          Жаль. Хотя бы напишите, в чем именно это выражается?

          1. wizard

            Артем, я собираю железо и настраиваю софт больше лет 10 точно, у меня от всех вариантов просто каша в башке. Я говорю только за себя, обычная мелодия в aimp3 при дефолтовой установке на win7sp1 страшно хрипит ближе к макс.громкости, не колонки, а именно музыка. Исключения единичные, работает только при выводе через directsound. С winXPSp3 вообще выдает звуки убитого пылесоса и часто на 90% загружает процессор, т.е. либо музыка либо другой софт. Я прекрасно понимаю, что aimp2 это вчерашний век, но он работает без косяков. В некоторые современные ноуты и тем более стационары часто ставят норм. звук.карту и вот тогда с 3 версией начинается карусель, мне с точной настройкой возиться нет времени и оптимальным вариантом является как раз 2 версия,точно также как DaumPotPlayer лучшей альтернативой любым видео плеерам и пакетам кодеков. Вообщем основная проблема 3версии это хрипение , треск через asio на 7 и полная загр. проца на ХP, очень часто западает звук. Оговорюсь еще раз, это мои наблюдения и смею заверить ручки у меня достаточно прямые.

          2. Artem

            Нагрузка на процессор лечится отключением графических примочек в настройках программы.

        2. Soolo Post author

          Да не обзывался я =)
          Просто часто встречаюсь с людьми, которыми ничего не докажешь, вот слышат они разницу в звучании там, где её нельзя слушать и всё тут.
          То что я тут доказываю очевидное – это очевидно =) Но, как сказал Артём, не все это понимают. Уж очень любит народ посравнивать звучание АИМПа с тем же Фубаром.
          В теме на форуме, где я опубликовал ссылку на эту статью, через несколько постов появился пост со сравнением звука AIMP и XMPlay, а вы говорите очевидно… Вот для таких людей и была написана данная статья

          1. wizard

            Обзывался 🙂 Ладно. Мне вот было бы интересно почитать сравнения медиа комбайнов с довесками при выводе через asio и directsound, например JetAudio и JRiver или что подобное, другим думаю тоже.

  3. wizard

    <> – а то я бы не сообразил, нифига не помогает, какие уж там примочки , но если нагибают современное железо .., видимо ХP с 3 версией не дружит ( просто многие инженерные программы только для XP, и именно этим обуславливается выбор). Да и если все отключать, так и зачем тогда ставить..ладно..совсем задурил вам голову, не обращайте внимания.

    1. Artem

      Лишь XP SP3 работает корректно с полупрозрачными окнами, но, к сожалению, она делает это не быстрее, чем та же Vista или 7-ка, тут уж ничего не поделаешь.

      1. wizard

        да бог с ним, Москва не сразу строилась, допилите со временем, удачных проектов! 🙂

  4. Veselchak

    Доброго всем времени суток, я хотел бы добавить к теме загрузки проца на XP SP3. Комп не новый, однако систему не грузит вовсе, 2-6 процентов. Aimp3 установлен еще с бета версий, 3.00. В общем, работает без проблем и на XP SP2 и на XP SP3.
    Огромное спасибо Артему и всей команде.

  5. ij

    Прежде всего – огромное спасибо за AIMP.
    В течение 18-19 лет пользовался исключительно WinAmp’ом, хотя в последнее время он начал меня слегка раздражать. Сегодня случайно наткнулся на AIMP и как-то он мне глянулся (скриншот, что ли, удачный был). Короче, поставил. Третий.
    Ставил на ноут, древний, 2006 года. Процессор Centrino Duo 1,8 MHz, 2 Gb оперативной памяти, звуковая карта nVIDIA GeForceGo 7300 (512 Mb). Система – Хрюша с третим сервиспаком.
    Я прозрел! AIMP произвел отличное впечатление. Многое, чего мне не хватало в WinAmp’е, есть в AIMP.
    Но я, собственно, не об этом.
    AIMP3 чудно работает, проиграл уже три альбома – багов не заметил.
    Процессор грузится в диапазоне 9-37%, но у меня еще запущены Word, Opera, Skype – весьма ресурсоемкие программы.
    Еще раз спасибо.

    1. Svobodniy

      Учитывая, что Винампу вообще-то 15 лет 😉 Да и наверно не с первого дня использовали… Года так с 2000го, когда он стал популярен…

  6. pytex

    Очень интересное и полезное тестирование. Спасибо.

    Сам пользуюсь AIMP’ом с версии 1.7х (впоследствии Артем даже реализовал пару моих пожеланий, из тех которые тогда кучей плодились на форуме)

  7. }!{enR

    Soolo, вам не кажется, что стоило сравнивать плееры с выводом через ASIO или хотя бы через WASAPI Exclusive?
    Мне почему-то кажется, что звучание не может быть одинаковым просто потому, что разные плееры используют разные библиотеки для вывода звука, и я буду очень удивлён, если код у них тоже одинаковый…
    Мне кажется, что вы получили одинаковые результаты, потому что все они упёрлись в верхнюю границу качества системного обработчика, через который они все прошли при выводе на DirectSound. Оригинальное звучание самого плеера присутствует на выходе плеера, перед системным микшером, а не перед подачей на звуковую карту.

    1. Artem

      Мне почему-то кажется, что звучание не может быть одинаковым просто потому, что разные плееры используют разные библиотеки для вывода звука, и я буду очень удивлён, если код у них тоже одинаковый…

      Вы хотите сказать, что каждая из библиотек просто обязана вносить в передаваемый сигнал искажения? И из-за того, что код в библиотеках разный – будут разные искажения? Я не отрицаю, что могут быть разные алгоритмы ресемплеров, и они будут давать разный результат, но в данной статье мы их не рассматриваем.

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

      Вы серьезно полагаете, что выше определенной планки системный обработчик начинает специально портить звук? Я немного поясню, что такое микшер и для чего он нужен, а вы уже сами сделаете вывод, на сколько он может портить звук, почему и в каких случаях.
      Основной задачей системного микшера является собрать звук со всех приложений, объединить его и уже полученный результат отправить на устройство. Соответственно, чтобы объединить сигналы с разной частотой и глубиной дискретизации, их нужно привести к какому-то одному общему формату, а этот общий формат задается в настройках ОС. Поэтому, если мы выводим звук сразу в этом “общем формате” + другие программы молчат – звук обрабатываться не будет.

      Оригинальное звучание самого плеера присутствует на выходе плеера

      Сигнал на выходе по качеству обязан быть ровно таким, каким он был на входе (ресемплер и понижение глубины не учитываем в рамках этой статьи). Я крайне сомневаюсь, что сейчас еще остались плееры, которые не следуют этому утверждению

      1. }!{enR

        Вы серьезно полагаете, что выше определенной планки системный обработчик начинает специально портить звук?

        Я предполагаю, что в пределах “планки” все плееры обладают одинаковыми характеристиками, а различия начинаются ЗА планкой. Но, поскольку системный обработчик не может “держать эту планку” так же высоко, как плееры, всё, что выше этой планки тупо пропадает, и на графиках всё получается одинаково.

        Основной задачей системного микшера является собрать звук со всех приложений, объединить его и уже полученный результат отправить на устройство. Соответственно, чтобы объединить сигналы с разной частотой и глубиной дискретизации, их нужно привести к какому-то одному общему формату, а этот общий формат задается в настройках ОС. Поэтому, если мы выводим звук сразу в этом «общем формате» + другие программы молчат — звук обрабатываться не будет.

        Я в курсе о принципах работы микшера, но до и после него существуют ещё всякие Audio Processing Object-ы, которые делают непонятно что… Один из них может являться частью панели управления звуковой картой, и накладывать эффекты, но про остальные я без понятия…

        1. Artem

          Но, поскольку системный обработчик не может «держать эту планку» так же высоко, как плееры, всё, что выше этой планки тупо пропадает, и на графиках всё получается одинаково.

          Начиная с Windows Vista системный обработчик работает очень хорошо, а местами даже лучше, чем средства некоторых плееров. Так что времена, когда штатный ресемплер работал по принципу дублирования / удаления сэмлов без интерполяции исходного сигнала, уже давно прошли. Все эти рассказы про ужасный системный микшер уже неактуальны.

          Я в курсе о принципах работы микшера, но до и после него существуют ещё всякие Audio Processing Object-ы, которые делают непонятно что… Один из них может являться частью панели управления звуковой картой, и накладывать эффекты, но про остальные я без понятия…

          Могут быть, но с тем же успехом ASIO интерфейс может быть простой оберткой (как ASIO4ALL) над имеющимися в ОС интерфейсами.

  8. Soolo Post author

    >Я предполагаю, что в пределах «планки» все плееры обладают одинаковыми характеристиками, а различия начинаются ЗА планкой. Но, поскольку системный обработчик не может «держать эту планку» так же высоко, как плееры, всё, что выше этой планки тупо пропадает, и на графиках всё получается одинаково.
    Что значит “за планкой”? Сигналы 16 бит, 24 бит и т.д. имеют вполне определённый порог “шума”, ниже которого они не способны передать никакого звука. До этого самого порога шума все плееры выдали абсолютно одинаковые сигналы, совпадающие с исходным сигналом. А значит ни плеер, ни система не внесли в исходный сигнал ничего нового. А “за планкой” ничего быть не может.

  9. Timofej

    Глупость, сравнивать плеера. О каком качестве можно вести речь если частоты выше 4 КГц уже подвергаются искажению по причине квантования. Появляются куча гармоник n-порядка. Меньше искажений только при частотах диксретизации выше 96 КГц и то, их всё равно много. Из-за этого звучание будет всегда зажатым и холодным. А все эти перечисленные плеера в диапазоне до 4 КГц воспроизводят звук абсолютно одинаково. Была как-то возня с Lame кодеком 3.93, что якобы только до этой версии высокие не обрезались. Тоже чушь. Кто-нибудь заглядывал на АЧХ при кодировании на этой версии кодека? У него наблюдаются интемодуляционные искажения на всё тех-же высоких частотах, выше 15 КГц. Посему всё правильно сделали разработчики. Не надо думать что там сидели все дурнее “велосипеда” Хотите “суперзвук”? Приобретайте виниловые пластинки с Hi-End проигрывателем или SACD, всё остальное для ушей “домохозяек” и любителей массажа мозгов в авто.

    1. Soolo Post author

      Специально для вас статья про сравнение PCM и DSD (SACD): https://habrahabr.ru/post/275613/
      Искажения квантования – выдумки маркетологов, продвигающих винил и “золотые” диски SACD.
      Формат PCM 44.1 кГц абсолютно точно выводит все синусоидальные частоты вплоть до частоты Котельникова 22 кГц.

      И при чём здесь LAME-кодек в статье о звуковых движках?

  10. BruceWillis

    Чуть под стол не упал…
    Wav это нужно читать как RAW
    Т.Е. Данные, которые нужно передать НЕОБРАБОТАННЫМИ на устройство воспроизведения (звуковую карту)…

    КАК?!! плеер может их испортить?

    Пользователи сравнивают кодеки MP3, например, которые, действительно, например, в каждой версии Winamp имеют свою звуковую окраску…
    Сравнивают (на слух) алгоритмы частотной коррекции в эквалайзерах…

    Да… Я… Несколько озадачен смыслом статьи, на форуме человека, который профессионально занимается звуком…

    [Смайлик “Недоумённо развожу руками”]

    1. Soolo Post author

      Я очень рад, что есть люди, которые понимают, что плееры не могут отличаться звуком. Но, к сожалению, далеко не все это понимают. Статья для тех, кто верит мифам или сомневается верить или нет, но способность думать не атрофировалось, как у некоторых, поражённых аудиофилией головного мозга.
      Кстати говоря, декодеры так же не должны играть один и тот же файл по-разному. Разве что в декодер закралась ошибка. Так что разные оттенки мп3 у разных версий Винампа – один из тех самых мифов. Статья на эту тему так же написана http://www.aimp.ru/blogs/?p=295

Leave a Reply