Все видео можно разделить на две большие группы – чересстрочное (interlaced) и прогрессивное (progressive). Примером второго типа могут служить фильмы, снятые на пленку изначально. Такое видео переводится в цифровой вид легко, но, как правило, оно попадается крайне редко, поэтому и рассматривать этот тип мы не будем. Видео же первого типа попадается гораздо чаще, в том числе оно включает и все материалы, отснятые на видеокамеры. Именно видео этого типа нам, как правило, и нужно преобразовывать в цифровой формат. Тут нужно отметить, что самыми распространенными форматами, поддерживаемыми видеокамерами, являются PAL и NTSC . Принципиальная разница между ними состоит лишь в разной частоте кадров: PAL – это 25 кадров в секунду, NTSC – почти 30. Для определенности будем рассматривать формат PAL – именно он наиболее распространен у нас.
Прогрессивное видео – это простая последовательность кадров с разницей во времени в 1/25 секунды.
Чересстрочное же видео на самом деле представляет собой последовательность полей (поле – совокупность четных или нечетных строк кадра в чересстрочном видео, четные и нечетные поля чередуются в потоке последовательно, с промежутком в 1/25 секунды, со сдвигом по вертикали в один элемент) с разницей в 1/50 секунды.
И вот тут возникает самый неприятный момент: такое видео без проблем просматривается на телевизоре, но с видимыми раздражающими смещениями полукадров друг относительно друга на экране монитора. Объясняется это тем, что телевизор изначально рассчитан на просмотр чересстрочного видео, а монитор – на просмотр прогрессивного потока. Ниже приведены 2 кадра чересстрочного видео с характерной «расческой».
Тут мы видим почти статический четкий кадр. Единственный быстродвижущийся объект на нем – белый автомобиль справа. Он движется достаточно быстро, чтобы менять свое местоположение каждую 1/50 секунды. В результате мы наблюдаем ту самую «расческу».
Этот кадр интересен тем, что тут движется камера. В результате, эффект «расчески» наблюдается уже повсеместно.
Если бы мы имели дело исключительно с прогрессивным видео, никаких проблем с просмотром видео как на телевизоре, так и на мониторе не возникало бы. Отметим также, что преобразования прогрессивного видео выполняются много легче и качественнее. Вывод: необходимо попытаться преобразовать чересстрочное видео в прогрессивное. Такие процедуры носят название деинтерлейсинга (deinterlacing). Только вот беда, чересстрочное видео не содержит в себе достаточно информации для получения полноценных полных кадров, пусть и отображающихся с вдвое меньшей частотой: в каждый момент времени мы имеем информацию лишь о половине кадра. Очевидно, что все алгоритмы деинтерлейсинга строятся на некой интерполяции, т.е. выполняют преобразование приближенно, но никогда – точно. Эффект работы таких алгоритмов – получение "дерганого" видео, более зашумленного, с наличием артефактов, если просматривать его на мониторе. При просмотре же его на телевизоре мы получим вполне приличный результат.
Вот и наш первый вывод: если мы хотим смотреть видео-ролик только на телевизоре, нам нужно выполнить деинтерлейсинг и зажать поток каким-нибудь кодеком. Например, используя алгоритм сжатия MPEG-2, получить стандартный DVD. Или использовать кодек DivX – современные DVD-плееры легко их проигрывают.
Но что же предпринять, если нам требуется получить поток для просмотра его на компьютере? Один из самых интересных и, пожалуй, наиболее приемлемый вариант – конвертирование 50 полукадров чересстрочного видео в 50 полных кадров прогрессивного. Для такого преобразования достаточно выполнить простейшие линейные преобразования потока. При этом у нас появляются два варианта решения этой задачи:
- С сохранением разрешения поля. Полученные таким образом кадры будут иметь то же разрешение по высоте, что и полукадры, т.е. в 2 раза меньше, чем полный кадр исходного видео.
- С удвоением разрешения по вертикали. В этом случае недостающие строки просто интерполируются из предыдущих полей.
Достоинства и недостатки первого метода:
- "+" Не производится никаких действий с изображением. Т.е. поля превратились в кадры и все. Легко можно произвести обратное преобразование. Если предположить, что битрейт при финальном кодировании будет достаточно высок, то, в идеале, если в будущем нам понадобится снова чересстрочное видео, мы легко его получим.
- "+" Мы не увеличили количества пикселей за единицу времени. Значит, мы не должны сильно изменить и битрейт финального кодирования по сравнению с 25-кадровым вариантом.
- "–" Четные поля сдвинуты на один элемент вниз (или вверх - зависит от формата видео) относительно нечетных. Этот недостаток легко решается технически.
- "–" При проигрывании мы имеем сплюснутую в два раза по вертикали картинку. Эта проблема также решается технически, причем разными способами.
- "–" При масштабировании в два раза по вертикали мы увеличим артефакты кодирования также в два раза. Можно сказать, это единственный реальный минус первого подхода по сравнению со вторым.
- "–" Требуются дополнительные действия для просмотра оцифрованного ролика на компьютере. Опять же, этот момент легко разрешается при просмотре видео на компьютере.
- "–" Возможен просмотр на аппаратном DVD-плеере, только если он позволяет задавать пропорции картинки вручную, как это делается на некоторых программных проигрывателях.
Достоинства и недостатки второго метода:
- "+" Нет необходимость в масштабировании по вертикали.
- "+" Нет проблем с тремором ("прыганием" картинки вверх-вниз из-за относительного сдвига полей).
- "+" Очень просто проигрывается на компьютере – как обычный видеоролик.
- "–" Необходимость значительно увеличить битрейт при финальном кодировании (фактически вдвое).
- "–" Артефакты, проявляющиеся вследствие интерполяции. Они, конечно, меньше, чем при обычном деинтерлейсинге, но есть, и заметны.
- "–" Только достаточно мощные процессоры способны справиться с декодированием фильмов, созданных с использованием данного метода, тогда как вытягивание картинки по вертикали, необходимое для первого, гораздо менее ресурсоемко.
- "–" Современные аппаратные DVD-плееры пока не справляются с декодированием таких потоков (см. предыдущий пункт), поэтому просмотр такого видео на аппаратных плеерах пока проблематичен.
Собственно, на этом хотелось бы закончить с обзором вариантов оцифровывания. Если Вы всерьез заинтересовались этой проблемой, можете обратиться к Интернету – он содержит довольно много информации, посвященной проблеме оцифровывания аналогового видео. В нашем коротком обзоре мы использовали следующие ресурсы: