Changelog
Premiere Pro v26.3.0
This release of Premiere comes with a few breaking changes we want to call out, as well as a swath of new APIs worth looking through.
Breaking Changes
Sequence.setSelection
The Sequence.setSelection method is now synchronous: calling this will immediately return a boolean value instead of a Promise<boolean>.
If you are using this API with async/await, simply remove the use of await:
const project = await ppro.Project.getActiveProject();
const sequence = await project.getActiveSequence();
const selection = await sequence.getSelection();
- const success = await sequence.setSelection(selection);
+ const success = sequence.setSelection(selection);
If you are using this API with Promise.then method chaining, you'll need a bit more updating to avoid runtime issues, e.g.:
- sequence.setSelection(selection).then((success) => {
- if (success) { ... }
- });
+ const success = sequence.setSelection(selection);
+ if (success) { ... }
Action creation in locks
Creating Action instances through the various create*Action functions must now be done so while behind a project.lockedAccess(() => { ... }) call. Previously this wasn't consistently enforced across create*Action calls.
const audioTrack: AudioTrack = ...
project.lockedAccess(() => {
// Create the action here...
const action = audioTrack.createSetNameAction("MyAudioTrack");
project.executeTransasction((compoundAction: CompoundAction) => {
// ...and use it here
compoundAction.addAction(action);
}, "Rename AudioTrack");
});
Creating Actions within a lockedAccess call is important: many Actions contain data that can quickly become stale or inconsistent with other actions that might take place in Premiere (e.g., an editor is making changes that might conflict with a UXP plugin operating at the same time). Using the lockedAccess makes sure these actions are sequenced and properly applied to the Undo history.
The new @adobe/eslint-plugin-premierepro ESLint plugin offers several rules which help catch these cases to help make sure Action creation and usage in your plugin follows best practices. For more information see the documentation pages for:
- The ESLint Support fundamentals page
- The
adobe/eslint-plugin-premiereproGithub repo which includes setup and configuration details as well as docs for individual rules.
New APIs
A number of new APIs have been added in this release. More details on each can be seen in each class's documentation page. If you'd like to see more examples of using all of these new APIs in action, check out the premiere-api sample panel in the UXP Premiere Pro Samples repository.
-
AudioTracks,CaptionTracks, andVideoTracks can now be renamed via acreateSetNameActionfunction added to each class. -
ClipProjectItem.createSubClipActionlets you create sub clips from theClipProjectItem. -
EncoderManagerhas a few new functions added for helping with exporting and using AME:launchEncoderto launch your local AME instance.setEmbeddedXMPEnabledto toggle embedding XMP metadatasetSidecarXMPEnabledto toggle adding XMP metadata in a sidecar filestartBatchEncodeto start any queued encodes in AME
-
Markers now have a uniqueguidproperty. -
A new
ObjectMaskUtilsclass has been added. -
Project.createSequenceWithPresetPathhas been added to complimentProject.createSequencewhen using a Sequence Preset. -
A new
ProjectConverter.exportAAFexport function has been added for AAF support. You can see what options are available when exporting AAF project files via the separateAAFExportOptionsclass. -
You can set the
SourceMonitor's current position usingsetPosition. -
Transcripthas added functions for working with transcriptions.querySupportedLanguagesto see what language packs are currently availablehasTranscriptto check if aClipProjectItemhas already been transcribed
Premiere Pro v26.2.0
UXP Hybrid Plugin Support
Premiere Pro now officially supports UXP Hybrid Plugins, allowing developers to extend their UXP plugins with native C++ libraries. Hybrid plugins enable performance-critical workloads—such as audio/video processing, ML inference, and integration with native SDKs—to run as compiled code alongside the JavaScript-based plugin UI and logic.
- UXP Hybrid Plugin SDK: download from the Adobe Developer Console. The SDK provides C++ headers, utilities, and templates for building native addons (
.uxpaddonfiles). - New documentation: Overview, Building Hybrid Plugins, and FAQ.
Premiere Pro v25.6.0
Official Release of UXP extensibility in Premiere Pro
New Features
Premiere Pro's UXP APIs are approaching parity with what was previously possible, via CEP and ExtendScript. While the sample plugins don't (yet) exercise every call or listen to every message, the infrastructure is in place; we will continue to expand and improve the samples.
Documentation update
- Comprehensive overhaul across the entire documentation site.
- New distribution section including guides covering Adobe Marketplace submission, enterprise and independent distribution, packaging, installation, listing creation, and review guidelines.
- Expanded tutorials and recipes featuring major new content on modal dialogs, panels, TypeScript support, filesystem operations, external processes, and inter-plugin communication.
- Content reorganization with streamlined navigation, consolidation, and complete rewrites.
- New Premiere API Reference updated to v25.6.
Premiere Pro v25.2.0
Initial Public Beta Release for UXP in Premiere Pro
Release Date: December 4, 2024
New Features
- Unified Extensibility Platform (UXP) Integration: Premiere Pro Beta now supports UXP, providing a modern and streamlined approach to developing plugins.
- Enhanced Performance: UXP integration aims to improve the performance and responsiveness of plugins within Premiere Pro.
- Developer Tools: APIs are available for developers to create and manage UXP-based plugins.
Known Issues
- Limited Third-Party Support: Initial beta release may have limited support for specific third-party development workflows. Full support is expected in future updates.
- Spectrum Web Component support in UXP is not yet fully supported for Premiere Pro
- Command Plugins do not yet work as a standalone plugin
- Unloading/Reloading a plugin from the UXP Developer Tool [UDT] while it's paused on a breakpoint doesn't work
Getting Started
- Community Support: Join the Creative Cloud developer forums to share feedback, ask questions, and collaborate with other developers.