В этой теме вы узнаете подробнейшее описание всех процессов работы с программой VirtualDub.
Итак приступим:
VirtualDub - это программа для захвата и обработки цифрового видео.
Вот её основные преимущества:
1) Лучший и быстрый захват видео.
VirtualDub, как и Nandub содержит встроенную функцию видео захвата.
2) Баръер файлов в 2 Гб.
VirtualDub может захватывать и обрабатывать файлы превышающие известный 2-х гигабайтный предел, и работать с видео посегментно, то есть он может захватывать аналоговое видео без остановки и автоматически последовательно пронумеровывать файлы, превышающие 2-гигабайта (ограничение для Win95,98,Me). VirtualDub так же свободно читает файлы посегментно захваченные программой видеозахвата AVI_IO.
3) Видео монтажные функции.
VirtualDub оптимизирован для видео монтажа, что делает его простой программой, которую удобно применять для предварительной обработки, очистки или преобразования видеофайлов. Здесь действительно просто записать видео-ролик, отрезать ненужные части и запустить процесс конвертации одним из установленных кодеков.
4)Поддержка кодеков.
Встроенная поддержка кодеков Motion-JPEG, MPEG-1 видео и MP3 аудио.Вы можете менять и удалять файлы черезстрочного видео совершенно свободно, вне зависимости от того, какой MJPEG декодер вы используете.VirtualDub может преобразовывать MPEG-1 в AVI, включая звуковую дорожку. Поддерживаются внешние кодеки, проинсталлированные в вашей оперативной системе, такие как DivX, mpeg4, wma и т.д.
Примечание: VirtualDub не поддерживает напрямую форматы видео - mpeg2 и type-1 DV.
5)Применение фильтров.
Большинство фильтров VirtualDub могут работать в реальном времени. Это означает, что вы можете вставлять видео фильтры и тут же видеть результаты их применения в правом окне VirtualDub без какого либо кодирования. Все внешние фильтры для VirtualDub можно скачать с интернета и поместить в папку "Plugins" (естественно в разархивированном виде), которая находится в вашей папке с VirtualDub. Таким образом VirtualDub сам обнаружит установленные фильтры и загрузит их, остаётся дело за выбором фильтра...
6)Применение Direct Stream copy |AMP|amp; Frameserver.
В VirtualDub есть две отличные функции, которые как правило отсутствуют у многих видео редакторов:
6a) Direct Stream copy - прямое копирование (без перекодирования), как аудио, так и видео потоков, что позволяет обрезать в видеофайле ненужные сцены и сохранить уже обрезанную заготовку в исходном формате не теряя при этом качества видео. Требуется дополнительное свободное место на жёстком диске.
6b)Frameserver - экономичная функция передачи видеокадров напрямую в какой-нибудь encoder, типа CinemaCraft или TMPEG. Совершенно не требует нескольких гигабайт свободного места на диске.
--- передача напрямую кадров без какой либо обработки.
--- передача напрямую обработанных кадров с применением фильтров VirtualDub в некомпрессированном формате RGB (экономия свободного места на жёстком диске).
7)Отложенная обработка.
Встроенная система управления заданиями позволяет создавать пакеты заданий для отложенной обработки видео. Вы можете построить огромный список задач и запустить его для выполнения на ночь или когда уйдёте на работу. Программа сама будет следить за временем запуска-окончания. Вы всегда сможете переупорядочить список задач, даже когда они уже выполняются.
8)Бесплатное открытое программное обеспечение.
VirtualDub - является бесплатно распространяемым, программным обеспечением, с доступным полным исходным кодом. Вы можете изучать исходный код и использовать его части в ваших GNU GPL программах!
В начале запустим "AuxSetup"
Проинсталируем
"install handler" и нажмём
"Run VirtualDub" для запуска программы или же запустите сразу, после вышеописанной инсталляции, файл
VirtualDub.exe из папки c программой.
Простота работы с
VirtualDub помогает любому, даже не понимающему в дигитальном видео человеку, обрабатывать, вырезать и захватывать в цифру видео изображение. Здесь мы научимся обрабатывать готовый видео файл, переконвертировать его в другой
AVI формат видео с аудио или без него...
Для начала откроем видео файл, указав директорию его нахождения (сегментированно захваченные файлы сами загрузятся автоматически до 99 файлов подряд; имеются ввиду файлы захваченные программами AVI_IO или VirtualDub)
Можете после открытия файла добавить ещё AVI файл, но имейте ввиду, что он должен быть c теми же параметрами, что и предыдущий файл:
формат, размер изображения и
"data rate"
Обрежем "ненужные" кадры (фреймы), для этого внизу отмечена клавиша начала "ненужных" кадров, нажмём её:
затем передвинем
бегунок (
рендер,слайдер - кому какое название нравится) и отметим конец "ненужных" кадров нажатием следующей кнопки (клавишами курсора '<' и '>' можно подрегулировать покадровую точность):
И, наконец, нажимаем на клавиатуре клавишу
"DEL" и все выделенные фреймы удаляются... Или же, если это сегментированно загруженные файлы, сразу нажмите "Save as AVI..." и ваш, выделенный синим, кусок видео начнет копироваться (при отмеченных в VIDEO/AUDIO - direct stream copy) или кодироваться. Потренеруйтесь перед сохранением файла, а то потом будет поздно чесаться ;))
Теперь начнём настройку нужного аудио формата
Настроим внизу нужную частоту дискретизации, каналы, битность или оставим по умолчанию
"interleaving" - совмещение аудио с видео - отметим для каждого фрейма
Теперь настроим аудио компрессию:
В нашем случае выбираем аудио кодек
DivX;) Audio (этот аудиокодек устанавливается вместе с видеокодеком DivX 3.11_alfa. После инсталляции видеокодека надо запустить файл
"Run me first!!!" для инсталляции самого аудиокодека), отмеченный ниже на рисунке, и выберем поток - 64 кб/с стерео for DivX;) - самый по моему оптимальный аудио кодер и почти не имеющий расхождения видео с аудио (а это большая проблема - ведь вы, уверен, не хотите сначала просмотреть изображение, а только через несколько секунд услышать звук, что не есть хорошо, как понятно
)
Одним словом - это формат
WMA (windows media audio) - недалеко ушедший от формата mp3, даже мне кажется WMA почище будет
Этот же кодек сидит в установках
Windows Media Audio V2 64kbps, 44kHz stereo 8Kb/s
Хотя вы можете варьировать кодеками, как захотите - можете перекомпрессировать звук в
mp3 (при двухпроходной компрессии в mp3 лично у меня в VirtualDub выскакивает сообщение об ошибке в программе, да и сам создатель программы VirtualDub намекает, что со звуком сжатым в mp3 - возможна рассинхронизация аудио и видео).
...или вообще оставьте PCM - не компрессированный звук (кому как нравится).
Или же, можете вытащить звук из видео файла в некомпрессированном формате PCM (wav) и обработать его в аудио редакторе в нужный вам формат...
Оставим метку на "
AVI audio", так как здесь мы будем обрабатывать звук, оригинального AVI, замешанного вместе с видео.
Отметим
"полный режим обработки", потому что только с этим параметром звук перекодируется, а если вдруг вы решите не изменять формат исходного аудио, то в этом случае надо отметить "
direct stream copy" - "
прямая копия потока"
А ещё можно немного поднять регулятор громкости звука, если вдруг на оригинале - тихий звук (работает только при "
Full processing mode")
Поставьте галочку и передвиньте регулятор громкости на нужный вам процент:
Перейдём к видео настройкам
Сначала о
фильтрах
Нажмём "
add" - "
добавить" и все внутренние фильтры загрузятся. Чтобы добавить и внешние фильтры вы должны их скачать с интернета и распаковать в папку "
Plugins", находящуюся в вашей папке с VirtualDub, тогда и внешние фильтры будут загружаться автоматически при нажатии на "
add".
После открытия вы увидите определённое количество фильтров, которые используются для редактирования...
Я выберу только фильтры, нужные для перегона AVI (захваченного моей Мирой) в DivX формат.
...и первый фильтр - это внешний фильтр "
smart deinterlace" - он хорошо справляется с коррекцией смещения при быстром движении.
...и работайте с версией 2.4 (лично мое мнение - я заметил, что от версий 2.6 и 2.7 появляются артефакты).
Обязательные настройки для коррекции смещения "
Field-only differencing" и "
Phase shift" (я отметил справа "
Field swap before phase shift", потому что моя Mira делает захват с нечётным расположением полей, если у вас карта захвата с чётным расположением полей, то вы будете должны поставить галочку на "
Field swap after phase shift"):
Или, можно воспользоваться уже внутренним фильтром - "
deinterlace" - этот фильтр хорош тем, что убирает при больших разрешениях (768х576, 720х576, 640х480) видимую на мониторе "расчёску" - которая остаётся после захвата двух полей, но этот фильтр c функцией "blend" замыливает изображение
Отметим одну из трёх указанных функций (на ваш вкус) и ОК (я отмечал дублировать поле первое или второе - выходит получше, чем голый "
blend")
Здесь можете посмотреть моё сравнение с применением "
deinterlacing mode".
Многие считают, что применение внешнего фильтра "
smart deinterlace" - лучшее решение...
Я провёл эксперимент: взял 2 клипа (в одном клипе "
smart deinterlace" - удачен, а во втором - нет). Во внутреннем "
deinterlace" применялась функция "
Blend" (к сведению). Оба клипа были захвачены в одно и то же время друг за другом, с одинаковой полной резолюцией (768x576) и с одинаковым
data rate = 7 Мб/c
На этих картинках визуально можно посмотреть разницу между этими двумя, вроде на первый взгляд одинаковыми, клипами...
Клип №1 Клип №2
Отсюда делайте выводы, что и когда надо использовать! Все клипы, видимо, разные по структуре??? (бывают фильмы переделанные из прогрессивного в чрезстрочный или возможно был сделан "
telecine" - метод преобразования частоты кадров из 24fps в 30fps).
Я перед кодированием делаю визуальную проверку в правом окне VirtualDub (окно выходного видео), чтобы просмотреть какой "
deinterlace" фильтр лучше применить для текущего клипа.
Пойдём дальше и добавим ещё фильтр "
re-size" - уменьшение или увеличение изображения
Настроим нужный размер и отметим "
Precise bicubic", нажмите "
просмотр" (обрабатываемый файл должен быть загружен в VirtualDub) и просмотрите, что должно получиться ...
Я, лично, уменьшаю резолюцию с 768х576 до 640х480 (лучшее качество)
Ну а если вы решите в 2 раза уменьшить размер изображения, укажу на следующий фильтр:
Отметим "
2:1 reduction (high quality)" - этот фильтр уменьшит разрешение видеофайла в 2 раза, но оставит хорошее качество (рекомендуется для слабых компьютеров)
Внимание! Этот фильтр я использую, чтобы уменьшить захваченное видео с резолюцией 768х576 до резолюции 384х288. Будьте осторожны если ваше видеоизображение другого размера (p.s.)
Если вы хотите увеличить резкость вашего видео клипа добавьте внутренний фильтр "
sharpen", как показано здесь:
и сдвинем ползунок до ... я сдвигаю до 32, а вы как решите...
Следующая строка "
frame rate" - изменение скорости передачи кадров
Я отмечаю - как взаимосвязь аудио с видео, чтобы не было рассинхронизации аудио с видео.
Очень полезная функция!
P.S. Не рассматриваемая здесь функция - "
inverse telecine" - метод преобразования частоты кадров из 24 в 30 кадров/сек (частота кадров в американской системе NTSC = 30 кадров/сек) смысл этого, что к каждым четырём кадрам добавляется пятый кадр. Делается это делением кадров на черезстрочные поля и использованием двух полей из двух кадров четвёрки дважды.
Добрались, наконец, до видео компрессии:
В нашем случае выберем
DivX Codec здесь рассматривается 4.12 (это может быть любой номер 4-ого кодека заранее скачанный на
www.DivX.com и проинсталлированный в вашей системе) и нажмём "
configure", для более точных настроек.
Теперь объясню по указателям:
"Variable bitrate mode" - одна из самых важнейших настроек; в ней устанавливается режим, способом которого вы будете компрессировать свой видеофайл.
Режимы:
в 1 проход: 1-pass (с тонкими настройками, о которых я расскажу ниже) и
1-pass quality-based (с единственной настройкой "
encoding quality", измеряемой в процентах)
в 2 прохода: 2-pass - наилучший способ (где первый проход - сбор информации о степени движения, а во втором проходе мы уже получим готовый файл)
Двух проходность мы и рассмотрим:
"
Performance/Quality" - скорость обработки, чем ниже скорость, тем качественнее обрабатывается видео ("
slowest" - самая медленная обработка, а "
fastest" - самая быстрая).
Настроим один из основных параметров "
output video bistream" видеопотока, чем он меньше, тем меньше по "весу" выходящий файл , но и качество сильно падает ... Я выставляю в первом проходе = 1000 Кб/с, а во втором проходе оставляю те же цифры, что и в первом проходе.
Можете выставить ключевые кадры (
Maximum keyframe interval) = 9999 - эта конфигурация включена внутри кодека и называется VKI (variable keyframes interval), она автоматически расставляет ключевые кадры, где считает нужным, но я оставляю = каждые 50 кадров...
Ключевые кадры - это основные кадры - они содержат в себе максимальную информацию о кадре оригинального видео и имеют... ;(( ...больший "вес".
При KF=9999 - вставляются, иногда в больших объёмах, в местах изменения сцен или в местах с быстрым движением, а иногда, когда нет изменения сцен и практически нет движения, не вставляются совсем .
Помимо KF в видеоинформации присутствуют deltaframes (DF) - вставляются между ключевыми кадрами и содержат в себе не весь кадр фильма, а только разницу между предыдущим ключевым кадром и кадром, на который выпадает этот дельта-кадр, DF по размеру намного меньше, чем KF ..
Поэтому, чем больше ключевых кадров, тем :
1) выше качество видео.
2) лучше аудио/видео совмещение (interleaving).
3) лучше навигация по видео фильму (что очень важно - если вы захотите нажать кнопку "пауза", то ваш видео плейер может вернуть вас к предыдущему или последующему ключевому кадру, а это может быть длиной в половину фильма ...).
4) но, естественно, и увеличится объём будущего видеофайла.
И в связи с этим я отказался от VKI (9999) и выставляю теперь "
Maximum keyframe interval" = 50 frames.
"
Deinterlace" - можете поставить галочку, если не задействуете внутренний фильтр "Deinterlace" программы VirtualDub - я не отмечаю эту функцию, так как пользуюсь внутренним фильтром VirtualDub
"
Decoding parameters" - уровень "
postprocessing" я сдвигаю вправо до конца (рекомендовано изготовителями DivX для Pentium3 и выше).
При уровне = 0 - ни один фильтр не работает
При уровне = 1 и 2 сработает фильтр "Deblocking" - помогает уменьшить плотность артефактов (квадратиков):
1 уровень - по горизонтали
2 уровень - по вертикали и по горизонтали
При уровне 5 и 6 фильтрация светового и цветового шумов, однако размывает изображение - используется в большинстве случаев для мультипликации (работает минимум с Pentium-3)
1 pass encoding parameters
Эти параметры настраиваются для двух проходов сразу (будьте внимательны !!!) - изменить настройки для второго прохода вы уже не сможете - они закроются ...
"
MAX and MIN Quantizers"
Квантизаторы - одни из наиболее важных параметров в видео кодировании (то же самое , что и DRF в NanDub)
Квантизаторы изменяются
от 2 (лучшее качество, но больший размер файла)
до 31 (худшее качество,но размер файла меньше). Я устанавливаю
min=2 и
max=2 (лучшее качество)
"
Rate Control" - или сокращённо "
RC"
"
RC averaging period" - измеряется в кадрах.- Большее значение обычно приводит к более точной передачи данных. Но это значение также не должно превышать общее количество кадров вашего видеофайла.
Короче, если в вашем видеофайле 10 000 кадров, то ставьте это значение в этих пределах, но не более, чем ваши 10 000 кадров
"
Rate Control reaction period" - восприятие RC свежих сцен. Большее значение обычно приводит к улучшению качества в быстрых сценах движения и к ухудшению качества в медленных сценах движения. Измеряется в кадрах . Я оставляю = 20 кадрам
"
Rate Control down/up reaction" - коэффициент управления реакцией на быстрые и медленные сцены движения. Большее значение обычно приводит к улучшению качества в быстрых сценах движения, но, вместе с этим, увеличивается и видео поток...
Все эти параметры взаимосвязаны, результат их настроек приблизителен и зачастую зависит от настройки других параметров. Я оставляю=10
Quality-based encoding parameters
Этот параметр настраивается только если вы не используете двухпроходный метод компрессии, а используете однопроходный режим "
1-pass quality-based mode" - измеряется в % . Мы его не будем рассматривать, но от себя добавлю, что качество с этим режимом кодировки при 100% получается отменное, только размер файла выходит огромный...
2-pass encoding parameters
Эта функция для "
2-pass variable bitrate mode"
"
Frame dropping" - Этот параметр работает только в "2 - pass variable bitrate mode".
Он разрешает кодеру, пропустить кадры, когда они не содержат достаточно существенной информации. Полезно, когда хочется уменьшить битрейт, но сохранить визуальное качество.
В этом случае, кодер пропустит большее количество кадров в сценах с низким движением или никаким движением вообще, и сохранит их в сценах с быстрым движением.
Настройка по умолчанию = 0 и я работаю только с ней.
Когда вы всё настроили остаётся указать "
log file" для сбора информации о движении в фильме - нажмите "
select":
Обзовём наш файл "
status" и сохраним
После этого в окне настроек изменится "
log file" и будет:
Отметим "
Full processing mode"-"
полный режим обработки", потому что только с этим параметром видео начинает перекодироваться, а если вдруг вы хотите не изменять видеоформат, то в этом случае надо отметить"
Direct stream copy" - "
прямая копия потока"
Следующий шаг - начало кодирования:
ВАЖНО! Нужные вам видео фильтры должны быть загружены и настроены уже в первом проходе, во втором проходе мы их не изменяем.
Сохраним в первом проходе, что уже настроили выше, в файле "
1-pass" - это ещё не готовый видео файл, а только его информация, которую мы потом выбросим в корзину.
Начался сбор информации:
Видно, что проектируемый размер файла всего 2,7Мб, а datarate =1Кб/с - понятно, что нормального видео файла с таким потоком видео быть не может
Время на сбор информации уйдёт ровно столько же, сколько потом уйдёт на второй проход.
Вывод: готовый файл я получу примерно только через 1 час и 10 минут, если только успею вовремя перевести на второй проход ;))
По окончании первого прохода почти ничего в конфигурации кодека не меняем, кроме как изменим в настройках кодека "
2-pass, first pass" на "
2-pass, second pass" > и "
output video bistream" установим на нужный битрейт, я лично получаю хорошее качество при битрейте = 1000 КБит/сек (то есть я не изменяю его после первого кодирования).
Хорошее качество варьируется начиная от 1000 до 2000 КБит/сек, хотя вы можете ставить значение какое захотите (чем меньшее значение вы установите, тем меньше будет выходной файл, но и качество картинки пострадает)
Не трогайте "
log file" - даже не думайте его поменять!!!
Теперь осталось сохранить готовый файл
Это можно сделать двумя способами:
способ -1 (так же как сохранялся и первый проход)
способ - 2 (нарезать будущий файл, например, по 650 Мб)
Нарезка делается так: отмечается определённое кол-во Мб (я отметил пространство CD-диска = 650 Мб) и VirtualDub автоматически сохранит и пронумерует файлы по 650 Мб
Итак, я назвал свой будущий файл "
2 pass", можете назвать как захотите - это уже будет готовый видео файл ... и клик "
сохранить"
Начался процесс обработки (приоритет я выставляю NORMAL)
А здесь изображён кодирующийся видео поток - красные вертикальные линии - это ваши ключевые кадры (
KF), а синие вертикальные линии - это дельта-кадры (
DF)
А это то, что получилось в итоге
Если есть у вас какие-то замечания, поправки или совет - с удовольствием дополню или исправлю, заранее благодарю за проявленное внимание.
Я прошу прощения за допущенные, может быть где-то, ошибки, как орфографические, так и технические...
Этим материалом я не собираюсь никого учить, поучать или наставлять (я просто делюсь опытом) - вы используете этот материал на своё усмотрение.
Автор:
Дмитрий, перепечатка с сайта
Glanz.Ru