Сжатие звука MP3. Mp3 - технология сжатия звуковой информации

Вайбер на компьютер 13.08.2019
Вайбер на компьютер

Формат сжатия звука MP3

MPEG-1 Audio Layer 3 Расширение файла: .mp3 Тип MIME: audio/mpeg Тип формата: Audio

MP3 (более точно, англ. MPEG-1/2/2.5 Layer 3 (но не MPEG-3) - третий формат кодирования звуковой дорожки MPEG) - лицензируемый формат файла для хранения аудио-информации.

На данный момент MP3 является самым известным и популярным из распространённых форматов цифрового кодирования звуковой информации с потерями. Он широко используется в файлообменных сетях для оценочной передачи музыкальных произведений. Формат может проигрываться практически в любой популярной операционной системе, на практически любом портативном аудио-плеере, а также поддерживается всеми современными моделями музыкальных центров и DVD-плееров.

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

MP3 разработан рабочей группой института Фраунгофера (нем. Fraunhofer-Institut f?r Integrierte Schaltungen) под руководством Карлхайнца Бранденбурга и университета Эрланген-Нюрнберг в сотрудничестве с AT&T Bell Labs и Thomson (Джонсон, Штолл, Деери и др.).

Основой разработки MP3 послужил экспериментальный кодек ASPEC (Adaptive Spectral Perceptual Entropy Coding). Первым кодировщиком в формат MP3 стала программа L3Enc, выпущенная летом 1994 года. Спустя один год появился первый программный MP3-плеер - Winplay3.

При разработке алгоритма тесты проводились на вполне конкретных популярных композициях. Основной стала песня Сюзанны Веги «Tom"s Diner». Отсюда возникла шутка, что «MP3 был создан исключительно ради комфортного прослушивания любимой песни Бранденбурга», а Вегу стали называть «мамой MP3».


Описание формата

В этом формате звуки кодируются частотным образом (без дискретных партий); есть поддержка стерео, причём в двух форматах (подробности - ниже). MP3 является форматом сжатия с потерями, то есть часть звуковой информации, которую (согласно психоакустической модели) ухо человека воспринять не может или воспринимается не всеми людьми, из записи удаляется безвозвратно. Степень сжатия можно варьировать, в том числе в пределах одного файла. Интервал возможных значений битрейта составляет 8 - 320 кбит/c. Для сравнения, поток данных с обычного компакт-диска формата Audio-CD равен 1411,2 кбит/c при частоте дискретизации 44100 Гц.

MP3 и «качество Audio-CD»

В прошлом было распространено мнение, что запись с битрейтом 128 кбит/c подходит для музыкальных произведений, предназначенных для прослушивания большинством людей, обеспечивая качество звучания Audio-CD. В действительности всё намного сложнее. Во-первых, качество полученного MP3 зависит не только от битрейта, но и от кодирующей программы (кодека) (стандарт не устанавливает алгоритм кодирования, только описывает способ представления). Во-вторых, помимо превалирующего режима CBR (Constant Bitrate - постоянный битрейт) (в котором, проще говоря, каждая секунда аудио кодируется одинаковым числом бит) существуют режимы ABR (Average Bitrate - усредненный битрейт) и VBR (Variable Bitrate - переменный битрейт). В-третьих, граница 128 кбит/c является условной, так как она была «изобретена» в эпоху становления формата, когда качество воспроизведения звуковых плат и компьютерных колонок как правило было ниже, чем в настоящее время.

На данный момент наиболее часто встречаются MP3 файлы с битрейтом 192 кбит/c, что может косвенно говорить о том, что большинство считает этот битрейт достаточным. Реально воспринимаемое «качество» зависит от исходного аудиофайла, слушателя и его аудиосистемы. Некоторые меломаны предпочитают сжимать музыку с «максимальным качеством» - 320 кбит/c, либо даже переходить на другие форматы, например FLAC, где битрейт в среднем ~1000 кбит/c. Также среди меломанов бытует мнение, что некоторые сэмплы (фрагменты аудиозаписи) не поддаются качественному сжатию с потерями: на всех возможных битрейтах не составляет особого труда отличить сжатое аудио от оригинала.

