Метод сжатия звука Ogg Vorbis. Сжатие звука

Прочие модели 01.08.2019
Прочие модели

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

Реальная возможность обработки звука, сравнимых по качеству с существующими аналоговыми примерами, появилась только в конце 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), измеряемого в Кбит/сек.

В качестве начального шага обработки изображения форматы сжатия MPEG-1 и MPEG-2 разбивают опорные кадры на несколько равных блоков, над которыми затем производится дискетное косинусное преобразование (DCT). По сравнению с MPEG-1, формат сжатия MPEG-2 обеспечивает лучшее разрешение изображения при более высокой скорости передачи видео данных за счет использования новых алгоритмов сжатия и удаления избыточной информации, а также кодирования выходного потока данных. Также формат сжатия MPEG-2 дает возможность выбора уровня сжатия за счет точности квантования. Для видео с разрешением 352х288 пикселей формат сжатия MPEG-1 обеспечивает скорость передачи 1,2 – 3 Мбит/с, а MPEG-2 – до 4 Мбит/с.

По сравнению с MPEG-1, формат сжатия MPEG-2 обладает следующими преимуществами:

  • MPEG-2 обеспечивает масштабируемость различных уровней качества изображения в одном видеопотоке.
  • В формате сжатия MPEG-2 точность векторов движения увеличена до 1/2 пикселя.
  • Пользователь может выбрать произвольную точность дискретного косинусного преобразования .
  • В формат сжатия MPEG-2 включены дополнительные режимы прогнозирования.

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

Диапазон скоростей передачи данных, который поддерживает формат сжатия видео изображений MPEG 4, гораздо шире, чем в MPEG 1 и MPEG 2 . Дальнейшие разработки специалистов направлены на полную замену методов обработки, используемых форматом MPEG 2. Формат сжатия видео изображений MPEG 4 поддерживает широкий набор стандартов и значений скорости передачи данных. MPEG 4 включает в себя методы прогрессивного и чересстрочного сканирования и поддерживает произвольные значения пространственного разрешения и скорости передачи данных в диапазоне от 5 кбит/с до 10 Мбит/с. В MPEG 4 усовершенствован алгоритм сжатия , качество и эффективность которого повышены при всех поддерживаемых значениях скорости передачи данных.


Назад К cодержанию Вперёд

Общепризнанные методы сжатия данных, такие, как 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). Более изощренные методы, такие как -правило и -правило, широко применяются на практике и входят во многие международные стандарты сжатия.

Некоторые методы сжатия звуковых данных (доп. к Лекции 2)

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

    Кодирование данных с потерями (lossy coding). Цель такого кодирования - любыми способами добиться схожести звучания восстановленного сигнала с оригиналом при как можно меньшем объеме упакованных данных. Это достигается путем использования различных алгоритмов «упрощающих» оригинальный сигнал (выкидывая из него «ненужные» слабослышимые детали), что приводит к тому, что декодированный сигнал фактически перестает быть идентичным оригиналу, а лишь похоже звучит.

Методов сжатия, а также программ, реализующих эти методы, существует много. Наиболее известными являются MPEG-1 Layer I,II,III (последним является всем известный MP3), MPEG-2 AAC (advanced audio coding), Ogg Vorbis, Windows Media Audio (WMA), TwinVQ (VQF), MPEGPlus, TAC, и прочие.

В среднем, коэффициент сжатия, обеспечиваемый такими кодерами, находится в пределах 10-14 (раз).

Некоторые форматы звуковых файлов :

Формат AU . Этот простой и распространенный формат на системах Sun и NeXT (в последнем случае, правда, файл будет иметь расширение SND). Файл состоит из короткого служебного заголовка (минимум 28 байт), за которым непосредственно следуют звуковые данные. Широко используется в Unix-подобных системах и служит базовым для Java-машины.

Формат WAVE (WAV). Стандартный формат файлов для хранения звука в системе Windows. Является специальным типом другого, более общего формата RIFF (Resource Interchange File Format); другой разновидностью RIFF служат видеофайлы AVI. Файл RIFF составлен из блоков, некоторые из которых могут, в свою очередь, содержать другие вложенные блоки; перед каждым блоком данных помещается четырехсимвольный идентификатор и длина. Звуковые файлы WAV, как правило, более просты и имеют только один блок формата и один блок данных. В первом содержится общая информация об оцифрованном звуке (число каналов, частота дискретизации, характер зависимости громкости и т.д.), а во втором - сами числовые данные. Каждый отсчет занимает целое количество байт (например, 2 байта в случае 12-битовых чисел, старшие разряды содержат нули). При стереозаписи числа группируются парами для левого и правого канала соответственно, причем каждая пара образует законченный блок - для нашего примера его длина составит 4 байта. Такая, казалось бы, излишняя структурированность позволяет программному обеспечению оптимизировать процесс передачи данных при воспроизведении, но, как в подобных случаях всегда бывает, выигрыш во времени приводит к существенному увеличению размера файла.

Формат MP3 (MPEG Layer3) . Это один из форматов хранения аудиосигнала, позднее утвержденный как часть стандартов сжатого видео. Природа получения данного формата во многом аналогична уже рассмотренному нами ранее сжатию графических данных по технологии JPEG. Поскольку произвольные звуковые данные обратимыми методами сжимаются недостаточно хорошо, приходится переходить к методам необратимым: иными словами, базируясь на знаниях о свойствах человеческого слуха, звуковая информация “подправляется” так, чтобы возникшие искажения на слух были незаметны, но полученные данные лучше сжимались традиционными способами. Это называется адаптивным кодированием и позволяет экономить на наименее значимых с точки зрения восприятия человека деталях звучания. Приемы, применяемые в MP3, непросты для понимания и опираются на достаточно сложную математику, но зато обеспечивают очень значительный эффект сжатия звуковой информации. Успехи технологии MP3 привели к тому, что ее применяют сейчас и во многих бытовых звуковых устройствах, например, плеерах и сотовых телефонах.

Формат MIDI. Название MIDI есть сокращение от Musical Instrument Digital Interface, т.е. цифровой интерфейс для музыкальных инструментов. Это довольно старый (1983 г.) стандарт, объединяющий разнообразное музыкальное оборудование (синтезаторы, ударные, освещение). MIDI базируется на пакетах данных, каждый из которых соответствует некоторому событию, в частности, нажатию клавиши или установке режима звучания. Любое событие может одновременно управлять несколькими каналами, каждый из которых относится к определенному оборудованию. Несмотря на свое изначальное предназначение, формат файла стал стандартным для музыкальных данных, которые при желании можно проигрывать с помощью звуковой карты компьютера безо всякого внешнего MIDI-оборудования. Главным преимуществом файлов MIDI является их очень небольшой размер, поскольку это не детальная запись звука, а фактически некоторый расширенный электронный эквивалент традиционной нотной записи. Но это же свойство одновременно является и недостатком: поскольку звук не детализирован, то разное оборудование будет воспроизводить его по-разному, что в принципе может даже заметно исказить авторский музыкальный замысел.

Формат MOD. Представляет собой дальнейшее развитие идеологии MIDI-файлов. Известные как “модули программ воспроизведения”, они хранят в себе не только “электронные ноты”, но и образцы оцифрованного звука, которые используются как шаблоны индивидуальных нот. Таким способом достигается однозначность воспроизведения звука. К недостаткам формата следует отнести большие затраты времени при наложении друг на друга шаблонов одновременно звучащих нот.

Каждому кто хоть немного пользовался компьютером, знакомо слово «архиватор». Кому незнакомо, поясним, что архиватором называется программа, предназначенная для сжатия/разжатия файлов. Среди наиболее известных являются WinZip и WinRar. Они сжимают файлы в одном случае на несколько процентов, в другом - в разы. Все зависит от типа файла. Исполняемые файлы уменьшаются на незначительную величину, зато текстовые теряют свой «вес» сразу в несколько раз. Однако такие методы сжатия не подходят к звуковым файлам по ряду причин. Прослушать такой файл можно только после его распаковки. Но тогда теряется весь смысл сжатия. А в бытовых плеерах это вообще становится невозможным. Правда, есть еще возможность использования оперативной памяти, но она настолько дорога, что «овчинка выделки не стоит». Вторая причина кроется в том, что даже после сжатия звукового файла особого выигрыша в освободившемся пространстве не получится. Если взять WAV-файл размером 44 Мб, то после Упаковки его с помощью архиватора WinZip получится файл размером 34 Мб. Как вы заметили, «бонус» в 10 Мб не впечатляет. К тому же с никуда не Девшимися проблемами распаковки.
Поэтому для звуковых файлов применяют немного иные способы сжатия, идним из них (наверное, самым распространенным) является сжатие с потерями (Loss compression). Принцип его построен на особенностях человеческого восприятия той или иной среды (звука, изображения). Очень понятно это объясняется на примере цифровой фотографии. Все знают, что она состоит из множества точек. Каждая точка имеет свой определенный цвет. ^0 физиологически глаз человека не способен воспринимать все эти цвета, показывать вам каждую точку по отдельности (даже увеличив в разы), многие из них вы вообще не увидите. Дальтонизм тут ни при чем. Берется зрение обычного здорового человека. Так вот, если из фотографии изъять все эти невидимые точки, их количество заметно поубавится. Соответственно, как вы понимаете, уменьшится и размер фотографии. На этом принципе происходит кодирование и видеофайлов.
Так же и с нашим слухом. Не все звуки мы способны слышать, тем не менее они записываются в файл. Получается, что они впустую занимают место на диске. После удаления этих «глухих» мест файл существенно «похудеет». Например, если в звуке одновременно присутствует очень мощный сигнал (грохот пушек) и тут же находит место более тихий (выстрел из пистолета с глушителем), то соответственно он все равно не будет услышан, и его можно спокойно удалить, не изменяя общей картины.
Также сразу же после громкого звука человеческое ухо резко понижает свою чувствительность к тихому звуку. Например, каждый когда-нибудь испытал звон в ушах после того, как у вас под ухом взорвали хлопушку или тому подобное. Ведь после этого вы не слышали даже то, что вам говорят? Еще учитывается невосприимчивость большинства людей к звукам, находящимся в определенном частотном диапазоне.
Обычно человек слышит в диапазоне от 20 до 2000 Гц. Все это относится к адаптивному кодированию. Благодаря ему достигается до десятикратного уменьшения размера файла.

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

Существует два различных подхода к сжатию аудиоинформации. Первый называется сжатием без потерь ( 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 представляет способ обработки стереосигнала – давайте остановимся на этом вопросе подробнее.



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

Наверх