(Virtual Dub 1.4.7)
У кого есть видеокамера, TV-тюнер, видеомагнитофон, которые тем или иным способом подключены к PC, не раз возникало желание перевести видео с аналогового вида к цифровому. Это можно сделать различными способами: с помощью карты видеозахвата, видеокарты с возможностью подключения видеомагнитофона. В комплекте с данными устройствами поставляется софт, однако он не всегда удовлетворяет требованиям рядового пользователя. Есть такая программа Adobe Premiere для работы с видео, но все знают, насколько требовательна она к ресурсам. Где же выход? Оказывается, все просто и доступно.
Кое-кто уже догадался, что речь пойдет о программе VirtualDub. Условия распространения - freeware, размер дистрибутива - 708 Kb, после распаковки - 801 Kb. Скачать можно здесь: www.geocities.com/virtualdub. Также понадобится кодек, лучше всего подойдет DivX, который распространяется на условиях открытого кода. В интернете можно найти кодек версии 5.0, однако подойдет любая версия.
VirtualDub довольно прост в обращении, не требователен к ресурсам, имеет удобный интерфейс. Главное окно содержит два "экрана". В левом мы можем видеть кадры исходного видео, а в правом - после преобразования. Ниже расположена полоса прокрутки и функциональные кнопки: в начало, в конец, на предыдущий кадр, на следующий кадр, кнопки выделения фрагмента клипа, выделение ключевого кадра.
У программы есть много полезных, иногда уникальных возможностей. Она позволяет осуществлять захват видео, конвертирование в другие форматы, нарезание и склейку фрагментов. Нужно отметить, что существует два метода обработки видео - с рекомпрессией и без оной. При рекомпрессии: сначала каждый кадр декодируется, потом накладывается нужный эффект или производится другое действие и потом кадр снова кодируется. Все бы хорошо, но слишком медленно процесс движется, и в итоге теряется качество изображения. Обработка без рекомпрессии заключается в простом копировании информации о кадре без ее раскодировки. Она происходит значительно быстрее и не ухудшает изображения клипа, но и не позволяет менять содержимое кадра. В роли формата хранения данных в VirtualDub используется AVI.
В качестве входных файлов VirtualDub может использовать MPG (MPG-1), DAT, AVI и Motion JPEG - формат, в котором обычно сохраняют клипы платы видеозахвата. VirtualDub содержит встроенный декодер MPEG-1 и Motion-JPEG, что позволяет открывать файлы, которые не могут воспроизводиться стандартными средствами Windows.
Особенно хорошо в VirtualDub продумана запись видео с внешних источников. Известно, что при захвате с аналоговых устройств имеется проблема с полями. Она возникает из-за того, что телевизоры и видеомагнитофоны работают в режиме чересстрочной развертки, а мониторы компьютеров - в прогрессивной. Т.е. компьютер выводит кадры целиком, а телевизор - полукадрами, составленными из четных и нечетных строк. Но эти полукадры или поля записаны с разницей во времени. И потому, если просто объединить два соседних полукадра, на полученной картинке на границах движущихся объектов возникает "нерезкость" в виде зубцов. В VirtualDub есть специальные Deinterlace-алгоритмы, с помощью которых можно преодолеть эти проблемы.
Еще одна проблема, возникающая при захвате видео - "барьер в 2 Гб". Она заключается в том, что размер файла не может превышать те самые 2 Гб. При захвате 2 Гб видео получается всего минут на 10-15, хотя все зависит от кодека и выбранного разрешения. VirtualDub позволяет при захвате автоматически разрезать фильм на куски объемом 2 Гб без потери кадров на стыках и после работать с ними, как с одним файлом (Segmented AVI).
Процесс кодирования, записи довольно долгий, поэтому в VirtualDub есть функция Job Control, которая позволяет задавать последовательность задач, пока вы, например, справляете естественную нужду человека - сон (что происходит довольно редко).
Также полезной функцией программы является возможность записи звуковой дорожки в виде WAV-файла. Еще одна интересная особенность - обработка видео на нескольких компьютерах, объединенных в локальную сеть.
Замечательное свойство VirtualDub - склейка двух AVI-клипов: например, у нас два компакта в формате Video CD, и после компрессии есть возможность соединения этих двух клипов в один. Необходимым условием склейки является то, чтобы оба фрагмента были закодированы с одинаковой частотой кадров и одним и тем же кодеком.
Еще одна отличительная черта VirtualDub - наличие большого числа различных фильтров. Причем можно устанавливать еще и дополнительные фильтры или написать самому!!!
Очень удобна возможность накладывать на один кадр несколько фильтров при помощи специальной функции, вызываемой через меню video\filters (Ctrl+F). Можно, к примеру, применить эффект Blur, увеличение контрастности и др. При этом результат зависит от порядка наложения фильтров. Большинство из них работает очень быстро, поэтому результаты их применения можно наблюдать RealTime.
Во время процесса кодирования появляется окошко с данными: номер текущего кадра, величина потока, время окончания процесса, предполагаемый размер конечного клипа и другая полезная информация.
Как видите, работа с программой становится понятной буквально сразу. Хочу отметить, что работать с программой можно на любой машине в принципе, но чем больше MHz у вашего камня, тем быстрее пойдет процесс. К примеру, у меня на Celeron-1067 MHz (шина 133 MHz) процесс кодирования фильма занимает 75-85% времени от длительности фильма - скорость кодирования от 30 до 45 fps/s.
Выражаю благодарность автору этой программы Avery Lee (virtualdub.sourceforge.net) за его бескорыстный труд, а также Алексу Вихрову, который в свое время оказал неоценимую помощь в поиске этой программы и изучении базовых возможностей.
Валерий СМИРНОВ,
smirnovv@tut.by
Основные фильтры VirtualDub (для версии
1.4.7)
2:1 reduction (high quality) - уменьшает размер каждого кадра 2:1 в обоих направлениях (MMX оптимизирован)
blur, blur more - размытие по Гауссу двух различных радиусов
box blur - выполняет быстрое треугольное или кубическое размытие
brightness\contrast - позволяет настраивать яркость и контрастность изображения (MMX оптимизирован)
deinterlace - набор фильтров для работы с искажениями, связанных с чересстрочной разверткой (MMX оптимизирован)
emboss - конвертирует края и границы изображения в тени, производя 3D-подобный эффект
invert - инвертирует цвета в изображении (заменяет изображение его негативом)
motion Blur - размывает смежные кадры одновременно
resize - изменяет размер кадра
rotate - поворачивает изображение на 90, 180, 270 градусов
sharpen - повышает контрастность между смежными элементами в изображении (MMX оптимизирован)
smoother - динамически сглаживает изображение, пока края не "смазаны" - удаляет высокочастотный шум (MMX оптимизирован)
threshold - конвертирует изображение в черно-белое, пока сравнивает яркостные величины
TV - пытается замаскировать "шум", характерный для телевидения
Комментарии