CN113301438A - 一种基于底层虚拟化技术的云桌面视频播放方法 - Google Patents
一种基于底层虚拟化技术的云桌面视频播放方法 Download PDFInfo
- Publication number
- CN113301438A CN113301438A CN202110595941.4A CN202110595941A CN113301438A CN 113301438 A CN113301438 A CN 113301438A CN 202110595941 A CN202110595941 A CN 202110595941A CN 113301438 A CN113301438 A CN 113301438A
- Authority
- CN
- China
- Prior art keywords
- client
- video
- server
- agent
- channel
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 238000013507 mapping Methods 0.000 claims description 3
- 238000009877 rendering Methods 0.000 abstract description 5
- 239000002699 waste material Substances 0.000 abstract description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 235000013599 spices Nutrition 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
-
- 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 or rendering scenes according to encoded video stream scene graphs
-
- 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/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
-
- 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
-
- 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/85—Assembly of content; Generation of multimedia applications
- H04N21/858—Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
- H04N21/8586—Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于底层虚拟化技术的云桌面视频播放方法,该方法包括如下步骤:1)建立客户端与服务器端之间的代理通道;2)客户端向代理通道发出播放视频的请求,服务器端接收该请求,并启动视频播放软件,打开相应的视频文件;3)视频播放软件获取视频文件信息,通过代理通道将视频文件信息传递给客户端;4)客户端获取视视频文件信息后,启动本地播放器软件播放视频流。本发明具备将视频文件转换成视频流直接传递到客户端进行解码渲染,避免了重复编解码的资源浪费问题,解放了服务器端云主机CPU算力,将解码任务交给相对空闲的客户终端完成,提高了云桌面的视频播放流畅度,对算力资源进行了合理的分配。
Description
技术领域
本发明涉及一种视频播放方法,尤其涉及一种基于底层虚拟化技术的云桌面视频播放方法。
背景技术
云桌面主要依赖底层虚拟化技术。
从开源技术历史来看,早期,QEMU通过纯软件模式的方式实现了在一台机器上运行其他系统的功能。随着虚拟化不断发展,Intel推出了支持虚拟化指令集功能的CPU,即VT技术,同时Linux内核推出KVM驱动模块支持硬件虚拟化指令。通过各种模拟实现,QEMU/KVM拥有了比较丰富的模拟设备,甚至包括虚拟GPU。基于上述模式的虚拟化云桌面就是通过虚拟GPU以及相应的桌面传输协议实现客户端远程显示云主机画面的功能。
如图1所示,现有云桌面场景下图像传输协议一般流程为:
服务端云主机渲染图像通过虚拟GPU和驱动将图像数据存入指定地址;虚拟机服务端将渲染好的图像数据编码压缩后通过网络传递到客户端;客户端接收到压缩图像数据后,根据协议进行解码,并将图像渲染到用户显示器上。
轻办公的应用场景如图2所示,图像变化少,用户很难感知和本地系统区别。但当用户有播放视频需求时,云主机系统除了要完成视频解码任务,还需要将解码后的视频通过桌面协议二次编码传输到客户端,再由客户端完成一次解码渲染。这一过程会严重消耗云主机CPU资源,同时实时软编码导致视频质量差,延迟明显。
发明内容
本发明的目的在于提供一种基于底层虚拟化技术的云桌面视频播放方法,解决现有技术存在的缺憾。
本发明采用如下技术方案实现:
一种基于底层虚拟化技术的云桌面视频播放方法,其特征在于,该方法包括如下步骤:
1)建立客户端与服务器端之间的代理通道;
2)客户端向代理通道发出播放视频的请求,服务器端接收该请求,并启动与该请求对应的视频播放软件,打开相应的视频文件;
3)视频播放软件获取视频文件信息,作为视频流服务端,通过所述代理通道将视频文件信息传递给客户端;
4)客户端获取视所述视频文件信息后,启动本地播放器软件播放视频流。
进一步的,在步骤1)中,还包括:建立客户端代理和服务器代理,所述代理通道位于客户端代理和服务器代理之间,所述代理通道对于服务器代理与客户端通信的唯一端口。
进一步的,在步骤1)中,建立客户端处的客户端原始通道与客户端代理之间的客户端链接,向所述代理通道发送每个客户端原始通道的通道建立请求;
建立服务器处的服务器原始通道与服务器代理之间的服务器链接,记录所述服务器链接与客户端链接之间的映射关系。
本发明具备的有益技术效果是:将视频文件转换成视频流直接传递到客户端进行解码渲染。首先避免了原有方案中的重复编解码的资源浪费问题,同时解放了服务器端云主机CPU算力,将解码任务交给相对空闲的客户终端完成,提高了云桌面的视频播放流畅度,对算力资源进行了合理的分配。
附图说明
图1是现有技术的云桌面场景下图像传输协议的一般流程。
图2是轻办公场景下图像传输协议的一般流程。
图3是虚拟机QEMU的整体结构图。
图4是本发明的云桌面视频播放方法的流程图。
图5是云主机和客户端之间的时序图。
具体实施方式
通过下面对实施例的描述,将更加有助于公众理解本发明,但不能也不应当将申请人所给出的具体的实施例视为对本发明技术方案的限制,任何对部件或技术特征的定义进行改变和/或对整体结构作形式的而非实质的变换都应视为本发明的技术方案所限定的保护范围。
现有技术存在的缺陷:
1、服务端负载过重:SPICE虚拟桌面协议利用CPU编码,会占用大量CPU资源。SPICE协议除了处理图像渲染之外,还需要处理客户端的键盘、鼠标等输入事件,在视频时,大量CPU资源用于编解码,CPU负载过重会严重影响用户操作的响应速度,导致出现明显操作延迟。
2、视频带宽不足:由于采用MJPEG算法,是对单帧画面进行压缩,导致视频流整体压缩率不高,会占用较多带宽。
3、视频清晰度:目前主流视频清晰度为1080p,MJPEG有损压缩清晰度很难达到用户要求。
本发明的主要目的,是解决用户流畅清晰播放视频的需求以及传统方案播放视频导致CPU负载过高问题。如图4所示,本发明的中心思想是将视频文件转换成视频流直接传递到客户端进行解码渲染,本发明避免了现有技术中的重复编解码的资源浪费问题,同时还解放了服务器端云主机CPU算力,将解码任务交给相对空闲的客户终端完成,提高了云桌面的视频播放流畅度,对算力资源进行了合理的分配。
在图4中,基于底层虚拟化技术的云桌面视频播放方法,该方法包括如下步骤:
1)建立客户端与服务器端之间的代理通道;2)客户端向代理通道发出播放视频的请求,服务器端接收该请求,并启动与该请求对应的视频播放软件,打开相应的视频文件;3)视频播放软件获取视频文件信息,作为视频流服务端,通过所述代理通道将视频文件信息传递给客户端;4)客户端获取视所述视频文件信息后,启动本地播放器软件播放视频流。当终端用户播放视频时,云主机响应该请求,并启动APP打开文件。APP获取文件信息后,作为视频流服务端,通过Agent代理通道将相关信息传递给客户端。客户端获取视频流URL地址后,启动播放器播放视频流。在视频播放的过程中,利用RSTP协议控制视频播放、暂停、进度条拖动、窗口拖动位置、关闭视频等。
在以上步骤中,视频重定向由以下部分组成:Guest端(windows): UI-app Agent、Client端(arm linux): SPICE Client
UI_app 需要开启两个监听端口, 分别是
WINDOW_CTRL_PORT,用来控制视频位置以及大小;
REDIRECT_PORT用来控制重定向开启关闭。
可选的,在步骤1)中,还包括:建立客户端代理和服务器代理,代理通道位于客户端代理和服务器代理之间,代理通道对于服务器代理与客户端通信的唯一端口。
可选的,在步骤1)中,建立客户端处的客户端原始通道与客户端代理之间的客户端链接,向代理通道发送每个客户端原始通道的通道建立请求;建立服务器处的服务器原始通道与服务器代理之间的服务器链接,记录服务器链接与客户端链接之间的映射关系。
当然,本发明还可以有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可以根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (3)
1.一种基于底层虚拟化技术的云桌面视频播放方法,其特征在于,该方法包括如下步骤:
1)建立客户端与服务器端之间的代理通道;
2)客户端向代理通道发出播放视频的请求,服务器端接收该请求,并启动与该请求对应的视频播放软件,打开相应的视频文件;
3)视频播放软件获取视频文件信息,作为视频流服务端,通过所述代理通道将视频文件信息传递给客户端;
4)客户端获取视所述视频文件信息后,启动本地播放器软件播放视频流。
2.根据权利要求1所述的基于底层虚拟化技术的云桌面视频播放方法,其特征在于,在步骤1)中,还包括:建立客户端代理和服务器代理,所述代理通道位于客户端代理和服务器代理之间,所述代理通道对于服务器代理与客户端通信的唯一端口。
3.根据权利要求2所述的基于底层虚拟化技术的云桌面视频播放方法,其特征在于,在步骤1)中,建立客户端处的客户端原始通道与客户端代理之间的客户端链接,向所述代理通道发送每个客户端原始通道的通道建立请求;
建立服务器处的服务器原始通道与服务器代理之间的服务器链接,记录所述服务器链接与客户端链接之间的映射关系。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202110595941.4A CN113301438A (zh) | 2021-05-29 | 2021-05-29 | 一种基于底层虚拟化技术的云桌面视频播放方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202110595941.4A CN113301438A (zh) | 2021-05-29 | 2021-05-29 | 一种基于底层虚拟化技术的云桌面视频播放方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN113301438A true CN113301438A (zh) | 2021-08-24 |
Family
ID=77326118
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202110595941.4A Pending CN113301438A (zh) | 2021-05-29 | 2021-05-29 | 一种基于底层虚拟化技术的云桌面视频播放方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN113301438A (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114885008A (zh) * | 2022-04-22 | 2022-08-09 | 广东悦伍纪网络技术有限公司 | 一种实现云应用调用本地播放器播放的装置、系统及方法 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105208406A (zh) * | 2014-06-11 | 2015-12-30 | 中兴通讯股份有限公司 | 视频数据提供方法、视频播放方法、装置及系统 |
| CN106657206A (zh) * | 2016-06-27 | 2017-05-10 | 南京理工大学 | 虚拟桌面web视频重定向的方法 |
| WO2017092554A1 (zh) * | 2015-12-02 | 2017-06-08 | 中兴通讯股份有限公司 | 基于虚拟桌面的音视频组播播放方法、装置及系统 |
| CN108933801A (zh) * | 2017-05-24 | 2018-12-04 | 中兴通讯股份有限公司 | 一种云桌面通道建立及云桌面通信的方法及装置 |
| CN108989264A (zh) * | 2017-05-31 | 2018-12-11 | 华为技术有限公司 | 一种直播方法、系统以及相关设备 |
| CN109587450A (zh) * | 2018-12-20 | 2019-04-05 | 北京明朝万达科技股份有限公司 | 视频数据传输方法和系统 |
-
2021
- 2021-05-29 CN CN202110595941.4A patent/CN113301438A/zh active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105208406A (zh) * | 2014-06-11 | 2015-12-30 | 中兴通讯股份有限公司 | 视频数据提供方法、视频播放方法、装置及系统 |
| WO2017092554A1 (zh) * | 2015-12-02 | 2017-06-08 | 中兴通讯股份有限公司 | 基于虚拟桌面的音视频组播播放方法、装置及系统 |
| CN106657206A (zh) * | 2016-06-27 | 2017-05-10 | 南京理工大学 | 虚拟桌面web视频重定向的方法 |
| CN108933801A (zh) * | 2017-05-24 | 2018-12-04 | 中兴通讯股份有限公司 | 一种云桌面通道建立及云桌面通信的方法及装置 |
| CN108989264A (zh) * | 2017-05-31 | 2018-12-11 | 华为技术有限公司 | 一种直播方法、系统以及相关设备 |
| CN109587450A (zh) * | 2018-12-20 | 2019-04-05 | 北京明朝万达科技股份有限公司 | 视频数据传输方法和系统 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114885008A (zh) * | 2022-04-22 | 2022-08-09 | 广东悦伍纪网络技术有限公司 | 一种实现云应用调用本地播放器播放的装置、系统及方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN113015021B (zh) | 云游戏的实现方法、装置、介质及电子设备 | |
| US10555010B2 (en) | Network-enabled graphics processing module | |
| US7916956B1 (en) | Methods and apparatus for encoding a shared drawing memory | |
| WO2022028089A1 (zh) | 图像处理方法、装置、服务器及介质 | |
| CN103414751B (zh) | 一种pc屏幕内容分享互动控制方法 | |
| CN109304031B (zh) | 一种基于异构智能终端的虚拟化云游戏平台 | |
| WO2022100522A1 (zh) | 一种视频编码方法、视频解码方法、装置、电子设备、存储介质及计算机程序产品 | |
| CN105577819B (zh) | 一种虚拟化桌面的分享系统、分享方法以及分享装置 | |
| US20060282855A1 (en) | Multiple remote display system | |
| CN104053019A (zh) | 基于虚拟桌面的视频播放、处理方法及装置 | |
| CN110891084A (zh) | 一种基于自主hvdp协议的瘦客户端远程桌面控制系统 | |
| CN113254130B (zh) | 一种自适应调整云桌面分辨率的方法 | |
| CN105262825A (zh) | 基于h.265的spice云桌面传输和展现方法及系统 | |
| CN105791892A (zh) | 一种基于桌面云的视频重定向方法、云服务器及系统 | |
| WO2021223577A1 (zh) | 一种视频处理的方法、相关装置、存储介质及程序产品 | |
| CN103248682A (zh) | 一种带宽使用优化方法及装置 | |
| CN102664939A (zh) | 一种屏幕镜像移动终端的方法及设备 | |
| Lin et al. | Cloudlet–screen computing: a client–server architecture with top graphics performance | |
| KR101630638B1 (ko) | 화면 가상화 기반 어플리케이션 실행 시스템 및 방법 | |
| CN103428297A (zh) | 基于桌面虚拟化的远程交互系统架构 | |
| CN113301438A (zh) | 一种基于底层虚拟化技术的云桌面视频播放方法 | |
| Hou et al. | A cloud gaming system based on NVIDIA GRID GPU | |
| CN114827692A (zh) | 一种基于智能电视操作云桌面的系统 | |
| CN106658070B (zh) | 视频重定向的方法和装置 | |
| KR20160015128A (ko) | 클라우드 스트리밍 서비스 시스템, 이미지 타입에 따른 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 |
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 | ||
| RJ01 | Rejection of invention patent application after publication | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210824 |