二次开发 popcorn maker,使其符合项目要求的一些感想

来源:互联网 发布:java mockito 编辑:程序博客网 时间:2024/06/15 08:35

简介:

popcorn maker的脚本相当负责,也很耗时间,为了符合项目的需求,

需求有几点:

1、固定轨道,视频音频背景音乐,字幕图片都各自一条轨道;

2、开发字幕等插件;

3、添加资源库功能,可以上传资源【包括图片,视频音频】,删除资源。

4、添加素材编辑的窗口,当打开素材编辑窗口时候,假如选中了视频或者音频的track event那么就显示该event的编辑信息,假如没有的话,就显示暂时没有选中素材的窗口;

5、给每个视频或者音频的track event添加分割功能,使其可以分割成为多个track event,用户可以选择删除哪一个片段。

6、微调,不允许调整视频窗口大小,不允许拖动字幕。。。。


a

/需求一的实现也相当不容易,因为popcorn maker本身是允许随意拖动新建轨道的,它里面有一个genereateSafeTrackEvent的方法(大概的名字),可以生成一个安全的track event【track是轨道,track event是轨道上的项目,中文不知道怎么叫】,这时候就需要在它各种拖动移动生成track event的时候检测是否碰撞;而且不允许它将track event拖动到别的轨道,于是,又要限制拖动方向;3、当用户拖动轨道上的track event的时候必须检测碰撞,碰撞了就不允许拖动。4、popcorn maker的项目是有初始化的项目信息的,原本的名字叫 default-config.json或者 save-data.json这两个都要注意,需要设置成固定轨道的数据。5、视频或者音频的编辑数据里面有调整in out以及长度 duration,及start end等位置的参数,这些参数的调整有可能导致两个track event碰撞,所以这些地方全部都要统统进行碰撞检测,设定限制值。


b

字幕的插件可以参考popup这个插件的开发方式。

c

添加资源库首先先要编写一个editor类型的插件,然后再【因为要用到第三方的数据,所以要跨域,这时候上次写的flash跨域插件就有作用了】跨域获取资源的列表数据,删除操作也这样。

4、也是一个插件的编写。

5、这是对sequecer editor添加一个参数。然后计算当前时间进度进行分割。

6、很多很多细节。。。


下面这是一个前端界面的成品:







0 0
原创粉丝点击