Первый урок посвящен знакомству с принципами компьютерного видеомонтажа и графики и адресован, в первую очередь, новичкам в области цифрового видео. В нем в сжатой форме объясняются принципы хранения и обработки видео – и звукозаписей на компьютере, описываются основные параметры видеофайлов (размер, частота кадров и т. п.).
□ Чего мы хотим:
• понять основные принципы хранения и обработки цифрового видео и звука;
• изучить наиболее важные свойства медиа – файлов.
Уже довольно давно персональные компьютеры используются в качестве средства воспроизведения и редактирования цифрового видео. Технология, позволяющая отображать на экране монитора видео и воспроизводить с помощью акустических систем звук, получила название мультимедиа. С точки зрения хранения мультимедийной информации на компьютере (вообще говоря, любые данные представляются на нем в виде файлов определенного типа), можно выделить несколько основных типов файлов:
□ audio (звуковые, или аудио) – только звук, который проигрывается через акустическую систему (например, файлы с расширениями wav, mp3, aiff и т. п.);
□ video (анимационные, или видео) – видео может быть беззвучным, а может и звуковым, т. е. сопровождаться синхронным звуком (файлы с расширением avi, mov и т. п.);
□ image (рисунки, или статические изображения) – обычные картинки (несколько условный тип, однако нам будет удобно говорить о нем в книге как о полноценной разновидности мультимедиа). Это файлы с расширениями gif, jpeg, tiff, bmp и т. п.
Общее название перечисленных типов файлов – это мультимедиа-, или просто медиа – файлы (рис. 1.1). Коротко остановимся на принципах хранения информации в медиа – файлах, начав с самого простого их типа – рисунков (статических изображений).
Рис. 1.1. Типы мультимедиа
Вероятно, сегодня практически каждый пользователь представляет себе основной принцип хранения и отображения графической информации на компьютере. Тем не менее, скажем об этом несколько слов, чтобы последующие сведения о цифровом видео (которое представляет собой сменяющую друг друга последовательность изображений) были для нас понятнее.
На первый взгляд, качественный рисунок, будучи отображенным на экране хорошего монитора, мало чем отличается от обычной фотографии. Однако на уровне представления изображения это отличие просто огромно. В то время, как фотографический снимок создается на молекулярном уровне (т. е. составляющие его элементы принципиально не различимы человеческим зрением независимо от увеличения), рисунки на экране монитора (и, подчеркнем, в памяти компьютера) формируются благодаря пикселам — элементарным составляющим изображения (чаще всего) прямоугольной формы. Каждый пиксел имеет свой определенный цвет, однако из – за их малого размера отдельные пикселы (почти или вовсе) неразличимы глазом, и у человека, рассматривающего картинку на экране монитора, их скопление создает иллюзию непрерывного изображения (рис. 1.2).
Примечание
Изображения на экранах компьютеров формируются при помощи пикселов квадратной формы. В отличие от компьютеров, во многих стандартах телевидения используются не квадратные, а прямоугольные пикселы. Параметром, характеризующим отношение размеров пикселов, выступает отношение их горизонтального и вертикального размеров, или пропорции пиксела (pixel aspect ratio).
Рис. 1.2. Изображения на компьютере формируются благодаря пикселам
Каждый пиксел (кстати, слово pixel образовано от первых двух букв английских слов picture element) представляет информацию о некоторой «средней» интенсивности и цвете соответствующей области изображения. Общее число пикселов, представляющих рисунок, определяет его разрешение. Чем больше пикселов создают изображение, тем естественнее оно воспринимается человеческим глазом, и тем, как говорят, выше его разрешение (рис. 1.3). Таким образом, пределом «качества» компьютерного рисунка является размер формирующих его пикселов. Более мелкие, чем пикселы, детали компьютерного рисунка совершенно теряются и, в принципе, невосстановимы. Если рассматривать такой рисунок в увеличительное стекло, то, по мере увеличения, мы увидим только расплывающееся скопление пикселов (см. рис. 1.2), а не мелкие детали, как это было бы в случае качественного фотоснимка.
Здесь стоит оговориться, что, во – первых, мы имеем в виду традиционную (аналоговую, а не цифровую) фотографию (т. к. принцип цифровой фотографии как раз тот же самый, что и обсуждаемый принцип формирования изображения из пикселов), а во – вторых, даже для нее, говоря о качестве изображения, всегда следует помнить о самой технологии фотографии. Ведь изображение на фотопленке появляется благодаря прохождению света через объектив фотокамеры, и его качество (в частности, четкость и различение мелких деталей) напрямую зависит от качества оптики. Поэтому, строго говоря, «бесконечная» четкость традиционного фотографического снимка, о которой мы говорили, является некоторым преувеличением.
Примечание
На самом деле, современные цифровые фотокамеры позволяют зафиксировать изображение, разрешение которого практически не уступает аналоговому (в том смысле, что сейчас возможно оцифровать такое количество пикселов, которое будет «перекрывать» границы разрешения самой оптики). Однако для предмета нашей книги этот факт не играет важной роли, т. к. в настоящее время цифровое видео в подавляющем большинстве случаев передается именно с невысоким разрешением (относительно малым общим числом пикселов), и принимать во внимание такой параметр, как разрешение, просто необходимо.
Рис. 1.3. Общее число пикселов (разрешение) определяет качество изображения
Итак, немного упрощая, чтобы представить рисунок в цифровом виде, необходимо покрыть его прямоугольной сеткой размера MxN (М точек по горизонтали и N по вертикали). Это сочетание чисел MxN (например, 320x240, 800x600 и т. д.) и называют разрешением (resolution) изображения, или размером кадра (frame size). Затем следует усреднить данные о структуре изображения в пределах каждого пиксела и записать соответствующую информацию о каждом из MxN пикселов изображения в графический файл. Для цветного изображения это будет информация о конкретном цвете каждого пиксела (о компьютерном представлении цвета написано чуть ниже в этом разделе), а для черно – белых изображений – это информация об интенсивности черного цвета. Чтобы объяснить некоторые важные параметры компьютерного представления изображений, остановимся далее чуть подробнее на их последнем типе – рисунках, выполненных в оттенках серого цвета (grayscale), т. е. в градации от белого до черного.
Поскольку компьютер оперирует исключительно цифрами, то для описания интенсивности цвета отдельного пиксела он применяет определенное числовое значение, которое является целым числом, т. е. – 0, 1, 2 и т. д. К примеру, чисто белый цвет в черно – белых рисунках будет описываться нулевой интенсивностью, чисто черный – некоторым максимальным числом, а серые цвета – промежуточными значениями (в зависимости от их оттенка). Важным параметром, влияющим на качество представления изображения, является именно это максимальное значение интенсивности, которое (за вычетом единицы) называется глубиной пиксела (pixel depth).
Если глубина пиксела равна, к примеру – 128, то это означает, что (кроме белого и черного цветов, интенсивность которых, по определению, равна О и 127 соответственно) возможно представить на экране компьютера лишь 128 – 2 = 126 оттенков серого цвета (рис. 1.4, а). Промежуточные цвета отобразить будет невозможно, и (если таковые присутствовали в исходном изображении до оцифровки) они будут заменены наиболее близким оттенком из этих 126 градаций. В то же время для изображений с глубиной пиксела равной 256, возможно отобразить в два раза больше оттенков, и поэтому такое изображение будет, скорее всего, существенно более естественным.
Минимально возможная глубина пиксела, равная 2, позволяет представить лишь два цвета – черный и белый (рис. 1.4, б) – и подходит для графического хранения черно – белых документов с линейной графикой (line art).
Примечание
В качестве градаций глубины пиксела выбираются числа 2, 128, 256 и т. д., т. к. все они являются степенями цифры 2, обеспечивая наиболее эффективное хранение данных на компьютере (оперирующем изначально числами в двоичном представлении). Напомним читателю, что один байт информации как раз эквивалентен хранению одного из чисел диапазона 0…255.
Рис. 1.4. Черно – белые изображения с одинаковым разрешением, но разной глубиной пикселов
Хранение всей информации о том или ином изображении (т. е. о цвете каждого его пиксела) зачастую или невозможно, или неэффективно. Например, рисунок размером 800x600 пикселов требует записи информации о 800x600 = 480 000 пикселах. Если использовать глубину пиксела, равную 256 (т. е. кодировать каждый пиксел одним байтом), то размер файла, хранящего изображение (в оттенках серого цвета), будет равен почти половине мегабайта.
Примечание
Несколько забегая вперед отметим, что для хранения такого же цветного изображения потребуется файл уже в три раза большего размера (почти 1.5 Мбайт), а для хранения одной секунды цветного видео с кадром такого качества и типичной частотой кадров 24 кадра/с целых 40 Мбайт!
Чтобы уменьшить размеры файлов, хранящих изображения, применяются специальные программы, называемые компрессорами, или, по – другому, кодеками (codec – от англ. compressor/decompressor). Процедуру уменьшения размера медиа – файла называют компрессией или сжатием. Как правило, при сжатии некоторая часть информации о рисунке теряется, и его качество соответственно понижается. Многие программы – компрессоры позволяют регулировать степень ухудшения рисунков путем варьирования параметра, называемого качеством сжатия, которое обычно измеряется в процентах. Очевидно, что чем сильнее сжато изображение (т. е. чем меньше получившийся медиа – файл), тем хуже будет его качество (рис. 1.5).
Рис. 1.5. Два изображения с разным качеством компрессии
Все сказанное о рисунках в полной мере (и даже сильнее, т. к. при компрессии может учитываться дополнительная информация о последовательностях кадров) относится и к видеофайлам. Как правило, эффективность сжатия существенно зависит от структуры самого изображения, и правильный подбор кодека зачастую позволяет достичь просто фантастических успехов в улучшении качества изображений. Очевидно, что следует выбирать такие кодеки и так регулировать их параметры, чтобы, с одной стороны, обеспечить хорошее качество изображения, а с другой – скорость расчетов и приемлемый физический размер медиа – файла. Однако, зачастую, идеальный подбор кодека является «почти искусством» и под силу только очень опытным пользователям.
Ограничимся самыми общими упоминаниями о технологии компьютерного отображения цветных изображений. Как известно, человеческий глаз устроен таким образом, что способен раздельно воспринимать три цвета, называемых основными: красный, зеленый и синий. Какой – либо предмет, имеющий определенный цвет, воспринимается нашим зрением как определенная комбинация этих основных цветов. Например, белый цвет ассоциируется нами как смесь всех трех основных цветов в максимальной равной пропорции, черный – как комбинация нулевых интенсивностей основных цветов, чисто синий цвет – как комбинация максимальной пропорции синего и нулевой – красного и зеленого, и т. д.
Именно на этом принципе и построено компьютерное представление цвета. Каждый пиксел цветного изображения кодируется тремя числами – сочетанием трех основных цветов: красного, зеленого и синего. Такую систему кодирования цвета называют моделью RGB (от англ. Red, Green, Blue — красный, зеленый, синий). Как правило, каждый цвет кодируется одним байтом информации, т. е. пропорции цветов представляются числами от 0 до 255. Разумеется, такая система передачи цвета является дискретной, т. е. не каждый имеющийся в природе цвет (число оттенков которого бесконечно) можно представить на компьютере. В этом смысле цифровое представление цвета имеет те же плюсы и минусы, что и рассмотренная нами выше передача интенсивности черно – белых изображений.
Примечание
Некоторые рисунки хранят информацию о цвете в других системах, например, CMYK – модели (голубой, пурпурный, желтый и черный), часто применяемой в бумажной полиграфии. Однако для представления на экране монитора компьютера сочетание этих цветов все равно пересчитывается в комбинацию основных цветов RGB.
Говоря о технологии передачи цвета на компьютере, нельзя не сказать о том, что она тесно связана с проблемой компрессии изображений. Легко можно сосчитать, что если каждый из основных цветов кодировать при помощи одного байта, то общее число возможных цветов составит более 16 миллионов. Кодировать каждый пиксел изображения с учетом такого большого количества цветов зачастую представляется расточительным. Поэтому многие кодеки используют несложный трюк, позволяющий значительно уменьшить размер графического файла. Они изначально, исходя из предварительного анализа исходного рисунка, готовят набор характерных именно для него цветов (например, 256 цветов), называемый цветовой палитрой (color palette). Информация об этих цветах записывается в определенном виде в графический файл, а потом уже изображение «перерисовывается» кодеком исключительно при помощи цветов из созданной палитры. Разумеется, некоторые цвета исходного рисунка при таком способе компрессии приходится заменять наиболее близкими цветами из палитры, что ухудшает качество изображения, но позволяет существенно сократить физический размер графического файла. При работе с цветными изображениями на компьютере, важно постоянно помнить о принципе использования цветовых палитр, и в случае необходимости (для достижения лучшего качества цветопередачи или, напротив, в целях минимизации размера файла) корректировать параметры кодека.
Все, сказанное выше по отношению к статическим изображениям, относится и к видео. Надо лишь помнить о том, что впечатление просмотра видео на компьютере создается благодаря быстрому чередованию отдельных статических изображений, называемых кадрами (frames). Количество кадров, демонстрируемых в течение одной секунды, называется частотой кадров (frame rate). Психология человеческого восприятия такова, что при чередовании с частотой более 20-ти кадров в секунду они не воспринимаются как отдельные изображения, а полностью создают иллюзию просмотра динамической картины (рис. 1.6).
Рис. 1.6. Иллюзия просмотра видеофильма основана на принципе быстрого чередования кадров
Принцип покадрового видео, как вы знаете, лежит в основе традиционного (аналогового) кино и телевидения. Отличие компьютерного представления видео проявляется лишь на изложенных нами ранее характеристиках отдельных кадров видео как компьютерных изображений. Сведем все то, о чем мы уже рассказали, и то, о чем только собираемся рассказать, в одну таблицу (табл. 1.1) (не касаясь пока звука, рассмотренного в следующем разделе).
Внимание
Заметим, что термином «цифровое видео» здесь и далее мы обозначаем не только видео, которое воспроизводится на мониторе компьютера, но и современные «некомпьютерные» технологии (цифровые видеомагнитофоны, видеокамеры и т. п.).
Таблица 1.1. Цифровое и аналоговое видео
Исторически сложилось, что разные стандарты кино и ТВ поддерживают различную частоту кадров. Приведем характеристики некоторых из них:
□ 24 (кадра/с) – используется для создания кинофильмов на кинопленках (классический кинематограф);
□ 25 (кадров/с) – стандарт PAL/SECAM, европейский стандарт телевидения;
□ 29.97 (кадров/с) – стандарт частоты кадров для NTSC (североамериканского стандарта телевидения);
□ 30 (кадров/с) – режим, довольно часто применяемый для создания компьютерных мультимедийных продуктов.
При работе с цифровым видео большое значение имеет договоренность о нумерации отдельных кадров. Способ и формат расстановки числовых меток, связанных с каждым кадром, называется тайм – кодом (timecode) кадра. Чаще всего используется отображение тайм – кода в стандарте NTSC, определяющий нумерацию кадров в пределах каждой секунды фильма, т. е. в виде час: минута: секунда: кадр. Например, тайм – код 01:37:10:21 означает 21-й кадр 10-й секунды 37-й минуты 1-го часа от начала фильма. Однако наряду с таким представлением иногда применяются и альтернативные варианты нумерации кадров (например, сквозная нумерация кадров по порядку от начала до конца, без ссылки на время, т. е. 0, 1, 2, 100 000, 100 001, 100 002 и т. д.).
Рис. 1.7. Качество цифрового видео зависит от разрешения и других параметров отдельных кадров
Подытожим основной принцип компьютерного представления видео: эффект восприятия человеческим зрением динамической картины создается благодаря последовательной демонстрации (с достаточной частотой) отдельных кадров (см. рис. 1.6). При этом каждый кадр является стандартным компьютерным рисунком, обладая всеми его характерными качествами (рис. 1.7), а для уменьшения размеров видеофайлов часто применяются специальные программы, называемые кодеками, большинство из которых используют принцип схожести последовательных кадров друг с другом.
Посвятим данный раздел объяснению основных моментов возникновения, распространения и восприятия человеком звука, а также главным параметрам, связанным с представлением цифровой аудиоинформации.
С физической точки зрения, звук, в широком смысле этого слова, представляет собой колебания частиц окружающей среды (воздуха), передающиеся от точки к точке. Процесс распространения звука (в несколько упрощенном виде) происходит следующим образом. Некоторый источник (например, струна музыкального инструмента, мембрана динамика акустической системы или т. п.) совершает быстрые колебания с определенной частотой и амплитудой. Частотой называется количество повторений цикла колебаний в секунду, а амплитудой — максимальное отклонение колеблющегося тела от среднего состояния, измеряемое, например, в миллиметрах.
В результате взаимодействия источника звука с окружающим воздухом частицы воздуха начинают сжиматься и расширяться в такт (или «почти в такт») с движениями источника звука. Затем, в силу свойств воздуха как текучей среды, происходит передача колебаний от одних частиц воздуха другим (рис. 1.8).
Рис. 1.8. К объяснению распространения звуковых волн
В результате колебания передаются по воздуху на расстояние, т. е. в воздухе распространяется звуковая или акустическая волна, или, попросту, звук. Звук, достигая уха человека, в свою очередь, возбуждает колебания его чувствительных участков, которые воспринимаются нами в виде речи, музыки, шума и т. д. (в зависимости от свойств звука, продиктованных характером его источника).
Рис. 1.9. График динамики интенсивности звуковых волн является их исчерпывающей характеристикой
Чем больше амплитуда колебаний источника, тем больше интенсивность возбуждаемых им звуковых волн (т. е. значение локальных сжатий и разрежений воздуха, происходящих в звуковой волне), следовательно, тем громче звук, воспринимаемый нашими органами слуха. Интенсивность звука в технике принято измерять в децибелах, сокращенно дБ (dB). Зависимость интенсивности звука от времени (рис. 1.9) является исчерпывающей информации об этом звуке.
Частота звука, как уже было сказано, измеряется в единицах в секунду – в герцах, сокращенно Гц (Hz). Частота определяет высоту тона, воспринимаемую нашим ухом. Малые, или низкие, частоты (порядка сотен герц) связаны в нашем сознании с глухими басами, а большие, или высокие, частоты (десятки тысяч герц) – с пронзительным свистом. Таким образом, человеческий слух способен воспринимать звук от сотен до десятков тысяч герц, а более низкие и более высокие, чем порог слышимости, частоты называются соответственно инфразвуком и ультразвуком.
Примечание
В отношении звуковых волн часто используются производные единицы частоты– килогерц (кГц), равная 1000 Гц и, реже, мегагерц (МГц), равная 10е Гц. Чтобы не запутаться, имейте в виду, что мегагерцы, описывающие быстродействие компьютеров, никакого отношения к звуку не имеют (они определяют частоту электрических колебаний в процессоре).
На самом деле, подавляющее большинство знакомых нам звуков не является колебаниями определенной частоты, а представляют собой смесь различных частот, или спектр. Однако некоторые частоты в спектре, чаще всего, доминируют, определяя наше общее впечатление от звука, который мы слышим (об этом можно судить и по приведенному на рис. 1.9 графику интенсивности звука).
Итак, звук является акустическими волнами, передаваемыми в воздухе, и его основными характеристиками являются частота и интенсивность, а полноценной записью звуковых волн может быть признан временной график интенсивности.
Очевидно, что для записи звука на компьютере требуется представить в цифровом виде график зависимости интенсивности звука от времени. Для этого достаточно записать в аудиофайл последовательные значения интенсивности звука, измеренные через определенные (чаще всего, равные) промежутки времени (рис. 1.10). Чем чаще будет произведена такая запись, тем большая информация о звуке будет сохранена, и, соответственно, тем лучше и естественнее будет передан при помощи компьютера звук, однако тем большим по размеру получится звуковой файл.
Рис. 1.10. Цифровое представление звука связано с дискретизацией временной зависимости интенсивности
Итак, частотой дискретизации (rate) называется частота записи графика интенсивности, при помощи которой звук представляется в цифровом виде. Например, частота 5000 Гц означает, что каждая запись звука производится через временные интервалы 1 / 5000 = 0.0002 с.
Очевидно, что частота дискретизации для звуковых файлов имеет то же значение, что и разрешение для видеофайлов.
Подобно действию рассмотренного нами ранее для видеофайлов параметра глубины пиксела, в аудиофайлах каждое текущее значение интенсивности звука может быть кодировано с использованием различного числа возможных градаций. Таким образом, глубина кодировки звука определяет количество битов информации, кодирующих интенсивность звуковой волны в каждый момент времени. Очевидно, что, чем больше количество записываемых в звуковой файл битов, тем с лучшей точностью и разрешением по интенсивности прописывается в цифровом виде звук, тем лучше и естественнее качество звучания.
Поясним сказанное на простом примере (рис. 1.11). Рассмотрим малый интервал времени, для которого имеется несколько измеренных значений интенсивности (для определенных отсчетов времени с равными промежутками). Эти значения интенсивности обозначены на рисунке крестиками. Если использовать высокую глубину кодировки, то при помощи достаточного числа бит информации можно записать в звуковой файл данные значения интенсивности с большой точностью (столбики на рис. 1.11, б). Однако, в целях уменьшения размера файла, глубина кодировки может быть уменьшена. Это означает, что имеющееся в распоряжении компьютера число бит информации будет недостаточным, чтобы записать точные значения интенсивности, а вместо них в файл будут записаны наиболее близкие допустимые значения (столбики на рис. 1.11, а). Разумеется, из – за отличий в исходном звуковом сигнале и записанной в аудиофайл информации качество воспроизведения звука во втором случае будет гораздо худшим. Подчеркнем, что в обоих случаях использовалось одинаковое значение частоты дискретизации.
Рис. 1.11. К объяснению смысла параметра глубины кодировки звука (глубина кодировки левого графика меньше)
Упомянем о хорошо известном всем стереофоническом эффекте, позволяющем синхронно воспроизводить из двух различных динамиков различный звук. Как известно, формат Моно связан с записью в аудиофайл одной звуковой дорожки, а формат Стерео – двух (в последнем случае размер файла по сравнению с монофоническим удваивается благодаря записи в один аудиофайл двух зависимостей интенсивности звука от времени – пример показан на рис. 1.12).
Рис. 1.12. Формат Стерео связан с синхронной записью в один файл двух звуковых каналов
В последнее время все более широкую популярность приобретают многоканальные стереофонические эффекты (предусматривающие воспроизведение не двух, а большего числа звуковых каналов, что, естественно, в соответствующее число раз увеличивает размеры файлов). В этом случае важную роль приобретает схема расстановки динамиков относительно слушателя, поскольку многоканальная стереофония позволяет создать полноценный «эффект присутствия» (хорошим примером является стандарт Dolby Surround, применяемый в современном кинематографе).
Чем больше частота дискретизации и глубина кодировки звука, тем качественнее результат воспроизведения аудиофайла, но и, к сожалению, тем больше его физический размер. Для уменьшения размеров звуковых файлов применяются специальные программы, называемые (как и в случае видеофайлов) компрессорами, или кодеками (codec). Процедуру уменьшения размера звукового файла также называют компрессией, или аудиосжатием.
В последнее время (в основном, благодаря широко известному формату МРЗ) появились новые, попросту фантастические, возможности чрезвычайно эффективно сжимать звуковые файлы, оставляя их качество очень хорошим. Эти технологии постоянно совершенствуются, с каждым годом открывая для пользователей все более широкие возможности.