Adobe after effects render engine что это

Обновлено: 07.07.2024

Расскажу самые базовые вещи о рендере в Adobe After Effects. Будет как небольшая подсказка для новичков.

Рендерить можно двумя способами. Через Render Queue внутри After Effects и через стороннюю программу Adobe Media Encoder.

Для слабых компьютеров или тяжёлых проектов советую Render Queue. А для всего остального — Media Encoder.

Две заметки перед началом
1) Если АЕ 2017 года или ниже — скачайте кодеки Quicktime. На macOS не нужно.
2) Если рендерите через Media Encoder проверьте, чтобы он был того же года, что и After Effects.

К настройкам рендера

Рендерим видео с оптимальным соотношением веса и качества через Media Encoder

Сейчас самый распространённый стандарт сжатия видео — H.264. Мало весит, не убивает качество и везде поддерживается.

— Открываем композицию, которую хотим отрендерить.
— Заходим в Composition → Add to Adobe Media Encoder Queue. Немного ждём, открывается Media Encoder.
— Нажимаем на стрелочку в Format и выбираем H.264.

Media Encoder Format H.264

— В Preset выбираем Match Source High Bitrate.

Preset Match Source High Bitrate

— Output File выбираем куда сохранить. Нажимаем Enter или на зелёный треугольничек справа. Рендер пошёл.

В итоге, минутное видео больше не будет весит несколько гигабайт, а останется где-то в пределах сотни мегабайт.

Рендерим видео с оптимальным соотношением веса и качества через Render Queue

— Открываем композицию, которую хотим отрендерить.
— Заходим в Composition → Add to Render Queue.
— Нажимаем на синий текст рядом с Output Module.

After Effects Render Queue Output Module

— В Format выбираем Quicktime.

After Effects Render Queue Format

— Нажимаем Format Options.
— В Video Codec выбираем H.264.

After Effects Render Queue H.264

Если АЕ 2018 или старше, то H.264 в списке не будет. Выбирайте Animation.
Файл получится тяжеловатый, но легче, чем совсем без сжатия. Поэтому для последних версий АЕ лучше использовать Media Encoder, где есть H.264.

— Кликаем ОК в двух окошках.
— Справа от Output To нажимаем на синий текст и выбираем куда сохранить.

After Effects Render Queue Output

— Нажимаем Enter или кнопку «Render» справа.
Готово! Рендер начался.

Рендерим видео на альфа-канале через Media Encoder

А сейчас рассмотрим как отрендерить анимацию с прозрачным фоном. Это уже чуть-чуть посложнее.

— Открываем нужную композицию.
— Composition → Add To Adobe Media Encoder Queue
— В Format выбираем Quicktime

Media Encoder Format Quicktime

— В Preset ничего не выбираем, просто нажимаем на синий текст

Media Encoder Preset

— Теперь выбираем Video Codec в зависимости от версии AE:
AE 2017 и ниже — PNG.

Media Encoder QuickTime PNG

АЕ 2018 — Animation.

Media Encoder QuickTime Animation

AE 2019 или любая версия на macOS — ProRes 4444.

ProRes 4444 Media Encoder

— Нажимаем кнопку Match Source.
— Проматываем чуть-чуть вниз, в Depth выбираем параметр у которого написано +alpha или 32 bit.

Media Encoder Alpha Depth

— Нажимаем ОК, в Output выбираем место куда сохранится файл и запускаем рендер.

Всё, теперь ролик отрендерится с прозрачностью, будет потяжелее. Зато на фон можно подставить всё, что угодно.

Рендерим видео на альфа-канале через Render Queue

— Открываем нужную композицию.
— Composition → Add To Adobe Media Encoder Queue
— Кликаем на синий текст рядом с Output Module.


— В Format выбираем Quicktime.

After Effects Render Queue Format Quicktime

— Нажимаем «Format Options».

— Теперь выбираем Video Codec в зависимости от версии AE:
AE 2017 и ниже — PNG.

After Effects Render Queue Alpha PNG

АЕ 2018 — Animation.

After Effects Render Queue Alpha Animation

AE 2019 или любая версия на macOS — ProRes 4444.

After Effects Render Queue Alpha ProRes

— Нажимаем ОК.
— В Channels выбираем RGB+Alpha.

After Effects Render Queue RGB Alpha

— Нажимаем ОК.
— В Output To выбираем куда сохранить файл.

After Effects Render Queue Output

— Нажимаем Enter или кнопку «Render».
Есть!

Создаём шаблоны для рендера в Media Encoder

