Видеозапись без видеомагнитофона 24.06.2003 Филипп (Finar) Казаков
Главная задача финальной кодировки — получение из уже имеющегося видеофайла файла меньшего объема. Этот процесс схож с кодированием DVD в DivX (см. «КТ» #463), однако если качество DVD-видео практически идеальное, то захваченный нами файл обязательно будет содержать помехи. Даже если они не видны, это не значит, что их нет. Алгоритмы всех кодеков, дающих сильное сжатие с маленькими потерями качества, во многом основываются на наследовании видеоряда. Поэтому на визуально еле заметные точечные колебания цвета и яркости кодек реагирует очень болезненно, старательно пытаясь их закодировать и сохранить, за счет чего большая часть битрейта тратится на ненужную информацию. Очистка видео — процесс нетривиальный и многогранный (см. врезку ). Но если очистка и не требуется, то прежде чем приступить к сжатию файла в mpeg4, на него надо наложить цепочку фильтров, которая максимально подготовит материал к сжатию.
Очистка видео с помощью VirtualDub
Помехи — случайные кратковременные колебания цвета и яркости точечного характера. При оцифровке телевизионного сигнала они появляются всегда. Для борьбы с ними энтузиастами, безработными видеомонтажерами и просто хорошими людьми написано немало разных фильтров. Каждый из них (фильтров, не людей) имеет свои плюсы и минусы. Оптимальной цепочки чистящих фильтров на все случаи жизни не существует. При очистке видео необходимо придерживаться лишь одного правила, изложенного ниже, а в остальном результат зависит исключительно от вашего терпения и чутья. Чем больше времени вы уделите экспериментам, тем лучше будет результат и тем больше опыта вы накопите. Эффект интерлейсинга заключается в том, что каждый кадр оцифрованного видео состоит из двух совмещенных полукадров источника. Но во время транслирования полукадры шли друг за другом: 1/50 секунды — первый полукадр, 1/50 — второй. Теперь же эти полукадры совмещены, и каждая нечетная строчка захваченного кадра была получена на 1/50 секунды раньше, чем четная. Поэтому помехи в четных строчках одни, а в нечетных — немного другие. Так как во время очистки фильтры используют информацию с соседних строк, то для более успешной очистки видео (после обрезания ненужных краев) кадр трансформируют, разбивая на два условных поля. Левое состоит из четных строк, правое — из нечетных. Ширина кадра при этом, естественно, увеличивается в два раза. Затем накладывается цепочка чистящих фильтров, и очищенные кадры трансформируются обратно. Сформулированное правило, наверное, звучит довольно устрашающе. Но не волнуйтесь, разработчики VirtualDub уже обо всем позаботились и все предусмотрели. Для первого трансформирования кадра от вас требуется всего лишь добавить встроенный фильтр Deinterlace с опцией Unfold fields side-by-side, для второго — его же с опцией Fold fields side-by-side. Теперь вопрос только в том, что поставить между двумя деинтерлейсингами. Рассмотрим наиболее достойные фильтры, выбор же лучшего вам придется сделать самостоятельно, исходя из личных предпочтений и особенностей приема сигнала вашим тюнером. Chroma Noise Reduction, Dynamic Noise Reduction (freevcr.ifrance.com/freevcr/virtualdub/cnr11.zip, www.shdon.com/dnr2. zip) — классические фильтры, традиционно используемые одновременно, причем CNR накладывается обязательно перед DNR. Настройки CNR обычно оставляют по умолчанию, Noise threshold в DNR рекомендуется оставлять в районе 9 пунктов. Работают фильтры довольно быстро, но нередко эффект от очистки не слишком велик. Video DeNoise (www.risingresearch.com/ files/denoise.zip). По мнению автора сайта vrv. nm.ru, — лучший фильтр для очистки видео. В действительности этот фильтр можно назвать почти универсальным. В любом случае, начинать эксперименты с очисткой надо именно с него, и только если нужного эффекта добиться не удается — переходить к другим вариантам. FlaXen VHS (shelob.mordor.net/dgraft/ flaxen/fxvhs.zip) — фильтр, созданный для комплексной обработки изображений, полученных с VHS-источников. Noise Reduction в нем работает медленнее, чем во всех рассмотренных фильтрах. Но если полученный вами промежуточный материал напоминает пленку VHS, то очистка этим фильтром даст наилучший результат. Random Noise Remover (playland.ru/observatory/rnr104.zip) — самый свежий фильтр, появившийся совсем недавно. Его характерная особенность в том, что, по возможности удаляя шум, он лучше других фильтров сохраняет четкость изображения.
|
Основной этап обработки видео производится в VirtualDub. Как вы уже, наверное, заметили, в нем видео проигрывается сразу в двух окнах. В левом — исходное видео, в правом — обработанное. Для наложения фильтра кликните Video Х Filters. Появится окно со списком (пока пустым), в который фильтры будут заноситься в порядке их применения. Для добавления фильтра знаток английского языка немедленно нажмет кнопку «Add…».
Первое, что мы добавим, — «ленивый» фильтр, который ничего не делает. Он так и называется — Null Transform. Зато наличие хотя бы одного фильтра сделает доступной кнопку Cropping, которой тут же и воспользуемся. Cropping — это обрезание кадра. Чуть-чуть резать нужно в любом случае, так как края всегда испорчены и кодировать их незачем, тем более что без них картинка воспринимается лучше. Если же края испорчены сильно или имеются черные полосы в верху и в низу экрана, то резать надо много, — пока в кадре не останется только нужное качественное видео. Много — но аккуратно и по правилам. Отрезанное по вертикали и по горизонтали число пикселей должно делиться на 8 или хотя бы на 4. Такая вот неслучайная особенность.
Следующее, что нужно сделать, — это избавиться от эффекта «расчески» на краях объектов. Этот эффект и его причины были подробно рассмотрены в «КТ» #463, поэтому не будем вдаваться в теоретические подробности. В VirtualDub’e эта проблема решается внесением внешнего фильтра Smart Deinterlace (tuner.ixbt.com/capture/files/smart27b2.zip). Окончание следует
Захват под Windows 9х
Если в ближайшее время вы не планируете переходить на Windows 2000/XP, попробуйте поиграть с захватом под Windows 9x/ME. Имеется два принципиальных отличия при захвате в этих системах. Первое и самое главное: невозможно захватить видео в файл объемом более 4 Гбайт. Обусловлено это вовсе не ограничением файловой системы FAT32 (существуют драйверы NTFS для Windows 9x/ME), а принципиальными ограничениями операционных систем этого типа. Так что, даже установив поддержку NTFS, вы не сможете избавиться от ограничения на размер файла. Второе отличие заключается в том, что в Windows 9x/ME гораздо хуже реализована многозадачность и масштабируемость приоритетов выполнения процессов. Поэтому понадобится чуть более мощный компьютер, и, скорее всего, во время захвата его не удастся использовать в других целях. Принципиальной разницы в методах захвата под разными семействами Windows нет. Различия важны только при первичной оцифровке. Можно использовать iuVCR (последние версии этой замечательной утилиты корректно работают в среде Windows 9x/ME), и в этом случае в первой вкладке нужно указать разбиение на файлы размером в 4000 Мбайт. Потом, конечно, придется мучаться со склейкой этих файлов. Или с ее невозможностью. Если по каким-либо причинам iuVCR вас не устроит, в Windows 9x/ME его вполне может заменить VirtualDub. Если вы заметили, в меню File есть опция Capture, позволяющая делать захват. VirtualDub предоставляет почти такие же базовые возможности, что и iuVCR, хотя удобство его настройки оставляет желать лучшего. Но, с другой стороны, надежность его работы в Windows 9x/ME гораздо выше. Не буду вдаваться в тонкости настройки этого инструмента — если уж вы твердо решили заниматься захватом под Windows 9x/ME, разобраться с ними не составит труда. Для выбора канала вам придется перед запуском VirtualDub настроить тюнер на эту частоту из его «родной» программы. Пользователь Windows семейства NT! Будь внимателен, не используй VirtualDub — он работает только через VFW-драйверы, что не позволит использовать разрешение выше 384х288! |
|