Существует два вида видео — цифровое и аналоговое. Сейчас мы рассмотрим, цифровое видео, из чего оно состоит, как построено.
Разобьём общеизвестное понятие «цифровое видео» на составляющие, чтобы точно определить, что же это такое на самом деле. Итак по порядку:
1. Пиксели
Цифровое изображение, как правило, состоит из пикселей. Чем их больше, тем (теоретически) качественнее больше и тяжелее это изображение.
Пиксель (pixel — точка) представляет собой квадратный элемент на экране компьютера. Каждый пиксель имеет определенный цвет. Формат кодирования цвета в пикселе при выводе его на экран определяется текущими установками видеоадаптера компьютера.
2. Цветовой формат RGB
При выведении информации на экран компьютера обычно используется формат RGB.
По сути это комбинация трех цветов: красного (Red), зеленого (Green) и синего (Blue) из которых строятся все остальные цвета и оттенки. Результирующий цвет варьируется в зависимости от процентного содержания каждого из трех составляющих цветов. Например: R-0 + G-255 + B-0 даст нам зеленый (G = 255), а R-255 + G-255 + B-255 дадут белый, соответственно, если все три цвета поставить в ноль, то получится чёрный цвет.
Режимы видеокарты обычно переключаются с помощью стандартных средств операционной системы. Кроме цвета задаётся разрешение экрана, т.е. «размер» изображения на экране в пикселях по горизонтали и по вертикали (наиболее часто используемые стандартные разрешения: 640×480, 800×600, 1024×768, 1280×1024).
3. Режимов вывода изображения на экран
Режим 8 bit (1 байт на пиксель, 256 color)
Отображает 256 цветов, так называемый «палитровый режим». Цвет пикселя кодируется в виде номера в таблице (палитре) из 256 элементов. Для каждого элемента в палитре хранится его RGB содержание. Видеокарта берет значение пикселя (номер цвета в палитре, от 0 до 255) и по значению получает значения его RGB составляющих, которые и выводятся на экран.
Для видеосигнала, получаемого от чёрно-белых камер (одноканальных), возможно, этот режим и даст выигрыш в скорости, но в остальных случаях не используется.
Режим 16 bit (2 байта на пиксель, HiColor)
Отображает 65536 цветов, что обеспечивает вполне реалистичное изображение. При графических операциях пиксель (точка) кодируется всего двумя байтами, что ускоряет обработку изображения.
Этот режим обычно является лучшим для работы с несжатым видеоизображением.
Режим 24 bit (3 байта на пиксель, TrueColor)
TrueColor — это наиболее реалистичный режим. Он отображает 16581375 цветов.
Режим 32 bit (4 байта на пиксель)
Функционально режим аналогичен режиму 24 bit, но на компьютерах с поддержкой технологии MMX и с соответствующей видеокартой работает несколько быстрее.
Дисплеи компьютеров отображают цвет в формате RGB, так что изображения и видеоинформация в других форматах преобразуются в формат RGB перед выводом на экран.
4. Сжатие цифровых изображений
Сжатие графической (в том числе и видео) информации применяется с целью уменьшения занимаемого объёма при хранении и передаче такой информации.
Существует ряд способов сжатия цифрового изображения. Один из самых распространённых заключается в объединении нескольких мелких соседних элементов изображения в один. В этом случае достигается хорошая степень сжатия, но снижается качество изображения. И чем большей будет степень сжатия, тем менее подробным и более нечётким будет результирующее изображение.
Снижение качества выражается в «размывании» мелких деталей, проявления эффекта «дискретизации» закруглённых линий и границ объектов на изображении (плавные линии и границы объектов выглядят состоящими из маленьких квадратиков и «ступенек»), изменении качества цвета и т.п...
Полезными последствиями результата операции сжатия являются меньшие временные и ресурсные затраты на последующие манипуляции с таким изображением. Файлы со сжатым изображением занимают меньше места и передаются по каналам связи быстрее, чем файлы с оригинальным, несжатым изображением.
Кадры (Frames) и скорость отображения кадров (fps)
Видеофрагмент состоит из серии изображений, или кадров (frames). При последовательном выводе этих кадров на экран создаётся имитация «живого» изображения. Подобный принцип используется в кинематографии.
Для получения слитного, плавного движения без рывков, используется особенность человеческого зрения. Человеческое зрение обладает инертностью, т.е. глаз продолжает видеть предмет ещё некоторое (очень малое) время после того, как предмет переместился (или исчез из поля зрения) в другое место. Этот эффект можно наблюдать, если посмотреть на яркий предмет (например, на лампу), а затем быстро закрыть глаза. Даже с закрытыми глазами несколько секунд будет виден, постепенно меркнущий, след от яркого предмета. Таким образом, если сменять кадры на экране с достаточной скоростью, человек будет видеть следующий кадр в то время, как предыдущий ещё не «потух» окончательно. Скорость смены кадров измеряется в «кадрах за секунду» (fps – frames per second).
Для получения более-менее качественного видеоизображения «в реальном времени» достаточно просматривать видеофрагмент со скоростью не менее 16 fps. Мировым стандартом в кинематографии является 24 fps. Для видеосистем наиболее распространёнными являются значения 25 fps для видеостандарта PAL и 30 fps для видеостандарта NTSC.
Чем большее значение скорости будет установлено в настройках программы, тем более качественным и «живым» получится видеоизображение. Соответственно, количество кадров, регистрируемых системой в секунду, возрастёт и, как следствие, возрастёт нагрузка на систему в целом.
5. Стандарты аналоговых видеосистем PAL и NTSC
Наиболее часто используются два стандарта — NTSC (США) и PAL (Западная Европа).
NTSC (National Television System Committee)
Стандарт разработан в США и принят для вещания в 1953 г. Кроме США вещание по этому стандарту ведётся в Канаде, Японии, Южной Корее и ряде стран американского континента. Основной недостаток стандарта — возможность появления искажений в передаче цвета. Они вызывают изменение цветового тона на экране телевизора в зависимости от яркости данного участка изображения. Например, человеческие лица на экране окрашиваются в красноватый цвет в тенях и в зеленоватый — на освещённых участках. Для уменьшения этих искажений телевизоры стандарта NTSC оснащаются регуляторами цветового тона «TINT CONTROL». Этот регулятор позволяет добиться более естественной окраски деталей с какой-то одной яркостью, однако искажения цветового тона более ярких или более темных участков изображения при этом даже возрастают.
Разрешения стандарта NTSC: 320×240, 640×240, 640×480
PAL (Phase Alternation Line)
Стандарт разработан фирмой Telefunken (ФРГ) в 1962—1966 г.г. Телевизионное вещание в этом стандарте ведётся в большинстве стран Западной Европы, в Австралии и ряде стран Азии и Африки. По сути, стандарт PAL представляет собой усовершенствованный вариант стандарта NTSC.
PAL использует метод добавления цвета к телевизионному сигналу чёрного и белого цветов. Создаёт на экране 625 строк с частотой 25 кадров в секунду. Система менее чувствительна к фазовым искажениям, чем NTSC, но в то же время в телеприёмнике происходит усреднение сигналов цветности в двух соседних строках, что приводит к понижению вертикальной четкости цветовой составляющей.
Разрешения стандарта PAL: 384×288, 768×288, 768×576
6. Чересстрочное (Interlaced) видеоизображение
Режимы 768×576 для стандарта PAL и 640×480 для стандарта NTSC представляют собой телевизионный стандарт (стандарт разделённых по времени полукадров или «чересстрочная развертка», Interlaced).
В режимах 640×480 для NTSC и 768×576 для PAL кадр разделяется на два полукадра. Второй полукадр снимается следом за первым и содержит снимок следующего момента времени того же изображения, смещённого построчно – то есть каждая строка второго полукадра располагается между строками первого. Из этих кадров впоследствии собирается целый кадр с вертикальным разрешением вдвое большего стандартного и, за счёт этого, лучшего качества. Работая с полукадрами, электронный луч в первый проход рисует все нечётные строки первого (нечётного) полукадра, затем возвращается в начало и рисует все чётные строки второго (чётного) полукадра.
Данные режимы применимы только в том случае, когда захватываемое изображение статично (т.е. в снимаемой сцене нет быстрого движения). В противном случае появляются специфические искажения за счёт того, что второй кадр «снимается» позже первого.
7. Ключевые кадры и операция дельта-сжатия
Операция дельта-сжатия представляет последовательность кадров видеофрагмента следующим образом:
Допустим, требуется произвести операцию дельта-сжатия для некоторого видеофрагмента.
Из оригинального видеофрагмента выбирается некий базовый кадр (допустим, первый). Этот кадр сохраняется в результирующем видеофрагменте без изменений и называется ключевым кадром.
Следующий за ним кадр (второй) после дельта-сжатия будет содержать не полное изображение второго оригинального кадра, а только изображение отличий второго кадра от первого. Такой кадр называется дельта-кадром.
Следующий (третий) дельта-кадр будет содержать отличия третьего оригинального кадра от второго оригинального кадра и так далее.
При воспроизведении получившегося видеофрагмента сначала показывается ключевой кадр, а затем поверх него накладываются изменения в виде серии дельта-кадров.
За третьим дельта-кадром будет находиться еще, скажем, 6 дельта-кадров, а затем — следующий ключевой кадр. Зачем он нужен? Если в силу каких-либо причин передача видеоинформации будет сопровождаться помехами, то все неточности изображения будут удалены следующим ключевым кадром.