【Adobe Premiere Pro脚本开发】基于文档模型对象的获取属性和方法

Premiere Pro提供了一个ExtendScript API,允许访问和操纵大多数项目元素,包括元数据,导出和渲染选项。

脚本资料:https://ppro-scripting.docsforadobe.dev/application/application.html

脚本资料介绍并不完全,我你们可以通过反射来获取对象完整的属性和方法

一、通过反射获取属性和方法

function reflectProps(obj) {
    var props = obj.reflect.properties;
  
for (var i = 0, len = props.length; i < len; i++) {
        try {
            $.writeln(props[i].name + ' = ' + obj[props[i].name]);
              WriteData(props[i].name + ' = ' + obj[props[i].name])
        } catch (e) {}
    }
}

function reflectMeths(obj) {
    var meths = obj.reflect.methods;
    for (var i = 0, len = meths.length; i < len; i++) {
        try {
            $.writeln(meths[i].name + '();');
            WriteData(meths[i].name + '();')
        } catch (e) {}
    }
}
function WriteData(Txt)
{  
	var file = new File(Folder.desktop + "/rflection.txt");  
	 file.open("a", "TEXT",null);  
      file.encoding = "UTF8";  
 	file.seek(0,2);  
 	$.os.search(/windows/i)  != -1 ? file.lineFeed = 'windows'  : file.lineFeed = 'macintosh';  
	file.writeln(Txt);  
	file.close();  
} 
// Example of use:
   //     var r = new ActionReference();  
   //      var d = new ActionDescriptor();  	 
	//	r.putEnumerated(stringIDToTypeID("layer"), stringIDToTypeID("ordinal"), stringIDToTypeID("targetEnum")); 
     //     d.putReference(charIDToTypeID('null'), r);   
     //   var options = executeAction(charIDToTypeID( "getd" ), d, DialogModes.NO);
        //app.activeDocument.activeLayer
        
 var lay =app 
 WriteData("\n***************"+"["+lay.constructor.name+" ]"+" properties **********************\n")
 reflectProps(lay);
 WriteData("\n***************"+"["+lay.constructor.name+" ]"+"  methods **********************\n")
  reflectMeths(lay);

二、版本差异

红色为新版本增加的属性和方法

Pr 2017:

***************[Application ] properties **********************

version = 11.0.0
build = 154
getPProPrefPath = C:/Users/test/Documents/Adobe/Premiere Pro/11.0/Profile-test/
getPProSystemPrefPath = C:/Program Files/Common Files/Adobe/Adobe Premiere Pro CC 2017/
project = [object Project]
anywhere = [object Anywhere]
encoder = [object Encoder]
userGuid = 19EF2B355F62E9E70A495C64@AdobeID
getAppPrefPath = C:/Users/test/Documents/Adobe/Premiere Pro/11.0/Profile-test/
getAppSystemPrefPath = C:/Program Files/Common Files/Adobe/Adobe Premiere Pro CC 2017/
csxs = [object Csxs]
metadata = [object Metadata]
getLookInfo = {}
__proto__ = [object Object]

***************[Application ]  methods **********************

bind();
unbind();
setTimeout();
isDocumentOpen();
isDocument();
openDocument();
quit();
trace();
openFCPXML();
setSDKEventMessage();
setScratchDiskPath();
broadcastPrefsChanged();
setExtensionPersistent();
getEnableProxies();
setEnableProxies();
getCCXUserJSONData();
 

 

 Pr2021:

***************[Application ] properties **********************

version = 15.2.0
build = 35
getPProPrefPath = C:/Users/test/Documents/Adobe/Premiere Pro/15.0/Profile-test/
getPProSystemPrefPath = C:/Program Files/Common Files/Adobe/Adobe Premiere Pro 2021/
project = [object Project]
anywhere = [object Anywhere]
encoder = [object Encoder]
userGuid = 
getAppPrefPath = C:/Users/test/Documents/Adobe/Premiere Pro/15.0/Profile-test/
getAppSystemPrefPath = C:/Program Files/Common Files/Adobe/Adobe Premiere Pro 2021/
metadata = [object Metadata]
getLookInfo = {}
learnPanelContentDirPath = C:\Users\Public\Documents\Adobe\Premiere Pro 2021\Learn Panel\
learnPanelExampleProjectDirPath = C:\Users\Public\Documents\Adobe\Premiere Pro\15.0\Tutorial\Going Home project\
path = C:\Program Files\Adobe\Adobe Premiere Pro 2021\
production = null
projectManager = [object ProjectManager]
projects = [object ProjectCollection]
properties = [object Properties]
sourceMonitor = [object SourceMonitor]

__proto__ = [object Object]

***************[Application ]  methods **********************

bind();
unbind();
setTimeout();
isDocument();
isDocumentOpen();
openDocument();
quit();
trace();
openFCPXML();
setSDKEventMessage();
setScratchDiskPath();
broadcastPrefsChanged();
setExtensionPersistent();
getEnableProxies();
setEnableProxies();
getConstant();
getCurrentProjectViewSelection();
getProjectFromViewID();
getProjectViewIDs();
getProjectViewSelection();
getWorkspaces();
isWindowVisible();
newPrProduction();
openPrProduction();
refresh();
setEnableTranscodeOnIngest();
setProjectViewSelection();
setWorkspace();
showCursor();
write();
addEventListener();
removeEventListener();
dispatchEvent();
onItemAddedToProjectSuccess();
enableQE();

