Почему плохо импортируется через avisynth.

)


Начало работы

Итак, приступим к реальной работе. Для начала обсудим общий подход.

Основа работы с Avisynth - составление скриптов. Писать скрипты с нуля - занятие не для начинающих, да и необходимость в этом возникает не часто. Мы для этого воспользуемся редактором скриптов. Вначале уясним себе общую структуру скрипта. Ее легко понять из примера:

#Открываем источник с помощью функции AviSource AviSource("E:\File.avi") #Загружаем фильтр обработки видео: loadplugin("C:\Program Files\AviSynth 2.5\plugins\degrainmedian.dll") #задаем параметры обработки для фильтра DeGrainMedian(limitY= 2,limitUV=3,mode=1) #вызываем встроенную в Avisynth функцию изменения размера кадра: BilinearResize(512,384)

При помощи этого простенького скрипта мы обработали свое видео (File.avi) фильтром DeGrainMedian с целью подавления шумов и уменьшения размера кадра до 512x384 с помощью встроенного фильтра BilinearResize. Сохранив этот скрипт как текстовый файл с расширением *.AVS и открыв его в любой программе для работы с видео, мы получим несжатый поток видео, пропущенный через фильтр шумоподавления с разрешением 512х384.

Если пересказать любой скрипт "своими словами", то он независимо от сложности будет содержать несколько основных этапов обработки:

  1. Открытие источников (это может быть видео или аудио в различных форматах, но в данном случае контейнер AVI).
  2. Загрузка необходимых фильтров (это могут быть фильтры, написанные специально для "Ависинт" или VirtualDUB).
  3. Указание желаемых параметров для загруженных фильтров.

Как видите, все достаточно просто! Сложность обычно представляет синтаксис, т.к. у каждого фильтра есть свои команды и параметры, и ошибки недопустимы. Но для большинства фильтров есть подробное описание в справке Avisynth (главное, не забудьте выбрать ее русскоязычный вариант при установке). Если же там его не окажется - как правило, описание идет вместе с самим фильтром. Более того, почти всегда, помимо параметров, есть примеры использования, и вам не придется настраивать все с нуля - для начала вполне достаточно изменить приведенные примеры "под себя" и посмотреть, что получится. Что же касается основных команд и встроенных фильтров самого Avisynth, вы можете воспользоваться одним из редакторов AVS скриптов. Я предпочитаю AVSEdit, так как он имеет понятный интерфейс и довольно удобен для быстрого создания шаблона скрипта. Недостаток его (как и многих других подобных редакторов) в том, что он довольно "тормозной" из-за использования платформы NET. Но некоторая задумчивость раздражает только при запуске программы, а в остальном от этих программ и не требуется фантастическое быстродействие.

Как было сказано в предыдущей статье (№ , 2006 год), при всем богатстве возможностей Avisynth лишен какого бы то ни было графического интерфейса. К счастью, этот недостаток нельзя назвать непреодолимым. Мы помним, что у редактора VirtualDUB очень удобный интерфейс. Вот и воспользуемся им в наших целях. Скажу сразу, что лучше всего использовать VirtualDubMod, нежели просто VirtualDUB. Причина проста - в VirtualDubMod есть встроенный редактор скриптов, который позволит значительно упростить некоторые рутинные операции. Вызывается редактор скриптов (Script Editor) Tools-Script Editor. При первом запуске редактора скриптов нажмите сочетание клавиш "Ctrl+1". Таким образом, вы переключите редактор в режим работы со скриптами Avisynth и разблокируете необходимые нам пункты в меню Edit.

Очень распространенной задачей монтажа является выбирание нужных частей видеоклипа и вырезание ненужных. В AviSynth вырезание производится командой TRIM (начало, конец). Понятное дело, что для выбора нужных фрагментов не обойтись без визуального контроля. Удобна следующая методика: щелчком на маркировочные стрелки выделяем нужную часть клипа в окне просмотра VirtualDubMod (как описано в многочисленных руководствах по VitrualDub), а затем в окне редактора скриптов используем команду меню Edit->Import Trim With Range для вставки выделенного интервала в виде команд TRIM в то место строки, где стоит курсор (это удобно, если нужно отрезать края). Либо наоборот, в окне просмотра VirtualDubMod выделяем и удаляем все ненужные отрезки (клавишей DEL) и затем в окне редактора скриптов используем команду меню Import Frameset as Trims для вставки набора нужных кадров без удаленных отрезков (это удобно, если их много). Далее вы можете продолжить написание скрипта в редакторе VirtualDubMod, благо, в нем предусмотрена подсветка синтаксиса.

Крайне полезной возможностью встроенного редактора DubMod"а является автоматическое формирование обрезки кадра Crop, значения формируются в зависимости от примененной вами обрезки (Cropping) выходного видео в окне VirtualDubMod. Для визуального определения обрезки кадра можно воспользоваться встроенным фильтром VirtualDub null transform. После указания границ обрезки в редакторе скриптов достаточно нажать "Ctrl+Shift-C" либо через меню - Edit- Insert Crop. Из своего опыта могу сказать, что операции TRIM и Crop приходится делать почти всегда при простом (и не очень) монтаже, и их автоматизация здорово облегчает работу. Для начала штатный редактор DubMod"а можно использовать только для облегчения этих двух операций, все остальное (добавление источников, плагинов, настройка параметров и пр.) можно делать в другом редакторе, например, в AVSEdit - это позволит затрачивать на написание большинства скриптов 5-10 минут! Ведь через некоторое время вам уже не придется писать их с нуля, достаточно будет подправить уже имеющийся скрипт.

AviSynth - это мощное средство для пост-обработки видео. Он предоставляет методы для редактирования и обработки видео файлов. AviSynth работает как фрэймсервер, обеспечивая мгновенное редактирование без необходимости временных файлов.

AviSynth сам по себе не имеет графического интерфейса пользователя (GUI), но вместо этого зависит от системы скриптов (сценариев, команд), которые позволяют продвинутое нелинейное редактирование. В то время как на первый взгляд это может показаться утомительным и не-интуитивным, это является достаточно мощным и очень хорошим способом управлять проектами точным, согласованным и воспроизводимым образом. Поскольку текстовые скрипты являются вполне читаемыми (по-английски), проекты естественным образом само-документируются. Язык скриптов прост, но мощен, и из базовых операций могут быть построены весьма сложные фильтры, для разработки богатой палитры полезных и уникальных эффектов.

Более подробно ознакомиться с AviSynth вы можете на сайте avisynth.org.ru

Изменить скрипт фильтрации - Открывает всплывающее окно в котором можно редактировать скрипт AviSynth. Также вы можете использовать специальный редактор скриптов с подсветкой синтаксиса AvsP. (Вызывается кнопкой AvsP-Editor внизу окна Фильтрация )

Создать авто скрипт - Сбрасывает все введенные вами значения в скрипте на дефолтные (но не сбрасываются введенные значения между строками ###### )

###### - Между этими строками пишется код скрипта фильтрации видео и он не сбрасывается после нажатия Создать авто скрипт .

Тест-скрипт - Если отметить этот пункт то в конец скрипта допишется код:

SelectRangeEvery(FrameCount()/50,50) #2500 frames test-script

Который сделает распределенную выборку из открытого видеофайла и на выходе вы получите видеоряд продолжительностью 2500 - 2550 кадров, составленный из равномерно выдернутых из видеоряда кусков по 50 кадров. Обычно этого достаточно, чтобы оценить сжимаемость более-менее равномерного видео длительностью до 1.5-2 часов.

Предназначается для оценки сжимаемости видеоряда и определения нужного битрейта для качественного видеорипа (сжимаем с -crf (18-20) и читаем лог кодека).

Внимание : Не забудьте снять галку с Тест-скрипт перед окончательным кодированием!

Сохранить скрипт - Дает возможность сохранить avs скрипт. Вы можете открыть скрипт позже и продолжить работу или открыть для кодирования в другой программе (MeGUI, Rhozet Carbon Coder, ССE SP2 или другие).

В контекстном меню списка заданий есть пункт « Сохранить все скрипты» , при его выборе сохраняются скрипты для всех заданий, которые есть в очереди, при этом каждый скрипт сохраняется туда, куда сохранено задание. Для того что бы все скрипты после сохранения остались рабочими нужно отметить в глобальных настройках пункт: Не удалять временные и кэш файлы.

Воспроизвести в (Windows Media Player, Media Player Classic, WPF Video Player) - Вы можете воспроизвести скрипт в одном из представленных видео плееров и оценить качество.
Внимание : Если вы применили Достаточно мощный фильтр то ресурсов центрального процессора может не хватить для корректного воспроизведения видеофайла (просмотр будет отображаться как слайд шоу).

Интерфейс программы: английский

Платформа:XP / 7 / Vista

Производитель: Ben Rudiak-Gold

Сайт: avisynth.org

AviSynth представляет собой программную утилиту на основе языка скриптов, которая разработана и предназначена для использования в нелинейном монтаже видео. Она позволяет производить множество операций, начиная с самых простых и заканчивая весьма сложными, которые недосуипны многим программам в этой области.

Основные возможности программы AviSynth

Прежде всего стоит отметить, что AviSynth программой, как таковой, является в довольно относительном понятии. Утилита не имеет собственного интерфейса, а, скорее, работает, как набор из множества фильтров, каждый из которых отвечает за то или иное действие. Причем этот программный продукт можно использовать в качестве дополнительного модуля (плагина) при подключении его к интерфейсу программ, которые могут и не распознавать тот или иной формат видео файла.

По принципу работы AviSynth является неким посредником между начальным форматом файла и программой, с помощью которой будет производиться его редактирование. То есть, исполняет роль фрейм-сервера, а другими словами, передатчика кадров. Кадры передаются порционно и обрабатываются встроенными фильтрами, что называется, на лету, что позволяет избежать ненужного сохранения промежуточных видео данных на жестком диске. Ведь, при работе с видео именно загрузка или нехватка дискового пространства и является первоочередной проблемой.

Начиная работать с программой, вы создаете скрипт с расширением.AVS, а затем открываете сохраненный документ, к примеру, в программе VirtualDub, которая прекрасно справляется с редактированием видео. Иеперь в работу в фоновом режиме включается именно AviSynth. Причем, фильтры данной утилиты работают таким образом, что программа, во-первых, не знает, что передача видео осуществляется через AviSynth, а, во-вторых, предполагает, что открываемый видео файл имеет стандартный формат.AVI. В этом и состоит вся прелесть этой утилиты. Ведь с ее помощью можно открывать совершенно различные файлы, которые будут восприниматься программами, как стандартное видео.

При использовании этой утилиты совершенно спокойно можно объединять несколько видео файлов в один, менять или обрабатывать звуковые дорожки. Весьма важной особенностью является возможность редактирования файлов видео с размером, больше 2 ГБ. Тем более, программа позволяет работать с любым типом видео, включая.MPEG или.MOV (QuickTime), в том цветовом формате, который наиболее подходит для входного или выходного видео, без лишних преобразований. Да и скорость преобразования видео довольно высока. При этом вы получаете полный доступ к любому кадру и полю (половине кадра в чересстрочном видео), с возможностью их разделения, прореживания, комбинирования, фильтрации, объединения, изменения частоты и т. д.

Вообще, надо сказать, что утилита имеет довольно богатый набор инструментов, который не ограничивается только базовыми функциями. Сюда входит множество инструментов для создания клипов, редактирования изображений, изменения звука, различные отладочные и постпроцессинговые фильтры. В общем, набор впечатляющий. И именно для тех, кто занимается нелинейным монтажом видео, программа является просто незаменимой в работе.