Сжатие с потерями. Где взять откомпилированный под Windows LAME? Какой режим кодирования стереосигнала лучше: stereo, joint stereo или dual channel

Viber OUT 25.05.2019
Viber OUT

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

Существует два различных подхода к сжатию аудиоинформации. Первый называется сжатием без потерь ( lossless ) – в ходе такого сжатия звук, записанный в цифровом виде, сохраняется полностью, без потерь. Другой подход к сжатию аудиоданных называется сжатием с потерями ( lossy ) – звук особым образом обрабатывается, из него удаляется все, по заключению алгоритма сжатия, лишнее, а то, что остается, сжимается. Такое сжатие, в сравнении со сжатием без потерь, позволяет добиться гораздо более высоких уровней сжатия, то есть – уменьшить размеры звуковых файлов, в то время как качество звучания, если не стараться сжать файл слишком сильно, страдает не особенно заметно.

Музыкальные записи можно сжимать и обычными архиваторами, однако они не могут работать в режиме реального времени, к тому же, уровень сжатия несжатых музыкальных записей редко когда превышает 50%. Другой, используемый на практике, способ сжатия аудиоинформации заключается в применении специальных программ – так называемых кодеков, с помощью которых можно сжимать и "на лету" заниматься раскодированием и воспроизведением сжатых композиций.

Говоря о кодеках для сжатия аудиоинформации, следует различать понятия кодек и контейнер медиаданных. Контейнер – это, упрощенно говоря, некая стандартная оболочка , в которой хранятся аудиоданные, сжатые тем или иным кодеком. Например, в MP4-контейнере могут храниться данные, сжатые различными кодеками – в частности – кодеком сжатия с потерями AAC , кодеком сжатия без потерь ALAС и другими. Обычно для различных типов данных, которые хранятся в MP4-контейнере, применяются различные расширения файла. Точно так же, в WAV -файле могут храниться различные данные – например, сжатые в популярном формате MP3 или несжатая информация в формате PCM – в случае с WAV -файлами расширение имени файла остается неизменным (. wav ), а различаются эти файлы лишь по своей внутренней структуре.

Перечень программ

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

Таблица 3.1. Программы и форматы файлов
Программы и форматы MP3 OGG WMA AAC VQF FLAC WAV PACK APE ALAC
Lame +
Winlame + + +
RazorLame +
Windows Media Encoder +
aoTuV +
iTunes +
ImToo WMA MP3 Converter* + +
MP4 Converter**
ImToo Audio Encoder + + + + + + +
Flac Frontend +
Cue Splitter ***
WavPack Frontend +
Monkey’s Audio +
dBpoweramp + + + + + + + +

* Программа ImToo WMA MP3 Converter поддерживает большое количество входных форматов файлов, на выходе же могут быть лишь MP3 и WMA .

** Программа MP4 Converter конвертирует видеофайлы различных форматов в формат, понятный плеерам Apple iPod .

*** Программа для разбиения больших аудиофайлов в соответствии с индексными картами.

Сжатие с потерями

Среди существующих форматов сжатия аудиоданных с потерями можно отметить "большую четверку" - MP3 , WMA , Ogg Vorbis и AAC . Ваш MP3 -плеер с практически 100% вероятностью будет поддерживать один из этих форматов, а скорее всего – несколько. Знания о некоторых особенностях форматов будут особенно полезны при практической работе с аудиоинформацией. Например, в следующих лекциях мы рассмотрим ПО для работы со звуком, в частности, подробно остановимся на конверсии звука из одного формата в другой, и если вы будете знать о формате сжатия данных немного больше, чем его название, это может вам неплохо помочь. Итак, начнем с самого популярного формата.

MP3

Полное название MP3 – MPEG 1 Audio Layer 3. MP3 – это формат сжатия аудиоданных с потерями, который добился невероятной популярности по всему миру. В настоящее время существуют варианты стандарта - MPEG-2 Layer 3 и MPEG-2 .5 Layer 3.

История MP3 начинается в конце 1980-х годов, когда рабочая группа инженеров института Фраунгофера (Fraunhofer Society) начала работать над проектом DAB ( Digital Audio Broadcast ). Проект был частью исследовательской программы EUREKA и в ее рамках был известен как EU -147. MP3 стал результатом переработки стандартов сжатия аудиоинформации Musicam и ASPEC, добавления к идеям, используемых в этих стандартах, новых оригинальных концепций. Непосредственное отношение к стандарту имеет так же компания Thomson.

Стандарт развивался в начале 1990-х, в 1995 году была опубликована окончательная версия стандарта, однако еще в 1994 году был создан первый программный MP3 -кодировщик, который назывался l3enc. Тогда же было выбрано расширение. mp3 для файлов, закодированных в данном формате, а в 1995 году появился первый программный MP3 -проигрыватель Winplay3, доступный широкой общественности. Благодаря высокому качеству музыки при небольшом размере файлов, а так же из-за появления простого и качественного программного обеспечения для проигрывания и создания MP3 -файлов (например, широко известного и ныне здравствующего WinAmp’a, который появился еще в середине 1990-х годов), стандарт обрел огромную популярность и пользуется ей до сих пор.

Возможности MP3

Говоря о возможностях формата MP3, пожалуй, надо начать с формата, в котором хранят музыку на обычных музыкальных CD-дисках, на так называемых Audio CD . Звук, записанный на такие диски, имеет вполне определенные характеристики, а именно, это 44.1kHz 16Bit Stereo (44,1 кГц, 16-битный стереозвук). В переводе на нормальный человеческий язык это означает, что каждая секунда звучания состоит из 44100 образцов (этот параметр называют частотой дискретизации), каждый из которых имеет размер 16 бит (то есть – два байта), причем, информация записывается для двух каналов – для правого и для левого. В итоге получается, что для хранения одной секунды музыки в формате Audio CD потребуется 44100*16*2=1411200 бит, или 176400 байт, или 172,2 Кб. Таким образом, пятиминутная композиция займет 176400*5*60=52920000 байт, то есть – почти 50 мегабайт дискового пространства. Даже сегодня, учитывая десятки, а чаще – сотни гигабайт жестких дисков, которые есть в распоряжении обычных пользователей, довольно сложно представить себе музыкальную коллекцию, состоящую исключительно из звука, записанного в таком неэкономном формате. Что и говорить о жестких дисках на пару гигабайт, которые были пределом мечтаний многих лет десять назад.