Режимы кодирования и опции

Существует три версии MP3 формата для различных нужд: MPEG-1, MPEG-2 и MPEG-2.5. Отличаются они возможными диапазонами битрейта и частоты дискретизации:

* 32-320 кбит/c при частотах дискретизации 32000 Гц, 44100 Гц и 48000 Гц для MPEG-1 Layer 3;

* 16-160 кбит/c при частотах дискретизации 16000 Гц, 22050 Гц и 24000 Гц для MPEG-2 Layer 3;

* 8-160 кбит/c при частотах дискретизации 8000 Гц и 11025 Гц для MPEG-2.5 Layer 3.

Режимы управления кодированием звуковых каналов

Так как формат MP3 поддерживает двухканальное кодирование (стерео), существует 4 режима:

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

* Моно - одноканальное кодирование. Если закодировать двухканальный материал этим способом, различия между каналами будут полностью стёрты, так как два канала смешиваются в один, он кодируется и он же воспроизводится в обоих каналах стереосистемы. Единственным плюсом данного режима может являться только выходное качество по сравнению с режимом Стерео при одинаковом битрейте, так как на один канал приходится вдвое большее количество бит, чем в режиме Стерео.

* Двухканальный - два независимых канала, например звуковое сопровождение на разных языках. Битрейт делится на два канала. Например, если заданный битрейт 192 кбит/c, то для каждого канала он будет равен только 96 кбит/c.

* Объединённое стерео (Joint Stereo) - оптимальный способ двухканального кодирования. Например, в одном из режимов Объединённое стерео левый и правый каналы преобразуются в их сумму (L+R) и разность (L-R). Для большинства звуковых файлов насыщеность канала с разностью (L-R) получается намного меньше канала с суммой (L+R). Также тут свою роль играет восприятие звука человеком, для которого различия в направлении звука намного менее примечательны. Поэтому Объединённое стерео позволяет либо сэкономить на битрейте канала (L-R) или улучшить качество на том же битрейте, поскольку на канал суммы (L+R) отводится бо?льшая часть битрейта. Бытует мнение, что данный режим не подходит для звукового стереоматериала, в котором в двух каналах воспроизводится субъективно абсолютно различный материал, так как он стирает различия между каналами. Но современные кодеки используют различные схемы в разных фреймах (включая чистое стерео) в зависимости от исходного сигнала.

CBR расшифровывается как Constant Bit Rate, то есть Постоянный битрейт, который задается пользователем и не изменяется при кодировании произведения. Таким образом каждой секунде произведения соответствует одинаковое количество закодированных бит данных (даже при кодировании тишины). CBR может быть полезен для потоков мультимедиа данных по ограниченному каналу; в таком случае кодирование использует все возможности канала данных. Для хранения данный режим кодирования не является оптимальным, так как он не может выделить достаточно места для сложных отрезков исходного произведения, при этом бесполезно тратя место на простых отрезках. Повышенные битрейты (выше 256 кбит/c) могут решить данную проблему, выделив больше места для данных, но зато и пропорционально увеличивая размер файла.

VBR расшифровывается как Variable Bit Rate, то есть Варьирующийся Битрейт или Переменный Битрейт, который динамически изменяется программой-кодером при кодировании, в зависимости от насыщенности кодируемого аудиоматериала и установленного пользователем качества кодирования (например, тишина закодируется с минимальным битрейтом). Этот метод MP3-кодирования является самым прогрессивным и до сих пор развивается и улучшается, так как аудиоматериал разной насыщенности может быть закодирован с определенным качеством, которое обычно выше, чем при установке среднего значения в методе CBR. Плюс к тому, размер файла уменьшается за счет фрагментов, не требующих высокого битрейта. Минусом данного метода кодирования является сложность предсказания размера выходного файла. Но этот недостаток VBR-кодирования незначителен в сравнение с его достоинствами. Также минусом является то, что VBR считает «незначительной» звуковой информацией более тихие фрагменты, таким образом получается, что если слушать очень громко, то эти фрагменты будут некачественными, в то время как CBR делает с одинаковым битрейтом и тихие, и громкие фрагменты. Формат VBR постоянно улучшается, благодаря постоянному совершенствованию математической модели кодеков, в частности после выхода обновленной версии свободного mp3-кодека lame (версия 3.98), кодирование с переменным битрейтом, по заявлению самих разработчиков, качественно лучше CBR и тем более ABR.

