Обзоры программ. Маэстро, Boost! Улучшаем звук на Android-девайсе

PowerAMP – это лучший плеер на Андроид. Можете попробовать найти замену, но это будет не просто.
Аудиоплеер PowerAMP обладает рядом преимуществ: он удобен, быстро работает, имеет отличное качество звука по сравнению с другими плеерами, есть весь необходимый набор «инструментов», можно повысить звук выше стандартного.

Первый запуск

При первом запуске вас встречает помощник, в окне плеера и в окне Тон/Громкость. Стоит подробно их изучить чтобы легче было освоиться в ПаверАМПе.

Библиотека и список файлов

При первом запуске плеер сканирует карту памяти на наличие аудио-файлов.

СОВЕТ: Стоит с самого начала сохранять всю музыку в одну папку. В настройках PowerAMP задаем только эту папку и удаляем все данные по первоначальному сканированию.
Настройки – Папки/Библиотеки – Папки с музыкой – (выбрать нужное)
Иначе, могут попадать левые аудио-файлы. Особенно это мешает если у вас установлено приложение для обучения иностранных языков с кучей аудио.

На вкладке альбомов выводиться весь список с обложками. Стоит отметить, что PowerAMP очень быстро работает с обложками.
При «длинном нажатии» на альбом выводится список необходимых опций (они показаны на скриншоте), все они подписаны и не вызывают вопросов.

Музыку можно добавить в список файлов разными способами. Для этого переходим в «Библиотеку». Все вполне понятное. Подбор музыки по жанрам происходит при помощи тегов, так что если качество подбора данным способом вас не устраивает – виноваты аудиофайлы, а не плеер.
Также стоит отметить удобную функцию – «Высоко оцененные». Чуть выше кнопок плеера есть 5 звездочек (на белых обложках их плохо видно), отметив любимый трек, можно легко его найти на кладке «Высоко оцененные». Функция конечно удобная, но только чтобы ваши труды не пропали зря стоит сохранять любимые треки в отдельную папку, случись чего с плеером или файлами – еще потом спасибо скажите.

Опции работы со списком файлов

Сам плейлист предельно прост и не перегружен лишними кнопками и информацией.

В окне плеера при «длинном нажатии» на кнопку «Повтор» можно увидеть вот такие опции для работы со списком файлов.

  • Повтор выключен – после последнего файла воспроизведение остановиться.
  • Повтор списка – если добавили 1 альбом, то он будет играть по кругу.
  • На след. список — если добавили 1 альбом, то когда он проиграет все песни – перейдет на следующий альбом.
  • Повтор трека – по моему очевидно.

Настройка случайных треков (рендом, шаффл, shuffle) тоже довольно широки.

  • Откл. – без перемешивания.
  • Все – перемешивает все треки.
  • Треки – перемешивает треки в альбоме и по завершению переходит на новый альбом по списку.
  • Списки –треки в альбоме не трогает, но перемешивает списки (альбомы)
  • Треки/Списки – перемешивает все. И списки и файлы в списках.

Звук

Об качестве звука можно спорить бесконечно – для каждого оно свое и нет величины, которая сможет это «качество» измерить. Лично на мой взгляд, звучание в PowerAMP лучше, чем в большинстве плееров что я успел попробовать и особых претензий к нему нет.

Плеер имеет 10-ти полосный эквалайзер, но в «вертикальном экране» видно всего 6 полос, чтобы увидеть все – пользуйтесь прокруткой под EQ. Хотя лучше перевернуть экран в горизонтальное положение, будет примерно следующее:

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

Также эквалайзер имеет набор пресетов с наглядными примерами амплитудной кривой. Преамп – повышает звук выше стандартных. Качество звука при повышение нормальное, в отличии от других аудиоплееров PowerAMP не хрипит. Хотя на некоторых телефонах хрипит, но у меня только PowerAMP не искажает звук в «Приампе». Тон – позволяет повышать или понижать более аккуратно низкие и высокие частоты. Лимит – отсеивает завышенные частоты и убирает искажение. Чтобы проверить работу достаточно выставить «Тон» низких на полную (или преам на некоторых смартфонах) и включить лимит. Моно – понятно. Баланс – можно изменять баланс звука на разные каналы (правый/левый наушник).

Стерео Х – хитра вещь, которое поможет сделать звук более «сочнее». Для того, чтобы перейти в «тонкие настройки» нужно проделать «длинное нажатие» на название Стерео Х и мы попадет на вот такой экран, хотя новичкам на нем делать нечего). Окно настолько «популярное», что его не стали переводить.

Настройки

Из настроек наиболее интересное: Теги – показывает адрес где храниться аудио-файл, формат, объем ну и сами теги. Также есть редактор тегов, хотя мало кому он нужен.

Таймер сна – через сколько выключить плеер.

В Настройках – изменение папки хранения аудио, об этом писалось выше.

Выбор темы (скина) PowerAMP. Лично меня и стандартный скин вполне устраивает. Если и этих окажется мало – можете скачать новые на гугл плей, хотя большинство из них платные. Говорят, можно на 4pda скачать платные темы для Poweramp бесплатно – можете там попытать счастья, как я уже говорил мне это не особо интересно.

Экран блокировки

По умолчанию экран блокировки отключен. Почему-то. Чтобы включить экран блокировки – переходив в Настройки – Опции экрана блокировки.

По умолчанию окно настроек выглядит так. Если включить «Экран блокировки ICS» он будет выглядеть как показано на скриншоте. Он совсем не интересен, а потому переходим дальше. Также, не стоит включать оба экрана блокировки одновременно!

Если включить «Экран блокировки Poweramp», то он уже будет выглядеть вот так. Не забудьте добавить часы и дату – тогда вы получите все нужное.

Минусы

Минусов у PowerAMP не так и много, хотя может плохо искал. Глючит экран блокировки. При разблокировки паверамп перекидывает на стандартное окно разблокировки. Выключение экрана проходит не сразу, как для стандартного экрана, а не для блокировки – пару секунд. Повышение и понижение громкости проходит не плавно, а скачками, что немного бесит. Да и повышение громкости иногда бесит, бегунок на середине, а плеер играет все равно тихо… Более подробный FAQ можно почитать еще и тут —

Недавно на форуме программы PowerAmp и в PlayStore появилась возможность загрузить третью версию популярного аудиопроигрывателя для Android. Принципиальным отличием от второй версии является новый подход разработчика к выводу звука и расширенные возможности по его настройкам. Пускай версия всё-ещё Alpha, но она вполне стабильно работает и радует качественным звуком при правильной настройке. Так давайте настроим этот плеер правильно!

Недавно вышла обновленная версия Poweramp v.3 build 803/805, новую версию этой статьи можно прочесть перейдя по ссылке:

До проведения настроек, подключаем наушники и устанавливаем громкость на минимум. Аналогично с отключенными наушниками. Осторожность не помешает.
Я продемонстрирую настройки оптимальные для смартфонов Sony Xperia Z2/Z3/Z3 Compact и аналогичных им. Я даю пояснения почему выбираются те или иные настройки, поэтому если у Вас другой смартфон, вы сможете принять решение какие настройки нужно сделать в вашем случае.

Делаем свайп от левого края дисплея и нажимаем Settings (настройки/параметры).
С помощью шестеренки можно убрать ненужные вам пункты бокового меню.

Нажимаем на Audio.

Сразу обращают на себя внимание новые пункты меню.

Для начала, настроим ReplayGain сканер. Упрощенно принцип работы сканера такой: максимизировать уровень громкости без искажений и потерь. Актуальна эта технология для lossy файлов т.е. в форматах сжатия с потерями, таких как MP3, AAC, OGG Vorbis. Те, у кого на ПК установлен проигрыватель Foobar2000 наверняка заметят сходство настроек. Поэтому и принцип настройки аналогичный. в пункте ReplayGain выбираем ApplyGain/prevent clipping т.е. мы предлагаем проигрывателю увеличивать громкость, но не доводя до клиппинга (искажений). В поле Source (Источник) выставляем Album или Track т.е. выравнивание громкости в пределах альбома или каждого трека.
RG Preamp/Preamp for songs without RG info (Усиление): устанавливается значение в децибелах, насколько увеличить громкость треков, у которых в тегах есть значение ReplayGain или нет (соответственно). Значение RG Preamp подбирается экспериментальным путем, но рекомендую настроить как на иллюстрации ниже. Это компромиссная настройка.
Самый безопасный вариант настройки - оставить 0 dB.
Значение Preamp for songs without RG info лучше оставить равным нулю.

Выходим из меню. Заходим в следующий пункт Resample (Ресэмплер).

Меняем тип ресэмплера на SoX Resampler. Плеер предупреждает нас, что он самый качественный, но медленнее и больше потребляет энергии.

Почему именно SoX? Опять-таки ресэмплер хорошо знаком по Foobar2000 для ПК, проверенный временем, обладает высоким качеством. Мы настраиваем плеер на максимальное качество звука, поэтому в данном случае предполагается, что вы готовы пожертвовать энергопотреблением ради качества. Ну а "медленность" ресэмплера не играет роли при условии, что у Вас современный смартфон не старше 3 лет.

Resampler Cutoff Frequency Ratio (Соотношение частоты среза) - тут можно оставить как есть или поставить 95% (по умолчанию в Foobar2000).

Dither (Дизеринг) - нужен при условии, что вы пытаетесь проиграть музыкальную композицию с разрядность 24 bit (см. самый первый скриншот, PowerAmp указывает внизу окна разрядность музыки в случае если разрядность отличается от стандартной для компакт-дисков 16bit) и ваш смартфон поддерживает вывод только в 16 битном формате. В остальных случаях - активация этой опции лишь ухудшит звук. Если Вы слушаете только 16-битную музыку (а такой - большинство файлов, все файлы mp3, aac и прочие), то Вам также следует отключить дизеринг. Дизеринг не нужен для понижения частоты дискретизации, т.е. чтобы проиграть файл mp3 16bit 44.1 kHz на смартфоне, поддерживающем 16bit 48kHz вам не нужен дизеринг! Вам нужен только ресэмплер, в нашем случае - это SoX. При этом музыку в 16bit можно без всякого дизеринга проигрывать на 24bit чипсете.

Мы установим значение None (Нет, без дизеринга), поскольку чипсет Z2 умеет играть музыку в формате 24bit 96kHz и PowerAmp поддерживает эту функцию.

Теперь выходим из меню и нажимаем на пункт Output (Вывод звука). Самое интересное!
На выбор нам предлагается три схемы вывода звука. Во первых, как сразу понять какая из схем вывода звука активна? Очень просто, справа появляется надпись Active (Активен).
На скриншоте снизу видно, что активен Hi-Res Output.

Разберем выводы звука по пунктам:

AudioTrack Output (Java based) - это то, с чем пользователи мирились на протяжении ранних версий адроид до какой-то из 4.x Использовать такой вывод звука крайне не рекомендуется. Звук управляется софтом на Java с гигантскими задержками.

OpenSL ES Output (Native optimized) - ускоренный с помощью OpenSL ES вывод звука. То, что работает на большинстве смартфонов, этот вывод по умолчанию активен в плеере. Чем он так хорош? Он оптимизирован под железо и низкоуровневый софт, проще говоря работает с меньшими задержками и с приемлемым качеством звука на выходе.
Если вы используете этот выход с файлами 24bit, возможно вам имеет смысл использовать Dither (Дизеринг) вот только с файлами 16bit его нужно будет снова отключить.

Давайте зайдем в его настройки. Нажимаем на этот пункт.
Что мы видим: ряд переключателей, названия которых говорят сами за себя: для каких источников использовать этот выход.
Wired Headsey/AUX - это проводные наушники, гарнитуры либо то, что подключено к аналоговому выходу для наушников, например, мини-колонки или аналоговый усилитель. В нашем случае эта схема вывода звука для наушников не используется, зато она активна для Bluetooth наушников и всего остального. Мы пока так и настроим. Для каждого устройства можно настроить параметры, нажав на шестеренку.

Давайте рассмотрим настройки на примере проводных наушников, благо настройки аналогичны.

Плеер указывает, что параметры вывода 16 bit (для всех смартфонов одинаково) и 48kHz (для Z2, может быть 44,1 для других устройств).

Почему же в случае с Z2 плеер выставил частоту дискретизации 48kHz, хотя параметры стандартного компакт-диска 16 bit 44.1 kHz? Да потому, что Android подбирает ту частоту, которая кратна базовой (т.е. родной) для железа и соответственно, для аудио-драйверов.
Поэтому, косвенно мы понимаем, что Z2 будет лучше всего играть музыку с частотой дискретизации 48kHz и кратной ей. Какой? Умножим х2, получаем... правильно! максимальные для железа смартфона 96kHz.

Пункт No Equ/Tone полезен тем, что отключает эквалайзер, настройки тонкомпенсации - проще говоря выдает звук без изменений. Если не пользуетесь эквалайзером (а лучше им не пользоваться!) рекомендую на всякий случай включить для всех устройств. Выходим из меню.

Hi-Res Output (Experimental) - вывод звука высокого разрешения доступный для ряда смартфонов, в числе которых и Z2. В отличие от предыдущих двух, этот вывод реализован производителем смартфона. Тем не менее, должна быть поддержка и со стороны плеера.

В пункте Variant указано название метода вывода реализованного производителем смартфона. В случае с Z2 - Sony High Res Audio. Если у Вас этот пункт работает включаем переключатели на всех выводах. Заходим в настройки наушников (Wired Headset) нажав на шестеренку.
Параметры звука впечатляют: 24 bit 96kHz.

DVC is always enabled - означает, что плеер напрямую управляет громкостью и это нельзя отключить. И не надо!

Сразу включаем No Equ/Tone если не используем эквалайзер.

Sample Rate (частота дискретизации).


Здесь мы выставим максимальные для Z2 96kHz. Еще при выборе этого вывода плеер пишет, что частота дисретизации будет приведена в соответствие с параметрами вывода.
Т.е. в нашем случае: файлы 16bit 96kHz и 24bit 96kHz будут проигрываться без изменений, а все остальные - через ресэмплер SoX (не забываем, что ресэмплер затрачивает на свою работу энергию батареи), например 24bit 192kHz и стандартные файлы 16bit 44.1kHz будут приведены в формат 24 bit 96kHz. В последнем случае будет апсемплинг т.е. мы как-бы получим звук высокого разрешения, но будет задействована лишь незначительная часть спектра.
Почему мы так поступили?

Помните, мы подсмотрели в настройках, что Android выставил частоту дискретизации 48kHz. Так могли бы поступить и мы! Частота-то кратная базовой. Но! В случае стандартных файлов мы скорее-всего "попадем" на ресэмплинг 44.1 до 48. А в случае с файлами высокого разрешения, получаем чаще всего 96 - 48 и 192 - 48. Выходит, что проще поставить максимальные для смартфона 96 и тогда будет ресэмплинг: 44,1-96 и 192-96. Меньше файлов переводится в другой формат. Да и формат более качественный, меньше вероятности ошибок.

Вариант номер два - если у вас большинство файлов 24/48 и 16/48, тогда и частоту лучше поставить 48. Что вполне логично. Частоты 48 и 96 кратные и преобразование из одной в другую происходят наиболее качественно. Поэтому попадись файл 96kHz, он будет качественно преобразован в 48.

