категории | RSS

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

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

Однако эта статья не просто об MP3. В этой статье мы постараемся разобраться в том, как правильно использовать технологии кодирования аудио, подобные MP3; затронем вопросы, связанные с современными приемами кодирования аудио, с их преимуществами и недостатками; разберемся, каким образом в форматах MP3, OGG, AAC, MPC и WMA можно получить качественный звук, а также обсудим другие сопутствующие вопросы, связанные с кодированием аудио.

Оговоримся сразу, что MP3 - не панацея. Похожих кодеков/форматов аудио файлов существует уже достаточно много и о некоторых из них мы поговорим в этой статье подробно, а начали мы это обсуждение с MP3 лишь потому, что "MP3" находится у всех "на слуху".
I. Цифровое и аналоговое представление звуковых сигналов

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

Что такое звук и как мы его слышим? Звуковая волна - это механические колебания молекул воздуха, передающиеся в пространстве. Звук, звуковой сигнал - это набор звуковых волн. Колебания воздуха, попадая в ушную раковину человека, проходят через систему отверстий слухового аппарата и возбуждают нервные окончания. Мозг, анализируя полученную информацию, "слышит" звук, различный по высоте, направлению и мощности. Сила ощущаемых звуковых колебаний зависит от их амплитуды. В классическом определении, амплитуда - это наибольшее (максимальное) отклонение синусоидальной звуковой волны (звуковой волны, изменяющейся во времени и пространстве строго по синусоидальному закону) от нулевого значения. Применительно к реальным звуковым сигналам (сложным несинусоидальным колебаниям), под амплитудой сигнала на практике подразумевают текущую величину сигнала в данный момент времени.

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

Звуковой сигнал, как известно из физики, можно представить в виде спектра входящих в него частот (частотный спектр). Частотные составляющие спектра - это синусоидальные колебания (так называемые чистые тона), каждое из которых имеет свою собственную амплитуду и частоту. Вообще, любое, даже самое сложное по форме колебание (например, человеческий голос), можно представить суммой простейших синусоидальных колебаний определенных частот и амплитуд. И наоборот, сгенерировав различные по частоте синусоидальные колебания и просуммировав их, можно получить самые различные звуковые сигналы. В качестве наглядного примера рассмотрим звуковую волну, образованную путем наложения (сложения) трех синусоид с частотами 500 Гц, 2000 Гц и 2500 Гц
Примечание:
1. человеческий слуховой аппарат способен различать частотные составляющие звука в пределах от 20 Гц до ~20 КГц (верхняя граница может колебаться в зависимости от возраста и других факторов).
2. Вообще говоря, разговор о классическом разложении сигнала в частотный спектр справедлив только в отношении периодических сигналов. Частотный анализ реальных, непериодических сигналов производят поблочно, разделив анализируемый сигнал на блоки и работая с каждым блоком как будто бы с одним периодом периодического сигнала.

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

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

Говоря более формально, оцифровка сигнала включает в себя два процесса - процесс дискретизации (осуществление выборки) сигнала по времени и процесс квантования по амплитуде. Процесс дискретизации по времени - это процесс получения значений преобразуемого сигнала с определенным временным шагом - шагом дискретизации. Для простоты объяснений мы будем считать, что шаг дискретизации постоянен, однако это условие совсем не обязательно. Чем меньше шаг дискретизации, тем чаще берутся значения амплитуды. Количество осуществляемых замеров амплитуды в одну секунду называют частотой дискретизации.
Квантование по амплитуде - это процесс замены реальных значений сигнала приближенными с определенной точностью.
Точность округления зависит от выбранного количества и расположения уровней квантования: чем больше уровней квантования и чем ближе они друг к другу, тем на меньшую величину приходится округлять измеренные значения амплитуды, и, таким образом, тем меньше получаемая погрешность. Итак, оцифровка сигнала - это регистрация амплитуды сигнала через определенные промежутки времени и запись полученных значений амплитуды в виде округленных цифровых значений. Записанные численные значения амплитуды сигнала называются отсчетами. Очевидно, что чем чаще мы будем делать замеры амплитуды (чем выше частота дискретизации) и чем меньше мы будем округлять полученные значения (чем выше разрядность квантования), тем более точное представление оригинального сигнала в цифровом виде мы получим. Здесь следует заметить, что когда мы говорим о более или менее точной передаче сигнала, под этим нужно понимать не лучшую или худшую слышимость сигнала, а большую или меньшую зашумленность и искаженность оригинального сигнала. Например, ведение оцифровки оригинального сигнала на слишком низкой частоте дискретизации приводит при воспроизведении сигнала к появлению очень неприятных шумов. Это же относится и к выбору низкой разрядности квантования.

Примечание:
Здесь и далее по тексту мы неоднократно будем пользоваться понятием "качество звучания". Немаловажно заметить, что это понятие не является хоть сколько-нибудь объективной характеристикой и не имеет ничего общего с физическими оценочными характеристиками звучания. Это связано с тем, что само звучание воспринимается разным слушателем по-разному. "Качество звучания" характеризует, скорее, степень удовлетворенности слушателя звучанием. Принято считать, что качество звучания определяется в основном наличием и "поведением" высоких частот (в полосе от 5 кГц и выше), тогда как частоты в полосе от 0 до 3-5 кГц определяют ясность звучания. Например, человеческую речь и музыку невозможно разобрать без наличия в ней нижней полосы частот, тогда как верхние частоты придают звучанию окрас четкости и качества.

Оцифрованный сигнал в виде набора последовательных значений амплитуды можно сохранить в памяти компьютера. В случае, когда записываются абсолютные значения амплитуды, такой формат записи называется PCM (Pulse Code Modulation).

Несколько слов необходимо сказать о восприятии слушателем пространственности звучания. Человек слышит двумя ушами и за счет этого способен различать направление прихода звуковых сигналов. Объяснение этому простое. Уши человека расставлены на определенном расстоянии по ширине головы. Скорость распространения звуковой волны относительно невелика. Сигнал, приходящий от источника звука, находящегося напротив слушателя, приходит в оба уха одновременно, и мозг интерпретирует это как расположение источника сигнала либо позади, либо спереди, но не сбоку. Если же сигнал приходит от источника, смещенного относительно центра головы, то звук приходит в одно ухо быстрее, чем во второе, что позволяет мозгу соответствующим образом интерпретировать это как приход сигнала слева или справа. Если осуществить запись звукового сигнала с помощью одного приемника (микрофона), то при воспроизведении этого сигнала через один или даже несколько репродукторов, слушатель не сможет ощутить пространственную картину оригинального звучания, поскольку записанный на ленту сигнал есть монофоническая запись (одноканальная запись), т.е. запись оригинального звучания лишь из одной точки пространства. Если же запись была произведена с помощью двух приемников одновременно, расположенных в двух разных точках пространства (фактически, две независимых параллельных записи), то воспроизведение такого сигнала через два репродуктора, правильно расположенных относительно слушателя, даст возможность передать слушателю пространственность звучания оригинального сигнала. Такая запись (т.е. две параллельных записи одного и того же сигнала в разных точках пространства) называется стереофонической или двухканальной.
Качество донесения до слушателя оригинальной пространственности звучания можно повышать путем добавления в запись дополнительных каналов (то есть, осуществляя запись сигнала с трех и более точек пространства).
II. Приемы кодирования аудио.

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

На то есть свои причины. Дело в том, что желание сохранить оригинальное качество аудио данных при их переводе из аналогового вида в цифровой наталкивается на определенные трудности. Согласно теореме Котельникова (Найквиста) частота дискретизации устанавливает верхнюю границу частот оцифрованного сигнала, а именно: максимальная частота спектральных составляющих оцифрованного сигнала равна половине частоты дискретизации сигнала. Попросту говоря, чтобы получить полную информацию об оригинальном аналоговом сигнале в частотной полосе от 0 до 22050 Гц (в слышимом человеком диапазоне частот), необходимо дискретизовать сигнал с частотой не менее 44.1 КГц. Это означает, что чтобы сохранить оригинальное качество аудио материала необходимо выбирать высокие значения параметров оцифровки. Однако, чем выше значения этих параметров, тем больший объем памяти компьютера требуется для хранения оцифрованных данных. Например, стандартный аудио компакт диск объемом 650 Мб хранит аудио данные в формате PCM 44.1 КГц / 16 бит / stereo. Такие параметры соответствуют двухканальной записи с 65536 (216) уровнями квантования амплитуды при взятии ее значений 44100 раз в секунду. Несложно подсчитать, что в таком виде на диск помещается около часа музыки, что, в принципе, не очень много, если учесть, что коллекция аудио может исчисляться тысячами часов. Заметим попутно, что стандартным типом файлов для хранения оцифрованной несжатой аудио информации на сегодняшний день является формат .WAV - это универсальный контейнерный тип файлов, позволяющий хранить оцифрованные аудио данные с самыми разными параметрами оцифровки.

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

Существует два распространенных способа кодирования аудио информации (кроме простого хранения в оцифрованном виде "как есть").

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

1. Сжатие данных без потерь (lossless coding) - это способ кодирования аудио информации, который позволяет осуществлять стопроцентное восстановление данных из сжатого потока. К такому способу уплотнения данных прибегают в тех случаях, когда необходимо именно стопроцентное сохранение оригинального качества звучания аудио данных. Например, после сведения звука в студии звукозаписи, данные необходимо сохранить в архиве в оригинальном качестве для их возможного использования впоследствии. Существующие сегодня алгоритмы сжатия без потерь (например, алгоритм, реализованный в кодеке Monkeys Audio, а также кодеках Flac, WavPack, TTA, OptimFrog и других) позволяют сократить занимаемый данными объем на 20-50% и при этом обеспечить стопроцентное восстановление оригинальных данных из полученных после сжатия. Подобные кодеры - это своего рода архиваторы данных (как, например, ZIP, RAR и другие), только предназначенные специально для сжатия аудио информации.

Примечание:
* кодер - программа (или устройство), реализующая определенный алгоритм кодирования данных (например, архиватор, или кодер MP3), которая в качестве ввода принимает исходную информацию, а в качестве вывода возвращает закодированную информацию в определенном формате.
* декодер - программа (или устройство), реализующая обратное преобразование закодированного сигнала в декодированный.
* кодек (от англ. "codec" - "Coder/Decoder") - программный или аппаратный блок, предназначенный для кодирования/декодирования данных.

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

2. Имеется и второй путь сжатия - сжатие данных с потерями (lossy coding). Цель такого кодирования - любыми способами добиться схожести звучания декодированного аудио сигнала с оригиналом при как можно меньшем объеме упакованных данных. Сегодня эта цель достигается за счет использования различных алгоритмов "упрощающих" оригинальный сигнал, выкидывая из него "ненужные" слабослышимые (или вообще неразличимые человеческим ухом) детали. После такого кодирования, декодированный сигнал при воспроизведении звучит похоже на оригинал, но фактически перестает быть ему идентичным. Методов сжатия, а также программ, реализующих эти методы, существует много. Наиболее известными являются MPEG-1 Layer 3 (это и есть официальное название всем известного "MP3"), MPEG-2/4 AAC (MPEG-2 и MPEG-4 Advanced Audio Coding), Ogg Vorbis (сокращенно OGG), Windows Media Audio (WMA), MusePaсk (MPC) и другие. Выигрыш от использования таких алгоритмов сжатия вполне очевиден: коэффициент сжатия, обеспечиваемый такими кодерами, находится, усреднено, в пределах 7-14 (раз) и это при малозаметных потерях качества оригинального звучания. Практически это означает, что если одна песня с компакт диска занимает в формате PCM 44.1 КГц / 16 бит / stereo около 50 Мб (в виде .WAV-файла), то она же, сжатая в MPEG-1 Layer 3 (MP3), будет занимать уже около 3-7 Мб и при этом более чем удовлетворять по качеству звучания. Согласитесь, это неплохой вариант.

Как мы сказали, компрессия данных в lossy-кодерах достигается за счет "упрощения" аудио информации. В основе почти всех lossy-кодеров лежит использование так называемой психоакустической модели, которая как раз и используется для упрощения оригинального сигнала. Механизм кодера, основанного на упрощении спектра входного сигнала (есть также кодеры, основанные на других методах) работает приблизительно так. Кодер выполняет анализ кодируемого сигнала, в процессе которого определяются участки сигнала, в определенных частотных областях которых имеются неслышные человеческому уху нюансы (замаскированные или слабо слышимые частоты, кратковременные малозаметные всплески частот и проч.), после чего происходит удаление подобных нюансов из оригинального сигнала. Такая обработка упрощает форму оригинальной звуковой волны, делая ее "более гладкой". Степень сжатия оригинального сигнала зависит от степени его "упрощения"; сильное сжатие достигается путем "агрессивного упрощения", когда кодер "считает" ненужными множественные нюансы оригинальной звуковой волны. Такое сжатие, естественно, приводит к сильной деградации качества, поскольку удалению могут подлежать не только незаметные, но и значимые детали звучания. Отличительной особенностью всех современных lossy-кодеров является возможность тонкой настройки процесса кодирования, что, при правильном понимании и подходе, позволяет добиваться высокого коэффициента сжатия при совершенно незаметных (даже на самой хорошей аудио аппаратуре) потерях качества звучания.

Теперь о том, каким образом происходит упрощение сигнала в процессе кодирования (опять же, на примере механизма работы кодера, основанного на упрощении спектра обрабатываемого сигнала). Механизм "упрощения" аудио сигнала можно пояснить следующим образом. Исходный аудио сигнал разделяется на блоки определенной длины, после чего каждый блок обрабатывается в отдельности. В процессе кодирования каждый блок раскладывается на частотные составляющие спектра. Как мы сказали, чем меньше "тонких нюансов звучания" имеется в сигнале (чем проще частотный спектр сигнала), тем эффективнее его компрессия. Упростить сигнал можно по-разному. Например, можно отфильтровать все частотные составляющие сигнала, располагающиеся выше определенной границы, что автоматически упростит сигнал в высоких частотных областях (но при этом, естественно, заметно испортит звучание). Однако основным способом является проведение психоакустического анализа с последующей соответствующей обработкой сигнала: кодер анализирует аудио информацию и, опираясь на указанный пользователем битрейт, "решает" какие тонкости звучания можно выбросить.

Примечание:

· битрейт - количество бит, используемых для хранения одной секунды аудио. Для стандартного .WAV-файла в формате PCM 44.1 KHz / 16 bit / stereo это число составляет: 44100 (значений амплитуды в секунду) * 16 (бит для записи одного значения амплитуды) * 2 (канала) = 1411200 бит в секунду = около 1378 Кбит/с (килобит в секунду).

· при сжатии в MP3 (и многие другие форматы) пользователь указывает желаемый битрейт (или границы изменения битрейта) для сжатого выходного потока. Чем ниже битрейт, тем меньше бит позволяется кодеру отводить для хранения информации об одной секунде аудио и, таким образом, тем сильнее кодер упрощает сигнал, что соответственно влияет на качество звучания получаемого сжатого потока аудио. Наиболее распространенное в Интернете среднее значение битрейта для музыки в формате MP3 колеблется в пределах от 128 до 192 Кбит/с.

Следует особо подчеркнуть, что применение психоакустики в качестве механизма упрощения приводит к тому, что процесс декодирования уже не способен восстановить утраченные во время компрессии данные (выброшенные нюансы звучания, отфильтрованные частоты и проч.). Это означает, что сжимать данные нужно "с умом": если вы сжимаете музыку для вашей аудио коллекции, то не следует слишком ограничивать битрейт кодера, поскольку это может привести к серьезным потерям качества. С другой стороны, если подходить к кодированию компетентно, то результатом кодирования будет хороший коэффициент сжатия (что и является целью кодирования) плюс высокое качество звучания.
III. Компрессия на практике.

Для того чтобы практически воспользоваться возможностями аудио кодеров и закодировать аудио данные в полюбившийся формат (скажем, тот же MPEG-1 Layer 3), необходимо сначала оцифровать аудио информацию, если она находится на аналоговых носителях (например, на магнитной ленте).

Выше мы говорили, что процесс оцифровки заключается в дискретизации и квантовании аналогового сигнала. На практике процесс оцифровки остается невидимым для пользователя: всю черновую работу делают разнообразные программы, которые дают соответствующие команды драйверу (управляющая подпрограмма операционной системы) звуковой карты. Пользователю остается лишь подключить воспроизводящую аппаратуру ко входу звуковой карты, включить режим воспроизведения, установить необходимые параметры оцифровки (количество каналов сигнала, частота дискретизации и разрядность квантования) и записать (оцифровать) аудио сигнал, воспользовавшись любой удобной программой для записи аудио. После окончания оцифровки, полученные данные следует записать в .WAV-файл в формате PCM.

Оцифрованный сигнал в виде файла в формате .WAV можно подвергнуть кодированию с помощью выбранного кодера (будь то кодер WMA, MP3 или другой). Для этого нужно запустить соответствующую программу-кодер (их мы обсудим позже), выбрать параметры кодирования (битрейт, способ кодирования стерео информации и другие параметры) и запустить процесс кодирования. На современных компьютерах кодирование, например, одного .WAV файла размером около 50 Мб берет не больше минуты. Полученные закодированные файлы будут занимать намного меньший объем памяти, нежели исходные .WAV-файлы, но при воспроизведении звучать как оригинальные (конечно, при условии грамотного подбора параметров кодирования).

Закодированные файлы можно сохранить в своей аудио коллекции или даже взять с собой в дорогу, вооружившись каким-нибудь аппаратным проигрывателем аудио файлов.
IV. Подробнее о lossy аудио кодеках MP3, OGG, WMA, AAC и MPC.

Современных lossy-кодеров существует достаточно много: MPEG-1 Layer 3 (MP3), Windows Media Audio (WMA), Ogg Vorbis (OGG), MusePack (MPC), MPEG-2/4 AAC и другие. Мы остановимся подробно на рассмотрении именно этих пяти наиболее распространенных сегодня кодеков.

MP3 - MPEG-1 Layer 3

О стандартах MPEG в общем и о MP3 в частности

MPEG-1 Layer 3 (всем известный как "MP3") - наиболее распространенный сегодня кодек. Он завоевал свою популярность вполне заслуженно - это был первый распространенный lossy-кодек, который достиг столь высокого уровня компрессии при отличном качестве звучания.

Немного истории. MPEG расшифровывается как "Moving Picture Coding Experts Group", дословно - "группа экспертов по кодированию подвижных изображений". MPEG ведет свою историю с января 1988 года. Начиная с первого собрания в мае 1988 года, группа начала расти, и выросла до необычайно плотного коллектива специалистов. Обычно, в собрании MPEG принимают участие около 350 специалистов из более чем 200 компаний. Большая часть участников MPEG - это специалисты, занятые в тех или иных научных и академических учреждениях. На сегодняшний день группой MPEG разработаны следующие стандарты и алгоритмы:

· MPEG-1 (ноябрь 1992) - стандарт кодирования, хранения и декодирования подвижных изображений и аудио информации;

· MPEG-2 (ноябрь 1994) - стандарт кодирования для цифрового телевидения;

· MPEG-4 - стандарт для мультимедиа приложений;

· MPEG-7 - универсализованный стандарт работы с мультимедиа информацией, предназначенный для обработки, фильтрации и управления мультимедиа информацией.

Рассмотрим комплект стандартов MPEG-1. Этот комплект, в соответствии со стандартами ISO (International Standards Organization), включает в себя три алгоритма различного уровня сложности: Layer 1 (уровень 1), Layer 2 и Layer 3 (это и есть MP3). Общая структура процесса кодирования одинакова для всех уровней. Вместе с тем, несмотря на схожесть уровней в общем подходе к кодированию, уровни различаются по целевому использованию и внутренним механизмам (что во многом определяет степень схожести алгоритмов, "вышедших" из MPEG-1, таких как, например, Ogg Vorbis и MusePack). Для каждого уровня определен свой формат записи потока данных и свой алгоритм декодирования. Алгоритмы MPEG-1 основаны в целом на изученных свойствах восприятия звуковых сигналов слуховым аппаратом человека - об этих приемах мы говорили выше.

Кратко об алгоритме кодирования MPEG-1. В начале процесса входной поток с помощью фильтров разделяется на частотные полосы. Дальнейший процесс зависит от Layer'a.

В случае Layer 3 (то есть MP3) в каждой полосе сигнал раскладывается на частотные составляющие спектра (применяется косинусное преобразование - MDCT, частный случай преобразования Фурье) в результате чего получается набор коэффициентов. Дальнейшая обработка сигнала нацелена на упрощение сигнала с целью переквантования коэффициентов спектральных составляющих. Спектр очищается от заведомо неслышных составляющих - низкочастотных шумов и наивысших гармоник, то есть фактически фильтруется. На следующем этапе производится описанный ранее значительно более сложный психоакустический анализ слышимого спектра частот. После всех этих манипуляций из цифрового аудио сигнала исключается больше половины информации. В довершение всего проводится сжатие уже готового потока данных упрощенным аналогом алгоритма Хаффмана (алгоритм компрессии данных без потерь), что позволяет также значительно уменьшить занимаемый потоком объем.

В случае Layer 2 идея упрощения сигнала остается той же, однако переквантованию подвергаются не коэффициенты MDCT, а амплитудный сигнал в каждой частотной подполосе (по приблизительно аналогичной схеме работают и некоторые другие lossy кодеки).

Комплект MPEG-1 предусмотрен для кодирования сигналов, оцифрованных с частотой дискретизации 32, 44.1 и 48 КГц. Три упомянутых выше уровня MPEG-1 имеют различия в механизмах кодирования и, таким образом, в обеспечиваемом коэффициенте сжатия и качестве звучания получаемых потоков. Layer 1 позволяет хранить сигналы в формате 44.1 КГц / 16 бит без сильно ощутимых потерь качества при скорости потока 384 Кбит/с, что составляет 4-х кратный выигрыш в занимаемом объеме; Layer 2 обеспечивает субъективно такое же качество при 192 - 224 Кбит/с, а Layer III (MP3) - при 128-160. Нельзя говорить и выигрыше или проигрыше одного уровня перед другим, так как каждый уровень разработан для достижения своей цели. Например, преимущество Layer 3 заключается в том, что фактически он позволяет сжимать информацию в 8-12 раз (в зависимости от битрейта) без ощутимых потерь оригинального качества звучания. При этом, однако, обеспечиваемая им скорость компрессии самая низкая (надо отметить, что при современных скоростях процессоров это ограничение совершенно не ощутимо). Layer II потенциально способен обеспечить более высокое качество кодирования в виду более "легкой" внутренней обработки сигнала в процессе преобразования. В то же время, Layer II не позволяет достигать столь высоких коэффициентов компрессии, какие достигаются Layer III.

Нюансы кодирования.

Техника кодирования аудио является достаточно сложной и имеет множество нюансов. Все их невозможно пояснить в рамках одной статьи, однако самые важные из них мы все же рассмотрим, поскольку почти каждый пользователь сталкивается с ними при самостоятельном кодировании файлов.

Кодирование данных в MP3 (как и в WMA о OGG) происходит поблочно: кодируемый файл разбивается на так называемые фреймы (кадры) с одинаковым временным интервалом, каждый кадр в отдельности кодируется и записывается в выходной поток; таким образом, выходной поток также имеет кадровую структуру. Фреймы могут быть закодированы не на любом битрейте, а только на одном из входящих в таблицу стандартных для MPEG1 Layer 3 битрейтов (Кбит/с): 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320 (кодирование на произвольных промежуточных битрейтах стандартом не предусмотрено, хотя возможно). В виду осуществления покадровой разбивки исходных файлов можно говорить о сжатии данных с постоянным (CBR) и переменным (VBR) битрейтом.

CBR (Constant Bitrate - постоянный битрейт) - это способ кодирования исходного аудио потока, когда все его блоки (фреймы) кодируются с одинаковым результирующим битрейтом. Иными словами, битрейт на всей протяженности закодированных данных остается неизменным.

VBR (Variable Bitrate - переменный битрейт) - это способ кодирования исходного аудио потока, когда каждый отдельный блок (фрейм) кодируется со своим битрейтом. Выбор битрейта, оптимально подходящего для кодирования данного фрейма, осуществляется самим кодером путем анализа сложности сигнала в каждом отдельном фрейме.

Существует и еще один режим - ABR (Average bitrate - средний битрейт). Работа в этом режиме (это справедливо, по крайней мере, для кодеров MP3) похожа на работу в режиме CBR, но при этом кодирование производится в режиме переменного битрейта с сохранением неизменности его усредненного значения. Не вдаваясь в технические подробности, отметим, что кодирование в режимах VBR и ABR является намного более гибким и, чаще всего, выгодным и качественным, нежели в режиме CBR.

Важно отметить, что режимы ABR, VBR и CBR применяются также во многих других кодерах, отличных от MP3.

Рассмотрим теперь существующие методы кодирования стерео аудио информации в стандартах MPEG-1 Layer 1,2,3. Эти методы, возможно, с некоторыми разночтениями, используются не только в MPEG, но и во множестве других кодеков.

Dual Channel. Этот режим предполагает кодирование стерео каналов, как абсолютно независимых. Иными словами, в этом режиме кодирование аудио информации происходит отдельно в каждом канале без отслеживания зависимости сигнала в каналах. Как и следует из названия, этот режим главным образом предназначен для кодирования двух параллельных, но различных каналов (например, речь на английском и немецком языках), а не стерео (несущих информацию о стерео картине). В целом, этот режим не рекомендуется использовать для кодирования стерео сигнала.
Stereo. Этот режим отличается от предыдущего тем, что в режиме Dual Stereo во время кодирования для каждого канала используется свой резервуар (механизм, отвечающий за отведение кодируемым фреймам бит выходного потока), а в режиме Stereo оба канала кодируются с использованием общего резервуара. Иных различий между режимами нет.
Joint Stereo - это общее определение методов кодирования стерео информации, основанных на использовании ее избыточности. В MPEG-1 имеются две разновидности этого метода.
MS Stereo. В данном режиме кодируются не левый и правый канал, а их суммарная составляющая (mid-канал) и разностная (side-канал) с использованием некоторых дополнительных "хитростей".
Intensity Stereo. В этом режиме весь кодируемый сигнал разбивается на полосы и фактическому кодированию подвергается только нижний диапазон частот side-канала, а в верхнем частотном диапазоне начиная с определенной частоты происходит не кодирование, а лишь регистрация мощностей сигнала в каждой полосе. Кодирование стерео сигнала в нижнем частотном диапазоне осуществляется в режиме MS Stereo или просто Stereo.
Необходимо отметить, что использование MS Stereo не вносит в сигнал никаких дополнительных погрешностей, поскольку при переразбиении стерео сигнала в формате канал на mid- и side-канал не происходит ничего, кроме безобидных и притом полностью обратимых математических вычислений. В то же время, этот несложный прием кодирования стерео информации позволяет кодеру более эффективно реализовывать свой потенциал в процессе кодирования, нежели в режиме Stereo.

ОGG - Ogg Vorbis.

Одной из неприятных особенностей кодека MP3 всегда являлась его коммерциализованность, которая заключается как минимум в том, что каждый производитель, создающий новый MP3-кодер, обязан платить отчисления "отцам" кодека. Такое положение вещей не могло не вызвать появление каких-то новых разработок в области потребительской компрессии аудио. Так и случилось.

Кодек Ogg Vorbis вышел в свет в июне 2000. Этот формат является частью проекта Ogg Squish по созданию полностью открытой системы мультимедиа. Иными словами, и сам проект, и Ogg Vorbis в частности, являются открытыми и свободными для распространения, а также разработки на его основе нового программного обеспечения. В FAQ разработчиков (группа Xiphophorus) написано, что в основе Ogg Vorbis лежат те же идеи, что и в основе известного MPEG-1 Layer II, однако OGG использует оригинальный математический алгоритм и собственную психоакустическую модель, что освобождает его от необходимости выплачивать какие-то лицензионные отчисления и производить иные выплаты сторонним фирмам-изготовителям аудио форматов. Алгоритм Ogg Vorbis рассчитан на сжатие данных на всех возможных битрейтах без ограничений, то есть от 8 Кбит/с до 512 Кбит/с, но при этом только в режиме переменного битрейта (VBR). Режим CBR в Ogg Vorbis не реализован. Алгоритм предусматривает хранение внутри файлов-контейнеров подробных комментариев об исполнителе и названии композиции. В алгоритме предусматривается также возможность кодирования нескольких каналов аудио (более двух, теоретически до 255), возможность редактирования содержимого файлов, а также так называемый "масштабируемый битрейт" - возможность изменения битрейта потока без необходимости его декодирования. Поддерживается потоковое воспроизведение (streaming) в Интернете. Для хранения данных используется собственный универсальный формат Bitstream Ogg Squish, рассчитанный на хранение любой информации мультимедиа системы Ogg Squish.

WMA - Windows Media Audio.

Кодек Windows Media Audio (сокращенно WMA) является сегодня собственной разработкой компании Microsoft и успешно продвигается. Изначально, кодек WMA разрабатывался фирмой Voxware и имел название Voxware Audio Codec, однако впоследствии компания забросила его доработку, остановившись на v4.0. Все же, кодек не остался гнить, и был полностью куплен фирмой Microsoft. Программисты серьезно доработали этот кодек, а фирма Microsoft переименовала кодек в Windows Media Audio, не забыв позаботиться о том, чтобы он был бесплатным.

Если кодек MP3 был изначально стандартизован на предмет разрешенных значений битрейтов и других основных параметров, то WMA изменялся параллельно своему развитию. На сегодняшний день существует несколько версий кодека WMA: v1, v2, v7, v8 и v9. Версия 7 отличается от младших собратьев поддержкой битрейтов до 192 Кбит/с (в отличие от цифры 164 Кбит/с для v1 и v2), несколько худшим качеством кодирования и иной структурой данных. v8 отличается от всех предыдущих явно переработанной психоакустической моделью кодека, за счет чего качество кодирования сильно возросло. Так, при 96 Кбит/с WMA v8.0 на не сильно требовательных к качеству композициях (поп-музыка, например) почти не отличим от MP3 при 128 Кбит/с, хотя, опять же, все зависит от конкретной композиции и аппаратуры, на которой осуществляется прослушивание. Девятая версия WMA является логическим продолжением восьмой версии. Разработчики говорят о повышении качества кодирования в среднем на 20 процентов по сравнению с WMA v8. В версии 9 применена новая технология Fast Streaming, призванная сильно сократить время буферизации WMA-потока, передаваемого через Интернет конечному пользователю. Помимо этого, WMA 9 является, фактически, пакетом кодеков и включает кроме привычного lossy-кодера, также и lossless кодер (кодер без потерь), а также специальный речевой кодер.

Судя по проведенным тестам, а также по параметрам кодеров WMA, механизм работы кодека в целом очень похож на механизм MP3 - то же покадровое сжатие с применением предположительно тех же приемов обработки входного сигнала.

MPC - MusePack.

Кодек MPEGplus (MPEG ), переименованный позже в MusePack (MPC) из-за проблем, которые появились у автора кодека в связи с тем, что название последнего содержало в себе аббревиатуру "MPEG", - это еще одна разновидность lossy-кодека сродни MP3. Точнее, MusePack не является продолжением MPEG-1 Layer III, а лишь, как и MP3, берет свое начало в MPEG-1 Layer II. MusePack создан "в домашних условиях" и разрабатывался(ется) в основном двумя людьми: Andre Buschmann и Frank Klemm. Кодек, как уже было сказано, базируется на MPEG-1 Layer II, отсюда его направленность на кодирование преимущественно на более высоких битрейтах, нежели MP3. В то же время, кодек является совершенно самостоятельной разработкой. Кодеком предусмотрено кодирование только в режиме переменного битрейта (VBR). Скорость компрессии и декомпрессии в/из MPC заметно выше скорости выполнения этих операций применительно к MP3.

В среднем, качество кодирования MPC на высоких битрейтах (160 Кбит/с и выше) заметно (если не сказать "значительно") выше качества, обеспечиваемого MP3. Это связано с различиями в механизмах кодирования. Если говорить конкретно, то MP3 при кодировании разбивает сигнал на частотные подполосы, затем производит разложение сигнала в ряд косинусов (MDCT - частный случай преобразования Фурье) и записывает округленные (квантованные) значения полученных после преобразования коэффициентов (квантование происходит в соответствии с проводимым психоакустическим анализом). MPC же после разбиения сигнала на частотные подполосы просто производит переквантование (опираясь на психоакустику) амплитудного сигнала в каждой подполосе и полученные округленные (квантованные) значения записывает в выходной поток. Этим же фактом объясняется и большая скорость компрессии и декомпрессии MPC.

AAC - MPEG-2/4 AAC (Advanced Audio Coding)

Стандарт MPEG-2 AAC

Стандарт MPEG-2 разрабатывался специально для кодирования ТВ сигналов. В апреле 1997 этот комплект получил "продолжение" в виде алгоритма MPEG-2 AAC (MPEG-2 Advanced Audio Coding - продвинутое аудио кодирование). Стандарт MPEG-2 AAC стал результатом кооперации усилий института Fraunhofer, компаний Sony, NEC и Dolby. MPEG-2 AAC является технологическим приемником MPEG-1. Поскольку между опубликованием MPEG-2 AAC и его стандартизацией прошло достаточно много времени, свет увидели несколько разновидностей этого алгоритма: Homeboy AAC, AT&T a2b AAC, Astrid/Quartex AAC, Liquifier AAC, FAAC (Freeware Audio Coder), Mayah AAC и PsyTEL AAC. Наиболее высокое качество звучания по сравнению c MPEG-1 Layer III обеспечивают Liquifier AAC, FAAC и PsyTEL AAC. Почти все приведенные разновидности алгоритма AAC не являются совместимыми между собой.

Так же, как и в комплекте аудио стандартов кодирования MPEG-1, в основе алгоритма AAC лежит психоакустический анализ сигнала. Вместе с тем, алгоритм AAC имеет в своем механизме множество дополнений, направленных на улучшение качества выходного аудио сигнала. В частности, используется другой тип преобразований, улучшена обработка шумов, изменен банк фильтров, а также улучшен способ записи выходного бит-потока. Кроме того, AAC позволяет хранить в закодированном аудио сигнале так называемые "водяные знаки" (watermarks) - информацию об авторских правах. Эта информация встраивается в бит-поток при кодировании таким образом, что уничтожить ее становится невозможно не разрушив целостность аудио данных. Эта технология (в рамках Multimedia Protection Protocol) позволяет контролировать распространение аудио данных (что, кстати, является препятствием на пути распространения самого алгоритма и файлов, созданных с помощью него). Следует отметить, что алгоритм AAC не является обратно совместимым (NBC - non backwards compatible) с уровнями MPEG-1 не смотря на то, что он представляет собой продолжение (доработку) MPEG-1 Layer I, II, III.

MPEG-2 AAC предусматривает три различных профиля кодирования: Main, LC (Low Complexity) и SSR (Scalable Sampling Rate). В зависимости от того, какой профиль используется во время кодирования, изменяется время кодирования и качество получаемого цифрового потока. Наивысшее качество звучания (при самой медленной скорости компрессии) обеспечивает основной Main профиль. Это связано с тем, что профиль Main включает в себя все механизмы анализа и обработки входного потока. Профиль LC упрощен, что сказывается на качестве звучания получаемого потока, сильно отражается на скорости компрессии и, что более важно, декомпрессии. Профиль SSR также представляет собой упрощенный вариант профиля Main.

Говоря о качестве звука, можно сказать, что поток AAC (Main) 96 Кбит/с обеспечивает качество звучания, сравнимое с качеством MPEG-1 Layer III 128 Кбит/с. При компрессии AAC 128 Кбит/с, качество звучания ощутимо превосходит MPEG-1 Layer III 128 Кбит/с.

Стандарт MPEG-4 AAC.

Стандарт MPEG-4 AAC является частью стандарта MPEG-4. MPEG-4 описывает способы объектно-ориентированного представления мультимедиа данных. Стандарт оперирует объектами, организует из них иерархии, классы и прочее, выстраивает сцены и управляет их передачей. В качестве средств компрессии аудио в MPEG-4 используется целый комплекс нескольких стандартов аудио кодирования: улучшенный алгоритм MPEG-2 AAC, алгоритм TwinVQ, а также алгоритмы кодирования речи HVXC (Harmonic Vector eXcitation Coding) и CELP (Code Excited Linear Predictive). Кроме того, MPEG-4 имеет множество механизмов обеспечения масштабируемости. Однако в целом, стандарт MPEG-4 AAC (https://faac.sourceforge.net/wiki/index.php?page=AAC), предусматривающий правила и алгоритмы кодирования аудио, является продолжением MPEG-2 AAC. MPEG-4 AAC стандартизует следующие типы объектов (именно так называются профили в MPEG-4 AAC):

MPEG-4 AAC LC (Low Complexity)
MPEG-4 AAC Main
MPEG-4 AAC SSR (Scalable Sampling Rate)
MPEG-4 AAC LTP (Long Term Prediction)
MPEG-4 Version 2
MPEG-4 Version 3 (включая HE-AAC)

Как видно, первые три позаимствованы у MPEG-2 AAC, четвертый же является новшеством. LTP основан на методах предсказания сигнала и является более сложным алгоритмом, нежели остальные. Version 2 - это пакет стандартов, расширяющих некоторые механизмы кодирования стандарта MPEG-4. Version 3 - это еще одно расширение стандарта MPEG-4. Основным нововведением в стандарт MPEG-4, введенным Version 3, является стандартизация (в мая 2003) алгоритма HE-AAC (High Efficiency AAC), известного также под именем aacPlus.

Расширение AAC - aacPlus был анонсирован компанией Coding Tech. 9 октября 2002 года. aacPlus основан на использовании технологии SBR (Spectral Band Replication). Технология SBR предназначена для передачи верхнего частотного диапазона. Идея технологии и ее предпосылки таковы. Дело в том, что кодеки, использующие психоакустическую модель, как показывает практика, имеют один общий недостаток: все они работают качественно до битрейта 112-128 Кбит/с. На более низких битрейтах начинаются различные проблемы (явно выраженная порча звучания), которые заставляют разработчиков кодеков обрезать передаваемый частотный диапазон. Технология SBR дополняет использование психоакустических моделей. Ее идея заключается в следующем: в файле передается (кодируется) чуть более узкий диапазон частот, чем обычно (без верхних частот, >10 кГц), а верхние частоты воссоздаются (восстанавливаются) уже самим декодером на основе информации о более низких частотных составляющих, а также на основе сохраненной в файле информации об интенсивности составляющих в верхней полосе частот.

О качестве и практической применимости кодеков MP3, OGG, WMA, MPC и AAC.

Не смотря на совершенно разное происхождение всех описанных кодеков, их механизмы базируются на одной и той же идее "упрощения" сигнала на основе психоакустики с последующей компрессией упрощенных данных. Каждый кодек имеет свои индивидуальные ноу-хау и совершенно отличную от других реализацию, однако поскольку эти кодеки основаны на общей идее, то и усредненные результаты кодирования в одинаковых условиях по соотношению размер/качество находятся на близком друг к другу уровне.

Кодек MP3 заложил основу идее упрощения сигнала путем использования психоакустики. На сегодняшний день, несмотря на все ухищрения конкурентов, MP3 вот уже который год упорно держит свои позиции по соотношению размер/качество. Конечно, говорить о кодеке MP3 в общем нельзя, поскольку есть множество различных его реализаций. Одной из наиболее удачных и непрерывно развивающихся реализацией кодека MP3 является кодер Lame (его разработку ведет группа независимых энтузиастов, кодер распространяется бесплатно).

Кодер Lame имеет множество параметров кодирования, позволяющих "тонко" подстраивать процесс кодирования индивидуально для каждого аудио материала. Если речь идет о поп-музыке и ее прослушивании на аппаратуре низкого/среднего качества, то вполне хорошие на слух результаты можно получить при компрессии на битрейте 128 Кбит/c. Битрейт 160 Кбит/с еще более улучшит качество звучания, не сильно навредив коэффициенту сжатия. Если же необходимо "аудиофильское качество" компрессии, когда речь идет об отправке сжатого аудио материала в домашнюю коллекцию аудио и последующем его прослушивании на аппаратуре высшего класса, то здесь вполне подойдет битрейт 320 Кбит/с. Подобные параметры кодирования обеспечат высочайшее качество звучания сжатого аудио материала. Таким образом, каждый раз при необходимости сжать аудио материал пользователь должен задуматься о том, для каких целей он это делает и в зависимости от этого выбрать подходящий битрейт и режим кодирования. Практика показывает, что для вполне качественного звучания поп- и классической музыки достаточно битрейта в районе 160-192 Кбит/с. Если же речь идет об электронной или инструментальной музыке, то здесь битрейту предъявляются более высокие требования. В случае, когда необходимо сжать чисто голосовой материал (лекции, например), то здесь достаточно использовать сверхнизкие битрейты ниже 64 Кбит/с, поскольку в этом случае важно не само качество звучания, а лишь разборчивость речи при воспроизведении.

Кодеки Ogg Vorbis и MusePack, будучи последователями MPEG-1 Layer II, дают в среднем заметно лучшие результаты кодирования на средних и высоких битрейтах по сравнению с MP3. Это утверждение справедливо для битрейтов 160 Кбит/с и выше. Использование же Ogg Vorbis и MusePack на низких битрейтах почти не оправдано.

Кодек WMA, особенно версии 8 и 9, дает чуть лучшие результаты кодирования, нежели MP3. Надо отметить, что, как показывают тестирования и практика, особую ценность WMA несет на низких битрейтах. Например, MP3 на 32 Кбит/с почти невозможно слушать (на таком низком битрейте сигнал сильно искажается), в то время как WMA на этом битрейте звучит вполне достойно, а это значит, что при сжатии не критичной к качеству аудио информации WMA явно выигрывает у MP3.

Кодек MPEG-2/4 AAC, является продолжением MP3 и выигрывает у последнего на всех битрейтах. Хотя, нужно отметить, результат этот меняется от кодера к кодеру (коих существует предостаточно).

Таким образом, при выборе кодека и параметров кодирования аудио необходимо руководствоваться соображениями целесообразности, будущими планами на использование сжатого материала, а также соображениями удобоваримости (в частности, форматы MP3 и WMA "понимаются" уже очень многими аппаратными проигрывателями, в то время как OGG, AAC и MPC в этом заметно отстают). Не нужно бояться, что оригинальное качество материалов в результате компрессии будет безвозвратно потеряно - используя наивысшие битрейты, вы получаете многократный выигрыш в занимаемом сжатыми данными объеме и при этом остаетесь c качеством звучания близким к качеству оригинального материала.
V. Программное обеспечение

Кодеры.

Наиболее распространенными кодерами MP3 являются: Lame encoder, Blade encoder, MP3-Producer и XING encoder. О первом кодере Lame encoder мы уже упоминали, он является на сегодня наиболее прогрессивным и качественным среди всех существующих кодеров. Blade encoder также разрабатывался энтузиастами, однако с намного меньшей интенсивностью и на сегодня его разработка полностью остановлена. MP3 Producer одно время был чуть ли не стандартом кодирования, однако после интенсивного развития кодера Lame и других популярность MP3 Producer угасла, а на сегодня эта программа вообще устарела. XING encoder был первым кодером, в котором была применена технология кодирования с переменным битрейтом (VBR). В то же время XING никогда не отличался высоким качеством кодирования. В целом, к использованию может быть однозначно рекомендован лишь кодер Lame. Lame является консольной утилитой (то есть работа с ним осуществляется из командной строки), однако к нему существуют интерфейсные надстройки (front-end), которые организуют для Lame привычный пользователю графический интерфейс (GUI). Одним из самых удачных front-end-ов является RazorLame. Lame Encoder и RazorLame можно найти в Интернете, воспользовавшись поиском на любой поисковой машине (например, https://www.google.ru).

Кодеров OGG существует буквально два-три. Непосредственно разработчиками (https://www.vorbis.com) выпускается комплект консольных утилит для работы с файлами .ogg (в комплекте: кодер, декодер и другие дополнительные утилиты). Из OGG-кодеров, снабженных графическим интерфейсом, следует отметить кодер OggDrop, написанный John Edwards. Это очень компактная удобная в использовании утилита с удобными настройками. Существуют и другие сторонние разработки OGG-кодеров, например Ogg Encoder Decoder (создан MediaTwins s.r.o., https://www.mediatwins.com).

Кодер MusePack на момент написания статьи разрабатывается только автором кодека. Это консольная утилита, которую можно скачать, например, здесь: https://www.personal.uni-jena.de/~pfk/MPP/.

Кодер WMA существует всего один и располагается он на сайте компании-разработчика https://www.microsoft.com/windows/windowsmedia/. Кодер представляет собой утилиту для кодирования как видео, так и аудио информации. Следует отметить, что кодером WMA следует пользоваться аккуратно, так как в нем имеется опция, при включении которой все закодированные программой аудио материалы становится возможным прослушивать исключительно на том компьютере, где производилось кодирование.

С кодерами AAC все немного сложнее. Как было сказано выше, кодеров AAC есть множество и большое их число несовместимы друг с другом в виду длительного процесса стандартизации и расширения стандарта MPEG-4 AAC. Тем не менее, после окончательной стандартизации кодека вышли совместимые друг с другом кодеры: Nero AAC Encoder (https://www.nero.com), QuickTime (https://www.apple.com), FAAC (https://audiocoding.com/faac.php). На момент написания этой статьи кодек еще не стал массовым, однако, безо всякого сомнения, MPEG-4 AAC - это замена "старичка" MP3.
Проигрыватели.

Проигрывателей аудио файлов существует сегодня море. Одним из самых старых и наиболее популярных сегодня универсальных проигрывателей является WinAMP (by NullSoft, https://www.winamp.com). Сегодня WinAMP поддерживает воспроизведение MP3, WMA, OGG, AAC и MPC (с помощью подключаемых модулей, доступных в Интернете), а также трекерных модулей, MIDI и видео через встроенные кодеки Windows. Имеет полноконфигурируемый интерфейс, поддерживающий кожи (меняющие не только вид, но и конструкцию проигрывателя), позволяет осуществлять гибкое изменение размеров любого окна, настройку цветовой гаммы, имеет широкие визуализационные возможности, обладает очень развитой системой плей-листов, а также имеет множество других замечательных особенностей.

Из комбайнов, подобных WinAMP, следует также вспомнить проигрыватели Sonique (https://sonique.lycos.com), Apollo (https://www.apolloplayer.org). Еще одним замечательным комбайном является Steinberg MyMP3Pro (https://www.steinberg.de). MyMP3Pro - это универсальный комбайн для работы с базой музыкальных файлов. Он умеет: проигрывать MP3, Wave, Aiff, WMA и Ogg Vorbis файлы, а также аудио CD; записывать аудио и кодировать в вышеуказанные форматы, а также в MP3 Pro; создавать, сохранять и открывать плей-листы в трех наиболее распространенных форматах; создавать базу файлов, позволяющую помимо прочего хранить дополнительную информацию о каждом аудио файле; осуществлять поиск по базе файлов и выдавать отчет в соответствии с выбранными критериями поиска; воспроизводить и записывать потоковое аудио из Интернета; редактировать MP3 файлы (обрезать края, вырезать части, поправлять амплитуду и прочее); применять эквалайзер и расширитель стерео; применять четыре дополнительных эффекта (например, компрессор и реконструктор частот; применять одновременно до четырех VST плаг-инов; записывать обработанный звук на CD; автоматически нормализовать амплитуду сигнала группы файлов; оперировать внешними MP3-проигрывателями; скачивать MP3 из Интернета с помощью встроенного FTP клиента; сменять "кожи" и многое-многое другое.

Из числа сверх-компактных и очень удобных универсальных проигрывателей аудио файлов следует вспомнить, например, FooBar2000 (https://foobar2000.hydrogenaudio.org). FooBar2000 - это, казалось бы, крохотный MP3-проигрыватель с примитивным интерфейсом. Однако его простота и, в то же время, мощность привлечет всех, кому не нужны "расфуфыренные" интерфейсы, а нужен лишь удобный проигрыватель музыки. Проигрыватель способен воспроизводить: MP3, AAC, OGG, MPC, FLAC, Ogg FLAC, WAV, MOD, SPC, Monkey's Audio и другие файлы. Из основных возможностей стоит отметить работу с аудио в разрешении 32-бита, чтение RAR/ZIP-архивов, поддержку unicode и плей-листов на всех языках, встроенный ресемплер и DSP.

"Рипперы" аудио CD.

Риппер аудио CD - это программа, осуществляющая копирование содержимого аудио CD на винчестер (например, для последующего сжатия аудио материала с помощью MP3-кодера). Несмотря на то, что аудио CD является цифровым носителем, качество копирования с него зависит от качества CD-привода, а также от "умений" использующейся для этой процедуры программы. В случае неудачного сочетания этих факторов, копирование аудио информации может сопровождать внесением погрешностей в аудио материал.

Из наиболее известных программ подобного рода нужно отметить следующие: Exact Audio Copy (https://www.exactaudiocopy.de), CDex (https://www.cdex.n3.net), WinDAC и AudioGrabber. По некоторым оценкам, наиболее качественное копирование производит программа Exact Audio Copy (EAC). Качественное копирование достигается за счет плотной интеграции и адаптации механизма копирования и считывающего привода.
VI. "Жать" или не "жать"?

"Так, жать или не жать?" - спросите вы, устав от всей этой горы информации о lossy-кодировании. Ответ на этот вопрос строго индивидуален и каждый должен ответить на него самостоятельно. Использовать или не использовать lossy-кодеры для сжатия аудио, пользоваться ли вообще цифровой аппаратурой или остаться с аналоговой - среди любителей музыки эти споры не утихают до сих пор и, вероятно, никогда не будут разрешены. Одни говорят, что аналоговые носители сохраняют "живость" звука, которая уничтожается преобразованием звука "в цифру", другие же, напротив, утверждают, что наивысшее качество звучания может быть достигнуто только с использованием цифровой аппаратуры. Кто-то хранит данные в своей аудио коллекции в оригинальном цифровом виде на компакт дисках, считая использование lossy-кодеков кощунством, а кто-то "пережимает" все файлы в MP3 и тому подобные. Автору статьи и самому сложно однозначно определиться с выбором, однако очевидные преимущества сжатого цифрового аудио привести все же стоит. Таких преимуществ существует, в общем, два. Эти преимущества - компактность и долговечность.

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

Компактность - это, в первую очередь, малые габариты современных носителей цифровых данных. Повсеместное же распространение и дальнейшее развитие технологий lossy-кодирования аудио (MP3, OGG, WMA, MPC, AAC и других) открывает просто широчайшие возможности распространения и хранения аудио. Если раньше коллекция аудиофила не умещалась и в целой комнате или даже квартире, то сегодня в десятки раз больше часов музыки любой пользователь может сохранить буквально в карманном проигрывателе. Кроме того, современные каналы связи уже давно позволяют пересылать большие массивы данных за сравнительно небольшое время, однако самой медленной и по сей день остается передача данных между конечным пользователем и поставщиком услуг связи. Телефонные линии, по которым пользователи в большинстве своем связываются с Интернетом, не позволяют осуществлять быструю передачу данных. Нечего и говорить, что такие объемы данных, какие занимает несжатая аудио и видео информация, передавать по привычным каналам связи придется очень долго. Однако появление lossy-кодеров, обеспечивающих десяти-пятнадцати кратное сжатие, превратило передачу и обмен аудио данными в повседневное занятие каждого пользователя Интернета и сняло все преграды, образованные слабыми каналами связи.

Что же касается качества сжатых lossy-кодеками аудио материалов, то, как можно понять из материала статьи (или просто убедиться на практике), здесь все зависит от грамотности использования кодеров и вообще подхода к сжатию. При правильном выборе кодера и параметров кодирования всегда можно добиться нужного качества аудио. Чтобы сделать правильный выбор, необходимо просто внимательно продумать цель планируемого сжатия (например, архивное сжатие или сжатие для прослушивания в портативном плеере), решить на какой аппаратуре планируется прослушивание, а также обдумать другие факторы, который могут повлиять на выбор кодека и параметров сжатия. Бесспорным остается тот факт, что сжатое в MP3/AAC/... аудио деградирует в качестве по сравнению с цифровым оригиналом (на то оно и "кодирование с потерями"), однако также бесспорен и тот факт, что уровень этих потерь целиком и полностью зависит от пользователя. Грамотное использование lossy-кодеров (таких, как MP3, OGG, WMA, MPC, AAC и других) способно удовлетворить самого привередливого аудиофила..
Заключение.

Рассмотренные технологии lossy-сжатия аудио информации, как видно из статьи, могут являться мощнейшим инструментом в руках умелого пользователя. MP3, OGG, AAC, MPC и WMA - это удобные и эффективные алгоритмы сжатия, широко распространенные и заслуженно внедренные во многие электронные аудио устройства. Целью статьи было развеять предвзятое отношение ценителей качественного звука к lossy-кодерам, а также заставить любителей музыки, может быть, по-новому взглянуть на технологию MP3 и ей подобные. Задачей статьи также было помочь начинающему пользователю (да, и профессионалу) разобраться в возможностях и нюансах этих технологий. Автор статьи выражает надежду, что ему в какой-то степени это удалось.

SiriysBlack
2008-04-06T21:20:39Z

Здесь находятся
всего 0. За сутки здесь было 0 человек

Комментарии 11

#11   Grom33    

Если написал сам, то умница, такую тему налопатить это не халам-балам! Но я всё же за простоту языка и доступность обывателю. По типу \эта фигня отвечает за эту загогулину\. Я понимаю что хочется показать свой интелектуальный уровень и понимаю что не все можно объяснить простыми словами, но к этому стремится надо . Больше будет поддержки и понимания у аудитории. Блестящий тому пример - Перельман, автор научных брошюр по разным направлением науки. Дружище, лови от меня плюс!


0 ответить

#11   HawkS25    

А то понарежут мелодий на звонок - два канала и битрейт 128, а у тела один динамик и тот . . . И места потом мало. Это не про hi end смартыsmile


0 ответить

#11   HawkS25    

Хорошая статья.Можно делать выводы...


0 ответить

#11   swatdesper    

Оо мой моск smile
познавательная статейка, спасибо что донес до нас


0 ответить

#11   impoolse    

Сидел, читал. Физика звука, я думаю, здесь ни и чему. Труд конечно огромный провернул (если сам писал), но люди правы. Нужно более конкретно и менее сложно. А то ощущение такое, что читаешь учебник, как в институтеwinked


0 ответить

#11   analpus    

Чушь и вранье.Я сам перепробовал все кодеки.слух у меня нормальный.вма вообще нельзя слушать, а огг и ааc как раз на низких битрейдах эффективнее.а на высоких мп3 и mpc.когда пишут, что при битрейдах 128-192 качество близкое к сд, можно дальше не читать.статья написана дилетантами в этой области.


0 ответить

#11   Evance154    

Воровать статьи не хорошо...Автора укажи хоть!


0 ответить

#11   Lednik87    

Если копируешь статьи, то указывай первоисточник..


0 ответить

#11   runet-2    

Да познавательно! Ток чета про ogg както непонятно написано что он эффективен только при средних битрейтах 160 кбит а как-же при 48 кбит-ах стерео дорожка очень даже неплохо звучит по сравнению с другими форматами тут еще может конкурировать только аасPlus


0 ответить

#11   vaflla00    

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


0 ответить

Яндекс.Метрика