Кодеки MP3
Тип программ, необходимых для преобразования форматов файлов. Наиболее распространённые кодеки MP3:
mp3PRO-codec (использует частотное преобразование SBR).
LAME-codec
fraunhofer-codec
Оцифрованный звук с высоким качеством требует огромных затрат дисковой памяти. Попытки сократить объем файлов, используя стандартные архиваторы, не приводят к значительному выигрышу из-за специфичности звуковых данных. Тем не менее, добиться довольно значительного уровня сжатия аудиоинформации удается при использовании специальных методов, основанных на анализе структуры данных и последующим сжатием с некоторыми потерями.
Реальная возможность обработки звука, сравнимых по качеству с существующими аналоговыми примерами, появилась только в конце 80-х годов. В 1988 году Международной организацией стандартов ISO (International Standards Organization) был сформирован комитет MPEG (Moving Pictures Expert Group, группа экспертов в области движущихся изображений), основной задачей которого является разработка стандартов кодирования подвижных изображений, звука и их комбинации. За десять лет своего существования комитет выработал ряд стандартов по данному вопросу. В результате обобщив обширные исследования в этой области, был рекомендован ряд специфических форматов для хранения данных, отличных по качеству результатов и скорости потока данных.
В настоящее время наиболлее распространены три стандарта хранения видеоданных: MPEG-1, MPEG-2 и MPEG-4. В рамках первых двух форматов существуют также форматы хранения звуковой информации – Layer-1, Layer-2 и Layer-3. Эти три звуковых формата определены для MPEG-1 и незначительными расширениями используются в MPEG-2. Все три формата похожи друг на друга, но используют различные уровни компромисса между сжатием и сложностью. Уровень Layer-1 - наиболее простой, не требует значительных затрат на сжатие, но и дает незначительную степень сжатия. Уровень Layer-3 – наиболее трудоемкий и обеспечивает самое лучшее сжатие. В последнее время этот формат завоевал огромную популярность. Его часто называют MP3. Такое название связано с расширением звуковых файлов, хранящихся в этом формате.
Основанная идея, на которой основаны все методики сжатия аудио сигнала с потерями, – пренебрежение тонкими деталями звучания оригинала, лежащие вне пределов которые воспринимает человеческое ухо. Здесь можно выделить несколько моментов.
Уровень шума. Звуковое сжатие базируется на простом факте – если человек находиться рядом с громко воющей сиреной, то вряд ли он услышит разговор стоящих неподалеку людей. Причем это происходит не оттого, что человек обращает большое внимание на громкий звук, а в большей степени оттого, что человеческое ухо фактически теряет звуки, лежащие в том же диапазоне частот, что и более громкий звук. Этот эффект носит название маскирующего, он изменяется с различием в громкости и частоте звука.
Вторым моментом является деление полосы звуковых частот на подполосы, каждая из которых далее обрабатывается отдельно. Программа кодирования выделяет самые громкие звуки в каждой полосе и использует эту информацию для определения приемлемого уровня шума для этой полосы. Лучшие программы кодирования учитывают также влияние соседних полос. Очень громкий звук в одной полосе может повлиять на маскирующий эффект и на близлежащие полосы.
Еще одним моментом кодирования является использование психоакустической модели, опирающейся на особенности человеческого восприятия звука. Сжатие с использованием этой модели основано на удалении заведомо неслышимых частот с более тщательным сохранением звуков, хорошо различаемых человеческим ухом. К сожалению, здесь не может быть точных математических формул. Восприятие звука человеком – сложный, до конца не изученный процесс, поэтому выбор методов сжатия выполняется на основе анализирующего прослушивания и сравнения по-разному сжатых звуков группами экспертов. Зато здесь имеются практически неограниченные возможности в сфере улучшения психоакустических моделей. Большинство существующих алгоритмов для кодировки человеческого голоса основано на высокой предсказуемости такого сигнала – универсальные алгоритмы сжатия MPEG с переменным успехом пытаются применить этот прием.
Еще одним приемом сжатия является использование так называемого совмещенного стерео. Известно, что слуховой аппарат человека может определить направление лишь средних частот – высокие и низкие звучат как бы отдельно от источника. Значит, эти фоновые частоты можно кодировать в моно сигнал. Кроме всего этого для сжатия используется различие в сложности потоков в каналах. Например, если в правом канале какое-то время полная тишина, это "зарезервированное" место используется для повышения качества левого канала или туда "впихиваются" необходимые биты, не влезшие в поток чуть раньше. На последней стадии сжатия используется алгоритм сжатия Хаффмана. Этот процесс позволяет улучшить степень сжатия для относительно однородных сигналов, которые плохо сжимаются с помощью описанных выше приемов. На основе описанных идей строятся алгоритмы сжатия, позволяющие достигать степени компрессии 10:1 или выше практически без потери в качестве звучания. При кодировании задают требуемый уровень компрессии, а алгоритмы сжатия добиваются требуемого значения уровня сжатия за счет потери качества. Требуемый уровень сжатия обычно указывают в виде величины потока данных (bit rate), измеряемого в Кбит/сек.
Термин "bit rate" обозначает количество битов передаваемой информации в секунду. На русский язык этот термин переводиться по-разному в различных источниках. В последнее время часто вместо формального перевода употребляют новое для русского языка слово "битрейт". Вариантами перевода также является следующее: "ширина потока данных", "сложность потока битов", "скорость потока", "битовая частота". Иногда для звуковых файлов этот же параметр называют степенью сжатия файла. Например, говорят, что файл сжат до 128 Кбит/с. Дело в том, что величина битрейта напрямую связана с физическим размером звукового файла в расчете на одну секунду звучания.
Все форматы сжатия семейства MPEG используют высокую избыточность информации в изображениях, разделенных малым интервалом времени. Между двумя соседними кадрами обычно изменяется только малая часть сцены – например, происходит плавное смещение небольшого объекта на фоне фиксированного заднего плана. В этом случае полная информация о сцене сохраняется выборочно – только для опорных изображений. Для остальных кадров достаточно передавать разностную информацию: о положении объекта, направлении и величине его смещения, о новых элементах фона, открывающихся за объектом по мере его движения. Причем эти разности можно формировать не только по сравнению с предыдущими изображениями, но и с последующими (поскольку именно в них по мере движения объекта открывается ранее скрытая часть фона).
Форматы сжатия семейства MPEG сокращают объем информации следующим образом:
Устраняется временная избыточность видео (учитывается только разностная информация).
Устраняется пространственная избыточность изображений путем подавления мелких деталей сцены.
Устраняется часть информации о цветности.
Повышается информационная плотность результирующего цифрового потока путем выбора оптимального математического кода для его описания.
Форматы сжатия MPEG сжимают только опорные кадры – I-кадры (Intra frame – внутренний кадр). В промежутки между ними включаются кадры, содержащие только изменения между двумя соседними I-кадрами – P-кадры (Predicted frame – прогнозируемый кадр). Для того чтобы сократить потери информации между I-кадром и P-кадром, вводятся так называемые B-кадры (Bidirectional frame – двунаправленный кадр). В них содержится информация, которая берется из предшествующего и последующего кадров. При кодировании в форматах сжатия MPEG формируется цепочка кадров разных типов. Типичная последовательность кадров выглядит следующим образом:
I B B P B B I B B P B B I B B ...
Соответственно, последовательность кадров в соответствии с их номерами будет воспроизводиться в следующем порядке:
1 4 2 3 7 6 5 ...
Do'stlaringiz bilan baham: |