Есть и третий вариант - 44,1 kHz. Тогда на наиболее распространенных файлах 16/44,1 ресэмплер отключается и экономится энергия батареи. Звук идет напрямую. Но!
Вы не забыли какая у нас базовая частота! Кратная 48. Да, существуют очень дорогие устройства где установлено два ЦАП-а: кратный 44,1 и кратный 48. Относительно массовые устройства содержат либо ЦАП кратный 48 (таких большинство) либо кратный 44,1 kHz.
Поэтому аудиодрайвер получив сигнал 24bit 44.1kHz будет вынужден сделать апсемплинг либо до 48 либо до 96kHz. И как будет происходить этот процесс знает только производитель чипсета. Теоретически, гораздо лучше доверить этот процесс качественному ресэмплеру SoX.

В случае с распространенными файлами высокого разрешения получаем преобразования:
48-44,1 либо 96-44,1 либо 192-44,1. И после этого на стороне аудиодрайвера обратно до 48 или 96kHz.

Как настроить плеер если базовая частота кратная 44.1? (Не относится к Xperia Z2 и Z3.)
Тогда если поддерживается Hi-Res Output выставляем там 44,1. OpenSL ES Output должен автоматически настроиться на вывод 16bit/44.1 kHz.

Посмотреть какие преобразования происходят со звуком в плеере можно на экране воспроизведения музыки сделав свайп справа и нажав на значок с буквой i в кружке.


Наконец-то на официальном форуме программы PowerAmp появилась возможность загрузить новую сборку 803 третьей версии популярного аудио проигрывателя для Android. Данная сборка примечательна тем, что имеет статус Release Candidate т.е. стабильной сборки, которая является кандидатом на получение статуса готового продукта. С момента выхода предыдущей статьи, посвященной этому проигрывателю прошло более 2 лет, за которые программа обзавелась поддержкой новых версий Android до 9-й, а также получила новый интерфейс с активным использованием жестов (свайпов) и анимации.


До проведения настроек, подключаем наушники и устанавливаем громкость на минимум. Аналогично с отключенными наушниками. Осторожность не помешает.
Я продемонстрирую настройки оптимальные для смартфонов Sony Xperia XZ1/XZ1 Compact/XZ2/XZ2 Compact/XZ2 Premium/XZ3 и аналогичных им. Я даю пояснения, почему выбираются те или иные настройки, поэтому если у Вас другой смартфон, вы сможете принять решение какие настройки нужно сделать в вашем случае.


Нажимаем на клавишу с тремя горизонтальными линиями в правом нижнем углу экран и нажимаем Settings (Настройки).


Нажимаем на Audio (Звук).


Для начала, настроим ReplayGain сканер.


Упрощенно принцип работы сканера такой: максимизировать уровень громкости без искажений и потерь. Актуальна эта технология для lossy файлов т.е. в форматах сжатия с потерями, таких как MP3, AAC, OGG Vorbis, OPUS.


В пункте ReplayGain выбираем ApplyGain/prevent clipping (Применять, избегать перегрузки (Peak)) т.е. мы предлагаем проигрывателю увеличивать громкость, но не доводя до клиппинга (искажений). В поле Source (Источник) выставляем Album (Альбом) или Track (Трек) т.е. выравнивание громкости в пределах альбома или каждого трека.
RG Preamp (RG Преамп): устанавливается значение в децибелах, насколько увеличить громкость треков, у которых в тегах есть значение ReplayGain. Значение подбирается экспериментальным путем, но рекомендую настроить как на иллюстрации ниже (7.0dB). Это компромиссная настройка. Если появляются искажения звука, то можете оставить 0 dB.
Значение Preamp for songs without RG info (Преамп для треков без тегов RG) лучше оставить равным нулю. Значение в децибелах, насколько увеличить громкость треков, у которых в тегах нет значения ReplayGain.
Выходим из меню. Заходим в следующий пункт Resampler (Ресемплер).


Меняем тип ресемплера на SoX Resampler.


Этот ресемплер хорошо знаком по Foobar2000 для ПК, проверенный временем, обладает высоким качеством.
Resampler Cutoff Frequency Ratio (Частотный срез) - ставим 95,0%.

Dither (Дизеринг) – Оставляем None (Нет). Дизеринг нужен лишь при условии, что вы пытаетесь проиграть музыкальную композицию с разрядность 24 bit (см. самый первый скриншот, PowerAmp указывает внизу окна разрядность музыки в случае если разрядность отличается от стандартной для компакт-дисков 16bit) и ваш смартфон поддерживает вывод только в 16 битном формате. В остальных случаях - активация этой опции лишь ухудшит звук. Если Вы слушаете только 16-битную музыку (а такой - большинство, все файлы mp3, aac и прочие), то Вам также следует отключить дизеринг. Дизеринг не нужен для понижения частоты дискретизации, т.е. чтобы проиграть файл mp3 16bit 44.1 kHz на смартфоне, поддерживающем 16bit 48kHz вам не нужен дизеринг! Вам нужен только ресэмплер, в нашем случае - это SoX. При этом музыку в 16bit можно без всякого дизеринга проигрывать на 24bit и 32bit чипсете.


Теперь выходим из меню и нажимаем на пункт Output (Аудиовыход). На выбор нам предлагается три схемы вывода звука (если схем меньше, значит, ваш смартфон их не поддерживает). Как сразу понять какая из схем вывода звука активна? Очень просто, справа появляется надпись Active (Активно). На скриншоте снизу видно, что активен Hi-Res Output.

Разберем выводы звука (или аудиовыходы) по пунктам:

AudioTrack Output (Java based) - это то, с чем пользователи мирились на протяжении ранних версий Android. Использовать такой вывод звука крайне не рекомендуется. Звук управляется софтом на Java с гигантскими задержками.

OpenSL ES Output (Native optimized) - ускоренный с помощью OpenSL ES вывод звука. То, что работает на большинстве смартфонов, этот вывод по умолчанию активен в плеере. Чем он так хорош? Он оптимизирован под железо и низкоуровневый софт, проще говоря, работает с меньшими задержками и с приемлемым качеством звука на выходе.


Давайте зайдем в его настройки. Нажимаем на этот пункт.

Что мы видим: ряд переключателей, названия которых говорят сами за себя: для каких источников использовать этот выход. Включаем переключатель Speaker (Динамик) и переключатель Other Output devices (Прочие устройства). Для каждого устройства можно настроить параметры, нажав на шестеренку.
Давайте рассмотрим настройки на примере Speaker, благо настройки аналогичны.


Плеер указывает, что параметры вывода 16 bit (для всех смартфонов одинаково) и 48kHz (для большинства современных смартфонов, может быть 44,1 для других устройств).
Почему же плеер выставил частоту дискретизации 48kHz, хотя параметры стандартного компакт-диска 16 bit 44.1 kHz? Да потому, что Android подбирает ту частоту, которая кратна базовой (т.е. родной) для железа и соответственно, для аудио-драйверов. Поэтому, косвенно мы понимаем, что смартфон будет лучше всего играть музыку с частотой дискретизации 48kHz и кратными ей. Какой? Умножим х2, получаем... правильно! 96kHz. Умножаем еще раз – 192kHz, и ещё раз 384kHz.

Пункт No Equ/Tone (Без экв./тона) полезен тем, что отключает эквалайзер, настройки тонкомпенсации - проще говоря, выдает звук без изменений. Если не пользуетесь эквалайзером (а лучше им не пользоваться!) рекомендую на всякий случай включить для всех устройств. Выходим из меню.


Hi-Res Output - вывод звука высокого разрешения доступный для ряда смартфонов. В отличие от предыдущих двух, этот вывод реализован либо производителем смартфона, либо разработчиками Android. Тем не менее, должна быть поддержка и со стороны плеера. В пункте Variant (Вариант) указано название метода. В случае с XZ2 compact – Direct HD.
Я всегда с восхищением наблюдал, как разработчики Android на протяжении многих версий ОС героически пытались заново изобрести «велосипед», постоянно меняя схемы вывода звука и усложняя жизнь производителям смартфонов и разработчикам программ. Производители смартфонов и музыкальных плееров начинали включать свой собственный код, пытаясь обойти нелепые ограничения - 16bit 48kHz. Ну а разработчики софта пытались научить приложения работать с огромным разнообразием реализаций аудио в разных смартфонах. К счастью, начиная с Android 8, наметились положительные сдвиги к хоть какой-то стандартизации.

