как узнать khz трека
Как определить истинное качество звука потокового аудио
Пару лет назад мы написали статью о том, как определить истинный битрейт любого аудиофайла, а также почему конвертация YouTube в MP3 со скоростью 320 кбит / с — пустая трата времени. Наша цель состояла в том, чтобы помочь пользователям определить истинное качество звука музыкальных файлов, за которые они заплатили и загрузили, чтобы избежать музыкальных сервисов, которые утверждают, что предлагают высококачественный звук без потерь, но, к примеру, подают MP3, преобразованные в FLAC.
Многие пользователи также спрашивали, как они могут определить истинное качество звука потоковой музыки, а не локальных файлов. Это большой вопрос, так как в последние годы появилось много потоковых сервисов HiFi, утверждающих, что они предлагают своим пользователям высококачественные музыкальные потоки без потерь.
Поэтому нам нужно использовать почти идеальный точный анализатор спектра для потоковой передачи звука и понять, как его читать в режиме реального времени.
MusicScope — это анализатор звука в реальном времени и измерительный инструмент, который может обеспечить очень точную обратную связь при потоковой передаче звука. К сожалению, разработчики прекратили продавать лицензии на программное обеспечение, но пробная версия позволяет тестировать до 30 секунд звука.
Для целей данного руководства мы приведем примеры использования программного обеспечения с локальными файлами в разных форматах. Однако вся предоставленная информация может в равной степени применяться к потоковому аудио, например, от Spotify, Deezer и т. Д.
Определение частоты и диапазона громкости LRA
Давайте попробуем трек без потерь (.M4A ALAC) «Прогулка по небу» из фильма «Движущийся замок Хаула». Это оркестровая запись, поэтому мы должны получить хороший образец всех частотных диапазонов. Например, мы можем видеть изолированные высокочастотные пики, например, мерцание тарелок между 11 и 22 кГц.
Наблюдая за графиками в MusicScope, мы видим, что динамический диапазон очень высок, как и следовало ожидать от оркестровой записи.
MusicScope также может дать нам LRA (диапазон громкости), который измеряет контраст между самыми мягкими и самыми громкими частотами. Для этого конкретного трека, мы видим, что разница между самыми тихими и самыми громкими пассажами составляет около 23 децибел.
С точки зрения микродинамики, этот конкретный трек имеет очень большой динамический диапазон, который мы ожидаем от высококачественной оркестровой записи, но также происходит несколько интересных вещей.
MusicScope может сказать нам, выиграет ли трек от более высокого разрешения. Так что этот трек, в частности, записывается с 16-битной глубиной с частотой дискретизации 44 кГц. Но мы можем сказать, что у трека есть большой запас. От 0 до 6 децибел ниже полной шкалы нет данных в линейном частотном спектре.
Таким образом, эффективный битрейт этой дорожки составляет всего около 14–15 бит, что означает, что они могли применить сжатие динамического диапазона во время основной записи, или микрофоны, используемые во время записи, не улавливали всю информацию.
Поэтому, даже если бы существовала версия этого файла с тактовой частотой 96 кГц, это не принесло бы пользы, поскольку наиболее вероятно, что микрофоны, использованные во время записи, не улавливали все данные. Это связано с тем, что большинство микрофонов спроектированы для отображения на частотах человеческого слуха, поэтому, честно говоря, 96-кГц / 24-битная запись этой дорожки не принесет заметной разницы.
Вывод из этого заключается в том, что для улучшения качества звука мы фокусируемся на том, что происходит на этапе записи и мастеринга. Сосредоточение внимания на аудиофайлах с «высоким разрешением» ради файлов с высоким разрешением отвлекает нас от того, что действительно важно, а именно от оборудования для записи и используемого процесса.
Как узнать, может ли песня иметь лучшую аудио версию
Давайте попробуем использовать дорожку EDM «Zebra» из Oneohtrix Point Never в 24-битном формате 44 кГц. Что интересно в этом конкретном треке, так это просто плотность музыкальной информации в этом треке. Вы можете видеть на спектрограмме сплошной зеленый блок и наблюдать, как он заполняет всю дорожку.
Этот трек имеет LRA около 12,9, что довольно много для трека EDM. Здесь интересно то, что вы можете видеть, что это 24-битное отслеживание, которое использует почти все 24 бита динамического диапазона. Самая тихая музыка в этой записи примерно на 100 дБ ниже самого громкого шума.
Так что, глядя на спектрограмму, вы можете сказать, что этот трек обрезан на частоте 22 кГц, это действительно жесткое срезание, а высокочастотные пики на частотах около 22 кГц всего на 60 децибел ниже полной шкалы.
Это означает, что если бы у нас была версия этого трека 96 кГц, вероятно, было бы много информации выше 22 кГц, которая не попала бы в эту версию трека.
Проще говоря, ваш опыт прослушивания мог бы выиграть от версии этого трека с более высоким разрешением. Этот трек достигает пределов своего формата (частота дискретизации 44 кГц). Как только вы поймете процесс мышления, вы по-настоящему начнете понимать, обслуживаете ли вы наилучшую версию трека в потоковом сервисе hi-fi.
Как сказать плохое качество записи звука
Давайте используем трек «Fly Away» от TeddyLoid, в 16-битном формате 44 кГц. Мы сразу слышим, что трек был горячо освоен.
Посмотрев на график радара, мы увидим, что дорожка непрерывно достигает максимальной длительности песни, поэтому она непрерывно ограничивается в натуральную величину. Так что, если вы играете этот трек на оборудовании среднего уровня, он, вероятно, сильно искажает.
Также этот трек имеет LRA около 2,3, что означает, что динамический диапазон составляет 2,3 децибела по всему треку, что выглядит довольно безумно.
Плохое качество или преднамеренное производство?
При рассмотрении трека, такого как «Fly Away», мы также должны учитывать, является ли он треком с плохим мастерингом, например, любительским, или он был намеренным. Трек «Fly Away» должен был стать своего рода «одноразовым», громким танцевальным треком. Звучит так, как будто его играют через плохих ораторов, что, собственно, и было целью мастеринга трека.
Думайте об этом как о фильтрах камеры. Если вы сделаете селфи с высоким разрешением, примените фильтр сепии и добавите, например, эффект размытия. Люди могут подумать, что вы сделали нечеткую фотографию плохого качества, но на самом деле это было ваше намерение. То же самое может случиться с музыкальной продукцией, такой как намеренно плохая музыка «гаражного панка».
Итак, подведем итог. Мы можем использовать MusicScope для определения всевозможной информации о музыкальной дорожке, но мы также должны учитывать, что было задумано исполнителем, и было ли некачественное мастеринг на самом деле формой искусства или чем-то в этом роде.
Анализ качества музыкального материала с использованием программных средств
Copyright © 2017, Taras Kovrijenko
Полное или частичное копирование текста допускается только с письменного разрешения автора.
Пролог
Хоть интернет полнится различного рода инструкциями по проверке честности lossless аудио, проверке на апконверт и т. п., я решил написать на этот счет свою инструкцию, подойдя к рассмотрению вопроса с должной основательностью и расстановкой.
Итак, перейдем непосредственно к делу.
Что будем мерить
Сперва хочу предупредить: невозможно, полагаясь лишь на программные средства (анализаторы и т.п.), с абсолютной уверенностью судить о превосходстве качества одной версии трека над другой. Имеются ввиду, например, различные раздачи на торренте, отличающиеся как источником, так и способом, которым они были закодированы. Ни одна программа не даст Вам полного понятия о звучании трека.
О чем же в данном случае можно судить? Во-первых — о частотном диапазоне анализируемого сигнала (это единственное, что можно определить точно), о его спектральном составе, ну и, как следствие (уже с той или иной вероятностью):
1. Если это lossless трек: был ли он получен из lossless источника, или же ранее был закодирован с использованием одного из lossy алгоритмов. Имеются ввиду алгоритмы, использующие психоакустическое сжатие. Сжатие с динамическим понижением разрядности (lossy WavPack, lossyWAV) скорей всего выявить не удастся, возможно, только на слух, по фоновым шумам.
2. Если это lossy: соответствует ли материал текущему своему виду, т.е., опять же, был ли источником кодирования lossless сигнал, или это апконверт. Апконвертом является любое преобразование с повышением битрейта. Например, перекодирование MP3 128 кбит/с в 320 кбит/с. Однако, осознанное перекодирование качественного AAC, OGG или MPC 200-256 кбит/с в MP3 320 кбит/с (для лучшей совместимости с устройствами воспроизведения) — случай довольно спорный, и при отсутствии других исходников даже не осуждается. Но, конечно же, при создании раздачи подобного материала, источник надо обязательно указывать.
Кроме того, для lossy (и в особенности, для LAME MP3) можно с той или иной степенью достоверности определить параметры кодирования. А определив например такой параметр, как частота срез НЧ фильтра, и сравнив его с актуальным частотным диапазоном записи, можно в некоторых случаях выявить тот самый апконверт.
Что будем использовать
1. foobar2000 — для декодирования, воспроизведения и просмотра технических характеристик музыкальных файлов. Дополнения к foobar2000: fooCDTect (оболочка к auCDTect — проверка lossless на предмет апконверта), AuSpec (удобный просмотр спектрограммы нажатием одной кнопки), MP3 Packer — просмотр специфических параметров MP3.
Примечание: дабы не устанавливать дополнительно горы декодеров и дополнений, рекомендую сразу скачать мою сборку. Альтернативы foobar2000 и дополнениям не советую, т.к. по возможностям они значительно уступают.
2. EncSpot Professional — с его помощью мы будем просматривать технические характеристики MP3 файлов.
3. Adobe Audition 2 — для просмотра спектрограмм с удобным масштабированием.
Собственно, сам процесс
Lossy
И так, возьмем в качестве примера закодированный мной Pink Floyd — Time (Pink Floyd — The Dark Side Of The Moon (AAD, Capitol CDP 7 46001 2)). Загрузим его в foobar2000 и поставим на воспроизведение:
Вверху мы видим примерную форму огибающей громкости (которая совмещена с полосой прокрутки), над ней VU Meter (аналог пикметра, но с некоторым усреднением по времени), внизу расположены остальные анализаторы:
Осциллограмма — волновая форма проигрываемого в данный момент отрезка записи.
Спектральная диаграмма (Spectrum Analyser), показывающая распределение мощности среди спектральных составляющих в данный момент времени,
пикметр, показывающий текущий уровень семпла (точнее, модуль его отклонения от нулевого положения)
Спектрограмма — аналог спектральной диаграммы, но с третей осью (время). Т.е., если мысленно выстроить спектральные диаграммы одну за одной, и глянуть на них сверху, получим спектрограмму («высота столбцов» задается яркостью цвета). Проще говоря, по горизонтали у нас время, по вертикали — линейно частота от 0 до 22 кГц, яркость — мощность спектральной составляющей.
Что мы сейчас видим на анализаторах:
— довольно высокий уровень записи (мы находимся на относительно громком участке) показывает нам пикметр
-как видно из огибающей громкости, динамический диапазон (диапазон, в котором меняется громкость фрагментов) трека довольно велик — это хорошо (для более-менее качественного оборудования).
— судя по спектральной диаграмме: наличие спектральных составляющих примерно до 20 кГц включительно, высокий уровень наиболее слышимого диапазона ВЧ (
11-16 кГц), что обычно говорит о значительной «звонкости» материала (это конечно же зависит от качества самой студийной записи и её (ре)мастеринга).
— спектрограмма подтверждает вышесказанное, но для более тщательного анализа спектра надо воспользоваться дополнительными утилитами
Теперь посмотрим на вкладку Info (справа). foobar2000 говорит нам о том, что запись имеет два канала, частоту дискретизации 44100 Гц и битрейт потока 320 кбит/с (реальный битрейт файла может немного отличаться, здесь он — 319 кбит/с). Насчет частоты: запомните, что весь музыкальный материал, выпускаемый на Audio CD, имеет частоту дискретизации 44.1 кГц, а потому музыка, имеющая семплрейт 48 кГц — это весьма подозрительно (т.к. неизвестно, каким алгоритмом и с каким качеством мог быть выполнен ресемплинг).
Далее написано, что трек был закодирован релизной версией кодера LAME 3.99 (на момент написания статьи это последняя версия). Более точное указание версии (например, 3.99.5) стандартом LAME Tag, к сожалению, не предусмотрено, однако есть один способ: надо открыть MP3 файл в текстовом редакторе и в поиске прописать «LAME» — у последней версии LAME (возможно, и в других недавних версиях) в закодированных данных периодически прописана версия — «LAME3.99.5».
А сейчас выделим трек и нажмем кнопочку RG (вверху, на панели плеера). После анализа нажмем кнопку Update File Tags. Теперь у нас появится дополнительная графа ReplayGain, где нас интересует значение Track Peak — уровень пикового семпла записи. В данном случае оно составляет 1.018077, что для MP3 (и lossy в целом) вполне нормально и не требует каких-либо действий направленных ан предотвращение клиппинга. Вообще, значения до 1.10 включительно (перегрузка до +1 dBFS) можно считать допустимыми. Подробнее о ReplayGain и громкости читайте в моей статье О понятии громкости в цифровом представлении звука и о методах её повышения
Постепенно переходим к тяжелой артиллерии. Открываем папку с треком в программе EncSpot и в контекстном меню файла жмем Lame Header. Видим следующее:
Полное описание информации отображаемой EncSpot можно почитать в отдельной статье. Здесь мы видим, опять же, что использовался кодер LAME 3.99, был применен НЧ фильтр на частоте 20.5 кГц. Качество алгоритма кодирования использовалось максимальное (Quality кратно 10), источник имел частоту дискретизации 44.1 кГц. Возвращаясь к теме частоты семплирования — очень важно, чтобы частота источника (точнее, частота потока поступившего на вход кодера) и MP3 файла совпадала. Если это не так, то был использован встроенный в LAME ресемплер, а он качеством не отличается.
Отдельно хочу сказать о параметрах Join Stereo mode и Safe Joint — для музыки сочетание этих параметров наиболее предпочтительно (JS без режима Safe допустимо только при низких битрейтах).
Идем дальше, открываем в контекстном меню файла Details.
Все фреймы конечно же имеют битрейт 320 кбит/с.
Здесь видно, что запись имеет широкую стереопанораму, различия между каналами довольно велики, а потому большинство фреймов закодированы в режиме Simple Stereo. Большинство блоков имеют тип Long, что говорит об относительно простой форме сигнала (малое количество транзиентов).
Тут стоит обратить внимание на резервуар бит — для MP3 CBR 320 он должен активно использоваться. Также хорошо, если стоят отметки Scalefac_scale и Scfsi.
А теперь можно перейти к более детальному анализу спектра. Жмем правой кнопкой на треке->Run Srviice->Open As. и открываем его через Adobe Audition 2:
Развернем окно на весь экран и уменьшим масштаб колесиком мышки:
Перед Вами просто таки характернейший для MP3 спектр: частотный диапазон составляет
20 кГц, при этом спектральная плотность, начиная с 16 кГц резко падает. Это обусловлено особенностями психоакустической модели используемой в MP3 — она просто таки нещадно вырезает большинство слабых гармоник с частотой выше 16 кГц. Таким образом MP3 (даже с высоким битрейтом) очень легко узнать по спектру: если на записи есть фоновые шумы, выше 16 кГц они вырезаются, и на этом уровне образуется такая себе полка. Хотя, при достаточно высоком уровне ВЧ (обычно в электронной музыке), они могут в большинстве своём и сохранится.
Давайте рассмотрим спектры еще для нескольких кодеков-битрейтов.
Здесь видно еще более жесткое обращение с ВЧ (хотя на слух это обычно неотличимо).
LAME 3.99.5, CBR 128 kbps (-q 0):
При 128 кбит/с частоты выше 16 кГц практически всегда отсутствуют, а НЧ фильтр установлен на 17000 Гц (ширина фильтра по умолчанию — 5%, так что спад начинается с 16.15 кГц). Вдобавок здесь спектр явно прорежен уже даже в районе 8 кГц, а то и ниже, в итоге спектрограмма начинает чем-то походить на решето.
Fraunhofer MP3 Encoder, CBR 320 kbps (highest, join stereo):
Как видите, битрейт 320, а по спектру скорее похож на VBR V2 (
200 кбит/с). Кстати, это тот случай, когда результаты для спектрограммы совпадают с результатами прослушивания — качество кодера FhG заметно хуже LAME (за исключением CBR 128 кбит/с — здесь результаты прослушивания весьма спорные).
Как я уже говорил, сравнивая значение Lowpass Filter из EncSpot с фактической шириной спектра материала, можно судить о «честности» данного рипа (не апконверт). Тут же приведу соответствие популярных пресетов и стандартных частот среза для последней версии LAME:
CBR 320 — 20500 Гц
CBR 256 — 19700 Гц
CBR 192 — 18600 Гц
CBR 160 — 17500 Гц
CBR 128 — 17000 Гц
VBR V0 — 22100 Гц
VBR V2 — 18500 Гц
Если ширина спектрального диапазона не соответствует данному значению, это может говорить об апконверте. Однако, здесь довольно много «но» — ширина зависит от версии кодера, настроек (есть настройка, меняющая значение предельной частоты), самого материала в конце концов.
И последний штрих — конечно же MP3 Packer. Эта программка покажет нам, насколько эффективно сжат MP3 файл (чисто математически). Кликаем по треку правой кнопкой, выбираем Run service->MP3 Info. Видим окно:
Тут нас прежде всего интересует пункт Minimum bitrate possible — он показывает нам, какого битрейта можно достичь при перепаковке фреймов данного CBR файла в VBR фреймы (без потерь качества). Сравнив это значение с актуальным битрейтом, можно судить об эффективности сжатия. Это расхождение обычно связано с нерациональным использованием резервуара бит старыми версиями LAME. Приемлемыми можно считать отклонения до 10 кбит/с включительно (310 кбит/с для актуальных 320 кбит/с), если расхождения больше — это косвенно может говорить о низком качестве кодирования. Также обратите внимание на значение Largest frame uses (kbps) — оно указывает пиковый битрейт для трека с учетом битов из резервуара. Большое значение (>400) говорит об эффективном использовании резервуара и сложности отдельных фрагментов трека.
Теперь, что касается современных кодеров (AAC, OGG Vorbis, Musepack). Они обладают более гибкими алгоритмами и не имеют такой статичной полки на 16 кГц, как MP3 (она у них динамически перемещается, в зависимости от целевого битрейта/качества), а на высоких битрейтах (>300 кбит/с) могут быть на глаз (не говоря уже о «на слух») неотличимы от lossless (если конечно не сравнивать непосредственно со спектром источника). Так что здесь ситуация посложнее, особенно если взять такой продвинутый формат как Musepack (MPC) — он работает по несколько другому принципу, чем MP3, AAC и Vorbis. Это сказывается как на спектральном отображении, так и на звучании. Например, тот же фрагмент, MPC q 6 (
Преимущество перед LAME MP3 VBR V2 — очевидное, и, к тому же, ощутимое на слух. Сохранены практически все составляющие до 18 кГц (этого диапазона обычно бывает достаточно даже людей с «идеальным» слухом), а пики достигают и 20. К тому же этот кодер практически не страдает от пре-эхо — главной проблемы психоакустического lossy кодирования.
А теперь взглянем на спектры AAC и OGG Vorbis.
QuickTime AAC True VBR 127 (
А теперь, для сравнения, спектр оригинала :
Как видите, оба кодека охраняют весь частотный диапазон, а QAAC даже практически не урезает спектр фоновых шумов. Согласитесь: довольно трудно догадаться, что спектр QAAC принадлежит lossy источнику. А если бы на записи еще не было фоновых шумов — это не смог сделать никто (даже специальная программа). Впрочем, и на слух этот метод кодирования остается (по крайней мере, для меня) лучшим.
Касаемо определения параметров кодирования AAC, OGG и MPC — здесь инструментарий довольно скромный. Практически всю доступную информацию можно найти на вкладке Properties в foobar2000.
Lossless
О спектрах мы уже говорили, с характерными особенностями спектра MP3 (и других кодеров) Вы уже знакомы, а потому, обнаружив их в спектре lossless трека, уже сможете сделать соответствующие выводы. Но, что касается спектра апконвертов — один очень важный момент. Большинство lossless кодеров не принимают на вход PCM с плавающей точкой, а если источником является lossy, в нем с большой вероятностью присутствуют фрагменты с уровнем выходящим за 0 dBFS. После преобразования в фиксированную точку, так как «умникам», клепающим lossless из MP3, лимитирование сделать мозгов не хватает, мы получаем срезы, а прямоугольные срезы содержат полный спектр частот. В итоге на спектрограмме полученного трека мы будем видеть вертикальные полосы, простирающиеся аж до 22.05 кГц (при чем сама запись обычно уложена в диапазон до 20 кГц). Вот пример такого безобразия:
Завидев это дело, можете смело расстреливать автора раздачи из реактивного гранатомета.
Ну а теперь можно смело перейти к автоматическому анализу.
Здесь всё просто: выделяете lossless треки, нажимаете третью с конца кнопку на панели моего foobar2000 и через несколько минут видите что-нибудь эдакое:
Я специально выделил кроме lossless (TAK) еще и закодированные ранее (для получения спектрограмм выше) lossy треки — чтобы показать, насколько хорошо программа обнаруживает lossy кодирование. «95% MPEG» можно интерпретировать как «скорее всего, имело место lossy кодирование». «CDDA 100%» — означает, что материал с очень большой вероятностью (конечно не 100 %, но 99 уж точно) не был подвергнут lossy кодированию. Обмануть эту программу удается только Musepack на высоком битрейте (и то редко) или lossyWAV.
Честно говоря, программа при анализе фактически руководствуется теми же критериями, что и мы при рассмотрении спектрограммы — поиск резкого спада плотности спектра, той самой «полки» — а потому, её выводы практически всегда совпадают с заключением человека с наметанным глазом, сделанным по спектрограмме.
Целостность
Также очень важно проверять треки на наличие ошибок. Для этого выделите их в foobar2000, нажмите на выделенном правую кнопку мыши и выберите из раскрывшегося списка Utils->Verify Integrity. При наличии ошибок в файлах формата MP3 foobar2000 может их исправить. Если Вы увидите ошибку вроде «Reported length is inaccurate. », выделите треки для которых отобразилась данная ошибка, нажмите правую кнопку и выберите Utils->Fix VBR MP3 Header, после обработки проверьте трек еще раз, ошибка должна отсутствовать. Если при проверке Вы наблюдаете ошибку вида «MPEG Stream error. », её можно исправить с помощью опции Utils->Rebuild MP3 Stream. После выполнения операции исправления ошибки не забывайте повторно проверять треки.
Для других lossy форматов, а также lossless исправить ошибки в foobar2000 нельзя, но проверить всё равно стоит.
Das Ende
В общем, по теме — это всё, чем я хотел с Вами поделиться. Если есть вопросы, обращайтесь, пишите — помогу разобраться.
Ссылки по теме
Информация от спонсора
Газгольдер.ру: автономные системы снабжения сжиженным газом, автономная газификация. Общепризнанный лидер в отрасли, стоявший в России у истоков её основания. Вам предоставляется широчайший спектр услуг по газификации, в т.ч. гарантийное и сервисное обслуживание. Компания работает как с частными, так и с юридическими лицами. Стоимость автономной газификации Вы можете узнать на сайте компании (по ссылке выше).