ABR расшифровывается как Average Bit Rate, то есть Усредненый Битрейт, который является гибридом VBR и CBR: битрейт в кбит/c задается пользователем, а программа варьирует его, постоянно подгоняя под заданный битрейт. Таким образом, кодер будет с осторожностью использовать максимально и минимально возможные значения битрейта, так как рискует не вписаться в заданный пользователем битрейт. Это является явным минусом данного метода, так как сказывается на качестве выходного файла, которое будет немного лучше, чем при использовании CBR, но намного хуже, чем при использовании VBR. С другой стороны, этот метод позволяет наиболее гибко задавать битрейт (может быть любым числом между 8 и 320, против исключительно кратных 16 чисел метода CBR) и вычислять размер выходного файла.

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

Недостатки

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

Юридические ограничения. Для свободного использования формата существуют патентные ограничения. Компания Alcatel-Lucent обладает правами на MP3 и получает отчисления от тех, кто использует этот формат - производителей плееров и мобильных телефонов. Из-за этого лицензионная чистота формата под вопросом. В частности, Alcatel-Lucent предъявила претензии компании Microsoft за то, что в Windows была встроена поддержка MP3. Однако срок действия патентов на технологию заканчивается в 2010 году, после чего любая компания сможет использовать её свободно.

Форматы - Форматы сжатия звука

FLAC (англ. Free Lossless Audio Codec - свободный аудио-кодек без потерь) - популярный свободный кодек для сжатия аудио. В отличие от кодеков с потерями Ogg Vorbis, MP3, FLAC не удаляет никакой информации из аудиопотока и подходит как для прослушивания музыки на высококачественной звуковоспроизводящей аппаратуре, так и для архивирования аудиоколлекции. На сегодня формат FLAC поддерживается многими аудиоприложениями.

Аудиопоток

Основными частями потока являются:

* Строка из четырёх байтов «fLaC»

* Блок метаданных STREAMINFO

* Другие необязательные блоки метаданных

* Аудио фреймы

Первые четыре байта идентифицируют поток FLAC. Следующие за ними метаданные содержат информацию о потоке, затем идут сжатые аудиоданные.

Метаданные

FLAC определяет несколько типов блоков метаданных (все они перечислены на странице формата). Блоки метаданных могут быть любого размера, новые блоки могут быть легко добавлены. Декодер имеет возможность пропускать неизвеcтные ему блоки метаданных. Обязателен только блок STREAMINFO. В нём содержится частота дискретизации, количество каналов и т. п., а также данные, позволяющие декодеру настроить буферы. Сюда также записывается подпись MD5 несжатых аудиоданных. Это полезно для проверки всего потока после его передачи.

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

Аудиоданные

За метаданными следуют сжатые аудиоданные. Метаданные и аудиоданные не чередуются. Как и большинство кодеков, FLAC делит входной поток на блоки и кодирует их независимо друг от друга. Блок упаковывается во фрейм и добавляется к потоку. Базовый кодер использует блоки постоянного размера для всего потока, однако формат предусматривает наличие блоков разной длины в потоке.

Разбиение на блоки

Размер блока - очень важный параметр для кодирования. Если он очень мал, то в потоке будет слишком много заголовков фреймов, что уменьшит уровень сжатия. Если размер большой, то кодер не сможет подобрать эффективную модель сжатия. Понимание процесса моделирования поможет Вам увеличить уровень сжатия для некоторых типов входных данных. Обычно при использовании линейного прогнозирования на аудиоданных с частотой дискретизации 44.1 кГц оптимальный размер блока лежит в диапазоне 2-6 тысяч сэмплов.

Межканальная декорреляция