Если у Вас этот пункт работает, включаем переключатели на всех выводах.
Заходим в настройки наушников Wired Headset/AUX (Проводная гарнитура/AUX) нажав на шестеренку. Это проводные наушники, гарнитуры либо то, что подключено к аналоговому выходу для наушников, например, мини-колонки или аналоговый усилитель.

Сразу включаем No Equ/Tone если не используем эквалайзер.

No DVC (Без DVC) – должен быть выключен т.к. активация опции выключает прямое управление громкостью, внося дополнительные искажения в звучание.

Sample Rate (частота дискретизации). Здесь мы выбираем 96kHz. Обращаем внимание на значение в строке Actual (актуальная), поскольку не все смартфоны поддерживают эту частоту. Если там значение ниже, например, 48kHz, то нужно выставить именно актуальное значение.
В нашем случае: файлы 16bit 96kHz и 24bit 96kHz будут проигрываться без изменений, а все остальные - через ресэмплер SoX (не забываем, что ресэмплер затрачивает на свою работу энергию батареи), например 24bit 192kHz и стандартные файлы 16bit 44.1kHz будут приведены в формат 24 bit 96kHz. В последнем случае будет апсемплинг т.е. мы как-бы получим звук высокого разрешения, но будет задействована лишь незначительная часть спектра. Почему мы так поступили?
Помните, мы подсмотрели в настройках, что Android выставил частоту дискретизации 48kHz. Так могли бы поступить и мы! Частота-то кратная базовой. Но! В случае стандартных файлов мы скорее-всего "попадем" на ресэмплинг 44.1 до 48. А в случае с файлами высокого разрешения, получаем чаще всего 96 - 48 и 192 - 48. Выходит, что проще поставить оптимальные для смартфона 96kHz и тогда будет ресэмплинг: 44,1-96 и 192-96. Меньше файлов переводится в другой формат.
Вариант номер два - если у вас большинство файлов 24/192, тогда и частоту лучше поставить 192. Что вполне логично. Частоты 48/96/192 кратные и преобразование из одной в другую происходят наиболее качественно.

Выставлять 44,1 kHz и кратные варианты вроде 88,2/176.4/352.8kHz я не советую. Вы не забыли какая у нас базовая частота! Кратная 48. Да, существуют очень дорогие устройства, где установлено два генератора: кратный 44,1 и кратный 48. Также есть небольшое количество устройств с качественно реализованным аппаратным ресэмплингом. Относительно массовые устройства содержат либо генератор кратный 48 (таких большинство) либо кратный 44,1 kHz. Поэтому аудиодрайвер, получив сигнал 24bit 44.1kHz, будет вынужден сделать апсемплинг до 48. И, как будет происходить этот процесс, знает только производитель чипсета. Теоретически, гораздо лучше доверить этот процесс качественному ресэмплеру SoX.

Некоторые современные смартфоны, вроде XZ2 Compact поддерживают и более высокие частоты дискретизации, вроде 384kHz. Особого смысла в их использовании нет т.к. такие файлы сложно найти, да и чипсет вряд ли сможет полноценно реализовать такую высокую частоту.
Интересно, что на XZ2 compact при использовании качественных наушников и файлов 24/96 установка частоты дискретизации на 24/96, 24/192 и 24/384 приводит к одинаково качественному звучанию.

Как настроить плеер, если базовая частота кратная 44.1? (Не относится к Xperia XZ2 и т.п.)
Тогда если поддерживается Hi-Res Output выставляем там 44,1. OpenSL ES Output должен автоматически настроиться на вывод 16bit/44.1 kHz.


Посмотреть какие преобразования происходят со звуком в плеере можно на экране воспроизведения музыки нажав на строку над нижним рядом кнопок.


Давайте рассмотрим также настройку Bluetooth.
No DVC (Без DVC) – должен быть выключен, No Equ/Tone – лучше включить.
Sample Rate (Частота дискретизации) – выставляем 48kHz для устройств принимающих звук в формате aptX/aptX HD (таких большинство) и 96kHz для устройств с поддержкой LDAC.
Какой кодек используется можно узнать в меню смартфона System\Developer options (Система\Информация для разработчиков) в разделе Networking в пункте Bluetooth Audio Codec.



В более старых версиях Android кодек можно узнать при подключении устройств AptX/AptHD всплывает соответствующее уведомление.

Не лишним будет зайти и в пункт Advanced Tweaks (Дополнительные настройки)
Проверить включен ли переключатель Direct Volume Control (Прямое управление громк. (DVC)). Прямое управление громкостью позволяет задействовать значительную часть динамического диапазона оригинальной записи. Дело в том, что в современных смартфонах упрощение конструкции привело к цифровой регулировки громкости, «съедающей» часть динамического диапазона музыкальных файлов при промежуточных значениях громкости. При этом таких регуляторов может быть несколько. Тем не менее, не стоит хвататься за голову, вывод звука в 24 битном формате позволяет без слышимой потери качества осуществлять цифровую регулировку звука. А идея прямого управления громкостью состоит в минимизации количества таких цифровых «посредников».

Недавно на форуме программы PowerAmp и в PlayStore появилась возможность загрузить третью версию популярного аудиопроигрывателя для Android. Принципиальным отличием от второй версии является новый подход разработчика к выводу звука и расширенные возможности по его настройкам. Пускай версия всё-ещё Alpha, но она вполне стабильно работает и радует качественным звуком при правильной настройке. Так давайте настроим этот плеер правильно!

Недавно вышла обновленная версия Poweramp v.3 build 803/805, новую версию этой статьи можно прочесть перейдя по ссылке:
https://casediletanta.blogspot.com/2018/10/poweramp-v3-803.html

До проведения настроек, подключаем наушники и устанавливаем громкость на минимум. Аналогично с отключенными наушниками. Осторожность не помешает.
Я продемонстрирую настройки оптимальные для смартфонов Sony Xperia Z2/Z3/Z3 Compact и аналогичных им. Я даю пояснения почему выбираются те или иные настройки, поэтому если у Вас другой смартфон, вы сможете принять решение какие настройки нужно сделать в вашем случае.

Делаем свайп от левого края дисплея и нажимаем Settings (настройки/параметры).
С помощью шестеренки можно убрать ненужные вам пункты бокового меню.

Нажимаем на Audio.

Сразу обращают на себя внимание новые пункты меню.

Для начала, настроим ReplayGain сканер. Упрощенно принцип работы сканера такой: максимизировать уровень громкости без искажений и потерь. Актуальна эта технология для lossy файлов т.е. в форматах сжатия с потерями, таких как MP3, AAC, OGG Vorbis. Те, у кого на ПК установлен проигрыватель Foobar2000 наверняка заметят сходство настроек. Поэтому и принцип настройки аналогичный. в пункте ReplayGain выбираем ApplyGain/prevent clipping т.е. мы предлагаем проигрывателю увеличивать громкость, но не доводя до клиппинга (искажений). В поле Source (Источник) выставляем Album или Track т.е. выравнивание громкости в пределах альбома или каждого трека.
RG Preamp/Preamp for songs without RG info (Усиление): устанавливается значение в децибелах, насколько увеличить громкость треков, у которых в тегах есть значение ReplayGain или нет (соответственно). Значение RG Preamp подбирается экспериментальным путем, но рекомендую настроить как на иллюстрации ниже. Это компромиссная настройка.
Самый безопасный вариант настройки - оставить 0 dB.
Значение Preamp for songs without RG info лучше оставить равным нулю.

Выходим из меню. Заходим в следующий пункт Resample (Ресэмплер).

Меняем тип ресэмплера на SoX Resampler. Плеер предупреждает нас, что он самый качественный, но медленнее и больше потребляет энергии.

