CN105611394B - Vdi环境下的视频重定向方法及系统 - Google Patents
Vdi环境下的视频重定向方法及系统 Download PDFInfo
- Publication number
- CN105611394B CN105611394B CN201510966443.0A CN201510966443A CN105611394B CN 105611394 B CN105611394 B CN 105611394B CN 201510966443 A CN201510966443 A CN 201510966443A CN 105611394 B CN105611394 B CN 105611394B
- Authority
- CN
- China
- Prior art keywords
- video
- data
- vdi
- flowing
- decoding
- 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.)
- Expired - Fee Related
Links
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/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4341—Demultiplexing of audio and video streams
-
- 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/44004—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 video buffer management, e.g. video decoder buffer or video display buffer
-
- 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
- H04N21/440263—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 by altering the spatial resolution, e.g. for displaying on a connected PDA
Abstract
本发明公开了一种VDI环境下的视频重定向方法及系统,其中方法包括:在播放器播放本地视频时,分离视频数据,并提取视频流;封装所述视频数据及视频流成数据包,并发送至显卡驱动;显卡驱动发送数据包至VDI服务器;VDI服务器发送数据包到对应的客户端,并进行显示。通过上述方式,本发明可以极大减少服务端的开销,简化数据流程,提高效率。
Description
技术领域
本发明涉及计算机音视频技术领域,尤其是涉及一种VDI环境下的视频重定向方法及系统。
背景技术
VDI,英文全称Virtual Desktop Infrastructure,即虚拟桌面基础架构。它不是给每个用户都配置一台运行Windows XP或Win7的桌面PC,而是通过在数据中心的服务器运行操作系统,将你的桌面进行虚拟化;用户通过来自客户端设备的客户计算协议与虚拟桌面进行连接,用户访问他们的桌面就像是访问传统的本地安装桌面一样。
随着云计算技术的推广,VDI协议越来越多的得到使用。在VDI环境下视频播放一直是一个难以解决的问题。VDI环境下的视频播放,一方面受到VDI 协议的限制,另一方面受到网络带宽的限制,导致VDI协议在使用过程中无法很好的满足视频观看的需要。
虚拟桌面协议的协议效率决定了虚拟桌面使用的用户体验,而用户体验是决定了桌面产品生命力的关键。目前提供虚拟化解决方案的主要国外厂商都有自己的协议,Microsoft使用RDP协议,Citrix用的是ICA协议,Vmware开发了自己的PCoIP协议,Redhat发布了SPICE协议。
发明内容
本发明所要解决的技术问题是:提供一种VDI环境下的本地视频重定向的解决方案,可以极大减少服务端的开销,简化数据流程,提高效率。
为了解决上述技术问题,本发明采用的技术方案为:提供一种VDI环境下的视频重定向方法,包括:
在播放器播放本地视频时,分离视频数据,并提取视频流;
封装所述视频数据及视频流成数据包,并发送至显卡驱动;
显卡驱动发送数据包至VDI服务器;
VDI服务器发送数据包到对应的客户端,并进行显示。
为解决上述问题,本发明还提供一种VDI环境下的视频重定向系统,包括:
分离模块,用于在播放器播放本地视频时,分离视频数据,并提取视频流;
封装模块,用于封装所述视频数据及视频流成数据包,并发送至显卡驱动;
传输模块,用于显卡驱动发送数据包至VDI服务器;
显示模块,用于VDI服务器发送数据包到对应的客户端,并进行显示。
本发明的有益效果在于:区别于现有技术,本发明通过分离视频数据,提取视频流,中断 原有解码工作,并封装成数据包后,经显卡驱动发送至VDI服务器,再发送到客户端上显示。通过上述方式,本发明可以极大减少服务端的开销,简化数据流程,提高效率。
附图说明
图1为本发明方法实施例一的流程示意图;
图2为本发明系统实施例二的流程示意图;
图3为传统VDI播放视频的流程示意图;
图4为本发明具体实施例的播放视频流程示意图。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:分离视频,中断 原有的解码工作,封装后发送到终端以进行最终解码渲染,可省却一次解码及编码的工作,将极大减少播放本地视频时的工作量,简化流程,减少服务器的开销。
请参照图1,本发明实施例一提供一种VDI环境下的视频重定向方法,包括:
S1:在播放器播放本地视频时,分离视频数据,并提取视频流;
S2:封装所述视频数据及视频流成数据包,并发送至显卡驱动;
S3:显卡驱动发送数据包至VDI服务器;
S4:VDI服务器发送数据包到对应的客户端,并进行显示。
为了简化播放本地视频的处理流程,省却了部分编解码的操作,极大的降低服务端开销,保证视频原有画质不受影响。其中,步骤S1具体为:
使用经过重定向修改的滤镜组,并设定播放器的解码滤镜;
使用所述解码滤镜分离视频数据;
通过视频数据,提取视频流。
而在提取视频流步骤时,具体为:
提取视频流的数据格式、分辨率、显示宽高、屏幕坐标;其中所述数据格式及分辨率用于通知终端解码初始化的操作;所述显示宽高及屏幕坐标用于实现视频拉伸移动。
其中滤镜组作为中间件,对于播放本地视频来说,播放器需要使用一系列滤镜来达成分离数据、解码、渲染的功能。通过中间件实现将本发明适用于多款播放器,如一些开源的DirectShow解码器等。
其中,步骤S4具体为:
VDI服务器发送数据包到对应的客户端;
客户端根据视频格式对数据包进行解码渲染,获得目标视频;
将目标视频显示在屏幕上。
如图2所示,本发明实施例二提供一种VDI环境下的视频重定向系统100,包括:
分离模块110,用于在播放器播放本地视频时,分离视频数据,并提取视频流;
封装模块120,用于封装所述视频数据及视频流成数据包,并发送至显卡驱动;
传输模块130,用于显卡驱动发送数据包至VDI服务器;
显示模块140,用于VDI服务器发送数据包到对应的客户端,并进行显示。
其中,所述分离模块110具体用于:
使用经过重定向修改的滤镜组,并设定播放器的解码滤镜;
使用所述解码滤镜分离视频数据;
通过视频数据,提取视频流。
而在提取视频流时,具体为:
提取视频流的数据格式、分辨率、显示宽高、屏幕坐标;其中
所述数据格式及分辨率用于通知终端解码初始化的操作;
所述显示宽高及屏幕坐标用于实现视频拉伸移动。
其中,所述显示模块140具体用于:
VDI服务器发送数据包到对应的客户端;
客户端根据视频格式对数据包进行解码渲染,获得目标视频;
将目标视频显示在屏幕上。
为方便理解,如图1~4所示,本发明提供一个具体的实施例以进行详述。
本发明基于播放本地视频时,将播放器指定已经过重定向功能修改的滤镜组。如此,当符合重定向功能设计的视频格式,将触发重定向功能,合理中断视频流的解码工作,并进行分离封装视频流,然后将数据发送驱动。
如通过将播放的视频进行分离,中断原有的视频解码工作,将视频流传递至终端进行最终解码渲染。从而每一帧数据可以省却一次解码、一次编码的工作,将极大减少播放本地视频时的工作量,简化流程,减少服务器的开销。
如图3所示,根据现有虚拟桌面协议规范,当虚拟机播放视频时,播放器本身进行了一次解码操作,服务端进行了一次编码操作,最终客户端也进行了一次解码操作。
但是,本发明的核心思想便是通过将数据重定向,达到节约开销的目的。
如图4所示,本发明具体实施例在完成重定向功能后,播放视频的流程将节约其中的解码编码操作。
制定播放器使用的解码器,可以通过修改注册表实现,不加赘述。
视频流分离模块,用于将符合格式的视频分离出视频裸流,并自定义封装所需数据,每一条数据至少包括一帧视频;
裁剪显示区域模块,用于实现视频区域与其他窗口的层叠覆盖效果;
数据传输模块,用于在服务器与客户端之间专门传输重定向的视频数据;
视频解码渲染模块,用于对重定向的数据进行解码渲染。
较佳的,所述视频流分离模块,具体用于:当播放视频时,将符合重定向功能的视频进行处理,分离出视频流,然后中断 播放器的视频解码工作,保留音频的解码。然后将每一帧视频流进行封装,然后传递给驱动。该装置完成的对视频流分离重定向,并保留音频正常解码,并能继续正常播放。
完成该模块功能后,播放视频将只会听到声音而无画面出现。
较佳的,所述裁剪显示区域模块,具体用于:实现视频与其他窗口的层叠覆盖效果,同时需要根据正确的裁剪区域改变视频的显示宽高。
在本发明具体实施例中,为了实现视频局域的覆盖效果,当视频局域被其他窗口覆盖时,需要将可以显示视频的局域裁剪为若干个矩形,最终将根据矩形局域的会面进行合成。于是,需要对画面区域进行计算对比,获得正确的裁剪区域。
较佳的,所述数据传输模块,具体用于:根据虚拟桌面协议的框架,构建一条专属于重定向功能的数据通道。将数据进行再次封装,符合协议的消息格式,用于单独发送视频流数据,最终将数据流向终端处理。分成驱动与服务端,服务端与客户端两个沟通处理,根据协议规范,添加新的消息处理,从而构建一条新的传递流程。
较佳的,所述视频解码渲染模块,具体用于:终端将接收的视频数据进行解码操作,解码所需的宽高,数据长度皆由服务端发送。根据接收的坐标,及时改变视频显示的位置,同时当接收到销毁消息时,回收解码初始化工作的资源。
根据裁剪区域取出视频画面中的对应部分,然后将数据进行合并,改变当前的桌面画面。
同时该模块需要根据视频帧对应的时间戳决定该帧的解码时间,实现音视频的同步。可以通过对比当前的时间与数据携带时间,进行解码上的同步。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种VDI环境下的视频重定向方法,其特征在于,包括:
在播放器播放本地视频时,分离视频数据,并提取视频流;
封装所述视频数据及视频流成数据包,并发送至显卡驱动;
显卡驱动发送数据包至VDI服务器;
VDI服务器发送数据包到对应的客户端,并进行显示;
所述在播放器播放本地视频时,分离视频数据,并提取视频流具体为:
当播放器播放本地视频时,将符合重定向功能的视频进行处理,分离视频数据,并提取视频流,播放器保留音频的解码。
2.根据权利要求1所述VDI环境下的视频重定向方法,其特征在于,分离视频数据,并提取视频流的步骤具体为:
使用经过重定向修改的滤镜组,并设定播放器的解码滤镜;
使用所述解码滤镜分离视频数据;
通过视频数据,提取视频流。
3.根据权利要求1或2所述VDI环境下的视频重定向方法,其特征在于,提取视频流步骤具体为:
提取视频流的数据格式、分辨率、显示宽高、屏幕坐标;其中
所述数据格式及分辨率用于通知终端解码初始化的操作;
所述显示宽高及屏幕坐标用于实现视频拉伸移动。
4.根据权利要求1所述VDI环境下的视频重定向方法,其特征在于,VDI服务器发送数据包到对应的客户端,并进行显示的步骤具体为:
VDI服务器发送数据包到对应的客户端;
客户端根据视频格式对数据包进行解码渲染,获得目标视频;
将目标视频显示在屏幕上。
5.一种VDI环境下的视频重定向系统,其特征在于,包括:
分离模块,用于在播放器播放本地视频时,分离视频数据,并提取视频流;
封装模块,用于封装所述视频数据及视频流成数据包,并发送至显卡驱动;
传输模块,用于显卡驱动发送数据包至VDI服务器;
显示模块,用于VDI服务器发送数据包到对应的客户端,并进行显示;
所述在播放器播放本地视频时,分离视频数据,并提取视频流具体为:
当播放器播放本地视频时,将符合重定向功能的视频进行处理,分离视频数据,并提取视频流,播放器保留音频的解码。
6.根据权利要求5所述VDI环境下的视频重定向系统,其特征在于,所述分离模块具体用于:
使用经过重定向修改的滤镜组,并设定播放器的解码滤镜;
使用所述解码滤镜分离视频数据;
通过视频数据,提取视频流。
7.根据权利要求5或6所述VDI环境下的视频重定向系统,其特征在于,提取视频流步骤具体为:
提取视频流的数据格式、分辨率、显示宽高、屏幕坐标;其中
所述数据格式及分辨率用于通知终端解码初始化的操作;
所述显示宽高及屏幕坐标用于实现视频拉伸移动。
8.根据权利要求5所述VDI环境下的视频重定向系统,其特征在于,所述显示模块具体用于:
VDI服务器发送数据包到对应的客户端;
客户端根据视频格式对数据包进行解码渲染,获得目标视频;
将目标视频显示在屏幕上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510966443.0A CN105611394B (zh) | 2015-12-21 | 2015-12-21 | Vdi环境下的视频重定向方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510966443.0A CN105611394B (zh) | 2015-12-21 | 2015-12-21 | Vdi环境下的视频重定向方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105611394A CN105611394A (zh) | 2016-05-25 |
CN105611394B true CN105611394B (zh) | 2018-11-06 |
Family
ID=55990880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510966443.0A Expired - Fee Related CN105611394B (zh) | 2015-12-21 | 2015-12-21 | Vdi环境下的视频重定向方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105611394B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108521604B (zh) * | 2018-03-30 | 2020-12-08 | 新华三云计算技术有限公司 | 重定向视频的多屏显示方法及装置 |
CN111050192A (zh) * | 2018-10-12 | 2020-04-21 | 华为技术有限公司 | 媒体处理方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102695094A (zh) * | 2012-05-15 | 2012-09-26 | 福建升腾资讯有限公司 | Vdi环境下软硬件一体化音视频重定向的方法 |
CN103957445A (zh) * | 2014-03-28 | 2014-07-30 | 山东乾云启创信息科技有限公司 | 一种基于应用虚拟化技术的视频重定向系统及方法 |
WO2014121477A1 (zh) * | 2013-02-07 | 2014-08-14 | 华为技术有限公司 | 一种视频重定向的方法、装置、系统及计算机可读介质 |
CN104144178A (zh) * | 2013-05-07 | 2014-11-12 | 上海国富光启云计算科技有限公司 | 基于云计算的虚拟机与客户端间视频传输方法 |
CN104202615A (zh) * | 2014-09-25 | 2014-12-10 | 湖北第二师范学院 | 一种基于云计算的视频重定向方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582926B (zh) * | 2009-06-15 | 2012-05-16 | 中国电信股份有限公司 | 实现远程媒体播放重定向的方法和系统 |
CN103283250B (zh) * | 2012-12-13 | 2015-01-21 | 华为技术有限公司 | 一种视频重定向的方法、装置、系统 |
CN104737550A (zh) * | 2013-02-05 | 2015-06-24 | 华为技术有限公司 | 多媒体重定向方法、服务器和客户端 |
CN103179431B (zh) * | 2013-03-21 | 2016-06-01 | 福建升腾资讯有限公司 | Vdi环境下音视频重定向转码分离方法 |
CN104168486A (zh) * | 2013-05-20 | 2014-11-26 | 上海范氏科技投资发展集团有限公司 | 基于云计算的虚拟机与客户端间视频重定向方法 |
-
2015
- 2015-12-21 CN CN201510966443.0A patent/CN105611394B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102695094A (zh) * | 2012-05-15 | 2012-09-26 | 福建升腾资讯有限公司 | Vdi环境下软硬件一体化音视频重定向的方法 |
WO2014121477A1 (zh) * | 2013-02-07 | 2014-08-14 | 华为技术有限公司 | 一种视频重定向的方法、装置、系统及计算机可读介质 |
CN104144178A (zh) * | 2013-05-07 | 2014-11-12 | 上海国富光启云计算科技有限公司 | 基于云计算的虚拟机与客户端间视频传输方法 |
CN103957445A (zh) * | 2014-03-28 | 2014-07-30 | 山东乾云启创信息科技有限公司 | 一种基于应用虚拟化技术的视频重定向系统及方法 |
CN104202615A (zh) * | 2014-09-25 | 2014-12-10 | 湖北第二师范学院 | 一种基于云计算的视频重定向方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105611394A (zh) | 2016-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103475953B (zh) | 一种基于桌面云的媒体控制方法和设备 | |
CN103348695B (zh) | 针对图形的低延时无线显示器 | |
US11924298B2 (en) | Message pushing method for a virtual gift and electronic device | |
CN105577819B (zh) | 一种虚拟化桌面的分享系统、分享方法以及分享装置 | |
CN113079216B (zh) | 一种云应用的实现方法、装置、电子设备及可读存储介质 | |
CN102469065A (zh) | 一种与html5浏览器互通数据的方法及系统 | |
CN106330986A (zh) | 消息传输方法及装置 | |
CN105611394B (zh) | Vdi环境下的视频重定向方法及系统 | |
CN109358951A (zh) | 基于spice协议的智能支持显卡直通和虚拟显卡的显示方法 | |
CN110996160A (zh) | 视频处理方法、装置、电子设备及计算机可读取存储介质 | |
CN115445194A (zh) | 游戏的渲染方法、装置、设备及存储介质 | |
CN106210865A (zh) | 一种基于远程桌面呈现协议的视频重定向方法及系统 | |
US9614900B1 (en) | Multi-process architecture for a split browser | |
CN103957445A (zh) | 一种基于应用虚拟化技术的视频重定向系统及方法 | |
CN110113298A (zh) | 数据传输方法、装置、信令服务器和计算机可读介质 | |
CN103873924B (zh) | 一种视频重定向的方法、装置、系统 | |
CN102883213B (zh) | 字幕提取方法及装置 | |
CN106254962A (zh) | 一种直播客户端快速启动播放的方法及系统 | |
CN112004101A (zh) | 虚拟直播数据的传输方法、装置及存储介质 | |
CN102427523A (zh) | 基于fpga芯片的多路ip视频编码卡 | |
CN106658070B (zh) | 视频重定向的方法和装置 | |
CN113242439B (zh) | 一种数据处理方法、设备、系统以及存储介质 | |
CN105100178B (zh) | 一种自适应重定向加速处理方法及装置 | |
US10701118B2 (en) | Method for the processing of a multimedia stream, corresponding device and computer program | |
CN105354080B (zh) | 一种任务处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181106 Termination date: 20211221 |
|
CF01 | Termination of patent right due to non-payment of annual fee |