一种基于IOS设备的视频编辑方法及装置制造方法及图纸

技术编号:10512370 阅读:136 留言:0更新日期:2014-10-08 13:35
本发明专利技术提供了一种基于IOS设备的视频编辑方法,所述IOS设备设置有第一缓冲区域以及第二缓冲区域,所述方法包括:在接收视频编辑指令后,判断所述第一缓冲区域的地址对应的内存地址中是否存在第一编辑数据,所述视频编辑指令包括目标富媒体数据的路径信息;若是,则获取所述第一编辑数据并编码;若否,则生成第一数据获取请求;依据所述第一数据获取请求判断所述第二缓冲区域中是否存在第二编辑数据;若是,则获取所述第二编辑数据并对所述第二编辑数据进行渲染,生成第一编辑数据存储在第一缓冲区域中;否则,则依据所述路径信息获取对应的目标富媒体数据,对所述目标富媒体数据进行解码,得到第二编辑数据存储在第二缓冲区域中。

【技术实现步骤摘要】
一种基于IOS设备的视频编辑方法及装置
本专利技术涉及视频编辑
,特别是涉及一种基于IOS设备的视频编辑装置及一种基于IOS设备的视频编辑方法。
技术介绍
近年来,随着计算机图形图像技术的迅速发展,图片视频编辑技术逐渐成熟,已成为制作影视节目、数字多媒体的主要工具。其中,图片视频编辑是指对图片或者视频进行加工,例如:将多张高清视频合成一个连续的视频,将完整视频裁剪成多段视频,合并多个视频为单个视频,添加背景音乐,改变视频的颜色等对视频进行的操作。但是,在现有的图片视频编辑处理过程中,若需要对视频添加特效,需要经过多次编码解码的过程,耗费时间长,生成视频速度缓慢。例如,若采用多媒体框架GPUimage做一个贴素材动画以及带3个filter的风格,制作过程为:先将视频或者拼接的视频进行贴素材动画处理,生成一个0.mp4;进行filter处理时,是将0.mp4进行解码,然后filter处理,生成1.mp4;整个过程做了2次解码,2次编码,大大浪费了时间,而且3个filter必须写在一个文件中,要修改只能程序员去修改渲染语言。
技术实现思路
本专利技术实施例所要解决的技术问题是提供一种基于IOS设备的视频编辑方法,用以解决视频编辑过程中,对视频编码解码次数多导致的生成视频速度缓慢的问题。相应的,本专利技术实施例还提供了一种基于IOS设备的视频编辑装置,用以保证上述方法的实现及应用。为了解决上述问题,本专利技术实施例公开了一种基于IOS设备的视频编辑装置,包括指令接收模块、编码模块、渲染模块、解码模块,所述编码模块与所述渲染模块间设置有大小为第一预设阈值的第一缓冲区域,所述解码模块与所述渲染模块间设置有大小为第二预设阈值的第二缓冲区域,所述IOS设备预先设置有第一缓冲区域地址与内存地址的映射关系,其中,指令接收模块,用于接收视频编辑指令,并将所述视频编辑指令发送至编码模块和/或解码模块,所述视频编辑指令包括目标富媒体数据的路径信息;编码模块,用于依据所述视频编辑指令生成第一数据获取请求,将所述第一数据获取请求发送至渲染模块,以及,从所述第一缓冲区域的地址对应的内存地址中获取一帧第一编辑数据,对所述第一编辑数据进行编码,其中所述第一编辑数据为经过渲染的数据;渲染模块,用于在收到第一数据获取请求时,或在监测到所述第一缓冲区域中的数据量小于第一预设阈值时,判断所述第二缓冲区域是否存在第二编辑数据,若是,则从所述第二缓冲区域中获取一帧第二编辑数据,对所述第二编辑数据进行渲染生成第一编辑数据,将所述第一编辑数据存储到第一缓冲区域中;若否,则生成第二数据获取请求,将所述第二数据获取请求发送至解码模块;所述第二编辑数据为经过解码但未经过渲染的数据;解码模块,用于在接收到所述视频编辑指令时,或在接收到所述第二数据获取请求时,依据所述路径信息获取对应的目标富媒体数据,对所述目标富媒体数据进行解码,得到第二编辑数据存储在第二缓冲区域中,以及,实时监测所述第二缓冲区域的所述第二编辑数据的数据量,在所述数据量大于或等于第二预设阈值时,停止解码所述目标富媒体数据,在所述数据量小于第二预设阈值时,继续解码所述目标富媒体数据。优选地,所述目标富媒体数据包括目标视频数据和/或目标图片数据,所述第二编辑数据包括第一图像数据,和/或第二图像数据,所述解码模块包括:视频解码子模块,用于对所述目标视频数据进行解码,得到第一图像数据;图片解码子模块,用于对所述目标图片数据进行解码,得到第二图像数据。优选地,所述IOS设备具有avassetreader接口,所述第二缓冲区域位于显存中,所述IOS设备预设有内存地址与第二缓冲区域地址的映射关系,所述视频解码子模块包括:解码单元,用于采用所述avassetreader接口在内存中对所述目标视频数据进行解码,得到第一图像数据;转换单元,用于获取所述内存的内存地址,按照所述内存地址与第二缓冲区域地址的映射关系,将所述第一图像数据的存储地址由所述内存地址转换成对应的第二缓冲区域地址。优选地,所述解码单元还用于,初始化所述avassetreader接口,设置输出的一帧第一图像数据的分辨率大小。优选地,所述解码单元还用于,采用所述avassetreader接口在内存中对所述目标视频数据进行解码,得到与所述第一图像数据对应的音频数据,所述音频数据存储在内存中。优选地,所述与所述第一图像数据对应的音频数据,采用如下方式获得:获取所述目标视频数据的帧率;计算预设的音频数据采样率/帧率,得到一帧第一图像数据对应的音频数据。优选地,所述视频编辑装置还包括:音频渲染模块,用于在内存中对所述音频数据进行渲染。优选地,所述渲染模块还用于,将所述第一缓冲区域中的第一编辑数据从第二缓冲区域中读取到内存中。优选地,所述IOS设备具有avassetwriter接口,所述编码模块还用于,采用所述avassetwriter接口在内存中对所述第一编辑数据进行编码,最终生成视频文件。优选地,所述编码模块还用于,在内存中获取每一帧第一编辑数据对应的音频数据;在内存中对所述第一编辑数据以及对应的音频数据进行编码。优选地,所述第二缓冲区域位于显存中,所述图片解码子模块还用于,采用多线程在内存中对所述目标图片数据进行解码,得到第二图像数据,将所述内存中的第二图像数据复制到第二缓冲区域中。优选地,所述第一数据获取请求包括视频编辑样式信息,所述渲染模块包括:数据接收子模块,用于接收所述第一图像数据和/或所述第二图像数据;解析子模块,用于解析所述视频编辑样式信息,获得一个或多个特效元素;顺序确定子模块,用于在所述特效元素为多个时,确定所述特效元素的组合顺序;特效添加子模块,用于按照所述组合顺序在所述第一图像数据中依次添加对应的特效元素,生成第三图像数据;第一编辑数据生成子模块,用于合并所述第三图像数据以及所述第二图像数据,生成第一编辑数据。优选地,所述特效添加子模块还用于,采用着色语言GLSL按照所述组合顺序在所述第一图像数据中依次添加对应的特效元素,生成第三图像数据。优选地,所述特效元素包括裁剪信息、尺寸缩放信息、颜色编辑信息、透明度编辑信息、模糊效果信息。优选地,所述路径信息有多个,所述视频编辑指令包括多个路径信息的导入顺序,则对应的目标富媒体数据有多个,所述解码模块还用于,在接收到所述第二数据获取请求时,依据所述导入顺序确定所述多个富媒体数据的解码顺序;按照所述解码顺序对所述目标富媒体数据进行解码。优选地,所述渲染模块位于第一线程中,所述编码模块位于第二线程中,所述第一线程与第二线程并行运行。本专利技术实施例还公开了一种基于IOS设备的视频编辑方法,所述IOS设备设置有大小为第一预设阈值的第一缓冲区域以及大小为第二预设阈值的第二缓冲区域,所述第一缓冲区域用于存储第一编辑数据,所述第二缓冲区域用于存储第二编辑数据,所述第一编辑数据为经过渲染的数据,所述第二编辑数据为经过解码但未渲染的数据,以及,预先设置有第一缓冲区域地址与内存地址的映射关系,所述方法包括:在接收视频编辑指令后,判断所述第一缓冲区域的地址对应的内存地址中是否存在第一编辑数据,所述视频编辑指令包括目标富媒体数据的路径信息;若所述内存中存在所述第一编辑数据,则获取所述第一编辑数据并编码;若所述第二缓冲区本文档来自技高网...
一种基于IOS设备的视频编辑方法及装置

【技术保护点】
一种基于IOS设备的视频编辑装置,其特征在于,包括指令接收模块、编码模块、渲染模块、解码模块,所述编码模块与所述渲染模块间设置有大小为第一预设阈值的第一缓冲区域,所述解码模块与所述渲染模块间设置有大小为第二预设阈值的第二缓冲区域,所述IOS设备预先设置有第一缓冲区域地址与内存地址的映射关系,其中,指令接收模块,用于接收视频编辑指令,并将所述视频编辑指令发送至编码模块和/或解码模块,所述视频编辑指令包括目标富媒体数据的路径信息;编码模块,用于依据所述视频编辑指令生成第一数据获取请求,将所述第一数据获取请求发送至渲染模块,以及,从所述第一缓冲区域的地址对应的内存地址中获取一帧第一编辑数据,对所述第一编辑数据进行编码,其中所述第一编辑数据为经过渲染的数据;渲染模块,用于在收到第一数据获取请求时,或在监测到所述第一缓冲区域中的数据量小于第一预设阈值时,判断所述第二缓冲区域是否存在第二编辑数据,若是,则从所述第二缓冲区域中获取一帧第二编辑数据,对所述第二编辑数据进行渲染生成第一编辑数据,将所述第一编辑数据存储到第一缓冲区域中;若否,则生成第二数据获取请求,将所述第二数据获取请求发送至解码模块;所述第二编辑数据为经过解码但未经过渲染的数据;解码模块,用于在接收到所述视频编辑指令时,或在接收到所述第二数据获取请求时,依据所述路径信息获取对应的目标富媒体数据,对所述目标富媒体数据进行解码,得到第二编辑数据存储在第二缓冲区域中,以及,实时监测所述第二缓冲区域的所述第二编辑数据的数据量,在所述数据量大于或等于第二预设阈值时,停止解码所述目标富媒体数据,在所述数据量小于第二预设阈值时,继续解码所述目标富媒体数据。...

