Add a unique nodeId identifier to VideoClipTrackItem and ProjectItem

The current practice of using the name property to filter and locate items in the timeline (VideoClipTrackItem) and project panel (ProjectItem) is fundamentally unreliable. This approach suffers from critical flaws:

  1. Non-Uniqueness: It is common for users to have multiple items with the exact same name (e.g., multiple shot_v1 clips, several bgm audio tracks, or duplicated assets).
  2. Mutability: Users can freely rename items at any time, causing name-based lookup logic to break unexpectedly and introducing bugs that are difficult to trace.
  3. Fragility: This makes automation scripts and plugins brittle. Any change to an item’s name by the user can disrupt their functionality.

Relying on name as a unique identifier is an anti-pattern that significantly reduces the robustness and reliability of code built on top of the API.

// CURRENT: Finding an item by name (Unreliable)
let fragileItem = project.findItemByName("MyClipName");
if (fragileItem) {
    // If another item named "MyClipName" exists, this logic fails.
    doSomething(fragileItem);
}
2 Likes

related: Is there a way to get the ID of a clip? : PremierePro

As mentioned elsewhere (I think there are now 4 different topics requesting the same thing), IDs will be available in the next SDK pre-release.

1 Like

Regarding your technical support, I just encountered this issue: I cannot set entry and exit points for the sequence, and AME must be installed to export audio