视频重定向的方法和装置与流程

文档序号:11157620阅读:546来源:国知局
视频重定向的方法和装置与制造工艺

本发明涉及信息技术的领域,尤其是涉及一种视频重定向的方法和装置。



背景技术:

在当前远程桌面的技术背景下,传统的虚拟化桌面远程访问技术(或者,共享方案和VDI方案),都无法很好的解决用户播放视频的问题,如果不做任何处理,播放视频时会非常卡顿。针对该问题,现有技术中一种较好的方式是播放视频后将整个屏幕再次压制成一个视频流传输给客户端,客户端将这个视频作为整个桌面画面来显示,这样能获得较流畅的观感。

但是,将屏幕重新压制成视频这个方式会消耗大量的主机CPU资源,因为每个桌面都需要单独实时压制成视频,加上播放器播放视频时本身也要消耗较高CPU,导致终端方案通常播放视频时CPU占用会非常高,很难同时供多个用户流畅的播放高清视频。



技术实现要素:

本发明的目的在于提供一种视频重定向的方法和装置,以缓解了现有技术中服务器通过远程桌面向客户端传输音视频数据时,性能较差的技术问题。

根据本发明实施例的一个方面,提供了一种视频重定向的方法,包括:在服务器中的视频播放器对待播放音视频进行解码播放之前,对所述待播放音视频进行拦截,其中,所述待播放音视频为客户端通过远程桌面向服务器请求播放的视频;对所述视频播放器进行处理,以使处理之后的所述视频播放器在所述待播放音视频被拦截之后,不生成报警信息;在对所述视频播放器进行处理之后,将所述待播放音视频发送至所述客户端,其中,所述客户端在接收到所述待播放音视频之后,对所述待播放音视频和所述远程桌面的画面进行合成,并对合成之后的画面进行本地解码操作,以使将所述合成之后的画面显示在所述客户端的显示界面上。

进一步地,对所述视频播放器进行处理包括:向所述视频播放器发送播放信息,其中,所述播放信息用于指示所述视频播放器播放预设视频,以替换所述视频播放器对所述待播放音视频的播放,所述预设视频的每帧画面均为关键色所指示的颜色,并设置所述客户端的桌面画面中色值为#00000F的颜色为透明色,其中,所述关键色为预先选取的一种颜色。

进一步地,将所述待播放音视频发送至所述客户端中进行解码播放包括:确定当前时刻播放的所述待播放音视频的视频流和音频流所属的客户端;将所述当前时刻的所述视频流和所述音频流发送至所述所属的客户端中进行解码播放。

根据本发明实施例的另一个方面,还提供了一种视频重定向的方法,包括:获取服务器发送的待播放音视频,其中,所述待播放音视频为所述服务器在视频播放器对所述待播放音视频进行解码播放之前拦截得到的,所述待播放音视频为客户端通过远程桌面向所述服务器请求播放的视频,所述服务器在向客户端发送所述待播放音视频之前,对所述视频播放器进行处理,以使处理之后的所述视频播放器在所述待播放音视频被拦截之后,不生成报警信息;对所述待播放音视频和所述远程桌面的画面进行合成,得到合成结果,并对合成之后的画面进行本地解码操作,以使将所述合成之后的画面显示在所述客户端的显示界面上。

进一步地,对所述待播放音视频和所述远程桌面的画面进行合成,得到合成结果包括:对所述待播放音视频进行解码操作;在对所述待播放音视频进行解码操作的同时,将解码之后的所述待播放音视频与所述远程桌面的画面进行实时合成,并将所述合成结果实时显示在所述显示界面上。

进一步地,将解码之后的所述待播放音视频与所述远程桌面的画面进行实时合成包括:获取所述远程桌面中包含的多个窗口的画面;对所述多个窗口的画面进行实时封装,封装之后得到所述远程桌面的画面;将解码之后的所述待播放音视频与封装之后得到所述远程桌面的画面进行合成。

根据本发明实施例的另一个方面,还提供了一种视频重定向的装置,包括:拦截单元,用于在服务器中的视频播放器对待播放音视频进行解码播放之前,对所述待播放音视频进行拦截,其中,所述待播放音视频为客户端通过远程桌面向服务器请求播放的视频;处理单元,用于对所述视频播放器进行处理,以使处理之后的所述播放器在所述待播放音视频被拦截之后,不生成报警信息;第一发送单元,用于在对所述视频播放器进行处理之后,将所述待播放音视频发送至所述客户端,其中,所述客户端在接收到所述待播放音视频之后,对所述待播放音视频和所述远程桌面的画面进行合成,并对合成之后的画面进行本地解码操作,以使将所述合成之后的画面显示在所述客户端的显示界面上。

进一步地,所述处理单元用于:向所述视频播放器发送播放信息,其中,所述播放信息用于指示所述视频播放器播放预设视频,以替换所述视频播放器对所述待播放音视频的播放,所述预设视频中每帧画面的配色方案由colorkey工具生成,并且在所述配色方案中所述colorkey工具采用色值为#00000F的颜色作为透明色。

根据本发明实施例的另一个方面,还提供了一种视频重定向的装置,包括:获取单元,用于获取服务器发送的待播放音视频,其中,所述待播放音视频为所述服务器在视频播放器对所述待播放音视频进行解码播放之前拦截得到的,所述待播放音视频为客户端通过远程桌面向所述服务器请求播放的视频,所述服务器在向客户端发送所述待播放音视频之前,对所述视频播放器进行处理,以使处理之后的所述视频播放器在所述待播放音视频被拦截之后,不生成报警信息;合成单元,用于对所述待播放音视频和所述远程桌面的画面进行合成,得到合成结果,并对合成之后的画面进行本地解码操作,以使将所述合成之后的画面显示在所述客户端的显示界面上。

进一步地,所述合成单元用于:对所述待播放音视频进行解码操作;在对所述待播放音视频进行解码操作的同时,将解码之后的所述待播放音视频与所述远程桌面的画面进行实时合成,并将所述合成结果实时显示在所述显示界面上。

在本发明实施例中,首先在服务器中的视频播放器对待播放音视频进行解码播放之前,对待播放音视频进行拦截,然后,对视频播放器进行处理,以使处理之后的播放器在待播放音视频被拦截之后,不生成报警信息,最后,在对视频播放器进行处理之后,将待播放音视频发送至客户端进行显示。在本发明实施例中,采用在客户端侧对音视频进行处理的方式,达到了降低服务器消耗的目的,进而解决了现有技术中服务器通过远程桌面向客户端传输音视频数据时,性能较差的技术问题,从而实现了提高音视频的播放效果的技术效果。

附图说明

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

图1是根据本发明实施例的一种视频重定向的方法的流程图;

图2是根据本发明实施例的另一种视频重定向的方法的流程图;

图3是根据本发明实施例的一种视频重定向的装置的示意图;

图4是根据本发明实施例的另一种视频重定向的装置的示意图。

具体实施方式

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

在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

实施例1

根据本发明实施例,提供了一种视频重定向的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明实施例的一种视频重定向的方法的流程图,如图1所示,该方法包括如下步骤:

步骤S102,在服务器中的视频播放器对待播放音视频进行解码播放之前,对待播放音视频进行拦截,其中,待播放音视频为客户端通过远程桌面向服务器请求播放的视频;

视频播放器的种类为多种,在本发明实施例的一个可选实施方式中,视频播放器选取为VLC播放器。除了VLC播放器之外,还包括其他的视频播放器,具体视频播放器的种类在本发明实施例中不做具体限定。

步骤S104,对视频播放器进行处理,以使处理之后的视频播放器在待播放音视频被拦截之后,不生成报警信息;

步骤S106,在对视频播放器进行处理之后,将待播放音视频发送至客户端,其中,客户端在接收到待播放音视频之后,对待播放音视频和远程桌面的画面进行合成,并对合成之后的画面进行本地解码操作,以使合成之后的画面显示在客户端的显示界面上。

需要说明的是,在本发明实施例中,当客户端与服务器远程桌面连接之后,客户端可以向服务器发起视频播放请求,然后,服务器通过视频播放器加载待播放音视频文件,将该视频文件的视频数据流传输到客户端进行处理。上述过程可以理解为视频重定向过程。

在本发明实施例中,首先在服务器中的视频播放器对待播放音视频进行解码播放之前,对待播放音视频进行拦截,然后,对视频播放器进行处理,以使处理之后的播放器在待播放音视频被拦截之后,不生成报警信息,最后,在对视频播放器进行处理之后,将待播放音视频发送至客户端进行显示。在本发明实施例中,采用在客户端侧对音视频进行处理的方式,达到了降低服务器消耗的目的,进而解决了现有技术中服务器通过远程桌面向客户端传输音视频数据时,性能较差的技术问题,从而实现了提高音视频的播放效果的技术效果。

在本发明实施例的一个可选实施方式中,对视频播放器进行处理包括如下步骤:

步骤S1041,向视频播放器发送播放信息,其中,播放信息用于指示视频播放器播放预设视频,以替换视频播放器对待播放音视频的播放,预设视频的每帧画面均为关键色所指示的颜色,并设置客户端的桌面画面中色值为#00000F的颜色为透明色,其中,关键色为预先选取的一种颜色。

在正常情况下,客户端向服务器所请求的待播放音视频是在服务器侧的视频播放器中进行播放,当服务器在视频播放器对待播放音视频进行播放之前,对待播放音视频进行拦截之后,视频播放器就不能正常对待播放音视频进行播放,此时,视频播放器会报错。为了让视频播放器不对待播放音视频进行解码,但是视频播放器内部又能够当做正在播放不会出错,此时,服务器需要向视频播放器发送播放信息,该播放信息用于指示视频播放器待播放音视频的起始画面为预设画面,并进一步通知视频播放器待播放音视频起始画面之后的全部画面与起始画面相同。其中,预设画面的画面颜色为关键色所指示的颜色,并设置客户端的桌面画面中色值为#00000F的颜色为透明色,其中,关键色为预先选取的一种颜色。

通过上述处理之后,视频播放器就能够做到正在播放待播放音视频,并不报错。

在本发明实施例的另一个可选实施方式中,将待播放音视频发送至客户端中进行解码播放包括如下步骤:

步骤S11,确定当前时刻播放的待播放音视频的视频流和音频流所属的客户端;

步骤S12,将当前时刻的视频流和音频流发送至所属的客户端中进行解码播放。

在本发明实施例中,当用户通过客户端与服务器远程桌面连接时,多个用户能够同时共享同一主机的同一个操作系统,其中,主机即为上述服务器。也就是说,多个用户能够同时向服务器请求播放同一个视频文件。在此情况下,服务器需要确定当前时刻的待播放音视频的视频流和音频流属于哪个客户端,也就是说,确定当前时刻的待播放音视频的视频流和音频流属于哪个用户。在确定当前音频流和视频流所属的用户(也即,客户端)之后,就可以将当前音频流和视频流发送至所属的用户(也即,客户端)中进行解码播放。

综上,在本发明实施例中,使用视频重定向技术之后,不仅省略了主机(也即,服务器)上的合成、截图、压制视频等非常消耗CPU的动作,并且甚至省略了服务器中视频播放器自身播放视频时的CPU占用。也就是说,如果用户只是进行视频播放,那么理想情况下(即,不考虑其他软件以及桌面本身渲染的情况下),主机(也即,服务器)的CPU占用会接近0,这将极大的节省硬件性能成本。

图2是根据本发明实施例的另一种视频重定向的方法的流程图,如图2所示,该方法包括如下步骤:

步骤S202,获取服务器发送的待播放音视频,

其中,待播放音视频为服务器在视频播放器对待播放音视频进行解码播放之前拦截得到的,待播放音视频为客户端通过远程桌面向服务器请求播放的视频,服务器在向客户端发送待播放音视频之前,对视频播放器进行处理,以使处理之后的视频播放器在待播放音视频被拦截之后,不生成报警信息。

步骤S204,对待播放音视频和远程桌面的画面进行合成,得到合成结果,并对合成之后的画面进行本地解码操作,以使将合成之后的画面显示在客户端的显示界面上。

在本发明实施例中,首先在服务器中的视频播放器对待播放音视频进行解码播放之前,对待播放音视频进行拦截,然后,对视频播放器进行处理,以使处理之后的播放器在待播放音视频被拦截之后,不生成报警信息,最后,在对视频播放器进行处理之后,将待播放音视频发送至客户端进行显示。在本发明实施例中,采用在客户端侧对音视频进行处理的方式,达到了降低服务器消耗的目的,进而解决了现有技术中服务器通过远程桌面向客户端传输音视频数据时,性能较差的技术问题,从而实现了提高音视频的播放效果的技术效果。

在本发明实施例的一个可选实施方式中,对待播放音视频和远程桌面的画面进行合成,得到合成结果包括如下步骤:

步骤S2041,对待播放音视频进行解码操作;

步骤S2042,在对待播放音视频进行解码操作的同时,将解码之后的待播放音视频与远程桌面的画面进行实时合成,并将合成结果实时显示在显示界面上。

在本发明实施例中,客户端在获取到待播放音视频之后,对待播放音视频进行解码操作,并在解码待播放音视频的同时,将解码之后的待播放音视频与远程桌面的画面进行实时合成。

其中,将解码之后的待播放音视频与远程桌面的画面进行实时合成包括如下步骤:

步骤S21,获取远程桌面中包含的多个窗口的画面;

步骤S22,对多个窗口的画面进行实时封装,封装之后得到远程桌面的画面;

步骤S23,将解码之后的待播放音视频与封装之后得到远程桌面的画面进行合成。

在本发明实施例中,远程桌面中可能包含多个窗口,此时,可以实时获取远程桌面中包含的多个窗口的画面;然后对获取到的多个窗口的画面进行实时封装,封装得到当前时刻远程桌面的画面。最后,将合成之后的远程桌面的画面与解码之后的待播放音视频进行合成,得到合成结果,并将合成结果显示在当前客户端中。

通过上述描述可知,在本发明实施例中,使用视频重定向技术后,待播放音视频不再通过主机(即,上述服务器)进行解码播放,而是在视频播放器播放视频之前将视频数据拦截下来,再将待播放音视频的视频数据直接从主机原封不动的传送到客户端;然后,由客户端解码播放音视频文件,并和用户桌面合成起来再显示在屏幕上。

使用视频重定向技术之后,不仅省略了主机上的合成、截图、压制视频等非常消耗CPU的动作,并且甚至省略了视频播放器自身播放视频时的CPU占用。也就是说,如果用户只是进行视频播放,那么理想情况下(即,不考虑其他软件以及桌面本身渲染的情况下),主机的CPU占用会接近0,这将极大的节省硬件性能成本。

实施例2

本发明实施例还提供了一种视频重定向的装置,该视频重定向的装置主要用于执行本发明实施例上述内容所提供的视频重定向的方法,以下对本发明实施例提供的视频重定向的装置做具体介绍。

图3是根据本发明实施例的一种视频重定向的装置的示意图,如图3所示,该视频重定向的装置主要包括拦截单元31,处理单元32和第一发送单元33,其中:

拦截单元31,用于在服务器中的视频播放器对待播放音视频进行解码播放之前,对待播放音视频进行拦截,其中,待播放音视频为客户端通过远程桌面向服务器请求播放的视频;

处理单元32,用于对视频播放器进行处理,以使处理之后的播放器在待播放音视频被拦截之后,不生成报警信息;

第一发送单元33,用于在对视频播放器进行处理之后,将待播放音视频发送至客户端,其中,客户端在接收到待播放音视频之后,对待播放音视频和远程桌面的画面进行合成,并对合成之后的画面进行本地解码操作,以使将合成之后的画面显示在客户端的显示界面上。

在本发明实施例中,首先在服务器中的视频播放器对待播放音视频进行解码播放之前,对待播放音视频进行拦截,然后,对视频播放器进行处理,以使处理之后的播放器在待播放音视频被拦截之后,不生成报警信息,最后,在对视频播放器进行处理之后,将待播放音视频发送至客户端进行显示。在本发明实施例中,采用在客户端侧对音视频进行处理的方式,达到了降低服务器消耗的目的,进而解决了现有技术中服务器通过远程桌面向客户端传输音视频数据时,性能较差的技术问题,从而实现了提高音视频的播放效果的技术效果。

可选地,处理单元用于:向视频播放器发送播放信息,其中,播放信息用于指示视频播放器播放预设视频,以替换视频播放器对待播放音视频的播放,预设视频的每帧画面均为关键色所指示的颜色,并设置客户端的桌面画面中色值为#00000F的颜色为透明色,其中,关键色为预先选取的一种颜色。

可选地,第一发送单元33包括:确定模块,用于确定当前时刻播放的所述待播放音视频的视频流和音频流所属的客户端;发送模块,用于将所述当前时刻的视频流和音频流发送至所属的客户端中进行解码播放。

图4是根据本发明实施例的另一种视频重定向的装置的示意图,如图4所示,该视频重定向的装置主要包括获取单元41和合成单元42,其中:

获取单元41,用于获取服务器发送的待播放音视频,

其中,待播放音视频为服务器在视频播放器对待播放音视频进行解码播放之前拦截得到的,待播放音视频为客户端通过远程桌面向服务器请求播放的视频,服务器在向客户端发送待播放音视频之前,对视频播放器进行处理,以使处理之后的视频播放器在待播放音视频被拦截之后,不生成报警信息;

合成单元42,用于对待播放音视频和远程桌面的画面进行合成,得到合成结果,并对合成之后的画面进行本地解码操作,以使将合成之后的画面显示在客户端的显示界面上。

在本发明实施例中,首先在服务器中的视频播放器对待播放音视频进行解码播放之前,对待播放音视频进行拦截,然后,对视频播放器进行处理,以使处理之后的播放器在待播放音视频被拦截之后,不生成报警信息,最后,在对视频播放器进行处理之后,将待播放音视频发送至客户端进行显示。在本发明实施例中,采用在客户端侧对音视频进行处理的方式,达到了降低服务器消耗的目的,进而解决了现有技术中服务器通过远程桌面向客户端传输音视频数据时,性能较差的技术问题,从而实现了提高音视频的播放效果的技术效果。

可选地,合成单元包括:解码模块,用于对待播放音视频进行解码操作;合成模块,用于在对待播放音视频进行解码操作的同时,将解码之后的待播放音视频与远程桌面的画面进行实时合成,并将合成结果实时显示在显示界面上。

可选地,合成模块用于:获取所述远程桌面中包含的多个窗口的画面;对所述多个窗口的画面进行实时封装,封装之后得到所述远程桌面的画面;将解码之后的所述待播放音视频与封装之后得到所述远程桌面的画面进行合成。

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

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