Как в Media Encoder, так и в Render Queue можно создавать шаблоны на все случаи жизни: для H.264, альфа-канала, MP3, PNG-секвенций. Один раз настраиваете рендер, сохраняете в темплейт и в нужный момент переключаетесь между ними.

— Чтобы сохранить шаблон достаточно настроить рендер под себя и нажать на эту кнопку

Save Preset Adobe Media Encoder

— После этого, созданный темплейт будет доступен в выборе пресетов

Custom Template Adobe Media Encoder

Создаём шаблоны для рендера в Render Queue

— Настраиваем рендер, нажимаем справа от Output Module на стрелочку и выбираем Make Template

Make template After Effects Render Queue

— Задаём имя шаблону — готово, можно рендерить

Custom Template Render Queue

— Чтобы сделать шаблон рендером по умолчанию просто выбираем его в Movie Default

Movie Default After Effects Template

Рендерим один кадр из видео

Сохранить текущий кадр можно двумя способами. Одной кнопкой в плагине FX Console.

FX Console Interface

— Создаём любую композицию
— Нажимаем Composition → Add To Render Queue
— Справа от Output Module нажимаем на маленькую стрелочку и выбираем Make Template

Make template After Effects Render Queue

— В появившемся меню нажимаем Edit

Edit Template Render Queue

— Format ставим PNG Sequence
— Channels — RGB + Alpha
— Нажимаем ОК

Format PNG Sequence Render Queue

Settings Name Render Template

— Ставим его во Frame Default. Нажимаем ОК

Frame Default Render Queue

— Возвращаемся обратно в нашу композицию
— Выбираем Composition → Save Frame As → File и сохраняем кадр куда нужно. Если будет прозрачность, сохранит с прозрачностью.

Same Frame As After Effects

Теперь в любом проекте можно нажать Save Frame As или Ctrl+Alt+S и кадр сохранится. Настраивать темплейт снова больше не нужно.

Думаю на этом всё.
Надеюсь, что эта заметка поможет кому-нибудь с рендером. Если что-то непонятно — пишите в комментарии, разберёмся.

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

К счастью, After Effects, как и многие другие пакеты, поддерживает сетевую визуализацию.

Сетевой рендеринг в АЕ (network rendering) представляет собой заманчивую возможность значительно сократить время самого нетворческого этапа Вашей работы, - просчет проекта. А значит, и сократить общее время всего производственного цикла.

Личное мнение: вынужден заметить (несмотря на то, что отношусь к числу фанатичных поклонников After Effects) - сетевой рендеринг в АЕ не слишком удобен и требует довольно длительной предварительной настройки. Но как способ сэкономить время просчета - он очень полезен, даже в своем нынешнем виде.

Немного теории

Сетевой рендеринг в АЕ - это частный случай распределенных вычислений (distributed computings), так модных ныне в компьютерной индустрии.

Методика распределенных вычислений предполагает создание сетевой вычислительной системы. В мире компьютерной графики такая система получила название визуализирующей фермы (render farm).

Требования к оборудованию

Компьютеры. Естественно, это первое и основное требование. Чем больше компьютеров, тем быстрее происходит просчет, но не следует забывать о пропускной способности Вашей локальной вычислительной сети. Слишком интенсивный обмен данными может перегрузить Вашу сеть.

Все системы должны, как минимум удовлетворять базовым требованиям к оборудованию, предъявляемым АЕ. Более производительные системы всячески приветствуются.

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

Операционная система. Adobe настоятельно рекомендует использовать операционную систему Windows 2000 или Windows XP Professional.

Программное обеспечение. Собственно, сам Adobe After Effects, установленный на всех машинах-участницах просчета.

Плагины, шрифты и кодеки, используемые в проекте, должны быть установлены на всех машинах.

After Effects Standard и Production Bundle

АЕ предоставляет пользователям две модификации сетевого рендеринга:

1. Сетевой рендеринг с использованием Watch folder (network rendering using a watch folder). Доступен лишь пользователям After Effects Production Bundle.

2. Стандартный рендеринг секвенции на нескольких машинах (standard network rendering). Предоставляет возможность пользователям After Effects Standard осуществить рендеринг проекта на нескольких машинах. Естественно, может использоваться и в After Effects Production Bundle.

Сетевой рендеринг с использованием Watch folder

(network rendering with using a watch folder)

Сетевой рендеринг с использованием Watch folder позиционируется Adobe, как более предпочтительный метод.

Весь процесс сетевого рендеринга с использование Watch folder отображен на следующей схеме.

Компьютер с установленной полной версией After Effects PB (A) сохраняет проект и его исходные файлы в Watch folder (B).

Компьютеры, на которые установлен АЕ (C) сканируют Watch folder.

При наличии проекта, удовлетворяющего требованиям (см. далее), открывают этот проект и осуществляют просчет в определенную папку вывода (D).

Подготовительный этап сетевого рендеринга с использованием watch folder включает в себя 3 основных момента:

I. Определение папок и организация совместного доступа к ним

II. Настройка компьютеров-участников рендеринга

III. Подготовка проекта для сетевого рендеринга

I. Определение папок и организация совместного доступа к ним

Во-первых, необходимо определить папку Watch folder и папку для вывода просчитанных файлов. А затем и организовать совместный доступ всех машин к ним.

1. Создаем каталог, который будет играть роль Watch folder в дальнейшем. Название у него может быть любое, но во избежание путаницы я обычно его так и называю - "Watch folder".

2. Нажимаем на этом каталоге правой кнопкой мыши и выбираем в контекстном меню команду свойства (properties).

3. Переходим во вкладку доступ (sharing). Активизируем переключатель открыть общий доступ к этой папке (share this folder).

4. Щелкаем на кнопке разрешения(Permissions). По умолчанию установлен полный доступ для всех пользователей. Определяйте уровень безопасности сообразно Вашим потребностям.

Локальная сеть, в которой я осуществляю сетевой рендеринг, не имеет выхода в Интернет и не связана с другими сетями. Поэтому я устанавливаю доступ для всех пользователей (everyone).

Если Вы беспокоитесь о сетевой безопасности, то Вы можете установить собственные параметры безопасности.

В нижеприведенной таблице описаны действия, возможные при каждом из типов разрешений.

Настройка совместного доступа к папке вывода осуществляется идентично.

II. Настройка компьютеров-участников рендеринга

Прежде всего - устанавливаем АЕ, а так же используемые в проекте шрифты и плагины на всех машинах. Версия АЕ обязательно должна совпадать на всех компьютерах-участниках просчета.

Если проект был подготовлен для сетевого рендеринга в иной версии АЕ, чем установлена на сетевых машинах, то они попросту не определят этот проект в Вашей Watch folder. Это одно из неудобств рендеринга с использованием Watch folder.

После установки всего вышеперечисленного запускаем АЕ. В меню file выберите пункт watch folder и в появившемся диалоговом окне задайте папку, которая и будет играть роль watch folder.

После этого появиться окно watch folder. Пока оно активно - компьютер каждые 10 секунд будет сканировать watch folder на наличие проектов, пригодных для сетевого рендеринга. При активации "Pause Search on All Mashines" поиск проектов будет прекращен на всех компьютерах в режиме watch folder.

Повторите эти действия на остальных машинах.

III. Подготовка проекта для сетевого рендеринга

Для того, что бы Ваш проект был пригоден для сетевого рендеринга с использованием watch folder, Вы должны соблюсти некоторые условия.

1. Добавление композиций в render queue.

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

В output module в качестве формата вывода нужно обязательно задать секвенцию. Тип секвенции не важен, так что выбирайте любой удобный для вас формат.

В render settings теперь стала доступна опция skip existing files (пропускать уже существующие файлы). Это значит, что при рендеринге уже имеющиеся файлы секвенции не будут перезаписываться, и будет начинаться рендеринг следующего по счету кадра.

При определении папки вывода файла (output to) очень важно указать ее как сетевую, даже если она находится на этом компьютере. А иначе все компьютеры, кроме данного, не определят правильный каталог вывода. Например, Ваша папка имеет путь E:'Output. Для корректной работы должен быть прописан полный URI (Uniform Resource Identifier - унифицированный идентификатор ресурса) - ''MainComp'E'Output, где "MainComp" имя сетевой машины, на которой находится диск Е с папкой Output.

2. Следующий этап - file -->collect files. Если Вы все сделали правильно в предыдущем пункте, то в появившемся диалоге активизируйте "Enable watch folder render" и укажите максимальное число машин, осуществляющих рендеринг. Если в очереди рендеринга нет ни одного пункта, удовлетворяющего условиям сетевого рендеринга, то активизировать "Enable watch folder render" не удастся.

В качестве папки для сбора файлов указываете watch folder или находящийся внутри нее каталог.

Теперь проект определиться компьютерами, находящимися в режиме watch folder, будет открыт на каждом из них и начнется сетевой рендеринг.

Запуск After Effects в watch folder mode

Вы можете запускать АЕ в режиме watch folder автоматически.

Для этого из командной строки запустите AfterFX.exe c параметром -wf и укажите полный путь к watch folder.

AfterFX.exe -wf ''MainComp'F'watchFolder

Открытие проекта с названием Watch this folder.aep приведет к тому же результату. Причем в качестве watchFolder будет являться директория, в которой этот проект находиться.

Можно достичь еще большей автоматизации, если проделать следующие манипуляции:

1. Создайте ярлык для AfterFX.exe

2. В свойствах ярлыка пропишите параметр -wf и путь к watch folder

Выглядеть это будет примерно так:

"D:'Program Files'Adobe'After Effects 6.0'Support Files'AfterFX.exe" -wf ''MainComp'F'watchFolder

3. Перенесите созданный Вами ярлык в папку автозагрузки (Startup folder).

Как Вы понимаете в Startup folder можно перенести и ярлык для Watch this folder.aep.

Теперь для запуска АЕ в режиме watch folder Вам будет достаточно запускать этот компьютер. Остальные действия произойдут автоматически.

Мониторинг прогресса и ошибок рендеринга,

состояния проектов и визуализирующих машин

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

Менеджера сетевой визуализации в АЕ не имеется. Есть лишь возможность отслеживания происходящих процессов. Впрочем это средство очень далеко от совершеества.

В корне Вашей watch folder в процессе сетевого рендеринга появляется файл watch_folder.htm. Это самый обычный htm-документ, содержащий в себе информацию о последних ста проектах, ставившихся на сетевой рендеринг.

Если Вы нажмете на ссылку проекта, то появится отчет по рендерингу.

Этот htm-документ содержит четыре фрейма:

А - название проекта.

В - отображает очередь рендеринга. Нажмите на любом пункте из очереди рендеринга и во фрейме D появиться информация о текущем состоянии этого render item.

С - отображает машины, участвующие в сетевом рендеринге. Кликните на названии одной из машин и во фрейме D отобразятся render items, которые просчитывает данный компьютер.

D - это основной информационный фрейм. В нем выводится информация о render items и render mashines (см. В и С). Тут же есть возможность просмотреть отчет по рендерингу.

Стандартный сетевой рендеринг секвенции на нескольких машинах

(standard network rendering)

Этот способ гораздо проще, чем использование WatchFolder, но он не имеет возможности автоматизировать процесс и осуществлять его мониторинг.

Однако он хорош тем, что Вы можете использовать разные версии АЕ на машинах. Но, естественно, плагины, шрифты и кодеки, используемые в проекте должны присутствовать на всех компьютерах.

Весь процесс можно изобразить так.

Вы открываете проект (А) на всех машинах (В).

Далее осуществляете обычный рендеринг секвенции (но с пропуском уже просчитанных кадров кадров) в папку вывода (С).

Так же как и при использовании watchFolder вы должны:

1. Определить папки и организовать доступ к ним.

2. Выбрать в качестве формата вывода секвенцию и активировать Skip Existing Files

3. Сохранить Ваш проект в доступной сетевой папке.

4. Далее Вы открываете этот проект на всех машинах и начинаете рендеринг.

На каждой из машин будет происходить обыкновенный просчет секвенции.

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

Вот собственно и все о сетевом рендеринге в Adobe After Effects.

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

К счастью, After Effects, как и многие другие пакеты, поддерживает сетевую визуализацию.

Сетевой рендеринг в АЕ (network rendering) представляет собой заманчивую возможность значительно сократить время самого нетворческого этапа Вашей работы, - просчет проекта. А значит, и сократить общее время всего производственного цикла.

Личное мнение: вынужден заметить (несмотря на то, что отношусь к числу фанатичных поклонников After Effects) - сетевой рендеринг в АЕ не слишком удобен и требует довольно длительной предварительной настройки. Но как способ сэкономить время просчета - он очень полезен, даже в своем нынешнем виде.

Немного теории

Сетевой рендеринг в АЕ - это частный случай распределенных вычислений (distributed computings), так модных ныне в компьютерной индустрии.

Методика распределенных вычислений предполагает создание сетевой вычислительной системы. В мире компьютерной графики такая система получила название визуализирующей фермы (render farm).

Требования к оборудованию

Компьютеры. Естественно, это первое и основное требование. Чем больше компьютеров, тем быстрее происходит просчет, но не следует забывать о пропускной способности Вашей локальной вычислительной сети. Слишком интенсивный обмен данными может перегрузить Вашу сеть.

Все системы должны, как минимум удовлетворять базовым требованиям к оборудованию, предъявляемым АЕ. Более производительные системы всячески приветствуются.

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