【技术特征摘要】
1.一种基于IOS设备的视频编辑装置,其特征在于,包括指令接收模块、编码模块、渲染模块、解码模块,所述编码模块与所述渲染模块间设置有大小为第一预设阈值的第一缓冲区域,所述解码模块与所述渲染模块间设置有大小为第二预设阈值的第二缓冲区域,所述IOS设备预先设置有第一缓冲区域地址与内存地址的映射关系,其中,指令接收模块,用于接收视频编辑指令,并将所述视频编辑指令发送至编码模块和/或解码模块,所述视频编辑指令包括目标富媒体数据的路径信息;编码模块,用于依据所述视频编辑指令生成第一数据获取请求,将所述第一数据获取请求发送至渲染模块,以及,从所述第一缓冲区域的地址对应的内存地址中获取一帧第一编辑数据,对所述第一编辑数据进行编码,其中所述第一编辑数据为经过渲染的数据;渲染模块,用于在收到第一数据获取请求时,或在监测到所述第一缓冲区域中的数据量小于第一预设阈值时,判断所述第二缓冲区域是否存在第二编辑数据,若是,则从所述第二缓冲区域中获取一帧第二编辑数据,对所述第二编辑数据进行渲染生成第一编辑数据,将所述第一编辑数据存储到第一缓冲区域中;若否,则生成第二数据获取请求,将所述第二数据获取请求发送至解码模块;所述第二编辑数据为经过解码但未经过渲染的数据;解码模块,用于在接收到所述视频编辑指令时,或在接收到所述第二数据获取请求时,依据所述路径信息获取对应的目标富媒体数据,对所述目标富媒体数据进行解码,得到第二编辑数据存储在第二缓冲区域中,以及,实时监测所述第二缓冲区域的所述第二编辑数据的数据量,在所述数据量大于或等于第二预设阈值时,停止解码所述目标富媒体数据,在所述数据量小于第二预设阈值时,继续解码所述目标富媒体数据。2.根据权利要求1所述的装置,其特征在于,所述目标富媒体数据包括目标视频数据和/或目标图片数据,所述第二编辑数据包括第一图像数据,和/或第二图像数据,所述解码模块包括:视频解码子模块,用于对所述目标视频数据进行解码,得到第一图像数据;图片解码子模块,用于对所述目标图片数据进行解码,得到第二图像数据。3.根据权利要求2所述的装置,其特征在于,所述IOS设备具有avassetreader接口,所述第二缓冲区域位于显存中,所述IOS设备预设有内存地址与第二缓冲区域地址的映射关系,所述视频解码子模块包括:解码单元,用于采用所述avassetreader接口在内存中对所述目标视频数据进行解码,得到第一图像数据;转换单元,用于获取所述内存的内存地址,按照所述内存地址与第二缓冲区域地址的映射关系,将所述第一图像数据的存储地址由所述内存地址转换成对应的第二缓冲区域地址。4.根据权利要求3所述的装置,其特征在于,所述解码单元还用于,初始化所述avassetreader接口,设置输出的一帧第一图像数据的分辨率大小。5.根据权利要求3或4所述的装置,其特征在于,所述解码单元还用于,采用所述avassetreader接口在内存中对所述目标视频数据进行解码,得到与所述第一图像数据对应的音频数据,所述音频数据存储在内存中。6.根据权利要求5所述的装置,其特征在于,所述与所述第一图像数据对应的音频数据,采用如下方式获得:获取所述目标视频数据的帧率;计算预设的音频数据采样率/帧率,得到一帧第一图像数据对应的音频数据。7.根据权利要求5所述的装置,其特征在于,所述视频编辑装置还包括:音频渲染模块,用于在内存中对所述音频数据进行渲染。8.根据权利要求7所述的装置,其特征在于,所述渲染模块还用于,将所述第一缓冲区域中的第一编辑数据从第二缓冲区域中读取到内存中。9.根据权利要求8所述的装置,其特征在于,所述IOS设备具有avassetwriter接口,所述编码模块还用于,采用所述avassetwriter接口在内存中对所述第一编辑数据进行编码,最终生成视频文件。10.根据权利要求9所述的装置,其特征在于,所述编码模块还用于,在内存中获取每一帧第一编辑数据对应的音频数据;在内存中对所述第一编辑数据以及对应的音频数据进行编码。11.根据权利要求2所述的装置,其特征在于,所述第二缓冲区域位于显存中,所述图片解码子模块还用于,采用多线程在内存中对所述目标图片数据进行解码,得到第二图像数据,将所述内存中的第二图像数据复制到第二缓冲区域中。12.根据权利要求2所述的装置,其特征在于,所述第一数据获取请求包括视频编辑样式信息,所述渲染模块包括:数据接收子模块,用于接收所述第一图像数据和/或所述第二图像数据;解析子模块,用于解析所述视频编辑样式信息,获得一个或多个特效元素;顺序确定子模块,用于在所述特效元素为多个时,确定所述特效元素的组合顺序;特效添加子模块,用于按照所述组合顺序在所述第一图像数据中依次添加对应的特效元素,生成第三图像数据;第一编辑数据生成子模块,用于合并所述第三图像数据以及所述第二图像数据,生成第一编辑数据。13.根据权利要求12所述的装置,其特征在于,所述特效添加子模块还用于,采用着色语言GLSL按照所述组合顺序在所述第一图像数据中依次添加对应的特效元素,生成第三图像数据。14.根据权利要求12或13所述的装置,其特征在于,所述特效元素包括裁剪信息、尺寸缩放信息、颜色编辑信息、透明度编辑信息、模糊效果信息。15.根据权利要求1所述的装置,其特征在于,所述路径信息有多个,所述视频编辑指令包括多个路径信息的导入顺序,则对应的目标富媒体数据有多个,所述解码模块还用于,在接收到所述第二数据获取请求时,依据所述导入顺序确定所述多个目标富媒体数据的解码顺序;按照所述解码顺序对所述目标富媒体数据进行解码。16.根据权利要求1所述的装置,其特征在于,所述渲染模块位于第一...

【专利技术属性】
技术研发人员:蒋金峰
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1