Файлы, сжатые в MP3 практически без потери первоначального качества, занимают в 6-10 раз меньше места, чем оригинал. То есть из огромного 50-мегабайтного файла получается вполне пристойный 5-мегабайтный. Причем, если сжать такой файл с помощью обычных алгоритмов сжатия (RAR или ZIP, например), которые используются для простых файлов, мы получим, в лучшем случае, 50% выигрыш (то есть файл порядка 25 Мб). В чем же дело? Почему же MP3 способен так сильно сжимать файлы, практически не ухудшая их качества. Ответ на вопрос здесь кроется в слове "практически". Ведь обычное сжатие не изменяет качества композиций, оно полностью сохраняет его, а MP3 проводит некие манипуляции с файлом, которые могут сказаться на его качестве.

Как работает MP3

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

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

Битрейт

При MP3-кодировании особенную важность имеет так называемый битрейт (bitrate или ширина потока), который задается при кодировании. Например, уже описанный Audio CD может быть закодирован с максимальным битрейтом 320 Кбит/c (килобит в секунду – этот показатель так же обозначают как kbps , kbs , kb/s) до 128 и ниже. На практике, при битрейте ниже 128 Кбит/с качество звучания падает настолько сильно, что кодировать с подобным битрейтом есть смысл лишь тогда, когда другой альтернативы просто нет.

С одним и тем же битрейтом могут быть закодированы различные исходные материалы, например, звук может быть не стереофоническим, а монофоническим, другой может быть частота дискретизации или размер выборки, однако битрейт – это очень важный интегральный показатель качества MP3-файла. В общем случае, чем он больше – тем это лучше. Очень часто при кодировании MP3-записей Audio CD -качества, можно встретить битрейт 192 Кбит/с – он неплохо подходит для этих целей, однако при прослушивании подобных записей на качественной аудиоаппаратуре (особенно, если сравнить их с оригинальными Audio CD ), заметны артефакты сжатия.

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

Так, наиболее простой тип битрейта – это постоянный битрейт – или CBR ( Constant Bit Rate ). Этот битрейт не меняется в течение кодирования всей композиции, то есть каждая секунда звучания, независимо от ее содержимого, кодируется одинаковым количеством бит.

Bit Rate ) – его можно назвать комбинацией VBR и CBR . Так, перед началом кодирования пользователь задает средний битрейт, а при кодировании программа, используя переменный битрейт, следит за тем, чтобы в итоге битрейт вписался в установленное пользователем ограничение. Качество выходного файла получается, таким образом, хуже, чем при использовании VBR (но немного лучше, чем при использовании аналогичного CBR ), однако размер файла поддается гибкой и точной регулировке.

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

МИНИСТЕРСТВО СЕЛЬСКОГО ХОЗЯЙСТВА

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

СТАВРОПОЛЬСКИЙ ГОСУДАРСТВЕННЫЙ АГРАРНЫЙ УНИВЕРСИТЕТ

Экономический факультет

Кафедра «Прикладная информатика»

САМОСТОЯТЕЛЬНАЯ

КОНТРОЛИРУЕМАЯ РАБОТА

по дисциплине «Мультимедиа»

Тема «Сжатие звуковой информации»

Выполнил:

студент группы 2ПО

Проверил:

доцент кафедры ПИ,

к. т.н., доцент

Ставрополь, 2011

СЖАТИЕ ЗВУКОВОЙ ИНФОРМАЦИИ

Общие сведения

При первичном кодировании в студийном тракте используется об равномерное квантование отсчетов звукового сигнала (ЗС) с разрешением ∆А=16...24 бит/отсчет при частоте дискретизации f = 44,1...96 кГц. В каналах студийного качества обычно

∆А =16 бит/отсчет, f = 48 кГц, полоса частот кодируемого звукового сигнала

∆F = 20...20000 Гц. Динамический диапазон так цифрового канала составляет около 54 дБ. Если f = 48 кГц и ∆А =16 бит/отсчет, то скорость цифрового потока при передаче одного такого сигнала равна V= 48x16 = 768 кбит/с. Это требует суммарной пропускной способности канал связи при передаче звукового сигнала форматов 5.1 (Dolby Digital) или 3/2 плюс канал сверхнизких частот (Dolby Surround, Dolby-Pro-Logic, Dolby THX) более 3,840 Мбит/с. Но человек способен своими органами чувств сознательно обрабатывать лишь около 100 бит/с информации. Поэтому можно говорить о присущей сущей первичным цифровым звуковым сигналам значительной избыточности

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

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

Однако даже при использовании достаточно сложных процедур обработки устранение статистической избыточности звуковых сигналов позволяет в конечном итоге уменьшить требуемую пропускную способность канала связи лишь 15...25% по сравнению с ее исходной величиной, что никак нельзя считать революционным достижением.

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

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

Работы по анализу качества и оценке эффективности алгоритмов компрессии цифровых аудиоданных с целью их последующей стандартизации начались в 1988 году, когда была образована международная экспертная группа MPEG (Moving Pictures Experts Group). Итогом работы этой группы на первом этапе явилось принятие в ноябре 1992 года международного, стандарта MPEG 1 ISO/IEC 11172-3 (здесь и далее цифра 3 после номера стандарта относится к той его части, где речь идет о кодировании звуковых сигналов).

К настоящему времени достаточное распространение в радиовещании получили также еще нескольких стандартов MPEG, таких, как MPEG-2 ISO/IEC 13818-3, 13818-7 и MPEG-4 ISO/IEC 14496-3.

В отличие от этого в США был разработан стандарт Dolby АС-3 (ад/52) качестве альтернативны стандартам MPEG. Несколько позже четко сформировались две разные платформы цифровых технологий для радиовещания и телевидения - это DAB (Digital Audi o Broadcasting), DRM (Digital Radio Mondiale), DVB (с наземной DVB-T, кабельной DVB-C, спутниковой DVB-S разновидностями) и ATSC (Dolby АС-3). Первая из них (DAB, DRM) продвигается Европой, ATSC - США. Отличаются эти платформы, прежде всего, выбранным алгоритмом компрессии цифровых аудиоданных, видом цифровой модуляции и процедурой помехоустойчивого кодирования ЗС.

Несмотря на значительное разнообразие алгоритмов компрессии цифровых аудиоданных, структура кодера, реализующего такой алгоритм обработки сигналов, может быть представлена в виде обобщенной схемы, показанной на рис. 4.1. В блоке временной и частотной сегментации исходный звуковой сигнал разделяется на субполосные составляющие и сегментируется по времени, Длина кодируемой выборки зависит от формы временной функции звукового сигнала. При отсутствии резких выбросов по амплитуде используется так назы­ваемая длинная выборка, обеспечивающая высокое разрешение по частоте. В случае же резких изменений амплитуды сигнала длина кодируемой выборки резко уменьшается, что дает более высокое разрешение по времени. Решение об изменении длины кодируемой выборки принимает блок психоакустического анализа, вычисляя значение психоакустической энтропии сигнала. После сегментации субполосные сигналы нормируются, квантуются и кодируются. В наиболее эффективных алгоритмах компрессии кодированию подвергаются не сами отсчеты выборки ЗС, а соответствующие им коэффициенты МДКП.

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

Алгоритмы сжатия звука MPEG основаны на описанных в первой главе свойствах восприятия звуковых сигналов слуховым аппаратом человека. Использование эффекта маскировки позволяет существенно сократить объем звуковых данных, сохраняя приемлемое качество звучания. Принцип здесь достаточно простой: «Если какая-то составляющая не слышна, то и передавать ее не следу». На практике это означает, что в области маскирования можно снизить число битов на отсчет до такой степени, чтобы шум квантования все еще оставался ниже порога маскирования. Таким образом, для работы звукового кодера необходимо знать пороги маскирования при различных комбинациях воздействующих сигналов. Вычислением этих порогов занимается важный узел в кодере психоакустическая модель слуха (ПАМ). Она анализирует входной сигнал в последовательные отрезки времени и определяет для каждого блока отсчетов спектральные компоненты и соответствующие им области маскирования. Входной сигнал анализируется в частотной области, для этого блок отсчетов, взятых во времени, с помощью дискретного преобразования Фурье преобразуется в набор коэффициентов при компонентах частотного спектра сигнала. Разработчики кодеров компрессии имеют значительную свободу в построении модели, точность ее функционирования зависит от требуемой степени сжатия

