Методы, используемые для сжатия цифрового звука: Audio MPEG, PASC , ATRAC

Методы, используемые для сжатия цифрового звука

Наиболее известны 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 [Digital Compact Cassette]) разделяет цифровой сигнал на промежутки равного размера и удаляет часть информации (уменьшая поток до 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).