Почему именно SoX? Опять-таки ресэмплер хорошо знаком по Foobar2000 для ПК, проверенный временем, обладает высоким качеством. Мы настраиваем плеер на максимальное качество звука, поэтому в данном случае предполагается, что вы готовы пожертвовать энергопотреблением ради качества. Ну а "медленность" ресэмплера не играет роли при условии, что у Вас современный смартфон не старше 3 лет.

Resampler Cutoff Frequency Ratio (Соотношение частоты среза) - тут можно оставить как есть или поставить 95% (по умолчанию в Foobar2000).

Dither (Дизеринг) - нужен при условии, что вы пытаетесь проиграть музыкальную композицию с разрядность 24 bit (см. самый первый скриншот, PowerAmp указывает внизу окна разрядность музыки в случае если разрядность отличается от стандартной для компакт-дисков 16bit) и ваш смартфон поддерживает вывод только в 16 битном формате. В остальных случаях - активация этой опции лишь ухудшит звук. Если Вы слушаете только 16-битную музыку (а такой - большинство файлов, все файлы mp3, aac и прочие), то Вам также следует отключить дизеринг. Дизеринг не нужен для понижения частоты дискретизации, т.е. чтобы проиграть файл mp3 16bit 44.1 kHz на смартфоне, поддерживающем 16bit 48kHz вам не нужен дизеринг! Вам нужен только ресэмплер, в нашем случае - это SoX. При этом музыку в 16bit можно без всякого дизеринга проигрывать на 24bit чипсете.

Мы установим значение None (Нет, без дизеринга), поскольку чипсет Z2 умеет играть музыку в формате 24bit 96kHz и PowerAmp поддерживает эту функцию.

Теперь выходим из меню и нажимаем на пункт Output (Вывод звука). Самое интересное!
На выбор нам предлагается три схемы вывода звука. Во первых, как сразу понять какая из схем вывода звука активна? Очень просто, справа появляется надпись Active (Активен).
На скриншоте снизу видно, что активен Hi-Res Output.

Разберем выводы звука по пунктам:

AudioTrack Output (Java based) - это то, с чем пользователи мирились на протяжении ранних версий адроид до какой-то из 4.x Использовать такой вывод звука крайне не рекомендуется. Звук управляется софтом на Java с гигантскими задержками.

OpenSL ES Output (Native optimized) - ускоренный с помощью OpenSL ES вывод звука. То, что работает на большинстве смартфонов, этот вывод по умолчанию активен в плеере. Чем он так хорош? Он оптимизирован под железо и низкоуровневый софт, проще говоря работает с меньшими задержками и с приемлемым качеством звука на выходе.
Если вы используете этот выход с файлами 24bit, возможно вам имеет смысл использовать Dither (Дизеринг) вот только с файлами 16bit его нужно будет снова отключить.

Давайте зайдем в его настройки. Нажимаем на этот пункт.
Что мы видим: ряд переключателей, названия которых говорят сами за себя: для каких источников использовать этот выход.
Wired Headsey/AUX - это проводные наушники, гарнитуры либо то, что подключено к аналоговому выходу для наушников, например, мини-колонки или аналоговый усилитель. В нашем случае эта схема вывода звука для наушников не используется, зато она активна для Bluetooth наушников и всего остального. Мы пока так и настроим. Для каждого устройства можно настроить параметры, нажав на шестеренку.

Давайте рассмотрим настройки на примере проводных наушников, благо настройки аналогичны.

Плеер указывает, что параметры вывода 16 bit (для всех смартфонов одинаково) и 48kHz (для Z2, может быть 44,1 для других устройств).

Почему же в случае с Z2 плеер выставил частоту дискретизации 48kHz, хотя параметры стандартного компакт-диска 16 bit 44.1 kHz? Да потому, что Android подбирает ту частоту, которая кратна базовой (т.е. родной) для железа и соответственно, для аудио-драйверов.
Поэтому, косвенно мы понимаем, что Z2 будет лучше всего играть музыку с частотой дискретизации 48kHz и кратной ей. Какой? Умножим х2, получаем... правильно! максимальные для железа смартфона 96kHz.

Пункт No Equ/Tone полезен тем, что отключает эквалайзер, настройки тонкомпенсации - проще говоря выдает звук без изменений. Если не пользуетесь эквалайзером (а лучше им не пользоваться!) рекомендую на всякий случай включить для всех устройств. Выходим из меню.

Hi-Res Output (Experimental) - вывод звука высокого разрешения доступный для ряда смартфонов, в числе которых и Z2. В отличие от предыдущих двух, этот вывод реализован производителем смартфона. Тем не менее, должна быть поддержка и со стороны плеера.

В пункте Variant указано название метода вывода реализованного производителем смартфона. В случае с Z2 - Sony High Res Audio. Если у Вас этот пункт работает включаем переключатели на всех выводах. Заходим в настройки наушников (Wired Headset) нажав на шестеренку.
Параметры звука впечатляют: 24 bit 96kHz.

DVC is always enabled - означает, что плеер напрямую управляет громкостью и это нельзя отключить. И не надо!

Сразу включаем No Equ/Tone если не используем эквалайзер.

Sample Rate (частота дискретизации).


Здесь мы выставим максимальные для Z2 96kHz. Еще при выборе этого вывода плеер пишет, что частота дисретизации будет приведена в соответствие с параметрами вывода.
Т.е. в нашем случае: файлы 16bit 96kHz и 24bit 96kHz будут проигрываться без изменений, а все остальные - через ресэмплер SoX (не забываем, что ресэмплер затрачивает на свою работу энергию батареи), например 24bit 192kHz и стандартные файлы 16bit 44.1kHz будут приведены в формат 24 bit 96kHz. В последнем случае будет апсемплинг т.е. мы как-бы получим звук высокого разрешения, но будет задействована лишь незначительная часть спектра.
Почему мы так поступили?

Помните, мы подсмотрели в настройках, что Android выставил частоту дискретизации 48kHz. Так могли бы поступить и мы! Частота-то кратная базовой. Но! В случае стандартных файлов мы скорее-всего "попадем" на ресэмплинг 44.1 до 48. А в случае с файлами высокого разрешения, получаем чаще всего 96 - 48 и 192 - 48. Выходит, что проще поставить максимальные для смартфона 96 и тогда будет ресэмплинг: 44,1-96 и 192-96. Меньше файлов переводится в другой формат. Да и формат более качественный, меньше вероятности ошибок.

Вариант номер два - если у вас большинство файлов 24/48 и 16/48, тогда и частоту лучше поставить 48. Что вполне логично. Частоты 48 и 96 кратные и преобразование из одной в другую происходят наиболее качественно. Поэтому попадись файл 96kHz, он будет качественно преобразован в 48.

Есть и третий вариант - 44,1 kHz. Тогда на наиболее распространенных файлах 16/44,1 ресэмплер отключается и экономится энергия батареи. Звук идет напрямую. Но!
Вы не забыли какая у нас базовая частота! Кратная 48. Да, существуют очень дорогие устройства где установлено два ЦАП-а: кратный 44,1 и кратный 48. Относительно массовые устройства содержат либо ЦАП кратный 48 (таких большинство) либо кратный 44,1 kHz.
Поэтому аудиодрайвер получив сигнал 24bit 44.1kHz будет вынужден сделать апсемплинг либо до 48 либо до 96kHz. И как будет происходить этот процесс знает только производитель чипсета. Теоретически, гораздо лучше доверить этот процесс качественному ресэмплеру SoX.

В случае с распространенными файлами высокого разрешения получаем преобразования:
48-44,1 либо 96-44,1 либо 192-44,1. И после этого на стороне аудиодрайвера обратно до 48 или 96kHz.

Как настроить плеер если базовая частота кратная 44.1? (Не относится к Xperia Z2 и Z3.)
Тогда если поддерживается Hi-Res Output выставляем там 44,1. OpenSL ES Output должен автоматически настроиться на вывод 16bit/44.1 kHz.

Посмотреть какие преобразования происходят со звуком в плеере можно на экране воспроизведения музыки сделав свайп справа и нажав на значок с буквой i в кружке.

2014-11-22T00:40

2014-11-22T00:40

Audiophile"s Software

ВНИМАНИЕ : по мере поступления новых сведений статья обновляется и дополняется (смотрите дату последнего обновления).

Copyright Taras Kovrijenko 2014

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

Введение

Не так давно я выработал специальную методику тестирования программных аудио плееров для Windows (точнее, методику тестирования их звуковых движков). Сейчас в соответствующем разделе вы можете найти подробный анализ практически всех популярных плееров - от foobar2000 до iTunes и WMP.

Как уже показала практика, в ОС Андроид существуют различные варианты вывода звука, не говоря уже о его обработке самими плеерами. Пока мы не обладаем достаточными знаниями в области схемотехники Android устройств, а в сети отсутствует информация (в доступной форме) об устройстве звуковой подсистемы Android OS, потому устройство для нас является чем-то вроде черного ящика. У нас есть только вход (входной файл) и выход (аналоговый выход под наушники). С помощью различных входных воздействий (то есть используя файлы с различными тестовыми сигналами), комбинируя их с различными настройками ПО/устройства и анализируя результат на выходе, мы сможем строить гипотезы об устройстве и характеристиках различных звеньев звукового тракта.

Некоторые особенности Android OS

В процессе подготовки данного теста я всё же навел некоторые справки относительно воспроизведения звука на Android. В том числе я получил ответы на некоторые свои вопросы от разработчика AIMP Артёма Измайлова.

Итак, прежде всего, у каждого устройства Android существует «родная» частота дискретизации и разрядность, поддерживаемая аппаратно. Именно с таким форматом данных работает DSP/ЦАП, и только в таком виде устройство может принимать звуковые данные от приложений. Как правило, это 16 бит, 44.1 или 48 кГц (в моём случае 44.1). Определить аппаратную частоту для устройства можно с помощью программы Audio Buffer Size .

Во-вторых, в системе существует два метода вывода: с помощью класса AudioTrack и с помощью интерфейса OpenSL. Причем в первом случае возможны варианты с нативным кодом и управляемым кодом (виртуальная машина Java).

Как эти особенности проявятся на практике - покажет тест.

Какие функции тестируем

Цель данного тестирования - исследовать качество воспроизведения наиболее популярных плееров для Android, а также, по возможности, сформировать хотя бы приблизительно представление об устройстве звуковой подсистемы Android OS.

Таким образом, я буду затрагивать лишь аспекты звучания, в отрыве от удобства использования и прочих моментов. Но здесь также следует определиться, что именно мы будем исследовать в плане воспроизведения звука. Дабы тест был полным, необходимо протестировать все элементы звукового тракта, которые могут использоваться в тех или иных случаях:

  1. Декодер - тестирование с использованием несжатых форматов PCM 16 и 24 бит, сжатых lossless форматов FLAC, Monkey"s Audio (APE), WavPack, TAK, Apple Lossless (ALAC) и lossy форматов MP3, AAC, OGG Vorbis, Opus, Musepack (MPC). Перечисленные форматы выбраны ввиду их популярности и/или эффективности.
  2. Тестирование полезных обработчиков - ReplayGain, предусилителя, ограничителя, регулятора громкости. Эти обработчики нужны для управления уровнем громкости и потому могут понадобиться как для масштабирования, так и для компрессии сигнала (в зашумленных помещениях). Также возможно (но не обязательно) тестирование эквалайзера и некоторых других функций обработки.
  3. Тестирование ресемплеров и конвертеров разрядности , включенных в звуковой тракт. Для этого на вход будут подаваться сигналы с различной разрядностью и частотой дискретизации. При этом, теоретически, в зависимости от настроек, могут использоваться либо обработчики встроенные в плеер, либо службы Android или аппаратные обработчики устройства.

Тестовые сигналы

  • Чистый тон 1 кГц с уровнем 0 и –6 dBFS (16 бит 44.1 кГц) - проверка максимального выходного уровня и компрессоров;
  • тон 60 Гц, модулированный частотой 1 Гц с фильтрацией высших производных гармоник;
  • предыдущий сигнал, закодированный в lossy форматы с уровнем +6 dBFS - для проверки декодирования с плавающей точкой и функций, оперирующих уровнем громкости: ReplayGain, предусилителя, ограничителя, регулятора громкости;
  • стандартные файлы с набором тестовых сигналов RMAA (комбинации разрядность 16, 24 бит и частот дискретизации 44.1–96 кГц) во всех исследуемых форматах (PCM, lossless, lossy);
  • музыкальные файлы в различных форматах.

Оборудование и ПО

В тесте используется мобильный телефон Lenovo A516 под управлением Android 4.2.2, с полностью обновленным системным ПО.

C учетом пожеланий пользователей сайта (в комментариях к анонсу теста) , а также опираясь на личную оценку добротности, функционала и популярности, я выбрал для теста следующие восемь плееров:

Poweramp 2.0.9
Neutron Music Player 1.79.1
AIMP 0.9 RC2 (beta)
DeaDBeeF 1.21
jetAudio Plus 4.4.0
VLC 0.9.10 (beta)
PlayerPro 2.91 + DSP Pack
GoneMAD Music Player 1.6.6

Для записи сигнала с выхода устройства использовалась звуковая карта ASUS Xonar Essence STX (сигнал/шум для линейного входа составляет 118 дБ).

В ходе теста я использовал программы RightMark Audio Analyzer и .

Методика тестирования (алгоритм)

  1. Предварительная установка тестируемых плееров и копирование тестовых семплов в память устройства.
  2. Перезагрузка устройства, очистка ОЗУ от ненужных процессов.
  3. Запуск первого тестируемого плеера (настройки по умолчанию).
  4. Оценка уровня выходной громкости (синусоида 1 kHz –0 dBFS) при максимальном положении регулятора, визуальный анализ искажений по спектральному анализатору.
  5. Проверка поддержки различных форматов аудио.
  6. Проверка декодирования с плавающей точкой (семпл с превышением уровня).
  7. Ознакомление с настройками вывода аудио, обработчиками, etc. Анализ их качества с помощью тестовых семплов.
  8. Установка оптимальных настроек вывода звука, тестирование RMAA.
  9. Очистка ОЗУ и повторение пунктов 3–8 для остальных тестируемых плееров.
  10. Проведение дополнительных тестов (ресемплинг, преобразование разрядности, декодирование MP3 и AAC).

В конце теста я представлю сводную таблицу результатов для всех восьми плееров.

Подготовка устройства

Для корректности замеров уровня громкости установим в инженерном меню MTK наибольшую громкость для максимального положения регулятора, а также наибольший уровень усиления, при котором не происходит клиппинг (по результатам предварительных тестов). Для этого надо перейти в раздел Hardware->Audio->Headset mode и установить нужное значение Max Vol. , а также Media/Level 6/Value is... :

Тестирование

Poweramp

Выходной уровень для синуса 1 кГц составил –10.5 дБ, клиппинг отсутствует.

Следует заметить, что по умолчанию в настройках плеера включена функция прямого управления громкостью (DVC) . При её отключении уровень сигнала упал на 4 дБ (до –14.5). Как оказалось, занижение громкости выполняется регулятором тональности, который также включен по умолчанию. При его отключении громкость повысилась ровно на 7 дБ - до –7.5, что на три дБ выше громкости при включенном DVC.

В дальнейшем возьмем уровень громкости, обеспечиваемый Poweramp - –7.5 дБ - за номинальный (максимально возможный для устройства).

Исследования функции DVC позволили сделать весьма интересные выводы. Данная функция (DVC) отключает управление громкостью драйвером устройства, после чего начинает самостоятельно управлять значением уровня громкости. Так, на HTC включение этой функции даёт прирост громкости в целых 6 дБ. Оказалось, что драйвер специально занижает максимальную громкость , делая этот запас в 6 дБ доступным только для эквализации BeatsAudio (в этом и заключается вся смехотворность функции BeatsAudio - по сути это эквалайзер «галочкой» + разблокировка всего диапазона громкости). Кстати говоря, для устройств с BeatsAudio в Poweramp есть специальный пункт отключения данной функции.

На Lenovo A516 ситуация несколько иная. В процессе подготовки устройства (предыдущий параграф) мы повысили уровень громкости для крайнего положения регулятора с 240 до 255. Как я уже сказал, именно этими значением управляет напрямую Poweramp в режиме DVC. Однако по непонятной причине плеер не смог достичь максимального значения в 255 пунктов, при крайнем правом положении ползунка оно соответствовало 244, и поэтому плеер давал в режиме DVC громкость на 3 дБ ниже, чем когда эта функция выключена и значение установлено вручную на 255. При исходном же значении в 240 пунктов плеер действительно увеличивал громкость при включении DVC, а без включения этой функции RMAA показывала довольно своеобразное искажение сигнала:

Сначала я принял это за небольшой клиппинг, однако потом сообразил, что при срезах наблюдаются появление лишь кратных частотных составляющих (высших гармоник), к тому же в данном случае искажение проявляется и при уровне сигнала –60 dBFS. Затем я вспомнил, что такая характерная «юбка» вокруг чистого тона свойственна эффекту джиттера .

Почему в системе возникает джиттер - загадка. Кстати, еще в предварительных тестах я отмечал нестабильность показаний RMAA, особенно в тех случаях, когда в фоне запущены сторонние программы - в таких случаях джиттер увеличивался.

Таким образом, при корректировке значения регулятора громкости вручную функция DVC становится не нужна. Однако при её отключении в самом плеере наблюдается довольно интересная ситуация: регулятор preamp начинает работать только на уменьшение уровня, и только при включенной регулировке тональности и/или эквалайзере. Значение preamp по умолчанию (среднее положение) становится равным –6 дБ.

Теперь перейдём к более детальному тестированию функций декодирования и обработки. К сожалению, тест показал, что плеер выполняет декодирование lossy в формате с фиксированной точкой, потому, если в файлах присутствует превышение максимального уровня, избежать клиппинга не получится ни с помощью ReplayGain, ни с помощью preamp или ограничителя.

Ползунок preamp в настройках регулирует уровень громкости в диапазоне ±6 дБ для DVC: on и от 0 до –12дБ при выключенном DVC. Регуляторы тональности позволяют поднять громкость НЧ (5 кГц) примерно на 6 дБ:

Регуляторы тональности в максимальном положении

Эквалайзер имеет 10 полос (от 31 Гц до 16 кГц), с диапазоном регулировки ±10 дБ.

Ползунок 1 кГц установлен на минимум (–10 дБ)

Как видим, используется эквализация типа bell («колоколообразная», существует также «полочная»), добротность фильтра равна двум (полоса пропускания при частоте фильтрации 1 кГц равна 0.5 кГц).

Как уже было сказано, плеер имеет расширенную поддержку ReplayGain (выбор источника, усиление для треков с/без RG тегов, предотвращение клиппинга).

Тест лимитера показал, что он не вполне справляется с клиппингом, хотя и несколько снижает его. Таким образом, использовать лимитер в этом плеере я бы не рекомендовал.

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

Neutron

Пожалуй, самый «навороченный» плеер в плане количества параметров обработки и вывода звука. Какие преимущества нам дадут эти параметры - сейчас проверим.

Прежде всего, этот плеер сразу же порадовал наличием поддержки прогрессивных форматов Opus и TAK (которые не поддерживаются Poweramp).

В NeutronMP по умолчанию включена ReplayGain, а также автоконтроль громкости. Сразу же обнаружилось декодирование lossy в формат с плавающей точкой - плеер в течение секунды детектировал клиппинг и автоматически занижал громкость.

При настройках по умолчанию плеер дал выходной уровень сигнала –7.6 dBFS - на 0.1 дБ ниже максимума (как оказалось, сработал автоконтроль громкости).

Пройдясь по настройкам, я нашел много на первый взгляд интересных функций. Так, например, опция передискретизации имеет два режима: Качество и Аудиофилия . Однако интересно, что даже в аудиофильском режиме происходит отражение ультразвука в слышимую область (хотя отражения в какой-то степени подавляются); в режиме качества происходят множественные отражения в слышимой области (при некратной передискретизации) - исправлено в версии 1.79. Также интересно, что ограничитель НЧ почему-то называется «ФНЧ», хотя это наоборот фильтр высоких частот.

В настройках вывода можно видеть текущую разрядность обработки (по умолчанию 32 бита) и вывода (на Android это только 16 бит), а также частоту дискретизации и метод вывода. Плеер поддерживает вывод через OpenSL и JNI, впрочем на объективных характеристиках тракта это никак не отразилось (результаты RMAA совпадают с точностью до случайной погрешности). Также непонятно, зачем присутствует возможность 64-битной обработки. Такая огромная разрядность имеет смысл только при студийном мастеринге, когда на запись накладываются десятки фильтров (т. к. при каждой обработке ошибка округления накапливается). Это же относится и к дезерингу, который вообще имеет смысл только для устройств с динамическим диапазоном >96 дБ.

Из полезных функций можно отметить уже упомянутый автоконтроль громкости. Кстати, там же, в настройках оборудования, есть опция управления аппаратной громкостью. Когда эта опция выключена, у плеера появляется свой собственный регулятор громкости, находящийся в самом конце цепочки DSP (перед преобразованием в фиксированную точку) и позволяющий как занижать, так и увеличивать громкость. То есть функция аппаратного управления громкостью - это не аналог DVC, а просто переключение на управление исключительно общей громкостью системы.

Что касается эквалайзера, он здесь параметрический: два фильтра полочного типа (НЧ и ВЧ) с указанием частоты и наклона, и два фильтра типа bell, с указанием частоты и добротности. Конечно, подход к реализации эквалайзера для такого ПО нестандартный, но в удобстве такого решения для конечного пользователя я всё же сомневаюсь.

Подведу итоги. Из преимуществ плеера надо отметить поддержку декодирования с плавающей точкой, поддержку форматов TAK и Opus, а также автокоррекцию громкости. Из минусов - не слишком удобный эквалайзер и множество опций с сомнительной полезностью, сваленных в кучу на одной странице настроек.

jetAudio

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

C настройками по умолчанию уровень сигнала составил –17.3 дБ, т. е. на 9.8 дБ ниже номинального. При отключении функции AKG громкость повысилась на 7.8 дБ, до –9.5 дБ, и похоже, что это для jetAudio максимум (т. к. отключение оставшегося эквалайзера к изменению уровня не привело).

Dynamic Range

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

Интересно, что дополнительные тесты показали: при увеличении Max. Vol. в инженерном меню на одну ступень (со 120 до 121) jetAudio дал номинальный уровень громкости и отсутствие каких-либо дополнительных искажений. Однако в то же время все другие плееры стали работать с клиппингом.

Теперь давайте познакомимся с обработчиками этого плеера.

В jetAudio имеется весьма неплохой 10-/20-полосный эквалайзер с диапазоном ±10 дБ, также являющийся набором фильтров bell (и крайних полочных) с добротностью 2. В плеере присутствует рекордное количество звуковых эффектов, разделенных на три группы: Звуковые эффекты jetAudio, Усилитель звука AM3D, Bongiovi DPS .

В первой группе расположены эффекты усиления НЧ, расширения стереопанорамы, реверберации, высоты тона и автоматический контроль усиления (AGC). Последняя функция представляет собой не что иное, как компрессор - не лимитер. Даже при максимальном положении этот обработчик уменьшает громкость чистого тона 0 dBFS на 4 дБ, при этом также повышая уровень более тихих звуков.

X-Bass - эффект, представляющий собой банальное усиление НЧ. Имеет три версии, вот пример их работы при положении регулятора на 50%:

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