Полосное кодирование и блок фильтров. Наилучшим методом к кодирования звука, учитывающим эффект маскирования, оказывается полосное кодирование. Сущность его заключается в следующем. Группа отсчетов входного звукового сигнала, называемая кадром, поступает на блок фильтров (БФ) который содержит, как правило, 32 полосовых фильтра. Учитывая сказанное pan критических полосах и маскировании, хорошо бы иметь в блоке фильтров полосы пропускания, по возможности совпадающие с критическими. Однако практическая реализация цифрового блока фильтров с неравными полосами достаточно сложна и оправдана только в устройствах самого высокого класса Обычно используется блок фильтров на основе квадратурно-зеркальных (W. ров с равными полосами пропускания, охватывающих с небольшим взаимным, перекрытием всю полосу слышимых частот (рис. 4.2). В этом случае полоса пропускания фильтра равна π/32T, а центральные частоты полос равны (2к + 1) π /64Т, где Т - период дискретизации;

к = 0,1,..., 31. При частоте дискретизации 48 кГц полоса пропускания секции фильтра составляет 750 Гц.

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

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

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

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

Возможны три стратегии распределения битов.

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

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

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

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

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

Семейство стандартов MPEG

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

Стандарт MPEG-1

Стандарт MPEG-1 (ISO/IEC 11172-3) включает в себя три алгоритма различных уровней сложности: Layer (уровень) I, Layer II и Layer III. Общая структура процесса кодирования одинакова для всех уровней. Однако, несмотря схожесть уровней в общем подходе к кодированию, уровни различаются п левому использованию и внутренним механизмам. Для каждого уровня определен цифровой поток (общая ширина потока) и свой алгоритм декодирования MPEG-1 предназначен для кодирования сигналов, оцифрованных с частотой дискретизации 32, 44.1 и 48 КГц. Как было указано выше, MPEG-1 имеет три уровня (Layer I, II и Ш). Эти уровни имеют различия в обеспечиваемом коэффициенте сжатия и качестве звучания получаемых потоков. MPEG-1 нормирует для всех трех уровней следующие номиналы скоростей цифрового потока: 32, 48, 56, 64, 96, 112, 192, 256, 384 и 448 кбит/с, число уровней квантования входного сигнала - от 16 до 24. Стандартным входным ^гналом для кодера MPEG-1 принят цифровой сигнал AES/EBU (двухканальный цифровой звуковой сигнал с разрядностью квантованиябита на отчет) Предусматриваются следующие режимы работы звукового кодера:

■ одиночный канал (моно);

■ двойной канал (стерео или два моноканала);

■ joint stereo (сигнал с частичным разделением правого и левого каналов). Важнейшим свойством MPEG-1 является полная обратная совместимость всех трех уровней. Это означает, что каждый декодер может декодировать сигналы не только своего, но и нижележащих уровней.

В основу алгоритма Уровня I положен, разработанный компанией Philips для записи на компакт-кассеты, формат DCC (Digital Compact Cassette). Кодирование первого уровня применяется там, где не очень важна степень компрессии и решающими факторами являются сложность и стоимость кодера и декодера. Кодер Уровня I обеспечивает высококачественный звук при скорости цифрового потока 384 кбит/с на стереопрограмму.

Уровень II требует более сложного кодера и несколько более сложного декодера, но обеспечивает лучшее сжатие - «прозрачность» канала достигается уже при скорости 256 кбит/с. Он допускает до 8 кодирований/декодирований без заметного ухудшения качества звука. В основу алгоритма Уровня П положен популярный в Европе формат MUSICAM.

Самый сложный Уровень III включает все основные инструменты сжатия: полосное кодирование, дополнительное ДКП, энтропийное кодирование, усовершенствованную ПАМ. За счет усложнения кодера и декодера он обеспечивает высокую степень компрессии - считается, что «прозрачный» канал формируется на скорости 128 кбит/с, хотя высококачественная передача возможна и на более низких скоростях. В стандарте рекомендованы две психоакустические модели: более простая Модель 1 и более сложная, но и более высококачественная Модель 2. Они отличаются алгоритмом обработки отсчетов. Обе модели могут использоваться всех трех уровней, но Модель 2 имеет специальную модификацию для Уровня III.

MPEG -1 оказался первым международным стандартом цифрового сжатия звуковых сигналов и это обусловило его широкое применение во многих областях: вещании, звукозаписи, связи и мультимедийных приложениях. Наиболее широко используется Уровень II, он вошел составной частью в европейские спутникового, кабельного и наземного цифрового ТВ вещания, в стандарты звукового вещания, записи на DVD, Рекомендации МСЭ BS.1115 и J.52. Уровень III (его еще называют МР-3) нашел широкое применение в цифровых сетях с интегральным обслуживанием (ISDN) и в сети Интернет Подавляющее большинство музыкальных файлов в сети записаны именно в этом стандарте.

Кодер первого уровня. Рассмотрим более подробно работу кодера первого уровня (рис 4.4). Блок фильтров (БФ) обрабатывает одновременно 384 о счета звуковых данных и распределяет их с соответствующей субдискретизацией в 32 полосы, по 12 отсчетов в каждой полосе с частотой дискретизации 48/32 =1,5 кГц. Длительность кадра при частоте дискретизации 48 кГц составляет 8 мс. Упрощенная психоакустическая модель оценивает только частотное маскирование по наличию и «мгновенному» уровню компонентов сигнала в каждой полосе. По результатам оценки для каждой полосы назначается как можно более грубое квантование, но так, чтобы шум квантования не превышал порога маскирования. Масштабирующие множители имеют разрядность 6 бит и перекрывают динамический диапазон 120 дБ с шагом 2 дБ. В цифровом потоке передаются также 32 кода распределения битов. Они имеют разрядность 4 бита и указывают на длину кодового слова отсчета в данной полосе после переквантования.

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

Кодер второго уровня. В кодере второго уровня устранены основные недостатки базовой модели полосного кодирования, связанные с несоответствием критических полос слуха и реальных полос БФ, из-за чего в низкочастотных участках диапазона эффект маскирования практически не использовался. Величина кадра увеличена втрое, до 24 мс при дискретизации 48 кГц, одновременно обрабатываются уже 1152 отсчета (3 субкадра по 384 отсчета). В качестве входного сигнала для ПАМ используются не полосные сигналы с выхода БФ, а спектральные коэффициенты, полученные в результате 512-точечного преобразования Фурье входного сигнала кодера. Благодаря увеличению и временной длительности кадра и точности спектрального анализа эффективность работы ПАМ возрастает.

На втором уровне применен более сложный алгоритм распределения битов. Полосы с номерами от 0 до 10 обрабатываются с четырехразрядным кодом распределения (выбор любой из 15 шкал квантования), для полос с номерами от 11 до 22 выбор сокращается до 3 разрядов (выбор одной из 7 шкал), полосы с номерами от 23 до 26 предоставляют выбор одной из 3 шкал (двухбитовый код), а полосы с номерами от 27 до 31 (выше 20 кГц) не передаются. Если шкалы квантования, выбранные для всех блоков кадра, оказываются одинаковыми, то номер шкалы передается только один раз.

Еще одно существенное отличие алгоритма второго уровня в том, что не все масштабирующие множители передаются по каналу связи. Если различие множителей трех последовательных субкадров превышает 2 дБ не более чем в течение 10% времени, передается только один набор множителей и это дает экономию расходуемых битов. Если в данной полосе происходят быстрые изменения уровня звука, передаются два или все три набора масштабирующих множителей. Соответственно декодер должен запоминать номера выбранных писал квантования и масштабирующие множители и применять их при необходимости к последующему субкадру. Кодер третьего уровня. Кодер Уровня III использует усовершенствованный алгоритм кодирования с дополнительным ДКП.

Основной недостаток кодеров второго уровня - неэффективная обработка быстро изменяющихся переходов и скачков уровня звука – устраняется благодаря введению двух видов блоков ДКП - «длинного» с 18 отсчетами и «короткого» с 6 отсчетами. Выбор режима осуществляется адаптивно путем переключения оконных функций в каждой из 32 частотных полос. Длинные блоки обеспечивают лучшее частотное разрешение сигнала со стандартными характеристиками, в то время как короткие блоки улучшают обработку быстрых переходов. В одном кадре могут быть как длинные, так и короткие блоки, однако общее число коэффициентов ДКП не изменяется, так как вместо одного длинною передаются три коротких блока. Для улучшения кодирования применяются также следующие усовершенствования.

■ Неравномерное квантование (квантователь возводит отсчеты в степень 3/4 перед квантованием для улучшения отношения сигнал-шум; соответственно, декодер возводит их в степень 4/3 для обратной линеаризации).

■ В отличие от кодеров первого и второго уровней, на третьем уровне масштабирующие множители присваиваются не каждой из 32 частотных полос БФ, а полосам масштабирования - участкам спектра, не связанным с этими полосами и примерно соответствующим критическим полосам.

■ Энтропийное кодирование квантованных коэффициентов кодом Хаффмана.

■ Наличие «резервуара битов» - запаса, который кодер создает в периоды стационарного входного сигнала.

Кодер третьего уровня более полно обрабатывает стереосигнал в формате joint stereo (MS Stereo). Если кодеры нижележащих уровней работают только в режиме кодирования по интенсивности, когда левый и правый каналы в полосах выше 2 кГц кодируются как один сигнал (но с независимыми масштабирующими множителями), кодер третьего уровня может работать и в режиме «сумма-разность», обеспечивая более высокую степень сжатия разностного канала. Стереосигнал раскладывается на средний между каналами и разностный. При этом второй кодируется с меньшей скоростью. Это позволяет несколько увеличить качество кодирования в обычной ситуации, когда каналы по фазе совпадают. Но это приводит и к резкому его ухудшению, если кодируются сигналы, по фазе не совпадающие, в частности, фазовый сдвиг практически всегда присутствует в записях, оцифрованных с аудиокассет, но встречается и на CD, особенно если сам CD был записан в свое время с аудиоленты.

В рамках третьего уровня кодирование стереосигнала допустимо еще тремя различными методами.

■ Joint Stereo (MS/IS Stereo) вводит еще один метод упрощения стереосигнала, повышающий качество кодирования на особо низких скоростях. Состоит в том, что для некоторых частотных диапазонов оставляется уже даже не разностный сигнал, а только отношение мощностей сигнала в разных каналах. Понятно, что для кодирования этой информации употребляется еще меньшая скорость. В отличие от всех остальных, этот метод приводит к потере фазовой информации, но выгоды от экономии места в пользу среднего сигнала оказы­ваются выше, если речь идет об очень низких скоростях. Этот режим по умолчанию используется для высоких частот на скоростях от 96 кбит/с и ниже (другими качественными кодерами этот режим практически не используется). Но, как уже говорилось, при применении данного режима происходит потеря фазовой информации. Кроме того, теряется также любой противофазный сигнал.

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

■ Stereo - каждый канал кодируется отдельно, но кодер может принять решение отдать одному каналу больше места, чем другому. Это может быть полезно в том случае, когда после отброса части сигнала, лежащей ниже порога слышимости или полностью маскируемой код не полностью заполняет выделенный для данного канала объем, и кодер имеет возможность использовать это место для кодирования другого канала. Этим, например, избегается кодирование «тишины» в одном канале, когда в другом есть сигнал. Данный режим используется на скоростях выше 192 кбит/с. Он применим и на более низких скоростях порядка кбит/с.

Основные используемые кодеры III Уровня - кодеры от фирмы XingTech, кодеры от фирмы FhG IIS, и кодеры, основанные на исходном коде ISO.

Кодеры от XingTech не отличаются высоким качеством кодирования, но вполне подойдут для кодирования электронной музыки. Благодаря своей скорости они остаются идеальными кодерами для музыки, не требующей высокого качества кодирования.

Кодеры от FhG IIS известны наивысшим качеством кодирования на низких и средних скоростях, благодаря наиболее подходящей для таких скоростей психоакустичекой модели. Из консольных кодеров данной группы наиболее предпочтителен 13епс 2.61. Пока также используется кодер mр3епс 3.1, но последний никто всерьез не тестировал. Другие кодеры, такие, как Audio Active или МРЗ Producer, обладают значительными недостатками в основном из-за ограничения возможностей настройки и неразвитости интерфейса.

Остальные кодеры ведут свое происхождение от исходных кодов ISO. Существует два основных направления развития - оптимизация кода по скорости и оптимизация алгоритма по качеству. Первое направление наилучшим образом представлял кодер BladeEnc, в котором используется первоначальная модель ISO, но проведено много оптимизаций кода, а вторую модель представляет mpegEnc.

Кодер МР3Рго анонсирован в июле 2001 года компанией Coding Technologies вместе с Tomson Multimedia и институтом Fraunhofer. Формат МР3Рго является развитием III уровня (МРЗ). МР3Рго является совместимым с МРЗ назад (полностью) и вперед (частично), т. е. файлы, закодированные с помощью МР3Рго, можно воспроизводить в обычных проигрывателях. Однако качество звучания при этом заметно хуже, чем при воспроизведении в специальном проигрывателе. Это связано с тем, что файлы МР3Рго имеют два потока аудио, в то время как обычные проигрыватели распознают в них только один поток, т. е. обычный MPEG-1 Layer 3.

В МР3Рго использована новая технология - SBR (Spectral Band Replication). Она предназначена для передачи верхнего частотного диапазона. Дело в том, что предыдущие технологии использования психоакустических моделей имеют один общий недостаток: все они работают качественно, начиная со скорости 128 кбит/с. На более низких скоростях начинаются различные проблемы: либо для передачи звука необходимо обрезать частотный диапазон, либо кодирование приводит к появлению различных артефактов. Новая технология SBR дополняет использование психоакустических моделей. Передается (кодируется) чуть более узкий диапазон частот чем обычно (т. е. с обрезанными «верхами»), а верхние частоты воссоздаются (восстанавливаются) уже самим декодером на основе информации о более низких частотных составляющих. Таким образом, технология SBR применяется фактически не столько на стадии сжатия, сколько на стадии декодирования. Второй поток данных, о котором говорилось выше, как раз и есть та минимальная необходимая информация, которая используется при воспроизведении для восстановления верхних частот. Пока достоверно не известно, какую точно информацию несет этот поток, однако проведенные исследования показывают, что эта информация о средней мощности в нескольких полосах частот верхнего диапазона.

Наиболее известны Audio MPEG, PASC и ATRAC. Все они используют так называемое "кодирование для восприятия" (perceptual coding) при котором из звукового сигнала удаляется информация, малозаметная для слуха. В результате, несмотря на изменение формы и спектра сигнала, его слуховое восприятие практически не меняется, а степень сжатия оправдывает незначительное уменьшение качества. Такое кодирование относится к методам сжатия с потерями (lossy compression), когда из сжатого сигнала уже невозможно точно восстановить исходную волновую форму. Приемы удаления части информации базируются на особенности человеческого слуха, называемой маскированием: при наличии в спектре звука выраженных пиков (преобладающих гармоник) более слабые частотные составляющие в непосредственной близости от них слухом практически не воспринимаются (маскируются). При кодировании весь звуковой поток разбивается на мелкие кадры, каждый из которых преобразуется в спектральное представление и делится на ряд частотных полос. Внутри полос происходит определение и удаление маскируемых звуков, после чего каждый кадр подвергается адаптивному кодированию прямо в спектральной форме. Все эти операции позволяют значительно (в несколько раз) уменьшить объем данных при сохранении качества, приемлемого для большинства слушателей. Каждый из описанных методов кодирования характеризуется скоростью битового потока (bitrate), с которой сжатая информация должна поступать в декодер при восстановлении звукового сигнала. Декодер преобразует серию сжатых мгновенных спектров сигнала в обычную цифровую волновую форму.

Audio MPEG - группа методов сжатия звука, стандартизованная MPEG (Moving Pictures Experts Group - экспертной группой по обработке движущихся изображений). Методы Audio MPEG существуют в виде нескольких типов - MPEG-1, MPEG-2 и т.д.; в настоящее время наиболее распространен тип MPEG-1. Существует три уровня (layers) Audio MPEG-1 для сжатия стереофонических сигналов: 1 - коэффициент сжатия 1:4 при потоке данных 384 кбит/с; 2 - 1:6..1:8 при 256..192 кбит/с; 3 - 1:10..1:12 при 128..112 кбит/с. Минимальная скорость потока данных в каждом уровне определяется в 32 кбит/с; указанные скорости потока позволяют сохранить качество сигнала примерно на уровне компакт-диска. Все три уровня используют входное спектральное преобразование с разбиением кадра на 32 частотные полосы. Наиболее оптимальным в отношении объема данных и качества звука признан уровень 3 со скоростью потока 128 кбит/с и плотностью данных около 1 Мб/мин. При сжатии с более низкими скоростями начинается принудительное ограничение полосы частот до 15-16 кГц, а также возникают фазовые искажения каналов (эффект типа фэйзера или фленжера). Audio MPEG используется в компьютерных звуковых системах, CD-i/DVD, "звуковых" дисках CD-ROM, цифровом радио/телевидении и других системах массовой передачи звука. комплект MPEG-1 предусмотрен для кодирования сигналов, оцифрованных с частотой дискретизации 32, 44.1 и 48 КГц. Как было указано выше, комплект MPEG-1 имеет три уровня (Layer I, II и III). Эти уровни имеют различия в обеспечиваемом коэффициенте сжатия и качестве звучания получаемых потоков. Layer I позволяет сигналы 44.1 КГц / 16 бит хранить без ощутимых потерь качества при скорости потока 384 Кбит/с, что составляет 4-х кратный выигрыш в занимаемом объеме; Layer II обеспечивает такое же качество при 194 Кбит/с, а Layer III - при 128 (или 112). Выигрыш Layer III очевиден, но скорость компрессии при его использовании самая низкая (надо отметить, что при современных скоростях процессоров это ограничение уже не заметно). Фактически, Layer III позволяет сжимать информацию в 10-12 раз без ощутимых потерь в качестве. - Стандарт MPEG-2 был специально разработан для кодирования ТВ сигналов вещательного телевидения. В апреле 1997 этот комплект получил «продолжение» в виде алгоритма MPEG-2 AAC (MPEG-2 Advanced Audio Coding - продвинутое аудио кодирование).

Стандарт MPEG-4 - это особая статья. MPEG-4 не является просто алгоритмом сжатия, хранения и передачи видео или аудио информации. MPEG-4 - это новый способ представления информации, это - объектно-ориентированное представление мультимедиа данных. Стандарт оперирует объектами, организует из них иерархии, классы и прочее, выстраивает сцены и управляет их передачей. Объектами могут служить как обычные аудио или видео потоки, так и синтезированные аудио и графические данные (речь, текст, эффекты, звуки...). Такие сцены описываются на специальном языке.

Стандарт MPEG-7 вообще в корне отличается от всех иных стандартов MPEG. Стандарт разрабатывается не для установления каких-то рамок для передачи данных или типизации и описания данных какого-то конкретно рода. Стандарт предусмотрен как описательный, предназначенный для регламентации характеристик данных любого типа, вплоть до аналоговых. Использование MPEG-7 предполагается в тесной связи с MPEG-4.

Для удобства обращения со сжатыми потоками, все алгоритмы MPEG разработаны таким образом, что позволяют осуществлять декомпрессию (восстановление) и воспроизведение потока одновременно с его получением (download ) - потоковая декомпрессия «на лету» (stream playback ). Эта возможность очень широко используются в интернете, где скорость передачи информации ограничена, а с использованием подобных алгоритмов появляется возможность обрабатывать информацию прямо во время ее получения не дожидаясь окончания передачи.

PASC Precision Adaptive Sub-band Coding - точное адаптивное внутриполосное кодирование) - частный случай Audio MPEG-1 Layer 1 со скоростью потока 384 кбит/с (сжатие 1:4). Применяется в системе DCC.

