МУЛЬТИМЕДИЙНЫЕ ТЕХНОЛОГИИ
Мультимедиа — совокупность программно-аппаратных средств, реализующих интегрированную обработку и представление информации в символьном, звуковом и зрительном виде. Мультимедиа представляет собой объединение нескольких способов подачи информации — текст, неподвижные изображения (рисунки и фотографии), движущиеся изображения (мультипликация и видео) и звук (цифровой и MIDI) в интерактивный продукт.
Появление систем мультимедиа, безусловно, производит большие изменения в таких областях, как образование, компьютерный тренинг, во многих сферах профессиональной деятельности, науки, искусства, в компьютерных играх и т. д.
Поскольку технические средства мультимедиа и их характеристики более подробно описываются, например, в [25], здесь мы ограничимся рассмотрением некоторых методов представления и обработки информации в таких системах.
3.1. Обработка аудиоинформации
В то время как даже в нецифровых технологиях фото и видео в принципе могут быть найдены элементы дискретности (в первом случае зерна пленки и фоточувствительные ячейки иконоскопа или матрица ПЗС, во втором — то же плюс разбиение изображения на строки), звуковой сигнал в своей основе является чисто аналоговым (если не вдаваться в такие тонкости, как магнитные домены в чувствительном слое при записи на ленту). Поэтому целесообразно здесь сказать несколько слов о преобразовании звука (аналог – код и обратно).
Аналого-цифровое преобразование
Аналого-цифровое (дискретное) преобразование (АЦП) — (ADC — analog-to-digital conversion) — заключается в формировании последовательностей n – разрядных двоичных слов, представляющих с заданной точностью аналоговые сигналы. В необходимых случаях осуществляется обратное — дискретно-аналоговое (цифроаналоговое преобразование — ЦАП, DAС).
Более чем тридцатилетнее развитие теории и практики ЭВМ приводит к вытеснению (в том числе и на бытовом уровне) аналоговых устройств и сигналов цифровыми. Наиболее популярным примером является несомненно аудиокомпакт-диск (digital audio CD) [25].
В этом случае звуковой сигнал (рис. 3.1) сначала преобразуется в дискретную аппроксимацию («многоуровневый ступенчатый сигнал»), при этом происходит квантование по времени, которое заключается в измерении (sampling) в дискретные моменты необходимого параметра аналогового сигнала.
При квантовании по амплитуде каждая ступенька представляется последовательностью бинарных цифровых сигналов. Принятый в настоящее время стандарт CD использует так называемый «16-разрядный звук с частотой сканирования 44 кГц».
Для рис. 3.1 в переводе на нормальный язык это означает, что «длина ступеньки» (τ)
1/ 44 100 с, а «высота ступеньки» (δ) составляет 1/65 536 максимальной громкости сигнала (поскольку 216 = 65 536). При этом частотный диапазон воспроизведения составляет 0—22 кГц, а динамический диапазон — 96 децибел (что
составляет совершенно недостижимую для магнитной или механической звукозаписи характеристику качества). Необходимо заметить что различные звуковые карты могут обеспечить 8- или 16-битные выборки, 8-битные карты позволяют закодировать 256 различных уровней дискретизации звукового сигнала, соответственно 16-битные — 65 536 уровней.
Количество выборок в секунду, т. е. частота дискретизации аналогового звукового сигнала, также может принимать различные значения: 5,5, 11, 22 и 44 кГц. Таким образом, качество звука в дискретной форме может быть очень плохим (качество радиотрансляции) при 8 битах и 5,5 кГц и очень высоким (качество аудиоСD) при 16 битах и 44 кГц.
Поскольку компакт-диск — стереосистема, необходимо записывать два 16-разрядных слова каждый 44 100 раз в секунду. Это удается в пределах 176,4 Кбайт/с, 10,58 Мбайт/мин или 635 Мбайт/ч. Самый распространенный формат файла цифровой звукозаписи на ПК — WAV.
Для записи звука к звуковой плате может быть подключен микрофон или устройство воспроизведения звука (магнитофон, CD-плейер). Для воспроизведения звука к ее выходу могут быть подключены акустические колонки или наушники, а также любая акустическая система (магнитофон, музыкальный центр и т. д.).
Запись и редактирование аудиоматериалов требует большое пространство жесткого диска — при качестве компакт-диска звучание 10 мин потребует более чем 100 Мбайт. Чем быстрее диск и подсистема ввода-вывода, тем легче работать с такими большими файлами. Современные жесткие диски и PCI-контроллеры способны к поддержке передачи не менее 4 Мбайт/с. Необходимы гарантии, чтобы не было никаких прерываний в аудио-потоке. Многие НЖМД делают прерывание, чтобы выполнить тепловую перекалибровку, которое может привести к короткой, но нежелательной паузе в звуке. Некоторые дисководы AV специально проектируются без тепловой перекалибровки, таким образом устраняя этот эффект.
Звуковые платы
Звуковая плата ПК содержит несколько аппаратных систем, связанных с производством и сбором аудиоданных, две основные e аудиоподсистемы, предназначенные для цифрового «аудио-захвата», синтеза и воспроизведения музыки (рис. 3.2). Исторически подсистема синтеза и воспроизведения музыки генерирует звуковые волны одним из двух способов:
• через внутренний синтезатор (например, ЧМ-синтезатор);
• проигрывая оцифрованный (sampled) звук.
Секция цифровой звукозаписи звуковой платы состоит из пары 16-разрядных преобразователей — ЦАП и АЦП и содержит программируемый генератор частоты выборки, синхронизирующий преобразователи и управляемый от ЦП. Компьютер передает оцифрованные звуковые данные к преобразователям или обратно. Частота преобразования обычно кратна (или составляет часть от) 44,1 кГц.
Большинство плат использует один или более каналов прямого доступа к памяти, некоторые платы также обеспечивают прямое цифровое подключение S/PDIF (или SPDIF). Кабель передачи SPDIF (Sony/Philips Digital InterFace — Цифровой Интерфейс Sony/Philips) может быть оформлен в двух видах: коаксиальный и оптический. Входы и выходы коаксиального SPDIF выполнены на разъемах типа RCA. Оптический SPDIF использует для передачи данных оптический кабель, входы и выходы которого выполнены на разъемах типа Toslink.
Генератор звука, установленный на плате, использует процессор цифровых сигналов (Digital Signal Processor — DSP), который проигрывает требуемые музыкальные ноты, объединяя их считывание из различных областей звуковой таблицы с различными скоростями, чтобы получить требуемую высоту тона. Максимальное количество доступных нот связано с мощностью DSP-процессора и называется полифонией платы.
DSP-процессоры используют сложные алгоритмы, чтобы создать эффекты наподобие реверберации, хорового звучания и запаздывания. Реверберация создает впечатление, что инструменты играют в больших концертных залах. Хор используется, чтобы создать впечатление, что несколько инструментов играют совместно, тогда как фактически есть только один. Добавление запаздывания к партии гитары, например, может дать эффект пространства и стереозвучания.
Частотная модуляция. Первой широко распространенной технологией, которая используется в звуковых платах, была частотная модуляция (ЧМ, Frequency Modulation — FM), разработанная в начале 1970-х гг. Дж. Чоунингом (Стэнфордский университет).
Синтез с использованием частотной модуляции (FM-synthesis) основывается на последовательном и параллельном подключении генераторов простых сигналов и их взаимомодуляции. Схема соединения генераторов и параметры каждого сигнала (частота, амплитуда и закон их изменения во времени) определяют тембр звучания, а количество генераторов степень тонкости управления ими определяет предельное количество синтезируемых тембров. Данный метод очень удобен с точки зрения дешевизны реализации, но при этом требует сложного программирования и тонкой настройки. Использовался в большинстве звуковых PC-карт в виде стандартных GM-устройств, а также активно популяризировался фирмой Yamaha и ее модельным рядом синтезаторов GX.
Каждый голос ЧМ-синтезатора требует минимум двух генераторов сигнала, обычно называемых «операторами». Различные конструкции ЧМ-синтезатора имеют различные степени управления параметрами оператора. Сложные системы ЧМ могут использовать 4 или 6 операторов на каждый голос, и операторы могут иметь корректируемые параметры, которые позволяют настроить скорости нарастания и угасания сигнала.
Yamaha была первой компанией, которая вложила капитал в исследования по теории Чоунинга, что привело к разработке легендарного синтезатора DX7. Специалисты Yamaha скоро поняли, что смешивание более широкого диапазона несущих и модуляторов позволяет создать более сложные тембры, приводя к более реалистическим звучащим инструментам. Аппаратные средства их синтезатора OPL3 — фактический стандарт для игровых плат, использует параметры, загруженные программным Драйвером, чтобы управлять каскадными генераторами ЧМ, которые создают аналог акустических и электронных музыкальных
инструментов.
Хотя системы ЧМ были осуществлены в аналоговом исполнении на ранних клавиатурных синтезаторах, в дальнейшем выполнение синтеза FM было сделано в цифровой форме. Методы синтеза FM очень полезны для того, чтобы создать выразительные новые звуки. Однако если цель синтезирующей системы состоит в том, чтобы воспроизвести звук некоторого существующего инструмента, это лучше делать в цифровой форме на основе выборок сигналов, как при синтезе с использованием звуковых таблиц (WaveTable Synthesis).
Табличный синтез (WaveTable synthesis или PCM-synthesis). Здесь используются выборки звуков реальных инструментов — небольших сэмплированных «кусочков» звуковой волны, определенный набор которых позволяет создать звучание инструмента, смоделировать интересные звуки. Активно используется в PPG, Waldorf, Korg DW-8000, Ensoniq ESQ-1 и ряде других синтезаторов.
Выборка — цифровое представление формы звука, произведенного инструментом. Платы, использующие ISA, обычно сохраняют выборки в ROM, хотя более новые PCl-изделия используют основную системную оперативную память ПК, которая загружается при запуске ОС (например, Windows) и может включить новые звуки.
В то время как все звуковые платы ЧМ звучат аналогично, платы звуковых таблиц значительно отличаются по качеству. Качество инструментов определено несколькими факторами:
• качество первоначальной записи;
• частота, на которой выборки были записаны;
• количество выборок, использованных для каждого инструмента;
• методы сжатия, использованные для сохранения выборки.
Большинство инструментальных выборок записаны в стандарте 16 бит и 44,1 кГц, но многие изготовители сжимают данные так, чтобы больше выборок или инструментов можно было записать в ограниченный объем памяти. Однако сжатие часто приводит к потере динамического диапазона или качества.
Когда аудиокассета воспроизводится слишком быстро или слишком медленно, ее высота звучания меняется, и это справедливо также для цифровой звукозаписи. Проигрывание выборки на более высокой скорости, чем ее оригинал, приводит к более высокому воспроизводимому звуку, позволяя инструментам исполнять более чем несколько октав. Однако если некоторые тембры воспроизводятся быстро, они звучат слишком слабо и тонко; аналогично, когда выборка проигрывается слишком медленно, она звучит уныло и неестественно. Чтобы преодолеть эти эффекты, изготовители разбивают клавиатуру на несколько областей и применяют различные выборки звуков инструментов в каждой из них.
Каждый инструмент звучит с различным тембром в зависимости от стиля игры. Например, при мягкой игре на фортепьяно, не слышен звук молотков, бьющих по струнам. При более интенсивной игре мало того, что этот звук становится более очевидным, но можно заметить также и изменения тона.
Для каждого инструмента должны быть записаны много выборок и их разновидностей, чтобы синтезатор точно воспроизвел соответствующий диапазон звука, а это неизбежно требует большего количества памяти. Типичная звуковая плата может содержать до 700 инструментальных выборок в пределах ROM 4 Мбайт. Точное воспроизведение фортепьяно соло, однако, требует от 6 до 10 Мбайт данных, вот почему нет никакого сравнения между синтезируемым и реальным звуком.
Обновление звуковой таблицы не всегда означает необходимость покупать новую звуковую плату. Большинство 16-разрядных звуковых плат имеет разъем, который может соединиться с дополнительной платой звуковой таблицы (daughterboard). Качество звучания инструментов, которые такие платы обеспечивают, значительно отличается, и это обычно зависит от того, каков объем памяти расположен на плате. Большинство плат содержит между 1 и 4 Мбайт выборок, и предлагает целый ряд цифровых звуковых эффектов.
Другие методы звукового синтеза.
Аддитивный или суммирующий синтез (additive synthesis). Данный метод прекрасно иллюстрируют первые модели от Hammond, которые были основаны на принципе построения звучания реальных органов. В его основе лежит следующая идея — создание сложных гармонически насыщенных звуков из простых изменяющихся синусоидальных волн, различных по амплитуде и/или частоте.
Вычитающий синтез (subtractive synthesis). Данный метод противоположен предыдущему. В качестве исходного берется тембрально богатый, насыщенный гармониками звук, а потом в результате сложной фильтрации из него формируется определенный тембр с характерной тоновой окраской.
Direct Draw. В ряде синтезаторов используются осцилляторы, генерирующие звуковые волны со стандартными формами (синусоида, прямоугольная, пилообразная и т. п.). В варианте Uirect Draw пользователь может самостоятельно рисовать любые Формы.
Гранулированный синтез (Granular synthesis). Является частным случаем таблично-волнового синтеза. Звук формируется из коротких сэмплированных фрагментов звуковой волны. Результате взаимодействия частоты их повторения и частотных составляющих сэмплированной звуковой формы получается тембрально сложный монотонный звук, который впоследствии можно обрабатывать методами вычитающего синтезирования. Одна из первых реализаций подобного была в программе Ross Bencina AudioMulch.
Сэмплинг (Sample playback). Данный метод базируется на использовании сэмплированных (записанных) инструментов и воспроизведении их в режиме обычного проигрывателя. Небольшие звуковые фрагменты, из которых складывается звучание инструмента, загружаются в память (ROM или RAM) и затем воспроизводятся.
Ресинтезированный PCM (Resynthesized (RS) — PCM). Этот метод синтеза был введен фирмой Roland и основан на анализе сэмплированного звука и его последующего воссоздания аддитивным методом синтеза.
Линейно-арифметический синтез (Linear/ Arithmetic (L/A) synthesis). Этот метод также был введен фирмой Roland в конце 80-х гг., начиная с модели D-50. За основу концепции L/A synthesis было взято смешивание небольшого фрагмента сэмпла «живого» инструмента (обычно атаки) с синтезированной волновой формой. Этот метод позволяет дать натуральную звуковую окраску, близкую к реальному звучанию, при этом получается выигрыш в меньшей загрузке аппаратных вычислительных мощностей.
Передовое интегрирование (Advanced Integrated synthesis). Данный метод был впервые представлен в модели Korg M-1. Он использует сэмплированную атаку и другие волновые формы, которые впоследствии обрабатываются методами вычитающего синтеза, при этом для получения качественно новых звуков дополнительно могут использоваться сложные эффект – процессоры.
Синтез переменной архитектуры (VAST — Variable Architecture Synthesis Technology). Разновидность DSP-синтеза, основанная на комбинировании мощных вычислений по формированию пэтчей, включая сэмплированные звуки, добавление сложных эффектов и открытую архитектуру.
Z-Plane synthesis. Данный метод синтезирования является уникальной разработкой и впервые был представлен в звуковом модуле E-mu Systems Morpheus. Его суть состоит в следующем — берутся две волновые формы разных инструментов и одна промежуточная для плавного перетекания от первой ко второй.
Синтез физического моделирования (Physical deling synthesis). За основу данного метода берется сложная математическая модель, которая полностью описывает формирование звука в инструменте. Впервые этот вид синтезирования был представлен в модельном ряде синтезаторов Yamaha VL-1 и VL-7 а теперь используется повсеместно, хотя до полноценного математического повторения реальных физических процессов еще далеко.
Синтез по математической функции (Mathematical function synthesis). Также частный случай физического моделирования, с помощью которого можно вкладывать математические функции, объединять их в функциональные блоки, а из них создавать математические алгоритмические модели. Вернее сказать, что этот метод является одним из простейших разделов физического моделирования. Он хорошо подходит для эмуляции аналоговых синтезаторов.
Спектральный синтез (Spectral synthesis). Это даже не метод, а скорее способ создания сложных гармонических звуков. За основу их построения берется обыкновенная спектрограмма (графическое представление зависимости частоты от амплитуды).
Плата SoundBlaste.
В 1998 г. Creative Technology был выпущен удачный образец звуковой платы SoundBlaster Live!, ставший в дальнейшем стандартом де-факто.
Версия Platinum 5.1 карты Creative SoundBlaster Live!, которая появилась к концу 2000 г., имела следующие гнезда и соединители (рис. 3.2):
• аналогово-цифровой выход — либо сжатый сигнал в формате Dolby AC-3 SPDIF с 6 каналами для подключения внешних цифровых устройств или динамиков цифровых систем, либо аналоговая система громкоговорителей 5.1;
• линейный вход — соединяется с внешним устройством типа кассетного, цифрового магнитофона, плейера и пр.; микрофонное гнездо — соединяется с внешним микрофоном для ввода голоса;
• линейный выход — соединяется с динамиками или внешним усилителем для аудиовывода или наушниками;
• соединитель джойстика/MIDI — соединяется с джойстиком или устройством MIDI; и может быть настроен так, чтобы соединяться с обоими одновременно;
• CD/SPDIF-соединитель — соединяется с выводом SPDIF, расположенным на дисководе DVD или CD-ROM;
• дополнительный аудиовход — соединяется с внутренними аудиоисточниками типа тюнера, MPEG или других подобных плат;
• соединитель аудиоСD — соединяется с аналоговым аудио-выводом на CD-ROM или DVD-ROM, используя кабель аудиоСD;
• соединитель автоответчика — обеспечивает монофоническую связь со стандартным голосовым модемом и передает сигналы микрофона к модему.
Аудиорасширение (цифровой ввод-вывод) — соединяется с цифровой платой ввода-вывода (может располагаться в свободной нише накопителя на 5,25", выходящей на переднюю панель компьютера), иногда называемой Live!Drive. Обеспечивает следующие соединения:
• гнездо RCA SPDIF — соединяется с устройствами цифровой звукозаписи типа цифровой ленты и мини-дисков;
• гнездо наушников — соединяется с парой высококачественных наушников; вывод динамика отключается;
• регулировка уровня наушников — управляет громкостью сигнала наушников;
• второй вход (линейный/микрофонный) — соединяется с высококачественным динамическим микрофоном или аудиоисточником (электрогитара, цифровое аудио или мини-диск);
• переключатель второго входа (линейный/микрофон);
• соединитель MIDI — соединяется с устройствами MIDI через кабель Mini DIN-Standard DIN;
• инфракрасный порт (сенсор) — позволяет организовать дистанционное управление ПК;
• вспомогательные гнезда RCA — соединяются с оборудованием бытовой электроники типа видеомагнитофона, телевизора или проигрывателя компакт-дисков;
• оптический вход/выход SPDIF — соединяется с устройствами цифровой звукозаписи наподобие цифровой ленты или мини-дисков.
Другие изготовители звуковых плат быстро восприняли идею относительно отдельного модуля разъемов ввода-вывода. Было разработано множество разновидностей — одни были размещены в отсеке для накопителей подобно Live!Drive, другие были внешними модулями, некоторые из которых были разработаны, чтобы действовать как концентраторы USB.
Современные аудиокарты поддерживают также ряд стандартных возможностей моделирования, генерации и обработки звукового сигнала:
• DirectX — предложенная Microsoft система команд управления позиционированием виртуального звукового источника (модификации — DirectX 3, 5, 6);
• A3D — разработанный в 1997 г. NASA (National Aeronautics and Space Administration) и Aureal для использования в летных тренажерах стандарт генерации таких эффектов, как густой туман или подводные звуки. A3D2 позволяет моделировать конфигурацию помещения, в котором раздаются и распространяются звуки, вычисляя до 60 звуковых отражений (как в ангаре, так и в колодце);
• ЕАХ (Environmental Audio Extensions) — предложенная Creative Technology в 1998 г. модель добавления реверберации в A3D с учетом звуковых препятствий и поглощения звуков;
• MIDI (Musical Instrument Digital Interface) — протокол, разработанный в 1980-х гг., в соответствии с которым команды передаются по стандартному интерфейсу. В Windows MIDI-файлы могут воспроизводиться специальной программой-проигрывателем MIDI-Sequcncer. В этой области синтеза звука также имеются свои стандарты. Основным является стандарт МТ-32, разработанный фирмой Roland и названный в соответствии с одноименным модулем генерации звуков. Этот стандарт также применяется в звуковых картах LAPC и определяет основные средства для управления расположением инструментов, голосов, а также для деления на инструментальные группы (клавишные, ударные и т. д.) (рис. 3.3).
MIDI
Цифровой интерфейс музыкальных инструментов (Musical Instrument Digital Interface или MIDI) появился в начале 1980-х гг. и был разработан, чтобы обеспечить стандартный интерфейс между пультами управления музыкой (наподобие клавиатур) и звуковыми генераторами (типа синтезаторов и «роботов-барабанщиков»). Кроме того, он первоначально был предназначен для работы через последовательное подключение, аналогичное стыку RS-232 [24, 25], и включал в себя как стандарт передачи информации, так и протокол электрических сигналов.
На уровне электросигналов MIDI представляет полудуплексную токовую петлю (5 мА), которая пропускает последовательный поток данных по 8 битов на скорости передачи 31,25 килобод.
На уровне передачи информации MIDI представляет собой что-то вроде языка для того, чтобы описать музыкальные такты и эффекты в реальном масштабе времени. Он обеспечивает соединение более чем по 16 каналам, позволяя подключить до 16 инструментов MIDI к одному интерфейсу. Некоторые MIDI-интерфейсы имеют 16 выходов, позволяя одновременно обращаться к 256 инструментам.
Интерфейс MIDI передает не звук, а команды, которые выполняет устройство-приемник. Инструменты соединяются стандартными разъемами 5-DIN. Например, если на клавиатуре нажата определенная клавиша, то передается команда Note On (включить ноту), которая заставляет принимающее устройство проиграть некоторую музыкальную ноту.
Команда состоит из трех элементов:
• байт состояния (Status Byte);
• номер ноты (Note Number);
• значение скорости нажатия клавиши (Velocity Value).
Байт состояния содержит информацию о типе команды
(в этом случае — «включить ноту»), а также на какой канал она должна быть послана (1 —16).
Номер ноты описывает клавишу, которая была нажата (скажем, «ре» Большой Октавы).
Значение скорости указывает силу, с которой эта клавиша была нажата. Принимающий инструмент будет исполнять эту ноту, пока не придет команда Note off (отключить ноту), которая содержит аналогичные данные.
В зависимости от того, какой именно звук проигрывается, синтезаторы по-разному обрабатывают данные Velocity Value. Звук фортепьяно, например, становится громче, если клавиша нажата более сильно, а также изменяются тональные свойства. Профессиональные синтезаторы часто вводят дополнительные тембры, чтобы подражать звуку молоточков, ударяющих по струнам.
Число голосов (MIDI-каналов) или полифония звуковой платы определяет максимальное количество элементарных звуков, которые плата может воспроизвести одновременно. Это число иногда указывают в названии звуковой карты, например-SB 16, AWE 64, SB PCI 64, SB PCI 128 и т. д.
Существует несколько разновидностей стандарта MIDI — 6М, GS и т. д. Практически все современные звуковые адаптеры совместимы со стандартом GM (General MIDI — единый или общий MIDI).
Постоянные контроллеры Continuous Controllers (CC) используются, чтобы управлять параметрами настройки: уровень звучания, эффекты, панорамирование (позиционирование стереозвука) и др. Многие устройства MIDI позволяют установить внутренние параметры для СС (до 128). На этой базе Ассоциация Изготовителей MIDI (MIDI Manufacturers Association — MMA) разработала спецификацию для синтезаторов, известную как General MIDI.
MIDI секвенсоры. Первые приложения MIDI были рассчитаны на то, чтобы при игре на одной клавиатуре сочетать звуки, произведенные несколькими синтезаторами. Сегодня тем не менее это используется главным образом в секвенсорах, хотя MIDI также применяется и в системах театрального освещения и сопровождения как удобный способ управления множеством прожекторов и кино (видео) проекторов.
По существу, секвенсор (sequencer) представляет собой цифровой магнитофон, который записывает и воспроизводит команды MIDI, а не аудиосигналы. Первые секвенсоры имели небольшую память и были способны к запоминанию только от 1 до 2 тыс. музыкальных тактов. С развитием секвенсоров совершенствовались и системы MIDI. He ограничиваясь только проигрыванием нот в MIDI, изготовители разработали способы управления индивидуальными звуковыми параметрами и встроенными цифровыми эффектами, используя постоянные контроллеры (СС). Большинство программ-секвенсоров — приложения на основе ПК, и имеют возможности корректировать эти параметры, используя графические слайдеры.
Использование секвенсоров позволяет удобно редактировать музыкальные фразы и синхронизировать их с фильмом. При этом обеспечиваются экономичные возможности для разработчиков мультимедиа, предоставляющие слушателям высококачественный звук. Для записи оцифрованной музыки требуется не менее 10 Мбайт/мин, в то время как данные MIDI требуют только малую долю от этого.
Сэмплер — синтезатор, у которого для хранения образцов звучания (сэмплов) вместо постоянной памяти (ROM) используется оперативная память большого объема (RAM). Пользователь перед каждым сеансом работы загружает в память уже готовые звуки, или записывает новые звуки точно так же, как на обычный магнитофон. Впоследствии все эти сэмплы воспроизводятся с разной высотой под управлением клавиатуры или секвенсора. Для изменения высоты тона сэмплов используются такие же алгоритмы, как и в программах типа Sound Forge, только они действуют в реальном времени.
При формировании звуков в сэмплерах не используются алгоритмы компрессии, которые, например, позволяют «упаковать» в 4 Мбайт ROM 250—400 звуков разного тембра, как это происходит в синтезаторах. Кроме этого, синтезаторы ограничены тем набором звуков, который находится в ROM, а для сэмплеров выпускается огромное количество библиотек звуков на компакт-дисках, поэтому можно, имея всего лишь одно устройство, практически безгранично расширять его возможности.
Помимо всех перечисленных достоинств, сэмплеры имеют одну очень важную черту — пользователь может создавать звук самостоятельно от первого до последнего шага.
В сэмплере каждый звук создается в нескольких источниках, сигналы которых смешиваются между собой. Каждый такой источник принято называть леером (от англ. layer — слой). Главным элементом любого леера является генератор — именно в нем образуется звук при воспроизведении сэмпла. Иногда генератор сэмплера называют осциллятором. Сэмплы находятся в оперативной памяти устройства и извлекаются оттуда при поступлении соответствующей команды от программы управления.
Генератор воспроизводит сэмпл с разной высотой, в зависимости от поступающей в него команды MIDI Note (MIDI нота). Причем, сэмпл может воспроизводиться как линейно, т. е. от чала до конца, так и зацикливаться. В последнем случае инструмент звучит ровно столько, сколько времени удерживается в Жатом состоянии клавиша на MIDI-клавиатуре. Помимо изменения высоты тона, генератор изменяет уровень воспроизводимого сэмпла в зависимости от сообщения Velocity (скорость нажатия клавиши).
В сэмплере с помощью генератора низкой частоты (LFO — Low Frequency Oscillator) можно менять высоту воспроизведения сэмпла с некоторой периодичностью. Но в отличие от программного FM-синтезатора, частотой колебаний LFO сэмплера можно управлять в реальном времени с помощью MIDI-клавиатуры.
Амплитудой колебаний LFO можно управлять с помощью генератора огибающей (Envelope Generator), создающего произвольную огибающую. Этот метод называется амплитудной модуляцией (AM — Amplitude Modulation). Но в любом сэмплере с помощью амплитудной модуляции можно управлять не только параметрами генератора низкой частоты, но и параметрами воспроизведения сэмпла. Например, если указано «время линейной атаки» 1 с, то после нажатия клавиши громкость сэмпла будет линейно возрастать от минимальной громкости к максимальной в течение 1 секунды. Если указывается время затухания (Release) 0,5 с, то после отпускания клавиши сэмпл будет звучать указанное время, причем его громкость будет линейно уменьшаться. Естественно, можно «нарисовать» и более сложные огибающие.
К сэмплу, который воспроизводится генератором с разной высотой и уровнем в зависимости от поступающих с клавиатуры команд MIDI Note (MIDI нота) и Velocity (Скорость нажатия клавиш), можно применить два вида модуляции: частотную
и амплитудную. В первом случае будет периодически меняться высота воспроизводимого сэмпла относительно взятой на клавиатуре ноты, а во втором — его относительный уровень в течение времени звучания.
Эквалайзер. Для управления тембром звука используются эквалайзеры — программно-аппаратные средства, способные понижать или повышать уровень разных частотных полос. При этом понижается или повышается относительный уровень разных гармоник сигнала, в результате чего мы в акустических системах слышим изменение тембра звука.
Известно два основных типа эквалайзеров — графические и параметрические. Первые отличаются наличием фиксированного количества полос: их обычно бывает 15 (можно менять уровень каждой 2/3 октавы звукового диапазона) или 30 (можно менять уровень каждой 1/3 октавы звукового диапазона). На любой из полос уровень сигнала может опускаться или подниматься на Ю—15 дБ (см. рис. 3.7 — графический 10-полосный эквалайзер Winamp). Параметрические эквалайзеры, в отличие от графических, могут настраиваться на любую частотную полосу любой ширины и поднимать/опускать ее уровень.
Единый (общий) стандарт MIDI (General MIDI)
Ввод стандарта MIDI позволял музыкантам создавать аранжировки, используя любые инструменты MIDI, имевшиеся в наличии. Но когда созданные файлы проигрывались на другом синтезаторе, не было никакой гарантии, что звучание будет тем же самым, потому что различные изготовители могли назначить инструментам различные номера программ, так что фортепьяно, записанное на одном синтезаторе, может прозвучать как труба на другом и пр.
В сентябре 1991 г. Ассоциация изготовителей MIDI (MMA) и Японский комитет стандартов MIDI (JMSC) положили начало новому этапу в технологии MIDI, приняв стандарт «Общая Система MIDI, уровень 1» (General MIDI System Level 1 — GM или GM1). Спецификация разработана, чтобы обеспечить необходимый уровень совместимости функционирования инструментов MIDI.
GM1. Спецификация налагает ряд требований на совместимые звукогенерирующие устройства (клавиатура, звуковой модуль, звуковая плата, программные продукты), включая:
• минимум 24 канала («голоса») должно быть доступно одновременно для звуков мелодии и ударных инструментов, или 16 каналов для мелодии плюс 8 для ударных;
• поддерживаются все 16 каналов MIDI, каждый из которых способен воспроизвести различное число голосов (полифония) или различные инструменты (звук, аккорд, тембр);
• минимум 16 различных тембров может выполняться одновременно, воспроизводя различные инструменты. Поддерживается как минимум 128 предварительно настроенных инструментов (номера MIDI-программ), соответствующих
Инструментальной карте GM1 (GM1 Instrument Patch Map), и 47 звуков ударных, которые соответствуют Карте ударных GM1 (GM1 Percussion Key Map). Мелодический набор состоит из 16 групп инструментов по 8 в каждой группе (фортепиано, органы, струнные, духовые гитары, и т. п.).
За всеми инструментами были закреплены конкретные номера, поэтому мелодия, записанная в GM, будет похоже звучать на разных GM-синтезаторах. GS (General Synthesizer) — стандартный набор тембров фирмы Roland, включает дополнительно к General MIDI новые наборы мелодических и ударных инструментов, различные эффекты (скрип двери, звук мотора, крики и т. п.), а также дополнительные способы управления инструментами через MIDI-контроллеры. Многие звуковые карты поддерживают GM по умолчанию, a GS — в порядке расширения.
Стандарт XG (Extended General) фирмы Yamaha включает несколько сотен мелодических и ударных инструментов, применяемых профессиональными музыкантами. XG содержит значительно более развитые средства управления синтезом, чем GM и GS. Любой MIDI-канал может быть независимо от других установлен в режим мелодических или ударных инструментов. Использование стандарта XG позволяет создавать переносимые MIDI-файлы со звучанием, приближенным к профессиональному.
3.2. Форматы записи-воспроизведения аудиосигналов
Формат МРЗ
МРЗ — сокращение от MPEG Lауег3. Это один из основных цифровых форматов хранения аудио, разработанный Fraunhofer IIS и THOMSON, позднее утвержденный как часть стандартов сжатого видео и аудио MPEG1 и MPEG2. Данная схема является наиболее сложной схемой семейства MPEG Layer 1/2/3. Она требует наибольших затрат машинного времени для кодирования по сравнению с двумя другими и обеспечивает более высокое качество кодирования. Используется главным образом для передачи аудио в реальном времени по сетевым каналам и для кодирования Audio CD.
Высокая степень компактности МРЗ при сохранении качества звучания достигается с помощью дополнительного квантования по установленной схеме, позволяющей минимизировать потери качества.
Степень сжатия и, соответственно, объем дополнительного квантования, определяются не форматом, а самим пользователем при задании параметров кодирования. Ширина потока, или битрейт (bitrate) может изменяться от наибольшего для МРЗ (320 кбит/с) до 96 кбит/с и даже ниже. Термин битрейт обозначает общую ширину потока, независимо от того, монофонический или стереофонический сигнал он содержит.
При испытаниях опытные эксперты, специализирующиеся на субъективной оценке качественности звучания, не смогли различить звучание оригинального трека на CD и закодированного в МРЗ с коэффициентом сжатия 6 : 1, т. е. с битрейтом в 256 кбит/с.
Более низкие битрейты, несмотря на их популярность, не дают возможности обеспечить надлежащее качество кодирования. Объективно и 256 кбит/с не дает возможности осуществить полностью обратимое кодирование, то же самое можно сказать и про наивысший битрейт — 320 кбит/с, но отличия от CD Audio, по которому кодируется тестовый МРЗ, сравнимы с отличиями самого CD Audio от исходного высококачественного сигнала, из которого он был получен путем оцифровки.
Поэтому самое большое на сегодня преимущество МРЗ перед другими подобными форматами состоит в том, что ни про один другой формат нельзя пока уверенно сказать, что он полностью гарантирует устойчивое сохранение качества звучания на достаточно высоких битрейтах, или что для него написано такое же множество удобного программного обеспечения, как для МРЗ.
Файл формата МРЗ (обычно используется расширение * . mp3) может также содержать информацию о файле непосредственно в заголовке: имя исполнителя, графику (альбом диска), KL для дальнейшей информации, текст песни и т. д.
Процесс кодирования. Перед кодированием исходный сигнал разбивается на участки, называемые фреймами, каждый из которых кодируется отдельно и помещается в конечный файл независимо от других. Последовательность воспроизведения определяется порядком Расположения фреймов. Каждый фрейм может кодироваться с разными параметрами. Информация о них содержится в заголовке фрейма.
Кодирование начинается с того, что исходный сигнал с помощью фильтров разделяется на несколько, представляющих отдельные частотные диапазоны, сумма которых эквивалентна исходному сигналу.
Для каждого диапазона определяется величина маскирующего эффекта, создаваемого сигналами соседних диапазонов и сигналом предыдущего фрейма. Если она превышает мощность сигнала интересующего диапазона или мощность сигнала в нем оказывается ниже определенного опытным путем порога слышимости, то для данного фрейма данный диапазон сигнала не кодируется.
Для оставшихся данных каждого диапазона определяется, сколькими битами на сэмпл можно пожертвовать, чтобы потери от дополнительного квантования были ниже величины маскирующего эффекта. При этом учитывается, что потеря одного бита ведет к внесению шума квантования величиной порядка 6дБ.
После завершения работы психоакустической модели формируется итоговый поток, который дополнительно кодируется по Хаффману, на этом кодирование завершается.
Кроме того, кодирование стереосигнала осуществляется четырьмя различными методами:
• Dual Channel — каждый канал получает ровно половину потока и кодируется отдельно, как моносигнал. Рекомендуется главным образом в случаях, когда разные каналы содержат принципиально разный сигнал — скажем, текст на различных языках;
• Stereo — каждый канал кодируется отдельно, но кодер может принять решение отдать одному каналу больше места, чем другому;
• Joint Stereo (MS Stereo) — стереосигнал раскладывается на средний между каналами и разностный. При этом второй кодируется с меньшим битрейтом. Это позволяет несколько увеличить качество кодирования в обычной ситуации, когда каналы по фазе совпадают. Но приводит и к резкому его ухудшению, если кодируются сигналы, по фазе не совпадающие;
• Joint Stereo (MS/IS Stereo) — вводит еще один метод упрощения стереосигнала, повышающий качество кодирования на особо низких битрейтах. Состоит в том, что для некоторых частотных диапазонов оставляется уже даже не разностный сигнал, а только отношение мощностей сигнала в разных каналах. Очевидно, для кодирования этой информации употребляется еще меньший битрейт. MS Stereo — частный случай MS/IS Stereo, когда переменная, отвечающая за кодируемый таким образом диапазон, принимает нулевое значение.
Скорости передачи. На низких битрейтах всегда срезаются мелкие, сравнительно тихие детали, наличие или отсутствие которых нередко серьезно меняет эмоциональную окраску композиции, придает или лишает ее таких эффектов, как ощущение «кристальной чистоты» звука (в той мере, в которой она присутствует в CD Audio). Кроме того, в соответствии с психоакустической моделью, высшие (более 16 кГц) частоты на низких битрейтах кодируются с очень низким приоритетом. Кроме того, имеют место разные особенности кодеров. Так, у кодеров от FhG IIS на 128 кбит/с могут оказаться «смазанными» верхние частоты, наблюдается эффект «шепелявости». Узкое место всех схем компрессии класса MPEG — участки с резкими изменениями сигнала. В случае МРЗ задержка может достигать величин порядка 160 мс, теоретический минимум — 59 мс.
На высших битрейтах при последовательном применении психоакустической модели, разработанной FhG IIS, проблемы могут доставлять только ошибки, внесенные при написании кодера.
Битрейты порядка 112—128 кбит/с по качеству неплохи для прямых трансляций и ознакомительного прослушивания, но отнюдь не для создания архивов музыки качества CD Audio.
Любители МРЗ по-разному оценивают степень приемлемости одних и тех же битрейтов и имеют свой взгляд на то, какой именно битрейт следует считать оптимальным. Одни выбирают 128 кбит/с, другие — 160 кбит/с, третьи золотую середину: 192—256 кбит/с, некоторые — 320 кбит/с.
Из этого можно сделать три вывода. Во-первых, битрейт 256 кбит/с следует считать пограничным. Во-вторых, для абсолютного большинства пользователей он действительно достаточен. В-третьих, для высокого качества следует несколько увеличить запас скорости.
С Другой стороны, те же тесты определили диапазон «—192 кбит/с как в большинстве случаев вполне приемлемый я хранения аудио на компьютере, например, в компьютерных Tax, когда внимание отвлечено.
Следующий после 256 кбит/с битрейт — 320 кбит/с, он же — максимальный для кодирования аудио с характеристиками CD Audio, т. е. 44,1 кГц 16 бит Stereo. В данном случае мы имеем запас в 1/4 от битрейта 256 кбит/с, и его вполне можно считать достаточным в силу имеющихся данных о степени улучшения качества кодирования при кодировании на 160 кбит/с вместо 128 кбит/с.
Однако различие между качеством звука на битрейтах 128 кбит/с и 256 кбит/с / 320 кбит/с принципиально. Первый к качеству уровня CD никакого отношения не имеет, в отличие от двух последних.
В Internet, как правило, можно найти только МРЗ, закодированные с битрейтом 128 кбит/с. Этот битрейт был признан также , оптимальным для использования в Internet.
В XingTech был разработан кодер, использующий технику переменного битрейта (VBR), при которой разные участки трека кодируются с разным битрейтом, исходя из степени их сложности для кодирования.
Другие форматы
WAV. Формат WAV является метаформатом для данных любого типа. Имеет стандартный заголовок и описания областей данных, которых может быть несколько, способ же кодирования аудиосигнала может быть каким угодно. Вполне могут содержаться данные, не имеющие отношения к аудио.
Каждый метод кодирования, указываемый в заголовке, имеет собственный идентификатор, в соответствии с которым Windows и определяет, установлен ли кодек для работы с данным файлом, и если установлен — подключает его.
Кодеки, индивидуальные для каждого подформата, регистрируются в системе при их установке, после чего становится возможным использовать WAV-файлы, содержащие аудиоданные в форматах, поддерживаемых данными кодеками.
Стандарт МРЗ не определяет никакого точного стандартного математического алгоритма кодирования, его разработка целиком и полностью остается на совести разработчиков кодеров. Вместо этого он определяет общую схему процесса кодирования, а также формат закодированного фрейма. Сами последовательности фреймов могут передаваться потоком (streaming) или храниться в файлах.
Часто к последовательности фреймов добавляют стандартный заголовок мета-аудиоформата WAV и получается то, что называют WAV-МРЗ.
VQF Этот формат разработан компанией NТТ. Алгоритм кодирования широко не разглашается, но если сравнить результаты кодирования в форматах VQF и МРЗ, то можно заключить, что алгоритмы имеют очень мало общего и основаны на совершенно разных подходах к сжатию звука.
Самая сильная сторона формата — степень сжатия. VQF-файл с компрессией 80 кбит/с по качеству идентичен МРЗ-файлу, записанному в 128 кбит/с, степень сжатия превосходит МРЗ более чем на 30 %. Главный недостаток алгоритма — высокое потребление системных ресурсов.
WMA. В 1998 г. компания Voxware присоединилась к проекту TwinVQ и в его составе участвовала в разработке формата VQF. Через некоторое время компания отделилась от проекта и на основе разработок VQF создала новый формат, получивший название Voxware Audio Codec 4.0. Он стал первым алгоритмом сжатия, обеспечивающим качество 128 кбит/с МРЗ-файлов при цифровом потоке в 64 кбит/с.
OGG Vorbis. Этот формат был опубликован летом 2000 г. В это же время появилась бета-версия его кодера. После втрое более медлительного по сравнению с WMA процесса кодирования на выходе при 128 кбит/с получается звук, близкий к оригинальной записи.
В файле OGG может содержаться до 255 каналов, т. е. можно кодировать многоканальные потоки вроде Dolby Digital. Кроме того, в OGG-файлы можно встраивать графические изображения и тексты, которые могут возникать по ходу воспроизведения.
МРЗРrо. Создателем МРЗРrо является частная компания Coding Technologies. Созданная в 1997 г., компания занимается Разработкой и маркетингом кодеков на основе технологии SBR (Spectral Band Replication). У Coding Technologies два солидных стратегических партнера — Fraunhofer Institute и Thomson Multimedia.
Прежде всего своим появлением она обязана возникновению потребности передачи цифровой музыки в реальном времени через Internet (Internet-радио и т. д.), а также для мобильных копьютеров и различных портативных цифровых плейеров. Ограниченная скорость передачи или малый объем памяти вынуждают использовать низкие битрейты при сжатии музыки применяя форматы МРЗ или ААС. Использование более скоростных способов связи, таких, как ISDN или xDSL, не обеспечивает постоянного потока данных из-за перегрузки сети Internet
Формат МРЗ Pro в отличие от стандартного МРЗ содержит два потока, один из которых обычный Layer III-поток, а второй содержит информацию, на основе которой декодер восстанавливает самые верхние частоты. Поэтому файл, сжатый с использованием МРЗРrо (имеющий расширение *.mp3), может быть воспроизведен и обычным проигрывателем, но с частотой дискретизации 22 кГц, так как плейер воспримет только первый поток.
DVD-аудио. Известно, что первым оптическим носителем данных, ставшим широко доступным публике, был хорошо знакомый аудиокомпакт-диск. Компьютерной промышленности потребовалось несколько лет для того, чтобы понять, что компакт-диск является идеальной средой для того, чтобы сохранять и распределять большие количества цифровых данных, и только в 1990 гг. устройства CD-ROM стали стандартными компонентами ПК.
С появлением DVD производители CD начали создавать стандарты более высококачественного воспроизведения. Среди них — аудиокомпакт-диск высшего качества (SACD или Super Audio CD), диск цифровой звукозаписи (DAD или Digital Audio Disc).
Эти стандарты предполагают диски с разрешающей способностью (уровни квантования) 24 бита и частотой выборки в 96 кГц, в противоположность обычному CD с форматом 16 бит и 44,1 кГц. Кроме того, формат SACD обладает обратной совместимостью с существующими проигрывателями — факт, который может помочь в сражении за потребителя.
Когда DVD появились в 1996 г., еще не был предусмотрен формат DVD-Audio и только в начале 1998 г. DVD-Форум в сотрудничестве с ключевыми производителями промышленности музыки выпустил проект такого стандарта [24, 25]. Спецификация DVD аудио VI.0 была выпущена весной 1999 г., но потребовался еще год, прежде чем вышла спецификация VI .2, в которой были добавлены защита от копирования и создание водяных знаков.
Основное преимущество спецификации DVD-аудио сравнительно с DVD-видео и компакт-диском заключается в значительном увеличении качества при записи в аудиоформате РСМ (Pulse Code Modulation или импульсно-кодовая модуляция).
DVD -аудио обеспечивают значительно более высокое качество РСМ -аудио, чем возможно на компакт-диске или DVD-видео. DVD-аудио РСМ может быть записан с диапазоном частот, который более чем в 4 раза шире, чем для CD, что предоставляет
живость и выразительность, невозможные на компакт-диске. DVD -аудио РСМ также имеет намного больший динамический диапазон, чем это возможно на компакт-диске, — делающий
громкие звуки громче, а тихие — более тихими.
Таблица 3.1 сравнивает технические спецификации для РСМ на DVD-аудио и стандартном компакт-диске.
Вместимость двухслойного диска DVD-аудио — по крайней мере до 2 ч для полного, окружающего звука, и до 4 ч для стереозвука. Вместимость однослойного диска — вполовину ниже.
Сравнительные характеристики некоторых форматов. На Рис. 3.4 приводятся амплитудно-частотные характеристики (АЧХ) аудиосигналов:
• исходный звук (WAVE-файл);
• результаты кодирования-декодирования каждым из кодеков: МРЗ на 128 и 192 кбит/с; МРЗРrо на 64 и 96 кбит/с; WMA на 64 и 96 кбит/с.
Жанры музыки, выбранные для тестирования:
Dance — современная танцевальная музыка (Gala «Keep Secret», ритмичный и богатый различными стереоэффектами фрагмент);
Jazz — джаз с живыми исполнителями (Joe Cocker «Could You Be Loved», исключительно живая музыка с мощным мужским вокалом и женским бэк-вокалом, насыщенная на средних и высоких частотах);
Pop — поп-музыка с вокалом (Nek «Laura No Esta», итало-поп с ярко выраженным вокалом и, соответственно, богатыми средними частотами).
На АЧХ, представляющих танцевальную музыку и битрейты, соответственно 128 кбит/с для МРЗ и 64 кбит/с для МРЗРrо и WMA (рис. 3.4, а), легко заметить, что на частотах до 10 кГц все кодеки выглядят практически одинаково, не считая провала на 30 Гц у МРЗ, который, правда, не будет заметен на слух.
В случае джаза, где реальные инструменты звучат в сочетании с различными вокалами (рис. 3.4, б) следует отметить МРЗ/128, как обеспечивающий наиболее точный результат. Несмотря на то, что фильтрация верхнего диапазона начинается уже на 15,5 кГц, передача высоких частот до этого момента достаточно точная. В случае МРЗРrо /64 звук более богат деталями высоких частот.
В случае поп-музыки (рис. 3.4, в) лидером является МРЗРrо.
При рассмотрении более высоких битрейтов (рис. 3.4, г, д), заметно, что все кодеки ведут себя более предсказуемо, при этом ближе всех к форме оригинальной АЧХ графики у МРЗРrо и МРЗ, a WMA не передает ряд мелких деталей.
Если говорить о поп-музыке, то теперь WMA не искажает вокал Nek и звучит очень хорошо, примерно на уровне МРЗ в 128 —160, хотя этого и не скажешь, глядя на графики АЧХ. По частотному балансу МРЗРrо 96 и МРЗ 192 идут практически на одном уровне.
Вполне естественно, что увеличение потока приведет к улучшению и такой более сложной для кодирования музыки, как джаз.
Программные средства записи-воспроизведения звука
Большинство МРЗ-файлов производится из материала, находящегося на аудиокомпакт-диске. Это — двухступенчатый процесс, первая стадия включает преобразование дорожек из формата цифровой звукозаписи CD-DA (CD-Digital audio) к формату WAV. Есть программы, которые могут произвести МРЗ непосредственно из аудио CD, но они достигают этого, все же выполняя извлечение аудио из компакт-диска как начальный шаг процесса. Задача выполняется специализированными программами, известными как CD-Ripper (взломщики CD). Программа читает дорожки аудиокомпакт-диска в цифровой форме и записывает их на жесткий диск как WAV-файлы. Четырехминутная дорожка (трек, фонограмма) занимает около 40—50 Мбайт формата WAV (расширение .wav), так что преобразование полного компакт-диска требует большое пространство на жестком диске.
Вторая стадия в процессе заключается в конвертировании .wav-файла в формат .mрЗ. Этот шаг использует специализированное программное обеспечение и программы, которые исполняют эту задачу, известны как кодеры МРЗ. МРЗ-файлы могут создаваться, используя разнообразие норм сжатия, разрешая пользователям выбрать оптимальное соединение количества и качества. Как правило, доступны следующие варианты:
• качество компакт-диска — сжатие 12:1, поток данных (битрейт) между 128 и 192 кбит/с;
• почти качество компакт-диска — сжатие в пределах 18 : 1;
• качество радио ЧМ — сжатие может быть 70 : 1, скорость — 64 кбит/с.
МРЗ Maker. Программный продукт Magix 2004 МРЗ Maker (рис. 3.5, 3.6) реализует следующие преобразования звуковых данных:
• дорожка аудиоСD — файл МРЗ;
• микрофонный или линейный вход — файл МРЗ;
• файл МРЗ — аудиоСD и пр.
Winamp. Winamp является весьма популярным плейером, это мультимедиа плейер с поддержкой неограниченного числа форматов (рис. 3.7). При этом используются декодеры, предоставляемые производителями. В целом система напоминает работу Windows с WAV-файлами. Он является одним из самых развитых плейеров, и не только МРЗ. Большинство МРЗ-файлов, доступных через Internet, закодировано в формате 44 кГц и 128 Кбит/с, который приводит к хорошему коэффициенту «качество/размер» для файла МРЗ.
Системы воспроизведения звукового окружения. Средства воспроизведения звукового окружения начинались со стереозаписей и УКВ ЧМ-радио. Широко использовались магнитофоны и FM-стерсо тюнеры с высококачественным двухканальным звуком. В кинотеатрах зрители могли оценить звук в формате Dolby Stereo Optical. Первые видеокассеты предполагали только монофонический звук посредственного качества, однако вскоре начали тиражироваться кассеты с двухканальным звуком. Сначала использовались просто раздельные звуковые дорожки, затем технология Hi-Fi. Лазерные диски с самого начала выпускались с двухканальным стереозвуком высокого качества. Вскоре и большинство стандартов вещательного телевидения были адаптированы для передачи видео с двухканальным звуковым сопровождением в эфире и в кабеле.
Первыми на рынке появились простые декодеры Dolby Surround, которые позволяли на домашней аппаратуре выделить и прослушать третий пространственный канал — surround channel. Впоследствии был разработан более интеллектуальный декодер, Dolby Surround Pro Logic, который выделял и центральный — center channel. Получился «домашний кинотеатр – комплекс аппаратуры для высококачественного воспроизведения звука и видео с декодером Dolby Pro Logic Surround Sound (рис 3.8).
Во-первых, технология Dolby Pro Logic удачно совмещает оптимальную конфигурацию пространственных каналов (R, L, С, S) с возможностями записи и передачи (два физических канала), которыми обладает практически вся бытовая аппаратура. Во-вторых, возможности и качество Dolby Pro Logic отвечают актуальным требованиям современного пользователя. И, в-третьих, используются единые стандарты на аппаратные и программные средства.
Сегодня в Dolby Surround кодируется звуковое сопровождение вещательного телевидения, причем не только художественных фильмов, но музыкальных, спортивных передач и даже новостей. Dolby Surround используется и в областях, не связанных с видео, например, звукозаписывающие компании Delos, RCA Victor/BMG Classic, Concord Jazz выпустили на рынок CD и аудиокассеты с музыкальными записями в Dolby. Многими разработчиками ведутся успешные эксперименты по внедрению Dolby Surround в видеоигры и другие мультимедийные приложения.
Кодер Dolby Surround не предназначен для передачи четырех независимых сигналов звука, каждый из которых надо прослушивать раздельно (например, звука одной ТВ программы на разных языках). В этом случае развязка между двумя любыми кана-1ами должна была бы быть максимальной, а амплитуды и фазы сигналов могли бы быть совершенно не связаны между собой. Напротив, задача Dolby Surround — передать четыре канала звука (soundtrack), которые будут прослушиваться одновременно и при этом воссоздавать в сознании слушателя пространственную звуковую картину (soundfield). Эта картина составляется из нескольких звуковых образов (sound images) — звуков, которые слушатель воспринимает связанными со зрительными образами на экране. Звуковой образ характеризуется не только содержанием и мощностью звука, но и направлением в пространстве.
На входе кодера Dolby Surround присутствуют сигналы четырех каналов. — L, С, R и S, а на выходах — два канала Lt (left total) и Rt (right total). Слово «total» (общий) означает, что каналы содержат не только «свой» сигнал (левый и правый), но и кодированные сигналы других каналов — С и S.
Кодирование реализуется простыми аналоговыми методами. Сигнал, кодированный в Dolby Surround, не содержит каких-либо управляющих сигналов или инструкций для декодера. По своим электрическим характеристикам он ничем не отличается от обычного двухканального сигнала стерео, и опознать кодированный сигнал простыми аппаратными методами (например, с помощью осциллографа или анализатора спектра) невозможно.
3.3. Технологии статических изображений
С 80-х гг. бурно развивается технология обработки на компьютере графической информации. Компьютерная графика широко используется в компьютерном моделировании в научных исследованиях, компьютерных тренажерах, компьютерной анимации, деловой графике, играх и т. д.
Растровая и векторная информация
Существуют два основных принципа формирования изображения. Первый — путем нанесения на поверхность рисунка совокупности точек разного цвета, плотности, яркости (как это и происходит в цветной или черно-белой полиграфии), второй — путем вычерчивания и заштриховывания (графика или гравюра).
Оба этих подхода сохранились и в компьютерную эру, только точечное изображение получило наименование растрового (впрочем, как это и было у печатников — рис 3.9, а), рисованное — векторного (рис. 3.9, б). Кроме того, компьютеризация сама предложила ряд новых подходов к графике, например фрактальный. Фрактал — это объект, отдельные элементы которого наследуют свойства родительских структур. Фракталы позволяют детально описывать целые классы изображений с расходованием относительно малого количества памяти, однако к изображениям вне этих классов фракталы плохо применимы.
Большинство устройств ввода-вывода данных в ЭВМ имеют дело с растровой информацией, хотя векторное изображение более экономично, например, чтобы провести прямую, при векторном подходе достаточно задать координаты се начала и конца (четыре числа, (х1, у1), (х2, у2)) в то время как растровое описание требует задания всех точек прямой (а их может быть несколько сотен или тысяч!). Более того, векторное представление легко масштабируется (рис. 3.9, б), что и используется в форматах документов PostScript, PDF и пр.
Поэтому перед разработчиками информационных систем стоит важная проблема — векторизация растрового изображения (рис. 3.9, в). Этот процесс называется трассировкой.
Программа трассировки отыскивает группы пикселей с одинаковым цветом, а затем создает соответствующие им векторные объекты.
Схемы цветообразования
Цвета одних предметов человек видит потому, что они излучают свет, а других — потому, что они его отражают. Когда предметы излучают свет, они приобретают тот цвет, который мы видим. Когда они отражают свет (бумага, например), их цвет определяется цветом падающего на них света и цветом, который эти объекты отражают.
Сегодня диаметрально противоположные способы генерации цвета мониторов и принтеров являются основной причиной искажения экранных цветов при печати. Для того чтобы получать предсказуемые результаты на экране и печати, нужно хорошо представлять работу двух противоположных систем описания цвета в компьютере: аддитивной и субтрактивной.
Аддитивные и субтрактивные цвета. Аддитивный цвет (от англ. add — суммировать, складывать) образуется при соединении лучей света разных цветов. В этой системе используются три основных цвета — красный, зеленый и синий (RGB — Re d, G r e e n, В1 u e). Если их смешать друг с другом в равной пропорции, они образуют белый цвет, а при смешивании в разных пропорциях — любой другой, отсутствие же всех основных цветов представляет черный цвет. Система аддитивных цветов работает с излучаемым светом, например от монитора компьютера.
В системе субтрактивных цветов (от англ. subtract — вычитать) происходит обратный процесс — вы получаете какой-либо цвет, вычитая другие цвета из общего луча отраженного света. В этой системе белый цвет появляется в результате отсутствия всех цветов, тогда как их присутствие дает черный цвет. Система субтрактивных цветов работает с отраженным светом, например от листа бумаги. Белая бумага отражает все цвета, окрашенная — некоторые поглощает, а остальные отражает.
В системе субтрактивных цветов основными являются голубой, пурпурный и желтый цвета (CMY), противоположные красному, зеленому и синему. Когда эти цвета смешиваются на белой бумаге в равной пропорции, получается черный цвет. Вернее, предполагается, что должен получиться черный цвет. В действительности типографские краски поглощают свет не полностью и поэтому комбинация трех основных цветов выглядит темно-коричневой. Чтобы исправить возникающую неточность, для представления тонов черного цвета принтеры добавляют немного черной краски. Систему цветов, основанную на таком процессе четырехцветной печати, принято обозначать аббревиатурой CMYK (Cyan, Magenta, Yellow, Black).
Цветовая модель RGB. Монитор компьютера создает цвет непосредственно излучением света и использует, таким образом, систему цветов RGB. Поверхность монитора состоит из мельчайших точек (пикселей) красного, зеленого и синего цветов, форма точек варьируется в зависимости от типа электронно-лучевой трубки (ЭЛТ). Пушка ЭЛТ подает сигнал различной мощности на экранные пиксели. Каждая точка имеет один из трех цветов, при попадании на нее луча из пушки она окрашивается в определенный оттенок своего цвета в зависимости от силы сигнала. Поскольку точки маленькие, уже с небольшого расстояния они визуально смешиваются друг с другом и перестают быть различимы. Комбинируя различные значения основных цветов, можно создать любой оттенок из более 16 млн цветов, доступных в RGB.
Лампа сканера светит на поверхность захватываемого изображения (или сквозь слайд), затем отраженный или прошедший через слайд свет с помощью системы зеркал попадает на чувствительные датчики, которые передают данные в компьютер также в системе RGB. Система RGB адекватна цветовому восприятию человеческого глаза, рецепторы которого тоже настроены на красный, зеленый и синий цвета.
Цветовая модель CMYK. Система цветов CMYK была широко известна задолго до того, как компьютеры стали использоваться для создания графических изображений. Триада основных печатных цветов: голубой, пурпурный и желтый (CMY, без черного) является, по сути, наследником трех основных цветов живописи (синего, красного и желтого). Изменение оттенка первых двух связано с отличным от художественных химическим уставом печатных красок, но принцип смешения тот же самый, художественные, и печатные краски, несмотря на провозглашаемую самодостаточность, не могут дать очень многих оттенков. Поэтому художники используют дополнительные краски на основе чистых пигментов, а печатники добавляют как минимум черную краску. Система CMYK создана и используется для печати. Все файлы, предназначенные для вывода в типографии должны быть конвертированы в CMYK. Этот процесс называется цветоделением.
Цвет в CMYK может быть описан совокупностью четырех чисел (или цветовыми координатами), каждое из которых представляет собой процент краски основных цветов, составляющий цветовую комбинацию. Например, для получения темно-оранжевого цвета следует смешать 30 % краски cyan, 45 % magenta, 80 % yellow и 5 % black, тогда этот цвет можно закодировать следующим образом — (30,45,80,5), или же C30M45Y80K5.
Схема YUV. Исследования показали, что глаз человека более восприимчив к яркости, чем к цветам. Это использовано в телевизионном методе YUV для кодирования изображений, при котором интенсивность обрабатывается независимо от цвета. Сигнал Y предназначен для передачи интенсивности и измеряется в максимальном разрешении, в то время как U и V — для цветовых сигналов различия.
При YUV-представлении видеосигнала цветоразностные компоненты U и V передаются с вдвое меньшим разрешением (частота дискретизации у сигнала яркости в 4 раза больше основной частоты в 3 МГц, а у цветоразностных — в 2 раза). Обычно при характеристике устройств ввода такую оцифровку называют половинным разрешением (или YUV 4:2:2). Запись 4:1:1 (разрешение одной четверти YUV 4:1:1) означает в 4 раза меньшую частоту выборки, что приводит к потере качества изображения. Запись 8:8:8 означает представление и оцифровку видеосигнала как RGB-составляющих с наилучшим качеством.
Перевод в цифровую форму сигнала YUV вместо RGB требует 16 битов (два байта) вместо 24 битов (три байта), чтобы представить точный цвет, так что одна секунда видеоформата PAL требует приблизительно 22 Мбайта.
Цветовые модели HSB и HSL. Системы цветов RGB и CMYK базируются на ограничениях, накладываемых аппаратным обеспечением (мониторами и сканерами в случае с RGB и типографскими красками в случае со CMYK). Более логичным способом описания цвета является представление его в виде тона, насыщенности и яркости — система HSB. Она же известна как система HSL (тон, насыщенность, освещенность).
Тон представляет собой конкретный оттенок цвета на цветовом круге, отличный от других: красный, зеленый, голубой и т. п. Насыщенность цвета характеризует его относительную интенсивность (или чистоту). Уменьшая насыщенность, например красного, мы делаем его более пастельным, приближаем с серому. Яркость (или освещенность) цвета показывает величину затемнения или осветления исходного оттенка.
HSB имеет перед другими системами важное преимущество она больше соответствует природе цвета, хорошо согласуется с моделью восприятия цвета человеком. Многие оттенки можно быстро и удобно получить в HSB, конвертировав затем в RGB или CMYK, доработав в последнем случае, если цвет был искажен.
Цветовая модель Grayscale. Цветовая модель Grayscale представляет собой ту же индексированную палитру, где вместо цвета пикселям назначена одна из 256 градаций серого.
Форматы графических файлов
Сжатие информации. Объем обрабатываемой и передаваемой информации быстро растет. Это связано с выполнением все более сложных прикладных процессов, появлением новых информационных служб, использованием изображений и звука. Сжатие данных (data compression) — процесс, обеспечивающий уменьшение объема данных. Сжатие позволяет резко уменьшить объем памяти, необходимой для хранения данных, сократить (до приемлемых размеров) время их передачи. Особенно эффективно сжатие изображений. Сжатие данных может осуществляться как программным, так и аппаратным или комбинированным методом.
Сжатие текстов связано с более компактным расположением байтов, кодирующих символы. Определенные результаты дает статистическое кодирование, в котором наиболее часто встречающиеся символы имеют коды наименьшей длины. Здесь также используется счетчик повторений пробелов. Что же касается звука и изображений, то объем представляющей их информации зависит от выбранного шага квантования и числа разрядов аналого-дискретного преобразования. В принципе, здесь используются то же методы сжатия, что и при обработке текстов. Если сжатие текстов происходит без потери информации, то сжатие звука и изображения почти всегда приводит к ее некоторой потере. Сжатие широко используется при архивировании данных.
Размер файла, в котором сохраняется изображение, существенно зависит от формата файла, а это — важная характеристика технологии, поскольку высокие разрешающие способности, поддерживающиеся многими современными сканерами, могут при вести к созданию файлов размером до 30 Мбайт для страницы формата А4.
Методы сжатия графики.
RLE. При сжатии методом RLE (Run Length Enconding кодирование длины серий) последовательность повторяющихся величин (например, набор бит для представления пикселя) заменяется парой — повторяющейся величиной и числом ее повторений. Метод сжатия RLE используется в некоторых графических форматах, например в PCX.
Программа сжатия файла может сначала записывать количество видеопикселей, а затем их цвет или наоборот. Поэтому возможна такая ситуация, когда программа, считывающая файл, ожидает появления данных в ином порядке, чем программа, сохраняющая этот файл на диске. Если при попытке открыть файл, сжатый методом RLE, появляется сообщение об ошибке или полностью искаженное изображение, нужно считать этот файл с помощью другой программы или преобразовать его в иной формат.
Сжатие методом RLE наиболее эффективно для изображений, которые содержат большие области однотонной закраски, и наименее эффективно для отсканированных фотографий, так как в них нет длинных последовательностей одинаковых видеопикселей.
Метод сжатия LZW (назван так по первым буквам его разработчиков Lempel, Ziv, Welch) основан на поиске повторяющихся узоров в изображении. Сильно насыщенные узорами рисунки могут сжиматься до 0,1 их первоначального размера. Метод сжатия LZW применяется для файлов форматов TIFF и GIF; при этом данные формата GIF сжимаются всегда, а в случае формата TIFF право выбора возможности сжатия предоставляется пользователю. Существуют варианты формата TIFF, которые используют другие методы сжатия. Это означает, что возможна ситуация, когда файл в формате TIFF не может быть прочитан некоторой графической программой, хотя она должна «понимать» этот формат.
Метод сжатия JPEG обеспечивает высокий коэффициент сжатия для рисунков фотографического качества. Формат файла JPEG, использующий этот метод сжатия, разработан объединенной группой экспертов по фотографии (Joint Photographic Experts Group). Сжатие по JPEG сильно уменьшает размер файла с растровым рисунком (возможен коэффициент сжатия 100:1). Высокий коэффициент сжатия достигается за счет сжатия с потерями, при котором в результирующем файле теряется часть исходной информации. Метод JPEG использует тот факт, то в то время как человеческий глаз чувствителен к изменению кости, изменения цвета он замечает хуже. Поэтому при сжатии этим методом запоминается больше информации о разнице между яркостями пикселей и меньше — о разнице между их цветами. Уровень сжатия (степень потери данных) может изменяться, но даже при задании максимального качества JPEG теряет некоторые подробности. Количество доступных уровней сжатия зависит от используемого для редактирования изображений программного обеспечения.
Растровые форматы
Перечислим основные растровые форматы изображений.
BMP (BitMaP — точечный рисунок) — основной формат растровой графики в ОС Windows. Для имени файла, представленного в BMP-формате, чаще всего используется расширение .bmp, хотя некоторые файлы имеют расширение .rle, что обычно указывает на то, что произведено сжатие растровой информации файла одним из двух способов сжатия RLE, которые допустимы для файлов ВМР-формата.
В файлах BMP информация о цвете каждого пикселя кодируется 1, 4, 8, 16 или 24 битами (бит/пиксель). Числом бит/пиксель, называемым также цветовой глубиной, определяется максимальное число цветов в изображении. Изображение при глубине 1 бит/пиксель может иметь всего два цвета, а при глубине 24 бит/пиксель — более 16 млн (224) различных цветов.
Файл разбит на четыре основных раздела — заголовок файла Растровой графики, информационный заголовок растрового массива, таблица цветов и собственно данные растрового массива загодовок файла растровой графики содержит информацию Файле, в том числе адрес, с которого начинается область данных растрового массива. В информационном заголовке массива содержатся сведения об изображении, хранящемся файле (например, высоте и ширине в пикселях). В таблице цветов представлены значения основных цветов RGB (красный зеленый, синий) для используемых в изображении цветов. Программы, считывающие и отображающие BMP-файлы, в случае использования видеоадаптеров, которые не позволяют отображать более 256 цветов, для точной цветопередачи могут программно устанавливать такие значения RGB в цветовых палитрах адаптеров.
Формат собственно данных растрового массива в файле BMP зависит от числа бит, используемых для кодирования данных о цвете каждого пикселя. При 256-цветном изображении каждый пиксель в той части файла, где содержатся собственно данные растрового массива, описывается одним байтом (8 бит). Это описание пикселя не представляет значений цветов RGB, а служит указателем для входа в таблицу цветов файла. Таким образом, если в качестве первого значения цвета RGB в таблице цветов файла BMP хранится R/G/B = 255/0/0, то значению пикселя 0 в растровом массиве будет поставлен в соответствие ярко-красный цвет. Значения пикселей хранятся в порядке их расположения слева направо, начиная (как правило) с нижней строки изображения. Таким образом, в 256-цветном ВМР-файле первый байт данных растрового массива представляет собой индекс для цвета пикселя, находящегося в нижнем левом углу изображения; второй байт представляет индекс для цвета соседнего справа пикселя и т. д.
Файлы BMP с глубиной 16 и 24 бит/пиксель не имеют таблиц цветов; в этих файлах значения пикселей растрового массива непосредственно характеризуют значения цветов RGB.
PCX — первый стандартный формат файлов для растровой графики в компьютерах систем IBM PC. На этот формат, применявшийся в программе Paintbrush фирмы ZSoft, в начале 1980-х гг. фирмой Microsoft была приобретена лицензия, затем он распространялся вместе с изделиями Microsoft, в дальнейшем был преобразован в Windows Paintbrush и начал распространяться с Windows. Хотя область применения этого популярного формата сокращается, файлы формата PCX, которые легко узнать по расширению рсх, все же распространены и сегодня.
Файлы PCX включают три части — заголовок PCX, данные растрового массива, факультативную таблицу цветов. Заголовок (128-байтовый) содержит несколько полей данных, в том числе о размере изображения и количестве бит для кодирования цветовой информации каждого пикселя. Информация растрового массива сжимается с использованием метода RLE; факультативная таблица цветов в конце файла содержит 256 значений цветов RGB, определяющих цвета изображения. Кодирование цвета каждого пикселя в современных изображениях PCX может производиться с глубиной 1, 4, 8 или 24 бит.
TIFF (Tagged Image File Format — формат файлов изображения, снабженных тегами). Если PCX — один из самых простых для декодирования форматов растровой графики, то TIFF — один из самых сложных. Файлы TIFF имеют расширение tif. Каждый файл начинается 8-байтовым заголовком файла изображения (IFH), важнейший элемент которого — каталог файла изображения (Image File Directory — IFD) — служит указателем к структуре данных. IFD представляет собой таблицу для идентификации одной или нескольких порций данных переменной длины, называемых тегами, хранящими информацию об изображении. В спецификации формата файлов TIFF определено более 70 различных типов тегов. Например, тег, хранящий информацию о ширине изображения в пикселях, или о его высоте, или таблица цветов (при необходимости), или сами данные растрового массива. Изображение, закодированное в файле TIFF, полностью определяется его тегами, и этот формат файла легко расширяется, поскольку для придания файлу дополнительных свойств достаточно определить дополнительные типы тегов. Данные растрового массива в файле TIFF могут сжиматься с использованием любого из нескольких методов, поэтому в надежной программе для чтения файлов TIFF должны быть средства распаковки RLE, LZW и несколько других.
GIF (Graphics Interchange Format — формат обмена графическими данными, произносится «джиф») разработан компанией CompuServe (расширение — gif). Структура файла зависит от версии GIF-спецификации (распространены две версии — GIF 87а и GIF89a). Независимо от номера версии файл GIF начинается с 13-байтового заголовка, содержащего сигнатуру, которая идентифицирует этот файл в качестве GIF-файла, номер версии GIF и другую информацию. Если файл хранит только одно изображение, вслед за заголовком обычно располагается общая таблица цветов, определяющая палитру изображения. Если в файле хранится несколько изображений, то вместо общей таблицы цветов каждое изображение сопровождается ложной таблицей цветов.
Основные достоинства GIF заключаются в широком распространении этого формата и его компактности. Но ему присущи два достаточно серьезных недостатка. Один из них состоит том, что в изображениях, хранящихся в виде GIF-файла, не может быть использовано более 256 цветов. Второй, возможно, еще более серьезный, заключается в том, что разработчики программ, использующие в них форматы GIF, должны иметь лицензионное соглашение с CompuServe и вносить плату за каждый экземпляр программы; такая ценовая политика была принята CompuServe после того, как Unisys объявила, что начнет добиваться соблюдения своих прав собственности и потребовала от тех, кто пользуется алгоритмом сжатия LZW, вносить лицензионные платежи. Возникшее в результате этого запутанное юридическое положение тормозит внедрение в свои графические программы средств для работы с файлами GIF.
PNG (Portable Network Graphic — переносимый сетевой формат, произносится «пинг», расширение — .png) был разработан для замены GIF, чтобы обойти юридические препятствия, стоящие на пути использования GIF-файлов. PNG унаследовал многие возможности GIF и, кроме того, позволяет хранить изображения с истинными цветами. Еще более важно, что он сжимает информацию растрового массива в соответствии с вариантом пользующегося высокой репутацией алгоритма сжатия LZ77 (предшественника LZW), которым любой может пользоваться бесплатно.
JPEG (произносится «джейпег», расширение — .jpg) был разработан компанией C-Cube Microsystems как эффективный метод хранения изображений с большой глубиной цвета, например, получаемых при сканировании фотографий с многочисленными едва уловимыми оттенками цвета. Используется алгоритм JPEG-сжатия с потерями информации. Таблица 3.2 иллюстрирует размеры и цветовую глубину файлов, которые соответствуют различным форматам при сохранении исходного изображения размером в 1 Мбайт.
Векторные форматы
Файлы векторного формата содержат описания рисунков в наборе команд для построения простейших графических объектов (линий, окружностей, прямоугольников, дуг и т. д.). Кроме того, в этих файлах хранится некоторая дополнительная информация. Различные векторные форматы отличаются набором команд и способом их кодирования.
WMF (Windows Metafile) — формат, доступный большинству приложений Windows, так или иначе связанными с векторной графикой, служит для передачи векторов через буфер обмена (Clipboard). Однако может искажать цвет, не сохранять ряд параметров, которые могут быть присвоены объектам в различных векторных редакторах, не воспринимается программами Macintosh.
EPS (Encapsulated PostScript) — упрощенный PostScript, может использоваться большинством настольных издательских систем и векторных программ, некоторыми растровыми программами. Однако не может содержать в одном файле более одной страницы, не сохраняет ряд установок для принтера. Как и в файлы печати PostScript, в EPS записывают конечный вариант Работы, хотя такие программы как Adobe Illustrator, Photoshop и Macromedia FreeHand могут использовать его как рабочий.
DXF (Drawing Interchange Format) используется всеми программами САПР, многими векторными редакторами, некоторыми издательскими системами.
CGM (Computer Graphics Metafile) используется в программах редактирования векторных рисунков, САПР и издательских системах.
SVG (Scalable Vector Graphics) — расширение языка XML (разработанное Консорциумом Всемирной Паутины), предназначенное для того, чтобы описать двумерную векторную графику как статическую, так и анимированную. SVG допускает три типа графических объектов: 1) векторные графические формы (например контуры, состоящие из прямых и кривых линий и областей, ограниченных ими); 2) растровая графика, представляющая оцифрованные образы; 3) текст. Тип файла — svg, svgz.
Источниками статических изображений традиционно являлись растровые сканеры, а в последнее время широко используются цифровые фотокамеры [25]. Рассмотрим основные характеристики изображений, процессов их создания и обработки.
Оптическое разрешение
Оптическое разрешение измеряется в пикселях на дюйм (ppi — pixels per inch), иногда dpi — точки на дюйм, однако понятие точка означает элемент, не имеющий конкретной формы, ими меряется разрешение печатающих устройств. Сканеры и растровые графические файлы оперируют пикселями, имеющими форму квадрата.
Сканеры. Оптическое разрешение показывает, сколько пикселей сканер может считать на квадратный дюйм. Его значение записывается так: 300 x 300, 300 x 600, 600 х 1200 и т. п. Первое число говорит о количестве считывающих информацию датчиков, именно на него стоит обращать внимание, хотя часто производители и продавцы любят указывать, в качестве разрешения, что-нибудь вроде 4000, 4500 dpi. Это интерполированное разрешение, которое является свойством не сканера, а его поддерживающей программы. Качество изображений, полученных таким образом зависит не только от сканера, но и от качества функций интерполяции, реализованных в программе [25].
Интерполяция — способ увеличения (уменьшения) размера или резолюции файла посредством программы. При уменьшении данные отбрасываются, при увеличении — программа их вычисляет. Таким образом, сильно увеличенные картинки выглядят размытыми или зубчатыми (в зависимости от способа интерполяции).
Известны три основных способа интерполяции:
• Nearest Neighbor — для добавляемого пикселя берется значение соседнего с ним;
• Bilinear — выбирается среднее цветовое значение пикселей с каждой стороны от создаваемого;
• Bicubic — усредняется значение группы не только непосредственно граничащих, но и всех соседних пикселей. Какой именно диапазон пикселей выбирается для усреднения и по какому алгоритму это усреднение происходит — этим отличаются способы бикубической интерполяции в разных программах.
Наконец, важным свойством относительно новых образцов сканеров является сканирование в 32-битном (и более) режиме. Здесь цвет одного пикселя описывается не в 24 битах стандартного RGB — один из 16 700 000 оттенков, а большим количеством информации, что позволяет передать большее количество уникальных оттенков. Затем Photoshop, или другая программа в соответствии с установками генерации 24-битного RGB, производит цветовую интерполяцию — усредняет оттенки. Результат получается лучше, хотя это видно только на калиброванных мониторах и на качественных распечатках.
Цифровые камеры. Качество цифровой камеры зависит от нескольких факторов, включая оптическое качество линзы, матрицы съемки изображения, алгоритмов сжатия и других компонентов. Однако, самый важный детерминант качества изображения — разрешающая способность матрицы ПЗС: чем больше элементов, тем выше разрешающая способность, и таким образом, больше подробностей может быть зафиксировано.
В 1997 г. типичная разрешающая способность цифровых камер была 640 х 480 пикселей, год спустя появились «камеры мегапикселя», что подразумевало, что за те же деньги можно было приобрести модель на 1024 х 768 или даже 1280 х 960. К началу 1999 г. разрешающие способности дошли до 1536 х 1024 и к середине этого же года был преодолен барьер 2 мегапикселей с появлением разрешающей способности 1800 х 1200 = 2,16 млн пикселей. Год спустя — барьер 3 мегапикселей (2048x1536 = 3,15 млн пикселей). Первая камера с 4 мегапикселями появилась в середине 2001 г., обеспечивая 2240 х 1860 = 4,16 млн пикселей
Однако даже датчик Foveon ХЗ (4096 х 4096 = 16,8 млн пикселей) [25] все еще не перекрывает возможностей обычной фотопленки. поскольку высококачественные линзы объективов обеспечивают разрешение по крайней мере 200 точек на 1 мм, негативная пленка стандарта 100ASA шириной 35 мм и размером кадра 24 х 36 мм обеспечит разрешение 24 х 200 х 36 х 200 -= 34,56 млн пикселей, что все еще недостижимо для цифровых камер.
Разрядная глубина
Разрядная (битовая, цветовая) глубина сканера характеризует количество информации, содержащейся в одном пикселе выходного образа. Битовую глубину изображения часто называют цветовой разрешающей способностью. Она измеряется в битах на пиксел (bit per pixel, bpp). Так, если речь идет об иллюстрации, имеющей в каждом пикселе по 8 бит цветовой информации, то ее цветовая разрешающая способность будет 8 bpp, что дает 28 = 256 доступных для 8-битового изображения цветов.
Самый простой сканер (черно-белый сканер на 1 бит) использует для представления каждого пикселя «1» или «0». Чтобы воспроизвести полутона между черным и белым, сканер должен иметь хотя бы 4 бита (для 16 = 24 полутонов) или 8 бит (для 256 = 28 полутонов) на каждый пиксель.
Самые современные цветовые сканеры поддерживают не менее 24 бит, что означает фиксацию 8 бит информации по каждому из первичных цветов (красный, синий, зеленый). Устройство на 24 бита может теоретически фиксировать более чем 16 млн различных цветов, хотя практически это число намного меньше. Это почти фотографическое качество, и упоминается поэтому обычно как «полноцветное» сканирование («true colour» scanning).
На принципе 8-битного цвета основана широко использовавшаяся в первой половине 90-х и применяемая в Internet даже сегодня цветовая модель Index Color. Она работает на основе создания палитры цветов. Все оттенки в файле делятся на 256 возможных вариантов, каждому из которых присваивается номер. Далее, на основе получившейся палитры цветов строится таблица, где каждому номеру ячейки приписывается цветовой оттенок в значениях RGB.
К форматам файлов, использующим только индексированные палитры относятся распространенный в прошлом на РС формат программы Paint — PCX, а также не потерявший и в наши дни своей актуальности GIF. Некоторые форматы как, на пример тот же GIF или PNG, позволяют делать палитры на основе произвольного количества цветов (до 256).
До появления 8-битового цвета из-за малых мощностей персональных компьютеров тех времен использовались палитры из 16 цветов (4 bpp), 4 цветов (2 bpp) и самая первая компьютерная графика была однобитовая — 2 цвета. Однобитовые изображения называемые Bitmap или, иногда, Lineart, используются и сегодня там, где не требуются цвето – тоновые переходы. Равный по размеру Bitmap-файл в 24 раза меньше, чем файл RGB, и кроме того, очень хорошо сжимается.
Динамический диапазон
Динамический диапазон по своей сути подобен разрядной глубине, которая описывает цветовой диапазон сканера, и определяется как функционированием АЦП сканера, так и чистотой света, качеством цветных фильтров и уровнем любых помех в системе.
Динамический диапазон измеряется в шкале от 0,0 (абсолютно белый) до 4,0 (абсолютно черный), и единственное число, данное для конкретного сканера, говорит, сколько оттенков модуль может различить. Большинство цветных планшетных сканеров с трудом воспринимает тонкие различия между темными и светлыми цветами на обоих концах диапазона и имеет динамический диапазон около 2,4. Это, конечно, немного, но обычно достаточно для проектов, где идеальный цвет не самоцель. Для получения большего динамического диапазона следует использовать цветовой планшетный сканер высшего качества с увеличенной разрядной глубиной и улучшенной оптикой. Эти высокопроизводительные модули обычно обеспечивают динамический диапазон между 2,8 и 3,2 и хорошо подходят для большинства приложений, требующих высококачественный цвет (например, офсетная печать). Наиболее близко к пределу динамического диапазона позволяют подойти барабанные сканеры, часто обеспечивающие значения от 3,0 до 3,8.
Теоретически сканер на 24 бита предлагает диапазон 8 бит (256 уровней) для каждого первичного цвета, и различие между двумя из 256 уровней обычно не воспринимается человеческим глазом. К сожалению, наименьшие из значащих битов теряются в шуме, в то время как любые тональные исправления после сканирования еще более сужают диапазон. Именно поэтому лучше всего предварительно устанавливать любые исправления яркости и цвета на уровне драйвера сканера перед заключительным сканированием. Более дорогие сканеры с глубиной в 30 или 36 битов имеют намного более широкий диапазон, предлагая более детализированные оттенки, и разрешают пользователю делать тональные исправления, заканчивающиеся приличным 24-битовым изображением. Сканер на 30 битов принимает 10 битов данных на каждый цвет, в то время как сканеры на 36 битов — по 12 битов. Драйвер сканера позволяет пользователю выбрать, какие именно 24 бита из исходных 30 или 36 битов сохранить, а какие — нет. Эта настройка делается путем изменения «кривой цветовой гаммы» (Gamma Curve), и доступна при обращении к Настройке тонов (Tonal Adjustment control)драйвера TWAIN.
Режимы сканирования
Среди разнообразия методов представления изображений в ЭВМ наиболее распространенными являются:
• штриховая графика (line art);
• полутоновое изображение (grayscale);
• цветное изображение (colour).
Штриховая графика — наиболее простой формат. Так как сохраняется только черно-белая информация (в компьютере представлен черный цвет как «1» и белый как «0»), требуется только 1 бит данных, чтобы сохранить каждую точку сканированного изображения. Штриховая графика наиболее подходит при сканировании чертежей или текста.
Полутоновое изображение. В то время как компьютеры могут сохранять и выдавать изображения в полутонах, большинство принтеров не способно печатать различные оттенки серых цветов. Они применяют метод, названный обработкой полутонов, используя точечный растр, имитирующий полутоновую информацию.
Изображения в оттенках серого — наиболее простой метод сохранения графики в компьютере. Человек может различить не более 255 различных оттенков серого, что требует единственного байта данных со значением от 0 до 255. Данный тип изображения составляет эквивалент черно-белой фотографии.
Полноцветные изображения — наиболее объемные и самые сохраняемые и обрабатываемые в ПК, используют 24 бита (по 8 на каждый из основных цветов), чтобы представить полный цветовой спектр.
3 4. Программные средства обработки изображений
Драйвер TWAIN
Изготовители сканеров создали специальный стандарт TWAIN (Toolkit Without Anlnteresting Name), обеспечивающий взаимодействие сканеров практически с любым прикладным ПО — пакетами обработки изображений наподобие Adobe PhotoShop, настольными издательскими системами или программами распознавания символов. Этот стандарт совместно разработан Hewlett-Packard, Kodak, Aldus, Logitech и Caere и определяет, каким образом устройства получения изображений (сканеры, цифровые камеры и др.) передают данные прикладным программам. Стандарт TWAIN позволяет приложениям работать с устройствами получения изображений, «не зная» что-либо об устройстве непосредственно. Если устройство совместимо с TWAIN, и приложение — тоже, они должны работать вместе независимо от того, было ли программное обеспечение куплено вместе с устройством или нет.
Разрешается одновременно подсоединять к ПК более чем одно TWAIN-совместимое устройство, как показано на рис. 3.10. Каждое из устройств при этом имеет свою собственную копию модуля TWAIN. Это обеспечивает конечного пользователя возможностью выбора, которое именно из устройств TWAIN следует использовать в течение сеанса. Допустим, пользователь выбрал опцию Импорт (Acquire) в меню Файл такого приложения, как PhotoShop, и в нем — соответствующий источник (Source) – twain. При этом будет активизирован TWAIN, который загрузит собственный драйвер устройства, не покидая основное приложение. После сканирования драйвер автоматически закрывается, оставляя полученное изображение открытым в основном приложении.
Все большее число изготовителей предоставляют сканеры с двумя драйверами TWAIN. Первый — основной, упрощенный драйвер, предназначенный для новичков, где сканер управляется в основном парой кнопок. Кнопка Предварительное сканирование (Preview) приводит к появлению «грубого» изображения в окне предварительного сканирования. Сканер в ускоренном режиме захватывает изображение низкого разрешения (около 20—35 dpi), чтобы пользователь мог выбрать только необходимый фрагмент. Здесь область сканирования может быть уточнена, а также откорректированы глубина цвета и разрешение. Почти все современные настольные модели предоставляют возможность предварительной цветокоррекции.
Когда пользователь полностью удовлетворен результатами предварительного сканирования, он может нажать кнопку Сканирование (Scan), чтобы инициализировать окончательное сканирование.
Для более «продвинутых» пользователей может использоваться кнопка Advanced Scanning Options где-нибудь на первом драйвере. Она запускает второй драйвер, предлагающий более высокие возможности полной настройки изображения (яркость, контраст, цвет и исправление цветовой гаммы). Это позволяет корректировать определенные диапазоны тональных значений, как в целом, так и в каждом из первичных цветов.
Разберем некоторые функции программы сканирования на примере утилиты MiraScan, поставляемой совместно с USB-сканерами (рис 3.11).
Выбор типа изображения — отраженный (Reflective) или проходящий свет;
Туре (цветовая модель) — позволяет выбрать цветовую модель. Обычно в таких списках присутствуют (Line art) только черный и белый, Grayscale 8 bit, 12 bit — 256 и больше градаций серого, Millions of Colors (стандартный RGB). Иногда у планшетных и всегда у профессиональных сканеров есть опция сканирования в режиме CMYK. В CMYK имеет смысл сканировать, только когда есть много картинок, предназначенных для цветоделения, или же из-за большого количества файлов есть опасность, что какая-то из RGB-картинок будет забыта;
Resolution (разрешение) — для Internet сканируется с разрешением 72 dpi — экранная резолюция; для газе ты — около 130—180 dpi (зависит от линиатуры растра, с которой печатается газета); для струйного принтера (обычная бумага) — 150—200 dpi; для качественной печати в типографии на лазерном или струйном принтере (хорошая бумага) 300 dpi. В режиме Bitmap имеет смысл сканировать от 300 dpi и выше (до 1200) в зависимости от желаемого качества и размера файла;
Scaling (масштабирование) — увеличение используют как правило, для слайдов. На планшетных сканерах со специальными крышками слайды сканировать не стоит, для слайдов существуют специальные сканеры. Auto Contrast & Color Correction — функции автоматической подстройки контраста и цветокоррекции. Используются, когда качество необязательно. Если нужна оптимальная цветопередача, все корректируется «на глаз»;
Brightness (яркость) — темные и средние изображения, предназначенные для полиграфии можно слегка осветлять, так как при печати они будут несколько затемнены;
Descreen (убрать муар) — опция, позволяющая эффективно убирать муар. Действует на основе определения линиатуры растра ранее напечатанной в типографии и теперь сканируемой картинки (Descreen не применяется к продукции струйных принтеров, так как их распечатки не имеют растровой сетки);
Муар (Screen, Moire) — паразитные узоры, образуемые наложением растровых сеток. Заметны при использовании линиатуры растра в 150 lpi и ниже;
Линиатура растра (Screen frequency) — плотность рядов точек (линий) в растровой сетке. Измеряется в линиях на дюйм — lpi (lines per inch);
Полутоновой растр (Halftone screen) — сетка точек на печатной плате. На каждой плате сетка повернута под своим углом, где точки больше, там большее сгущение цвета. Наложение всех плат CMYK дает полноцветную картинку.
Чтобы пользоваться Descreen, не обязательно точно знать линиатуру растра, достаточно выставить тип сканируемого оригинала: газета (Newspaper), 85 lpi, журнал (Magazine), 133 lpi журнал высокого полиграфического качества (Art Magazine)
150 lpi Custom. Надо отметить, что газеты могут печататься с натурой в диапазоне 60—85 lpi, журналы — 150—175 lpi, репродукции в книгах печатают на 175—200 lpi. Растр 175 lpi мало различим на глаз, растровая сетка в 200 lpi и выше уже не видна. Выбор линиатуры при растрировании оператором фотонабора обусловлен качеством бумаги и типом печатной машины, на которых будет выводиться издание. В диалоговом окне опции Custom… можно выставить точное количество линий на дюйм, если оно известно;
Filter – здесь, обычно, присутствуют фильтры размытия и усиления контраста. У всех типов сканеров есть свойство усиливать уже имеющиеся на изображении помехи: пыль, царапины, муар. Особенно важно предохранять от повреждений и запыления слайды, так как они будут увеличиваться — хранить и транспортировать их в антистатических конвертах.
Цветовая калибровке
Одна из особенностей использования настольного сканера — отсканированное изображение может выглядеть по-разному на экране и в отпечатанной форме и все это будет отличаться и от оригинала. Решение этой проблемы — система цветовой калибровки (или установка соответствия цветов). Такое программное обеспечение действительно ценно для сканирования высококачественных изображений (прозрачные пленки, печатные издания профессионального качества и т. д.), где необходимо выполнять строгие качественные стандарты. Однако для большинства людей, использующих настольный сканер, не столь же важен точный цвет, как приятный цвет. Сложности человеческого восприятия цветов сделали калибровку цветов большой проблемой, вследствие чего есть несколько различных подходов, как разработанных, так и перспективных.
Одна из самых полных систем — система управления цветом, разработанная Kodak (colour management system — CMS), который использует различные цветовые профили, соответствующие каждому устройству: сканеру, монитору, принтеру в системе, чтобы передавать и стандартизировать цвета. Элементы СМS встраиваются в Adobe PhotoShop и другое программное обеспечение, и CMS постепенно становится наиболее распространенным средством, применяемым для подготовки графических иллюстраций и других задач, которые связаны с согласованием цветов.
Другие системы были разработаны изготовителями сканеров и прикладными программистами. Эти системы также базируются на цветовых профилях различных устройств, которые будут использоваться для сканирования, редактирования и вывода заключительного изображения. В таких системах используется исправление на основе вывода, при этом сканируется и выводится стандартно калиброванное эталонное изображение, и затем вносятся изменения в цветовые профили, чтобы стандартизировать цвета. Это — менее сложный процесс и, вероятно, не соответствует потребностям пользователей, которые хотят непрерывно перекалибровывать свои системы для оптимальных результатов.
Фоторедактирование (ретуширование)
Когда сканер осуществляет фиксацию цветного изображения, это — часто только начало технологического процесса. Будучи однажды оцифрованной, фотография может быть представлена в разных видах и комбинироваться с другой информацией в растровом редакторе или пакете раскрашивания (рис. 3.12).
В подготовке печатного издания очень редко используются «сырые» изображения — черты моделей «очищаются»: сглаживание морщин, окраска глаз, «причесывание» волос и пр. Обычно фоторетушер пытается сделать одну из двух вещей — или замена некоторых элементов изображения (например, изменение цвета чьих-то волос), или сотворение чего-то нереального и фантастического. В любом случае, вмешательство ретушера не должно обнаруживаться визуально.
Большинство этих видов работ может быть произведено, например, используя Adobe PhotoShop, но даже самые простые программы раскрашивания позволяют проделать подобные изменения. Однако, хотя многое может быть выполнено с помощью более дешевых пакетов наподобие PaintShop Pro или PC Paintbrush, программы, подобные PhotoShop, Xres и Corel PhotoPaint, позволяют намного проще достигнуть сложных эффектов (рис. 3.13).
Возможности редактора MS Paint вкратце отображены на рис. 3.12. Не ограничиваясь этим, рассмотрим также редакторы, входящие в комплект приложений Linux-Unix/KDE [22].
Графический редактор OpenOffice.org Draw
Работа с векторной графикой. OpenOfTice.org Draw является объектно-ориентированной программой для создания векторной графики. Объектами могут быть линии, прямоугольники, трехмерные цилиндры или любые многоугольники. Для всех объектов уже установлены параметры, такие как размер, цвет поверхностей и контуров, привязанные файлы и т. д. Все параметры могут быть изменены (рис. 3.14).
Благодаря векторной технологии можно вращать объекты в любом направлении и изменять их размер. Объекты можно двигать и частично совмещать, так как все они контролируются индивидуально.
Работа с трехмерными объектами. Пользователь не ограничен двухмерностью при использовании OpenOffice.org Draw, Можно создавать кубы, сферы, цилиндры и другие трехмерные объекты, вращать их и даже подсвечивать с помощью различных эффектов. Используя эти параметры, можно быстро создавать презентации
.
Работа с диаграммами. OpenOffice.org Draw объектно-ориентирован. Это дает возможность создавать прямоугольники, содержащие текст и связанные друг с другом. При перемещении фигур связи автоматически сохраняются, что упрощает рисование и работу с презентациями и диаграммами. Связи размещаются между точками соединения, что заметно облегчает создание технических рисунков с текстовыми пояснениями.
Рисование. При обычном рисовании используются прямые, простые линии, кривые Безье и различные виды прямоугольников и прочих геометрических фигур. Трехмерные параметры могут быть использованы для создания трехмерных объектов, например кубов, сфер и торов. Также возможно вращение двумерных форм в трехмерном измерении. Выбирая цвет с растровой структурой, перспективой и освещением, можно создать трехмерные объекты для приглашений, брошюр и визитных карточек.
Для вставки в рисунки дополнительных элементов используйте коллекцию картинок, находящихся в галерее. Не имеет значения, состоят ли графические объекты из векторов или точек.
Экспорт. OpenOffice.org Draw может использоваться для создания кнопок и значков для Web-страниц и экспорта их в форматах gif, jpg, png И др.
Создать. Программа предлагает ряд подсказок для создания собственных рисунков. Можно определить сетку, к которой объект будет привязан во время создания или перемещения или временно привязать несколько новых объектов к границам и узлам уже существующих объектов. Размер объекта можно изменить в любое время с помощью ввода новых размеров в окне диалога Параметры.
Интегрировать. Предусмотрена возможность импорта текстов, таблиц, диаграмм, формул из других программных модулей OpenOffice.org в рисунок.
Графический редактор GIMP
GIMP (Gnu Image Manipulation Program). Как следует из названия, это программа для манипуляций изображениями. По возможностям GIMP схож с редакторами PaintShop Pro и Adobe PhotoShop.
При первом запуске производится начальная настройка программы. Далее появляется основная панель инструментов, в верхней части которой расположено меню (рис. 3.15).
Выбрав в меню Файл команды Новый или Открыть, можно создать новое изображение или загрузить его с диска.
В окне редактирования можно вызвать меню с помощью правой кнопки мыши (рис. 3.16).
Основные принципы
Известны три формы кодирования сигнала телевидения:
• система PAL (использует большинство стран Европы);
• Франция, Россия и некоторые восточно-европейские страны используют SECAM, который отличается от системы PAL только в тонкостях, однако этого достаточно, чтобы они были несовместимыми;
• США и Япония используют систему NTSC.
В системе PAL (Phase-Alternation-Line, чередование строк) каждый законченный кадр заполняется построчно, сверху донизу.
В Европе используется переменный электрический ток с частотой 50 Гц, и система PAL связана с этим — здесь выполняется 50 проходов экрана каждую секунду. Требуется два прохода, чтобы нарисовать полный кадр, так что частота кадров равна 25 кадров/с. Нечетные строки выводятся при первом проходе, четные — на втором. Этот метод называется чересстрочная развертка (interlaced), в противоположность чему изображение на компьютерном мониторе, создаваемое за один проход, известно как без чередования строк (progressive).
Компьютеры, наоборот, имеют дело с информацией в цифровой форме. Чтобы хранить визуальную информацию в цифровой форме, аналоговый видеосигнал должен быть переведен в цифровой эквивалент с использованием аналого-цифрового преобразователя-конвертера (ADC, или АЦП). Процесс преобразования известен как осуществление оцифровки, или видеозахват. Так как компьютеры имеют дело с цифровой графической информацией, никакая другая специальная обработка данных не требуется, чтобы в дальнейшем выводить это цифровое видео на компьютерный монитор. Однако чтобы отобразить цифровое видео на обычном телевизоре, обратный конвертер — цифроаналоговый (DAC или ЦАП), должен преобразовать двоичную информацию в аналоговый сигнал. Кроме того, источником видеоинформации в цифровой форме являются цифровые видеокамеры.
Цифровые видеокамеры
Начиная с введения Sony в 1995 г. формата DV и последующего почти повсеместного принятия интерфейса IEEE 1394 цифровые видеокамеры стали почти столь же свойственным ПЭВМ атрибутом, как мышь. Массовый пользователь получил доступ к технологии, которая позволила создавать в цифровом формате видеоматериал, качество которого далеко превосходило возможности аналоговых средств, доступных в то время — наподобие Hi-8 и S-VHS — и превращать его в профессионально выглядящее домашнее кино на настольном ПК.
Запись и сохранение видео и аудио в цифровой форме устраняют возможности для целого диапазона ошибок в изображении и звуке почти тем же образом, как музыкальные компакт-диски изменили к лучшему записи на виниловых дисках (LP). Кассеты цифрового видео не могут быть прочитаны на видеомагнитофонах, однако любая цифровая видеокамера имеет обычные, аналоговые AV-гнезда выхода, что позволяет записанный материал передать на видеомагнитофон либо на телевизор. Поскольку интерфейс IEEE 1394 стал вездесущим в области видео потребителя, он позволяет передавать видеосигнал от одной цифровой камеры к другой, к цифровому видеомагнитофону или на ПЭВМ. В процессе своего развития цифровые видеокамеры все чаще снабжаются аналоговыми звуковыми и видеовходами, позволяя копирование старых записей в аналоговых форматах VHS или 8 мм в формат цифрового видео, и таким образом обеспечивая как архивирование без потерь, так и доступ к мощным средствам редактирования цифрового видео.
Светочувствительная матрица (прибор с зарядовой связью — ПЗС) цифровой видеокамеры — обычно размером в '/4" — собирает и обрабатывает свет, приходящий от объектива, и преобразует его в электрический сигнал. В то время как видеокамеры среднего качества оборудованы единственной ПЗС, модели более высокого ряда используют три матрицы. В этом случае объектив содержит призму, которая расщепляет поступающий свет на три основных цвета, причем каждый поступает на отдельную матрицу. Результатом является высококачественные цветопередача и качество изображения, заметно лучшие чем для моделей с единственной ПЗС, хотя и при существенной дополнительной стоимости.
Число пикселей, которые составляют матрицу, может изменяться от одной модели к другой, однако большее число пикселей не обязательно означает лучшее качество изображения. Матрицы в цифровых видеокамерах Canon, например, обычно имеют намного более низкое число пикселей, чем в моделях JVC или Panasonic, но все же способны к достижению превосходных результатов.
Современные камеры имеют мощные способности «наезда» (трансфокатор), реализованные как путем оптического изменения масштаба изображения (обычно 10-х или более), так и цифрового (до 200-х). Конечно, в этих случаях изображения становятся высокозернистыми и их стабильность становится существенной проблемой. Используются два варианта видоискателя: традиционный окуляр и выдвижной цветовой жидкокристаллический экран, который дополнительно может быть сенсорным, срабатывающим от прикосновения и позволяющим осуществлять цифровое увеличение объекта, указанного прикосновением на экране.
Большинство потребительских цифровых камер продаются как единые решения для видео, фото и даже МРЗ и электронной почты. Большинство из них, однако, может захватить фото только с разрешением, характерным для цифрового видео (720 х 576 пикселей, что не дотягивает даже до 1 мегапикселя), которое приходится уменьшать до 640 х 480, чтобы сохранить правильное отношение размеров экрана (3 :4). Некоторые видеокамеры обладают более высоким разрешением для фото, но часто при этом используется интерполяция, чтобы достигнуть Указанного разрешения. Видеокамеры на 1,5 мегапикселей позволят получить разрешение в 1360 х 1020 для фото. Способность делать запись фотоснимков — также все более популярная особенность профессиональных цифровых видеокамер, некоторые из которых даже способны к настройке датчиков изображения к удобному для компьютера формату сборки картины, что оптимизировано для записи фотоизображения.
Цифровые камеры обеспечивают цифровую или оптическую стабилизацию изображения, чтобы уменьшить колебание, которое неизбежно сопровождает ручную съемку. Цифровая стабилизация изображения (Digital image stabilisation — DIS) очень эффективна, но имеет тенденцию уменьшать разрешение картины, поскольку активно используется для записи образа меньший процент датчиков (остальные заняты стабилизационной обработкой). Оптическая стабилизация изображения (Optical imagе stabilisation — OIS) использует призму, которая компенсирует колебания регулировкой пути светового луча, проходящего через систему линз камеры. Оба метода достигают примерно одной и той же степени видимой стабильности, но OIS, возможно, лучше, так как не уменьшает разрешение.
Форматы цифрового видео
VCD. Формат VideoCD был создан, чтобы обеспечить диалоговую среду, которая была бы недорога для копирования, поддерживала полный экран и видео полного движения и функционировала бы в широком диапазоне различных платформ ПЭВМ, телевидения, игровых приставок или мультимедийного оборудования.
В середине 1993 г. Philips, Sony, Matsushita и JVC согласовали спецификации VideoCD, позже получившие известность как «Белая Книга». Стандарт использует определения, описанные в стандартах «красной» (CD-DA) и «желтой» (CD-ROM) книг и вводит дополнительную гибкость, чтобы учесть защиту авторского права, вставки библиографической информации, абстрактных данных, компьютерных программ, обеспечить диалоговый контроль в течение воспроизведения.
Формат стал чрезвычайно популярным в Азии, и начиная с середины 1990-х гг. почти все гонконгские фильмы были доступны на VCD, а по сделанной в конце тысячелетия оценке, только в Китае ежегодно производились более чем 2 млн плейеров VCD. Формат никогда не завоевывал популярность на западе и остается малоизвестным в Северной Америке и Европе.
VCD использует CD-ROM XA Mode 2, чтобы делать запись первой дорожки диска (Track 1), который содержит файловую структуру ISO 9660 и информационную область. Файловая система ISO может также включать расширения Joliet, чтобы поддерживать длинные имена файлов Windows.
VCD 1.1 поддерживает понятие выбираемых треков, но только в VCD 2.0 версии (1995 г.) поддерживалась полная интерактивность через дистанционное управление. VCD 2.0 позволяет организовать до 98 треков, каждый из которых может быть индексирован в 99 сценах. Каждый трек может содержать и воспроизводить сцены, которые могут быть видео, звуковыми или фотоизображениями. В основном этот формат можно трактовать как Audio CD с дополнением видео или фотофрагментами и средствами навигации по содержанию.
Стандарт поддерживает обратную совместимость, так что версия 1.1 VCD работает в плейерах версии 2.0. VCD имеет вместимость до 74/80 минут (на носителе 650/700 Мбайт соответственно) видео полного движения, сопровождаемого стереозвуком. Используется технология сжатия MPEG-1 для обеспечения качества видео, эквивалентного пленке VHS или аудио CD-DA. Таблица 3.3 содержит ключевые характеристики вариантов VCD-стандарта.
SVCD. Выпущенный в 1998 г. консорциумом, который включал Philips, Sony, Matsushita и JVC, формат «VCD Высшего качества» (SuperVCD) — впоследствии стандартизированный как ISO IEC 62107 — является естественным развитием стандарта VCD. Основное различие в том, что для видеопотока используется кодирование MPEG-2 (вместо MPEG-1), которое обеспечивает более высокое разрешение и скорость, а также поддерживает субтитры и переменную скорость видеопотока. Как последствие, CD способен к показу в 2 раза более четких видеоизображении, чем его предшественник, за счет уменьшенной вместимости (35 и 80 мин на диск в зависимости от средней используемой оптовой скорости).
Формат имеет обширную поддержку субтитров и режима караоке. Видеопоток SVCD может содержать до четырех независимых каналов субтитров для различных языков, которые накладываются на видеоизображения в процессе воспроизведения и могут подключаться или удаляться по желанию. Так как субтитры сохранены как битовая графика, они не привязаны к какому-то специфическому набору символов. Наконец, SVCD стандарт поддерживает гиперсвязи типа HTML, позволяет подключать фотографии, автоматическое проигрывание слайдов ц музыкальных фрагментов, поддерживает многоуровневые иерархические меню и оглавления (индексацию). Характеристики формата приведены в табл. 3.4.
XVCD и XSVCD (extended VCD и extended SVCD - расширения соответственно) являются неофициальными вариантами стандартов VCD и SVCD, предназначенными, чтобы достигнуть улучшенного качества изображения, например, увеличивая битовую скорость (битрейт) в соответствии с более быстрой способностью передачи данных современными накопителями CD-ROM-XSVCD работает на принципах, обычных для уровня DVD, что обеспечивает скорость, близкую к DVD-Video (до 9,8 Мбит/с — поддерживает полное разрешение DVD в дополнение к обычному SVCD 480x576/480x480).
DivX. Формат DivX базируется на видеотехнологии MPEG-4 с дополнением звукового потока МРЗ. Поскольку сжатый в формате DivX кинофильм составляет от 10 до 20 % размера оригинала DVD (обычно 5 Гбайт), 80—90 минутное DVD-кино занимает приблизительно 650 Мбайт в разрешении 640 х 480 — фильм Голливуда может вообще поместиться на единственном CD-ROM. Единственным весомым недостатком является то, что не предусмотрено возможности развернуть изображение формата 16 : 9 до 4 : 3. Просмотр осуществляется на широко распространенном Windows Media Player (Microsoft) с небольшими добавлениями.
К концу 2001 г. появилась новая версия DivX — проект с открытыми исходными программами кодека, известный как «Project Mayo» или как «OpenDivX» или «DivX для Windows/Linux/Mac». В отличие от оригинала DivX, OpenDivX не имеет ничего общего с Microsoft. Однако, подобно его предшественнику, он также базируется на формате сжатия MPEG-4.
Формат DV. Panasonic и Sony были первыми, кто использовал стандарт цифрового видео на своих видеокамерах, и хотя он и не был первоначально предназначен для профессионального использования, обе компании впоследствии объявили их собственные расширения для стандарта — Panasonic DVCPRO в 1995 г., a Sony — DVCAM в 1996 г. Однако оба изготовителя придерживались формата MiniDV для производимого цифрового оборудования.
Формат DV использует пленку с металло-оксидным напылением ширины 1/4" (6,35 мм), способную к записи до 3 часов видео в стандартном режиме (standard play, SP) на кассете, которая имеет размеры 125 х 78 х 14,6 мм.
Технически DV использует дискретное косинус-преобразование, используя процесс с тремя стадиями. Первая стадия использует DCT-сжатие, удаляющую информацию, которая не может замечена человеческим глазом. При этом в каждом пикселе отделяют цветовую и яркостную информацию, что сокращает данные на одну треть. Затем сигнал RGB преобразуется в YUV – Y для яркости и U и V для цвета, по формуле YUV 4 : 2 : 2. Затем цифровой видеокодек оптимизирует формулу к YUV 4 : 2 : 0, связывая цветовую информацию от смежных пикселей в блоки 4x4. Далее, система аппаратного сжатия, размещенная на камере, сжимает видео с использование алгоритма подобного M-JPEG.
Система DV отличается способностью записи различных частей каждого кадра с различной степенью сжатия. Так, синее небо в фоне изображения может быть сжато, скажем, к 25 : 1, в то время как лес на переднем плане, который нуждается в большем количестве деталей, только до 7 : 1. Этим способом цифровое видео может оптимизировать видеоструктуру потока кадров. Наоборот M-JPEG должен иметь установленную норму сжатия для видео в целом и не может разумно регулировать сжатие каждого изображения. Кроме того, также используется техника, известная как адаптивное межстрочное сжатие, которое заключается в том, что перекрывающиеся строки кадра (как в PAL, например) соединяются в одну, если различие между ними невелико. В теории это означает, что сцены с меньшим количеством движения обрабатываются лучше, чем быстрые сцены. Номинальный поток данных DV — 25 Мбит/с, который увеличивается до 36 Мбит/с с учетом аудио и различных средств управления данными и коррекции ошибок.
Mini-DV (мини-цифровое видео). Главное преимущество формата MiniDV состоит в том, что лента, являющаяся 1/12 от размера стандартной пленки VHS, позволяет сделать запись 1 часа в формате SP или до 90 мин более низкого качества выхода в «долгоиграющем режиме» (long play, LP) при горизонтальном разрешении до 500 линий. Видеокамеры этого формата являются часто достаточно маленькими, чтобы удобно размещаться в ладони руки.
Digital8. Введенный в начале 1999 г., формат видеокамеры Sony Digital8 может рассматриваться как шаг между 8 мм или Hi-8 и MiniDV. Запись здесь производится почти в том же самом качестве как для MiniDV, но на ленты 8 мм и Hi-8, которые имеют размер 1/4 размера VHS и вместимость до 1 часа. Формат — хороший выбор для тех, кто переходит к цифровой видеокамере, так как видеокамера Digital8 может также воспроизводить старые записи аналоговых видео на 8 мм и Hi-8;
MICROMV. В 2001 г. Sony объявила ряд цифровых видеокамер MICROMV, использующих формат сжатия MPEG-2 при записи сигналов качества DV на ленты, размер которых составляет 70 % от кассет MiniDV. При скорости в 12 Мбит/с ультракомпактный формат MICROMV имеет битовую скорость, вполовину меньшую, чем для miniDV, что делает редактирование видео на ПЭВМ намного менее ресурсопоглощающей задачей.
Форматы DVD. Фирма Hitachi объявила первую цифровую видеокамеру, способную к записи на носитель DVD (в данном случае это был DVD-RAM) летом 2000 г., что было очередным шагом в движении видеоприложений к области ПЭВМ. Важное преимущество формата DVD — способность к прямой выборке видео и непосредственному переходу к определенным сценам видеозаписи, экономя время и ресурсы, затрачиваемые на запись/редактирование.
DVD видео. Видео DVD обычно кодируются в формате MPEG-2. MPEG-2 предлагает более высокую степень сжатия, чем MPEG-1, и приводит к намного более четкому и чистому изображению (табл. 3.5). Раскодированный из MPEG-2 видеосигнал обычно использует 480 горизонтальных строк в кадре (или 720 х 480 пикселей) по сравнению с 425 строками для CD-видео и 250—270 строками для VHS-видео.
Переменная битовая скорость (VBR) позволяет достичь более высокого качества изображения и более низкой средней скорости передачи информации в битах, при этом используется больше данных для кодирования тех частей видеопоследовательности, которые более сложны и плохо сжимаются. При использовании постоянной битовой скорости (CBR) скорость передачи данных должна быть достаточно высокой, чтобы одинаково хорошо кодировать все сцены видео.
Ранние диски DVD-ROM использовали два метода для записи MPEG-2 видео:
• аналоговый оверлей (наложение видеоизображений или просто оверлей);
• метод встраивания VGA, иногда упоминаемый как VideoInlay.
Оба метода отображают видео в окне или полном экране, но они реализуют различные подходы. Videolnlay использует графический адаптер PC, чтобы масштабировать видео и вывести его на монитор. Оверлейные платы обеспечивают масштабирование собственными аппаратными средствами и выводят видео самостоятельно, встраивая его в графический выводом, который приходит от платы VGA. При использовании этих плат дополнительный кабель соединяет выход адаптера VGA с вводом на плате декодера.
Главный недостаток подхода VideoInlay — нагрузка на систему. При проходе сцен, закодированных с высокой скоростью передачи информации, метод VideoInlay может перегрузить информацией старые, более медленные адаптеры дисплея, что может потребовать сокращения горизонтальной разрешающей способности для получения приемлемого изображения.
Требуя немного большего количества усилий по установке и конфигурированию, платы наложения видеоизображений требуют меньше системных ресурсов и допускают более широкое разнообразие аппаратных средств. В то время как видеовывод может быть менее четким, чем в случае встраивания VGA, наложение видеоизображений имеет то преимущество, что может дать приличное качество фактически с любыми видеоплатами.
Односторонний (DVD 5) диск может вместить типичный кинофильм, длительность которого составляет в среднем 133 минуты. MPEG-2 кодирование использует сжатие с потерями, которое удаляет избыточную информацию (например, неизменяющиеся области изображения) и информацию, которая не воспринимается человеческим глазом. Выходной видеосигнал, особенно когда он сложен или содержит быстрые изменения, может иногда включать визуальные недостатки в зависимости от качества обработки и коэффициента сжатия. При использовании сжатия MPEG-2 полномасштабное изображение требует минимальную скорость передачи данных 3500 кбит/с. Звуковое окружение — центральный, левые, правые, лево-тыловые и право-тыловые каналы, плюс ненаправленный басовый громкоговоритель — требует дополнительно еще 384 кбит/с. Если учесть добавочную память для фонограмм дублирования а различных языках и титров, необходимо увеличение скорости до 4,692 кбит/с (минимум 4 Мбит/с, требуемых для высоко – качественных результатов). Окончательный итог — требование размера памяти в 4,68 Гбайт.
Более высокие скорости передачи данных могут привести к повышению качества, почти неотличимому от оригинала, при скоростях более чем 6 Мбит/с. С развитием MPEG-технологий сжатия лучшее качество достигается при более низких скоростях. Кроме того, DVD-видео обычно поддерживают множественные коэффициенты сжатия, позволяя при просмотре выбрать по меньшей мере из пары широкоэкранных форматов (например 16:9 или более обычного 4 : 3). Кроме того, DVD-видео также обычно позволяет выбрать один из восьми языков и предоставляет 32 различных набора субтитров.
Двухслойный (DVD 9) диск. Здесь вместимость увеличивается до 240 мин. Двусторонний однослойный диск (D VD 10) будет вмещать немного больше (около 266 минут), но он должен быть перевернут, чтобы была доступна вторая сторона. Многие производители видео DVD используют двусторонние диски, помещая версию, отформатированную для нормального телевидения или монитора с экраном 4 : 3 на одной стороне и широкоэкранную версию, отформатированную для экрана 16: 9 — на другой.
Существуют два способа записи двухслойных DVD — параллельный проход дорожки (Parallel track path — РТР) и противоположный проход дорожки (Opposite track path — ОТР). В дисках РТР оба слоя считываются от внутренней части Диска к внешней, тогда как в диске ОТР сначала считывается внешний слой от внутренней части к внешней, а затем — внутренний слой обратным ходом. Это позволяет дисководу читать оба слоя почти непрерывно, с коротким перерывом, чтобы перефокусировать линзу лазера.
В 1998 г. Цифровой Видео Экспресс (DVE) — партнерство жду одним из крупнейших американских розничных продавцов электроники, Circuit City, и видной Лос-анджелесской юридической фирмой — объявил альтернативный формат DVD-видео, использующий подход «оплата за использование» при прп смотре фильмов, и быстро получил поддержку таких ведущих студий, как Disney, Paramount, Universal и MGM.
Региональное кодирование. Поскольку обычно выход фильма на экраны не является одновременным (фильм может выйти на видео в США, когда только выходит на экраны в Европе) киностудии хотят контролировать выпуск видеокопий в различных странах. Поэтому потребовалось, чтобы стандарт DVD включал коды, которые могут предотвратить воспроизведение некоторых дисков в определенных географических областях (регионах). Каждый видеопроигрыватель получает код для региона, в котором он продан. Это означает, что диски, купленные в одной стране, не могут считываться на плейерах, купленных в другой стране.
Региональные коды являются дополнительными для изготовителя диска и отсутствие кода означает отсутствие региональных ограничений. Это — не система кодирования, а только информационный байт, обозначающий восемь различных регионов, который проверяется при проигрывании диска (табл. 3.6).
В сводной табл. 3.7 приводятся основные технические характеристики цифровых видеоформатов, перечисленных выше.
Видеоредактирование
Известны два типа видеоредактирования. Первый заключается в редактировании при переписывании одной ленты на другую и называется линейным редактированием. Второй требует, чтобы редактируемые видеопоследовательности были вначале помещены на жесткий диск, затем отредактированы и возвращены на пленку. Этот метод известен как нелинейное редактирование (НЛР, NLE). Для нелинейного редактирования видеопередачи карты захвата переводят видео в цифровую форму на жесткий Диск ПЭВМ и при этом функция редактирования выполняется полностью на ПЭВМ, почти так же, как редактируется документ текстовом редакторе. Носители могут быть дублированы и многократно использоваться по мере необходимости, сцены могут быт перестроены, добавлены или удалены в любое время в течение процесса редактирования (рис. 3.17, 3.18).
Широкое распространение НЛР началось в начале 1990-х гг., что связано с появлением все более вместительных, быстрых и дешевых НЖМД, с разработкой все более мощного программного обеспечения редактирования видео, получило мощную поддержку в 1995 г. с появлением формата DV Sony.
Хотя видеоформат MPEG-2 уже нашел широкое использование в распространении информации, проблемы возникли в производстве и при редактировании видео. Если необходимо сделать вырезку из потока данных, то может оказаться, что В-кадры или Р – кадры (см. ниже, п. 3.6) будут отделены от структур, к которым они относятся, и их соответствие нарушится. В результате видео в формате MPEG-2 необходимо восстанавливать в несжатую (исходную) форму перед редактированием, или же редактирование видео приходится производить в несжатой форме и откладывать MPFG-кодирование на самый последний момент. Так, в частности строится работа с программным продуктом Pinnacle Studio 9 (рис 3 18, 3.19). Здесь последовательно осуществляется видеозахват (рис 3.18), разбиение на сиены (материал сохраняется в слабосжатой форме формата AVI — при качестве DV — 3,8 Мбайт/с, пои качестве MPEG — 0,76 Мбайт/с), затем происходит формирование выходного видеопотока, который выводится в файл MPEG-1, MPEG-2 или какого-либо другого формата.
Некоторые изготовители пытались разработать системы MPEG-2, допускающие редактирование без ограничений. Например, компания Sony предложила специальный формат под названием SX для профессиональных цифровых видеокамер и видеомагнитофонов, который использует очень короткие GOP, или группы кадров (четыре или меньше кадров), включающие только I- и Р – кадры (см. ниже, п. 3.6). При этом скорость передачи составляет 18 Мбит/с, что эквивалентно сжатию 10 : 1, но качество изображения сопоставимо с M-JPEG при 5:1. Позже фирма Pinnacle разработала методы редактирования коротких GOP IP-кадров MPEG-2 с использованием своей карты видеозахвата DC 1000 в системе Adobe Premier.
Pinnacle утверждает, что ее карта требует только половину полосы пропускания эквивалентного M-JPEG видео, позволяя одновременно обрабатывать два видеопотока на дешевой платформе с небольшим объемом памяти.
Сталкиваясь с проблемой редактирования MPEG-2, изготовители видеопродукции, входящие в комитет ProMPEG, предложили профессиональную версию, известную как MPEG-2 4:2:2 Profile@Main Level (см. ниже, табл. 3.8). Здесь используются только I-кадры, что дает более высокие скорости передачи данных — до 50 Мбит/с. Формат был одобрен Европейским радиовещательным союзом (European Broadcasting Union) и его американским партнером — Обществом инженеров телевидения и кинематографии (Society of Motion Picture Television Engineers — SMPTE), для широкого диапазона применений в производстве видеопродукции. Хотя здесь и нет никакого преимущества в ширине полосы пропускания перед М-JPEG, а преобразование потоков к другим форматам MPEG-2 и обратно требует перекодирования, эта версия MPEG-2 (только I-кадры) — согласованный стандарт, позволяющий передавать материал между различными системами. По контрасту NLE-системы, которые используют
M-JPEG, имеют тенденцию использовать немного различающиеся форматы файлов, что делает их несовместимыми.
Несмотря на все их преимущества, файлы в сжатых форматах остаются все еще довольно большими и поэтому нуждаются в быстром интерфейсе для их передачи между видеокамерой и ПЭВМ. К счастью, решение этой проблемы существовало уже в течение ряда лет. Технология интерфейса FireWire была первоначально предложена Apple Computer, но затем утверждена как международный стандарт IEEE 1394.
Когда этот интерфейс был разработан, цифровое видео было в младенческом состоянии и еще не существовало массовой потребности в такой быстрой технологии интерфейса, поэтому в течение нескольких лет интерфейс FireWire был решением проблемы, которая еще не возникла. Первоначально представляя сектор высоких технологий цифрового видеорынка, системы редактирования IEEE 1394 постепенно следовали за цифровыми видеокамерами в сферу потребителя. Так как FireWire передает видеоданные в сжатом цифровом состоянии, копии, сделанные в этом методе, теоретически должны быть точными клонами оригинала. В большинстве случаев это верно. Однако, поскольку процесс копирования осуществляет эффективную маскировку ошибок, он не использует никаких методов их исправления.
Следовательно, есть вероятность возникновения провалов (дефектов) для видео и звуковых данных приблизительно после полдюжины поколений копирования. Поэтому предпочтительная практика состоит в том, чтобы везде, где это возможно, избегать делать копии с копий.
К концу 1998 г. системы редактирования, основанные на IEEE 1394, оставались дорогими и ориентировались в основном на профессиональный сектор рынка. Однако с увеличением масштаба работ с аудио, видео и другими, более общими типами данных, производители ПЭВМ в сотрудничестве с такими потребителями, как Sony, стали включать интерфейсы IEEE 1394 в системы ПЭВМ, чтобы обеспечить связь, управление и обмен цифровыми, звуковыми и видеоданными. Пока еще не вездесущий, интерфейс стал намного более обычным к началу 2000-х гг., не в последнюю очередь благодаря усилиям специалистов Creative, которые фактически обеспечили «свободный» адаптер FireWire для линейки звуковых карт Audigy, введенных в конце 2001 г.
3.6. Элементы технологии алгоритмов MPEG
Стандарт MPEG-2
Рассмотрим в качестве примера стандарт MPEG-2, который состоит из трех основных частей: системной, видео и звуковой.
Системная часть описывает форматы кодирования для мультиплексирования звуковой, видео- и другой информации, рассматривает вопросы комбинирования одного или более потоков данных в один или множество потоков, пригодных для хранения или передачи.
Системное кодирование в соответствии с синтаксическими и семантическими налагаемыми данным стандартом, обеспечивает необходимую и достаточную информацию, чтобы синхронизировать декодирование без переполнения или «недополнения» буферов декодера при различных условиях приема восстановления потоков.
Таким образом, системный уровень выполняет пять основных функций:
• синхронизацию нескольких сжатых потоков при воспроизведении;
• объединение нескольких сжатых потоков в единый поток;
• инициализацию для начала воспроизведения;
• обслуживание буфера;
• определение временной шкалы.
Видеочасть стандарта описывает кодированный битовый поток для высококачественного цифрового видео. MPEG-2 является совместимым расширением MPEG-1, он поддерживает чересстрочный видеоформат и содержит средства для поддержки ТВЧ (телевидение высокой четкости).
Стандарт MPEG-2 определяется в терминах расширяемых профилей, каждый из которых, являясь частным случаем стандарта, имеет черты, необходимые всем классам приложений.
Иерархические масштабируемые профили могут поддерживать такие приложения, как совместимое наземное многопрограммное ТВ (ТВЧ), пакетные сетевые видеосистемы, обратную совместимость с другими стандартами (MPEG-1 и Н.261) и приложениями, использующими многоуровневое кодирование.
Звуковая часть стандарта MPEG-2 определяет кодирование многоканального звука. MPEG-2 поддерживает до пяти полных широкополосных каналов плюс дополнительный низкочастотный канал и (или) до семи многоязычных комментаторских каналов. Он также расширяет возможности кодирования моно-и стереозвуковых сигналов в MPEG-1 за счет использования половинных частот дискретизации (16; 22,05 и 24 кГц) для улучшения качества при скоростях передачи 64 кбит/с и ниже.
JPEG-форматы (M-JPEG Cine Pack) основаны на сжатии каждого кадра из видеопоследовательности. Этот подход получил название intraframe compression (внутрикадровое сжатие). Стандарт MPEG использует как intraframe, так и interframe compression (межкадровое сжатие). При межкадровом сжатии задаются опорные кадры, а последующие и предыдущие вычисляются на их основе. Поэтому межкадровая схема позволяет достичь большего сжатия — не надо хранить каждый кадр, запоминаются только различия между кадрами.
Стандарт MPEG-2 не регламентирует методы сжатия видео сигнала, а только определяет, как должен выглядеть битовый поток кодированного видеосигнала, поэтому конкретные алгоритмы являются коммерческой тайной фирм—производителей оборудования. Однако существуют общие принципы, и процесс сжатия цифрового видеосигнала может быть разбит на ряд последовательных операций (рис. 3.20):
• преобразование аналогового сигнала в цифровую форму;
• предварительная обработка;
• дискретное косинусное преобразование;
• квантование;
• кодирование.
После аналого-цифрового преобразователя (АЦП) производится предварительная обработка сигнала, которая включает в себя следующие преобразования.
1. Удаление избыточной информации. Например, если фон изображения состоит из идентичных символов (пикселей), то совершенно не обязательно их все передавать. Достаточно описать один пиксель и послать его с сообщением о том, как часто и где он повторяется в изображении.
2. Если исходное изображение передается в виде чересстрочных полей, то они преобразуются в кадры с прогрессивной разверткой.
3. Сигналы цветности (RGB) преобразуются в цветоразностные сигналы U и V и сигнал яркости Y.
4. Изображение достраивается до кратного 16 количества пикселей по строкам и столбцам, чтобы обеспечить разбиение изображения на целое число макроблоков.
5. Производится преобразование из формата цветности 4 : 4 : 4 в формат 4:2:2 (горизонтальная передискретизация цветоразностных компонентов) или 4:2:0 (горизонтальная и вертикальная передискретизация цветоразностных компонентов).
Квантование. Изображение разбивается на последовательность макроблоков, каждый из которых состоит из шести блоков по 8 х 8 пикселей:
• четыре образуют матрицу 16 х 16 и несут информацию о яркости;
• по одному — определяют цветоразностные компоненты U и V, которые соответствуют области изображения, покрываемой матрицей 16 х 16 пикселей.
Стандарт предусматривает два формата цветности, каждому из которых соответствует свой порядок блоков в макроблоке (рис. 3.21):
• 4:2:0 — макроблок состоит из шести блоков — четыре блока яркости YD и два блока цветности CR И Св;
• 4:4:4 — макроблок состоит из двенадцати блоков. Он содержит четыре блока YD, четыре CR и четыре Св.
Производится разбиение потока кадров изображения по типам, для них находятся векторы движения, которые необходимы для повышения предсказуемости величин элементов изображения. Векторы движения обеспечивают компенсацию перемещений в прошедших и последующих кадрах.
Компенсация движения применяется при предсказании текущего кадра на основе предыдущих и интерполяционного предсказания на основе прошедших и последующих изображений. Векторы движения определяются для каждой зоны изображения с размерами
16 х 16 пикселей, т. е. для макроблоков. В большинстве случаев видиеопоследовательности содержат избыточность в двух направлениях — временном и пространственном. Главное статистическое свойство, на котором основана аппаратура сжатия, — межэлементная корреляция, включающая предположение о коррелированности последовательных кадров видеоданных. Таким образом, значения отдельных пикселей изображения могут быть предсказаны либо по значениям ближайших пикселей внутри одного кадра (внутрикадровое кодирование), либо по значениям пикселей, расположенных в ближайших кадрах (межкадровое кодирование и компенсация перемещения).
Кодирование. В некоторых случаях, например, при смене видеосцены в видеопоследовательности, временная корреляция между ближайшими кадрами очень низка. В таких случаях решающую роль в достижении эффективного сжатия видеоинформации играет внутрикадровая корреляция, т. е. пространственная корреляция пикселей изображения. Однако, если корреляция между последовательными кадрами видеоданных высока, то в случае, когда два последовательных кадра имеют схожее или одинаковое содержание, желательно применение межкадровой корреляции пикселей с временным предсказанием. На практике для достижения высокого коэффициента сжатия видеоинформации используется комбинация из двух подходов.
Стандарт MPEG-2 определяет три типа кадров, для каждого из которых предусмотрен свой вид кодирования:
• опорные кадры, так называемые I-кадры (Intra Frames), которые являются основными и кодируются без обращения к другим кадрам, т. е. с использованием информации только этого кадра. Вид кодирования — внутрикадровый, обеспечивающий умеренное сжатие. Все остальные кадры анализируются процессором, который сравнивает их с опорными, а также между собой;
• Р – кадры (Predicted) — закодированные относительно предыдущих I- или Р- кадров. Кодирование Р- кадров выполняют с использованием алгоритмов компенсации движения и
предсказанием «вперед» по предшествующим I- и Р- кадрам. Они сжаты в 3 раза сильнее, чем I-кадры, и служат опорными для последующих Р- и В-кадров. Компенсация движения, применяемая к макроблокам Р- кадров, вырабатывает два вида информации: векторы движения (разница между базовыми и кодированными макроблоками) и значения ошибок (разница между предсказанными величинами и действительными результатами). Если макроблок в Р- кадре не может быть описан с использованием компенсации движения, что случается при появлении некоторого неизвестного объекта, то он кодируется тем же способом что и макроблок в I -кадре;
• В-кадры (Bidirectionally Predicted) — закодированные относительно предыдущих и последующих кадров, т. е. с двунаправленным предсказанием и компенсацией движения.
В-кадры имеют наибольшее сжатие.
Таким образом, в стандарте MPEG-2 используются три вида кодирования: внутрикадровое, межкадровое «вперед» с компенсацией движения, межкадровое двунаправленное, также с компенсацией движения.
Полученные кадры объединяются в группы последовательных кадров (GOP — group of pictures). Каждая последовательность начинается с I-кадра и состоит из переменного числа Р- и В-кадров. В описаниях алгоритмов кодирования MPEG и его реализаций не содержится никакой информации относительно методов выделения I-, Р- и В-кадров в видеопоследовательности. В начале сцены должен стоять I-кадр, в конце — Р-кадр. Увеличивать долю В-кадров можно только в рамках одной сцены, иначе возникнут большие ошибки предсказания и компенсации движения. Поскольку типичная длительность группы кадров (во временном представлении — примерно 0,5 с) значительно меньше характерного расстояния между границами сцен, то в большинстве случаев жесткое задание структуры группы кадров не приводит к существенным визуальным ошибкам из-за того, что смена сцен попадает внутрь группы кадров.
На рис. 3.17 изображен порядок кодирования I-, Р- и В-кадров. Верхний ряд кадров демонстрирует исходную последовательность на входе кодера, нижний — после кодирования. Основными параметрами GOP являются длина последовательности N и порядок чередования Р- кадров. Например, в последовательности кадров, представленной на рис. 3.22, N= 7, М- 3, т. е. каждый третий кадр в последовательности — типа Р.
Из применявшихся до сих пор форматов групп для частоты полей 30 Гц типичной была последовательность IBBPBBPBBPBBP/BBIBBP... с N=13 (для первой группы) и M=3, в которой группу составляют 15 кадров, начинающихся с двух В-кадров и одного I-кадра, и каждые два В-кадра перемежаются с Р- кадром. Для частоты 25 Гц типичной является такая же последовательность, нос с N=12 и М=3. Такой выбор сделан для того, чтобы обеспечить одновременное выполнение требовании максимального сжатия и произвольного доступа к любому из кадров последовательности. Между тем именно В-кадры обеспечивают максимальное сжатие, и если бы удалось поднять долю В- кадров в группе, а I-кадрами обозначить границы сцен, то эффективность сжатия была бы увеличена.
Для блоков с использованием компенсации движения находятся разностные ошибки предсказания движения.
Следует упомянуть еще две возможности MPEG-алгоритмов.
Это Motion Estimation (ME, в свободном переводе — оценка перемещений) и Spatial Redundancy (SR — пространственная избыточность). ME — метод, по которому реализуется вычисление Р- и В- кадров по опорным кадрам. Первым шагом в ME является разбиение кадров на блоки 16x16 пикселей. Далее блоки одного кадра сравниваются с соответствующими блоками другого кадра и, если они изменяют положение от кадра к кадру, их перемещение описывается векторами движения, которые и записываются в MPEG-поток.
На следующем этапе кодирования применяется метод пространственной избыточности, позволяющий еще более сократить объем данных, описывая разность между соответствующими блоками. Используя дискретное косинус-преобразование, блоки подразделяются на подблоки 8x8 для отслеживания изменения цвета и яркости.
Очевидно, что чем больше коэффициент сжатия, тем хуже качество. Коэффициент сжатия — это численное выражение соотношения между объемом сжатого и исходного видеоматериала. Для MPEG сейчас стандартом считается соотношение 200:1, при этом сохраняется неплохое качество видео. Различные варианты Motion-JPEG работают с коэффициентами от 5:1 до 100 : 1, хотя даже при уровне в 20 : 1 уже трудно добиться нормального качества изображения. Кроме того, качество видео зависит не только от алгоритма сжатия (MPEG или Motion-JPEG), но и от параметров цифровой видеоплаты, конфигурации компьютера, а также от программного обеспечения.
Профили MPEG. Как уже отмечалось выше, в стандарте применяется концепция профилей и уровней (табл. 3.8).
Стандарт предусматривает пять профилей:
• простой (simple) — для реализации видеопотока без В-кадров;
• главный (main) — для реализации всех уровней, но без масштабируемости;
• масштабируемый по отношению сигнал/шум (SNR scalable);
• пространственно масштабируемый (spatiallyscalable);
• профессиональный (professional 4:2:2), пространственно масштабируемый и масштабируемый по отношению сигнал/шум.
Каждый из этих профилей можно подразделить на четыре уровня:
• низкий (LL);
• главный (ML);
• высокий 1440 (Н1440);
• высокий (HL).
Каждому профилю соответствуют определенные наборы on раций по сжатию данных.
В профиле простой используется наименьшее число операций: компенсация движения и гибридное дискретное косинусное преобразование (ДКП, DCT).
Профиль главный содержит дополнительную операцию — предсказание по двум направлениям, что улучшает качество изображения.
Профиль масштабируемый по отношению сигнал/шум предусматривает повышение устойчивости системы при снижении отношения сигнал/шум. Поток видеоданных разделяют на две части: базовый поток и расширенный поток. Первый несет наиболее значимую информацию, второй — дополнительную.
Профиль пространственно масштабируемый содержит все операции предыдущего профиля и новую — разделение потока видеоданных по критерию четкости телевизионного изображения. Этот профиль обеспечивает переходы между ныне действующим стандартом и ТВЧ.
В рассмотренных четырех профилях при кодировании сигналов яркости и цветности используют формат представления видеоданных 4:2:0, где число отсчетов сигналов цветности по сравнению с сигналом яркости снижено в 2 раза по горизонтальному и вертикальному направлениям.
В профиле профессиональный используют формат 4 : 2 : 2, т. е. число отсчетов сигналов цветности в вертикальном направлении такое же, как и в яркостном сигнале. Кроме этого, предусматривается возможность масштабирования — пространственного и по отношению сигнал/шум.
Уровню низкий соответствует недавно введенный класс качества телевизионного изображения — ТВ ограниченной четкости. Уровню главный соответствует ТВ обычной четкости. Уровни высокий 1440 и высокий предусмотрены для ТВЧ, где использовано разложение на 1152 активные строки.
Каждый из этих профилей и уровней определяет предельные значения основных параметров битового потока, как это показано в табл. 3.8.
Сочетание профиля и уровня образует некоторое подмножество общего стандарта MPEG-2 применительно к различным задачам, для решения которых он предназначен. Такое сочетание принято обозначать аббревиатурой. Например, MP@ML означает главный профиль и главный уровень. Профессиональный профиль в сочетании с главным уровнем (422P@ML) послужил основой принятого в 1996 г. подмножества стандарта MPEG-2 для цифрового телевещания.
Описательный мультимедиа-стандарт MPEG-7
Спецификация разработана на пути использования методов и достижений интеллектуальных информационных систем в мультимедийных приложениях. Попытки решения данной задачи известны уже давно — ситуационное моделирование (Ю. И. Клыков, 1974 г.), RX-коды (1969 г.), проект PIPS (Pattern information processing system), программная среда и язык распознавания и генерации сцен NAL1G — Native language interprator of graphics (Япония, 1980 г.) и др.
MPEG-7 формально называется «Мультимедиа-интерфейс для описания содержимого» (Multimedia Content Description Interface), он имеет целью стандартизовать описание мультимедийного материала, поддерживающего некоторый уровень интерпретации смысла информации, которая может быть передана для обработки ЭВМ. Стандарт MPEG-7 не ориентирован на какое-то конкретное приложение, он стандартизует некоторые элементы, которые рассчитаны на поддержку как можно более широкого круга приложений. Следовательно, средства MPEG-7 позволят формировать описания (т. е. наборы схем описания и соответствующих дескрипторов по желанию пользователя) материала, который может содержать:
• информацию, описывающую процессы создания и производства материала (указатель, заголовок, короткометражный игровой фильм);
• информацию, относящуюся к использованию материала (указатели авторского права, история использования, расписание вещания);
• информацию о характеристиках записи материала (формат записи, кодирование);
• структурную информацию о пространственных, временных или пространственно-временных компонентах материала (разрезы сцены, сегментация областей, отслеживание перемещения областей);
• информацию о характеристиках материала нижнего уровня (цвета, текстуры, тембры звука, описание мелодии);
• концептуальную информацию о реальном содержании материала (объекты и события, взаимодействие объектов);
• информацию о том, как эффективно просматривать материал (конспекты, вариации, пространственные и частотные субдиапазоны и пр.);
• информацию о собрании объектов;
• информацию о взаимодействии пользователя с материалом (предпочтения пользователя, история использования).
MPEG-7 сконструирован так, чтобы учесть все подходы учитывающие требования основных стандартов, таких, как SMPTE Metadata Dictionary, Dublin Силие, EBU P/Meta и TV Anytime. Эти стандарты ориентированы на специфические приложения и области применения, в то время как MPEG-7 пытается быть как можно более универсальным. MPEG-7 использует также схему XML в качестве языка выбора текстуального представления описания материала. Главными элементами стандарта MPEG-7 являются (рис. 3.23):
• дескрипторы (D) — представление характеристик, которые определяют синтаксис и семантику представления каждой из характеристик;
• схемы описания DS (description scheme), которые специфицируют структуру и семантику взаимодействия между компонентами. Эти компоненты могут быть дескрипторами и схемами описания;
• язык описания определений DDL (description definition language), позволяющий создавать новые схемы описания и, возможно, дескрипторы, и обеспечивающий расширение и модификацию существующих схем описания;
• системные средства служат для поддержки мультиплексирования описаний, синхронизации описаний и материала, механизмов передачи, кодовых представлений (как текстуальных, так и двоичных форматов) для эффективной записи и передачи, управления и защиты интеллектуальной собственности в описаниях MPEG-7.
В принципе, любой тип аудиовизуального материала может быть получен с помощью любой разновидности материала в запросе. Это означает, например, что видеоматериал может быть запрошен с помощью видео, музыки, голоса и т. д. Ниже приведены примеры запросов:
• проиграйте несколько нот на клавиатуре, и вы получите список музыкальных отрывков, сходных с проигранной мелодией, или изображений, соответствующих некоторым образом нотам, например, в эмоциональном плане;
• нарисуйте несколько линий на экране, и вы найдете набор изображений, содержащих похожие графические образы, логотипы, идеограммы;
• определите объекты, включая цветовые пятна или текстуры, и вы получите образцы, среди которых сможете выбрать интересующие вас объекты;
• опишите действия и получите список сценариев, содержащих эти действия;
• используя фрагмент голоса Паваротти, получите список его записей, видеоклипов, где Паваротти поет, и графический материал, имеющий отношение к этому певцу.
Рассмотрим пример описания визуального материала (рис.3.24,а) графовыми представлениями (рис. 3.24, б).
Этот пример демонстрирует момент футбольного матча. Определены два видеосегмента, одна стационарная область и три движущиеся области. Граф, описывающий структуру материала, показан на рис. 3.24, б.
Видсосегмент Dribble&Kick (Обводка и удар) включает в себя вратаря и игрока. Мяч остается рядом с игроком, движущимся к вратарю. Игрок появляется справа от вратаря.
Видеосегмент гол включает в себя те же подвижные области юс стационарную область ворота. В этой части последовательности игрок находится слева от вратаря, а мяч движется к воротам.
Этот простой пример иллюстрирует гибкость данного вида педставления. Заметим, что это описание в основном представляется структурным, так как отношения, специфицированные ребрами графа, являются чисто физическими, а узлы представляют объекты, которые описываются данными о создании, информацией об использовании и медиаданными, а также дескрипторами низкого уровня, такими, как цвет, форма, движение. В семантически явном виде доступна только информация из текстовой аннотации (где могут быть специфицированы ключевые слова мяч, игрок или вратарь).
3.7. Трехмерная компьютерная графика
Трехмерная компьютерная графика (3D computer graphics) — разновидность графического искусства, использующего для создания своих произведений компьютеры и соответствующее программное обеспечение (рис. 3.25). Термин может относиться как к процессу создания таких графических образов, так и к научным исследованиям в области компьютерных графических методов и соответствующих технологий.
Трехмерная компьютерная графика отличается от двумерной тем, что трехмерное представление геометрических данных сохраняется в компьютере с целью их обработки для построения и выдачи двумерных изображений, которые могут либо просматриваться в реальном масштабе времени, либо запоминаться для последующего использования.
Трехмерное моделирование — процесс подготовки геометрических данных для трехмерной компьютерной графики — сходно искусством скульптуры, тогда как искусство двумерной графики походит на рисование. Несмотря на эти различия трехмерная компьютерная графика использует многие из тех же самых алгоритмов, что и двумерная.
В программном обеспечении машинной графики часто исчезает грань между двух- и трехмерным, поскольку двумерные приложения могут использовать трехмерные алгоритмы, чтобы, например, описать эффекты освещения, и наоборот.
Как правило, процесс построения трехмерной компьютерной графики может быть представлен в виде последовательности трех элементарных фаз:
• создание содержания (трехмерное моделирование, текстурирование, анимация);
• конфигурирование сцены;
• рендеринг (представление)
Во многих случаях между этими фазами нет строгого различия, моделирование может оказаться частью процесса создания сцены (например, в таких программах, как Caligari trueSpace и Rcalsoft 3D) и т. д.
Моделирование
Стадия моделирования состоит в формировании индивидуальных объектов, которые затем размещаются на сцене. Известен ряд методов моделирования, в том числе:
• стереометрия твердых тел;
• использование В-сплайнов;
• аппроксимация многоугольниками.
Моделирование процессов может также включать редактирование поверхности объекта или его материальных свойств (например, цвет яркость, шероховатость или блеск, характер отражения света, прозрачность или непрозрачность, коэффициент преломления и пр.), добавляя текстуры поверхности, карты рельефа или другие особенности.
При моделировании могут также применяться операции, связанные с подготовкой трехмерной модели для анимации (хотя в моделировании сложных процессов это может быть отдельной стадией, известной как оснащение). Объекты могут быть оснащены основой, или «костяком» — центральной структурой объекта, которая определяет форму и допустимые движения этого объекта. Это помогает в процессе анимации, поскольку движение основы автоматически определяет состояние соответствующих частей модели. В стадии оснащения в модель могут быть встроены определенные алгоритмы управления, чтобы упростить анимацию, например, управление выражением лица персонажа или формой губ в соответствии с произносимыми фразами.
Моделирование может быть выполнено как посредством специализированных программ (например, Lightwave Modeler, Moray, Cinema 4D, Rhinoceros 3D, см. рис. 3.20,) или прикладных компонент (Shaper, Loftеr in 3D Studio), так и с использованием некоторого языка описания сцен (типа POV-Ray).
Формирование сцены
Установка сцены. Формирование сцены предполагает размещение в пространстве виртуальных объектов, средств освещения, съемочных камер и других объектов, которые будут в последующем использоваться для создания неподвижных или анимированных изображений. Если речь идет об анимации, на фазе часто используется метод ключевых кадров (keyframing), который облегчает моделирование сложного движения в сцене. Ключевые кадры задают при анимации некоторые обязательные промежуточные положения объектов в сцене, перемещения/изменения между которыми (смещение, вращение, масштабирование) реализуются путем интерполяционных вычислений.
Важным аспектом установки сцены является освещение (подсветка). Так же как и в реальных съемках сцен, освещение — существенный фактор эстетического и визуального качества результата. Это достаточно сложное искусство и эффекты освещения могут существенно повлиять на настроение и эмоциональную окраску сцены — факт, хорошо известный фотографам и театральным режиссерам. Конечно, важнейшую роль играет размещение точек наблюдения (виртуальных фото- и видеокамер) при «съемке» сцены (своего рода операторское искусство).
Каркасное моделирование и создание сеток. Процесс преобразования математических описаний объектов (например, сфера может быть задана ее центром и радиусом) в представлении поверхности сферы как многогранника, называется каркасным моделированием (tessellation, «составление мозаики», «мощение»). Этот шаг используется при представлении на основе многоугольников, когда объекты преобразуются из представлений абстрактными «примитивами» (сферы, конусы и т. д.) в так называемые «сетки» (meshes), являющиеся сетями связанных треугольников. Сетки треугольников (вместо, например, квадратов) более популярны, поскольку они оказываются гораздо удобнее при преобразовании изображения в растровую форму.
Рендеринг
Rendering — окончательная компиляция изображения. На этапе рендеринга, выполняемого 3D-акселератором, осуществляется построение растрового изображения (пикселей). Узкое место — доступ к памяти (необходимо быстро считывать пиксели и передавать в буфер кадра/экрана). Изображение каждого кадра (сцены) составляют тысячи многоугольников и они должны быть обновлены и переданы через память, по крайней мере 30 раз в секунду, чтобы создать иллюзию движения. Из буфера кадры передаются в RAMDAC (ЦАП) и преобразуются в аналоговый сигнал для монитора.
Процесс рендеринга предполагает использование различных 3D-методов:
• текстурирование, отображение текстур (texture mapping) – технология детализации 3D-изображения, которая лучше всего может быть представлена как обтягивание некоего трехмерного каркаса окрашенной бумагой (конечно, двумерной). Это трудоемкий процесс, который должен быть выполнен не только для каждого пикселя изображения, но и для каждого элемента текстуры (текселя, texel). Могут использоваться разные текстуры (мультитекстурирование, multitexturing);
• сжатое текстурирование (mip mapping, mip-отображение) — форма сокращения объема данных, при которой создается большее количество текселей, без выполнения эквивалентного необходимого числа вычислений. Если сжатие составляет 1 : 4, то считывание одного текселя эквивалентно передаче четырех текселей первоначальной структуры. Если использованы надлежащие фильтры, качество изображения может даже повыситься, поскольку при этом сглаживаются зубчатые грани;
• билинейная фильтрация (bi-linear filtering) — считывание четверок текселей, усреднение их характеристик и использование представленного результата как единственного текселя. В результате выравнивается фактура близлежащих участков, изображение сглаживается и уменьшается пикселизация (blocky, pixelated appearance). Билинейная фильтрация является в настоящее время стандартом для большинства графических карт;
• Z-буферизация (Z-buffering) — метод вычисления пикселей, которые следует загрузить в буфер экрана (память, хранящая данные, которые должны быть немедленно выведены). Обычные 3D-акселераторы берут один пиксель, рассчитывают его и переходят к следующему. Проблема состоит в том, что акселератор не имеет возможностей «узнать», Должен ли рассчитываемый пиксель быть показан немедленно или же позже. Z-буферизация вычисляет и приписывает каждому пикселю некоторый вес «Z». Чем меньше значение Z, тем раньше данный пиксель должен быть выведен на экран;
• сглаживание (anti-aliasing) — технология снижения «шумов», присутствующих в изображении. Например, если объект находится в движении, необходим большой информационный поток, отражающий изменение положения, Цвета, размера и т. д. Иногда процессор не успевает обработать всю информацию и тогда некоторые места заполня-ются бессмысленным шумом. Сглаживание наряду mip-отображением удаляет этот шум;
• закраска/штриховка Гуро (Gouraud shading) применяет тени к поверхности объектов, заставляет их выглядеть более объемно. Алгоритм определяет цвета смежных многоугольников и вычисляет гладкий переход между ними, что гарантирует отсутствие резких цветовых переходов в окраске объекта;
• отображение выпуклостей/неровностей (bump mapping) создает иллюзию объемных углублений на плоской поверхности (шершавые стены, бурное море и пр.).
Моделирование эффектов в рендеринге. Рендеринг является одной из важнейших дисциплин трехмерной компьютерной графики. В графическом конвейере — последний важный шаг, дающий окончательное представление модели или анимации.
Используется в компьютерных и видеоиграх, тренажерах, спецэффектах кино и телевидения, системах автоматизации проектирования (САПР), в каждом случае — на основе специфических технологий и методик. Доступен широкий спектр программных продуктов-рендеров (renderers) — либо встроенных в большие программы моделирования/анимации, либо отдельные проекты. По своей внутренней структуре, рендерер — тщательно проработанная программа, основанная на широком спектре научных дисциплин, которые связаны с физикой, оптикой, теорией визуального восприятия, математикой и программированием.
Построенное изображение может иметь множество видимых особенностей и эффектов. Исследования и разработки в области рендеринга в основном мотивировались необходимостью их моделирования — некоторых отдельными алгоритмами и методами, а других — в комплексе. В табл. 3.9 приведены основные эффекты и особенности, моделируемые в процессе рендеринга.
Были исследованы многие алгоритмы рендеринга, и разработанное программное обеспечение может использовать множество различных методов, чтобы получить заключительное изображение.
Прослеживание каждого луча света в сцене — непрактично и слишком трудоемко. Даже рассмотрение части, достаточно большой, чтобы производить изображение, потребует чрезмерного времени, если выборка разумно не ограничена.
В итоге были выделены четыре группы методов эффективного моделирования процессов прохождения света (табл. 3.10).
Большинство средств расширенного программного обеспечения комбинирует два или больше методов, чтобы получить достаточно хорошие результаты при разумных затратах.
Программные средства трехмерной графики
API u GDI. Мультимедийные технические средства (а особенно компьютерная графика) — наиболее быстро развивающаяся область промышленности ПК, где с высокими темпами постоянно возникают новые чипсеты, версии интерфейсных карт, устройства и принципы технологий. Для прикладного программиста, занимающегося разработками мультимедийных приложений или компьютерных игр, становится совершенно нереальным заново переписывать все программы с появлением на рынке карт с новыми графическими процессорами, поддерживающими высокопроизводительные технологии мультимедиа с аппаратным ускорением (графические/видеоакселераторы).
Программный интерфейс приложения. В качестве решения появились программные интерфейсы приложений (API, application programming interface), которые играют роль посредника между прикладной программой и аппаратными средствами ЭВМ (интерфейсная карта и внешнее устройство), на которых она выполняется. Разработчик программного обеспечения пишет обращение к устройству на некотором стандартизированном языке, а не в кодах аппаратных средств ЭВМ. Затем драйвер, написанный изготовителем периферийного устройства или его карты, переводит этот стандартный код к формату, понятному специфической модели периферийных устройств (рис. 3.26).
API-интерфейсы обеспечивают доступ к новейшим возможностям высокопроизводительных устройств, таких как микросхемы ускорения трехмерной графики и звуковые платы. Эти интерфейсы управляют функциями нижнего уровня, в том числе ускорением двумерной графики, поддержкой устройств ввода, таких, как джойстик, клавиатура и мышь, а также микшированием и выводом звука.
Графический интерфейс устройства (Graphics Device Interface — GDI) является стандартом Microsoft Windows, который описывает, как следует представлять графические объекты для передачи их на устройства вывода типа мониторов или принтеров.
GDI поддерживает такие задачи, как рисование линий, представление шрифтов и обработка палитр. Он не занимается непосредственно формированием окон, меню и т. д., эти задачи оставлены для подсистемы пользователя (user32.dll), которая является надстройкой над GDI.
Существенная способность GDI (кроме более прямых методов обращения к аппаратным средствам) — масштабирование и абстрагирование от оконечных устройств. Используя GDI, можно достаточно просто осуществлять вывод изображений на различные устройства (мониторы, принтера) и ожидать надлежащего результата в каждом случае. Эта способность обеспечивает все приложения WYSIWYG для Microsoft Windows.
Простые игровые программы, которые не требуют быстрой Работки графики, могут обходиться возможностями GDI. Однако более современные игры должны использовать API DirectX или OpenGL, которые дают возможность программистам более интенсивно использовать аппаратные средства.
С появлением Windows XP GDI заменяется преемником — подсистемой GDI+, базирующейся на C++. GDI+ — следующее поколение двумерной графической среды, включающее такие расширенные особенности, как двумерная графика со сглаживанием, координаты с плавающей запятой, альфа-смешивание, градиентное затушевывание, поддержка современных форматов графических файлов наподобие JPEG и PNG (которые заметно отсутствовали в GDI), и общая поддержка перечня аффинных преобразований в конвейере двумерного рендеринга. Использование этих особенностей очевидно в интерфейсе пользователя Windows XP, и их присутствие в основном графическом уровне очень упрощает выполнение векторных графических преобразований. Динамическая библиотека GDI+ может вместе с приложением использоваться под более ранними версиями Windows. Библиотека классов Microsoft.NET обеспечивает управляемый интерфейс для GDI+.
API для трехмерной графики
Господствующими направлениями в обработке трехмерной графики в последние годы являются два 3D-API — OpenGL и Direct3D. Прежде чем давать их описания вкратце охарактеризуем процедуры, входящие в понятие представления изображения или рендеринга.
OpenGL (Open Graphics Library — открытая графическая библиотека) — межъязыковая и межплатформенная спецификация API для трех- и двумерных приложений компьютерной графики. Включает более чем 250 функций, которые предназначены для формирования трехмерных объектов и сцен из простых примитивов. OpenGL был разработан Silicon Graphics Inc. (SGI) в 1992 г. и широко распространен в индустрии разработчиков видеоигр, где конкурирует с Direct3D на платформах Microsoft Windows. OpenGL широко используется в САПР, визуализации данных, системах моделирования и видеоиграх.
В своей основе OpenGL — это спецификация, т. е. некоторый документ, который определяет набор функций и содержит точное описание действий, которые они должны выполнять. На основе этой спецификации производители аппаратных средств ЭВМ создают конкретные программные реализации — библиотеки соответствующие функциям, объявленным в OpenGL – спецификации, используя видеоакселераторы там, где возможно. Оборудование подвергается сертификационным тестам, чтобы квалифицировать его соответствие OpenGL.
Применение OpenGL преследует следующие основные цели:
• предоставляя программисту однородный программный интерфейс приложения, скрывать подробности взаимодействия с различными 3D-акселераторами;
• скрывать различие платформ аппаратных средств ЭВМ, требуя только, чтобы все программные реализации поддерживали полный набор функций OpenGL (используя программную эмуляцию, если необходимо).
Основная функция OpenGL заключается в считывании графических примитивов (точек, линий и многоугольников) и преобразовании их в пиксели. Это происходит в графическом конвейере, известном как «машина OpenGL» (OpenGL state machine). Большинство команд OpenGL или направляет примитивы на конвейер, или задает, как конвейер должен их обрабатывать.
До появления OpenGL 2.0 каждая стадия конвейера выполняла установленную функцию и конфигурировалась только в узких пределах, но в OpenGL 2.0 несколько стадий могут полностью программироваться с использованием языка GLSL.
OpenGL — процедурный программный интерфейс приложения низкого уровня, который требует от программиста точного описания шагов рендеринга сцен, а также хорошего знания графического конвейера.
Краткое описание процесса в графическом конвейере (рис. 3.27):
• построение (evaluation) коэффициентов полиномиальных Функций (наподобие сплайновых кривых NURBS), которые аппроксимируют пространственные поверхности объектов;
• обработка вершин многогранников (vertex operations), их преобразование или подсветка в зависимости от материала, Удаление невидимых частей объектов;
• растеризация (rasterisation) или преобразование предыдущей информации в пиксели, окраска многоугольников осуществляется на основе алгоритмов интерполяции;
• операции над фрагментами (пиксели или их группы — per-fragment operations) типа обновления ранее поступившей и сохраненной информации (цветовая глубина, оттенок и пр.);
• передача пикселей в буфер кадра/сцены (frame buffer).
DirectX. Впервые предложенный в 1995 г., DirectX представлял собой объединенный набор инструментов программирования, предназначенных для того, чтобы помочь разработчикам создавать широкий спектр мультимедийных приложений для платформы Windows. Охватывая почти все аспекты мультимедийных технологий, выпуск DirectX 8.0 включает следующие компоненты:
• DirectX Graphics, который в свою очередь состоит из двух API:
— DirectDraw — для обработки двумерных растровых изображений;
— Direct3D (D3D) — обработчик 3D-графики;
• DirectInput, обрабатывает данные, поступающие от клавиатуры, мыши, джойстиков или других игровых контроллеров;
• DirectPlay — для поддержки сетевых игр;
• DirectSound — проигрывание и запись звука;
• DirectSound3D (DS3D) — для воспроизведения 3D-звучания;
• DirectMusic — проигрывание звукозаписей, подготовленных в DirectMusic Producer;
• DirectSetup — установка и настройка компонент DirectX;
• DirectX Media, включает DirectAnimation, DirectShow, DirectX Video Acceleration, Direct3D Retained Mode и DirectX Transform для анимации, воспроизведения мультимедиа, 3D -интерактивных приложений;
• DirectX Media Objects — поддержка кодирования/декодирования в реальном масштабе времени и создание спецэффектов.
Direct3D. Direct3D включает две компоненты API — Immediate Mode (немедленная обработка) и Retained Mode (отложенная обработка). Первая обеспечивает использование всех 3D-функций видеокарт (подсветка, текстурирование, трансформация объектов и пр.), в то время как вторая — более сложные графические технологии, такие как иерархия сцен или анимация. Функции Immediate Mode предпочитают использовать разработчики видеоигр, поскольку здесь они могут осуществлять программирование на низком уровне, более свободно и эффективно используя возможности графического оборудования. Несмотря на Intermediate Mode считается, что Direct3D является менее гибким, чем OpenGL.
Компоненты 6-й версии Direct3D поддерживают возможности более новых графических карт выполнять множественное текстурирование (покрытия «каркаса» изображения текстурами) за один проход. Здесь также используются более новые методы для того, чтобы улучшить реализм 3D-сцен, типа анизотропной фильтрации (anistropic filtering), которая добавляет элемент глубины к трилинейной фильтрации (trilinear filtering) и отображение неровностей (bump mapping), которое создает иллюзию реальности структуры и освещенности плоских поверхностей.
Следующая версия — DirectX V7.0 (1999 г.), кроме оптимизации кода, которая позволила на 20 % увеличить быстродействие, включала ряд новых особенностей. Наиболее важная из них — сопровождение операций трансформации и подсветки (transformation and lighting — T&L), поскольку они поддерживаются большинством 3D-акселераторов текущего поколения, и особенно в графических картах чипсетов GeForce 256 (nVidia ) и bavage 2000 (S3).
Поскольку операции T&L являлись одной из самых трудоемких для центральных процессоров задач в современных игровых приложениях, перенос этой нагрузки на выделенный 3D-акселератор позволяет освободить ЦП для более существенных задач (например, внесение в игры элементов искусственного интеллекта или выработка специальных эффектов).
Самым важным аспектом DirectX 9.0 (январь 2003 г.) было введение HLSL (High Level Shader Language, высокоуровневый язык раскрашивания изображений). Ранее разработчики игр должны были программировать алгоритмы раскраски, используя ассемблер низкого уровня. HDSL вводит дружественную среду программирования, которая облегчает каждый шаг разработки, — от создания ярких образов в мультипликации до программирования эффектов. Базирующийся на языке программирования С, HLSL совместим со всеми графическими средствами DirectX.
Структура графического конвейера Direct3D (рис. 3.28):
• входная сборка (input assembler) поставляет данные на конвейер;
• раскраска вершин многогранников (vertex shader) выполняет операции над вершинами, такими, как трансформация, покрытие текстурой, подсветка;
• раскраска геометрических примитивов (geometry shader) — операции над примитивами (треугольники, вершины, линии), иногда — над связанными с ними примитивами. На этой стадии каждый примитив передается дальше или уничтожается, или на его основе создается один или несколько новых примитивов;
• выходной поток (stream output) — запись в память результатов предыдущих стадий. На основе этих данных могут быть организованы итерационные циклы обработки данных на конвейере;
• растеризация (rasterizer) — трансформация примитивов в пиксели, удаление невидимых;
• раскраска пикселей (pixel shader) и другие операции над ними;
• окончательная сборка (output merger), объединение различных типов выходных данных и построение кадра-результата.
Контрольные вопросы
1. Каковы характеристики аналогово-цифрового и цифро-аналогового
преобразований аудиоданных?
2. Перечислите методы синтеза звука.
3. Какие характеристики имеют аудиоадаптеры?
4. Что такое ЧМ и WaveTable?
5. Перечислите возможности карты SoundBlaster.
6. Что такое Live!Drive?
7. Охарактеризуйте MIDI-интерфейс.
8. Перечислите основные характеристики форматов аудиосигнала.
9. Какие основные функции реализует программное обеспечение обработки
аудиосигналов?
10. Охарактеризуйте методы оптической интерполяции.
11. Перечислите основные характеристики цифровых видеокамер (ЦВК).
12. Что такое схемы цветообразования?
13. Охарактеризуйте форматы графических файлов.
14. Что такое видеозахват?
15. Что такое цветоразностные компоненты?
16. Перечислите форматы записи цифрового видео.
17. В чем заключается сущность M-JPEG сжатия видеоданных?
18. Перечислите основные особенности алгоритмов MPEG-1—4.
19. Что такое GOP?
20. Что такое профили MPEG?
21. В чем сущность стандарта MPEG-7?
22. Перечислите основные фазы работы с 3-мерной графикой.
23. Что такое рендеринг?
24. Охарактеризуйте API OpenGL.
25. Что такое DirectX и Direct3D?