Если на вход поступают стерео аудиоданные, они могут пройти через стадию межканальной декорреляции. Правый и левый канал преобразуются к среднему и разностному по формулам: средний = (левый + правый)/2, разностный = левый - правый. В отличие от joint stereo этот процесс не приводит к потерям. Для данных с аудио компакт-дисков это обычно приводит к значительному увеличению уровня сжатия.

Моделирование

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

* подгонка простого полинома к сигналу

* общее кодирование с линейными предикторами (LPC).

Во-первых, постоянное полиномиальное предсказание (-l 0) работает значительно быстрее, но менее точно, чем LPC. Чем выше порядок LPC, тем медленнее, но лучше будет модель. Однако с увеличением порядка выигрыш будет все менее значительным. В некоторой точке (обычно около 9) процедура кодера, определяющая наилучший порядок, начинает ошибаться и размер получаемых фреймов возрастает. Чтобы преодолеть это, можно использовать полный перебор, что приведёт к значительному увеличению времени кодирования.

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

Остаточное кодирование

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

Кодирование Райса состоит из нахождения одного параметра, отвечающего распределению сигнала, а затем использования его для составления кодов. При изменении распределения меняется и оптимальный параметр, поэтому имеется метод позволяющий пересчитывать его по необходимости. Остаток может быть разбит на контексты или разделы, у каждого из которых будет свой параметр Райса. FLAC позволяет указать, как нужно производить разбиение. Остаток может быть разбит на 2n раздела.

Составление фреймов

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

Чтобы поддерживать основные типы метаданных, базовый декодер умеет пропускать теги ID3v1 и ID3v2, поэтому их можно свободно добавлять. Теги ID3v2 должны располагаться перед маркером «fLaC», а теги ID3v1 - в конце файла.

Существуют модификации FLAC кодера: Improved FLAC encoder и Flake.

29 января 2003 г. Xiphophorus (сейчас называется Xiph.Org Foundation) анонсировали включение формата FLAC в линейку своих продуктов, таких, как Ogg Vorbis

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

Мы ежедневно читаем статьи и новости о том, что та или иная компания разработала новый стандарт соединения, превосходящий нынешние аналоги по скорости передачи данных. За уже практически два десятилетия провайдеры и производители многих гаджетов сделали огромный шаг в направлении к скоростному доступу в Интернет. Но не одними лишь скоростями наш мгновенный доступ к сайтам един.


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

Работа алгоритма

Первым в новой серии статей станет самый популярный формат сжатия аудио–файлов *.mp3. Появился он в 1993 году, благодаря рабочей группе института Фраунгофера, а стандартизирован объединением MPEG. По данным Википедии, объединение было образовано международной организацией ISO для разработки норм в сжатии аудио и видеофайлов. Ими были установлены также следующие стандарты:

  • MPEG–1 : Предназначался для сжатия видео и аудио–файлов, позже стал устоявшимся стандартом для VCD (Video CD).
  • MPEG–2 : Уже ориентировался на передачу сигнала широковещательного телевидения семейств ATSC, ISDB и DVB и в прочих спутниковых ТВ-вещаниях. Таких как например Dish Network.
  • MPEG–3 : Стандарт разработанный для вещания HDTV, но был не принят по причине того, что MPEG–2, с небольшими доработками вполне хватало для таких целей. И нет, это не тот самый mp3, о котором вы сейчас могли подумать. На самом деле, mp3 является ответвлением стандарта MPEG–1, 3 уровня.
  • MPEG–4 : Является во многом усовершенствованным MPEG–1, с поддержкой декодирования 3D–контента и сжатия с низким битрейтом. В него также была интегрирована система программной защиты авторских прав - DRM. Из новых введенных в стандарт видео-форматов, можно отметить ASP и H.264.
Все таки давайте вернемся обратно к mp3. Основной задачей формата было и является уменьшение размера файлов за счет удаления определенных участков звукового спектра, которые не ощущаются на непрофессиональной аудиотехнике, в соответствии с психоакустической моделью звуковосприятия человека.

На этом этапе при помощи алгоритма преобразования Фурье, звуковая волна раскладывается на спектры разной частоты. Все те малоразличимые нашим слухом частоты просто удаляются. В основном это весь спектр звука выше 16 000 Гц. По такому принципу, кстати, работают и сервисы определения музыки, типа SoundHound и Shazam. Встроенный в их работу алгоритм разделяет слышимую звуковую волну на несколько, выделяет ритмику, основные ноты и сравнивает их со своей базой данных.

Но тем не менее, общая картина звучания, например, mp3-файла в битрейте 320 кбит/с мало чем отличается от несжатого файла, при этом в размере может составлять 1/10 от оригинального.

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

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

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

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

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

3.2. Mp3 - технология сжатия звуковой информации

Само название МрЗ появилось в результате сокращения аббревиатуры MPEG-1 Layer3.

MPEG (Motion Pictures Expert Group) - это группа при Международной организации по стандартизации и Международном электрическом комитете, которая занимается разработкой стандартов для цифрового сжатия видео и аудио информации. А зачем сжимать эту информацию? Во-первых, для экономии экономических и материальных ресурсов при передаче информации на расстояние по каналам связи (в том числе и спутниковым), а во-вторых, для ее хранения.

Официальное одобрение стандарт MPEG-1 получил в 1992 году, однако до недавнего времени открытие не было востребовано в полной мере. Лишь с появлением достаточно мощных процессоров Pentium (с тактовыми частотами от 300 МГц и выше, позволяющих резко снизить время на кодирование/декодирование сигнала) и высокоскоростных модемов стандарт получил широкое признание.

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

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

Всего в настоящее время существует пять видов (номеров) стандартов MPEG:

1) MPEG1 - сжатие аудио и видео с общей скоростью до 150 Кбайт/сек (аудио 38, 44.1, 48 килогерц);

2) MPEG2 - сжатие аудио и видео с общей скоростью до 300 Кбайт/сек (аудио 38, 44.1, 48 килогерц), сжатие аудио ИДЕНТИЧНО MPEG1;

3) MPEG2.5 - сжатие аудио с пониженным разрешением (аудио 16,22.05,24 килогерц). Интересно заметить, что стандарт MPEG2.5 (еще известный как MPEG2 LSF - LOW SAMPLE FREQUENCY - низкая частота сканирования аудио) введен фирмой IIS Fraunhofer (институт информационных технологий имени Фраунхофера из Германии). Этот стандарт является расширением "чистого" аудио MPEG2 (то есть MPEG1!) для частоты сканирования аудио в два раза меньшей, чем обычно;

4) MPEG3 - многоканальный MPEG1+MPEG2. Этот стандарт практически не используется;

5) MPEG4 - новомодный за рубежом стандарт. Его особенность: может держать до 8-и каналов аудио (то есть AC-3 - цифровое расширение системы Surround.

Чем выше индекс уровня тем выше сложность и производительность алгоритма кодирования, соответственно и увеличиваются требования к системным ресурсам.

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

Принцип кодирования сигнала в MPEG Audio основан на использовании психоакустической модели (Psycho-acoustics), суть которой в следующем.

Существует ряд звуковых частот, которые человеческое ухо не воспринимает. Происходит маскирование одних звуков другими, как с большей амплитудой, так и с близкой частотой. Так, например, если излучается сильный звук частотой 1000 Гц (маскирующий), то более слабый звук частотой 1100 Гц (маскируемый) человеческое ухо не зафиксирует из-за особенностей порога слышимости человеческого уха. Порог слышимости на краях частотного диапазона (16-20 Гц и 16-20 кГц) значительно повышается, т.к. на этих частотах слух имеет значительно меньшую чувствительность по сравнению с областью наибольшей чувствительности слуха (диапазон 1-5 кГц). Также известно, что время восстановления чувствительности слуха после громкого сигнала составляет порядка 100 мс, а время задержки восприятия этого же сигнала составляет порядка 5 мс.

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

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

Сравнительные характеристики способов кодирования для одного канала при частоте квантования в 32 кГц представлены в таблице 2.

Таблица 2.

Способ кодирования Скорость передачи (кбит/с) Коэффициент сжатия
Layer 1 192 1:4
Layer 2 128-96 1:6...8
Layer 3 64-56 1:10...12

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

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

Частота следования фреймов называется битрейтом (BIT RATE - битовая скорость, чем она выше, тем ближе будет конечный результат к оригиналу).

Каждый битрейт имеет свою область применения. Для создания качественной копии, соответствующей качеству оригиналу применяются только высокие битрейты порядка 256 кбит/с. При битрейте 128 кбит/с качество конечного продукта кажется вполне нормальным, но заметить разницу между копией и оригиналом способны уже многие. В Интернете чаще всего содержатся как раз МРЗ файлы, закодированные битрейтом 128 кбит/с. Но для создания действительно качественной копии необходимо использовать скорость кодирования в 320 кбит/с, хотя конечный файл получается меньше лишь в 4,3 раза по сравнению с 10,8 раз на 128 кбит/с и 5,4 раза на 256 кбит/с. Поэтому выбирать битрейт необходимо самому, исходя из потребностей.

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

После обработки всех фреймов формируется итоговый поток, который дополнительно кодируется по методу Хаффмана. Этот алгоритм также используется в архиваторе ARJ, только с динамической, постоянно изменяющейся таблицей Хаффмана, что требует двух проходов по данным; при фиксированной же таблице Layer 3, сжатие происходит за один проход. Указанный метод позволяет "сжать" до 20 процентов от общего объема. В результате получаем конечный поток кодированных аудиоданных.


При мне" с простым безыскусным напевом Глинки, услышанным от Грибоедова, и более сложное драматическое решение в романсе - восточной поэме Рахманинова, полной элегической тоски и одиночества. Музыкальная пушкиниана ХХ века также весьма обширна и интересна. В числе наиболее значительных произведений - балеты "Медный всадник" Глиэра, одна из главных тем которого поистине стала "гимном великому...

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

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

Работы над музыкальным произведением, уровнем эмоционально-поведенческих расстройств. 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 ).

Формат сжатия звука MP3

Методы сжатия звуковой информации

Сжатие звуковых данных

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

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

Как и в общем случае, различают сжатия звука без потерь, что делает возможным восстановление исходных данных без искажений, и сжатие с потерями, при котором такое восстановление невозможно. Алгоритмы сжатия с потерями дают большую степень сжатия, например audio CD может вместить не более часа «несжатой» музыки, при сжатии без потерь CD вместит почти 2 часа музыки, а при сжатии с потерями при среднем битрейте - 7-10 часов.

Сжатие без потерь

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

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

Наиболее распространенными форматами сжатия без потерь являются:
Free Lossless Audio Codec (FLAC), Apple Lossless , MPEG-4 ALS , Monkey"s Audio , и TTA .

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

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

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

Для осуществления маскировки сигнал из временной последовательности отсчетов амплитуды превращается в последовательность спектров звуков, в которых каждый компонент спектра кодируется отдельно. Для осуществления такого преобразования используются методы быстрого преобразования Фурье, МДКП, квадратурной-зеркальных фильтров или другие. Общий объем информации при таком перекодировании остается неизменным. Сжатие в определенной частотной области может заключаться в том, что замаскированные или нулевые компоненты не запоминаются вообще, или кодируются с меньшим разрешением. Например, частотные компоненты в до 200 Гц и более 14 кГц могут быть закодированы с 4-битной разрядностью, тогда как компоненты в среднем диапазоне - с 16 битной. Результатом такой операции станет кодирования со средней разрядностью 8-бит, однако результат будет значительно лучше, чем при кодировании всего диапазона частот с 8-битной разрядностью.

Однако очевидно, что перекодированные с низким разрешением фрагменты спектра уже не могут быть восстановлены в точности, и, таким образом, теряются безвозвратно.
Главным параметром сжатия с потерями является битрейт, определяющий степень сжатия файла и, соответственно, качество. Различают сжатия с постоянным битрейтом (англ. Constant BitRate - CBR), переменным битрейтом (англ. Variable BitRate - VBR) и усереденим битрейтом (англ. Average BitRate - ABR).

