Why Premiere Pro could use scripting

I’ve been testing the workflow from Premiere Pro to DaVinci Resolve (similarly to other more renowned people). For many reasons I want to avoid sending a flattened file, instead relying on XML interchange, and a few annoying simple issues make it pretty inconvenient:

  1. We’re using XDCAM EX in mp4 wrapper and NXCAM (AVCHD) files which Resolve does not support. Transcoding is necessary although it’s the subject for another entry.
  2. Time remapping in Resolve is much worse than even in Premiere, not mentioning After Effects. All speed changes should be rendered and replaced before exporting XML.
  3. Some effects should be rendered, but transitions should be left untouched.
  4. All Dynamic Link clips should be rendered and replaced.

Doing these things manually takes a whole lot of time, and is very prone to mistakes. This is a perfect example when a simple script would make one’s life so much easier. The script would:

  1. Traverse the timeline, looking for clips having properties mentioned in points 2-4.
  2. Create a new video layer or a sequence, whatever would be faster.
  3. Copy the clips there one by one and queue export for each to desired codec, encoding timecode and track either in metadata or the name.
  4. After the export is done, it would import the renders, and replace old clips with the new ones.

Alternatively, I could have one script to export (1-3), and another to reimport (4).

See? It’s relatively simple. The possibilities of scripting are almost infinite. For example, I could also change all the time remapped clips automatically into Dynamic Linked AE compositions and render them using its superior PixelMotion algorithm – although I would rather appreciate Adobe including it in Premiere itself, getting rid of the old and awful frame blending. I could even attempt to change them to their Twixtor equivalents, although I must say that my experience with this effect is pretty crashy.

I looked at SDK for Premiere Pro to see if I could write a plugin that would make this job easier, but as far as I know such possibility does not exist. Plugin architecture for Premiere is pretty limited, and compartmentalized, and using C++ for this seems like a bit of an overkill.

Adobe, please support scripting (JavaScript, Python, or any other obscure language) in Premiere Pro. This way users will be able to create their own tools to solve inefficiencies of the program, and your job will become much easier. And Premiere Pro will prosper and develop much quicker and much more effectively. Besides – you don’t want FCPX to overtake you, do you?

Advertisements

About Bart Walczak

I'm a video editor, and an aspiring colorist and VFX artist, with some experience in desktop publishing, web development and programming.
This entry was posted in usability, video editing and tagged , , , , . Bookmark the permalink.

5 Responses to Why Premiere Pro could use scripting

  1. RT Wolf says:

    Totally agree. I’m looking into kludging things at the moment using AutoHotKey to simulate keypresses. Luckily pretty much anything can be setup with keyboard shortcuts so I can do that.

    I’m also currently looking into creating some sort of parser that goes from a scripting language like avisynth to XML which can then be imported into PP.

    Cheers!

  2. RT Wolf says:

    In fact, come to think of it, what would be amazing is a textual representation of your current project in a new window/panel. There are times when I just want to copy-paste some sequences and it’d be much faster to do it in text than going through the GUI.

    Frankly, do you know of another NLE that has scripting or is just more friendly to a programmer’s mind?

  3. Bart Walczak says:

    Textual representation of actual Premiere XML file would be a mess, because their implementation is pretty fragile, and contains too many self-references to be easily manipulated without a risk of corruption. But a pseudo-code, or even timeline index, would be an interesting idea.

    Not sure if there are any NLEs with scripting. But I really think this has the potential to be pretty revolutionary.

    • David Alonso says:

      Sony Vegas supports scripting application-wide and it works the way you would expect Premiere scripting should work (access to all objects and properties, interface commands, timeline commands, exporting features, etc). Too bad is not as reliable as the latest versions of Premiere.

      My workflow would be so much easier if Adobe decided to include scripting in Premiere. Automation stuff like exporting one audio file per cut, saving the timeline in custom text formats, synchronizing the edit between Premiere and 3D apps, switching files to different resolutions of the file, etc.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s