我有一个视频模板,由大约30个组成,命名为1到30。
30个合成中的每一个都只由一个图层组成,这个图层是一个.mp4文件,其中的合成只提取某一段,比如5秒。
所以,构图1是由1.mp4层制作的一个5秒长的合成,而1.mp4是一个2分钟长的素材,我为它选择了一个1:02的切入点,所以我的构图只显示该素材从1:02到1:07。(请看下图)
每当我的客户给我发来一组新的30个.mp4片段素材,让我把它们放在我的30个作品中。
我就把它们的名字从1.mp4改成30.mp4来替换我的旧文件(一个Python脚本就能完成这项工作)。
I 手动 将每个镜头的开始时间设置为所需的时间(例如:-1:02,如下图中蓝色圆圈所示)。
我的问题如下。有没有办法让我使用一个.json文件来批量设置我的~30个.mp4文件的入口点??
我与AE 2019工作。
谢谢你
为什么要用json文件?根据我的理解,你是想在你的许多comps中自动改变每层1的开始时间,对吗?下面的.js或.jsx脚本(保存 纯文本 这些文件的任何一个扩展名,并从ae)运行,都可以达到你想要的效果,但是你的 必须
这是代码。
var everyItem = app.project.items;
selectedComps = new Array();
for (var i = everyItem.length; i >= 1; i--) {
eyeTem = everyItem[i];
if ((eyeTem instanceof CompItem) && eyeTem.selected) {
selectedComps[selectedComps.length] = eyeTem;
}
}
c=confirm("Shift Start Point of each Layer 1? Yes for Starting Point, No for inPoint (inPoint trims)");
p=prompt("Enter time in seconds:", "-1.1");
pNumber = 0;
if (p == null) {//User Canceled
}else{
killit=false;
try {
pNumber = eval(p);
} catch(e) {
killit=true;
}
app.beginUndoGroup("Adjust Layer 1 Start or In");
if (c==true) {//Yes - starting point
for (var n = (selectedComps.length-1); n >= 0; n--) {
item = selectedComps[n];
item.layers[1].startTime = pNumber;
}
}else{//no - trim in
if (pNumber >= 0) {//cannot be negative
for (var n = (selectedComps.length-1); n >= 0; n--) {
item = selectedComps[n];
item.layers[1].inPoint = pNumber;
}
}else{
alert("You entered a negative number for an inPoint trim. That won't do anything");
}
}
app.endUndoGroup();
}