Skip to main content
aminn75893596
Inspiring
August 11, 2021
Answered

Premiere Pro Scripting: How to add Transition to Clip?

  • August 11, 2021
  • 2 replies
  • 3405 views

Hi guys,

 
I've browsed through many Youtube tutorials, documentations, and online forums, but I don't think I've seen one where it shows how to add video transitions to clips on a track, using a script.
 
I know there is an "addTransition" method for clips in QE, but I can't figure out what the arguments should be.
 
Here is what I have found out so far:
 
In ExtendScript, we can view an object's properties and methods using the Reflection object, as documented here: https://extendscript.docsforadobe.dev/extendscript-tools-features/extendscript-reflection-interface.html
 
So I've used it for a qeClip i.e.  

 

 

var qe = app.enableQE();

var qeProject = qe.project;

var qeSequence = qeProject.getActiveSequence();

var qeTrack = qeSequence.getVideoTrackAt(0);

var qeClip = qeTrack.getItemAt(1);

 

 

 
Testing: 

 

 

var qeClipName = qeTrack.getItemAt(1).name;
$.writeln(qeClipName);

 

 

 
Gives:

 

 

a-vid-B085TC6KG7_1.mp4

 

 

which is the correct name of the clip.
 
So:

 

 

var clipMethods = qeClip.reflect.methods;

 

 

gives:

 

 

addAudioEffect,addTransition,addVideoEffect,canDoMulticam,getClipPanComponent,getComponentAt,getProjectItem,move,moveToTrack,remove,removeEffects,rippleDelete,roll,setAntiAliasQuality,setBorderColor,setBorderWidth,setEndPercent,setEndPosition,setFrameBlend,setMulticam,setName,setReverse,setScaleToFrameSize,setSpeed,setStartPercent,setStartPosition,setSwitchSources,setTimeInterpolationType,slide,slip

 

 

 
In the list above, I have identified the "addTransition" method at index 1.
 
Testing:

 

 

var addTransition = qeClip.reflect.methods[1];
$.writeln(addTransition);

 

 

 
Gives:

 

 

addTransition

 

 

 
So now I would like to see what are the arguments for this "addTransition" method.
Per above documentation: that's: 

 

 

obj.reflect.methods["indexOf"].arguments[0];​

 

 

 

So,

 

 

var arguments = addTransition.arguments;
$.writeln(arguments);

 

 

 
Funnily,.gives:

 

 

p0,,,,,,

 

 

 
Furthermore,

 

 

var arguments0 = addTransition.arguments[0];
$.writeln(arguments0);

 

 

 
outputs:

 

 

p0

 

 

 
and:
 

 

 

var arguments1 = addTransition.arguments[1];
$.writeln(arguments1);

 

 

 
gives:
Nothing.
and so does addTransition.arguments[2], 3, 4, up to addTransition.arguments[6].
 
What should these arguments be?
How can we script for addTransitions?
Any help is appreciated 🙂

 

Thanks,
Amin
This topic has been closed for replies.
Correct answer Bruce Bullis

@Bruce Bullis 


As before: Undocumented, and unsupported.

2 replies

Nguyễn Hữu Phước
Participant
April 28, 2023
var qe = app.enableQE();

var qeProject = qe.project;

var qeSequence = qeProject.getActiveSequence();

var qeTrack = qeSequence.getVideoTrackAt(0);

var qeClip = qeTrack.getItemAt(0);

qeClip.addTransition(qeProject.getVideoTransitionByName("Dip to Black"));

I noticed this will add "Dip to Black" between clip (0) and clip (1)

 

Bruce Bullis
Community Manager
Community Manager
August 12, 2021

QE DOM is unsupported, and not recommended. [I've reached out to Amin directly.]

aminn75893596
Inspiring
August 17, 2021

Thanks!

Bed30321077z973
Inspiring
January 29, 2024

I also am searching for the answer, can you send it to me @aminn75893596  ? (If you are still arround)