Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема 6-глоб.doc
Скачиваний:
9
Добавлен:
17.08.2019
Размер:
175.1 Кб
Скачать

Форма wave

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

Блок FMT, содержит основную информацию об оцифрованном звуке. Большей частью эти поля тривиальны. Почти все файлы WAVE в Интернете имеют формат PCM. Число каналов (NUMBER OF CHANNELS) и частота дискретизации (SAMPLES PER SECOND) - основные параметры звука. Среднее число байт в секунду (AVERAGE NUMBER OF BYTES PER SECOND) приводится, чтобы помочь программе воспроизведения выбрать подходящие размеры для буферов. Многие звуковые системы буферизуют в каждый момент времени одну секунду звука.

Хранение данных pcm wave

Фактические данные PCM имеют достаточно очевидную структуру. Например, предположим, вы имеете дело со стереофоническим звуком, хранящим каждое дискретное значение в 20 битах.

Каждое измерение, занимающее 20 бит, хранится в трех байтах. Так как мы используем два канала, дискретные значения появляются парами: первое для левого канала, второе - для правого. Группа значений для каждого канала образует блок. Значение выравнивания в блоке формата определяет полный размер блока (шесть в нашем примере); это значение приводится, чтобы помочь программам чтения WAVE оптимизировать передачу данных.

Чтобы дополнить 20-битовое измерение до 24 и поместить его в три байта, в младший разряд добавляются четыре нулевых бита. Это позволяет программе чтения обрабатывать результат, как 24-разрядные данные. Аналогично 12-битовые данные могут обрабатываться, как 16-разрядные.

