基于D3D播放全景视频的方法及系统技术方案

技术编号:14009905 阅读:86 留言:0更新日期:2016-11-17 10:31
本发明专利技术公开基于D3D播放全景视频的方法,包括:在播放器中设置用于触发全景视频播放的触发指令;在播放器中加载视频,并对视频进行分离、解码后获得视频图像;播放器检测到全景视频播放请求时,激活触发指令;根据触发指令基于D3D获取视频图像并制作成D3D全景纹理矩形图片,根据D3D全景纹理矩形图片在播放器中生成对应的全景映射球面,并将D3D全景纹理矩形图片贴图到全景映射球面上;检测播放器中预先设置的显示视窗在全景映射球面上的位置,并获取显示视窗在全景映射球面上对应的内容在显示视窗中进行显示。本发明专利技术提升了用户使用播放器的观看体验。

【技术实现步骤摘要】

本专利技术涉及视频播放的
,更具体地,涉及一种基于D3D播放全景视频的方法及系统
技术介绍
全景视频,即720度或者360度全景视频,它是在720度或者360度全景的技术之上发展延伸而来,将静态的全景图片转化为动态的视频图像,全景视频可以在拍摄角度上下左右360度范围内任意观看动态视频,让用户有一种身临其境的感觉。在制作全景视频时使用一组摄像机在拍摄点周围同时拍摄360度(或720度)的画面,并经过后期的图像拼接后使之能够在任意时刻无失真地展现拍摄点周围画面的视频。Direct3D,简称D3D,是微软为提高3D显示性能而开发的一套显示程序接口,它提供了丰富的3D功能库,是游戏和视频播放器在Windows操作系统上广泛采用的标准。D3D作为操作系统和各种应用软件(比如视频播放器)调用显卡的媒介,对下可以通过显卡驱动程序操作显卡,对上可以为操作系统和各种应用程序提供各种显示用的接口函数和显示功能。操作系统和应用软件(比如视频播放器)只需要调用D3D提供的接口函数和功能就能实现图像显示功能,通过这种分工合作,极大的降低了软件开发周期和成本。在视频播放领域,普通的平面视频及全景视频都可以利用D3D作为调用显卡的媒介进行播放。现有的普通的播放器只能播放平面的视频图像,普通播放器的播放流程是:加载视频—获取视频信息—进行视频分离—解码视频帧—显示解码后的视频图像,按照普通视频图像的形式播放全景视频只能得到不准确的平面视频图像的画面,根本不能达到全景视频播放的效果。而现有的全景播放器只能播放全景视频文件,若使用全景播放器播放平面视频得到的只能是失真的画面。因为全景播放器播放的是经过拼接处理的以拍摄点为中心的球面投影面上的画面,目前对这种球面投影不方便存储,而是常常将球面投影变换存储为矩形图像,在全景播放器播放该全景视频时将存储的矩形图像重新映射贴合到球面上,再选取用户视野可见的部分视频部分进行播放,要是通过这种方式将平面视频贴合到球面上进行播放就肯定会造成失真现象。因此,现有技术中还没有一种既可以播放平面视频又可以播放全景视频的方案。因此,提供一种在播放器中既可以播放平面视频又可以播放全景视频的方法是本领域亟待解决的问题。
技术实现思路
有鉴于此,本专利技术提供了一种基于D3D播放全景视频的方法及系统,解决了现有技术在播放器中不能既支持平面视频播放又支持全景视频播放的技术问题。为了解决上述技术问题,本专利技术提出一种基于D3D播放全景视频的方法,包括:在播放器中设置用于触发全景视频播放的触发指令;在所述播放器中加载视频,并对所述视频进行分离、解码后获得视频图像;所述播放器检测到全景视频播放请求时,激活所述触发指令;根据所述触发指令基于D3D获取所述视频图像并制作成D3D全景纹理矩形图片,根据所述D3D全景纹理矩形图片在所述播放器中生成对应的全景映射球面,并将所述D3D全景纹理矩形图片贴图到所述全景映射球面上;检测所述播放器中预先设置的显示视窗在所述全景映射球面上的位置,并获取所述显示视窗在所述全景映射球面上对应的内容在所述显示视窗中进行显示。进一步地,其中,检测所述播放器中预先设置的显示视窗在所述全景映射球面上的位置,并获取所述显示视窗在所述全景映射球面上对应的内容在所述显示视窗中进行显示,进一步为:检测所述播放器中预先设置的显示视窗在所述全景映射球面上的位置,并获取所述显示视窗在所述全景映射球面上对应的内容在所述显示视窗中进行显示;根据光标的移动控制所述显示视窗在所述全景映射球面上的位置移动,并将所述显示视窗位置移动后在所述全景映射球面上对应的视频内容显示在所述显示视窗中。进一步地,其中,根据光标的移动控制所述显示视窗在所述全景映射球面上的位置移动,并将所述显示视窗移动后对应的视频内容显示在所述显示视窗中,进一步为:根据光标的移动控制所述显示视窗在所述全景映射球面上的欧拉角的变化,根据所述显示视窗在全景映射球面上欧拉角的变化移动所述显示视窗在所述全景映射球面上的位置;将所述显示视窗位置移动后在所述全景映射球面上对应的视频内容显示在所述显示视窗中。进一步地,其中,根据所述触发指令基于D3D获取所述视频图像并制作成D3D全景纹理矩形图片,根据所述D3D全景纹理矩形图片在所述播放器中生成对应的全景映射球面,并将所述D3D全景纹理矩形图片贴图到所述全景映射球面上,进一步为:根据所述触发指令基于D3D获取所述视频图像并制作成D3D全景纹理矩形图片,将所述D3D全景纹理矩形图片的侧边作为球面半圆弧生成对应的全景映射球面,并将所述D3D全景纹理矩形图片贴图到所述全景映射球面上。进一步地,其中,所述播放器检测到全景视频播放请求时,根据所述全景视频播放请求激活所述触发指令,进一步为:所述播放器检测到全景视频的关闭请求时,根据所述关闭请求禁用所述触发指令;基于D3D获取所述视频图像,并将所述显示视窗在所述视频图像上对应位置的视频图像内容发送至播放器进行平面视频渲染后,显示在所述显示视窗内。另一方面,本专利技术还提供一种基于D3D播放全景视频的系统,包括:全景视频触发设置模块、视频图像获取模块、全景视频播放激活模块、全景视频贴图模块及全景视频显示模块;其中,所述全景视频触发设置模块,用于在播放器中设置用于触发全景视频播放的触发指令;所述视频图像获取模块,用于在所述播放器中加载视频,并对所述视频进行分离、解码后获得视频图像;所述全景视频播放激活模块,用于所述播放器检测到全景视频播放请求时,激活所述触发指令;所述全景视频贴图模块,用于根据所述触发指令基于D3D获取所述视频图像并制作成D3D全景纹理矩形图片,根据所述D3D全景纹理矩形图片在所述播放器中生成对应的全景映射球面,并将所述D3D全景纹理矩形图片贴图到所述全景映射球面上;所述全景视频显示模块,用于检测所述播放器中预先设置的显示视窗在所述全景映射球面上的位置,并获取所述显示视窗在所述全景映射球面上对应的内容在所述显示视窗中进行显示。进一步地,其中,所述全景视频显示模块,进一步用于:检测所述播放器中预先设置的显示视窗在所述全景映射球面上的位置,并获取所述显示视窗在所述全景映射球面上对应的内容在所述显示视窗中进行显示;根据光标的移动控制所述显示视窗在所述全景映射球面上的位置移动,并将所述显示视窗位置移动后在所述全景映射球面上对应的视频内容显示在所述显示视窗中。进一步地,其中,所述全景视频显示模块,进一步用于:根据光标的移动控制所述显示视窗在所述全景映射球面上的欧拉角的变化,根据所述显示视窗在全景映射球面上欧拉角的变化移动所述显示视窗在所述全景映射球面上的位置;将所述显示视窗位置移动后在所述全景映射球面上对应的视频内容显示在所述显示视窗中。进一步地,其中,全景视频贴图模块,进一步用于:根据所述触发指令基于D3D获取所述视频图像并制作成D3D全景纹理矩形图片,将所述D3D全景纹理矩形图片的侧边作为球面半圆弧生成对应的全景映射球面,并将所述D3D全景纹理矩形图片贴图到所述全景映射球面上。进一步地,其中,所述全景视频播放激活模块,进一步用于:所述播放器检测到全景视频的关闭请求时,根据所述关闭请求禁用所述触发指令;基于D3D获取所述视频图像,并将所述显示视窗在所述视频图像上对应位置的视频图像内本文档来自技高网
...
基于D3D播放全景视频的方法及系统

