Я пытался выяснить это за последний день или два с минимальными результатами. По сути, я хочу отправить выбранные композиции в After Effects в Adobe Media Encoder с помощью скрипта и использовать информацию о них (подстроки их имени, ширины и т. Д. c - все, что я уже знал и понял ) и укажите соответствующую предустановку AME на основе выполненных условий. Текущие два метода, которые я нашел, не будут работать для того, что я пытаюсь сделать:
https://www.youtube.com/watch?v=K8_KWS3Gs80
https://blogs.adobe.com/creativecloud/new-changed-after-effects-cc-2014/?segment=dva
Обе эти опции более или менее зависят от модуля вывода / очереди рендеринга (с первой опцией, позволяющей отправить ее в AME без указания предустановки), которая, по крайней мере, насколько мне известно, не позволит h.264 типы файлов больше (если вы не можете каким-то образом обмануть очередь рендеринга с созданным набором настроек перед отправкой очереди в AME?).
Другая найденная мною опция включает использование BridgeTalk для обхода вывода модуль / очередь рендеринга и go непосредственно в AME ... НО, который в основном включает в себя указание файла (а не выбранных в настоящий момент композиций) и требует ТОЛЬКО наличия единственной композиции (подлежащей визуализации) на уровне root проект: https://community.adobe.com/t5/after-effects/app-project-renderqueue-queueiname-true/td-p/10551189?page=1
Теперь, что касается кода, вот соответствующая, нерабочая часть кода:
function render_comps(){
var mySelectedItems = [];
for (var i = 1; i <= app.project.numItems; i++){
if (app.project.item(i).selected)
mySelectedItems[mySelectedItems.length] = app.project.item(i);
}
for (var i = 0; i < mySelectedItems.length; i++){
var mySelection = mySelectedItems[i];
//~ front = app.getFrontend();
//~ front.addItemToBatch(mySelection);
//~ enc = eHost.createEncoderForFormat("H.264");
//~ flag = enc.loadPreset("HD 1080i 25");
//app.getFrontend().addItemToBatch(mySelection);
var bt = new BridgeTalk();
bt.appName = "ame";
bt.target = "ame";
//var message = "alert('Hello')";
//bt.body = message;
bt.body="app.getFrontend().addCompToBatch(mySelection)";
bt.send();
}
}
, который включает в себя ряд различных попыток и вещей, которые я пробовал.
Я потратил около 4-5 часов, пытаясь прочесать инте rnet и различных ресурсов, но до сих пор не хватало. Заранее спасибо за помощь!