Вы также должны знать, как обработать положительные и отрицательные значения. Звуковые данные всегда имеют знак - либо положительный, либо отрицательный. Один из подходов работы с числами со знаками известен как двоичное дополнение (TWO'S COMPLEMENT). Он представляет нулевое значение звука в виде байта 0. Другой подход использует смещение (OFFSET). Так, при работе с однобайтовыми числами можно использовать смещение 128. Тогда нулевое значение звука будет соответствовать 128. Метод двоичного дополнения часто называют "форматом со знаком", в то время как метод смещения известен как "формат без знака".

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

Типы дополнительных блоков

WAVE поддерживает, хотя и не часто использует, разнообразные дополнительные блоки. Блок FACT хранит дополнительную информацию о сжатых звуковых данных, например, общее число дискретных значений в файле. Блок CUE позволяет отмечать определенные позиции в потоке звуковых данных. Эта информация оказывается полезной в том случае, кода звуковой файл должен быть синхронизирован с другими событиями, такими как последовательный показ изображений или фильм. Блок PLST указывает, в каком порядке будут воспроизводиться разные части звукового файла. Другие блоки позволяют включать текстовую информацию.

WAVE поддерживает некоторые формы сжатых данных, но ни одна из них часто не используется. IBM зарегистрировала коды форматирования для µ-LAW, A-LAW и сжатия ADPCM. Кроме того, файлы WAVE PCM могут заменять одиночный блок DATA, содержащий данные PCM, блоком LIST. Блок LIST имеет ту же структуру, что и блок RIFF, и содержит код формы и набор других блоков. Файлы WAVE используют блок LIST с кодом формы WAVL для хранения закодированных пауз PCM. Подблоки - блоки данных, содержащие в обычном виде данные PCM и блоки SLNT, указывая протяженность пауз. Данные блока SLNT - одиночное 32-разрядное целое число, указывающее число дискретных отсчетов, которые оно замещает.

MIDI

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

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

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

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

Телеконференция alt.binaries.sound.midi распространяет музыкальные файлы в формате MIDI. Связанный с ней FAQ предоставляет общую информацию относительно файлов MIDI и программного обеспечения.

MOD

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

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

Главный недостаток состоит в том, что трансляция высококачественного оцифрованного звука на основании информации файла MOD требует значительного времени. Так как в любой момент для моделирования одновременного воспроизведения нескольких нот может потребоваться наложение десятка или даже больше шаблонов друг на друга. Такое интенсивное манипулирование данными усложняет задачу создания программ для воспроизведения файлов MOD. Так как файл MOD может быть рассчитан на часовое звучание музыки, нельзя сначала перевести данные в формат оцифрованного звука (например, WAVE или AU), а затем воспроизводить результат. Необходимо транслировать звук в реальном времени.

Телеконференция alt.binaries.sounds.mods распространяет музыкальные файлы в формате MOD. Связанный с ней FAQ предоставит общую информацию относительно файлов MOD и программного обеспечения.

IFF

INTERCHANGE FILE FORMAT (IFF) был первоначально разработан ELECTRONIC ARTS для систем AMIGA. В настоящее время он также используется на компакт-дисках CD-I. IFF - во многом сходный с RIFF структурированный формат.

Файл IFF - одиночный блок FORM, который организован подобно блоку RIFF. Звуковые файлы представляются в форме 8SVX (восьмиразрядный дискретизированный голос), которая содержит блок VHDR с информацией о звуке и блок BODY, содержащий байты данных в формате со знаком.

Форма 8SVX была разработана для хранения дискретизированных музыкальных инструментальных звуков. Нота может звучать достаточно долго. Блок VHDR определяет две части звука, начальный раздел, который воспроизводится только один раз, и повторяющийся раздел, который может быть повторен столько раз, сколько потребуется.

AIFF

AUDIO INTERCHANGE FILE FORMAT (AIFF) используется на машинах SGI и MACINTOSH. Во многом он напоминает WAVE, однако в отличие от него этот формат позволяет использовать оцифрованный звук и шаблоны (см. MOD). Также популярность получила известная как AIFC или AIFF-C-версия со сжатием. Более полную документацию можно найти в каталоге PUB/AUDIO анонимного FTP-сервера ftp.cwi.nl. Спецификация aiff-c доступна в каталоге sgi анонимного ftp-сервера ftp.sgi.com.

ВИДЕОТЕХНОЛОГИЯ

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

Сжатие в реальном времени

     Работа с видеоданными не свободна от всех сложностей программирования в реальном времени. Игровое кино, поддерживающее весьма скромную скорость, десять кадров в секунду, требует, чтобы каждый кадр обновлялся на экране не менее чем за одну десятую секунды. Если же для воспроизведения какого-либо из фрагментов потребуется больше времени, то изображение начнет «дергаться». При хранении данных в несжатом виде изображение 360х240 пикселов, использующее 16 бит на пиксел, потребует для чтения и воспроизведения на экране скорости, превышающей один мегабайт в секунду. Хуже того, эта скорость должна поддерживаться все время воспроизведения фильма. То есть, за десять минут должно быть передано более 600 МБайт данных, что эквивалентно целому диску CD-ROM!      Из-за того, что компьютерные фильмы содержат так много данных, они обычно распространяются на дисках CD-ROM. К сожалению, дисководы CD-ROM достаточно медлительны. Таким образом, без сжатия не обойтись. Однако здесь тоже есть свои подводные камни. Сжатые данные более компактны, а потому, конечно, будут быстрее считаны с диска, однако не следует забывать, что, прежде чем вывести на экран, процессор должен их распаковать. Плавное воспроизведение видеоданных требует определенной величины коэффициента сжатия. При слишком сильном сжатии процессор не будет успевать распаковывать данные, при недостаточном — данные не будут считываться с требуемой скоростью. |      На практике достичь оптимального сжатия можно двумя путями, совершенствуя либо аппаратные, либо программные средства. Первый путь состоит в использовании специальных управляющих декомпрессией аппаратных средств. Видеопроцессоры поддерживают высокоскоростное сжатие и декомпрессию, не загружая центральный процессор. Некоторые из них при распаковке данных и выводе их на экран даже поддерживают специальные эффекты (увеличение четкости изображения (sharpening), клиширование (dithering) и плавное увеличение интенсивности изображения (fades)). Второй подход состоит в использовании специализированных методов программного сжатия.

Сжатие в пространстве и времени

     Так как в настоящее время аппаратные средства декомпрессии видеоданных еще не получили достаточно широкого распространения, на первый план выходят методы сжатия, обеспечиваемые различными программными средствами.      Сжатие видеоданных начиналось с использования тех приемов, которые и поныне распространены при работе с графикой. Действительно, на заре появления видео каждый кадр сжимался с помощью базовых методов сжатия неподвижных изображений. Однако более эффективное сжатие достигается при одновременной обработке данных нескольких кадров. Один из приемов, используемых при работе с видеоданными, заключается в вычислении (последовательных) разностей (differencing). Простейший пример — это простое вычитание данных последующего кадра из предыдущего и сжатие получившихся разностей. Как правило, изображения во многом схожи, в результате чего большие фрагменты изображения кадра будут давать нулевую разность. Вычитание просто в исполнении. Однако в ряде случаев оно оказывается бесполезным. Например, при медленном панорамировании детально проработанной сцены почти каждый пиксел при переходе от кадра к кадру будет менять свое место. В результате вычитания данных в этом случае вы получите совсем маленький выигрыш. Более действенной техникой вычисления разностей является предсказание движения (motion prediction). При таком подходе программа кодирования ищет перемещающиеся блоки пикселов и кодирует только координаты такого блока и его перемещение. Предсказание движения очень эффективно при сжатии данных, воспроизводящих медленно изменяющуюся панораму, так как в результате приходится хранить в основном лишь небольшие значения смещений.      Однако насколько просто использовать гипотезу движения при распаковке данных, настолько сложно реализовать ее при сжатии. По существу, программа кодирования должна выбирать маленькие блоки пикселов, перемещающиеся куда-либо в следующем кадре. В результате некоторые лучшие алгоритмы сжатия видеоданных ассиметричны (asymmetric).      Ассиметричный алгоритм требует существенно больших усилий для сжатия, чем для распаковки, так как с последней при работе с видеоданными возникает меньше проблем. Профессиональные разработчики видеопродукции используют высококлассные системы, которые за счет скорости работы, объемов памяти и дополнительной аппаратуры обеспечивают возможность комфортного редактирования вовсе без всякого сжатия. Они сжимают видеоданные только после завершения работы над материалом и их не волнует, уйдет ли на сжатие несколько часов или даже дней. Они знают что созданные ими видеоданные на используемых их заказчиками системах средней мощности будут воспроизводиться с достаточной для нормального просмотра скоростью.      Лучшие методы сжатия видеоданных комбинируют метод вычисления разностей с подходами, используемыми при сжатии изображения. Конечно, первый кадр фильма не может использовать метод вычисления разностей, поэтому всегда будет по крайней мере один ключевой кадр (key frame), не требующий от вас знания предыдущего кадра для его декодирования. Остальные кадры называются разностными кадрами (difference frames), так как они кодируют разницу между текущим и предыдущим кадрами, а потому не могут быть использованы в отрыве от контекста, сами по себе.      На первый взгляд может показаться, что только первый кадр будет ключевым, но на практике это не так. По всей длине фильма специально распределяются ключевые кадры. Некоторые из них— естественные ключевые кадры (natural key frames) — это кадры, настолько отличающиеся от предыдущих, что не имеет смысл оценивать разницу между ними. Такие кадры могут возникать в результате монтажа видеоматериала, например при смене сцены или точки съемки. Наличие таких ключевых кадров упрощает произвольный доступ к видеоданным. Если пользователь решил начать просмотр фильма с середины, вряд ли он захочет ждать, пока программа распаковки вычислит все разности с самого начала.      Ключевые кадры помогают не только в этом. Программное обеспечение рабочих станций на персональных компьютерах не всегда может поддерживать необходимую скорость распаковки данных. На практике такие программы распаковки следят за тем, когда должен появиться следующий ключевой кадр, и в тот момент, когда скорость декомпрессии перестает поддерживаться на нужном уровне, они сразу переходят к тому кадру, который должен идти по времени. Этот прием позволяет программам распаковки поддерживать разумную синхронизацию даже на медленных машинах. Оцифрованное видео также начинает использоваться в широковещании. Некоторые спутниковые системы используют сжатые видеоданные, а системы нового поколения телевидения высокой четкости (HDTV, High-Definition Television), видимо, будут во многом похожи на MPEG. Цифровое телевидение будет иногда терять данные вследствие замирания спутникового сигнала. При потере кадра последовательность разностных кадров становится бесполезной. При таком раскладе телевидение не сможет продолжать декодирование сигнала до тех пор, пока не будет найден следующий ключевой кадр. Поэтому частота ключевых кадров (несколько кадров в секунду) будет существенным фактором успешного широковещания.

Ограничение скорости

     Сжатие видеоданных, прежде всего, предназначено для того, чтобы вы могли на том же пространстве хранить высококачественные видеоизображения большего размера. Кроме того, оно позволяет достаточно быстро читать данные с жесткого диска или диска CD-ROM. Однако для обеспечения этого к сжатию предъявляется новое требование: небольшой размер должны иметь не только все данные в целом, но и данные каждого кадра. Это связано с тем, что большие кадры могут нарушить синхронизацию даже в том случае, если размер всего видеоматериала будет невелик.      В действительности вам не требуется делать каждый кадр маленьким. На практике программа воспроизведения считывает данные сразу нескольких кадров до того, как они понадобятся (так называемое упреждающее чтение). И если объем данных остальных кадров настолько мал, что компенсирует размер большого кадра, то это вполне допустимо и никак не повлияет на скорость. Ограничение скорости (rate limiting) — это гарантия того, что данные передаются с допустимой скоростью.      Обычно ограничения на скорость накладываются уже после того, как данные сжаты. Проверяется размер данных и выявляются те области, где сжатие недостаточно. Одна из применяемых здесь хитростей состоит в том, что ключевые и разностные кадры меняются местами. Разностные кадры, как правило, меньше ключевых, в результате чего происходит сглаживание «всплесков» размеров. Кроме того, можно отбросить некоторые визуальные данные. Сжатие с потерями, основанное на отбрасывании данных, не существенных для внешнего вида воспроизводимого изображения, дает хороший эффект. Наконец, вы можете просто опустить кадры, продублировав предыдущий (что приведет к нулевой разности) кадр или удвоив его продолжительность.

Замещаемые кодеки

     Наиболее популярные форматы видеофайлов до известной степени — лишь немного приукрашенные подсистемы сжатия и восстановления видеоданных, называемые кодеками (compression/decompression— codec). Программы, поддерживающие форматы QuickTime фирмы Apple и Video for Windows (VfW) фирмы Microsoft, обычно позволяют замещать кодеки. При этом может быть использован любой, поддерживающий базовые возможности кодек. Такой подход позволяет легко адаптировать основные форматы (и поддерживающее их программное обеспечение) к новым технологиям, как только те становятся доступными. Исходные релизы QuickTime и VfW содержали очень простые кодеки, которые постепенно заменялись более сложными. Даже самые прогрессивные технологии не стоят на месте, однако лучшие методы сжатия, разработанные на настоящий момент, требуют слишком сложных расчетов для того, чтобы их эффективно использовать на современных минисистемах (mid-range sistems). С увеличением возможностей компьютеров и разработкой дополнительного программного обеспечения появятся новые, более сложные кодеки.      Замещаемые кодеки хороши как для разработчиков программного обеспечения, так и для пользователей, однако они создают определенные сложности разработчикам видеопродукции. Так как разные пользователи могут иметь разнообразные кодеки, разработчикам сложно выбрать для сжатия видеоданных такой кодек, который и обеспечивал бы эффективную работу и был бы широко доступен. Некоторые производители видеопродукции предоставляют вместе с фильмами свои кодеки, которые могут быть просто включены пользователем в то программное обеспечение, которое он использует. Другие производители предоставляют их видеоматериалы в нескольких вариантах сжатия, что позволяет пользователю (или в некоторых случаях его программному обеспечению) выбрать подходящий вариант. Иногда производители просто используют только широкодоступные кодеки.

Звук и другие данные

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

AVI

     Video for Windows фирмы Microsoft использует другой вариант формата RIFF. Файлы Audio/Video Interleave (AVI, чередование аудио и видео) получили свое имя из-за того, что они перемежают звуковые и видеоданные. Для воспроизведения файла AVI прежде всего требуется проанализировать его заголовок: там хранится много различной информации, в том числе о частоте кадров и их размере. Программа затем извлекает данные видеокадра и связанного с ним звукового сопровождения, звук передается дальше на звуковую карту, а видеоданные распаковываются и воспроизводятся на экране.      Этот простой процесс осложняется многими факторами. Компьютер может не успевать распаковывать кадр в требуемое время, в результате чего сохранение синхронизации в некоторых случаях требует пропуска одного или даже нескольких кадров. Изредка во время распаковки видеоданных требуется пауза для воспроизведения звука. На практике программа воспроизведения AVI подбирает такое количество кадров в определенный момент времени, что может сохранять корректное воспроизведение звука, даже если необходимо пропустить один или несколько видеокадров.

Сведения об AVI

Имя Video for Windows, AVI. Audio/Video Interleave Format

Расширения • avi

Программы: Программа воспроизведения Video для Windows, Macintosh; простые мультфильмы AVI

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

QuickTime

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

Сведения о QuickTime

Имя Apple

Расширения .mov, .Moov

Программы: Программа воспроизведения для Windows; программа редактирования QuickTime для Macintosh

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

     Формат QuickTime значительно более гибок, чем AVI, поэтому, прежде чем пытаться разобраться с его структурой, рассмотрим варианты его использования.      QuickTime очень хорошо поддерживает видеоданные, так как этот формат создавался для работы с любой времязависимой информацией. Он может, например, использоваться для хранения одной фотографии. Часто в нем хранят аудиоданные. С другой стороны, фильмы в формате QuickTime могут содержать множество видео- и аудиодорожек, а также разнообразные критерии выбора дорожек и способов их комбинации. Так, например, фильм в этом формате может иметь несколько параллельных аудиодорожек, каждая из которых может озвучивать фильм на определенном языке. Кроме того, он может содержать времязависимые данные, не представляющие собой видео- или аудиоинформацию. Например, вы можете хранить песню на двух дорожках QuickTime, одна из которых будет содержать нотную информацию типа MIDI для управления внешним синтезатором, а другая текст песни для вывода его на экран во время воспроизведения звука.      Последний пример затрагивает еще одну возможность QuickTime. He все ноты музыкальной пьесы одинаковы по длительности, и, кроме того, если используется несколько инструментов, не все они одновременно переходят к новой ноте. Проще говоря, QuickTime не предполагает, что все события занимают один и тот же промежуток времени. В файле AVI единая на весь фильм частота показа видеоданных определяет время воспроизведения кадра. В QuickTime продолжительность событий на каждой дорожке может быть своей. Эта особенность удобна и для воспроизводства видеоматериала. Компьютерная анимация и видеофильмы часто среди прочего материала содержат и беззвучные изображения, которые могут в соответствии с замыслом автора достаточно долго оставаться на экране. Вместо того чтобы хранить многочисленные копии одного и того же изображения, фильм в формате QuickTime может хранить лишь одну копию и «растягивать» ее на требуемое время. QuickTime позволяет накладывать друг на друга несколько видеодорожек: так сложный фон может храниться в виде одного продолжительного кадра на одной дорожке, в то время как изменяющиеся кадры переднего плана будут храниться на другой.      QuickTime также пытается предоставлять достаточно гибкую среду для редактирования. Представьте себе высококачественную систему редактирования видеоматериала, позволяющую последовательно размещать данные с лазерного диска, создавать компьютерную анимацию и воспроизводить хранящееся на жестком диске видео, не копируя при этом все данные со столь разнообразных носителей в единый файл. Фактически, оставляя данные на месте, QuickTime позволяет вам создать из этих столь разнородных материалов фильм, используя для этого сложную систему ссылок.      QuickTime имеет трехуровневую структуру. Структура movie определяет номер и тип каждой дорожки и предоставляет информацию о фильме в целом. Дорожки задают продолжительность, последовательность и происхождение данных. Наконец, носители содержат реальные данные. Таким образом, вам не нужно копировать данные с лазерного диска для включения их в фильм, просто на соответствующей дорожке лазерный диск будет определен как носитель данных. После просмотра фильма соответствующая программа драйвера носителя будет считывать цифровое изображение прямо с лазерного диска. При редактировании фильма просто переставляются ссылки дорожек, то есть на самом деле нет необходимости копировать кадр. Точно так же дорожки могут быть добавлены к фильму или убраны из него, и при этом совсем необязательно еще раз копировать большое количество данных. Возможно, еще более важно, что QuickTime позволяет задействовать в одном фильме одновременно несколько различных видео- и аудиодорожек. Каждая звуковая дорожка может задавать различный уровень громкости, а видеодорожка может быть независимо скадрирована и повернута.      На практике, даже когда эти богатые возможности используются при редактировании и создании видеофильмов, окончательный результат объединяется в единый файл. На Macintosh этот единый файл имеет несколько иной формат, чем в других системах. Там фильм храниться в ветви ресурса, в то время как информация дорожки и информация носителя записаны в ветви данных. Преимущество такого подхода состоит в том, что размер данных о фильме совсем невелик, а потому ими могут легко обмениваться прикладные программы, в то время как более объемные данные дорожки и носителя остаются в исходном файле. Поскольку другие системы не могут обеспечить такой разветвленной структуры, и фильм, и дорожки, и носители копируются в единый большой файл.      Такая чрезвычайная гибкость дает большие преимущества не только производителям видео, но и конечным пользователям. Например, компьютерный фильм может содержать четыре видеодорожки. Первая — полная версия видеофильма с высокой разрешающей способностью. Вторая дает ссылку на одиночный кадр с того же носителя, который может быть использован в качестве беззвучной заставки к фильму. Третья дорожка— полноэкранная версия для предварительного просмотра, представляющая собой выжимки из полной версии. Она совсем незначительно увеличивает размер компьютерного фильма, поскольку использует те же данные, что и первая дорожка. Последняя дорожка представляет собой редуцированную версию для пользователей медленных компьютеров. Конечно, в каждый момент времени может воспроизводиться только одна из этих дорожек. Удобно, чтобы содержимое всех дорожек хранилось в одном и том же файле. Также фильм может содержать несколько разноязычных звуковых дорожек.

MPEG

     Комитет Motion Picture Experts Group (MPEG) был создан организацией ISO d 1988 г. специально для разработки стандартов высококачественного сжатия видеоматериала. За время своего существования комитет выработал ряд стандартов по данному вопросу. В результате, обобщив обширные исследования в этой области, он рекомендовал определенный набор методов сжатия аудио- и видеоданных. Эти общие методы используются теперь многими программами сжатия видеоматериала.      Комитет MPEG также определил ряд очень специфических форматов для сжатого видео- и аудиоматериала. Эти форматы различаются по качеству результатов и скорости передачи данных.

  • MPEG-1 Оригинальный формат видеоданных поддерживает телевизионное качество, поток данных только 200 килобайтов в секунду. Качество сопоставимо с видеозаписью VHS.

  • MPEG-2 Более новый стандарт поддерживает передачу высококачественного видео по высокоскоростным цифровым каналам (до 2,5 мегабайта в секунду). Он близко связан с HD TV (High Definition Television).

  • MPEG-4 Будущий стандарт предназначен для передачи низкокачественного видео по модемным линиям. Этот формат предназначен, прежде всего, для систем видеотелефона.

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

Сведения по MPEG

Имя MPEG

Расширения различные, см. табл. 1

Программы: Программы воспроизведения MPEG для Windows, Macintosh, Unix; FAQ MPEG

     Хотя видеоформат MPEG-1 предъявляет к скорости передачи данных требования, вполне согласующиеся с возможностями сегодняшних дисководов      CD-ROM, в мире персональных компьютеров он еще не получил широкого распространения. Причина проста: декодирование MPEG требует очень интенсивных вычислений. Конечно, программы декодирования MPEG со временем совершенствуются, но они все еще требуют использования очень мощных компьютеров. Однако аппаратные декодеры MPEG уже заняли прочное место в видеоиграх и промышленных прикладных программах и делают первые попытки проникнуть в мир персональных компьютеров.      Прежде чем перейти непосредственно к работе с MPEG, необходимо прояснить несколько общих фактов. Стандарт MPEG определяет ряд различных форматов. Стандарт MPEG-1 определяет один формат для кодируемого видеоматериала, три для кодируемого звука и формат системного потока (system stream) для объединения видео- и аудиоданных. MPEG-2 предоставляет такое же разнообразие форматов. Хотя весьма маловероятно, что вы встречались с видеоформатом MPEG-2, так как он, прежде всего, предназначен для вещания и мало подходит для настольных компьютеров.      Такое многообразие форматов ведет к еще более широкому разнообразию расширений файла. С помощью расширений зачастую пытаются указать определенный формат, но такие попытки из-за различной нумерации частей зачастую оканчиваются неудачей. Например, «2» в расширении может относиться как к видео MPEG-2, аудио Layer-2 или же может означать, что это просто аудиофайл. (Форматы видео, аудио и системных данных являются соответственно 1, 2 и 3 частями официальных стандартных документов.) К счастью, уровни звукового формата (layers) до некоторой степени совместимы. Многие программы декодирования поддерживают все три уровня, так что об этом можно не беспокоиться. В табл. 1 приведены некоторые расширения, с которыми вы можете встретиться.

Таблица 1. Расширения файла MPEG

Расширение Описание

. mpg Разнообразные

.mps MPEG-1 системный поток

.mpv MPEG-1 только видео

.mpa MPEG-1 звук Layer-1 или Layer-2

.mp2 MPEG-1 звук Layer-1 или Layer-2

.l3 MPEG-1 звук только Layer-3

.mls MPEG-1 системный поток

.miv MPEG-1 только видео

.mia MPEG-1 только звук

.m2s MPEG-2 системный поток

.m2v MPEG-2 только видео

.m2а MPEG-2 только звук

     Стандарты MPEG определяют способ хранения данных, но не указывают, каким образом были получены данные в этом формате. Кроме того, MPEG -это формат с потерями: то есть для обеспечения лучшего сжатия программы кодирования могут отбрасывать некоторые данные. Легко представить, сколько вариантов техники сжатия может быть предложено и сколь разнообразные по качеству данные могут быть получены с помощью программ кодирования, соблюдающих эти два условия.      Для кодирования видеоданных в формат MPEG нужны специализированные аппаратные средства, так как настольный компьютер не может обеспечить требуемую скорость вычислений. Если вы вынуждены использовать для сжатия данных в формат MPEG программное обеспечение, то вы должны будете сначала зафиксировать данные в некотором другом формате, а затем уже отдельно сжать их. Конечно, фиксация необработанных видеоданных — наилучший вариант, однако он требует большого количества памяти на жестком диске, что и ограничивает его использование. В результате фильмы MPEG иногда фиксируются в форматах QuickTime или AVI и затем преобразовываются в MPEG. Проблема состоит в том, что наиболее популярные кодеки QuickTime и AVI также используют сжатие с потерями. То есть к тому моменту, когда данные достигают формата MPEG, они дважды сжимаются с потерями, что может сильно ухудшить их качество.      Это же можно сказать и о программах декодирования. Программы декодирования могут для увеличения быстродействия использовать большое количество допущений, но эти допущения заметно сказываются на качестве видео- и аудиоматериала. Ускорение воспроизведения за счет преобразования в другие форматы с потерями также ухудшает качество изображения.      Все вышесказанное относится к сжатию MPEG как видео-, так и аудиоданных. Однако есть еще одно касающееся в основном звука замечание. Звуковые форматы кодируют блоки звуковых данных. Любая хорошая программа сжатия должна будет сначала собрать некоторые звуковые данные, затем проанализировать и закодировать их. Эта процедура вызывает короткую задержку между поступающим в компрессор и выходящим сжатым аудиопотоком. Такая задержка может быть особенно заметна для звука в формате Layer-3, поэтому его не используют при работе с интерактивными прикладными программами, например, при организации телеконференций и в телефонных системах.      Таким образом, MPEG предлагает превосходное сжатие и очень высокое качество. К сожалению, настольные компьютерные системы не имеют достаточной мощности для корректной обработки MPEG без дополнительных аппаратных средств. Однако постепенно это препятствие отступает, так как, во-первых, дополнительное аппаратное обеспечение MPEG становится все более доступными и, во-вторых, возрастает мощность процессоров, что делает более реальным использование для декодирования программного обеспечения.      Форматы видеоданных MPEG объединяют ряд уже известных вам приемов сжатия, которые вы уже видели в JPEG, с новыми методами разностного кодирования кадров. Точно так же, как сжатие графики JPEG по сравнению с реализованным в GIF подходом без потерь было существенным шагом вперед, кодирование звука с помощью MPEG по сравнению с РСМ или ц-Law вне всякого сомнения было большим достижением. MPEG отбрасывает данные, опираясь на ряд фактов, известных о человеческом слухе. Это очень сложный процесс, поэтому здесь изложена лишь основная идея. Как я уже говорил, стандарт MPEG не указывает точно, как данные были сжаты. Читая этот раздел, вы должны понимать, что о действиях программы кодирования я говорю лишь в общих словах. Каждая специфическая программа кодирования MPEG будет обрабатывать этот процесс немного по-своему, с соответствующими вариациями в качестве звука и эффективности сжатия. Независимо от того, каким образом работала программа кодирования, возникающие в результате данные будут расшифровываться одним и тем же путем. Уровень шума (Noise floor). Звуковое сжатие MPEG базируется на простом факте. Если вы стоите рядом с громко воющей сиреной, то вряд ли услышите, о чем говорят переходящие улицу прохожие. Исследователи обнаружили, что это происходит не только из-за того, что вы обращаете больше внимания на более громкий звук, но и от того, что ваши уши фактически теряют звуки, лежащие в том же диапазоне частот, что и значительно более громкий звук. Этот маскирующий эффект изменяется с различием в громкости и частоте двух звуков.      Один из основных способов сжатия звука базируется на уменьшении числа бит, используемых для дискретизации. Уменьшение числа бит эквивалентно добавлению шума к звуку. MPEG эксплуатирует маскирующий эффект (masking effect), будучи уверенным в том, что вы не услышите появляющийся в результате уменьшения числа бит шум. Если маскирующий эффект очень силен, MPEG может поднимать уровень шума, еще более уменьшая число бит, используемых для звука. Более слабый маскирующий эффект означает, что программа кодирования должна быть аккуратнее.

Подполоса (Subbands)

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

Психоакустическое моделирование (Psychoacoustic Modeling)

      Эта методика опирается на особенности человеческого восприятия звука. Психоакустические модели (Psychoacoustic models) — набор правил, в соответствии с которыми выбираются наиболее значимые подполосы. Сжимать звуковые данные можно, также полностью удаляя очень тихие подполосы и более тщательно сохраняя те подполосы, которые находятся ближе к центру диапазона звуков, воспринимаемых человеческим ухом.      К сожалению, нет таких математических формул, которые позволили бы точно определить оптимальный уровень шума для каждой подполосы. Восприятие человеком звуков — очень сложный, до сих пор до конца не понятый процесс. Комитет MPEG сделал заключение о том, подходят ли те или иные методы, на основе анализа результатов тестов прослушивания и сравнения группой экспертов по-разному сжатых звуков. Конечно, объективность таких тестов весьма спорна, однако, статистический анализ показал хорошую повторяемость результатов. Будущие усовершенствования таких психоакустических моделей улучшат качество звука и степень сжатия в новых программах кодирования MPEG.      К счастью, программы декодирования MPEG должны знать очень немного о том, как данные кодировались. Сложность выбора уровней шума для каждой подполосы — процесс, используемый кодером, чтобы определить, какими данными можно пожертвовать, не повлияв на качество результата. Программы декодирования просто берут оставшиеся данные и воспроизводят по ним звук. Будущие программы кодирования MPEG будут продолжать совершенствовать эти методы, сохраняя при этом полную совместимость с существующими программами декодирования.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]