Наиболее распространенными форматами сжатия с потерями являются: AAC, ADPCM, ATRAC, Dolby AC-3, MP2, MP3, Musepack Ogg Vorbis, WMA и другие.

Формат сжатия звука MP3

MPEG-1 Audio Layer 3 Расширение файла: .mp3 Тип MIME: audio/mpeg Тип формата: Audio

MP3 (более точно, англ. MPEG-1/2/2.5 Layer 3 (но не MPEG-3) - третий формат кодирования звуковой дорожки MPEG) - лицензируемый формат файла для хранения аудио-информации.

На данный момент MP3 является самым известным и популярным из распространённых форматов цифрового кодирования звуковой информации с потерями. Он широко используется в файлообменных сетях для оценочной передачи музыкальных произведений. Формат может проигрываться практически в любой популярной операционной системе, на практически любом портативном аудио-плеере, а также поддерживается всеми современными моделями музыкальных центров и DVD-плееров.

В формате MP3 используется алгоритм сжатия с потерями, разработанный для существенного уменьшения размера данных, необходимых для воспроизведения записи и обеспечения качества воспроизведения очень близкого к оригинальному (по мнению большинства слушателей), хотя меломаны говорят об ощутимом различии. При создании MP3 со средним битрейтом 128 кбит/с в результате получается файл, размер которого примерно равен 1/10 от оригинального файла с аудио CD. MP3 файлы могут создаваться с высоким или низким битрейтом, который влияет на качество файла-результата.

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

MP3 разработан рабочей группой института Фраунгофера (нем. Fraunhofer-Institut f?r Integrierte Schaltungen) под руководством Карлхайнца Бранденбурга и университета Эрланген-Нюрнберг в сотрудничестве с AT&T Bell Labs и Thomson (Джонсон, Штолл, Деери и др.).



Основой разработки MP3 послужил экспериментальный кодек ASPEC (Adaptive Spectral Perceptual Entropy Coding). Первым кодировщиком в формат MP3 стала программа L3Enc, выпущенная летом 1994 года. Спустя один год появился первый программный MP3-плеер - Winplay3.

При разработке алгоритма тесты проводились на вполне конкретных популярных композициях. Основной стала песня Сюзанны Веги «Tom"s Diner». Отсюда возникла шутка, что «MP3 был создан исключительно ради комфортного прослушивания любимой песни Бранденбурга», а Вегу стали называть «мамой MP3».

Описание формата

В этом формате звуки кодируются частотным образом (без дискретных партий); есть поддержка стерео, причём в двух форматах (подробности - ниже). MP3 является форматом сжатия с потерями, то есть часть звуковой информации, которую (согласно психоакустической модели) ухо человека воспринять не может или воспринимается не всеми людьми, из записи удаляется безвозвратно. Степень сжатия можно варьировать, в том числе в пределах одного файла. Интервал возможных значений битрейта составляет 8 - 320 кбит/c. Для сравнения, поток данных с обычного компакт-диска формата Audio-CD равен 1411,2 кбит/c при частоте дискретизации 44100 Гц.

MP3 и «качество Audio-CD»

В прошлом было распространено мнение, что запись с битрейтом 128 кбит/c подходит для музыкальных произведений, предназначенных для прослушивания большинством людей, обеспечивая качество звучания Audio-CD. В действительности всё намного сложнее. Во-первых, качество полученного MP3 зависит не только от битрейта, но и от кодирующей программы (кодека) (стандарт не устанавливает алгоритм кодирования, только описывает способ представления). Во-вторых, помимо превалирующего режима CBR (Constant Bitrate - постоянный битрейт) (в котором, проще говоря, каждая секунда аудио кодируется одинаковым числом бит) существуют режимы ABR (Average Bitrate - усредненный битрейт) и VBR (Variable Bitrate - переменный битрейт). В-третьих, граница 128 кбит/c является условной, так как она была «изобретена» в эпоху становления формата, когда качество воспроизведения звуковых плат и компьютерных колонок как правило было ниже, чем в настоящее время.



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

Наверх