视频窗口的处理方法及装置与流程

文档序号:17235055发布日期:2019-03-30 08:18阅读:235来源:国知局
视频窗口的处理方法及装置与流程

本发明实施例涉及图像处理技术,尤其涉及一种视频窗口的处理方法及装置。



背景技术:

浏览器通常能够提供视频播放的功能,用户在使用浏览器观看视频时,可以根据需求对浏览器的窗口大小进行调整,其中视频窗口的大小也需要进行相应的调整以适应浏览器的大小。

现有技术在对窗口大小进行调整时,通常采用浏览器的渲染功能实现对浏览器窗口大小的调整,而视频窗口大小的调整则是依赖单独的视频播放芯片。

然而,浏览器的渲染速度和视频播放芯片的处理速度的不同步会导致黑边以及卡顿等问题,使得用户体验下降。



技术实现要素:

本发明实施例提供一种视频窗口的处理方法及装置,以克服在视频窗口缩放过程中出现的黑边及卡顿等问题。

第一方面,本发明实施例提供一种视频窗口的处理方法,包括:

浏览器获取用户触发的视频窗口缩放指令,所述视频窗口缩放指令用于指示视频窗口的播放信息,所述播放信息包括缩小或放大后的所述视频窗口的位置和大小;

所述浏览器从视频播放芯片获取所述视频窗口待播放的视频的图像数据;

所述浏览器根据所述播放信息、所述图像数据和浏览器窗口数据,进行渲染处理,并将渲染处理得到的图像内容显示在显示屏上,其中,所述浏览器窗口数据为根据所述播放信息确定的用于显示浏览器窗口的数据。

在一种可能的设计中,所述浏览器根据所述播放信息、所述图像数据和浏览器窗口数据,进行渲染处理,包括:

所述浏览器根据所述播放信息所指示的视频窗口的位置和大小和所述图像数据进行渲染处理,得到缩放后的视频窗口;其中,渲染得到的图像位于所述缩放后的视频窗口内;以及

所述浏览器根据所述浏览器窗口数据进行渲染处理,得到与所述缩放后的视频窗口适配的浏览器窗口,其中,所述浏览器窗口数据包括所述浏览器窗口的位置和大小以及所述视频窗口在所述浏览器窗口中的位置和大小。

在一种可能的设计中,所述浏览器获取用户触发的视频窗口缩放指令之后,还包括:

所述浏览器向所述视频播放芯片发送播放处理请求,所述播放处理请求包括所述播放信息和预设时长,所述播放处理请求用于指示所述视频播放芯片在预设时长之后根据所述播放信息在所述视频窗口播放剩余视频。

在一种可能的设计中,所述浏览器向所述视频播放芯片发送播放处理请求之前,还包括:

所述浏览器获取前n次用于视频窗口缩放的渲染处理的处理时长,所述n为大于等于1的整数;

所述浏览器根据所述前n次处理时长的平均时长,确定所述预设时长。

在一种可能的设计中,所述浏览器从视频播放芯片获取所述视频窗口待播放的视频的图像数据,包括:

所述浏览器向所述视频播放芯片发送数据获取请求;

所述浏览器接收所述视频播放芯片发送的一帧图像的图像数据。

在一种可能的设计中,所述浏览器向所述视频播放芯片发送数据获取请求之前,还包括:

所述浏览器从网络中获取视频流,并将所述视频流发送至所述视频播放芯片,以使所述视频播放芯片对所述视频流进行解码;

所述浏览器接收所述视频播放芯片发送的一帧图像的图像数据,包括:

所述浏览器接收所述视频播放芯片发送的解码后的一帧图像的图像数据。

在一种可能的设计中,所述浏览器获取用户触发的视频窗口缩放指令,包括:

所述浏览器获取用户操作所述视频窗口中的预设控件触发的所述视频窗口缩放指令;或者

所述浏览器获取用户对所述视频窗口进行拖拽操作触发的视频窗口缩放指令。

第二方面,本发明实施例提供一种视频窗口的处理装置,包括:

指令获取模块,用于浏览器获取用户触发的视频窗口缩放指令,所述视频窗口缩放指令用于指示视频窗口的播放信息,所述播放信息包括缩小或放大后的所述视频窗口的位置和大小;

图像数据获取模块,用于所述浏览器从视频播放芯片获取所述视频窗口待播放的视频的图像数据;

渲染模块,用于所述浏览器根据所述播放信息、所述图像数据和浏览器窗口数据,进行渲染处理,并将渲染处理得到的图像内容显示在显示屏上,其中,所述浏览器窗口数据为根据所述播放信息确定的用于显示浏览器窗口的数据。

在一种可能的设计中,所述渲染模块具体用于:

所述浏览器根据所述播放信息所指示的视频窗口的位置和大小和所述图像数据进行渲染处理,得到缩放后的视频窗口;其中,渲染得到的图像位于所述缩放后的视频窗口内;以及

所述浏览器根据所述浏览器窗口数据进行渲染处理,得到与所述缩放后的视频窗口适配的浏览器窗口,其中,所述浏览器窗口数据包括所述浏览器窗口的位置和大小以及所述视频窗口在所述浏览器窗口中的位置和大小。

在一种可能的设计中,还包括:发送模块;

所述发送模块具体用于:在所述浏览器获取用户触发的视频窗口缩放指令之后,所述浏览器向所述视频播放芯片发送播放处理请求,所述播放处理请求包括所述播放信息和预设时长,所述播放处理请求用于指示所述视频播放芯片在预设时长之后根据所述播放信息在所述视频窗口播放剩余视频。

在一种可能的设计中,所述发送模块还用于:

在所述浏览器向所述视频播放芯片发送播放处理请求之前,所述浏览器获取前n次用于视频窗口缩放的渲染处理的处理时长,所述n为大于等于1的整数;

所述浏览器根据所述前n次处理时长的平均时长,确定所述预设时长。

在一种可能的设计中,所述图像数据获取模块具体用于:

所述浏览器向所述视频播放芯片发送数据获取请求;

所述浏览器接收所述视频播放芯片发送的一帧图像的图像数据。

在一种可能的设计中,所述图像数据获取模块还用于:

所述浏览器向所述视频播放芯片发送数据获取请求之前,所述浏览器从网络中获取视频流,并将所述视频流发送至所述视频播放芯片,以使所述视频播放芯片对所述视频流进行解码;

所述浏览器接收所述视频播放芯片发送的一帧图像的图像数据,包括:

所述浏览器接收所述视频播放芯片发送的解码后的一帧图像的图像数据。

在一种可能的设计中,所述指令获取模块具体用于:

所述浏览器获取用户操作所述视频窗口中的预设控件触发的所述视频窗口缩放指令;或者

所述浏览器获取用户对所述视频窗口进行拖拽操作触发的视频窗口缩放指令。

第三方面,本发明实施例提供一种视频窗口的处理设备,包括:

存储器,用于存储程序;

处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。

第四方面,本发明实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。

本发明实施例提供一种视频窗口的处理方法及装置,该方法包括:浏览器获取用户触发的视频窗口缩放指令,视频窗口缩放指令用于指示视频窗口的播放信息,播放信息包括缩小或放大后的视频窗口的位置和大小。浏览器从视频播放芯片获取视频窗口待播放的视频的图像数据。浏览器根据播放信息、图像数据和浏览器窗口数据,进行渲染处理,并将渲染处理得到的图像内容显示在显示屏上,其中,浏览器窗口数据为根据播放信息确定的用于显示浏览器窗口的数据。通过浏览器对视频的图像数据进行渲染处理,进一步将经过缩放处理的视频窗口显示在显示屏上,避免了视频播放芯片和浏览器处理速度不匹配导致的黑边以及卡顿等问题,从而提升用户体验。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为现有的视频窗口的处理方法的系统示意图;

图2a为本发明实施例提供的视频窗口的处理方法的系统示意图一;

图2b为本发明实施例提供的视频窗口的处理方法的分层示意图;

图3为本发明实施例提供的视频窗口的处理方法的流程图一

图4为本发明实施例提供的视频窗口的处理方法的流程图二;

图5为本发明实施例提供的视频窗口的处理方法的界面示意图一;

图6为本发明实施例提供的视频窗口的处理方法的界面示意图二;

图7为本发明实施例提供的视频窗口的处理方法的系统示意图二;

图8为本发明实施例提供的视频窗口的处理装置的结构示意图一;

图9为本发明实施例提供的视频窗口的处理装置的结构示意图二;

图10为本发明实施例提供的视频窗口的处理设备的硬件结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

首先结合图1对现有技术中调整窗口大小的实现方式进行简单介绍,图1为现有的视频窗口的调整方法的系统示意图。

