Skip to content

Commit 2163ce1

Browse files
author
Nik Ska
committed
comments translated into English
1 parent 3df59a6 commit 2163ce1

File tree

4 files changed

+63
-58
lines changed

4 files changed

+63
-58
lines changed

newTrimmedNull.jsx

+12-12
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,22 @@
66
var newNull = {}
77

88
newNull.go = function(){
9-
var activeComp = app.project.activeItem; //открытая композиция
10-
if(activeComp && activeComp instanceof CompItem){ //если это все же композиция
11-
var sel = activeComp.selectedLayers; //выбранные слои
12-
app.beginUndoGroup("Create smart null"); //начинаем Undo
13-
var nullLayer = activeComp.layers.addNull(); //добавляем нуль
14-
if(sel){ //если что-то выбрано
15-
sel.sort(function(a,b){ //Хитрая сортировка на JS
9+
var activeComp = app.project.activeItem; //active item
10+
if(activeComp && activeComp instanceof CompItem){ //if it's a comp
11+
var sel = activeComp.selectedLayers; //selected layers
12+
app.beginUndoGroup("Create smart null"); //Undo
13+
var nullLayer = activeComp.layers.addNull(); //adding Null
14+
if(sel){ //if anything is selected
15+
sel.sort(function(a,b){ //sort by index
1616
return a.index - b.index;
1717
});
18-
nullLayer.moveBefore(sel[0]); //перемещаем перед первым выбранным
19-
nullLayer.startTime = sel[0].startTime; //подрезаем
18+
nullLayer.moveBefore(sel[0]); //placing before the 1st
19+
nullLayer.startTime = sel[0].startTime; //trim
2020
nullLayer.inPoint = sel[0].inPoint;
2121
nullLayer.outPoint = sel[0].outPoint;
22-
nullLayer.label = sel[0].label; //наследуем цвет
22+
nullLayer.label = sel[0].label; //inherit color
2323
}
24-
app.endUndoGroup(); //закрываем Undo
24+
app.endUndoGroup(); //closing undo
2525
}
2626
}
27-
newNull.go() //поехали!
27+
newNull.go()

nicePrecomp.jsx

+20-15
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,42 @@
11
//Experiment to make nice and clean precomps
2+
//Works for AE prior to CC, where "adjust precomp to layers"
3+
//is introduced
4+
5+
//Just precomp your layer, then run this script and it will recursively
6+
//adjust its ins and outs to its comtents.
27

38
//CC-BY-SA Nik Ska, 2013
49

510
var precompFixer = {}
611

712
precompFixer.go = function(){
813
function getTimes(_sel){
9-
var end = 0; //ищем конец последнего слоя
14+
var end = 0; //look for the last outpoint
1015
for(var e = 1; e <= _sel.length; e++){
1116
if(_sel[e].outPoint>end) end = _sel[e].outPoint;
1217
}
13-
var begin = end; //ищем начало первого слоя
18+
var begin = end; //look for the first inpoint
1419
for(var b = 1; b <= _sel.length; b++){
1520
if(_sel[b].inPoint<begin) begin = _sel[b].inPoint;
1621
}
1722
return([begin, end])
1823
}
1924

20-
var activeComp = app.project.activeItem; //открытая композиция
21-
if(activeComp && activeComp instanceof CompItem){ //если это все же композиция
22-
var sel = activeComp.selectedLayers; //выбранные слои
23-
app.beginUndoGroup("Nice Precomp"); //начинаем Undo
24-
if(sel.length == 1 && sel[0].source instanceof CompItem){ //если мы выбрали прекомп
25-
var precomp = sel[0].source; //берем сам прекомп
26-
var timings = getTimes(precomp.layers); //рассчитываем начало и конец
27-
precomp.duration = timings[1]-timings[0]; //рассчитываем новую длину
28-
precomp.displayStartTime = timings[0]; //сдвигаем Display Start Time
29-
sel[0].startTime+=timings[0]; //сдвигаем сам прекомп
25+
var activeComp = app.project.activeItem; //active item
26+
if(activeComp && activeComp instanceof CompItem){ //if it's a comp
27+
var sel = activeComp.selectedLayers; //selected layers
28+
app.beginUndoGroup("Nice Precomp"); //Undo
29+
if(sel.length == 1 && sel[0].source instanceof CompItem){ //if we have comp selected
30+
var precomp = sel[0].source; //use it
31+
var timings = getTimes(precomp.layers); //calculate it's layers' ins and outs
32+
precomp.duration = timings[1]-timings[0]; //new duration
33+
precomp.displayStartTime = timings[0]; //shift Display Start Time
34+
sel[0].startTime+=timings[0]; //shift precomp
3035
for(var l = 1 ; l <= precomp.layers.length ; l++){
31-
precomp.layers[l].startTime -= timings[0]; //сдвигаем слои внутри
36+
precomp.layers[l].startTime -= timings[0]; //shift precomp layers
3237
}
3338
}
34-
app.endUndoGroup(); //закрываем Undo
39+
app.endUndoGroup(); //close Undo
3540
}
3641
}
37-
precompFixer.go() //поехали!
42+
precompFixer.go()

renderAll.jsx

+20-20
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
//Вот тут задаём шаблоны
1+
//Script for creating DV version of active or se;ected comps
2+
//and rendering them with preset templates
3+
//to the "render" subfolder of a project folder
4+
5+
//Templates
26
var t1 = "h264";
37
var t2 = "jpg";
48
var t3 = "qt_animation";
@@ -7,58 +11,54 @@ var renderAll = this;
711

812
renderAll.go = function(){
913

10-
//получаем активный элемент и все выбранные элементы
14+
//getting active element and selected elements
1115
var activeComp = app.project.activeItem;
1216
var selComps = app.project.selection;
1317

14-
//получаем текущую дату для именования папки с рендером
15-
//можно удалить если не надо
16-
//тогда в строчке var fldr .... надо будет удалить "+_date + '/'"
18+
//getting currect date for render folder maning
19+
//not mandatory
1720
var d = new Date();
1821
var _date = d.getDate()+'_'+(d.getMonth()+1)+'_'+d.getFullYear();
1922

20-
//если в папке проекта нет папки render - создаем ее
21-
//можно назвать как угодно, не только render
23+
//creating "render" folder
2224
var fldr = new Folder(app.project.file.path + '/render_' + _date + '/');
2325
fldr.create();
2426

25-
var comps; //делаем так, чтобы можно было закидывать как текущую, так и выбранные композиции
27+
var comps;
2628
if(selComps.length>0){
27-
var comps = selComps;
29+
var comps = selComps; //if some comps are selected - work on them
2830
}
2931
else{
30-
//ничего не выбрано
32+
//otherwise if we're in a composition - use it
3133
if(activeComp && activeComp instanceof CompItem) var comps = [activeComp];
3234
}
3335

3436
app.beginUndoGroup("Render comps");
3537

3638
for(var c = 0; c<comps.length; c++){
37-
//сразу добавляем композицию на рендер
39+
//put the comp into the render queue
3840
toRenderQueue(comps[c], t1, fldr);
3941

40-
//создаем DV-версию
41-
//этот блок можно удалить, если это не нужно.
42+
//creating DV version
43+
//not mandatory
4244
var dvComp = app.project.items.addComp(comps[c].name + '_DV', 720, 576, 1.09, activeComp.duration, 25);
43-
44-
//докидываем солид
4545
dvComp.layers.addSolid([0,0,0], "Black Solid", dvComp.width, dvComp.height, dvComp.pixelAspect, dvComp.duration);
4646

47-
//докидываем слой с исходной композицией
47+
//adding initial comp as layer
4848
var l = dvComp.layers.add(comps[c]);
49-
//корректируем scale
49+
//fit scale to width
5050
l.property("ADBE Transform Group").property("ADBE Scale").setValue(dvComp.pixelAspect*l.property("ADBE Transform Group").property("ADBE Scale").value/(comps[c].width/dvComp.width));
5151

52-
//закидываем на рендер с настройкой t2
52+
//put it into render queue with t2 template
5353
toRenderQueue(dvComp, t2, fldr);
5454
}
5555

5656
app.endUndoGroup();
5757
}
5858

5959
renderAll.toRenderQueue = function(_comp, _template, _fldr){
60-
//функция берет композицию _comp, кидает ее на рендер
61-
//с шаблоном _template и кладет рендер в папку _fldr
60+
//this function takes _comp composition and puts it into the render queue
61+
//with _template template and renders it to the _fldr folder
6262
var rQ = app.project.renderQueue;
6363
var renderit = rQ.items.add(_comp);
6464
renderit.outputModules[1].file = File(_fldr.fullName+"/"+_comp.name);

trimFirstToSecond.jsx

+11-11
Original file line numberDiff line numberDiff line change
@@ -4,25 +4,25 @@
44
var ns_Trim = {}
55

66
ns_Trim.go = function(){
7-
var activeComp = app.project.activeItem; //открытая композиция
8-
if(activeComp && activeComp instanceof CompItem){ //если это все же композиция
9-
var sel = activeComp.selectedLayers; //выбранные слои
10-
app.beginUndoGroup("Trim"); //начинаем Undo
11-
if(sel.length>1){ //если выбрано больше 1 элемента
12-
sel[0].startTime = sel[1].startTime; //подрезаем
7+
var activeComp = app.project.activeItem; //active item
8+
if(activeComp && activeComp instanceof CompItem){ //if it's a comp
9+
var sel = activeComp.selectedLayers; //selected layers
10+
app.beginUndoGroup("Trim"); //Undo
11+
if(sel.length>1){ //if more than 1 are selected
12+
sel[0].startTime = sel[1].startTime; //trim
1313
sel[0].inPoint = sel[1].inPoint;
1414
sel[0].outPoint = sel[1].outPoint;
15-
var prev = sel[1]; //запоминаем предыдущий слой
15+
var prev = sel[1]; //remembering previous layer
1616
}
1717
else if(prev){
18-
//теперь можно выбирать слои по одному и подрезать
19-
//под предыдущий
18+
//with layer remembered
19+
//trim all firther selected
2020
sel[0].startTime = prev.startTime;
2121
sel[0].inPoint = prev.inPoint;
2222
sel[0].outPoint = prev.outPoint;
2323
}
2424

25-
app.endUndoGroup(); //закрываем Undo
25+
app.endUndoGroup(); //closing Undo
2626
}
2727
}
28-
ns_Trim.go() //поехали!
28+
ns_Trim.go()

0 commit comments

Comments
 (0)