基于安卓平台的全景视频的解码方法、装置及终端设备制造方法及图纸

技术编号:13605509 阅读:37 留言:0更新日期:2016-08-28 04:11
本发明专利技术实施例提供一种基于安卓平台的全景视频的解码方法、装置及终端设备,所述方法包括:获取全景视频数据;将所述全景视频数据发送给所述安卓平台中的硬解码器;从所述硬解码器的输出接口获取硬解码后的全景视频数据。根据本发明专利技术实施例提供的基于安卓平台的全景视频的解码方法、装置及终端设备,基于安卓平台的将全景视频通过硬解码的方式进行解码,获取解码后的数据进行全景特效处理,硬解码的方式相对于软解码的方式效率更好,可以高效地进行全景视频解码,进而加快后续全景视频特效处理的速度,提高用户的播放体验。

【技术实现步骤摘要】

本专利技术涉及视频解码领域,尤其涉及一种基于安卓平台的全景视频的解码方法、装置及终端设备
技术介绍
目前基于安卓平台的全景视频的播放,采用软解码方式,即直接调用解码算法让中央处理器(Central Processing Unit,CPU)对全景视频进行解码,这样的解码效率低,且加大CPU负担,耗电也相应增加很多。
技术实现思路
本专利技术的目的在于,提供一种基于安卓平台的全景视频的解码方法、装置及终端设备,提高用户的播放体验。根据本专利技术的一方面,提供基于安卓平台的全景视频的解码方法,所述方法包括:获取全景视频数据;将所述全景视频数据发送给所述安卓平台中的硬解码器;从所述硬解码器的输出接口获取硬解码后的全景视频数据。进一步地,所述方法还包括:将所述硬解码后的全景视频数据进行特效处理。进一步地,所述方法还包括:显示特效处理后的全景视频数据。进一步地,所述输出接口为MediaCodec中的DequeueOutputBuffer函数。根据本专利技术的另一方面,提供基于安卓平台的全景视频的解码装置,所述装置包括:第一获取单元,用于获取全景视频数据;发送单元,用于将所述获取单元获取的全景视频数据发送给所述安卓平台中的硬解码器;硬解码器,用于将所述发送单元发送的全景视频数据进行硬解码;第二获取单元,用于从所述硬解码器的输出接口获取硬解码后的全景视频数据。进一步地,所述装置还包括:特效单元,用于将所述第二获取单元获取的硬解码后的全景视频数据进行特效处理。进一步地,所述装置还包括:显示单元,用于显示所述特效单元进行特效处理后的全景视频数据。进一步地,所述输出接口为MediaCodec中的DequeueOutputBuffer函数。根据本专利技术的另一方面,提供一种安卓移动终端设备,所述安卓移动终端设备包括如前述的基于安卓平台的全景视频的解码装置。根据本专利技术实施例提供的基于安卓平台的全景视频的解码方法、装置及终端设备,基于安卓平台的将全景视频通过硬解码的方式进行解码,获取解码后的数据进行全景特效处理,硬解码的方式相对于软解码的方式效率更好,可以高效地进行全景视频解码,进而加快后续全景视频特效处理的速度,提高用户的播放体验。附图说明图1是示出根据本专利技术实施例的基于安卓平台的全景视频的解码方法的流程图;图2是示出根据本专利技术实施例的基于安卓平台的全景视频的解码装置的结构示意图。具体实施方式下面结合附图详细描述本专利技术的示例性实施例。实施例一图1是示出根据本专利技术实施例的基于安卓平台的全景视频的解码方法的流程图。参照图1,本专利技术实施例基于安卓平台的全景视频的解码方法包括以下步骤:在步骤S110,获取全景视频数据。本实施例所指的安卓平台是安装了安卓系统的终端设备,例如包括但不限于智能手机和/或智能电视等等。全景视频数据是运用拍摄设备对现有场景进行多角度环视拍摄之后得到的视频数据,可以包括360°全景视频数据和720°全景视频数据等等,其中360°全景视频数据是指水平方向或者竖直方向环绕整圈拍摄的视频数据,720°全景视频数据是指水平方向和竖直方向分别环绕整圈拍摄的视频数据。其中,360°全景视频数据又称柱状360全景视频数据,是对场景沿着水平方向进行环绕拍摄所得到的视频数据,相应的在向用户展示的时候,也只可以左右水平移动浏览;720°全景视频数据又称球形360
全景视频数据,是对场景沿着水平与垂直两个方向进行多角度环视拍摄所得到的视频数据,相应的在向用户展示的时候,可以放大、缩小、移动全方位浏览。在本实施例中,可以通过包括但不限于现有的互联网、广电网络和/或通信网络等接收来自拍摄设备的全景视频数据。在步骤S120,将所述全景视频数据发送给所述安卓平台中的硬解码器。在安卓平台中的硬解码器可以集成在显卡中,硬解码是指不借助于中央处理器(Central Processing Unit,CPU)而通过专用的子卡设备来独立完成视频解码的解码方式。硬解码视频的方式可以将CPU从繁重的视频解码运算中释放出来,使安卓平台具备流畅播放高清视频的能力,特别的对于全景视频数据而言,其数据量大,优选显卡中的图形处理器(Graphic Processing Unit,GPU)或者视频处理单元(Video ProcessingUnit,VPU)作为硬解码器。终端设备中的CPU将获取的全景视频数据读到内存中,并运行在CPU上的数据封装格式解析模块把全景视频数据中视频和音频分开,其中视频数据被送到硬解码器(包括但不限于GPU和/或VPU)中去,由硬解码器将视频数据解码,并把解码出来的数据发送给CPU,CPU调用播放窗口播放解码后的视频数据。由于音频数据的数据量远远小于视频数据的数据量,因此,可以在播放视频数据时,边解码音频数据边播放,在本实施例中可以通过终端设备中的声卡(硬解码器)对音频数据进行解码。采用本实施例的技术方案,对全景视频数据进行硬解码释放了CPU,让安卓系平台在高清视频处理的同时可以同时处理其他任务;更进一步地,可以在系统功耗方面进行控制且均衡了系统负载。在步骤S130,从所述硬解码器的输出接口获取硬解码后的全景视频数据。可选的,在本实施例中的输出接口为MediaCodec中的DequeueOutputBuffer函数。在安卓平台上,在Android的多媒体类中,MediaCodec用于创建视音频解码器,通过它可以对视音频数据进行解码
操作。在安卓平台创建MediaCodec实例之后,调用configure函数来指定例如媒体格式或者是否对内容加密的属性。之后通过getInputBuffers函数获得输入ByteBuffer对象的数组然后再通过getOutputBuffers函数来获得输出的ByteBuffer的对象数组。进一步的调用dequeueInputBuffer函数来获得这个用来作为媒体文件源码的ByteBuffer(从输入的buffers的数组中)的索引位置,之后通过调用queueInputBuffer函数释放缓存区的所有权,并调用dequeueOutputBuffer函数获取解码结果的ByteBuffer的索引位置。即DequeueOutputBuffer函数映射到缓存区,硬解码器解码后的全景视频数据存储在缓存中,可以通过DequeueOutputBuffer读取。可选的,在步骤S140,将所述硬解码后的全景视频数据进行特效处理。可以根据用户的需求,对硬解码后的全景视频数据进行特效处理,例如可以包括但不限于颜色调整、视频裁剪、加字幕和/或配背景音乐等等。可选的,在步骤S150,显示特效处理后的全景视频数据。根据本专利技术实施例提供的基于安卓平台的全景视频的解码方法,基于安卓平台的将全景视频通过硬解码的方式进行解码,获取解码后的数据进行全景特效处理,硬解码的方式相对于软解码的方式效率更好,可以高效地进行全景视频解码,进而加快后续全景视频特效处理的速度,提高用户的播放体验。实施例二图2是示出根据本专利技术实施例的基于安卓平台的全景视频的解码装置的结构示意图。参照图2,在本实施例中,该装置包括:第一获取单元21,用于获取全景视频数据。发送单元22,用于将所述获取单元获取的全景视频数据发送给所述安卓平台中的硬解码器。硬解码器23,用本文档来自技高网
...

【技术保护点】
一种基于安卓平台的全景视频的解码方法,其特征在于,所述方法包括:获取全景视频数据;将所述全景视频数据发送给所述安卓平台中的硬解码器;从所述硬解码器的输出接口获取硬解码后的全景视频数据。

【技术特征摘要】
1.一种基于安卓平台的全景视频的解码方法,其特征在于,所述方法包括:获取全景视频数据;将所述全景视频数据发送给所述安卓平台中的硬解码器;从所述硬解码器的输出接口获取硬解码后的全景视频数据。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:将所述硬解码后的全景视频数据进行特效处理。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:显示特效处理后的全景视频数据。4.根据权利要求1至3任一项所述的方法,其特征在于,所述输出接口为MediaCodec中的DequeueOutputBuffer函数。5.一种基于安卓平台的全景视频的解码装置,其特征在于,所述装置包括:第一获取单元,用于获取全景视频数据;发送单元,用于将所述获取单元获取的全景视频数据发送给...

【专利技术属性】
技术研发人员:张蒙
申请(专利权)人:乐视网信息技术北京股份有限公司
类型:发明
国别省市:北京;11

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

1