ATRAC Adaptive TRansform Acoustic Coding - акустическое кодирование адаптивным преобразованием) базируется на стереофоническом звуковом формате с 16-разрядным квантованием и частотой дискретизации 44.1 кГц. ATRAC (Adaptive TRansform Acoustic Coding) разделяет 16-битный 44,1 кГц цифровой аудио сигнал на 52 частотных диапазона (после быстрого преобразования Фурье). Диапазоны с низкими частотами передаются более точно, чем с высокими. Алгоритм использует психо-акустическое кодирование, где применяется эффект маскировки и порог слышимости звука, в результате чего часть информации может быть отброшена и выходящий поток данных имеет размер в 1/5 оригинального. Каждый канал обрабатывается независимо (портативный MD привод Sony MZ-1 использует один чип ATRAC кодера/декодера на канал). Другой алгоритм кодирования, PASC (Precision Adaptive Sub-band Coding - сейчас используется Philips в DCC ) разделяет цифровой сигнал на промежутки равного размера и удаляет часть информации (уменьшая поток до 1/4 оригинального). PASC является алгоритмом MPEG Layer 1 (его можно распаковать проигрывателями MPEG Layer 1 после небольшой предварительной коррекции).
Оба алгоритма выполняют сжатие данных, обеспечивая хранение 16-битного звукового потока. Цель алгоритма - сжать поток для уменьшения занимаемого им пространства на диске. Существует огромного множество алгоритмов сжатия. Некоторые алгоритмы сжимают данные без потерь (они используются, к примеру, в архиваторах), при этом информация после декомпрессии не отличается от оригинала. PASC и ATRAC относятся к алгоритмам с потерей части информации, они не пытаются сохранить каждый бит входящих данных, они просто стараются выделить и сохранить акустически "важные" биты. Поэтому важно найти звуки, которые будут замаскированы человеческой слуховой системой, которые человек не сможет услышать даже при их воспроизведении. Оба алгоритма сжатия звука прекрасно справляются с этой задачей. Какой звуковой поток записывается на минидиск после сжатия ATRAC? Для стерео сигнала - 292162,5 бит/с. ATRAC сжимает 512 входящих 16-битовых семплов (1024 байта) в "звуковые группы" ATRAC (212 байт), в результате получается коэффициент сжатия 4,83:1. - 44100 семплов/с (входящий поток одного канала) - 512 семплов на звуковую группу (получаем 86,133 звуковых групп/с/канал) - 2 канала (получаем 172,266 звуковых групп/с)
- 212 байт/звуковую группу (получаем 36,5 кбайт/с в стерео) - 8 бит/байт (получаем кбит/с) - 292162,5 бит/с ATRAC (используется в MDLP) работает на 132 кбит/с (LP2) и 66 кбит/с (LP4).

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

