В прошлом номере я делал сравнение различных кодеров для формата MPEG
Layer 3. К сожалению, тогда у меня не было в наличие открытого декодера
к формату TwinVQ, теперь он есть и сравнение будет достаточно полным. Пришло
много писем, в которых благородным гневом звучит общая идея, что и Fraunhofer
producer, де у тебя был старой версии, где Xing encoder, где вот это...
, а где вот то... ??! Сейчас я подчищу и эти погрешности. Хотя, конечно,
понятно, что приь ошеломляющем объеме разнообразнейших кодеров задача сравнить
их все - это даже не тема - это, наверное, будет образ жизни :))
Ну, для пущей важности я еще, кроме изучения спектрально анализа
отдельно взятой композиции, изучал спектральный анализ "розового" шума
и "белого " шума. Причем с разными сдвигами фаз для того, чтобы посмотреть
как кодеки работают с фазовыми искажениями.
Итак, посравниваем VQF и MP3, представленные различными кодеками.
Время, естественно, абсолютно применимо к моему компьютеру (iwill, P150,
32Mb ram, OSR2). Но относительное, оно будет таким же на других компьютерах.
исходный WAV
|
46 Мб |
100% |
0:04:33 |
.wav |
44kHz, 16bit, stereo,
PCM, digitaly grabbed |
codec |
размер |
% |
время свертывания |
тип |
параметры |
TwinVQ |
2.6 Мб |
6 |
0:22:00 |
.vqf |
80kbps, Q=Normal |
TwinVQ |
2.6 Мб |
6 |
0:48:00 |
.vqf |
80kbps, Q=High |
TwinVQ |
3.2 Мб |
7 |
0:52:00 |
.vqf |
96kbps, Q=High |
Plugger+ v4.0 |
4.3 Мб |
9 |
0:12:00 |
.mp3 |
128kbps |
FhG pro v2.1 |
4.3 Мб |
9 |
0:25:00 |
.mp3 |
128kbps, Q=high |
Xing ae v3.0/32 |
4.3 Мб |
9 |
0:02:00 |
.mp3 |
128kbps |
По просьбе читателей я написал конкретное время каждого кодера, за которое
он справился с 48-ми мегабайтным файлом. Для YAMAHA кодера я сделал три
оцифровки (см. табл.) Сразу скажу, что абсолютно при всех тестах графики
всех трех VQF совпадали практически идеально. Никаких отличий я отыскать
не смог, поэтому, ради краткости представляю на графиках формат TwinVQ
только параметром 40kbps (на канал) при нормальном (Normal) качестве. Самым
медленным кодером оказался ямаховский. Самым быстрым - Xing. Даже быстрее
в два раза, чем в реальном времени! Страдает от поспешности, конечно, качество.
Но, вообще, если цифровать с ленты, то Xing - самое то...
Да,
собственно, график. Лучше - увеличить стандартным образом и посмотреть.
Хотя и так видно, что VQF ближе всех к спектру оригинала, причем, на частотах
выше 20кГц спектр даже лучше, что наводит на мысль о таких действиях кодера,
как некие добавочки, либо усиленное задирание высоких. Что в обоих случаях
не приветствуется. Ну, Xing, как и следовало ожидать, съехал на 16 килогерцах.
А вот у Plugger'а оказался неровный спектр по каналам в районе 19кГц. Fraunhofer
честно сдался на 20кГц. Хотя версии этого кодека раньше v2.1 сдавали уже
на 18кГц.
pure WAV
VQF
FhG pro 2.1
Plugger v4.0
Xing 3.0 |
Но разбор спектра частот дает лишь представление о том, насколько качественно
и полностью кодек сохраняет звук по частотам. Но тут существует вот какая
штука. Так как звук у нас стерео, то упаковка может производиться как по
отдельным каналам, так и по обоим в совокупности. Такое кодирование называется
Joint-Stereo. Говоря простым языком - "типа" стерео. Т.е. у Вас был натуральный
стереозвук, а кодеку это было пофиг, и он так его упаковал, что получил
искажения, вызванные влиянием одного канала на другой в результате упаковки.
Вот такие искажения как раз могут быть вызваны сдвигом фаз одного канала
относительно другого. Так что не у меня первого появился пункт проверки
кодеков по сдвигу фаз в каналах.
Я пробовал два разных шума: т.н. "розовый" - более близкий к
реальной музыке. Он покрывает весь диапазон частот. И "белый" шум. В обоих
случаях исследовались шумы с независимыми каналами и с каналами одинаковыми,
только один из них был инвертирован относительно другого, чтобы добиться
максимальных фазовых искажений. Сразу скажу, что при независимых каналах
и при обоих случаях "розового" шума" все кодеры показали себя отлично.
А вот в случае с инвертированными каналами "белого" шума кодек Fraunhofer
облажался на полную катушку. См. график.
Даже Xing, который честно срезал все выше 16кГц не намудрил так со
спектром, как FhG Producer pro v2.1. Впрочем, я проверил и на примере того
же шума, только каналы были не инвертированы, а сдвинуты друг относительно
друга на некоторое число градусов. Небольшое. Не понял опять-таки Fraunhofer.
Где-то в области 10кГц.
Зато Plugger из ISO серии сжимателей показал себя достаточно неплохо.
Я бы назвал его VQF в представлении MPEG'а. Абсолютно точно повторял при
всех шумовых тестах линию оригинала. Сдал лишь на реальном примере. Зато
время сжатия небольшое по сравнению с FhG. И уж тем более, с VQF.
Выводы: Учитывая, что время запаковки FhG MPEG pro и Yamaha TwinVQ
сопоставимы, а качество у TwinVQ лучше, а еще и размер получаемого файла
существенно меньше (2.6Мб против 4.3Мб), то встает вопрос о вообще целесообразности
применения FhG кодка как такового супротив VQF. Тогда уж лучше Plugger,
чем FhG для соревнования с TwinVQ.
Так как на слух я отличий в TwinVQ 40kbps и 48kbps не нашел, а в тестах
- это вообще, одно и то же, то за исходный, видимо, надо принять 40kbps
на канал при качестве равном Normal. Кстати, рекомендуемый по умолчанию
Ямахой.
Ну, и Ксингом можно упаковывать лишь откровенную попсу. Самым нетерпеливым
:)
О, чуть не забыл. Ямаховский кодер (TwinVQ) хоть и является коммерческим
проектом, но весь софт (кодер и проигрыватель) является совершенно
free.
Теперь о письмах: Приходят не просто различны письма, а самые что ни
на есть полярные по мнениям. Кому-то лучше VQF'а и не придумаешь (обуславливают
отсутствием фазовых искажений), а кто-то говорит, что пока 256kbps
MP3 самый что ни на есть рулез, а VQF - суксь, потому как вносит непонятные
звуки в оригинал.
Насчет "левых" звуков в VQF: Не во всех композициях, но есть - это абсолютно
точно (даже при самых лучших параметрах). И это пока отгораживает
меня от него и заставляет смотреть настороженно.
Насчет 256kbps: это конечно классно, что при 256кбитах есть настоящее
стерео и качество. Но вот сжатие уже настолько далеко от идеи компрессированого
звука, что меломанам, которые признают только 256кбит можно порекомендовать
простой CD. Разница в объеме уже неощутима. Она и в случае 1:12 (128кбит)
не очень-то хороша, а уж при 1:6 (256кбит) совсем призрачна. Т.е. насаждать
только 256кбит - это просто девуалирование идеи MPEG'а.
|