CN102567000B - 一种支持动态参数的特技插件的方法和装置 - Google Patents
一种支持动态参数的特技插件的方法和装置 Download PDFInfo
- Publication number
- CN102567000B CN102567000B CN201010617916.3A CN201010617916A CN102567000B CN 102567000 B CN102567000 B CN 102567000B CN 201010617916 A CN201010617916 A CN 201010617916A CN 102567000 B CN102567000 B CN 102567000B
- Authority
- CN
- China
- Prior art keywords
- node
- parameter
- dynamic
- stunt
- tree
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种支持动态参数的特技插件的方法和装置,所述方法包括以下步骤:获得特技的参数树信息;寻找动态参数所在父节点的信息;如果是添加动态节点,创建一个新的叶子节点添加到参数中,或如果是删除动态节点,从参数树中删除该节点。通过本发明实施例,提供了一套完整的机制用于实现特技能动态的添加或删除参数,使得添加得到的动态节点和静态节点具备相同的编辑功能,也可以进行关键帧曲线的调节,从而增加了特技插件的可交互性和可操作性。
Description
技术领域
本发明实施例涉及非线性编剪辑软件及视音频后期特效处理与合成软件领域,特别涉及一种支持动态参数的特技插件的方法和装置。
背景技术
在非线性编剪辑软件及视音频后期特效处理与合成软件中,我们往往需要有针对性的开发一些相应的特技插件,以配合用户完成一些具体的功能。由于编辑素材的多样性,以及功能的复杂性的增加,往往需要更多来自于与用户的交互,这样才能得到更精准的结果,因此,能在特技插件中动态的添加(删除)一些相关联的调节参数已经越来越重要了。
考虑到每一个具体特技都具备一个完整的功能,而这些功能都存在一定的差异性,对于实现每种特技能动态的添加(删除)参数的方法都不同,操作起来非常复杂,效率低。
发明内容
本发明实施例提供一种支持动态参数的特技插件的方法和装置,以实现提供一套完整的机制用于实现特技能动态的添加(删除)参数。
为达到上述目的,本发明实施例一方面提供一种支持动态参数的特技插件的方法,包括:
对于每一个特技插件,都有其对应的参数,每个参数在不同的特技里代表的含义也不尽相同,这些参数呈树形结构保存,特技节点为参数树的根节点,每一个参数对应于参数树中的一个叶子节点。当我们要添加一个新的节点时,首先根据特技名称找到其特技的跟节点,然后根据参数的性质信息找到其在参数树中对应的父节点的参数地址,再通过参数在父节点中的位置确定其所在次序,构建出相应的参数地址,然后根据此参数地址创建一个新的叶子节点添加到参数树中,同样的,如果要删除一个动态节点,首先根据节点的信息获得其在参数树中的参数地址,然后将其从参数树中删除。
另一方面,本发明实施例还提供一种支持动态参数的特技插件的装置,包括:
获取模块,用于获得特技的参数树信息;
寻找模块,用于寻找动态参数所在父节点的信息;
添加动态节点模块,用于添加动态节点时,创建一个新的叶子节点添加到参数中;
删除动态节点模块,用于删除动态节点时,从参数树中删除该节点。
与现有技术相比,本发明实施例具有以下优点:通过本发明实施例,提供了一套完整的机制用于实现特技能动态的添加(删除)参数,使得添加得到的动态节点和静态节点具备相同的编辑功能,也可以进行关键帧曲线的调节,从而增加了特技插件的可交互性和可操作性。
附图说明
图1为本发明实施例一中支持动态参数的特技插件的方法的流程图;
图2为本发明实施例二中支持动态参数的特技插件的方法的具体实现流程图;
图3为本发明实施例三中支持动态参数的特技插件的装置的结构图。
具体实施方式
如图1所示,为本发明实施例一提供的支持动态参数的特技插件的方法的流程图。
对于每一个特技插件,都有其对应的参数,每个参数在不同的特技里代表的含义也不尽相同,这些参数呈树形结构保存在相应特技的参数树上,并一一对应一个位置,称之为参数在参数树中的参数地址,参数地址用用变量Index标记该参数在同级参数中次序。特技节点为参数树的根节点,每一个参数对应于参数树中的一个叶子节点。
S101,获得特技的参数树信息。
S102,如果是添加一个新的动态节点,当我们要添加一个新的节点时,首先根据特技名称找到其特技的根节点,然后根据参数的性质信息找到其在参数树中对应的父节点的参数地址,再通过参数在父节点中的位置确定其所在次序,构建出相应的参数地址,然后根据此参数地址创建一个新的叶子节点添加到参数树中。
S103,如果要删除一个动态节点,首先根据节点的信息获得其在参数树中的参数地址,然后将其从参数树中删除。
我们将参数划分为两大类:
静态参数:这一类参数是特技的基本参数,由特技本身的属性确定,只能对这类参数进行编辑,但不能进行添加或删除。
静态参数的Index都为0。
动态参数:这类参数为在特技在实际使用过程中,由用户或系统根据实际需要创建,并由用户和系统进行维护,不仅可以编辑这类参数,同时还可以对这类参数进行添加或删除操作。
动态参数的Index记录其在父节点下的次序,顺序排列。
由于特技之间的差异性,对于特技自定义的动态参数所代表的含义也都不尽相同,因此为了能统一的对这类参数进行调度,我们将这类参数定义为抽象数据类型信息对象,并将这类参数的信息保存在特技的参数树对应节点的句柄上。这样,当我们添加(删除)一个动态参数时,我们首先在特技的参数树上插入(删除)一个叶子节点,并创建一个相应的句柄,然后再创建一个与之对应的抽象数据类型信息对象,并将创建得到的抽象数据类型信息对象保存到节点句柄上,供我们操作使用。这样,我们操作这个动态添加的节点和操作这个特技的静态节点就变的一致了。
具体的流程如下:
如图2所示,为本发明实施例二提出的支持动态参数的特技插件的方法的具体实现流程图,可以包括:
S201,获得特技的参数树信息。
S202,寻找动态参数所在父节点的信息。如果是添加动态节点,跳转到步骤S203,如果是删除节点,跳转到步骤S208。
S203,根据操作类型确定参数的父节点信息ParentNode。
S204,计算添加节点的Index信息。
S205,构建参数地址ParamAdder。
S206,根据得到的ParamAdder信息,将其插入到ParentNode下,得到插入的动态参数节点node。
S207,创建一个相应的类型信息对象数据ArbitraryData,并将其保存到Node的句柄上。
S208,获得删除动态参数的同类参数中的Index。
S209,计算当前动态参数的参数地址ParamAdder。
S210,从参数树中根据ParamAdder找到对应的动态参数的节点信息Node。
S211,从参数树中删除该节点Node。
这样,添加得到的动态节点和静态节点具备相同的编辑功能,也可以进行关键帧曲线的调节,从而增加了特技插件的可交互性和可操作性。
如图3所示,为本发明实施例三提供的支持动态参数的特技插件的装置结构图,包括:
获取模块31,用于获得特技的参数树信息;
寻找模块32,用于寻找动态参数所在父节点的信息;
添加动态节点模块33,用于创建一个新的叶子节点添加到参数中,具体包括:如果是添加一个新的动态节点,当我们要添加一个新的节点时,首先根据特技名称找到其特技的根节点,然后根据参数的性质信息找到其在参数树中对应的父节点的参数地址,再通过参数在父节点中的位置确定其所在次序,构建出相应的参数地址,然后根据此参数地址创建一个新的叶子节点添加到参数树中;
删除动态节点模块34,用于从参数树中删除该节点,具体包括:如果要删除一个动态节点,首先根据节点的信息获得其在参数树中的参数地址,然后将其从参数树中删除。
其中,添加动态节点模块33可以包括:
计算子模块331,用于从父节点信息中获得动态节点的个数,然后计算当前添加的节点的Index;
生成新节点子模块332,用于根据得到的Index信息得到新添加节点的参数地址,并依此生成一个新的节点;
创建模块333,用于创建一个抽象数据类型信息对象数据;
保存模块334,用于将创建得到的抽象数据类型信息对象信息保存在节点的句柄上。
其中,删除动态节点模块34可以包括:
计算子模块341,用于从父节点信息中获得动态节点的个数,然后计算当前添加的节点的Index;
生成新节点子模块342,用于根据得到的Index信息得到新添加节点的参数地址,并依此生成一个新的节点;
创建模块343,用于创建一个抽象数据类型信息对象数据;
保存模块344,用于将创建得到的抽象数据类型信息对象信息保存在节点的句柄上。
这样,添加得到的动态节点和静态节点具备相同的编辑功能,也可以进行关键帧曲线的调节,从而增加了特技插件的可交互性和可操作性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以可借助软件加必要的通用硬件平台的方式来实现基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (9)
1.一种支持动态参数的特技插件的方法,其特征在于,包括:
获得特技的参数树信息;
寻找动态参数所在父节点的信息;
如果是添加动态节点,创建一个新的叶子节点添加到参数中,或如果是删除动态节点,从参数树中删除该节点。
2.如权利要求1所述的方法,其特征在于,还包括:
对于每一个特技插件,都有其对应的参数,每个参数在不同的特技里代表的含义不相同,所述参数呈树形结构保存,特技节点为参数树的根节点,每一个参数对应于参数树中的一个叶子节点。
3.如权利要求2所述的方法,其特征在于,所述如果是添加动态节点,创建一个新的叶子节点添加到参数中,具体包括:
如果是添加一个新的动态节点时,首先根据特技名称找到其特技的根节点,然后根据参数的性质信息找到其在参数树中对应的父节点的参数地址,再通过参数在父节点中的位置确定其所在次序,构建出相应的参数地址,然后根据此参数地址创建一个新的叶子节点,添加到参数树中。
4.如权利要求2所述的方法,其特征在于,所述当删除动态节点时,从参数树中删除该节点,具体包括:
首先根据节点的信息获得其在参数树中的参数地址,然后将其从参数树中删除。
5.如权利要求3或4所述的方法,其特征在于,还包括:
将特技自定义的动态参数定义为抽象数据类型信息对象,并将这类参数的信息保存在特技的参数树对应节点的句柄上。
6.如权利要求3或4所述的方法,其特征在于,所述参数信息记录在相应特技的参数树上,并一一对应一个位置,即参数在参数树中的参数地址,所述参数地址用用变量Index标记该参数在同级参数中次序。
7.一种支持动态参数的特技插件的装置,其特征在于,包括:
获取模块,用于获得特技的参数树信息;
寻找模块,用于寻找动态参数所在父节点的信息;
添加动态节点模块,用于添加动态节点时,创建一个新的叶子节点添加到参数中;
删除动态节点模块,用于删除动态节点时,从参数树中删除该节点。
8.如权利要求7所述的装置,其特征在于,所述添加动态节点模块还包括:
计算子模块,用于从父节点信息中获得动态节点的个数,然后计算当前添加的节点的Index;
生成新节点子模块,用于根据得到的Index信息得到新添加节点的参数地址,并依此生成一个新的节点;
创建模块,用于创建一个抽象数据类型信息对象数据;
保存模块,用于将创建得到的抽象数据类型信息对象信息保存在节点的句柄上。
9.如权利要求7所述的装置,其特征在于,所述删除动态节点模块还包括:
计算子模块,用于从父节点信息中获得动态节点的个数,然后计算当前添加的节点的Index;
生成新节点子模块,用于根据得到的Index信息得到新添加节点的参数地址,并依此生成一个新的节点;
创建模块,用于创建一个抽象数据类型信息对象数据;
保存模块,用于将创建得到的抽象数据类型信息对象信息保存在节点的句柄上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010617916.3A CN102567000B (zh) | 2010-12-31 | 2010-12-31 | 一种支持动态参数的特技插件的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010617916.3A CN102567000B (zh) | 2010-12-31 | 2010-12-31 | 一种支持动态参数的特技插件的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102567000A CN102567000A (zh) | 2012-07-11 |
CN102567000B true CN102567000B (zh) | 2016-08-17 |
Family
ID=46412514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010617916.3A Expired - Fee Related CN102567000B (zh) | 2010-12-31 | 2010-12-31 | 一种支持动态参数的特技插件的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102567000B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105528265B (zh) * | 2015-12-22 | 2018-08-10 | 深圳市东微智能科技股份有限公司 | 一种参数保存的方法及电子装置 |
CN107992348B (zh) * | 2017-10-31 | 2020-09-11 | 厦门宜弘电子科技有限公司 | 基于智能终端的动态漫画插件处理方法及系统 |
CN116416120A (zh) * | 2021-12-30 | 2023-07-11 | 北京字跳网络技术有限公司 | 一种图像特效处理方法、装置、设备及介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1307584C (zh) * | 2003-11-17 | 2007-03-28 | 中兴通讯股份有限公司 | 一种用二维表实现的树的存储、访问的方法 |
US7110605B2 (en) * | 2005-02-04 | 2006-09-19 | Dts Az Research, Llc | Digital intermediate (DI) processing and distribution with scalable compression in the post-production of motion pictures |
JP3925557B2 (ja) * | 2005-02-28 | 2007-06-06 | オムロン株式会社 | パラメータ設定装置 |
CN100388318C (zh) * | 2005-11-28 | 2008-05-14 | 北京航空航天大学 | 一种基于状态集的Shader三维图形绘制系统和绘制方法 |
CN101448167B (zh) * | 2007-11-28 | 2011-12-28 | 新奥特(北京)视频技术有限公司 | 任意区域的色彩校正特技调节方法及其系统 |
CN101448096B (zh) * | 2007-11-28 | 2012-05-23 | 新奥特(北京)视频技术有限公司 | 一种多路视频信号合成处理多轨特技的方法 |
-
2010
- 2010-12-31 CN CN201010617916.3A patent/CN102567000B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN102567000A (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101348401B1 (ko) | 사용자 인터페이스 렌더링 방법, 이를 실행하는 사용자 인터페이스 렌더링 서버 및 이를 저장한 기록 매체 | |
CN106156254A (zh) | 信息分享方法及装置 | |
CN103902520B (zh) | 主题编辑方法和移动终端 | |
CN106852178A (zh) | 动画架构 | |
CN105100462A (zh) | 一种自定义编辑主题的短信系统 | |
CN106933837A (zh) | 一种数据库表模型及创建方法 | |
CN105183475A (zh) | 一种用户自定制门户网站个性化页面的方法和系统 | |
CN105843618A (zh) | 一种自定义编辑主题的桌面系统 | |
CN103092603B (zh) | 播放器配置方法和系统以及相应的播放器 | |
CN104899257B (zh) | 分布式数据仓库中的数据更新方法和装置 | |
CN105404507A (zh) | 一种流程模板的构建方法及系统 | |
CN106331869A (zh) | 一种基于视频的图片重编辑方法及装置 | |
CN102567000B (zh) | 一种支持动态参数的特技插件的方法和装置 | |
CN103207918B (zh) | 一种演示文稿的动画效果管理方法、系统及装置 | |
WO2017113317A1 (zh) | 一种文件编辑方法和文件编辑器 | |
CN107103035B (zh) | 本地表数据更新方法及装置 | |
CN105389184A (zh) | 产品界面信息的配置方法及装置 | |
CN105956132A (zh) | 一种垃圾数据清理方法及其系统 | |
CN105511736A (zh) | 调整菜单的方法及系统 | |
CN106502680B (zh) | 一种通过可视化界面进行图元扩展的方法 | |
CN105843824A (zh) | 多对象复制方法及装置 | |
CN108958981A (zh) | 一种基于docker的镜像保存方法及相关装置 | |
CN105867995A (zh) | 一种可扩展标记语言文件的编辑方法及装置 | |
CN103942213A (zh) | 数据分页方法及装置 | |
CN104537012A (zh) | 数据处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160817 Termination date: 20161231 |