Hello !
I’ve developed a UXP extension for Premiere Pro 2025 Beta to automate video editing workflows. After extensive testing, I’ve encountered critical blocking issues that I need community help with.
Project Context
Goal: Automate YouTube workflow tasks (clip scaling, audio sync, timeline manipulation)
Target: Adobe Premiere Pro 2025 Beta
Approach: UXP Extension with ExtendScript bridge
What I’ve Successfully Tested
Native UXP API Access - This works perfectly:
const project = await Project.getActiveProject();
console.log(project.name); // ✅ Returns actual project name
const sequence = project.activeSequence;
console.log(sequence.name); // ✅ Returns actual sequence name
Manifest Configuration:
- Tested manifestVersion 4 with proper permissions
- ExtendScript permissions in hostCapabilities
- Adobe Spectrum UI integration working
ExtendScript Fallback:
- Complete ExtendScript implementation works when run manually
- Native dialog interface functional
- Timeline manipulation successful via pure ExtendScript
Critical Blocking Issues
Issue 1: uxp.host.eval() Always Returns False
console.log('uxp.host.eval exists:', !!uxp.host.eval); // Always false
Manifest Configuration Tested:
{
"manifestVersion": 4,
"requiredPermissions": {
"allowCodeGenerationFromStrings": true,
"localFileSystem": "request"
},
"hostCapabilities": {
"premierepro": {
"permissions": ["ExtendScript", "allowCodeGenerationFromStrings"]
}
}
}
Issue 2: Extension Load Timeouts
- Both complex and minimal extensions fail with “Plugin load timed out”
- Even 300-line extensions cannot load successfully
- UXP Developer Tool consistent timeout errors
Issue 3: Timeline Access Limitation
- Can access project/sequence metadata
- Cannot access clips, tracks, or timeline components
- Missing bridge between UXP API and actual editing operations
Technical Approaches Attempted
Approach 1: Direct uxp.host.eval
if (uxp.host && uxp.host.eval) {
const script = `
var clip = app.project.activeSequence.videoTracks[0].clips[0];
clip.components[1].properties[1].setValue([36, 36], true);
`;
const result = await uxp.host.eval(script);
} else {
console.log('uxp.host.eval not available'); // Always executes
}
Approach 2: Adobe OAuth2/IMS Authentication
- Researched Adobe Developer Console setup
- Implemented OAuth2 flow for Creative Cloud API
- Authentication successful but uxp.host.eval still unavailable
Approach 3: Alternative UXP APIs
// Works for metadata only
const sequenceEditor = SequenceEditor.getEditor();
// No access to actual clips or timeline manipulation
Specific Questions for Community
Question 1: uxp.host.eval Availability
Has anyone successfully used uxp.host.eval()
in Premiere Pro 2025 Beta?
- What specific authentication/setup is required?
- Are there manifest configuration requirements I’m missing?
- Is this feature disabled in the Beta version?
Question 2: Timeline Manipulation Alternatives
Are there alternative UXP APIs for direct timeline access?
- Methods to access clip properties (Motion, scale, position)?
- APIs for track manipulation?
- Undocumented UXP interfaces for editing operations?
Question 3: Extension Load Issues
Anyone experiencing UXP extension timeout issues?
- Is this a known issue with Premiere Pro Beta?
- Workarounds for load timeout problems?
- Minimum system requirements causing issues?
Question 4: Development Environment
What’s the recommended setup for UXP development with Premiere Pro?
- Specific UXP Developer Tool version compatibility?
- Premiere Pro version requirements?
- System configuration recommendations?
Current Working Solutions
ExtendScript Fallback (Fully Functional):
// This works when run manually in Premiere Pro
(function() {
var sequence = app.project.activeSequence;
var clip = sequence.videoTracks[0].clips[0];
// Direct timeline manipulation successful
for (var i = 0; i < clip.components.numItems; i++) {
var component = clip.components[i];
if (component.displayName === "Motion") {
component.properties[1].setValue([36, 36], true);
}
}
})();
System Information
- Premiere Pro: 2025 Beta (latest)
- UXP Developer Tool: v2.1+
- macOS: Latest version
- Testing: Extensive debugging over multiple sessions
Expected Outcome
I need uxp.host.eval()
functionality to bridge UXP interface with ExtendScript automation, enabling seamless workflow automation within the extension panel.
Code Available
I have a complete codebase with all testing approaches documented. Happy to share specific code snippets or collaborate on solutions.
Any insights from the community would be incredibly valuable. This seems like a fundamental UXP limitation that others might have encountered.