三、接口用法

1.判断是否有文档打开

app.isDocumentOpen();

2、设置工作区,pr2020版本以上

app.setWorkspace("编辑");

3.以JSON字符串形式从主机应用程序获取用户个性化数据。

 app.getCCXUserJSONData();

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
中文名: Adobe Premiere Pro1.5标准培训教材 作者: 李涛 资源格式: PDF 版本: 扫描版 出版社: 人民邮电出版社书号: 9787115122797发行时间: 2004年7月 地区: 大陆 语言: 简体中文 简介: 内容简介: 根据Adobe中国教育认证计划发展的需要,Adobe公司北京代表处编写了这套正规的、专业的ACTC培训用标准教材,以进一步提高整个教育计划的专业水准。《Adobe Premiere Pro1.5标准培训教材》是Adobe中国教育认证计划标准培训教材中的一本。为了让读者系统而快速地学习Adobe Premiere Pro 1.5软件,《Adobe Premiere Pro1.5标准培训教材》详尽地介绍了Adobe Premiere Pro 1.5的使用方法、应用技巧,使读者可以在边阅读边练习的过程中熟悉软件的基本操作方法,影片的装配与编辑,切换、抠像与调色,运动设置与其他特效,字幕的制作,音频的处理,以及输出技术等内容。 《Adobe Premiere Pro1.5标准培训教材》内容由浅入深、循序渐进,不仅适合于初学者学习使用,而且对有一定Adobe Premiere Pro 1.5基础的朋友也大有裨益。《Adobe Premiere Pro1.5标准培训教材》作为Adobe授权培训中心(ACTC)的标准培训教材,同时也非常适合其他各类培训班的学员及广大自学人员参考阅读。 目录: 第1章 Premiere Pro 1.5概论 1 1.1 Premiere的历史 1 1.2 功能简介 3 1.3 安装Premiere Pro 1.5 5 1.4 色彩基础知识 5 1.5 视频基础知识 8 第2章 Premiere Pro 1.5初识 13 2.1 常用窗口 13 2.2 菜单栏 18 2.3 设置工作窗口 22 2.4 定制快捷键 23 第3章 Premiere Pro 1.5快速入门 25 3.1 非线性编辑 25 3.2 收集素材和制定脚本 28 3.3 开始一个新项目 31 3.4 导入素材 32 3.5 剪裁素材 33 3.6 组接片段 34 3.7 使用切换 36 3.8 设置运动 39 3.9 嵌套序列 42 3.10 应用特效 42 3.11 加入声音 44 3.12 保存项目 45 3.13 预演项目 45 3.14 渲染影片 46 第4章 Premiere Pro 1.5采集素材 49 4.1 硬件要求 49 4.2 采集和上载视频 52 第5章 Premiere Pro 1.5影片装配 57 5.1 制定脚本 57 5.2 导入和管理素材 57 5.3 影片装配 75 第6章 Premiere Pro 1.5编辑影片 85 6.1 剪辑素材 85 6.2 分离素材 112 6.3 群组和嵌套 117 6.4 创建新元素 118 第7章 Premiere Pro 1.5使用切换 123 7.1 增加切换 123 7.2 改变切换设置 124 7.3 3D Motion 128 7.4 Dissolve 132 7.5 Iris 135 7.6 Map 138 7.7 Page Peel 140 7.8 Slide 142 7.9 Specital Effect 148 7.10 Stretch 151 7.11 Wipe 153 7.12 Zoom 160 第8章 Premiere Pro 1.5抠像和调色 163 8.1 认识抠像 163 8.2 抠像效果 165 8.3 调色基础 171 8.4 高级调色 187 第9章 Premiere Pro 1.5运动设置 195 9.1 创建合成 195 9.2 设置运动 197 9.3 创建阴影 199 9.4 其他属性设置 201 第10章 Premiere Pro 1.5其他特效 203 10.1 Blur&Sharpen; 203 10.2 Channel 208 10.3 Distort 210 10.4 Noise 223 10.5 Perspective 224 10.6 Pixelate 228 10.7 Render 230 10.8 Stylize 234 10.9 Time 243 10.10 Transform 245 10.11 Video 248 10.12 第三方插件 249 第11章 Premiere Pro 1.5制作字幕 269 11.1 使用字幕窗口工具箱 269 11.2 风格化设置 271 11.3 绘制图形 280 11.4 创建飞滚字幕 284 11.5 应用模板 285 第12章 Premiere Pro 1.5处理音频 287 12.1 音频混合器 287 12.2 实时调节音频 291 12.3 录音和子轨道 294 12.4 5.1声道音效的设置 295 12.5 应用音频特效 297 12.6 分离和联结视音频 302 第13章 Premiere Pro 1.5输出 305 13.1 输出节目 305 13.2 输出影片到磁带 313 13.3 编码解码器 315

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值