Операционная система. Adobe настоятельно рекомендует использовать операционную систему Windows 2000 или Windows XP Professional.

Программное обеспечение. Собственно, сам Adobe After Effects, установленный на всех машинах-участницах просчета.

Плагины, шрифты и кодеки, используемые в проекте, должны быть установлены на всех машинах.

After Effects Standard и Production Bundle

АЕ предоставляет пользователям две модификации сетевого рендеринга:

1. Сетевой рендеринг с использованием Watch folder (network rendering using a watch folder). Доступен лишь пользователям After Effects Production Bundle.

2. Стандартный рендеринг секвенции на нескольких машинах (standard network rendering). Предоставляет возможность пользователям After Effects Standard осуществить рендеринг проекта на нескольких машинах. Естественно, может использоваться и в After Effects Production Bundle.

Сетевой рендеринг с использованием Watch folder

(network rendering with using a watch folder)

Сетевой рендеринг с использованием Watch folder позиционируется Adobe, как более предпочтительный метод.

Весь процесс сетевого рендеринга с использование Watch folder отображен на следующей схеме.

Компьютер с установленной полной версией After Effects PB (A) сохраняет проект и его исходные файлы в Watch folder (B).

Компьютеры, на которые установлен АЕ (C) сканируют Watch folder.

При наличии проекта, удовлетворяющего требованиям (см. далее), открывают этот проект и осуществляют просчет в определенную папку вывода (D).

Подготовительный этап сетевого рендеринга с использованием watch folder включает в себя 3 основных момента:

I. Определение папок и организация совместного доступа к ним

II. Настройка компьютеров-участников рендеринга

III. Подготовка проекта для сетевого рендеринга

I. Определение папок и организация совместного доступа к ним

Во-первых, необходимо определить папку Watch folder и папку для вывода просчитанных файлов. А затем и организовать совместный доступ всех машин к ним.

1. Создаем каталог, который будет играть роль Watch folder в дальнейшем. Название у него может быть любое, но во избежание путаницы я обычно его так и называю - "Watch folder".

2. Нажимаем на этом каталоге правой кнопкой мыши и выбираем в контекстном меню команду свойства (properties).

3. Переходим во вкладку доступ (sharing). Активизируем переключатель открыть общий доступ к этой папке (share this folder).

4. Щелкаем на кнопке разрешения(Permissions). По умолчанию установлен полный доступ для всех пользователей. Определяйте уровень безопасности сообразно Вашим потребностям.

Локальная сеть, в которой я осуществляю сетевой рендеринг, не имеет выхода в Интернет и не связана с другими сетями. Поэтому я устанавливаю доступ для всех пользователей (everyone).

Если Вы беспокоитесь о сетевой безопасности, то Вы можете установить собственные параметры безопасности.

В нижеприведенной таблице описаны действия, возможные при каждом из типов разрешений.

Настройка совместного доступа к папке вывода осуществляется идентично.

II. Настройка компьютеров-участников рендеринга

Прежде всего - устанавливаем АЕ, а так же используемые в проекте шрифты и плагины на всех машинах. Версия АЕ обязательно должна совпадать на всех компьютерах-участниках просчета.

Если проект был подготовлен для сетевого рендеринга в иной версии АЕ, чем установлена на сетевых машинах, то они попросту не определят этот проект в Вашей Watch folder. Это одно из неудобств рендеринга с использованием Watch folder.

После установки всего вышеперечисленного запускаем АЕ. В меню file выберите пункт watch folder и в появившемся диалоговом окне задайте папку, которая и будет играть роль watch folder.

После этого появиться окно watch folder. Пока оно активно - компьютер каждые 10 секунд будет сканировать watch folder на наличие проектов, пригодных для сетевого рендеринга. При активации "Pause Search on All Mashines" поиск проектов будет прекращен на всех компьютерах в режиме watch folder.

Повторите эти действия на остальных машинах.

III. Подготовка проекта для сетевого рендеринга

Для того, что бы Ваш проект был пригоден для сетевого рендеринга с использованием watch folder, Вы должны соблюсти некоторые условия.

1. Добавление композиций в render queue.

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

В output module в качестве формата вывода нужно обязательно задать секвенцию. Тип секвенции не важен, так что выбирайте любой удобный для вас формат.

В render settings теперь стала доступна опция skip existing files (пропускать уже существующие файлы). Это значит, что при рендеринге уже имеющиеся файлы секвенции не будут перезаписываться, и будет начинаться рендеринг следующего по счету кадра.

При определении папки вывода файла (output to) очень важно указать ее как сетевую, даже если она находится на этом компьютере. А иначе все компьютеры, кроме данного, не определят правильный каталог вывода. Например, Ваша папка имеет путь E:'Output. Для корректной работы должен быть прописан полный URI (Uniform Resource Identifier - унифицированный идентификатор ресурса) - ''MainComp'E'Output, где "MainComp" имя сетевой машины, на которой находится диск Е с папкой Output.

2. Следующий этап - file -->collect files. Если Вы все сделали правильно в предыдущем пункте, то в появившемся диалоге активизируйте "Enable watch folder render" и укажите максимальное число машин, осуществляющих рендеринг. Если в очереди рендеринга нет ни одного пункта, удовлетворяющего условиям сетевого рендеринга, то активизировать "Enable watch folder render" не удастся.

В качестве папки для сбора файлов указываете watch folder или находящийся внутри нее каталог.

Теперь проект определиться компьютерами, находящимися в режиме watch folder, будет открыт на каждом из них и начнется сетевой рендеринг.

Запуск After Effects в watch folder mode

Вы можете запускать АЕ в режиме watch folder автоматически.

Для этого из командной строки запустите AfterFX.exe c параметром -wf и укажите полный путь к watch folder.

AfterFX.exe -wf ''MainComp'F'watchFolder

Открытие проекта с названием Watch this folder.aep приведет к тому же результату. Причем в качестве watchFolder будет являться директория, в которой этот проект находиться.

Можно достичь еще большей автоматизации, если проделать следующие манипуляции:

1. Создайте ярлык для AfterFX.exe

2. В свойствах ярлыка пропишите параметр -wf и путь к watch folder

Выглядеть это будет примерно так:

"D:'Program Files'Adobe'After Effects 6.0'Support Files'AfterFX.exe" -wf ''MainComp'F'watchFolder

3. Перенесите созданный Вами ярлык в папку автозагрузки (Startup folder).

Как Вы понимаете в Startup folder можно перенести и ярлык для Watch this folder.aep.

Теперь для запуска АЕ в режиме watch folder Вам будет достаточно запускать этот компьютер. Остальные действия произойдут автоматически.

Мониторинг прогресса и ошибок рендеринга,

состояния проектов и визуализирующих машин

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

Менеджера сетевой визуализации в АЕ не имеется. Есть лишь возможность отслеживания происходящих процессов. Впрочем это средство очень далеко от совершеества.

В корне Вашей watch folder в процессе сетевого рендеринга появляется файл watch_folder.htm. Это самый обычный htm-документ, содержащий в себе информацию о последних ста проектах, ставившихся на сетевой рендеринг.

Если Вы нажмете на ссылку проекта, то появится отчет по рендерингу.

Этот htm-документ содержит четыре фрейма:

А - название проекта.

В - отображает очередь рендеринга. Нажмите на любом пункте из очереди рендеринга и во фрейме D появиться информация о текущем состоянии этого render item.

С - отображает машины, участвующие в сетевом рендеринге. Кликните на названии одной из машин и во фрейме D отобразятся render items, которые просчитывает данный компьютер.

D - это основной информационный фрейм. В нем выводится информация о render items и render mashines (см. В и С). Тут же есть возможность просмотреть отчет по рендерингу.

Стандартный сетевой рендеринг секвенции на нескольких машинах

(standard network rendering)

Этот способ гораздо проще, чем использование WatchFolder, но он не имеет возможности автоматизировать процесс и осуществлять его мониторинг.

Однако он хорош тем, что Вы можете использовать разные версии АЕ на машинах. Но, естественно, плагины, шрифты и кодеки, используемые в проекте должны присутствовать на всех компьютерах.

Весь процесс можно изобразить так.

Вы открываете проект (А) на всех машинах (В).

Далее осуществляете обычный рендеринг секвенции (но с пропуском уже просчитанных кадров кадров) в папку вывода (С).

Так же как и при использовании watchFolder вы должны:

1. Определить папки и организовать доступ к ним.

2. Выбрать в качестве формата вывода секвенцию и активировать Skip Existing Files

3. Сохранить Ваш проект в доступной сетевой папке.

4. Далее Вы открываете этот проект на всех машинах и начинаете рендеринг.

На каждой из машин будет происходить обыкновенный просчет секвенции.

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

Вот собственно и все о сетевом рендеринге в Adobe After Effects.

Самым важным для Frontend разработчика является модуль отображения в браузере, он же Rendering Engine (далее RE).

В этой статье я хочу взять простую страничку и пройти все этапы вместе с RE от получения первого байта и до отрисовки контента на экран. Пользоваться я, как всегда, буду браузером Chrome.

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

Рассмотрим схему:



Рисунок 1

Пользовательский интерфейс, User Interface (далее UI) — внешний API браузера для пользователя: адресная строка, навигация, меню, закладки, кнопки 'обновить' и 'домой'.

Механизм браузера, Browser Engine (далее BE) прослойка между пользовательским интерфейсом и модулем отображения.

Модуль отображения Rendering Engine. Его подробнее разберем позже.

Сетевые компоненты, Network отвечают за запросы по сети. RE получает данные от Network. Данные принимаются порциями по 8Кб и RE не ждет, пока придут все данные, он начинает обрабатывать их по мере поступления.

Модуль JS Interpreter отвечает за интерпретацию скрипта и его выполнение.

UI backend применяется для отрисовки основных графических элементов и виджетов, типа окон и комбо-боксов. Простой пример окно alert или prompt.

Xранилище данных — это cookie, indexDB и другие хранилища браузера.

Теперь, когда мы знаем на базовом уровне, из чего состоит браузер, можем перейти к интересующему нас компоненту — Rendering Engine.

Разбираться проще и быстрее на конкретном примере, поэтому давайте возьмем простую html-страничку с одним внешним css- и js-файлом (скрипт подключен с атрибутом async, далее разберем почему). И посмотрим, как RE их обрабатывает и какие шаги выполняются, прежде чем мы увидим нужный нам контент на экране.



Для этого заходим в Chrome DevTools, открываем вкладку perfomance и запускаем процесс. После перезагрузки страницы и анализа произошедшего мы наблюдаем следующую картину:


Рисунок 2

Во вкладке Network — последовательность загрузки данных по сети (голубой прямоугольник — index.html).

Во вкладке Timings — отметки, когда произошли события DCL (DOM Content Loaded, FP — first paint, FCP — first contentful paint, FMP — first meaningful paint, L — load). Давайте разберем, что это за события.

DOMContentLoaded — браузер загрузил HTML, распарсил его и построил DOM-дерево. Это событие срабатывает на document, на него легко можно подписаться и работать с DOM через JavaScript (в нашем скрипте мы не сможем подписаться на событие DOMContentLoaded, так как оно произошло до того, как распарсился скрипт, см рисунок).
Также у DOMContentLoaded есть несколько нюансов:

  • Если скрипт подключен без тегов async / defer (синхронно), то он будет блокировать парсинг HTML. Однако браузеры в последнее время используют спекулятивный парсинг и в таких случаях все равно скачивают этот скрипт заранее и делают его синтаксический анализ. Это никак не влияет на структуру DOM-дерева, но позволяет сократить время работы RE. На рисунке ниже видно, как время DCL и всех остальных render events увеличивается при синхронном подлючении скриптов
  • Блокировку парсинга (как вы уже догадались) можно обойти атрибутами async / defer, которые позволяют продолжать парсить HTML, не дожидаясь скачивания и выполнения скрипта
  • Также событие DCL может отложиться из-за загрузки стилей. Во время выполнения скрипта браузер может увидеть, что мы хотим получить доступ к стилю элемента через JavaScript. И этот скрипт будет заблокирован при условии, что стили этого элемента в данный момент парсятся или загружаются
  • Также в Chrome, например, на DCL происходит автозаполнение форм.

First paint — браузер отрендерил первый пиксель на странице.

First contentful paint — браузер отрендерил первый контент на странице.

First meaningful paint — событие отрабатывает после того, как RE определит, что отрендеренный контент может быть полезен пользвателю.

Load вся страница и ресурсы на ней загружены, включая iframe.

Об FP, FCP, FMP отлично написано в официальной документации Google for developers.

Теперь, когда мы разобрались, какие события произошли, можем перейти к Сall tree (см Рисунок 1) и более подробно разобрать, когда и почему эти события происходят.

Parse HTML — парсинг HTML. Про это можно написать отдельную статью. А еще лучше почитать спеку Нам лишь нужно понять, что браузер на основе HTML создает у себя объектную модель документа — DOM. И, когда она готова и ничего больше не может на нее повлиять, отрабатывает событие DOMContentLoaded.

Composite layers — это объединение визуальных элементов из отдельных источников в единые изображения для создания иллюзии, что все эти элементы являются частями одной и той же сцены.

Recalculate style. Любые изменения DOM, будь то добавление или удаление элементов, изменение атрибутов, классов или использование средств анимации, ведут к тому, что браузер перерасчитывает стили элементов и во многих случаях макет всей страницы или ее частей. Этот процесс называется вычислением стилей. Google for developers

Parse Style sheet. Если после синтаксического анализа RE видит, что в HTML подключен css, он начинает его заранее скачивать и парсить. После парсина RE строит CSS Object Model — объектную модель CSS.

Далее происходит этап attachment, при котором RE сопоставляет CSS OM и DOM, и мы получаем Render Tree.

Update layer tree (Layout) — компоновка дерева слоев или просто компоновка. После того, как мы сопоставили CSS OM и DOM, можем узнать местоположение элементов и их размеры.

Чаще всего элементы, которые идут ниже в потоке, не могут оказывать влияние на позиционирование элементов выше, поэтому компоновка чаще всего выполняется последовательно — сверху вниз и слева направо. Поэтому HTML-стандартом предусмотрена поточная модель компоновки документа.

Paint — отрисовка содержимого на экран. И только после всех этих шагов мы видим контент сайта у себя на экране :D



Рисунок 4

Данные в RE поступают из сетевого модуля порциями. Получая эти данные, RE начинает с ними работать, а именно — парсить HTML.

Когда RE видит, что в HTML встречается внешний ресурс, он говорит об этом Network, и тот начинает его скачивать и дальше снова отдает его RE.

Встречая тег <script> по стандарту RE прекращает парсинг и ждет, пока этот скрипт скачатеся и выполнится, и только потом продолжает парсинг и построение DOM-дерева. Это решается атрибутами async / defer. Про их отличия подробнее можно почитать тут Главное понять, что они дают возможность продолжить парсить HTML, не дожидаясь обработки скрипта.
Также браузеры (в нашем случае Chrome) могут блокировать выполнение скрипта, если он пытается работать (через JavaScript) с css элемента, стили которого в данный момент обрабатываются.

Далее, после завершения парсинга CSS и конструирования CSS Object Model, происходит этап attachment, где строится Render Tree и происходит Layout (компоновка размеров и положения блоков). Ну а после Layout происходит отрисовка на экран — Paint. Такой длинный путь проделывает Rendering Engine, чтобы мы с вами увидели это:



Рисунок 5

Надеюсь, эта статья была вам полезной и теперь вы понимаете, как работает Rendering Engine.

Всем пока :) И до новых встреч. Если вам понравилось, ставьте лайки и подписывайтесь на мой канал :)

Не могу понять почему у меня рендится долго, разные плагини скачивал смотрел не памогает! Вроде бы сам нотбук у меня не плохой! Кто знает в чём проблема? сам видео длится только 1 минута и 10 сикунд на это у меня уходит 43 минуты и размер видео тоже очень большое!

5ea46780b2080982193281.jpg

У меня Acer ROG Strix G531GU 15.6”, i7-9750H , 4.50 GHz, 16 GB ram, SSD 512 GB & 1000 GB harddisk

5ea467741c904988172199.jpg

  • Вопрос задан более года назад
  • 7753 просмотра

d-korolkov

5ea147fe0e0c7910910565.jpg

Исходя из того, что у тебя всего 16GB RAM можно предположить, что медленно из-за этого. Но есть и другие моменты:
1) выставлено ли у тебя максимум используемого RAM в настроках AE General->Memory, путём уменьшения резерва памяти для других программ (или в настройках Media Encoder (Preference->Memory) - эти настройки динамически меняются для этих приложений)?

2)чистишь ли ты перед рендером память в AE: Edit -> Purge -> All memory & Disk Cache ?
3) увеличен ли размер кеша настроках General->Media&Cache повыше от стандартных (32GB к примеру)
4) выставлены ли запись кеша на SSD , но не на HDD там же
5) запись рендера файла идёт на SSD, а не на HDD?
6) после запуска Media Encoder с готовым к старту проектом нужно чистить память (пункт 2) и, что очень важно, закрывать After Effects.

Понимаю, что тут практически всё про AE, но Media Encoder запускает в фоне новые After Effects процессы в любом случае, а это очень влияет на загруженность RAM. Т.е. по сути они как сиамские близнецы, очень взаимосвязаны.

По идее выполнение всех этих пунктов должно помочь.

5ea935590c1c7527400601.jpg

P.S. 3D анимация конечно же рендерится долго. Если просто нужен не финальный, но хоть какой-то рендер, можно отключать в проекте Motion Blur, сохранять и затем уже отправлять на рендер:

может ускорить процесс в разы.

Читайте также: