Есть ли способ перемещать указатель воспроизведения/текущее время в After Effects?

Короче говоря, мне нужно сбросить точку воспроизведения обратно на кадр 1 во время работы скрипта.

Я создаю скрипт для экспорта нескольких композиций после обновления некоторого текста. Один экспорт будет в формате jpg, а затем 2 коротких видео. Я использую app.executeCommand(2104), который является Сохранить кадр как, чтобы добавить текущий кадр в очередь рендеринга для экспорта jpg. В противном случае AE будет пытаться экспортировать последовательность jpg, даже если ее длина составляет всего 1 кадр. Это влияет на имя вывода и настройки экспорта. Я не нашел простого способа избежать добавленного форматирования.

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

Экспорт изменений

Я попытался обновить параметры рендеринга вывода с помощью Time Span Start и Time Span Duration, но это изменило его обратно на последовательность jpg.

Я думал, что смогу обмануть / взломать его, создав новую композицию, а затем удалив. так как, делая это вручную, он перемещает точку воспроизведения на ноль вновь созданной композиции. однако при изменении фокуса обратно на композицию JPG указатель воспроизведения возвращался туда, где он был изначально.

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


person HermanCHS04    schedule 02.12.2019    source источник


Ответы (1)


Линия playhead-time-thingy называется CTI (индикатор текущего времени) в AE-Land. Так что это должно работать.

app.project.activeItem.time = 0;

(Как) я могу переместить CTI изнутри сценарий?

person fabianmoronzirfas    schedule 03.12.2019
comment
Это именно то, чего мне не хватало. - person HermanCHS04; 03.12.2019
comment
любой возможный способ сделать это с точки зрения кадров, а не времени? - person Mohd Faizan; 31.01.2020
comment
@MohdFaizan Если вы хотите рассчитать кадры по времени, сделайте это -›var frame = time / app.project.activeItem.frameDuration;, а для времени по кадрам сделайте то -›var time = frame * app.project.activeItem.frameDuration; Для этого ваша композиция должна быть активным элементом. - person fabianmoronzirfas; 31.01.2020
comment
Спасибо, отлично. - person Mohd Faizan; 31.01.2020
comment
@fabianmoronzirfas, не могли бы вы ответить на этот вопрос? stackoverflow.com/questions/60009871/ - person Mohd Faizan; 01.02.2020