RLE хорошо работает со звуками, которые содержат длинные серии повторяющихся звуковых фрагментов - сэмплов. При 8-битном сэмплировании это может происходить довольно часто. Напомним, что разность электрического напряжения между двумя 8-битовыми сэмплами и составляет около 4 мВ. Несколько секунд однородной музыки, в которой звуковая волна будет меняться менее чем на 4 мВ, породят последовательность из тысяч тождественных сэмплов. При 16-битном сэмплировании, очевидно, длинные повторы встречаются реже, и, следовательно, алгоритм RLE будет менее эффективен.

Статистические методы присваивают коды переменной длины звуковым сэмплам в соответствии с их частотностью. При 8-битном сэмплировании имеется всего 256 различных сэмплов, поэтому в большом звуковом файле сэмплу могут быть распределены равномерно. Такой файл не удастся хорошо сжать методом Хаффмана. При 16-битном сэмплировании допускается более 65000 звуковых фрагментов. В этом случае, возможно, что некоторые сэмплы будут встречаться чаще, а другие - реже. При сильной асимметрии вероятностей хороших результатов можно добиться с помощью арифметического кодирования.

Методы, основанные на словарном подходе, предполагают, что некоторые фразы будут встречаться часто на протяжении всего файла. Это происходит в текстовом файле, в котором отдельные слова или их последовательности повторяются многократно. Звук, однако, является аналоговым сигналом и значения конкретных сгенерированных сэмплов в большой степени зависит от работа АЦП. Например, при 8-битном сэмплировании, волна в 8 мВ становится числовым сэмплом, равным 2, но близкая ей волна, скажем, в 7.6 мВ или 8.5 мВ может стать другим числом. По этой причине, речевые фрагменты, содержащие совпадающие фразы и звучащие для нас одинаково, могут слегка отличаться при их оцифровывании. Тогда они попадут в словарь в виде разных фраз, что не даст ожидаемого сжатия. Таким образом, словарные методы не очень подходят для сжатия звука.

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

Идея подавления пауз заключается в рассмотрении малых сэмплов, как если бы их не было (то есть, они равны нулю). Такое обнуление будет порождать серии нулей, поэтому метод подавления пауз, на самом деле, является вариантом RLE, приспособленным к сжатию звука. Этот метод основан на особенности звукового восприятия, которое состоит в терпимости уха человека к отбрасыванию еле слышных звуков. Аудиофайлы, содержащие длинные участки тихого звука будут лучше сжиматься методом подавления пауз, чем файлы, наполненные громкими звуками. Этот метод требует участие пользователя, который будет контролировать параметры, задающие порог громкости для сэмплов. При этом необходимы еще два параметра, они не обязательно контролируются пользователем. Один параметр служит для определения самых коротких последовательностей тихих сэмплов, обычно, это 2 или 3. А второй задает наименьшее число последовательных громких сэмплов, при появлении которых прекращается тишина или пауза. Например, после 15 тихих сэмплов может последовать 2 громких, а затем 13 тихих, что будет определено как одна большая пауза длины 30, а аналогичная последовательность из 15, 3 и 12 сэмплов, станет двумя паузами с коротким звуком между ними.

Уплотнение основано на том свойстве, что ухо лучше различает изменения амплитуды тихих звуков, чем громких. Типичное АЦП звуковых карт компьютеров использует линейное преобразование при переводе напряжения в числовую форму. Если амплитуда была конвертирована в число , то амплитуда будет переведена в число . Метод сжатия на основе уплотнения сначала анализирует каждый сэмпл звукового файла и применяет к нему нелинейную функцию для сокращения числа бит, назначенных этому сэмплу. Например, при 16-битных сэмплах, кодер с уплотнением может применять следующую простую формулу

(6.1)

для сокращения каждого сэмпла. Эта формула нелинейно отображает 16-битные сэмплы в 15-битные числа интервала , причем маленькие (тихие) сэмплы меньше подвергаются искажению, чем большие (громкие). Табл. 6.7 иллюстрирует нелинейность этой функции. На ней показано 8 пар сэмплов, причем в каждой паре разность между сэмплами равна 100. Для первой пары разность между их образами равна 34, а разность между образами последней (громкой) пары равна 65. Преобразованные 15-битные числа могут быть приведены к исходным 16-битным сэмплам с помощью обратной формулы

. (6.2)

Разность

Разность

Табл. 6.7. Отображение 16-битных сэмплов в 15-битные числа.

Сокращение 16-битных сэмплов до 15-битных чисел не дает существенного сжатия. Лучшее сжатие получается, если в формулах (6.1) и (6.2) заменить число 32767 меньшим. Например, если взять число 127, то 16-битные сэмплы будут представлены 8-битными числами, то есть, коэффициент сжатия буде равен 0.5. Однако, декодирование будет менее аккуратным. Сэмпл 60100 будет отображен в число 113, а при декодировании по формуле (6.2) получится сэмпл 60172. А маленький 16-битный сэмпл 1000 будет отображен в 1.35, что после округления даст 1. При декодировании числа 1 получится 742, что сильно отличается от исходного сэмпла. Здесь коэффициент сжатия может быть параметром, непосредственно задаваемым пользователем. Это интересный пример метода сжатия, при котором коэффициент сжатия известен заранее.

На практике нет необходимости обращаться к уравнениям (6.1) и (6.2), поскольку результат отображения можно заранее приготовить в виде таблицы. Тогда и кодирование, и декодирование будут делаться быстро.

Уплотнение не ограничивается уравнениями (6.1) и (6.2). Более изощренные методы, такие как -правило и -правило, широко применяются на практике и входят во многие международные стандарты сжатия.

Чем более объем памяти WT-карты, тем реалистичнее звучание (ибо в памяти хранится больше образцов, записанных с более высоким разрешением). Стандарт General MIDI описывает более 200 инструментов, для хранения образцов их звучания (таблиц) требуется не менее 8 Мбайт памяти (минимум 20 Кбайт для каждого образца).

Известен WF-метод (Wave Form ) генерации звучания, основанный на преобразовании звуков в сложные математические формулы и дальнейшем применения этих формул для управления мощным процессором с целью воспроизведения звука; от WF-синтеза ожидают еще лучшей (относительно FM и WT-технологий) реальности звучания музыкальных инструментов при ограниченных объемах звуковых файлов.

Типовая схема подключения внешних устройств к IBM PC-ориентированной звуковой плате (карте ) приведена на рис.4.8.

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

Известны методы преобразования, не требующие априорной информации об исходном сигнале. При дифференциальной импульсно-кодовой модуляции (DPCM, Differential Pulse Code Modulation ) сохраняется только разность между текущим и предшествующим уровнями сигнала (разница требует для цифрового представления меньшего количества бит, чем полная величина амплитуды). При дельта-модуляции (DM, Delta Modulation ) каждая выборка состоит всего из одного бита, определяющего знак изменения исходного сигнала (увеличение или уменьшение); дельта-модуляция требует повышенной частоты сэмплинга. Технологии дифференциальной импульсно-кодовой модуляции связаны с накапливающейся со временем ошибкой, поэтому применяются специальные меры периодической калибровки АЦП.

Наибольшее распространение при записи звука получила адаптивная импульсно-кодовая модуляция (ADPCM, Adaptive Pulse Code Modulation ), использующая 8- или 4-разрядное кодирование для разности сигналов. Технология впервые была применена фирмой Creative Labs и обеспечивает сжатие данных до 4:1.

Однако часто применяются иные (программные) методы сжатия/распаковки аудиоинформации; среди них в последнее время наиболее популярен формат MP3 , разработанный институтом Fraunhofer IIS (Fraunhofer Institutе Integrierte Schaltungen , www.iis.fhg.de) и фирмой THOMSON (полная спецификация формата MP3 опубликованы на сайте www.mp3tech.org). Полное название стандарта MP3 звучит MPEG-Audio Layer-3 (где MPEG суть Moving Picture Expert Group , не путать с предназначенным для использовании в телевидении высокой четкости стандартом MPEG-3).

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

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

Аудиоинфоpмация, сжатая по такой технологии, может передаваться потоком (streaming), а может храниться в файлах формата MP3 или WAV-MP3. Отличие второго от первого состоит в наличии дополнительного заголовка WAV-файла, что позволяет при наличии MP3 - кодека (codec, кодер и декодер в комплексном исполнении) в системе использовать для работы с таким файлом стандартные средства Windows. Параметры компрессии при кодировании файла можно варьировать в широких пределах. Качество, неотличимое большинством рядовых слушателей от качества CD, достигается при скорости передачи (bitrate, битрейт ) 112128 Кбайт в секунду; при этом сжатие составляет примерно 14:1 относительно исходного объема. Специалисты обычно требуют скорости передачи 256320 Кбайт/сек (это соответствует всего лишь двойной скорости CD-проигрывателя, но для большинства отечественных InterNet - линий недоступна).

Принципиальной особенностью MPEG-кодирования (как видео-, так и аудиоинформации) является компрессия с потерями . После упаковки и распаковки звукового файла методом MP3 результат не идентичен оригиналу `бит в бит". Напротив, упаковка целенаправленно исключает из упаковываемого сигнала несущественные компоненты, что и приводит к чрезвычайному возрастанию коэффициента сжатия (сжатие до 96:1 при качестве телефонного канала).

Для MP3 также написано множество удобного программного обеспечения. Налажено производство аппаратных (карманных и автомобильных) MP3 плееров (MP3 поддерживает до 5 каналов).

На рубеже 19981999 г. фирма XingTech (www.xingtech.com) первая использовала технологию переменного битрейта (VBR, Variable Bite Rate ). В случае VBR задается максимальный допустимый уровень потерь, а кодер выбирает минимальный битрейт, достаточный для выполнения поставленной задачи. Стоящие рядом в конечном потоке фреймы могут оказаться в итоге закодированными с разными параметрами.

По расчетам специалистов MP3 останется актуальным в ближайшее десятилетие (даже несмотря на существование форматов AAG и VQF и продвигаемого MS формата WMA ). О существовании иных кодеров (преобразователей информации из одного формата в другой) см. www.sulaco.org/mp3/free.html и www.xiph.org.

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

Для кодирования аудиообъектов MPEG-4 предлагает наборы инструментов как для `живых" звуков, так и для синтезированных. MPEG-4 устанавливает синтаксис двоичных потоков и процесс декодирования в терминах наборов инструментов, что позволяет применять различные алгоритмы сжатия. Диапазон предлагаемых стандартом скоростей потока для кодирования живых звуков - от 2 до 128 Кбайт/сек и выше. При кодировании с переменным потоком минимальная средняя скорость может оказаться еще меньше (порядка 1,2 Кбайт/сек). Для звука высшего качества применяется алгоритм AAC, который дает качество лучше, чем у CD при потоке в 10 с лишним раз меньше. Другой возможный алгоритм кодирования живого звука - TwinVQ . Для кодирования речи предлагаются алгоритмы HVXC (Harmonic Vector eXcitation Coding ) для скоростей потока 24 Кбайт/сек и CELP (Code Excited Linear Predictive ) для скоростей 424 Кбайт/сек.

MPEG-4 предполагает возможность синтеза речи. На входы синтезатора поступает проговариваемый текст, а также различные параметры `окраски" голоса - ударения, изменения высоты тона, скорости произнесения фонем и т. п. Можно также задать для `говорящего" пол, возраст, акцент и др. В текст можно вставлять управляющую информацию, обнаружив которую синтезатор синхронно с произнесением соответствующей фонемы передаст параметры или команды другим компонентам системы (например, параллельно с голосом может генерироваться поток параметров для анимации лица). Как и всегда, MPEG-4 задает правила работы, интерфейс синтезатора, но не его внутреннее устройство.

Интересная часть `звуковой" составляющей - средства синтеза произвольных звуков и музыки. MPEG-4 предлагает в качестве стандарта подход, разработанный в колыбели многих передовых технологий - MIT Media Lab . и названный SA (Structured Audio , Структурированный Звук). Это не конкретный метод синтеза, а формат описания методов синтеза, в котором можно задать любой из существующих методов (а также, как утверждается, будущих). Для этого предлагаются два языка - SAOL (Structured Audio Orchestra Language ) и SASL (Structured Audio Score Language ). Первый задает оркестр, а второй - то, что этот оркестр должен играть. Оркестр состоит из инструментов, каждый инструмент представлен сетью элементов цифровой обработки сигналов - синтезаторов, цифровых фильтров, которые все вместе и синтезируют нужный звук. С помощью SAOL можно запрограммировать практически любой нужный инструмент, природный или искусственный звук. Сначала в декодер загружается набор инструментов, а затем поток данных SASL заставляет этот оркестр играть, управляя процессом синтеза; таким образом обеспечивается одинаковое звучание на всех декодерах при очень низком входном потоке и высокой точности управления. С появлением MPEG-4 фактически обретает более реальные и понятные очертания идея ITV (Interactive TeleVision, Интерактивное Телевидение ), о котором спорят уже несколько лет и под которым каждый понимает нечто свое (от простого `видео-по-запросу" до детективов с многовариантным развитием сюжета и участием зрителя).

Данные о MPEG-4 приведены в основном для информации о современных тенденциях записи и синтеза медиаданных, интересующихся отсылаем к cselt.it/mpeg и www.mpeg.org. В конце 2000 г. группа разработчиков MPEG планировала объявить об окончании работы над стандартом MPEG-7 (официальное название - Multimedia Content Description Interface ).



Рекомендуем почитать

Наверх