如图1所示,其中浏览器101用于对浏览器窗口102进行渲染,具体的,浏览器101例如可以在接收到窗口缩放指令后,由浏览器101重新计算浏览器窗口102的位置和大小,进一步实现对浏览器窗口102的渲染。

其中视频播放芯片102用于对视频窗口104进行渲染,具体的,在根据窗口缩放指令进行视频窗口调整的过程中,视频播放芯片102从浏览器101接收视频数据并解码,同时视频播放芯片102还从浏览器101接收最新的视频窗口102大小和位置,争取让其与浏览器窗口101位置和大小保持一致。

具体的,理论上来讲,浏览器窗口103与视频窗口104在调整过程大小以及位置应该是保持同步变化的,从而显示在屏幕105上,然而因为浏览器101以及视频播放芯片102的处理速度不同、信息同步等问题,会导致屏幕105出现黑边、卡顿以及延时播放等现象。

基于上述问题,本发明实施例提供一种视频窗口的处理方法,下面结合具体的实施例进行详细介绍。

图2a为本发明实施例提供的视频窗口的处理方法的系统示意图一。如图2a所示,包括:浏览器201、视频播放芯片202。

具体的,浏览器201是一种用于检索并展示万维网信息资源的应用程序,其中信息资源例如可以为网页、图片、视频等,其中浏览器201例如可以为谷歌浏览器,还例如可以为火狐浏览器等,本发明实施例对浏览器201的具体类型不做特别限定。

进一步地,视频播放芯片202用于在浏览器展示视频时,对待展示的视频进行处理,具体的,视频播放芯片202中例如可以包括解码器,解码器对待展示的视频进行解码处理从而得到视频的图像数据,其中视频的图像数据即为视频中的帧,本发明实施例对视频播放芯片202的具体型号和实现方式不做特别限定。

在本实施例中,浏览器201通常通过窗口的方式对获取的信息资源进行展示,即图1中示意的浏览器窗口203,当浏览器201用于播放视频时,视频播放芯片202待播放的视频的图像数据发送至视频窗口204,从而对视频进行展示,其中浏览器窗口203和视频窗口204例如可以通过嵌套的方式进行展示,还例如可以将浏览器窗口203和视频窗口204分离展示,本发明实施例对此不做限制,其中浏览器窗口203和视频窗口204的大小可以根据用户触发的指令进行调整。

进一步地,将浏览器窗口203以及视频窗口204呈现至屏幕205上,从而实现浏览器对视频的展示,其中屏幕205例如可以为电脑的屏幕,还例如可以为电视的屏幕,本发明实施例对屏幕的具体型号、大小以及实现方式均不做限制,本领域技术人员可以理解,凡是安装有浏览器201的设备的显示装置均能作为本发明实施例中的屏幕205。

在上述实施例的基础上,其中屏幕在进行视频播放时通常时采用分层的方式,下面结合图2b对屏幕分层进行详细介绍。

图2b为本发明实施例提供的视频窗口的处理方法的分层示意图。如图2b所示,屏幕在对页面进行展示时,由于界面内容众多,因此可以将展示页面划分为2个层次,其中每个层次的展示内容和模块各不相同,具体的,如图2b所示,其中浏览器层206用于对浏览器窗口中的文字、链接或图片等内容进行展示,其中视频层207用于对视频窗口进行展示,

进一步地,浏览器层206例如可以为一个单独的分层,还例如可以包含多个分层,本发明实施例对此不做限制,当浏览器层206包含多个分层时,其分层的例如可以包含分层0、分层1以及分层2,其中分层0(206)例如可以用于显示浏览器、手机软件以及文字电视广播等,分层1(207)例如可以用于对标题以及mheg-5等内容进行显示,分层2(203)例如可以用于对用户界面进行显示,以上只是示例性的进行介绍,本发明实施例对浏览器层206的具体实现方式不做特别限定。

其中,浏览器层206和视频层207按照图2b给出的顺序叠加进行显示,从而得到展示给用户的界面,因为在进行展示时各分层分离,可能会出现各分层不同步而导致卡顿的问题,因此本发明实施例提供一种视频窗口的处理方法,在获取到用户触发的视频缩放指令后,根据该视频缩放指令同时渲染浏览器窗口和视频窗口,以保证二者的同步,然后再通过图2a和图2b所示方法进行后续的视频窗口的显示。下面结合图3进行进一步介绍。

图3为本发明实施例提供的视频窗口的处理方法的流程图一。如图3所示,该方法包括:

s301、浏览器获取用户触发的视频窗口缩放指令,视频窗口缩放指令用于指示视频窗口的播放信息,播放信息包括缩小或放大后的视频窗口的位置和大小。

具体的,当浏览器展示视频数据时,浏览器向用户提供调整视频窗口大小的预设控件,例如在视频窗口上显示全屏控件或者退出全屏控件,还例如可以在浏览器的窗口边缘位置提供调整浏览器窗口大小的触发控件,本发明实施例对预设控件的具体实现方式不做特别限制。

进一步地,浏览器获取用户触发的视频窗口缩放指令,其中触发的方式例如可以为点击全屏控件,还例如可以为通过鼠标拖拽浏览器窗口边缘位置的触发控件等,本领域技术人员可以理解,触发视频窗口缩放指令的具体方式可以根据浏览器的设计进行调整,本发明实施例对此不做限制。

其中,视频窗口缩放指令可以用于指示视频窗口缩小,还可以用于指示视频窗口放大,进一步地,视频窗口缩放指令指示视频播放窗口缩小或放大后的位置和大小,例如浏览器获取到用户通过点击全屏控件触发的视频窗口缩放指令,其中视频窗口放大之后的位置和大小均为预设值,例如全屏控件对应的预设窗口大小为屏幕的大小,位置例如可以为屏幕中央,以上只是示例性的进行介绍,本发明实施例对视频窗口的缩小或放大后的位置不做限定。

可选地,还例如浏览器获取到用户通过拖拽浏览器窗口的边缘位置的触发控件而触发的视频窗口缩放指令,其中视频窗口缩放之后的位置和大小为根据用户的拖拽操作确定的数值,以上只是示例性的进行介绍,本发明实施例对视频窗口缩放指令不做特别限制。

s302、浏览器从视频播放芯片获取视频窗口待播放的视频的图像数据。

具体的,视频播放芯片用于对待播放的视频进行解码,解码之后得到视频的图像数据,其中视频的图像数据为视频中的帧,视频播放芯片中例如可以包括存储器,将解码后的视频的图像数据进行存储,本发明实施例对视频播放芯片的具体组成以及实现方式不做特别限制。

进一步地,在对视频窗口进行缩放的过程中,浏览器从视频播放芯片中获取视频窗口待播放的视频的图像数据。

s303、浏览器根据播放信息、图像数据和浏览器窗口数据,进行渲染处理,并将渲染处理得到的图像内容显示在显示屏上,其中,浏览器窗口数据为根据播放信息确定的用于显示浏览器窗口的数据。

在本实施例中,浏览器还用于对浏览器窗口的显示内容和视频窗口的显示内容进行渲染,具体的,浏览器根据播放信息确定视频窗口的位置和大小,其次将获取的图像数据渲染至视频窗口,从而实现视频窗口的显示内容的渲染,其中渲染的方式例如可以为浏览器构建渲染树对图像数据进行保存,其次渲染模块对渲染树进行遍历从而实现视频窗口的渲染,本发明实施例对渲染的具体方式不做特别限制

进一步地,浏览器窗口除视频窗口之外还例如还可以包括文字、链接或图片等内容,具体的,根据浏览器窗口数据对浏览器窗口进行渲染处理,其中浏览器窗口数据例如可以包括浏览器窗口的位置和大小,还例如可以包括视频窗口在浏览器窗口中的位置和大小,浏览器根据浏览器窗口数据对文字或者链接等内容进行渲染,渲染完成之后,将渲染得到的图像内容显示在显示屏上,其中图像内容包括图像数据和浏览器窗口数据。

可选地,用户还可以触发浏览器窗口缩放指令,其中触发的方式与视频窗口缩放指令的触发方式类似,此处不再赘述,其中浏览器窗口缩放指令用于指示浏览器窗口的位置和大小,浏览器根据浏览器窗口缩放指令确定浏览器窗口的位置和大小,将浏览器窗口数据渲染至浏览器窗口,本发明实施例对浏览器窗口数据不做特别限制。

可选地,触发浏览器窗口缩放指令和视频窗口缩放指令的预设控件可以为一个控件,例如浏览器窗口上可以设置有最大化控件,通过点击最大化控件可以触发浏览器窗口缩放指令,将浏览器窗口放大至显示屏的屏幕的大小,同时还可以触发视频窗口缩放指令,将视频窗口与浏览器窗口等比例的进行放大,以上只是一种可能的实现方式,本发明实施例对此不做特别限制。

具体的,与现有技术不同的是,现有技术在进行视频窗口缩放的过程中,是利用视频播放芯片对待播放的视频的图像数据进行处理从而显示在显示屏上,然而视频播放芯片与浏览器的处理速度不匹配会导致出现黑边以及卡顿的问题,因此本发明实施例在进行视频窗口缩放的过程中,采用浏览器对待播放的视频的图像数据进行处理,从而解决了处理速度不匹配的问题。

本发明实施例提供的视频窗口的处理方法,包括:浏览器获取用户触发的视频窗口缩放指令,视频窗口缩放指令用于指示视频窗口的播放信息,播放信息包括缩小或放大后的视频窗口的位置和大小。浏览器从视频播放芯片获取视频窗口待播放的视频的图像数据。浏览器根据播放信息、图像数据和浏览器窗口数据,进行渲染处理,并将渲染处理得到的图像内容显示在显示屏上,其中,浏览器窗口数据为根据播放信息确定的用于显示浏览器窗口的数据。通过浏览器对视频的图像数据进行渲染处理,进一步将经过缩放处理的视频窗口显示在显示屏上,避免了视频播放芯片和浏览器处理速度不匹配导致的黑边以及卡顿等问题,从而提升用户体验。

在上述实施例的基础上,下面结合图4至图7对本发明实施例提供的视频窗口的处理方法进行进一步地详细介绍。图4为本发明实施例提供的视频窗口的处理方法的流程图二,图5为本发明实施例提供的视频窗口的处理方法的界面示意图一,图6为本发明实施例提供的视频窗口的处理方法的界面示意图二,图7为本发明实施例提供的视频窗口的处理方法的系统示意图二。

如图4所示,该方法包括:

s401、浏览器获取用户操作视频窗口中的预设控件触发的视频窗口缩放指令;或者

浏览器获取用户对视频窗口进行拖拽操作触发的视频窗口缩放指令。

其中,视频窗口缩放指令用于指示视频窗口的播放信息,播放信息包括缩小或放大后的视频窗口的位置和大小。

具体的,在视频窗口上设置有预设控件,用户通过操作预设控件,可以触发视频窗口缩放指令,进一步地,视频窗口缩放指令用于指示视频窗口的缩小或放大后的位置和大小,其中预设控件例如可以为全屏控件,还例如可以为最大化控件等,本发明实施例对预设控件的具体实现方式不做特别限制。

下面结合图5对预设控件进行介绍,图5中示例性的给出了预设控件为全屏控件的情况,如图5所示,视频窗口502设置在浏览器窗口501中,其中浏览器窗口501还包括文字、网页、图片等,在视频窗口502中设置有预设控件503,其中预设控件503具体为全屏控件,用户例如可以通过点击全屏控件503触发视频窗口缩放指令。

进一步地,视频窗口缩放指令例如可以指示视频窗口的大小为当前浏览器窗口的大小,视频窗口的位置为浏览器窗口的中央等,图5仅为示例性的介绍,本发明实施例对浏览器窗口和视频窗口的位置以及预设控件不做特别限制,上述介绍了预设控件为全屏控件的情况,其余的预设控件类似,此处不再赘述。

可选地,用户还可以通过对视频窗口进行拖拽操作从而触发视频窗口缩放指令,具体的,视频窗口的边缘位置例如可以设置有可拖拽的控件,当用户对视频窗口的边缘位置进行操作时,可拖拽的控件根据用户的操作触发视频窗口缩放指令,下面结合图6拖拽操作进行解释,如图6所示,视频窗口602设置在浏览器窗口601中,在视频窗口602的左下角设置有可拖拽的控件603,当用户的对视频窗口602的左下角进行操作时,可拖拽的控件603被触发并获取用户的视频窗口缩放指令,其中用户的操作例如可以为通过鼠标拖动控件603,还例如可以为通过触摸屏拖动控件603,本发明实施例对此不做限制。

进一步的,用户对可拖拽的控件603进行操作时,例如可以在显示屏的任意位置停止操作,当用户停止操作时,视频窗口的位置和大小即为视频窗口缩放指令所指示的位置和大小,图6中给出的拖拽操作只是一种可能的实现方式,其中可拖拽控件的设置位置还例如可以设置在视频窗口的边缘的任意位置,还例如可以设置在浏览器窗口的边缘的任意位置,通过对浏览器窗口边缘进行操作,从而实现视频窗口的等比例缩放,本领域技术人员可以理解,拖拽操作可以根据需要自行设定,本发明实施例对此不做限制。

s402、浏览器获取前n次用于视频窗口缩放的渲染处理的处理时长,n为大于等于1的整数。

s403、浏览器根据前n次处理时长的平均时长,确定预设时长。

在本实施例中,在对视频窗口进行缩放的过程中,由浏览器执行视频窗口的渲染功能,其中浏览器对视频窗口进行渲染处理需要一定的时间,具体的时间长短取决于浏览器的处理速度,浏览器在对视频窗口的缩放过程中对视频窗口进行渲染时,记录每次渲染处理的处理时长。

进一步地,当浏览器需要对视频窗口进行渲染处理时,获取前n次渲染处理的时长,其中n为大于等于1的整数,本领域技术人员可以理解,n的具体数值可以根据需要自行设定,本发明实施例对此不做限制,浏览器根据前n次处理时长的平均时长,确定预设时长,通过确定预设时长,可以初步计算浏览器在视频窗口进行缩放的过程中进行渲染处理所需要的时长,从而提高视频缩放过程中渲染处理的可控性。

可选地,在本发明实施例中,例如还可以根据用户触发视频窗口缩放指令的方式的不同,确定不同的预设时长,例如当用户触发视频窗口缩放指令的方式为操作全屏控件时,浏览器可以根据前n次全屏控件触发的视频缩放指令对应的渲染处理的时长,确定全屏操作对应的渲染处理的预设时长,还例如当用户触发视频窗口缩放指令的方式为对视频窗口进行拖拽操作时,浏览器可以根据前n次拖拽操作对应的处理时长,确定拖拽操作对应的渲染处理的预设时长,以上仅为示例性的进行介绍,本发明实施例对确定预设时长的具体方式不做特别限定。

s404、浏览器向视频播放芯片发送播放处理请求,播放处理请求包括播放信息和预设时长,播放处理请求用于指示视频播放芯片在预设时长之后根据播放信息在视频窗口播放剩余视频。

在本实施例中,对视频窗口进行缩放的过程中,由浏览器对视频窗口进行渲染处理,其中浏览器进行渲染处理时需要向视频播放芯片发送播放请求处理,从而从视频播放芯片中获取渲染所需要的数据,具体的,播放请求处理中包括播放信息,播放信息用于指示视频窗口缩放之后的位置和大小,从而保证视频播放芯片和浏览器之间对视频窗口缩放之后的位置和大小进行同步。

进一步地,播放请求处理中还包括预设时长,在本实施例中,浏览器在对视频窗口进行缩放的过程中对视频窗口进行渲染处理,将视频显示在显示屏上,从而避免视频窗口缩放过程中因浏览器和视频播放芯片处理速度不同步,而出现的卡顿以及黑边等问题,当视频窗口的缩放完成之后,由视频播放芯片实现视频窗口的视频播放,从而避免浏览器承载过多的处理工作而出现过载的情况。

具体的,视频播放芯片接收到播放请求处理后,向浏览器发送进行视频渲染所需要的数据,并在预设时长之后根据播放信息实现对视频窗口中对剩余视频的播放。

s405、浏览器从网络中获取视频流,并将视频流发送至视频播放芯片,以使视频播放芯片对视频流进行解码。

s406、浏览器接收视频播放芯片发送的解码后的一帧图像的图像数据。

在本实施例中,浏览器获取待播放的视频的视频流,其中视频流是指视频数据的传输,进一步地,浏览器将视频流发送至视频播放芯片,视频播放芯片中例如可以包括解码器,其中解码器用于对视频流进行解码,从而将视频解码为以帧为单位的图像数据,下面结合图7对浏览器和视频播放芯片进行详细介绍。

如图7所示,浏览器701包括网络7011、播放7012、语音7013以及渲染7014,其中网络7011用于获取浏览器701待显示的信息资源,其中待显示的信息资源例如可以为文字、链接、视频流、音频流等,本发明实施例对网络7011不做特别限制,进一步地,播放7012用于对获取的视频流进行展示,具体的,在视频窗口的缩放过程中,由浏览器实现对视频窗口的渲染从而进行展示,当视频窗口缩放结束之后,由视频播放芯片控制视频播放窗口的显示。

进一步地,语音7012用于对获取的语音数据进行展示,其中展示的方式例如可以为语音条,还例如可以为播放控件等,本发明实施例对语音7012不做特别限制,渲染7014用于实现对浏览器上待显示的内容进行渲染,其中渲染的具体内容例如可以为视频,还例如可以为文字及图片等,本发明实施例对渲染7014不做特别限制,本领域技术人员可以理解,凡是能实现渲染功能的均属于本发明实施例的保护范围。

在本实施例中,芯片702包括解码7021、帧存储7022以及显示7023,其中解码7021用于对视频流进行解码,从而获得视频流的帧数据,并将帧数据存储至帧存储7022中,进一步地,显示7023用于没有对视频窗口进行缩放时实现视频窗口的显示。

具体的,在对视频窗口进行缩放的过程中,浏览器701通过网络7011获取视频流,并将视频流7011通过播放7013发送至视频播放芯片702,视频播放芯片702中的解码7021对视频流进行解码之后得到视频流的帧数据,并将帧数据存储至帧存储7022中,进一步地,视频播放芯片702将帧数据发送至浏览器701的渲染7014中,渲染7014解码后的一帧图像的图像数据实现对视频窗口的渲染,以上只是示例性的进行介绍,本发明实施例对浏览器和视频播放芯片不做特别限制。

s407、浏览器根据播放信息所指示的视频窗口的位置和大小和图像数据进行渲染处理,得到缩放后的视频窗口。以及

浏览器根据浏览器窗口数据进行渲染处理,得到与缩放后的视频窗口适配的浏览器窗口,并将渲染处理得到的图像内容显示在显示屏上。

其中,渲染得到的图像位于缩放后的视频窗口内。

其中,浏览器窗口数据包括浏览器窗口的位置和大小以及视频窗口在浏览器窗口中的位置和大小。

具体的,播放信息用于指示视频窗口的位置和大小,浏览器根据播放信息对图像数据进行渲染处理,如图7所示,其中浏览器701的还包括渲染管道7015以及光栅化7017,其中浏览器701在接收到视频播放芯片发送的解码后的一帧图像的图像数据后,浏览器701构建渲染树,其中渲染树用于对视频的帧数据进行存储,其次通过渲染管道7015遍历渲染树,最后通过光栅化7017调用第三方数据库将此一帧图像显示在显示屏上,其中第三方数据库例如可以为开放式图形库(opengraphicslibrary,opengl),即图7中示例的opengl703,本领域技术人员可以理解,数据库的选择可以根据实际需要进行调整,本实施例对此不做限制。

进一步地,对图像数据渲染处理之后得到缩放后的视频窗口,其中渲染处理得到的图像位于缩放后的视频窗口内,此时视频窗口的大小和位置为播放信息所指示的大小和位置。

在本实施例中,浏览器还用于根据浏览器窗口数据对浏览器视频以外的数据进行渲染处理,具体的,根据浏览器窗口数据确定浏览器窗口的位置和大小,进一步地,根据浏览器窗口数据确定视频窗口在浏览器窗口中的位置和大小,从而确定文字、链接或图片等出视频窗口以外的内容的位置和大小。

其中,浏览器窗口与缩放后的视频窗口大小是适配的,其中适配例如可以为等比例,还例如可以为控制视频窗口的大小为浏览器窗口大小的一半,位置居中,本领域技术人员可以理解,浏览器视频窗口的视频窗口的视频可以根据需要进行设定,本发明实施例对此不做限制。进一步地,将渲染处理得到的图像内容显示在显示屏上,其中渲染得到的图像内容包括浏览器窗口的内容以及视频窗口的内容。

本发明实施例提供的视频窗口的处理方法,包括:浏览器获取用户操作视频窗口中的预设控件触发的视频窗口缩放指令;或者浏览器获取用户对视频窗口进行拖拽操作触发的视频窗口缩放指令。浏览器获取前n次用于视频窗口缩放的渲染处理的处理时长,n为大于等于1的整数。浏览器根据前n次处理时长的平均时长,确定预设时长。浏览器向视频播放芯片发送播放处理请求,播放处理请求包括播放信息和预设时长,播放处理请求用于指示视频播放芯片在预设时长之后根据播放信息在视频窗口播放剩余视频。浏览器从网络中获取视频流,并将视频流发送至视频播放芯片,以使视频播放芯片对视频流进行解码。浏览器接收视频播放芯片发送的解码后的一帧图像的图像数据。浏览器根据播放信息所指示的视频窗口的位置和大小和图像数据进行渲染处理,得到缩放后的视频窗口。以及浏览器根据浏览器窗口数据进行渲染处理,得到与缩放后的视频窗口适配的浏览器窗口,并将渲染处理得到的图像内容显示在显示屏上。通过浏览器对视频窗口缩放过程中的视频的图像数据进行渲染处理,避免了视频播放芯片和浏览器处理速度不匹配导致的黑边以及卡顿等问题,同时在视频窗口缩放完成之后,由视频播放芯片控制视频窗口的显示,从而避免了浏览器过载,提升浏览器视频播放的的稳定性。

图8为本发明实施例提供的视频窗口的处理装置的结构示意图一。如图8所示,该视频窗口的处理装置80包括:指令获取模块801、图像数据获取模块802以及渲染模块803。

指令获取模块801,用于浏览器获取用户触发的视频窗口缩放指令,视频窗口缩放指令用于指示视频窗口的播放信息,播放信息包括缩小或放大后的视频窗口的位置和大小;

图像数据获取模块802,用于浏览器从视频播放芯片获取视频窗口待播放的视频的图像数据;

渲染模块803,用于浏览器根据播放信息、图像数据和浏览器窗口数据,进行渲染处理,并将渲染处理得到的图像内容显示在显示屏上,其中,浏览器窗口数据为根据播放信息确定的用于显示浏览器窗口的数据。

可选地,渲染模块803具体用于:

浏览器根据播放信息所指示的视频窗口的位置和大小和图像数据进行渲染处理,得到缩放后的视频窗口;其中,渲染得到的图像位于缩放后的视频窗口内;以及

浏览器根据浏览器窗口数据进行渲染处理,得到与缩放后的视频窗口适配的浏览器窗口,其中,浏览器窗口数据包括浏览器窗口的位置和大小以及视频窗口在浏览器窗口中的位置和大小。

本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。

图9为本发明实施例提供的视频窗口的处理装置的结构示意图二。如图9所示,本实施例在图8实施例的基础上,还包括:发送模块904。

发送模块904具体用于:在浏览器获取用户触发的视频窗口缩放指令之后,浏览器向视频播放芯片发送播放处理请求,播放处理请求包括播放信息和预设时长,播放处理请求用于指示视频播放芯片在预设时长之后根据播放信息在视频窗口播放剩余视频。

可选地,发送模块904还用于:

在浏览器向视频播放芯片发送播放处理请求之前,浏览器获取前n次用于视频窗口缩放的渲染处理的处理时长,n为大于等于1的整数;

浏览器根据前n次处理时长的平均时长,确定预设时长。

可选地,图像数据获取模块902具体用于:

浏览器向视频播放芯片发送数据获取请求;

浏览器接收视频播放芯片发送的一帧图像的图像数据。

可选地,图像数据获取模块902还用于:

浏览器向视频播放芯片发送数据获取请求之前,浏览器从网络中获取视频流,并将视频流发送至视频播放芯片,以使视频播放芯片对视频流进行解码;

浏览器接收视频播放芯片发送的一帧图像的图像数据,包括:

浏览器接收视频播放芯片发送的解码后的一帧图像的图像数据。

可选地,指令获取模块901具体用于:

浏览器获取用户操作视频窗口中的预设控件触发的视频窗口缩放指令;或者

浏览器获取用户对视频窗口进行拖拽操作触发的视频窗口缩放指令。

本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。

图10为本发明实施例提供的视频窗口的处理设备的硬件结构示意图,如图10所示,本实施例的视频窗口的处理设备100包括:处理器1001以及存储器1002;其中

存储器1002,用于存储计算机执行指令;

处理器1001,用于执行存储器存储的计算机执行指令,以实现上述实施例中视频窗口的处理方法所执行的各个步骤。具体可以参见前述方法实施例中视频窗口的处理方法的相关描述。

可选地,存储器1002既可以是独立的,也可以跟处理器1001集成在一起。

当存储器1002独立设置时,该语音交互设备还包括总线1003,用于连接所述存储器1002和处理器1001。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上服务器所执行的视频窗口的处理方法。

在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。

应理解,上述处理器可以是中央处理单元(英文:centralprocessingunit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

存储器可能包含高速ram存储器,也可能还包括非易失性存储nvm,例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。

总线可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外部设备互连(peripheralcomponent,pci)总线或扩展工业标准体系结构(extendedindustrystandardarchitecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。

上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1