Восемь востребованных задач, которые можно легко и быстро решить с помощью VirtualDub.
Цена на профессиональный видеоредактор может исчисляться тысячами долларов. В основном такие программы представляют собой сложные и громоздкие пакеты, для работы с которыми необходим определенный уровень подготовки. Более дешевые утилиты имеют массу недостатков, с которыми не сможет смириться ни один любитель видеомонтажа -- эти приложения дают на выходе видео невысокого качества и содержат ограниченное число функций для редактирования видеоматериала.
За простым интерфейсом VirtualDub скрываются широкие возможности
Программа VirtualDub (wwwvirtualdub.org) -- редкое и потому приятное исключение из правил. Во-первых, эта утилита распространяется бесплатно. Когда ее автор, студент колледжа Avery Lee, начинал разработку, он делал все, что называется, «для себя», поэтому программа вышла очень продуманной и гибкой. Во-вторых, VirtualDub способна выполнять некоторые очень важные и полезные операции, которых можно не найти даже в дорогих коммерческих видеоредакторах. Конечно, при размере в несколько мегабайт этой утилите не потягаться с такими известными пакетами для обработки видео, как Adobe Premiere Pro, Edius и т.д., однако большинство наиболее важных операций с помощью данного приложения выполнить удастся.
Кроме того, следует отметить высокую скорость и стабильность работы утилиты, обусловленные тем, что она построена по принципу «ничего лишнего». Аскетичный интерфейс, отсутствие второстепенных функций и вдобавок поддержка многопоточности позволяют эффективно использовать аппаратные возможности и максимально задействовать мощности современных процессоров.
В этой статье мы рассмотрим восемь востребованных задач, которые можно легко и быстро решить с помощью VirtualDub.
Сохранение звуковой дорожки
В некоторых случаях бывает нужно сохранить звуковую дорожку в виде отдельного файла. Например, вы хотите слушать концертную запись в плеере по дороге в институт или на работу либо извлечь аудиоданные из видеофайла, чтобы отредактировать в аудиоредакторе неудачно записанную звуковую дорожку. Подобные задачи VirtualDub решает быстро и качественно.
Одно из достоинств программы состоит в том, что она сохраняет аудио- и видеопотоки без повторной компрессии. Она будет очень полезна при сохранении аудиотрека отдельным файлом. Чтобы отделить звук от видео, следует открыть в программе видеофайл и выяснить, находится ли переключатель в меню Audio в положении Direct stream copy. Затем нужно сохранить файл, выбрав команду File > Save as wav.
Записать звуковую дорожку можно сразу в определенный формат, к примеру в поддерживаемый каким-нибудь портативным устройством, скажем MP3-плеером. В результате исходный файл будет конвертироваться в формат, указанный пользователем. Для этого необходимо в меню Audio установить переключатель в положение Full processing mode и выбрать команду Audio > Compression. В появившемся меню нужно указать тип кодека, который будет использоваться для сжатия аудиотрека, а также его параметры -- частоту дискретизации и битрейт, определяющие качество сохраняемого файла. Далее следует выбрать команду File > Save as wav. После завершения описанных выше действий программа выполнит конвертирование звуковой дорожки в требуемый формат.
Учтите, что файл будет сохранен с расширением .wav, из-за чего не все устройства и приложения сумеют корректно определить его содержимое. А когда программа сконвертирует и запишет аудиофайл на жесткий диск, его разрешение можно изменить вручную в любом файловом менеджере, установив «правильное» MP3 или другое.
Резка клипа без потерь
Как уже было отмечено, VirtualDub помогает редактировать видеофайлы без повторной компрессии. Благодаря этому в программе можно, например, вырезать из концертной записи определенную композицию. Чтобы выполнить такую операцию, откройте исходный файл и передвиньте ползунок в положение, соответствующее началу фрагмента, который необходимо сохранить на диск отдельным файлом. Обозначьте начало этого клипа, нажав на клавиатуре клавишу <Home> или выбрав в меню программы Edit пункт Set selection start. Теперь передвиньте ползунок на конец вырезаемого эпизода и нажмите клавишу <End> или укажите в меню программы Edit пункт Set selection End. На временной шкале выделенный промежуток будет обозначен цветом.
Чтобы вырезать фрагмент из клипа, нужно указать его границы
Чтобы избежать повторной компрессии, выберите пункт Direct stream copy в меню Video и аналогичный пункт в меню Audio. Теперь можно сохранять файл с помощью команды File > Save as AVI. Поскольку не требуется повторное сжатие, то процесс сохранения отдельного фрагмента видео занимает очень мало времени и фактически сводится к записи файла на диск.
Объединение нескольких клипов в один
Главное неудобство, которое ощущается при работе с VirtualDub, -- отсутствие многодорожечного интерфейса. На первый взгляд может даже показаться, что программа работает только с одним клипом. На самом же деле VirtualDub способна выполнять такую полезную операцию, как «склейка», объединяя неограниченное число фрагментов в один.
Склейка осуществляется двумя способами -- по отдельности и пакетно. Объединение двух и более файлов без повторной компрессии выполняется лишь при условии, что они имеют одинаковые параметры. Чтобы присоединить один фрагмент к уже открытому клипу, следует выбрать в меню программы команду File > Append AVI segment и указать присоединяемый файл. Убедиться в том, что клипы предварительно склеены, поможет временная шкала -- продолжительность видео должна увеличиться.
Когда же нужно объединить группу видеофайлов, необходимо назвать их определенным образом: video001.avi, video002.avi, video003.avi и т.д. И тогда при изготовлении из отдельных фрагментов целого видео файлы автоматически встанут в том порядке, в каком они пронумерованы. Пользователю останется добавить лишь первый файл. Далее операция склейки выполняется точно так же, как и при работе с двумя файлами.
Замена звуковой дорожки
Выполнять данную операцию имеет смысл, например, при работе с двумя видеофрагментами, скажем парой фильмов. В одном -- плохое видео, но качественное звуковое сопровождение, в другом -- изображение хорошее, но звук неважный. Значит, для получения требующегося результата нужно будет подменить звуковую дорожку, совместив хорошее качество видео и нормальный звук.
А чтобы замена аудиодорожки осуществилась корректно, необходимо соблюдать определенные условия. Так, продолжительность аудио не должна сильно отличаться от исходной продолжительности видео. Кроме того, следует учитывать, что некоторые форматы видео совместимы со звуковыми дорожками только определенного формата. Аудиодорожку лучше всего подготовить в другой программе (например, в бесплатном аудиоредакторе Audacity), хотя в данной утилите и есть функция импорта аудиотрека из другого видеофайла.
Для замены звуковой дорожки нужно открыть исходное видео в VirtualDub и выполнить команду Audio > Audio From Another File. А затем следует указать путь к аудио- или видеофайлу и сохранить результат.
Пакетная обработка видео в VirtualDub
Редактор VirtualDub содержит так называемый список заданий (Job List), позволяющий автоматизировать обработку файлов. Например, стоит задача конвертировать с десяток видеофайлов в разные форматы. Если бы в программе не было поддержки пакетной обработки, пришлось бы по очереди загружать в нее видео, указывать каждый раз новые настройки, ждать, пока она запишет файл на диск, затем открывать следующее видео и снова ждать, пока VirtualDub справится с процессом сжатия и т.д. Благодаря поддержке пакетной обработки видео, можно лишь указать, какие операции должны быть выполнены, а затем оставить компьютер без присмотра. Утилита обработает данные, строго придерживаясь оставленных инструкций. Чтобы занести какое-нибудь задание в список Job List, необходимо использовать набор команд в меню File > Queue batch operation.
VirtualDub умеет обрабатывать файлы в пакетном режиме
Скажем, если нужно последовательно выполнить сжатие двух файлов, необходимо проделать следующие действия. Открыть первый файл, указать параметры сжатия и, если потребуется, начало и конец сохраняемого клипа. Потом следует выбрать в меню File > Queue batch operation > Save as AVI. После этого программа не будет выполнять никаких действий, и можно открыть следующий файл, настроить новые параметры его экспорта и еще раз выбрать нужную команду из подменю Queue batch operation. Далее, когда все задания будут составлены, необходимо раскрыть список Job List в меню File > Job control и нажать в нем кнопку Start, чтобы запустить процесс пакетной обработки.
Многопроходное кодирование
Если требуется подготовить видео для просмотра на мобильном устройстве или перевести его в определенный формат для публикации на одном из онлайновых сервисов, это поможет сделать VirtualDub. Многие алгоритмы сжатия видео поддерживают кодирование в несколько потоков, однако далеко не все знают, как эту технологию применить на практике.
Допустим, необходимо сжать файл кодеком x264vfw (он устанавливается дополнительно, например, вместе с пакетом кодеков K-lite). Когда файл будет открыт в программе, нужно выбрать в меню Video > Full processing mode, а затем -- команду Video > Compression. В списке установленных видеокодеков следует указать пункт x264vfw - H.264/MPEG-4 AVC codec. Затем в правой части окна надо нажать кнопку Configure, чтобы перейти к настройке процесса сжатия. Потом в окне настроек кодека, в раскрывающемся списке Rate Control, нужно выбрать пункт Multipass 1st pass (он обозначает первый проход при многопроходном кодировании) и установить флажок Zero Latency, а в поле Target bitrate kbit/s задать скорость потока. Чем больше этот параметр, тем выше будет качество изображения. Далее следует нажать на кнопку ОК и указать формат звуковой дорожки (команда Audio > Compression) и тип кодека, например Mp3 48 кГц 128 kBit/s, stereo.
Настройка многопроходного кодирования
Теперь нужно выбрать в меню программы File > Queue batch operation > Save as AVI. Затем необходимо еще раз перейти к настройкам кодека для сжатия видеодорожки и в списке Rate Control выбрать пункт Multipass Nth pass (проход кодирования, отличный от первого). Никакие другие настройки изменять при втором, третьем и следующих проходах не придется. Далее следует повторно занести команду сохранения файла в список заданий File > Queue batch operation > Save as AVI. Если же понадобится выполнить кодирование в три (или более) прохода, то следует добавить в список заданий команду сохранения файла столько раз, сколько требуется. При каждом выборе этой команды имя файла должно оставаться одним и тем же. Многопроходное кодирование позволит кодеку оцифровать данные в несколько проходов. После каждого цикла компрессии программа записывает, а затем обновляет вспомогательный файл статистики, информация из которого используется алгоритмом многопроходного сжатия при любом очередном проходе.
Когда все задания будут добавлены в список, нужно открыть список пакетной обработки заданий VirtualDub Job Control, нажав клавишу <F4>. В нем отображена вся последовательность действий, которые должна выполнить программа. Для начала кодирования надо нажать кнопку Start и дождаться окончания обработки файла программой. Когда процесс конвертирования видео завершится, в списке заданий напротив каждой строки в колонке Status будет стоять Done (Готово). Чтобы не возникло случайных ошибок, при обработке видео не рекомендуется запускать ресурсоемкие приложения и вообще работать в это время на компьютере. Поскольку принцип многопроходного кодирования идентичен независимо от выбираемого кодека, сжатие с его использованием кодеками DivX, VP70 и пр. будет мало отличаться от описанного варианта для x264.
Применение фильтров
Чтобы откорректировать цветопередачу, наложить логотип на видео, изменить соотношение сторон и выполнить другие операции с видеофайлом, потребуются видеофильтры. Так вот в VirtualDub их множество, причем самых разных.
К одному ролику допустимо применять любое количество фильтров. Чтобы назначить фильтр, необходимо выполнить команду Video > Filters, нажать кнопку Add и выбрать нужный. Если в фильтре присутствуют какие-то настройки, они отобразятся на экране сразу же после его добавления. А чтобы вернуться к ним после выбора фильтра в списке стандартных модулей VirtualDub, достаточно указать в меню команду Video > Filters и, выделив в перечне установленный, нажать кнопку Configure.
Встроенные и дополнительные фильтры -- главные инструменты VirtualDub
Среди наиболее полезных фильтров, употребляемых для обработки видео, стоит выделить следующие:
• Deinterlace -- устраняет эффект «гребенки», возникающий при наличии в видео смещения четных и нечетных строк изображения. Стандартный фильтр деинтерлейсинга в VirtualDub позволяет устранить этот недостаток изображения, используя несколько алгоритмов решения проблемы.
• Resize -- помогает изменить размер картинки обрабатываемого видеофайла. При изменении оригинального размера картинки можно выбирать тип аппроксимации точек, чтобы получить наиболее четкую картинку.
• Logo -- позволяет нанести на видео водяные знаки. С помощью данного инструмента легко поместить в любое место экрана картинку из файла формата JPG, TGA, PNG, BMP или JPEG. В настройках фильтра Logo можно использовать параметр прозрачности и маску альфа-канала для накладываемой на видео картинки.
• Rotate -- предоставляет возможность подбирать оптимальную ориентацию кадра видео для просмотра на экране мобильного устройства, например смартфона. С его помощью удастся повернуть исходное изображение на 90, 180 или 270 о
• Rotate2 -- действует аналогично предыдущему. Однако в настройках этого фильтра разрешается указывать произвольный угол поворота, а положение смещенных точек кадра аппроксимируется по одному из нескольких алгоритмов. Кроме того, в настройках фильтра предлагается установить цвет поля, которое становится видимым при повороте картинки.
Помимо стандартных фильтров в программе VirtualDub можно использовать дополнения сторонних разработчиков, в том числе как бесплатные модули, так и коммерческие.
Рассинхронизация видео и звука
Эта проблема часто возникает при воспроизведении некорректно сжатых файлов. Причин рассинхронизации может быть много -- от неправильно выбранных настроек кодирования до ошибок при обработке видеопрограммой. К счастью, существует несколько способов решить ее.
Если аудиотрек имеет постоянную величину смещения видео относительно звука, необходимо в настройках кодирования указать параметр задержки аудиодорожки. Для этого в меню Audio нужно выбрать пункт Interleaving, установить флажок Enable audio/video interleaving и в поле Delay audio track by указать значение в миллисекундах, на которое происходит отставание или опережение звука. Если аудио опережает видео, следует указать положительное значение, если отстает --- отрицательное.
Если аудио отстает от видео или наоборот, есть возможность справиться с такой проблемой
Другой способ рассинхронизации -- ручное редактирование звуковой дорожки. Попробуйте сохранить аудиотрек отдельно и исправить его в стороннем аудиоредакторе, например добавив пустой фрагмент нужной продолжительности в начало дорожки. Также можно обратить внимание на продолжительность трека после извлечения его из видео, а затем использовать специальный инструмент в аудиоредакторе, чтобы изменить продолжительность звучания аудио.
* * *
Поскольку VirtualDub имеет открытый код, отдельные энтузиасты создали ряд модификаций этой утилиты. Среди наиболее популярных «форков» стоит выделить VirtualDubMod (virtualdubmod.sourceforge.net) и NanDub (ndub.sourceforge.net). Если по каким-то причинам вас не устраивает VirtualDub, вы можете поработать с разными версиями данного видеоредактора. Интерфейс, а также основные функции в этих программах совпадают. Однако следует иметь в виду, что оригинальная версия, в отличие от ее ответвлений, регулярно обновляется.