【技术保护点】
一种基于D3D播放全景视频的方法,其特征在于,包括:在播放器中设置用于触发全景视频播放的触发指令;在所述播放器中加载视频,并对所述视频进行分离、解码后获得视频图像;所述播放器检测到全景视频播放请求时,激活所述触发指令;根据所述触发指令基于D3D获取所述视频图像并制作成D3D全景纹理矩形图片,根据所述D3D全景纹理矩形图片在所述播放器中生成对应的全景映射球面,并将所述D3D全景纹理矩形图片贴图到所述全景映射球面上;检测所述播放器中预先设置的显示视窗在所述全景映射球面上的位置,并获取所述显示视窗在所述全景映射球面上对应的内容在所述显示视窗中进行显示。

【技术特征摘要】
1.一种基于D3D播放全景视频的方法,其特征在于,包括:在播放器中设置用于触发全景视频播放的触发指令;在所述播放器中加载视频,并对所述视频进行分离、解码后获得视频图像;所述播放器检测到全景视频播放请求时,激活所述触发指令;根据所述触发指令基于D3D获取所述视频图像并制作成D3D全景纹理矩形图片,根据所述D3D全景纹理矩形图片在所述播放器中生成对应的全景映射球面,并将所述D3D全景纹理矩形图片贴图到所述全景映射球面上;检测所述播放器中预先设置的显示视窗在所述全景映射球面上的位置,并获取所述显示视窗在所述全景映射球面上对应的内容在所述显示视窗中进行显示。2.根据权利要求1所述的基于D3D播放全景视频的方法,其特征在于,检测所述播放器中预先设置的显示视窗在所述全景映射球面上的位置,并获取所述显示视窗在所述全景映射球面上对应的内容在所述显示视窗中进行显示,进一步为:检测所述播放器中预先设置的显示视窗在所述全景映射球面上的位置,并获取所述显示视窗在所述全景映射球面上对应的内容在所述显示视窗中进行显示;根据光标的移动控制所述显示视窗在所述全景映射球面上的位置移动,并将所述显示视窗位置移动后在所述全景映射球面上对应的视频内容显示在所述显示视窗中。3.根据权利要求2所述的基于D3D播放全景视频的方法,其特征在于,根据光标的移动控制所述显示视窗在所述全景映射球面上的位置移动,并将所述显示视窗移动后对应的视频内容显示在所述显示视窗中,进一步为:根据光标的移动控制所述显示视窗在所述全景映射球面上的欧拉角的变化,根据所述显示视窗在全景映射球面上欧拉角的变化移动所述显示视窗在所述全景映射球面上的位置;将所述显示视窗位置移动后在所述全景映射球面上对应的视频内容显示在所述显示视窗中。4.根据权利要求1所述的基于D3D播放全景视频的方法,其特征在于,根据所述触发指令基于D3D获取所述视频图像并制作成D3D全景纹理矩形图片,根据所述D3D全景纹理矩形图片在所述播放器中生成对应的全景映射球面,并将所述D3D全景纹理矩形图片贴图到所述全景映射球面上,进一步为:根据所述触发指令基于D3D获取所述视频图像并制作成D3D全景纹理矩形图片,将所述D3D全景纹理矩形图片的侧边作为球面半圆弧生成对应的全景映射球面,并将所述D3D全景纹理矩形图片贴图到所述全景映射球面上。5.根据权利要求1所述的基于D3D播放全景视频的方法,其特征在于,所述播放器检测到全景视频播放请求时,根据所述全景视频播放请求激活所述触发指令,进一步为:所述播放器检测到全景视频的关闭请求时,根据所述关闭请求禁用所述触发指令;基于D3D获取所述视频图像,并将所述显示...

【专利技术属性】
技术研发人员:李进朱春明朱彦东张鹏宇
申请(专利权)人:暴风集团股份有限公司
类型:发明
国别省市:北京;11

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

1