В группе AM3D расположены эффекты усиления НЧ, ВЧ, расширения стереопанорамы и усиления громкости. Пример работы Z-Bass + Z-Treble 50%:

Пик усиления НЧ находится на 20 Гц, что весьма странно.

Z-Boost и Z-Surround представляют собой обычный максимайзер (компрессор, нацеленный на увеличение громкости) и стерео экспандер без возможности настройки (в Звуковых эффектах jetAudio степень расширения стереопанорамы регулируется).

Но самое интересное - это конечно же Bongiovi DPS . Насколько я понимаю, идея технологии заключается в корректировке АЧХ используемых наушников путём включения соответствующего пресета. Впрочем, в описании технологии, конечно же, рассказывается о дипломированных специалистах и непревзойдённом качестве воспроизведения, обеспечиваемым разработанной ими технологией, реализующей анализ (!) и обработку записи в реальном времени. Что ж, проверим, что здесь правда, а что нет.

Вот графики АЧХ для пресета Sony Senheiser HD280 Pro, снятые по методу набора частот и плавающего синуса:

А вот график АЧХ самих наушников с Personalaudio.ru:

Какие выводы можно сделать? Во-первых, анализом аудио в реальном времени здесь и не пахнет, это самая обычная эквализация путём свёртки с использованием заданного импульсного отклика. Во-вторых, тонкой коррекцией АЧХ здесь также не пахнет. Это обычный подъем НЧ и ВЧ с пиками в определенных точках (графики других пресетов по форме очень похожи и отличаются лишь расположением пиков). Так что похоже, «эксперты» действительно настраивали вручную, на слух (как указано в описании технологии), при этом не слишком заботясь о выравнивании АЧХ.

Что касается декодирования и плавающей точки - плеер декодирует lossy в формат fixed point, поэтому клиппинга не избежать. Все звуковые эффекты, кроме preamp и собственно Звуковых эффектов jetAudio, находятся в цепочке после AGC (в т. ч. эквалайзер), и потому автоматически устранить возникший в них клиппинг также невозможно.

Мой вердикт: визуально привлекательный, но, что касается звукового тракта, довольно безграмотно построенный плеер. Не рекомендую к использованию.

AIMP

Это простейший аудиоплеер, построенный на основе библиотек BASS. Поддерживает форматы MPC и Opus.

Уровень громкости по умолчанию составил –7.5 дБ, т. е. аналогичный Poweramp без DVC; также совпали и показания RMAA.

Из эффектов имеется только 8-полосный эквалайзер с включенным ограничителем и, почему-то, следующий за ним preamp. Декодирование lossy выполняется в формате с фиксированной точкой.

Из странностей - плеер виснет при попытке воспроизведения Monkey"s Audio Insane.

Вердикт: самый обычный плеер с довольно скудным функционалом.

VLC

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

Уровень громкости и результаты RMAA аналогичны Poweramp DVC:off. VLC имеет три режима вывода звука: AudioTrack (Java), AudioTrack (нативный код), OpenSL ES. После выбора второго метода плеер зависал при старте проигрывания, остальные же два метода дали полностью идентичный поток.

Декодирование выполняется с фиксированной точкой. Имеется 10-полосный эквалайзер.

В целом плеер показал довольно нестабильную работу и также зависал при проигрывании APE Insane. Вердикт: продукт довольно сырой, и вообще выглядит пока довольно убого. Из плюсов можно отметить разве что поддержку Opus.

DeaDBeef

Ничем не выделяющийся плеер, выбранный мною лишь по вашим заявкам.

Уровень сигнала и показания RMAA стандартные, декодирование выполняется с фиксированной точкой, имеется простейший 10-полосный эквалайзер с Preamp и без ограничителя. Имеется поддержка APE Insane и MPC. Поддерживает ReplayGain (без настройки усиления).

PlayerPro + DSP Pack

Довольно функциональный плеер с приятным интерфейсом.

Уровень сигнала и показания RMAA стандартные, декодирует с фиксированной точкой. Большинство функций обработки доступны только после установки и активации DSP Pack. Полная версия включает 10-полосный эквалайзер с лимитером и preamp, регулятор усиления НЧ, регулятор расширения стереопанорамы.

Также в полной версии имеется расширенная поддержка ReplayGain (с тонкой настройкой).

Плеер оставил положительное впечатление.

GoneMAD

Мощный, платный плеер с поддержкой форматов Opus и Musepack. Уровень громкости и показания RMAA - стандартные.

Декодирование выполняется с фиксированной точкой. Плеер имеет возможность использования как встроенного, так и собственного настраиваемого 10-полосного эквалайзера; имеет настраиваемый встроенный ограничитель, который стоит после эквалайзера, но до усилителя басов и виртуализатора (в них может возникнуть перегрузка).

Имеется базовая поддержка ReplayGain.

Общая оценка - положительная.

Дополнительное тестирование

Дополнительно я провел исследования того, каким образом плееры обрабатывают частоты отличные от 44.1 кГц, а также разрядность 24 бита. Также я сравнил работу декодеров MP3 и AAC, а точнее, потоки на их выходе.

Результаты показали, что все плееры успешно декодируют high-res, закодированный во FLAC. Понижение разрядности выполняется путём отбрасывания младших битов (кроме Neutron; впрочем из-за ограниченного динамического диапазона, оценить дезеринг не удалось). Cитуация с ресемплингом: высококачественное понижение частоты дискретизации выполняют Neutron, Poweramp и GoneMAD; Neutron (в адиофильском режиме), AIMP и DeaDBeeF дают приемлемое подавление алиазинга, а jetAudio, VLC и PlayerPro вовсе не применяют антиалиазинговые фильтры.

Касаемо декодирования MP3 и AAC: все плееры показали идентичный результат, отличился только jetAudio, у которого на MP3 откуда-то появились незначительные, но довольно странные интермодуляционные искажения:

Итоги

Звуковая подсистема Android

Прежде всего следует сделать выводы по системе Android в целом. Во-первых, различные методы вывода никак не влияют на содержимое звукового потока. Во-вторых, очень интеерсной оказалась ситуация с управлением громкостью. В большинстве случае, когда громкость оказывалась ниже номинальной, на графиках проявлялись искажения, очень похожие на джиттер. Именно здесь проявляются отличия таких плееров, как Poweramp и jetAudio, по-разному устанавливающих выходную громкость.

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

Сравнение плееров

Как и обещал, привожу сводную таблицу результатов:


А вот таблица c данными магазина Google Play:


Таким образом, золото у нас получает Neutron. Он имеет все функции, необходимые для качественного воспроизведения аудио: декодирование с плавающей точкой, автокоррекция громкости; а также поддерживает все актуальные форматы (включая самые высокотехнологичные TAK и Opus). Но, справедливости ради, следует отметить некоторые недостатки этого плеера: не слишком удобный параметрический эквалайзер, отсутствие возможности максимизации громкости с помощью ReplayGain (нет настройки предотвращения клиппинга) а также множество настроек, польза от которых весьма сомнительна.

Второе место занимает Poweramp. Плеер имеет довольно неплохо продуманный звуковой тракт, качественные обработчики, отличный ресемплер. Из минусов стоит отметить отсутствие декодирования с плавающей точкой и поддержки Opus. Также, отличительная особенность этого плеера - функция DVC - полезна далеко не всегда, а при её отключении пропадает возможность увеличивать громкость с помощью preamp.

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

Аутсайдерами теста стал довольно странный плеер jetAudio и крайне нестабильный VLC.

Формула качественного звука для Android

А теперь непосредственно к практике. Как добиться максимального качества звука на Android? - спросите вы. Ответ будет следующий:

1. Отрегулировать уровень усиления в инженерном меню, установив максимально возможный уровень, при котором не возникает клиппинга, а также удалить из cистемы все обработчики вроде Beats Audio.

Полный, детальный тест звуковой подсистемы и популярных аудиоплееров для Android OS.

Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: