|
Введение. |
|
Что такое AVISynth?
AVISynth это скриптовый язык и набор фильтров для решения
простых задач нелинейного редактирования. AVISynth необычен
тем, что он не создаёт выходных файлов. Вместо этого, скрипты
AVISynth, имеющие расширение AVS, могут быть
напрямую открыты в приложениях читающих AVI файлы. Когда открывается
скрипт AVS, AVISynth запускается в фоновом режиме,
формирует видео и аудио данные согласно скрипту и "скармливает" их приложению
по мере надобности.
|
|
Вместе с плагином видео-сервера, AVISynth позволяет
использовать Premiere или FlasK в качестве
фрейм-сервера. Это очень полезно, если вы желаете закодировать ваше
отредактированное в Premiere или FlasK видео
во внешнем кодировщике (например TMPGEnc,
Cinemacraft или VirtualDub). Это достигается
путём создания " ложного" AVI файла. Этот созданный "ложный" AVI
файл загружается в кодировщик и кодируется как нормальный AVI. Это
решает проблему создания требующего много времени промежуточных AVI
требующих много места. При запуске плагин видео-сервер для
Premiere и FlasK создаёт "ложный" AVI
файл c:\part0.avs (с использованием разделения ещё и part1.avs). Если вы
загрузите AVS в кодировщик AVISynth выполняет
соединение с видео- сервером, затем запросы кодировщика на чтение передаются в
плагин Premiere/FlasK. Далее плагин
обрабатывает запрос и пересылает аудио/видео в кодировщик. Такая структура
называется меж-процессной связью и реализуется через команду
AVISynth IPCSource .
|
|
Скриптом в одну строчку вы можете добавить поддержку сегментированных
файлов захвата, AVI файлов размера >2GB, QuickTime
файлов MOV, MPEG файлов в приложения которые сами по себе такой
поддержки не имеют. Используя Trim , Splice и
Dissolve вы можете выбрать и перераспределить сцены
необработанного отснятого видео. Применяя ReduceBy2 , BilinearResize и
BicubicResize вы можете отмасштабировать кадры видео(с качеством
сравнимым с Photoshop и лучшим чем в Premiere).
Благодаря командам SeparateFields и Weave вы можете
редактировать чересстрочное видео с точностью до кадра.
Пользуясь Pulldown
вы можете избавиться от "3:2 pulldown". Накладывая фильтры
SpatialSoften и TemporalSoften вы можете подавить шум в
вашем видео добиваясь значительно лучшего качества в выходных форматах типа
MPEG.
|
|
|
AVISynth и VirtualDub?
Способность VirtualDub выступать в роли "фрейм-сервера"
имеет такую же функциональность, как и AVISynth. Рассмотрим преимущества
и недостатки обоих этих программ.
|
|
Преимущества AVISynth над VirtualDub:
|
|
-
Архитектура фильтрации в VirtualDub ограничена линейным
редактированием. В AVISynth архитектура фильтрации и
скриптовый язык могут выполнять произвольные операции нелинейного
редактирования. Задачи, требующие специального кода в VirtualDub,
такие как "вырезка", восстановление оригинальных кадров фильма из
полей (inverse telecine) и объединение множества входных файлов поддерживаются
естественным образом стандартными фильтрами AVISynth, и
многие задачи которые невозможно решить в VirtualDub легко
решаются AVISynth.
-
AVISynth может читать большинство файлов,
которые Windows Media Player может воспроизводить, включая
MOV/QT, MPEG, MP3, DV type 1 и т.д..
-
Так как AVISynth выполняется внутри адресного пространства
вызывающей программы, требуются меньшие накладные расходы по сравнению с
VirtualDub в режиме фрейм-сервера. Это значит, что при прочих
равных условиях AVISynth лидирует в общем времени выполнения.
-
Фильтры AVISynth обрабатывают изображение в цветовом пространстве
YUY2 также хорошо, как и в RGB.
-
Скрипты AVISynth - вещь в себе и всегда доступны для открытия; вам
нет нужды запускать фрейм-сервер. Старые скрипты можно использовать снова.
|
|
Преимущества VirtualDub над AVISynth:
|
|
-
VirtualDub имеет приятный графический интерфейс.
AVISynth не имеет графического интерфейса вообще - вы должны
писать файлы скриптов.
-
VirtualDub имеет больший выбор фильтров.
-
VirtualDub лучше оптимизирован, чем AVISynth.
Некоторые фильтры VirtualDub (например Resize)
выполняются заметно быстрее своих AVISynth эквивалентов.
-
VirtualDub способен выполнять прямое копирование источника
(direct stream copy), в котором AVI файлы могут объединяться
и усекаться без цикла разжатия/сжатия. AVISynth всегда
разжимает видео (впрочем, как и фрейм-сервер VirtualDub).
-
У VirtualDub есть много других полезных возможностей,
не относящихся к фрейм-серверу, таких как встроенный
захват видео.
|
|
На самом деле между VirtualDub и AVISynth
нет противоборства. AVISynth фактически содержит порядочный
объём кода VirtualDub. Благодаря публикации исходного кода
VirtualDub его автором, Авери Ли (Avery Lee) Многие программисты
использовали их. Обе программы VirtualDub и AVISynth
бесплатны, и их можно использовать вместе.
|
|
|
Установка AVISynth
Установка AVISynth проста. Во-первых удостоверьтесь, что в
системе не присутствует старая версия AVISynth. (проверить
можно поискав avisynth.dll на жёстком диске). Во-вторых,
необходимо скачать AVISynth из всемирной сети
(если вы уже не
скачали). Внутри архива найдите avisynth.dll. Скопируйте этот
файл в директорию Windows 9x \System (или \System32
для WinNT/W2k). После этого запускайте
файл install.reg также находящийся в архиве. Всплывшее окошко
должно сообщить об успешном импорте в реестр. Теперь AVISynth
зарегистрирован и в рабочем состоянии. После установки, кодировщики должны быть
способны читать AVS файлы.
|
|
AVISynth протестирован в системах Windows 98,
Windows NT и Windows 200. Так что проблем
быть не должно.
|
|
|
|
|
Информация об авторах AVISynth
Разработку AVISynth начал Бэн Рудиак-Гоулд (Ben
Rudiak-Gould) Это была весьма приятная утилита, но она содержала несколько
ошибок. В связи с этим Эдвин ван Эгглен (Edwin van Eggelen) внёс изменения,
разрешающие некоторые из них. Далее была выпущена новая версия программы, но
без модуля IPCSource . Этот модуль также внёс Эдвин ван Эгглин.
К сожалению затем Бен Рудиак-Гоулд пропал (Октябрь 2000). Так что в настоящее
время основную работу по поддержке текущей версии AVISynth
и её развитию выполняет Эдвин ван Эгглен.
|
|
|
|