CN103348657B - 流媒体播放方法、设备及系统 - Google Patents
流媒体播放方法、设备及系统 Download PDFInfo
- Publication number
- CN103348657B CN103348657B CN201280000264.6A CN201280000264A CN103348657B CN 103348657 B CN103348657 B CN 103348657B CN 201280000264 A CN201280000264 A CN 201280000264A CN 103348657 B CN103348657 B CN 103348657B
- Authority
- CN
- China
- Prior art keywords
- virtual desktop
- player
- media
- streaming media
- desktop client
- 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
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000005540 biological transmission Effects 0.000 claims description 24
- 238000004891 communication Methods 0.000 abstract description 2
- 239000003795 chemical substances by application Substances 0.000 description 17
- 230000004044 response Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种流媒体播放方法、设备及系统,属于通信技术领域。所述方法包括:虚拟桌面服务器接收虚拟桌面客户端发送的播放流媒体的请求,获取虚拟桌面客户端的流媒体接收地址,向媒体源发送媒体源建立连接请求,其中包括所述流媒体接收地址,接收媒体源返回的流媒体发送地址,将其转发给虚拟桌面客户端,使得虚拟桌面客户端与媒体源建立连接并接收流媒体进行播放。一种虚拟桌面服务器,包括第一获取模块、第二获取模块和转发模块。一种虚拟桌面客户端,包括请求模块、发送模块、接收模块和播放模块。所述系统包括虚拟桌面服务器和虚拟桌面客户端。本发明降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种流媒体播放方法、设备及系统。
背景技术
VDI(Virtual Desktop Infrastructure,虚拟桌面)技术是操作系统和应用均运行于远端的服务器上,通过本地的客户端控制该操作系统和应用,并将屏幕信息回传到客户端的技术。该虚拟桌面应用场景下的客户端称为虚拟桌面客户端,该虚拟桌面应用场景下的服务器称为虚拟桌面服务器,虚拟桌面客户端和虚拟桌面服务器组成了虚拟桌面系统。
在虚拟桌面系统中,虚拟桌面服务器通过虚拟桌面客户端传来的鼠标、键盘等事件来控制操作系统的运行,并将虚拟桌面服务器上的显示信息回传给虚拟桌面客户端。所述操作系统可以为虚拟化平台上运行的操作系统,也可以是直接运行在虚拟桌面服务器上的操作系统。
现有的虚拟桌面系统在播放流媒体时,通常由虚拟桌面服务器上运行的播放器来完成虚拟桌面客户端请求的流媒体的播放,通过该播放器可以进行流媒体的控制、解码和缓冲等操作,虚拟桌面客户端通过获取虚拟桌面服务器的显存或截取视频流等方式,将解码后的流媒体从虚拟桌面服务器重定向到虚拟桌面客户端上,播放给用户。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
现有的虚拟桌面系统在进行流媒体的播放时,虚拟桌面服务器先从媒体源获取流媒体进行播放,虚拟桌面客户端再从虚拟桌面服务器获取该流媒体播放给用户,其中存在流媒体的二次转发,严重地占用了虚拟桌面服务器的CPU(Central Processing Unit,中央处理器)资源和带宽,增加了虚拟桌面服务器的负担,并且,很容易造成流媒体的延迟,影响用户的体验。
发明内容
本发明实施例提供了一种流媒体播放方法、设备及系统,以实现在播放流媒体时减轻虚拟桌面服务器的负担以及减少流媒体的延迟。所述技术方案如下:
一方面,本发明实施例提供了一种流媒体播放方法,所述方法包括:
虚拟桌面服务器的播放器助手接收虚拟桌面客户端的播放器代理发送的播放流媒体的请求,获取所述虚拟桌面客户端的流媒体接收地址;
所述虚拟桌面服务器的播放器向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括所述流媒体接收地址;
所述虚拟桌面服务器的播放器接收所述媒体源返回的流媒体发送地址;
所述虚拟桌面服务器的播放器助手将所述流媒体发送地址转发给所述虚拟桌面客户端的播放器代理,使得所述虚拟桌面客户端的播放器代理根据所述流媒体发送地址与所述媒体源建立连接并在所述流媒体接收地址上接收流媒体,进行流媒体的播放;
其中,获取所述虚拟桌面客户端的流媒体接收地址,包括:
所述虚拟桌面服务器的播放器助手向所述虚拟桌面客户端的播放器代理发送播放通知消息,所述播放通知消息包含播放控制点的位置信息;
当所述虚拟桌面客户端的播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面服务器时,所述虚拟桌面服务器的播放器助手接收所述虚拟桌面客户端的播放器代理发送的流媒体接收地址。
另一方面,本发明实施例还提供了一种流媒体播放方法,所述方法包括:
虚拟桌面客户端的播放器代理向虚拟桌面服务器的播放器助手发送播放流媒体的请求;
所述虚拟桌面客户端的播放器代理将所述虚拟桌面客户端的流媒体接收地址发送给所述虚拟桌面服务器的播放器助手;
当所述虚拟桌面服务器的播放器向媒体源发送包含所述流媒体接收地址的媒体源建立连接请求且收到所述媒体源返回的流媒体发送地址后,所述虚拟桌面客户端的播放器代理接收所述虚拟桌面服务器的播放器助手转发的所述流媒体发送地址;
所述虚拟桌面客户端的播放器代理根据所述流媒体发送地址与所述媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放;
其中,所述虚拟桌面客户端的播放器代理将所述虚拟桌面客户端的流媒体接收地址发送给所述虚拟桌面服务器的播放器助手,包括:
所述虚拟桌面客户端的播放器代理接收所述虚拟桌面服务器的播放器助手发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
当所述虚拟桌面客户端的播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面服务器时,所述虚拟桌面客户端的播放器代理发送所述虚拟桌面客户端的流媒体接收地址给所述虚拟桌面服务器的播放器助手。
再一方面,本发明实施例还提供了一种流媒体播放方法,包括:
虚拟桌面客户端的播放器代理向虚拟桌面服务器的播放器助手发送播放流媒体的请求;
所述虚拟桌面客户端的播放器代理接收所述虚拟桌面服务器的播放器助手发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
当所述虚拟桌面客户端的播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面客户端时,所述虚拟桌面客户端的播放器代理向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括所述虚拟桌面客户端的流媒体接收地址;
所述虚拟桌面客户端的播放器代理接收所述媒体源返回的流媒体发送地址;
所述虚拟桌面客户端的播放器代理根据所述流媒体发送地址与所述媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放。
又一方面,本发明实施例还提供了一种虚拟桌面服务器,包括:播放器助手和播放器;
所述播放器助手包括:第一获取模块和转发模块;所述播放器包括:第二获取模块;
所述第一获取模块,用于接收虚拟桌面客户端的播放器代理发送的播放流媒体的请求,获取所述虚拟桌面客户端的流媒体接收地址;
所述第二获取模块,用于向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括所述流媒体接收地址,接收所述媒体源返回的流媒体发送地址;
所述转发模块,用于将所述流媒体发送地址转发给所述虚拟桌面客户端的播放器代理,使得所述虚拟桌面客户端的播放器代理根据所述流媒体发送地址与所述媒体源建立连接并在所述流媒体接收地址上接收流媒体,进行流媒体的播放;
其中,所述第一获取模块包括:
通知单元,用于向所述虚拟桌面客户端的播放器代理发送播放通知消息,所述播放通知消息包含播放控制点的位置信息;
接收单元,用于当所述虚拟桌面客户端的播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面服务器时,接收所述虚拟桌面客户端的播放器代理发送的流媒体接收地址。
再一方面,本发明实施例还提供了一种虚拟桌面客户端,包括:播放器代理,所述播放器代理包括:
请求模块,用于向虚拟桌面服务器的播放器助手发送播放流媒体的请求;
发送模块,用于将所述虚拟桌面客户端的流媒体接收地址发送给所述虚拟桌面服务器的播放器助手;
接收模块,用于当所述虚拟桌面服务器的播放器向媒体源发送包含所述流媒体接收地址的媒体源建立连接请求且收到所述媒体源返回的流媒体发送地址后,接收所述虚拟桌面服务器的播放器助手转发的所述流媒体发送地址;
播放模块,用于根据所述流媒体发送地址与所述媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放;
其中,所述发送模块包括:
通知接收单元,用于接收所述虚拟桌面服务器的播放器助手发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
确定单元,用于根据所述播放通知消息中的所述播放控制点的位置信息,确定所述播放控制点是否位于所述虚拟桌面服务器;
发送单元,用于当所述确定单元确定所述播放控制点位于所述虚拟桌面服务器时,发送所述虚拟桌面客户端的流媒体接收地址给所述虚拟桌面服务器的播放器助手。
另一方面,本发明实施例还提供了一种虚拟桌面客户端,包括:播放器代理,所述播放器代理包括:
请求模块,用于向虚拟桌面服务器的播放器助手发送播放流媒体的请求;
第一接收模块,用于接收所述虚拟桌面服务器的播放器助手发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
发送模块,用于当所述播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面客户端时,向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括所述虚拟桌面客户端的流媒体接收地址;
第二接收模块,用于接收所述媒体源返回的流媒体发送地址;
播放模块,用于根据所述流媒体发送地址与所述媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放。
另一方面,本发明实施例还提供了一种流媒体播放系统,包括:所述的虚拟桌面服务器和所述的虚拟桌面客户端。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例通过虚拟桌面服务器获取虚拟桌面客户端的流媒体接收地址并发送给媒体源,以及将媒体源返回的流媒体发送地址发送给虚拟桌面客户端,或者通过虚拟桌面客户端直接将流媒体接收地址发送给媒体源并从媒体源获取流媒体发送地址,使得虚拟桌面客户端可以与媒体源建立连接并在流媒体接收地址上接收流媒体,进行流媒体的播放,由于不需要在虚拟桌面服务器进行流媒体的播放,避免了流媒体的二次转发,极大地降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担,并且通过虚拟桌面客户端与流媒体直接建立连接传输流媒体,减少了流媒体的延迟,极大地提高了用户的体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的虚拟桌面系统架构示意图;
图2是本发明实施例1提供的一种流媒体播放方法流程图;
图3是本发明实施例1提供的另一种流媒体播放方法流程图;
图4是本发明实施例1提供的再一种流媒体播放方法流程图;
图5是本发明实施例2提供的流媒体播放方法流程图;
图6是本发明实施例2提供的流媒体播放方法交互示意图;
图7是本发明实施例2提供的流媒体播放方法架构实现示意图;
图8是本发明实施例3提供的流媒体播放方法流程图;
图9是本发明实施例3提供的流媒体播放方法交互示意图;
图10是本发明实施例4提供的流媒体播放方法流程图;
图11是本发明实施例4提供的流媒体播放交互示意图;
图12是本发明实施例4提供的流媒体播放方法架构实现示意图;
图13是本发明实施例提供的调整播放器的流程示意图;
图14是本发明实施例5提供的一种虚拟桌面服务器结构示意图;
图15是本发明实施例5提供的另一种虚拟桌面服务器结构示意图;
图16是本发明实施例6提供的一种虚拟桌面客户端结构示意图;
图17是本发明实施例6提供的另一种虚拟桌面客户端结构示意图;
图18是本发明实施例7提供的一种虚拟桌面客户端结构示意图;
图19是本发明实施例8提供的流媒体播放系统结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例涉及虚拟桌面系统的流媒体播放技术。参见图1,为本发明实施例提供的虚拟桌面系统的架构示意图。所述虚拟桌面系统包括虚拟桌面客户端和虚拟桌面服务器。当虚拟桌面客户端向虚拟桌面服务器请求播放流媒体时,虚拟桌面客户端从虚拟桌面服务器或者媒体源获取流媒体发送地址,并将虚拟桌面客户端的流媒体接收地址直接发送或者通过虚拟桌面服务器转发给媒体源,从而虚拟桌面客户端可以和媒体源直接建立连接,在所述流媒体接收地址上接收流媒体并进行流媒体的播放。其中,虚拟桌面服务器包括两个功能实体:播放器和播放器助手(Assistant),虚拟桌面服务器通过该播放器可以与媒体源进行交互,通过播放器助手可以与虚拟桌面客户端进行交互。虚拟桌面客户端包括一个功能实体:播放器代理(Agent),通过该播放器代理可以实现与虚拟桌面服务器之间的交互,以及与媒体源之间的交互。
本发明实施例涉及的虚拟桌面客户端可以有多种类型,包括但不限于:台式PC(PersonalComputer,个人计算机)、便携机、移动终端、专用的TC(Thin Client,瘦终端)等等,本发明对此不限定。本发明实施例中,媒体源是指IP(Internet Protocol,网际协议)网络上存储媒体数据的设备,缓存节点是指缓存有媒体源上的媒体数据的节点。通常,媒体源上的媒体数据被很多用户访问时,会导致媒体源负荷过重,因此,媒体源可以配备缓存节点,以缓存常用的媒体数据,从而减轻媒体源的负荷。用户可以从缓存节点上获取需要的媒体数据。
本发明实施例中,虚拟桌面服务器与媒体源或缓存节点之间进行控制流的交互时,可以采用多种协议,包括但不限于:RTSP(Real Time Streaming Protocol,实施流传输协议)、HTTP(Hyper Text Transfer Protocol,超文本传输协议)、SIP(Session Initiation Protocol,会话初始协议)等等,本发明对此不限定。虚拟桌面客户端与媒体源或缓存节点之间进行控制流的交互时,可以采用多种协议,包括但不限于:RTSP、HTTP、SIP等等,本发明对此不限定。虚拟桌面客户端与媒体源或缓存节点之间进行媒体流的交互时,也可以采用多种协议,包括但不限于:RTP(Real-time Transport Protocol,实时传输协议)、UDP(User Datagram Protocol,用户数据报协议)等等,本发明对此不限定。
实施例1
参见图2,本发明实施例提供了一种流媒体播放方法,包括:
201:虚拟桌面服务器接收虚拟桌面客户端发送的播放流媒体的请求,获取虚拟桌面客户端的流媒体接收地址;
202:虚拟桌面服务器向媒体源发送媒体源建立连接请求,该媒体源建立连接请求中包括所述流媒体接收地址;
203:虚拟桌面服务器接收媒体源返回的流媒体发送地址;
204:虚拟桌面服务器将该流媒体发送地址转发给虚拟桌面客户端,使得虚拟桌面客户端根据该流媒体发送地址与媒体源建立连接并在该流媒体接收地址上接收流媒体,进行流媒体的播放。
参见图3,本发明实施例还提供了一种流媒体播放方法,包括:
301:虚拟桌面客户端向虚拟桌面服务器发送播放流媒体的请求;
302:虚拟桌面客户端将虚拟桌面客户端的流媒体接收地址发送给虚拟桌面服务器;
303:当虚拟桌面服务器向媒体源发送包含该流媒体接收地址的媒体源建立连接请求且收到媒体源返回的流媒体发送地址后,虚拟桌面客户端接收虚拟桌面服务器转发的所述流媒体发送地址;
304:虚拟桌面客户端根据所述流媒体发送地址与媒体源建立连接,并在该流媒体接收地址上接收流媒体,进行流媒体的播放。
参见图4,本发明实施例还提供了一种流媒体播放方法,包括:
401:虚拟桌面客户端向虚拟桌面服务器发送播放流媒体的请求;
402:虚拟桌面客户端接收虚拟桌面服务器发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
403:当虚拟桌面客户端根据该播放通知消息中的播放控制点的位置信息确定所述播放控制点位于虚拟桌面客户端时,虚拟桌面客户端向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括虚拟桌面客户端的流媒体接收地址;
404:虚拟桌面客户端接收媒体源返回的流媒体发送地址;
405:虚拟桌面客户端根据所述流媒体发送地址与媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放。
本发明实施例提供的上述任一方法,通过虚拟桌面服务器获取虚拟桌面客户端的流媒体接收地址并发送给媒体源,以及将媒体源返回的流媒体发送地址发送给虚拟桌面客户端,或者通过虚拟桌面客户端直接将流媒体接收地址发送给媒体源并从媒体源获取流媒体发送地址,使得虚拟桌面客户端可以与媒体源建立连接并在流媒体接收地址上接收流媒体,进行流媒体的播放,由于不需要在虚拟桌面服务器进行流媒体的播放,避免了流媒体的二次转发,极大地降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担,并且通过虚拟桌面客户端与流媒体直接建立连接传输流媒体,减少了流媒体的延迟,极大地提高了用户的体验。
实施例2
参见图5,本发明实施例还提供了一种流媒体播放方法,由虚拟桌面服务器直接向虚拟桌面客户端请求并获取虚拟桌面客户端的流媒体接收地址,所述方法包括:
501:虚拟桌面服务器接收虚拟桌面客户端发送的播放流媒体的请求,向虚拟桌面客户端发送流媒体接收地址的请求消息;
502:虚拟桌面服务器接收虚拟桌面客户端返回的应答消息,从该应答消息中获取虚拟桌面客户端的流媒体接收地址;
503:虚拟桌面服务器向媒体源发送媒体源建立连接请求,该媒体源建立连接请求中包括所述流媒体接收地址;
504:虚拟桌面服务器接收媒体源返回的流媒体发送地址;
505:虚拟桌面服务器将该流媒体发送地址转发给虚拟桌面客户端,使得虚拟桌面客户端根据该流媒体发送地址与媒体源建立连接并在该流媒体接收地址上接收流媒体,进行流媒体的播放。
具体地,上述方法可以通过虚拟桌面服务器中的播放器和播放器助手,以及虚拟桌面客户端内的播放器代理来实现,参见图6和图7,上述方法的具体流程如下:
601:虚拟桌面服务器的播放器向播放器助手发送流媒体接收地址请求;
其中,所述播放器和播放器助手为虚拟桌面服务器内的功能实体,播放器助手(Assistant)可以作为虚拟桌面服务器的播放器和虚拟桌面客户端的播放器代理(Agent)之间的消息传送通道,用以保证播放器尽量简化,并且可以捕捉虚拟桌面服务器的播放器的控制动作,传送给虚拟桌面客户端的播放器Agent进行相应处理。实际部署和实现时,播放器和播放器助手可以是一个功能实体,也可以是两个独立的功能实体。
602:播放器助手向虚拟桌面客户端的播放器代理转发流媒体接收地址请求;
603:虚拟桌面客户端的播放器代理接收到该流媒体接收地址请求后,返回虚拟桌面客户端的流媒体接收地址给虚拟桌面服务器的播放器助手;
本实施例中,虚拟桌面客户端的流媒体接收地址是指与接收流媒体的地址相关的信息,包括但不限于:虚拟桌面客户端的IP地址、端口等信息,本发明实施例对此不限定。
604:虚拟桌面服务器的播放器助手收到该流媒体接收地址后,转发该流媒体接收地址给播放器;
605:播放器收到该流媒体接收地址后,向媒体源发起媒体源建立连接请求,其中该媒体源建立连接请求中包括的流媒体接收地址是所述已收到的虚拟桌面客户端的流媒体接收地址;
606:媒体源收到该媒体源建立连接请求后,返回应答给虚拟桌面服务器的播放器,其中包括流媒体发送地址;
图6和图7中以媒体源将媒体数据保存在缓存(Cache)节点为例进行说明,虚拟桌面服务器通过播放器与媒体源的Cache节点之间建立通道进行控制流的传输。
其中,播放器与Cache节点之间通过流媒体控制协议建立连接,例如,可以采用RTSP与Cache节点之间建立连接,RTSP是TCP/IP协议体系中的一个应用层协议,该协议定义了在IP网络上传输多媒体数据的控制协议,通常视频点播和IPTV等一般均采用该协议。具体地,步骤605中播放器可以通过RTSP的setup消息(媒体源建立连接请求消息),将流媒体接收地址传输给Cache节点,Cache节点在setup响应消息中返回流媒体发送地址。
本实施例中,所述流媒体发送地址是指与发送流媒体的地址相关的信息,包括但不限于:发送流媒体的媒体源或缓存节点的IP地址、端口等信息,本发明对此不限定。
另外,虚拟桌面服务器的播放器还可以采用其它流媒体控制协议与Cache节点之间建立连接,如HTTP、SIP等等,本发明对此不限定。其中,SIP是会话层的信令控制协议,用于创建、修改和释放一个或多个参与者的会话,通常用于Internet多媒体会议、IP电话或流媒体播放等。
607:虚拟桌面服务器的播放器接收到所述应答后,将其中的流媒体发送地址发送给播放器助手;
608:播放器助手收到该流媒体发送地址后,将其转发给虚拟桌面客户端的播放器代理;
609:虚拟桌面客户端的播放器代理接收到该流媒体发送地址后,根据该流媒体发送地址与媒体源建立连接,在流媒体接收地址上接收流媒体,进行流媒体的播放。
具体地,虚拟桌面客户端的播放器代理可以打开流媒体接收地址的端口,接收媒体源发送的流媒体,开始播放流媒体。
本实施例中,虚拟桌面客户端的播放器代理与媒体源/缓存节点之间可以采用流媒体传输协议进行流媒体的传输,如RTP、UDP等,本发明对此不限定。
本实施例中,安装在虚拟桌面客户端的播放器代理在接收到流媒体发送地址后,根据该流媒体发送地址与媒体源/缓存节点建立连接,媒体源/缓存节点的流媒体就会直接推送到虚拟桌面客户端,由播放器代理进行流媒体的播放,其中包括流媒体的解压和缓冲等等,此处不做过多说明。
本实施例提供的上述方法,通过虚拟桌面服务器直接向虚拟桌面客户端请求并获取流媒体接收地址并发送给媒体源,以及将媒体源返回的流媒体发送地址发送给虚拟桌面客户端,使得虚拟桌面客户端可以与媒体源建立连接并在流媒体接收地址上接收流媒体,进行流媒体的播放,由于不需要在虚拟桌面服务器进行流媒体的播放,避免了流媒体的二次转发,极大地降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担,并且通过虚拟桌面客户端与流媒体直接建立连接传输流媒体,减少了流媒体的延迟,极大地提高了用户的体验。
实施例3
参见图8,本发明实施例还提供了一种流媒体播放方法,由虚拟桌面服务器向虚拟桌面客户端发送通知消息以获取虚拟桌面客户端的流媒体接收地址,所述方法包括:
801:虚拟桌面服务器接收虚拟桌面客户端发送的播放流媒体的请求;
802:虚拟桌面服务器向虚拟桌面客户端发送播放通知消息,所述播放通知消息包含播放控制点的位置信息;
所述播放控制点是指播放控制功能,在本发明中,虚拟桌面客户端可以具有播放控制功能,或者虚拟桌面服务器具有播放控制功能,因此,在不同的场景下,所述播放控制点位于不同的设备上。所述播放控制点的位置信息是指所述播放控制点位于虚拟桌面服务器上还是位于虚拟桌面客户端上,通常虚拟桌面服务器根据自身的设置可以获知播放控制点的位置信息,并且通过所述播放通知消息将其发送给虚拟桌面客户端。虚拟桌面客户端收到后,根据该播放控制点的位置信息可以判断出所述播放控制点位于虚拟桌面服务器上还是位于虚拟桌面客户端上,从而进行不同的后续处理过程。
803:当虚拟桌面客户端根据所述播放通知消息中的播放控制点的位置信息确定播放控制点位于虚拟桌面服务器时,虚拟桌面服务器接收虚拟桌面客户端发送的流媒体接收地址;
其中,虚拟桌面客户端如果确定出播放控制点位于虚拟桌面服务器,则会通过虚拟桌面服务器将虚拟桌面客户端的流媒体接收地址发送给媒体源;如果确定出播放控制点位于虚拟桌面客户端,则可以直接将流媒体接收地址发送给媒体源。
804:虚拟桌面服务器向媒体源发送媒体源建立连接请求,该媒体源建立连接请求中包括虚拟桌面客户端的流媒体接收地址;
805:虚拟桌面服务器接收媒体源返回的流媒体发送地址;
806:虚拟桌面服务器将该流媒体发送地址转发给虚拟桌面客户端,使得虚拟桌面客户端根据该流媒体发送地址与媒体源建立连接并在该流媒体接收地址上接收流媒体,进行流媒体的播放。
具体地,上述方法可以通过虚拟桌面服务器中的播放器和播放器助手,以及虚拟桌面客户端内的播放器代理来实现,参见图7和图9,上述方法的具体流程如下:
901:虚拟桌面服务器的播放器向播放器Assistant发送播放通知消息,所述播放通知消息中包括播放控制点的位置信息;
另外,所述播放通知消息中还可以包括其它与流媒体播放相关的信息,如播放动作、Cache节点的地址或链接等信息,本发明对此不限定。具体地,本实施例以播放控制点位于虚拟桌面服务器为例进行说明。
902:播放器Assistant收到该播放通知消息后,向虚拟桌面客户端的播放器Agent转发该播放通知消息;
903:虚拟桌面客户端的播放器Agent收到该播放通知消息后,根据其中的播放控制点的位置信息,判断播放控制点位于虚拟桌面服务器还是虚拟桌面客户端,如果判断出播放控制点位于虚拟桌面服务器,则发送媒体源建立连接请求消息,该消息中包括播放器Agent所在的虚拟桌面客户端的流媒体接收地址;
904:虚拟桌面服务器的播放器Assistant收到该请求消息后,向播放器转发该媒体源建立连接请求消息;
905:播放器收到该媒体源建立连接请求消息后,向媒体源发送媒体源建立连接请求消息,其中包括虚拟桌面客户端的流媒体接收地址;
以媒体数据保存在Cache节点为例,播放器可以具体地发送基于RTSP的媒体源建立连接请求消息(Setup消息)给Cache节点,与Cache节点建立连接,当然也可以采用其它协议,本发明对此不限定。
906:媒体源收到该媒体源建立连接请求消息后,返回应答消息给虚拟桌面服务器的播放器,其中包括流媒体发送地址;
907:虚拟桌面服务器的播放器收到后,向播放器Assistant发送所述应答消息;
908:播放器Assistant将所述应答消息转发给虚拟桌面客户端的播放器Agent;
909:虚拟桌面客户端的播放器Agent收到所述应答消息后,根据其中的流媒体发送地址与媒体源建立连接,并在流媒体接收地址上接收流媒体,进行流媒体的播放。
具体地,播放器代理可以打开流媒体接收地址的端口,开始接收媒体源发送的流媒体,播放流媒体。
本实施例提供的上述方法,通过虚拟桌面服务器向虚拟桌面客户端发送通知消息并获取流媒体接收地址并发送给媒体源,以及将媒体源返回的流媒体发送地址发送给虚拟桌面客户端,使得虚拟桌面客户端可以与媒体源建立连接并在流媒体接收地址上接收流媒体,进行流媒体的播放,由于不需要在虚拟桌面服务器进行流媒体的播放,避免了流媒体的二次转发,极大地降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担,并且通过虚拟桌面客户端与流媒体直接建立连接传输流媒体,减少了流媒体的延迟,极大地提高了用户的体验。
实施例4
参见图10,本发明实施例还提供了一种流媒体播放方法,由虚拟桌面客户端与媒体源直接交互以便双方交换流媒体接收地址和流媒体发送地址,所述方法包括:
1001:虚拟桌面客户端向桌面服务器发送播放流媒体的请求;
1002:虚拟桌面客户端接收虚拟桌面服务器发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
1003:当虚拟桌面客户端根据所述播放通知消息中的播放控制点的位置信息确定播放控制点位于虚拟桌面客户端时,虚拟桌面客户端向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括虚拟桌面客户端的流媒体接收地址;
1004:虚拟桌面客户端接收媒体源返回的流媒体发送地址;
1005:虚拟桌面客户端根据该流媒体发送地址与媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放。
具体地,上述方法可以通过虚拟桌面服务器中的播放器和播放器助手,以及虚拟桌面客户端内的播放器代理来实现,参见图11和图12,上述方法的具体流程如下:
1101:虚拟桌面服务器的播放器向播放器Assistant发送播放通知消息,其中包括播放控制点的位置信息;
另外,所述播放通知消息中还可以包括其它与流媒体播放相关的信息,如播放动作、Cache节点的地址或链接等信息,本发明对此不限定。具体地,本实施例以播放控制点位于虚拟桌面客户端为例进行说明。
1102:虚拟机桌面服务器的播放器Assistant向虚拟桌面客户端的播放器Agent转发所述播放通知消息;
1103:虚拟桌面客户端的播放器Agent收到所述播放通知消息后,根据其中的播放控制点的位置信息,判断播放控制点是位于虚拟桌面服务器还是位于虚拟桌面客户端,如果判断出位于虚拟桌面客户端,则播放器Agent直接向媒体源发送媒体源建立连接请求消息,其中包括虚拟桌面客户端的流媒体接收地址;
具体地,以媒体数据保存在Cache节点为例,播放器Agent可以具体地发送基于RTSP的媒体源建立连接请求消息(Setup消息)给Cache节点,与Cache节点建立连接,当然也可以采用其它协议,本发明对此不限定。
1104:媒体源收到虚拟桌面客户端的播放器Agent发送的媒体源建立连接请求消息后,返回应答消息,其中包括流媒体发送地址;
1105:虚拟桌面客户端的播放器Agent收到所述应答消息后,根据其中的流媒体发送地址与媒体源建立连接,并在流媒体接收地址上接收流媒体,进行流媒体的播放。
具体地,播放器Agent可以打开流媒体接收地址的端口,开始接收媒体源发送的流媒体,播放流媒体。
本实施例提供的上述方法,通过虚拟桌面服务器向虚拟桌面客户端发送通知消息,通知播放控制点的位置信息,使得虚拟桌面客户端直接将流媒体接收地址发送给媒体源,并根据媒体源返回的流媒体发送地址与媒体源建立连接,并在流媒体接收地址上接收流媒体,进行流媒体的播放,由于不需要在虚拟桌面服务器进行流媒体的播放,避免了流媒体的二次转发,极大地降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担,并且通过虚拟桌面客户端与流媒体直接建立连接传输流媒体,减少了流媒体的延迟,极大地提高了用户的体验。
另外,在本发明中,上述实施例提供的任一方法中,进一步地,所述方法还可以包括以下步骤:
在虚拟桌面客户端进行流媒体的播放之后,虚拟桌面服务器接收虚拟桌面客户端发送的播放器调整指令,根据所述播放器调整指令对虚拟桌面服务器的播放器执行调整操作,并将所述调整操作发送给虚拟桌面客户端,使得虚拟桌面客户端对本地的播放器执行相同的调整操作。
具体地,可以通过虚拟桌面服务器内的播放器和播放器助手,以及虚拟桌面客户端内的播放器代理来实现,参见图13,具体流程如下:
1301:虚拟桌面服务器的播放器收到虚拟桌面客户端的播放器代理发来的播放器调整指令,根据该播放器调整指令对虚拟桌面服务器的播放器执行调整操作;
其中,所述播放器调整指令是由虚拟桌面客户端的用户触发的,用于对播放器的窗口进行调整,如调整窗口的大小等,本发明对此不限定;
1302:虚拟桌面服务器的播放器Assistant通过过滤器接口(Filter接口)捕获所述播放器执行的调整操作,并通过消息接口将其发送给虚拟桌面客户端的播放器Agent;
1303:虚拟桌面客户端的播放器Agent收到该调整操作后,对虚拟桌面客户端的播放器执行相同的调整操作。
在本发明中,当用户对播放器进行针对流媒体控制的操作,比如控制流媒体的暂停或者快进等操作时,虚拟桌面服务器的播放器会直接与媒体源或缓存节点建立连接,通知媒体源或者缓存节点进行流媒体的暂停或者快进等操作,不必通知虚拟桌面客户端的播放器代理;当用户对播放器进行针对播放器本身设置的操作,比如对播放器的窗口大小进行调整等操作时,虚拟桌面服务器的播放器会执行相应的操作,并由播放器助手捕获到该操作后发送给虚拟桌面客户端的播放器代理,从而使得虚拟桌面客户端的播放器代理能够执行相同的操作,进行界面上的相关显示,保证虚拟桌面服务器和虚拟桌面客户端双方播放器调整的一致性。
实施例5
参见图14,本发明实施例还提供了一种虚拟桌面服务器,包括:
第一获取模块11,用于接收虚拟桌面客户端发送的播放流媒体的请求,获取所述虚拟桌面客户端的流媒体接收地址;
第二获取模块12,用于向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括所述流媒体接收地址,接收所述媒体源返回的流媒体发送地址;
转发模块13,用于将所述流媒体发送地址转发给所述虚拟桌面客户端,使得所述虚拟桌面客户端根据所述流媒体发送地址与所述媒体源建立连接并在所述流媒体接收地址上接收流媒体,进行流媒体的播放。
参见图15,第一获取模块11可以包括:
请求单元11a,用于向所述虚拟桌面客户端发送流媒体接收地址的请求消息;
获取单元11b,用于接收所述虚拟桌面客户端返回的应答消息,从所述应答消息中获取所述虚拟桌面客户端的流媒体接收地址。
或者,第一获取模块11包括:
通知单元11c,用于向所述虚拟桌面客户端发送播放通知消息,所述播放通知消息包含播放控制点的位置信息;
接收单元11d,用于当所述虚拟桌面客户端根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面服务器时,接收所述虚拟桌面客户端发送的流媒体接收地址。
本实施例中,所述服务器还可以包括:
调整模块14,用于在所述虚拟桌面客户端进行流媒体的播放之后,接收所述虚拟桌面客户端发送的播放器调整指令,根据所述播放器调整指令对所述虚拟桌面服务器的播放器执行调整操作,并将所述调整操作发送给所述虚拟桌面客户端,使得所述虚拟桌面客户端对本地的播放器执行相同的调整操作。
本发明实施例提供的上述虚拟桌面服务器,通过获取虚拟桌面客户端的流媒体接收地址并发送给媒体源,以及将媒体源返回的流媒体发送地址发送给虚拟桌面客户端,使得虚拟桌面客户端可以与媒体源建立连接并在流媒体接收地址上接收流媒体,进行流媒体的播放,由于不需要在虚拟桌面服务器进行流媒体的播放,避免了流媒体的二次转发,极大地降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担,并且通过虚拟桌面客户端与流媒体直接建立连接传输流媒体,减少了流媒体的延迟,极大地提高了用户的体验。
实施例6
参见图16,本发明实施例还提供了一种虚拟桌面客户端,包括:
请求模块21,用于向虚拟桌面服务器发送播放流媒体的请求;
发送模块22,用于将所述虚拟桌面客户端的流媒体接收地址发送给所述虚拟桌面服务器;
接收模块23,用于当所述虚拟桌面服务器向媒体源发送包含所述流媒体接收地址的媒体源建立连接请求且收到所述媒体源返回的流媒体发送地址后,接收所述虚拟桌面服务器转发的所述流媒体发送地址;
播放模块24,用于根据所述流媒体发送地址与所述媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放。
参见图17,发送模块22可以包括:
请求接收单元22a,用于接收所述虚拟桌面服务器发送的流媒体接收地址的请求消息;
应答单元22b,用于在所述请求接收单元收到所述请求消息后,返回应答消息给所述虚拟桌面服务器,所述应答消息中包括所述虚拟桌面客户端的流媒体接收地址。
或者,发送模块22包括:
通知接收单元22c,用于接收所述虚拟桌面服务器发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
确定单元22d,用于根据所述播放通知消息中的所述播放控制点的位置信息,确定所述播放控制点是否位于所述虚拟桌面服务器;
发送单元22e,用于当所述确定单元确定所述播放控制点位于所述虚拟桌面服务器时,发送所述虚拟桌面客户端的流媒体接收地址给所述虚拟桌面服务器。
本实施例中,所述虚拟桌面客户端还可以包括:
调整模块25,用于在播放模块24进行流媒体的播放之后,向所述虚拟桌面服务器发送播放器调整指令,当所述虚拟桌面服务器根据所述播放器调整指令对所述虚拟桌面服务器的播放器执行调整操作后,接收所述虚拟桌面服务器发送的所述调整操作,根据收到的所述调整操作对本地的播放器执行相同的调整操作。
本发明实施例提供的上述虚拟桌面客户端,通过虚拟桌面服务器将虚拟桌面客户端的流媒体接收地址发送给媒体源,并获取媒体源返回的流媒体发送地址,从而可以与媒体源建立连接并在流媒体接收地址上接收流媒体,进行流媒体的播放,由于不需要在虚拟桌面服务器进行流媒体的播放,避免了流媒体的二次转发,极大地降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担,并且通过虚拟桌面客户端与流媒体直接建立连接传输流媒体,减少了流媒体的延迟,极大地提高了用户的体验。
实施例7
参见图18,本发明实施例还提供了一种虚拟桌面客户端,包括:
请求模块31,用于端向虚拟桌面服务器发送播放流媒体的请求;
第一接收模块32,用于接收虚拟桌面服务器发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
发送模块33,用于当虚拟桌面客户端根据所述播放通知消息中的播放控制点的位置信息确定所述播放控制点位于虚拟桌面客户端时,向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括虚拟桌面客户端的流媒体接收地址;
第二接收模块34,用于接收媒体源返回的流媒体发送地址;
播放模块35,用于根据所述流媒体发送地址与媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放。
本实施例中,所述客户端还可以包括:
调整模块,用于在播放模块35进行流媒体的播放之后,向虚拟桌面服务器发送播放器调整指令,当虚拟桌面服务器根据所述播放器调整指令对虚拟桌面服务器的播放器执行调整操作后,接收虚拟桌面服务器发送的所述调整操作,根据收到的调整操作对本地的播放器执行相同的调整操作。
本发明实施例提供的上述虚拟桌面客户端,根据虚拟桌面服务器发送的播放通知消息确定播放控制点位于虚拟桌面客户端后,将虚拟桌面客户端的流媒体接收地址直接发送给媒体源,并获取媒体源返回的流媒体发送地址,从而可以与媒体源建立连接并在流媒体接收地址上接收流媒体,进行流媒体的播放,由于不需要在虚拟桌面服务器进行流媒体的播放,避免了流媒体的二次转发,极大地降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担,并且通过虚拟桌面客户端与流媒体直接建立连接传输流媒体,减少了流媒体的延迟,极大地提高了用户的体验。
实施例8
参见图19,本发明实施例还提供了一种流媒体播放系统,包括:如实施例5所述的虚拟桌面服务器41,和如实施例6所述的虚拟桌面客户端42。
其中,虚拟桌面服务器41的功能,以及虚拟桌面客户端42的功能详见上述实施例中的描述,此处不赘述。所述流媒体播放系统可以执行上述任一实施例中的方法,具体过程详见方法实施例的描述,此处不赘述。
本发明实施例提供的上述流媒体播放系统,通过虚拟桌面服务器获取虚拟桌面客户端的流媒体接收地址并发送给媒体源,以及将媒体源返回的流媒体发送地址发送给虚拟桌面客户端,或者通过虚拟桌面客户端直接将流媒体接收地址发送给媒体源并从媒体源获取流媒体发送地址,使得虚拟桌面客户端可以与媒体源建立连接并在流媒体接收地址上接收流媒体,进行流媒体的播放,由于不需要在虚拟桌面服务器进行流媒体的播放,避免了流媒体的二次转发,极大地降低了虚拟桌面服务器的CPU资源占用和带宽占用,减轻了虚拟桌面服务器的负担,并且通过虚拟桌面客户端与流媒体直接建立连接传输流媒体,减少了流媒体的延迟,极大地提高了用户的体验。
需要说明的是:上述实施例提供的流媒体播放系统在进行流媒体播放时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的流媒体播放系统与流媒体播放方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (13)
1.一种流媒体播放方法,其特征在于,所述方法包括:
虚拟桌面服务器的播放器助手接收虚拟桌面客户端的播放器代理发送的播放流媒体的请求,获取所述虚拟桌面客户端的流媒体接收地址;
所述虚拟桌面服务器的播放器向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括所述流媒体接收地址;
所述虚拟桌面服务器的播放器接收所述媒体源返回的流媒体发送地址;
所述虚拟桌面服务器的播放器助手将所述流媒体发送地址转发给所述虚拟桌面客户端的播放器代理,使得所述虚拟桌面客户端的播放器代理根据所述流媒体发送地址与所述媒体源建立连接并在所述流媒体接收地址上接收流媒体,进行流媒体的播放;
其中,获取所述虚拟桌面客户端的流媒体接收地址,包括:
所述虚拟桌面服务器的播放器助手向所述虚拟桌面客户端的播放器代理发送播放通知消息,所述播放通知消息包含播放控制点的位置信息;
当所述虚拟桌面客户端的播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面服务器时,所述虚拟桌面服务器的播放器助手接收所述虚拟桌面客户端的播放器代理发送的流媒体接收地址。
2.根据权利要求1所述的方法,其特征在于,所述虚拟桌面客户端进行流媒体的播放之后,还包括:
所述虚拟桌面服务器的播放器助手接收所述虚拟桌面客户端的播放器代理发送的播放器调整指令,根据所述播放器调整指令对所述虚拟桌面服务器的播放器执行调整操作,并将所述调整操作发送给所述虚拟桌面客户端的播放器代理,使得所述虚拟桌面客户端的播放器代理对本地的播放器执行相同的调整操作。
3.一种流媒体播放方法,其特征在于,所述方法包括:
虚拟桌面客户端的播放器代理向虚拟桌面服务器的播放器助手发送播放流媒体的请求;
所述虚拟桌面客户端的播放器代理将所述虚拟桌面客户端的流媒体接收地址发送给所述虚拟桌面服务器的播放器助手;
当所述虚拟桌面服务器的播放器向媒体源发送包含所述流媒体接收地址的媒体源建立连接请求且收到所述媒体源返回的流媒体发送地址后,所述虚拟桌面客户端的播放器代理接收所述虚拟桌面服务器的播放器助手转发的所述流媒体发送地址;
所述虚拟桌面客户端的播放器代理根据所述流媒体发送地址与所述媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放;
其中,所述虚拟桌面客户端的播放器代理将所述虚拟桌面客户端的流媒体接收地址发送给所述虚拟桌面服务器的播放器助手,包括:
所述虚拟桌面客户端的播放器代理接收所述虚拟桌面服务器的播放器助手发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
当所述虚拟桌面客户端的播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面服务器时,所述虚拟桌面客户端的播放器代理发送所述虚拟桌面客户端的流媒体接收地址给所述虚拟桌面服务器的播放器助手。
4.根据权利要求3所述的方法,其特征在于,所述虚拟桌面客户端进行流媒体的播放之后,还包括:
所述虚拟桌面客户端的播放器代理向所述虚拟桌面服务器的播放器助手发送播放器调整指令;
当所述虚拟桌面服务器的播放器助手根据所述播放器调整指令对所述虚拟桌面服务器的播放器执行调整操作后,所述虚拟桌面客户端的播放器代理接收所述虚拟桌面服务器的播放器助手发送的所述调整操作;
所述虚拟桌面客户端的播放器代理根据收到的所述调整操作对本地的播放器执行相同的调整操作。
5.一种流媒体播放方法,其特征在于,所述方法包括:
虚拟桌面客户端的播放器代理向虚拟桌面服务器的播放器助手发送播放流媒体的请求;
所述虚拟桌面客户端的播放器代理接收所述虚拟桌面服务器的播放器助手发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
当所述虚拟桌面客户端的播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面客户端时,所述虚拟桌面客户端的播放器代理向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括所述虚拟桌面客户端的流媒体接收地址;
所述虚拟桌面客户端的播放器代理接收所述媒体源返回的流媒体发送地址;
所述虚拟桌面客户端的播放器代理根据所述流媒体发送地址与所述媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放。
6.根据权利要求5所述的方法,其特征在于,所述虚拟桌面客户端进行流媒体的播放之后,还包括:
所述虚拟桌面客户端的播放器代理向所述虚拟桌面服务器的播放器助手发送播放器调整指令;
当所述虚拟桌面服务器的播放器助手根据所述播放器调整指令对所述虚拟桌面服务器的播放器执行调整操作后,所述虚拟桌面客户端的播放器代理接收所述虚拟桌面服务器的播放器助手发送的所述调整操作;
所述虚拟桌面客户端的播放器代理根据收到的所述调整操作对本地的播放器执行相同的调整操作。
7.一种虚拟桌面服务器,其特征在于,所述服务器包括:播放器助手和播放器;
所述播放器助手包括:第一获取模块和转发模块;所述播放器包括:第二获取模块;
所述第一获取模块,用于接收虚拟桌面客户端的播放器代理发送的播放流媒体的请求,获取所述虚拟桌面客户端的流媒体接收地址;
所述第二获取模块,用于向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括所述流媒体接收地址,接收所述媒体源返回的流媒体发送地址;
所述转发模块,用于将所述流媒体发送地址转发给所述虚拟桌面客户端的播放器代理,使得所述虚拟桌面客户端的播放器代理根据所述流媒体发送地址与所述媒体源建立连接并在所述流媒体接收地址上接收流媒体,进行流媒体的播放;
其中,所述第一获取模块包括:
通知单元,用于向所述虚拟桌面客户端的播放器代理发送播放通知消息,所述播放通知消息包含播放控制点的位置信息;
接收单元,用于当所述虚拟桌面客户端的播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面服务器时,接收所述虚拟桌面客户端的播放器代理发送的流媒体接收地址。
8.根据权利要求7所述的服务器,其特征在于,所述播放器助手还包括:
调整模块,用于在所述虚拟桌面客户端进行流媒体的播放之后,接收所述虚拟桌面客户端的播放器代理发送的播放器调整指令,根据所述播放器调整指令对所述虚拟桌面服务器的播放器执行调整操作,并将所述调整操作发送给所述虚拟桌面客户端的播放器代理,使得所述虚拟桌面客户端的播放器代理对本地的播放器执行相同的调整操作。
9.一种虚拟桌面客户端,其特征在于,所述客户端包括:播放器代理,所述播放器代理包括:
请求模块,用于向虚拟桌面服务器的播放器助手发送播放流媒体的请求;
发送模块,用于将所述虚拟桌面客户端的流媒体接收地址发送给所述虚拟桌面服务器的播放器助手;
接收模块,用于当所述虚拟桌面服务器的播放器向媒体源发送包含所述流媒体接收地址的媒体源建立连接请求且收到所述媒体源返回的流媒体发送地址后,接收所述虚拟桌面服务器的播放器助手转发的所述流媒体发送地址;
播放模块,用于根据所述流媒体发送地址与所述媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放;
其中,所述发送模块包括:
通知接收单元,用于接收所述虚拟桌面服务器的播放器助手发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
确定单元,用于根据所述播放通知消息中的所述播放控制点的位置信息,确定所述播放控制点是否位于所述虚拟桌面服务器;
发送单元,用于当所述确定单元确定所述播放控制点位于所述虚拟桌面服务器时,发送所述虚拟桌面客户端的流媒体接收地址给所述虚拟桌面服务器的播放器助手。
10.根据权利要求9所述的客户端,其特征在于,所述播放器代理还包括:
调整模块,用于在所述播放模块进行流媒体的播放之后,向所述虚拟桌面服务器的播放器助手发送播放器调整指令,当所述虚拟桌面服务器的播放器助手根据所述播放器调整指令对所述虚拟桌面服务器的播放器执行调整操作后,接收所述虚拟桌面服务器的播放器助手发送的所述调整操作,根据收到的所述调整操作对本地的播放器执行相同的调整操作。
11.一种虚拟桌面客户端,其特征在于,所述客户端包括:播放器代理,所述播放器代理包括:
请求模块,用于向虚拟桌面服务器的播放器助手发送播放流媒体的请求;
第一接收模块,用于接收所述虚拟桌面服务器的播放器助手发送的播放通知消息,所述播放通知消息包含播放控制点的位置信息;
发送模块,用于当所述播放器代理根据所述播放通知消息中的所述播放控制点的位置信息确定所述播放控制点位于所述虚拟桌面客户端时,向媒体源发送媒体源建立连接请求,所述媒体源建立连接请求中包括所述虚拟桌面客户端的流媒体接收地址;
第二接收模块,用于接收所述媒体源返回的流媒体发送地址;
播放模块,用于根据所述流媒体发送地址与所述媒体源建立连接,并在所述流媒体接收地址上接收流媒体,进行流媒体的播放。
12.根据权利要求11所述的客户端,其特征在于,所述播放器代理还包括:
调整模块,用于在所述播放模块进行流媒体的播放之后,向所述虚拟桌面服务器的播放器助手发送播放器调整指令,当所述虚拟桌面服务器的播放器助手根据所述播放器调整指令对所述虚拟桌面服务器的播放器执行调整操作后,接收所述虚拟桌面服务器的播放器助手发送的所述调整操作,根据收到的所述调整操作对本地的播放器执行相同的调整操作。
13.一种流媒体播放系统,其特征在于,所述系统包括:如权利要求7或8所述的虚拟桌面服务器,和如权利要求9至12中任一项所述的虚拟桌面客户端。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2012/070894 WO2013116975A1 (zh) | 2012-02-06 | 2012-02-06 | 流媒体播放方法、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103348657A CN103348657A (zh) | 2013-10-09 |
CN103348657B true CN103348657B (zh) | 2015-09-30 |
Family
ID=48946877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280000264.6A Active CN103348657B (zh) | 2012-02-06 | 2012-02-06 | 流媒体播放方法、设备及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103348657B (zh) |
WO (1) | WO2013116975A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110225415A (zh) * | 2018-03-01 | 2019-09-10 | 中兴通讯股份有限公司 | 一种媒体文件的播放方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105208406A (zh) * | 2014-06-11 | 2015-12-30 | 中兴通讯股份有限公司 | 视频数据提供方法、视频播放方法、装置及系统 |
CN105227527A (zh) * | 2014-06-26 | 2016-01-06 | 中兴通讯股份有限公司 | 播放多媒体的方法及系统、服务器 |
CN104270648B (zh) * | 2014-09-16 | 2018-04-20 | 深信服科技股份有限公司 | 基于虚拟化环境播放本地多媒体资源的方法和系统 |
CN106227491B (zh) * | 2016-08-04 | 2019-05-14 | 浪潮电子信息产业股份有限公司 | 一种远程桌面视频播放方法、服务器、客户端及系统 |
CN110113661A (zh) * | 2019-04-10 | 2019-08-09 | 新华三云计算技术有限公司 | 一种视频播放方法及装置 |
CN115134420A (zh) * | 2021-03-24 | 2022-09-30 | 华为技术有限公司 | 一种媒体播放方法、装置和电子设备 |
CN113870470A (zh) * | 2021-09-08 | 2021-12-31 | 深圳柏成科技有限公司 | 一种基于ffmpeg的门禁系统及处理方法 |
CN114942812B (zh) * | 2022-05-31 | 2024-04-30 | 上海嘉车信息科技有限公司 | 多媒体信息共享方法、装置和电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101202896A (zh) * | 2007-10-17 | 2008-06-18 | 杭州华三通信技术有限公司 | 视频点播方法、视频数据发送方法、服务器及节目源设备 |
CN102137151A (zh) * | 2010-01-22 | 2011-07-27 | 微软公司 | 多链路远程协议 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102307153A (zh) * | 2011-10-14 | 2012-01-04 | 王宁 | 一种虚拟桌面传输设备和方法 |
-
2012
- 2012-02-06 WO PCT/CN2012/070894 patent/WO2013116975A1/zh active Application Filing
- 2012-02-06 CN CN201280000264.6A patent/CN103348657B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101202896A (zh) * | 2007-10-17 | 2008-06-18 | 杭州华三通信技术有限公司 | 视频点播方法、视频数据发送方法、服务器及节目源设备 |
CN102137151A (zh) * | 2010-01-22 | 2011-07-27 | 微软公司 | 多链路远程协议 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110225415A (zh) * | 2018-03-01 | 2019-09-10 | 中兴通讯股份有限公司 | 一种媒体文件的播放方法 |
CN110225415B (zh) * | 2018-03-01 | 2022-06-21 | 中兴通讯股份有限公司 | 一种媒体文件的播放方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103348657A (zh) | 2013-10-09 |
WO2013116975A1 (zh) | 2013-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103348657B (zh) | 流媒体播放方法、设备及系统 | |
US9641559B2 (en) | Methods and systems for dynamic adjustment of session parameters for effective video collaboration among heterogeneous devices | |
CN111479121B (zh) | 一种基于流媒体服务器的直播方法及系统 | |
CN107682657B (zh) | 一种基于WebRTC的多人语音视频通话方法及系统 | |
US9197701B1 (en) | Consolidated peer-to-peer media sessions for audio and/or video communications | |
CN104253742B (zh) | 虚拟web实时通信网关以及相关的方法、系统 | |
US9332583B2 (en) | Multipoint communication device and method of performing switching from multipoint communication to point-to-point communication | |
CN111147893B (zh) | 一种视频自适应方法、相关设备以及存储介质 | |
CN112291366B (zh) | 数据传输方法、装置、存储介质及电子设备 | |
CN104253856A (zh) | 可缩放Web实时通信媒体引擎以及相关的方法、系统 | |
EP2989800B1 (en) | Data communication system and method | |
US9094527B2 (en) | Seamlessly transferring a communication | |
Lei et al. | Design and implementation of streaming media processing software based on RTMP | |
US20150271226A1 (en) | Transport accelerator implementing a multiple interface architecture | |
CN101179480B (zh) | 一种转发流媒体的方法 | |
CN113114688B (zh) | 多媒体会议管理方法及装置、存储介质、电子设备 | |
Xue et al. | A WebRTC-based video conferencing system with screen sharing | |
CN103684970A (zh) | 媒体数据流的传输方法和瘦终端 | |
WO2011130962A1 (zh) | 远程处理方法、装置及系统 | |
Rodríguez et al. | Adaptive cross-device videoconferencing solution for wireless networks based on QoS monitoring | |
CN101188605A (zh) | 一种转发流媒体的系统 | |
KR20170071251A (ko) | 회의 서비스를 제공하는 다중 접속 제어 장치 | |
CN105263134A (zh) | 一种图像传输方法及移动设备 | |
WO2024082882A1 (zh) | 多媒体内容的传输方法、装置、设备及存储介质 | |
Rodríguez et al. | Cross-device Videoconferencing based on Adaptive Multimedia Streams. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211221 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: xFusion Digital Technologies Co., Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |