CN114374869B - 一种全景视频播放方法、装置及计算机存储介质 - Google Patents
一种全景视频播放方法、装置及计算机存储介质 Download PDFInfo
- Publication number
- CN114374869B CN114374869B CN202210014571.5A CN202210014571A CN114374869B CN 114374869 B CN114374869 B CN 114374869B CN 202210014571 A CN202210014571 A CN 202210014571A CN 114374869 B CN114374869 B CN 114374869B
- Authority
- CN
- China
- Prior art keywords
- video
- iptv
- played
- player
- model
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/64—Addressing
- H04N21/6402—Address allocation for clients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
- H04N21/8173—End-user applications, e.g. Web browser, game
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请涉及一种全景视频播放方法、装置及计算机存储介质,其特征在于,其包括步骤:获取全景视频特征解析服务器地址并存储在浏览器内核;浏览器内核加载播控页面时解析预置于所述播控页面内的JS语句以获取待播视频的视频特征;所述待播视频为全景视频时,浏览器内核根据所述视频特征调用OpenGL建立与所述待播视频匹配的模型;在所述待播视频的解码过程中将所述模型的纹理与解码所得视频数据相结合实现视频渲染。该方法通过web页面获取视频内容特征以实现直接建模渲染播放,避免了相关技术在进行全景视频播放时需要预下载视频、抽帧、识别等步骤,进一步提高用户体验。
Description
本发明涉及IPTV(Internet Protocol Television,交互式网络电视)系统的视频处理技术领域,特别涉及一种全景视频播放方法、装置及计算机存储介质。
背景技术
随着IPTV业务发展,用户对IPTV视频业务的多样性也提出了更多的要求,全景视频播放业务是IPTV的新业务领域,能让用户360度无死角的观看到全景视频内容,提高用户体验。
由于全景视频通过全视角传输方式传输与普通视频的传输没有差异,致使终端无法快速准确的识别出全景视频,并进行正确的显示处理,从而影响到用户的观看体验。相关技术在终端处理全景视频时采用包括:1)用户观看到全景视频时,通过遥控器操作,通知终端进入全景播放模式,终端再建模、渲染、全景输出;2)终端在建模前获取视频流,抽帧识别当前视频为全景视频后,再建模、渲染、全景输出。这样就浪费了用户时间,降低了用户体验。
发明内容
本发明实施例提供一种全景视频播放方法、装置及计算机存储介质,通过web页面获取视频内容特征以实现直接建模渲染播放,避免了相关技术在进行全景视频播放时需要预下载视频、抽帧、识别等步骤,进一步提高用户体验。
一方面,提供一种全景视频播放方法,其特征在于,其包括步骤:
获取全景视频特征解析服务器地址并存储在浏览器内核;
浏览器内核加载播控页面时解析预置于所述播控页面内的JS语句以获取待播视频的视频特征;
所述待播视频为全景视频时,浏览器内核根据所述视频特征调用OpenGL建立与所述待播视频匹配的模型;
在所述待播视频的解码过程中将所述模型的纹理与解码所得视频数据相结合实现视频渲染。
一些实施例中,所述浏览器内核加载播控页面时解析预置于所述播控页面内的JS语句以获取待播视频的视频特征,包括步骤:
创建IPTV播放器,并通过webIDL将创建的所述IPTV播放器与所述播控页面绑定;
向所述播控页面绑定的IPTV播放器获取待播视频的url地址;
根据所述待播视频的url地址与所述全景视频特征解析服务器地址获取所述待播视频的视频特征。
一些实施例中,所述通过webIDL将新建的IPTV播放器与所述播控页面绑定,包括步骤:
将新建的IPTV播放器保存到与调用JS语句的页面对应的结构体frame中,以使当所述播控页面调用JS语句时浏览器内核通过与IPTV播放器绑定的结构体frame确定所述播控页面。
一些实施例中,所述浏览器内核根据所述视频特征调用OpenGL建立与所述待播视频匹配的模型,包括步骤:
创建IPTV_VR全景视频播放器,并通过webIDL将创建的所述IPTV_VR全景视频播放器与所述播控页面绑定;
将所述待播视频的url地址传给所述IPTV_VR全景视频播放器;
解析所述视频特征获取待播放视频的模型类型和模型特征,并将所述待播放视频的模型类型和模型特征发送至与所述IPTV_VR全景视频播放器;
所述IPTV_VR全景视频播放器根据所述待播放视频的模型类型和模型特征调用IPTV_VR全景视频播放器模型创建函数创建与所述待播视频匹配的模型。
一些实施例中,在所述待播视频的解码过程中将所述模型的纹理与解码所得视频数据相结合实现视频渲染,包括步骤:
所述IPTV_VR全景视频播放器获取待播视频数据,并通过GLSurfaceView将所述待播视频数据传递至所述模型去渲染。
一些实施例中,获取待播视频的视频特征后还包括步骤:
浏览器内核根据所述视频特征判断待播视频是否为全景视频,若不是全景视频则通过所述IPTV播放器播放。
另一方面,提供一种全景视频播放装置,其特征在于,其包括:
视频特征获取模块,其用于:
获取全景视频特征解析服务器地址并存储在浏览器内核;
浏览器内核加载播控页面时解析预置于所述播控页面内的JS语句以获取待播视频的视频特征;
建模与视频渲染模块,其用于:
在所述待播视频为全景视频时,根据所述视频特征调用OpenGL建立与所述待播视频匹配的模型;
在所述待播视频的解码过程中将所述模型的纹理与解码所得视频数据相结合实现视频渲染。
一些实施例中,所述视频特征获取模块,还用于:
创建IPTV播放器,并通过webIDL将创建的所述IPTV播放器与所述播控页面绑定;
向所述播控页面绑定的IPTV播放器获取待播视频的url地址;
根据所述待播视频的url地址与所述全景视频特征解析服务器地址获取所述待播视频的视频特征。
一些实施例中,所述建模与视频渲染模块还用于:
创建IPTV_VR全景视频播放器,并通过webIDL将创建的所述IPTV_VR全景视频播放器与所述播控页面绑定;
将所述待播视频的url地址传给所述IPTV_VR全景视频播放器;
解析所述视频特征获取待播放视频的模型类型和模型特征,并将所述待播放视频的模型类型和模型特征发送至与所述播控页面绑定的IPTV_VR全景视频播放器;
所述IPTV_VR全景视频播放器根据所述待播放视频的模型类型和模型特征调用IPTV_VR全景视频播放器模型创建函数创建与所述待播视频匹配的模型;
所述IPTV_VR全景视频播放器获取待播视频数据,并通过GLSurfaceView将所述待播视频数据传递至所述模型去渲染。
第三方面,还提供一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现所述全景视频播放方法中的步骤。
本发明实施例的有益效果包括:
终端通过定制化浏览器获取全景视频特征后,将视频特征传递给播放器。播放器根据全景视频特征建立模型,将播放器解析出来的视频YUV数据输出渲染到模型上,实现全景播放。结合IPTV平台和终端系统特征,保留现有IPTV视频播放的特点,利用浏览器内核分析页面特征和执行JS语句逻辑,提前获取建模需要的视频特征,最大程度保留了现有EPG页面,不用为实现此功能而进行页面修改。同时,避免了在进行全景视频播放时需要预下载视频、抽帧、识别等步骤,进一步提高用户体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种全景视频播放方法的流程示意图;
图2为本发明实施例提供的一种全景视频播放方法的流程示意图;
图3为本发明实施例提供的一种全景视频播放装置的结构示意图。
实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种全景视频播放方法,其包括步骤:
S100:获取全景视频特征解析服务器地址并存储在浏览器内核;
S200:浏览器内核加载播控页面时解析预置于所述播控页面内的JS语句以获取待播视频的视频特征;
S300:所述待播视频为全景视频时,浏览器内核根据所述视频特征调用OpenGL建立与所述待播视频匹配的模型;
S400:在所述待播视频的解码过程中将所述模型的纹理与解码所得视频数据相结合实现视频渲染。
需要说明的是,全景视频特征解析服务器地址所对应的服务器用于对终端上传的视频url地址的视频进行全景视频特征解析以得到全景视频的相应视频特征。全景视频特征解析服务器地址可在终端启动IPTV时从IPTV EPG平台获取。
可以理解的是,浏览器创建的播放器对象,此播放器对象含常规的获取视频、播放视频功能,以及S300和S400中提到的建立模型、视频渲染和模型操控功能。其中模型的建立是根据浏览器传入的模型类型和模型特征来创建。所有用户的按键操作,都交由浏览器来处理。当用户按键时,由浏览器与平台交互。因此可以获取平台端下发的操控页面,由操控页面的按键逻辑决策按键的功能。同时也可以触发浏览器调用播放器的相关控制接口,实现视角的切换、播放控制和界面提示。
本发明实施例提出的全景视频播放方法,终端通过定制化浏览器获取全景视频特征后,将视频特征传递给播放器。播放器根据全景视频特征建立模型,将播放器解析出来的视频YUV数据输出渲染到模型上,实现全景播放。结合IPTV平台和终端系统特征,保留现有IPTV视频播放的特点,利用浏览器内核分析页面特征和执行JS语句逻辑,提前获取建模需要的视频特征,最大程度保留了现有EPG页面,不用为实现此功能而进行页面修改。同时,避免了在进行全景视频播放时需要预下载视频、抽帧、识别等步骤,进一步提高用户体验。
一些实施例中,S200包括步骤:
S210:创建IPTV播放器,并通过webIDL将创建的所述IPTV播放器与所述播控页面绑定;
S220:向所述播控页面绑定的IPTV播放器获取待播视频的url地址;
S230:根据所述待播视频的url地址与所述全景视频特征解析服务器地址获取所述待播视频的视频特征。
需要说明的是,所述的IPTV播放器为一种常规的播放平面视频的播放器,不具备建模、渲染,显示全景视频的能力。
可以理解的是,当页面调用播放器创建逻辑,即JS语句执行new MediaPlayer时,创建MediaPlayer1(常规IPTV播放器)。当页面调用开始播放MediaPlayer1.play时,不进行播放操作,而是通知浏览器内核访问全景视频特征解析服务器地址AspectURL。浏览器内核通过MediaPlayer1对象获取待播视频的url地址,并向全景视频特征解析服务器AspectURL查询此url地址对应的视频特征。全景视频特征解析服务器根据url地址查询视频特征并将视频特征返回给浏览器内核。
本实施例考虑到在播放视频时会存在一个EPG透明页面用来接收用户按键以及视频播放状态等。在此EPG透明页面中预置用于获取当前视频(待播视频)特征的私有扩展JS语句。当终端加载此EPG透明页面时,则会执行私有扩展的JS逻辑,浏览器解析到私有扩展的JS语句逻辑向视频服务器获取到当前视频的视频特征。
一些实施例中,S210具体为:将新建的IPTV播放器保存到与调用JS语句的页面对应的结构体frame中,以使当所述播控页面调用JS语句时浏览器内核通过与IPTV播放器绑定的结构体frame确定所述播控页面。
由于HTML的写法存在多种框架页面,包括frameset,iframe等,而播控的处理逻辑或按键的处理逻辑通常存放在JS文件,导致无法单纯的从web页面上判断哪个页面是播放页面之前的透明页面。本发明实施例结合浏览器内核和播放器来实现透明页面的判断。在页面调用JS语句过程中,检测到创建播放器语句时,浏览器内核通过webIDL的方法,将新建的IPTV播放器保存到与调用JS语句的页面对应的结构体frame中,以实现播放器跟页面的绑定关系;当页面通过调用JS文件中的开始播放的语句时,浏览器内核可以通过该播放器找到与之绑定的frame并以此确定当前的播控页面。
一些实施例中,S300包括步骤:
S310:创建IPTV_VR全景视频播放器,并通过webIDL将创建的所述IPTV_VR全景视频播放器与所述播控页面绑定;
S320:将所述待播视频的url地址传给所述IPTV_VR全景视频播放器;
S330:解析所述视频特征获取待播放视频的模型类型和模型特征,并将所述待播放视频的模型类型和模型特征发送至与所述播控页面绑定的IPTV_VR全景视频播放器;
S340:所述IPTV_VR全景视频播放器根据所述待播放视频的模型类型和模型特征调用IPTV_VR全景视频播放器模型创建函数创建与所述待播视频匹配的模型。
需要说明的是,步骤S310中所创建的IPTV_VR全景视频播放器具备建模、渲染,显示全景视频的能力。步骤S320中将所述待播视频的url地址传给所述IPTV_VR全景视频播放器的同时,还将视频播放所需的相关数据(包括播放地址、播放时间(比如从头播放,还是从某一个时间开始播放)、用户操作指令(比如播放、暂停、快进或快退)等)一起传给IPTV_VR全景视频播放器。
本实施例中,在IPTV_VR全景视频播放器的基础上扩展建模功能。具体实现时,扩展IPTV_VRMediaPlayer对象(IPTV_VR全景视频播放器),增加IPTV_VRMediaPlayer.CreatMode(int mode, Struct size)方法,传入模型类型及模型大小。如果int mode的模型为长方体,则Struct size为长宽高,如果int mode的模型为球体,则Struct size为环数段数。在IPTV_VRMediaPlayer. CreatMode函数(IPTV_VR全景视频播放器模型创建函数)中,并调用OpenGL来创建相关模型。
所述模型类型包括球形、立方体、环形体或三角体等任意用于表征该全景视频的立体模型类型,所述模型特征为该全景视频模型类型所对应的特征,若模型类型为球形则模型特征为球形的环数段数,若模型类型为立方体则模型特征为立方体的长宽高等。
本实施例中浏览器内核获取相关信息调用OpenGL方法建模。相比于传统全景视频需要通过抽帧计算识别全景视频后再建模渲染播放,可进行提前建模,且建模种类明确,通过直接建模渲染播放,避免预下载视频、抽帧、识别等过程。同时,通过webIDL将定制化的全景播放器与页面绑定,可以将定制化的全景播放器能力包括建模、缩放、旋转等能力暴露给页面,以供页面调用。从而实现由页面定制者在定制页面时,可以对定制化的全景播放器进行操作。可实现统一的由页面定制的操作方法。避免了不同开发者按自己的喜好来定义播放器能力操作方法的问题。
一些实施例中,步骤S300在IPTV_VR全景视频播放器的基础上扩展旋转功能。具体的实现方式为:
扩展IPTV_VRMediaPlayer对象(IPTV_VR全景视频播放器),增加IPTV_VRMediaPlayer. ChangeView(int left, int right, int up, int down)方法,传入转动的方向对应的幅度。在IPTV_VRMediaPlayer.ChangeView函数(IPTV_VR全景视频播放器视角变换函数)中,使模型发生旋转变换,实现用户视角变化。
一些实施例中,步骤S300在IPTV_VR全景视频播放器的基础上扩展缩放功能。具体的实现方式为:
扩展IPTV_VRMediaPlayer对象IPTV_VR全景视频播放器,增加IPTV_VRMediaPlayer.Zoom(int size)方法,传入缩放的倍数,使模型进行一定程度的缩放,从而实现视角前进或退后变化。
一些实施例中,S400具体为:所述IPTV_VR全景视频播放器获取待播视频数据,并通过GLSurfaceView将所述待播视频数据传递至所述模型去渲染。
可以理解的是,建立GLSurfaceView后,通过IPTV_VR全景视频播放器的setSurfaceView方法,将IPTV_VR全景视频播放器输出的待播视频数据传递给这个GLSurfaceView。将GLSurfaceView与IPTV_VR全景视频播放器模型创建函数(IPTV_VRMediaPlayer.CreatMode函数)中的OpenGL模型绑定。
一些实施例中,获取待播视频的视频特征后浏览器内核根据所述视频特征判断待播视频是否为全景视频,若不是全景视频则通过常规播放器播放该视频特征对应的视频,常规播放器包括现有的IPTV播放器,即满足IPTV运营商视频服务器对接规范要求的功能,具备流媒体传输协议、视频解码、对视频流进行播放控制如暂停、快进、快退等功能,但不具备显示全景视频所需要的建模、渲染和对模型操控功能的播放器。
如图2所示,在一个具体的实施例中,通过下述的方法步骤实现全景视频播放:
S01 终端启动IPTV,从IPTV EPG平台获得全景视频特征解析服务器地址,赋值给AspectURL并存储在浏览器内核中。
S02 浏览器内核加载播控页面,当页面调用播放器创建逻辑(JS语句执行newMediaPlayer)时,创建MediaPlayer1(常规的IPTV播放器)。当页面调用开始播放MediaPlayer1.play时,不进行播放操作,而是通知浏览器内核访问全景视频特征解析服务器地址AspectURL。
S03 浏览器内核通过MediaPlayer1对象获取当前视频的url地址,通过全景视频特征解析服务器AspectURL查询此url的视频特征。
S04 全景视频特征解析服务器根据url查询视频特征,并将视频特征(包括全景视频的模型类型以及模型特征)返回给浏览器内核。
S05浏览器内核根据视频特征判断当前视频是否为全景视频,若是则执行步骤S06,若否则执行步骤S07。
S06在浏览器内核中的播控页面结构体frame中,通过WEB IDL将IPTV_VRMediaPlayer对象与播放页面进行绑定(使播控页面具备访问IPTV_VRMediaPlayer对象的能力),将MediaPlayer1对象的数据(待播放视频的url地址及播放所需相关数据)传递给IPTV_VRMediaPlayer;浏览器内核解析视频特征中的模型类型和模型特征,进入步骤S08。
S07正常模式播放(采用MediaPlayer1直接播放视频)。
S08浏览器内核通过与当前播控页面绑定的播放器对象IPTV_VRMediaPlayer,将模型类型和模型特征传给播放器对象IPTV_VRMediaPlayer。
S09 IPTV_VRMediaPlayer播放器对象根据模型类型和模型特征调用IPTV_VRMediaPlayer.CreatMode函数来创建模型对象。
S10IPTV_VRMediaPlayer播放器对象建立连接获取视频数据,并将数据通过GLSurfaceView传递给IPTV_VRMediaPlayer.CreatMode函数中OpenGL创建的模型去渲染、播放。
S11当用户操作按键或要实现变化视角、缩放等功能时,浏览器接收按键后将播控类型的操作(如快进、快退、定位跳转等)通过Event事件上报IPTV EPG平台,IPTV EPG平台调用IPTV_VRMediaPlayer播放器中的ChangeView、Zoom等函数实现视角变化、缩放等功能,并且显示相应的界面提示。可以实现统一的操控命令,也可以通过下载平台端的操控页面来实现统一UI提示。
如图3所示,本发明实施例提供一种全景视频播放装置,其包括:
视频特征获取模块,其用于:
获取全景视频特征解析服务器地址并存储在浏览器内核;
浏览器内核加载播控页面时解析预置于所述播控页面内的JS语句以获取待播视频的视频特征;
建模与视频渲染模块,其用于:
在所述待播视频为全景视频时,根据所述视频特征调用OpenGL建立与所述待播视频匹配的模型;
在所述待播视频的解码过程中将所述模型的纹理与解码所得视频数据相结合实现视频渲染。
一些实施例中,所述视频特征获取模块,还用于:
创建IPTV播放器,并通过webIDL将创建建的所述IPTV播放器与所述播控页面绑定;
向所述播控页面绑定的IPTV播放器获取待播视频的url地址;
根据所述待播视频的url地址与所述全景视频特征解析服务器地址获取所述待播视频的视频特征。
一些实施例中,所述视频特征获取模块,还用于将新建的IPTV播放器保存到与调用JS语句的页面对应的结构体frame中,以使当所述播控页面调用JS语句时浏览器内核通过与IPTV播放器绑定的结构体frame确定所述播控页面。
一些实施例中,所述建模与视频渲染模块还用于:
创建IPTV_VR全景视频播放器,并通过webIDL将创建的所述IPTV_VR全景视频播放器与所述播控页面绑定;
将所述待播视频的url地址传给所述IPTV_VR全景视频播放器;
解析所述视频特征获取待播放视频的模型类型和模型特征,并将所述待播放视频的模型类型和模型特征发送至与所述播控页面绑定的IPTV_VR全景视频播放器;
所述IPTV_VR全景视频播放器根据所述待播放视频的模型类型和模型特征调用IPTV_VR全景视频播放器模型创建函数创建与所述待播视频匹配的模型。
一些实施例中,所述建模与视频渲染模块还用于通过所述IPTV_VR全景视频播放器获取待播视频数据,并通过GLSurfaceView将所述待播视频数据传递至所述模型去渲染。
基于与前述方法实施例中相同的原理,在装置的对应实施例中也具备相同的技术效果。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读存储介质上,计算机可读存储介质可以包括计算机可读存储介质(或非暂时性介质)和通信介质(或暂时性介质)。
本发明实施例还提供一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,可实现前述基全景视频播放方法实施例中的步骤。
如本领域普通技术人员公知的,术语计算机存储介质(计算机可读存储介质)包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机可读存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。
示例性的,计算机存储介质可以是前述实施例的装置或系统的内部存储单元,例如电子设备的硬盘或内存。计算机存储介质也可以是电子设备的外部存储设备,例如电子设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。
以上仅为本发明实施例的具体实施方式,但本发明实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明实施例的保护范围之内。因此,本发明实施例的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种全景视频播放方法,其特征在于,其包括步骤:
获取全景视频特征解析服务器地址并存储在浏览器内核;
浏览器内核加载播控页面时解析预置于所述播控页面内的JS语句以获取待播视频的视频特征;
所述待播视频为全景视频时,浏览器内核根据所述视频特征调用OpenGL建立与所述待播视频匹配的模型;
在所述待播视频的解码过程中将所述模型的纹理与解码所得视频数据相结合实现视频渲染;
所述浏览器内核加载播控页面时解析预置于所述播控页面内的JS语句以获取待播视频的视频特征,包括步骤:
创建IPTV播放器,并通过webIDL将创建的所述IPTV播放器与所述播控页面绑定;
向所述播控页面绑定的IPTV播放器获取待播视频的url地址;
根据所述待播视频的url地址与所述全景视频特征解析服务器地址获取所述待播视频的视频特征。
2.如权利要求1所述的一种全景视频播放方法,其特征在于,
所述通过webIDL将新建的IPTV播放器与所述播控页面绑定,包括步骤:
将新建的IPTV播放器保存到与调用JS语句的页面对应的结构体frame中,以使当所述播控页面调用JS语句时浏览器内核通过与IPTV播放器绑定的结构体frame确定所述播控页面。
3.如权利要求1所述的一种全景视频播放方法,其特征在于,
所述浏览器内核根据所述视频特征调用OpenGL建立与所述待播视频匹配的模型,包括步骤:
创建IPTV_VR全景视频播放器,并通过webIDL将创建的所述IPTV_VR全景视频播放器与所述播控页面绑定;
将所述待播视频的url地址传给所述IPTV_VR全景视频播放器;
解析所述视频特征获取待播放视频的模型类型和模型特征,并将所述待播放视频的模型类型和模型特征发送至与所述IPTV_VR全景视频播放器;
所述IPTV_VR全景视频播放器根据所述待播放视频的模型类型和模型特征调用IPTV_VR全景视频播放器模型创建函数创建与所述待播视频匹配的模型。
4.如权利要求3所述的一种全景视频播放方法,其特征在于,在所述待播视频的解码过程中将所述模型的纹理与解码所得视频数据相结合实现视频渲染,包括步骤:
所述IPTV_VR全景视频播放器获取待播视频数据,并通过GLSurfaceView将所述待播视频数据传递至所述模型去渲染。
5.如权利要求1所述的一种全景视频播放方法,其特征在于,获取待播视频的视频特征后还包括步骤:
浏览器内核根据所述视频特征判断待播视频是否为全景视频,若不是全景视频则通过所述IPTV播放器播放。
6.一种全景视频播放装置,其特征在于,其包括:
视频特征获取模块,其用于:
获取全景视频特征解析服务器地址并存储在浏览器内核;
浏览器内核加载播控页面时解析预置于所述播控页面内的JS语句以获取待播视频的视频特征;
建模与视频渲染模块,其用于:
在所述待播视频为全景视频时,根据所述视频特征调用OpenGL建立与所述待播视频匹配的模型;
在所述待播视频的解码过程中将所述模型的纹理与解码所得视频数据相结合实现视频渲染;
所述视频特征获取模块,还用于:
创建IPTV播放器,并通过webIDL将创建的所述IPTV播放器与所述播控页面绑定;
向所述播控页面绑定的IPTV播放器获取待播视频的url地址;
根据所述待播视频的url地址与所述全景视频特征解析服务器地址获取所述待播视频的视频特征。
7.如权利要求6所述的一种全景视频播放装置,其特征在于,
所述建模与视频渲染模块还用于:
创建IPTV_VR全景视频播放器,并通过webIDL将创建的所述IPTV_VR全景视频播放器与所述播控页面绑定;
将所述待播视频的url地址传给所述IPTV_VR全景视频播放器;
解析所述视频特征获取待播放视频的模型类型和模型特征,并将所述待播放视频的模型类型和模型特征发送至与所述播控页面绑定的IPTV_VR全景视频播放器;
所述IPTV_VR全景视频播放器根据所述待播放视频的模型类型和模型特征调用IPTV_VR全景视频播放器模型创建函数创建与所述待播视频匹配的模型;
所述IPTV_VR全景视频播放器获取待播视频数据,并通过GLSurfaceView将所述待播视频数据传递至所述模型去渲染。
8.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如权利要求1至5中任一项所述全景视频播放方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210014571.5A CN114374869B (zh) | 2022-01-05 | 2022-01-05 | 一种全景视频播放方法、装置及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210014571.5A CN114374869B (zh) | 2022-01-05 | 2022-01-05 | 一种全景视频播放方法、装置及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114374869A CN114374869A (zh) | 2022-04-19 |
CN114374869B true CN114374869B (zh) | 2023-05-23 |
Family
ID=81142760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210014571.5A Active CN114374869B (zh) | 2022-01-05 | 2022-01-05 | 一种全景视频播放方法、装置及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114374869B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115379277B (zh) * | 2022-08-22 | 2023-07-25 | 烽火通信科技股份有限公司 | 一种基于iptv业务的vr全景视频播放方法和系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106341600A (zh) * | 2016-09-23 | 2017-01-18 | 乐视控股(北京)有限公司 | 一种全景视频播放处理方法及装置 |
WO2017084306A1 (zh) * | 2015-11-20 | 2017-05-26 | 乐视控股(北京)有限公司 | 一种在移动设备浏览器中视频播放关键信息的方法及装置 |
WO2017084281A1 (zh) * | 2015-11-18 | 2017-05-26 | 乐视控股(北京)有限公司 | 全景视频的显示方法和装置 |
CN110609964A (zh) * | 2019-08-05 | 2019-12-24 | 烽火通信科技股份有限公司 | 一种iptv浏览器页面实现方法及iptv浏览器 |
CN110650352A (zh) * | 2019-09-06 | 2020-01-03 | 四川天邑康和通信股份有限公司 | 一种iptv浏览器的视频处理方法 |
CN111225293A (zh) * | 2018-11-23 | 2020-06-02 | 深圳市中兴微电子技术有限公司 | 一种视频数据处理方法、装置以及计算机存储介质 |
CN112822518A (zh) * | 2021-04-19 | 2021-05-18 | 浙江华创视讯科技有限公司 | 视频播放方法、装置、系统、电子设备和存储介质 |
CN113766345A (zh) * | 2021-09-26 | 2021-12-07 | 青岛海信宽带多媒体技术有限公司 | 一种播放随机推送视频的方法和机顶盒 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003239385A1 (en) * | 2002-05-10 | 2003-11-11 | Richard R. Reisman | Method and apparatus for browsing using multiple coordinated device |
US8074241B2 (en) * | 2007-03-30 | 2011-12-06 | The Board Of Trustees Of The Leland Stanford Jr. University | Process for displaying and navigating panoramic video, and method and user interface for streaming panoramic video and images between a server and browser-based client application |
CN105681912A (zh) * | 2015-10-16 | 2016-06-15 | 乐视致新电子科技(天津)有限公司 | 一种视频播放方法和装置 |
US20170142389A1 (en) * | 2015-11-18 | 2017-05-18 | Le Holdings (Beijing) Co., Ltd. | Method and device for displaying panoramic videos |
-
2022
- 2022-01-05 CN CN202210014571.5A patent/CN114374869B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017084281A1 (zh) * | 2015-11-18 | 2017-05-26 | 乐视控股(北京)有限公司 | 全景视频的显示方法和装置 |
WO2017084306A1 (zh) * | 2015-11-20 | 2017-05-26 | 乐视控股(北京)有限公司 | 一种在移动设备浏览器中视频播放关键信息的方法及装置 |
CN106341600A (zh) * | 2016-09-23 | 2017-01-18 | 乐视控股(北京)有限公司 | 一种全景视频播放处理方法及装置 |
CN111225293A (zh) * | 2018-11-23 | 2020-06-02 | 深圳市中兴微电子技术有限公司 | 一种视频数据处理方法、装置以及计算机存储介质 |
CN110609964A (zh) * | 2019-08-05 | 2019-12-24 | 烽火通信科技股份有限公司 | 一种iptv浏览器页面实现方法及iptv浏览器 |
CN110650352A (zh) * | 2019-09-06 | 2020-01-03 | 四川天邑康和通信股份有限公司 | 一种iptv浏览器的视频处理方法 |
CN112822518A (zh) * | 2021-04-19 | 2021-05-18 | 浙江华创视讯科技有限公司 | 视频播放方法、装置、系统、电子设备和存储介质 |
CN113766345A (zh) * | 2021-09-26 | 2021-12-07 | 青岛海信宽带多媒体技术有限公司 | 一种播放随机推送视频的方法和机顶盒 |
Non-Patent Citations (1)
Title |
---|
智慧家庭的VR全景视频业务实现;罗传飞;孔德辉;刘翔凯;徐科;杨浩;;电信科学(第10期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114374869A (zh) | 2022-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109327727B (zh) | 一种WebRTC中的直播流处理方法及推流客户端 | |
US11153666B2 (en) | Method and apparatus for releasing video file | |
CN108495185B (zh) | 一种视频标题生成方法和装置 | |
CN111541930B (zh) | 直播画面的显示方法、装置、终端及存储介质 | |
CN108810580B (zh) | 媒体内容推送方法及装置 | |
CN111629253A (zh) | 视频处理方法及装置、计算机可读存储介质、电子设备 | |
WO2018000685A1 (zh) | 一种广告转移方法及装置 | |
CN111901695B (zh) | 视频内容截取方法、装置和设备及计算机存储介质 | |
CN111510756A (zh) | 音视频的切换方法、装置、计算机设备及可读存储介质 | |
CN114374869B (zh) | 一种全景视频播放方法、装置及计算机存储介质 | |
WO2017113855A1 (zh) | 应用程序交互的方法和终端 | |
CN113535063A (zh) | 直播页面切换方法、视频页面切换方法、电子设备及存储介质 | |
JP7058795B2 (ja) | ビデオ処理方法、装置、端末及び記憶媒体 | |
CN113556568B (zh) | 一种云应用程序运行方法、系统、装置与存储介质 | |
JP4849756B2 (ja) | 位置とスケーリングファクタを決定するパラメータを伴うビデオウィンドウを生成する方法および装置 | |
CN114374853A (zh) | 内容展示方法、装置、计算机设备和存储介质 | |
CN114025244A (zh) | 音视频推送方法、装置、设备及计算机可读存储介质 | |
CN112738620A (zh) | 一种媒体资源投屏方法、设备及系统 | |
CN112333508A (zh) | 视频预览方法、系统、设备及存储介质 | |
CN115379277B (zh) | 一种基于iptv业务的vr全景视频播放方法和系统 | |
CN113965768B (zh) | 直播间信息展示方法、装置、电子设备及服务器 | |
CN113784169B (zh) | 一种带弹幕的视频录制方法及装置 | |
CN112269886B (zh) | 共享图像采集方法、窗口共享方法和共享图像采集装置 | |
KR20220136068A (ko) | 미디어 제공 서버, 트리거 영역을 통해 다른 컨텐츠로 전환하는 방법 및 컴퓨터 프로그램 | |
CN113141480A (zh) | 录屏方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |