Skip to main content
sberic
Legend
May 1, 2017
Answered

Retrieve name of Track-local Clip name (not ProjectItem name)?

  • May 1, 2017
  • 2 replies
  • 2277 views

I'm looking for a way to access the possibly renamed "name" of a clip (TrackItem) in Track. Specifically, I'm not interested in the (clip as TrackItem).projectItem.name.

Searching the forums returned some old questions. One used the QE DOM, which does not appear to be accessible anymore. Another suggested exporting the project as FCP XML and parsing the information from the exported XML. This seems exceptionally kludgy and prone to mistakes. The "correct" implementation would probably include using the os.tmpdir API from io.js and passing that to ExtendScript, where you would then export the Project or Sequence and then parse the XML. This seems as though it could get pretty heavy, pretty quickly with complex projects. How performant are the XML export functions?

Also, has a better way to do this appeared? This seems like an oft-requested and (theoretically) simple-to-implement feature...

This topic has been closed for replies.
Correct answer sberic

This now appears to be doable!!

As of Premiere Pro CC v12.0.0 (at least?), TrackItem objects have a read+write name property! Setting that value allows you to change the name of the clip instance in the sequence timeline!

Looks like this:

// Example Video Clip name change:

app.project.activeSequence.videoTracks[0].clips[0].name = "Hello";

// Example Audio Clip name change:

app.project.activeSequence.audioTracks[0].clips[0].name = "World!";

// (NOTE: Both examples above require that a video/audio clip be present.

//  This example skips standard safety checks for brevity.)

Bruce Bullis​, is this perhaps a missed item for the "What's new in 12.0" list?

2 replies

Premiopolis
Inspiring
May 8, 2017

Looking to do the same.  Ideally when you a track item clip

(e.g. app.project.activeSequence.videoTracks[0].clips[0] -- first clip in the first video track)

In our case we're using multicam clips and we're limited unable to know much more than the fact that we've got a multicam clip, its name, start, end opacity.

What would be helpful:

- Which source (master) clip of that multicam is currently showing in the timeline.

Building on sberic's notes, we'd be interested in accessing

- The name of the original master clip

- The name local name given to it in the timeline

- The label/color of the master clip

- The label/color given to it in the timeline

Ideally we'd have the ability to change the local-to-timeline clip name and label/color

What would we do with that:

Iterate through the timeline and update timeline clip colors based on any number factors:

- Source name

- Clips of certain durations of use

- Based on metadata (which clips, for instance have we tagged as being from a particular vendor that must be replaced)

- Clips with certain effects on then (color correction, resizing, audio effects etc etc.)

Effectively we'd like to be able to build customized functions that quickly, easily change the colors in a timeline to reflect all kinds of circumstances and workflows.  That would help us enormously in quickly identifying, replacing, QCing, double-checking our work as we move through various stages of editing and delivery.

Right now we hit what seems to be an impenetrable road block, particularly limiting when we using multicam.

Bruce Bullis
Community Manager
Community Manager
May 2, 2017

No better way to do this has appeared.

How would such a capability (accessing the clip name) get used, in the workflow(s) you'd like to support?

sberic
sbericAuthorCorrect answer
Legend
January 11, 2018

This now appears to be doable!!

As of Premiere Pro CC v12.0.0 (at least?), TrackItem objects have a read+write name property! Setting that value allows you to change the name of the clip instance in the sequence timeline!

Looks like this:

// Example Video Clip name change:

app.project.activeSequence.videoTracks[0].clips[0].name = "Hello";

// Example Audio Clip name change:

app.project.activeSequence.audioTracks[0].clips[0].name = "World!";

// (NOTE: Both examples above require that a video/audio clip be present.

//  This example skips standard safety checks for brevity.)

Bruce Bullis​, is this perhaps a missed item for the "What's new in 12.0" list?

Bruce Bullis
Community Manager
Community Manager
January 11, 2018

Yep!