CN103414867B - 多媒体通话控制方法、终端及系统 - Google Patents
多媒体通话控制方法、终端及系统 Download PDFInfo
- Publication number
- CN103414867B CN103414867B CN201310307087.2A CN201310307087A CN103414867B CN 103414867 B CN103414867 B CN 103414867B CN 201310307087 A CN201310307087 A CN 201310307087A CN 103414867 B CN103414867 B CN 103414867B
- Authority
- CN
- China
- Prior art keywords
- window
- call
- video
- description data
- terminal
- 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
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种多媒体通话控制方法,包括:当主叫瘦终端接收到虚拟机发送的通话控制窗口的描述数据时,其中,通话控制窗口的描述数据包括:视频显示区域的描述数据和通话控制界面的描述数据;主叫瘦终端按照通话控制窗口的描述数据,在桌面控制窗口中绘制通话控制窗口,并且保存视频显示区域的描述数据;当主叫瘦终端与被叫终端建立视频会话时,根据视频显示区域的描述数据,主叫瘦终端在视频显示区域的描述数据对应的区域生成视频播放窗口;这样就能够实现了视频播放窗口和通话控制窗口在显示时成为一个整体了,提高了用户的体验。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种多媒体通话控制方法、终端及系统。
背景技术
桌面云是可以通过瘦终端访问跨平台的应用程序,以及客户桌面。用户可以通过客户桌面进行系统操作。桌面云和传统的个人电脑在用户体验方面是一样的。桌面云采用集中部署、数据托管等技术,在管理维护、灾难恢复等方面,与分散、独立的桌面系统相比具有明显优势。
用户A的主叫瘦终端,以及在云环境上的与用户A的主叫瘦终端对应的虚拟机,以及视频通话服务器,和用户B的被叫终端;其中,用户A的主叫瘦终端中包含了多媒体播放模块,用户A的对应虚拟机包含了通话控制模块,多媒体播放模块和通话控制模块共同组成了用户A的视频通话客户端,用户A通过该视频通话客户端可以与其他也同样安装了视频通话客户端的用户(如用户B)进行视频通话。
上述现有技术的缺点在于:由于多媒体播放模块和通话控制模块不在同一个网元上,这样就导致了视频播放窗口和通话控制窗口有可能成为不了一个整体,这样降低了用户体验。
发明内容
本发明实施例提供一种多媒体通话控制方法,用以解决现有技术中视频通话过程中,多媒体播放窗口和通话控制窗口在进行调整时不能同步的问题。
对应地,本发明实施例还提供了一种云服务器、一种终端设备以及一种的多媒体通话控制系统,用以解决现有技术中视频通话过程中,云端进行播放处理导致的数据传输速度慢、有延迟的问题。
本发明实施例提供的技术方案如下:
第一方面,本发明实施例提供一种多媒体通话控制方法,包括:
当主叫瘦终端接收到虚拟机发送的所述通话控制窗口的描述数据时,其中,所述通话控制窗口的描述数据包括:视频显示区域的描述数据和通话控制界面的描述数据;
所述主叫瘦终端按照所述通话控制窗口的描述数据,在桌面控制窗口中绘制所述通话控制窗口,并且保存所述视频显示区域的描述数据;
当所述主叫瘦终端与被叫终端建立视频会话时,根据所述视频显示区域的描述数据,所述主叫瘦终端在视频显示区域的描述数据对应的区域生成视频播放窗口。
在第一方面的第一种可能的实现方式中,所述方法还包括:
所述主叫瘦终端接收所述虚拟机发送的显示调整指令,其中显示调整指令包含调整后的通话控制窗口的描述数据;
所述主叫瘦终端根据所述调整后的通话控制窗口的描述数据,绘制调整后的通话控制窗口,以及将视频播放窗口的位置调整到所述调整后的视频显示区域的描述数据对应的区域。
在第一方面的第二种可能的实现方式中,方法还包括:
所述主叫瘦终端接收对视频播放窗口进行调整的输入事件,并根据所述对视频播放窗口进行调整的输入事件,生成对所述视频播放窗口进行调整的控制指令,并按照所述控制指令,执行对视频播放窗口的显示调整;
所述主叫瘦终端向所述虚拟机发送包含显示调整指令,其中显示调整指令包含调整后的视频播放窗口的描述数据,以便于所述虚拟机根据所述调整后的视频播放窗口的描述数据,调整所述通话控制窗口。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述对视频播放窗口进行调整的输入事件具体为窗口最小化的输入事件、窗口最大化的输入事件、窗口恢复默认大小的输入事件、窗口位置移动的 输入事件或窗口尺寸大小调整的输入事件。。
在第一方面的第四种可能的实现方式中,在所述当与主叫瘦终端对应的虚拟机接收到所述主叫瘦终端发送的启动视频通话的事件信息之前,还包括:
当所述虚拟机接收到所述主叫瘦终端发送的通话请求事件信息时,所述虚拟机向视频通话服务器发送视频通话建立请求;
当所述虚拟机接收到所述视频通话服务器发送的视频通话建立响应时,所述虚拟机将所述视频通话建立响应发送至所述主叫瘦终端,所述视频通话建立响应包括被叫终端地址;
所述主叫瘦终端按照所述被叫终端地址直接向被叫终端发送多媒体通话数据,以及直接接收被叫终端发送的多媒体通话数据。
第二方面,本发明实施例提供一种多媒体通话控制的终端,包括:
接收模块,用于当接收到虚拟机发送的所述通话控制窗口的描述数据时,其中,所述通话控制窗口的描述数据包括:视频显示区域的描述数据和通话控制界面的描述数据;
绘制模块,用于接收所述接收模块发送的所述通话控制窗口的描述数据,按照所述通话控制窗口的描述数据,在桌面控制窗口中绘制所述通话控制窗口,并且保存所述视频显示区域的描述数据;
生成模块,用于当与被叫终端建立视频会话时,根据所述视频显示区域的描述数据,在视频显示区域的描述数据对应的区域生成视频播放窗口。
在第二方面的第一种可能的实现方式中,所述接收模块还用于接收所述虚拟机发送的显示调整指令,其中显示调整指令包含调整后的通话控制窗口的描述数据;
所述绘制模块,还用于根据所述调整后的通话控制窗口的描述数据,绘制调整后的通话控制窗口;
所述终端还包括:被动调整模块,用于将视频播放窗口的位置调整到所述调整后的视频显示区域的描述数据对应的区域。
在第二方面的第二种可能的实现方式中,多媒体通话控制的终端还包括:
主动调整模块,用于接收对视频播放窗口进行调整的输入事件,并根据所述对视频播放窗口进行调整的输入事件,生成对所述视频播放窗口进行调整的控制指令,并按照所述控制指令,执行对视频播放窗口的显示调整;
发送模块,用于向所述虚拟机发送包含显示调整指令,其中显示调整指令包含调整后的视频播放窗口的描述数据,以便于所述虚拟机根据所述调整后的视频播放窗口的描述数据,调整所述通话控制窗口。
第三方面,本发明实施例提供一种多媒体通话控制的系统,包括上述第二方面、第二方面的第一种可能的实现方式或第二方面的第二种可能的实现方式的多媒体通话控制的终端和所述终端对应在云服务器上的虚拟机;其中,
所述虚拟机用于当接收到所述多媒体通话控制的终端发送的启动视频通话的事件信息时,向所述多媒体通话控制的终端发送通话控制窗口的描述数据,所述通话控制窗口的描述数据包括视频显示区域的描述数据和通话控制界面的描述数据。
在第三方面的第一种可能的实现方式中,所述虚拟机还用于当接收到所述终端发送的通话请求事件信息时,向视频通话服务器发送视频通话建立请求,当所述虚拟机接收到所述视频通话服务器发送的视频通话建立响应时,将所述视频通话建立响应发送至所述终端,所述视频通话建立响应包括被叫终端地址。。
在第三方面的第二种可能的实现方式中,所述虚拟机还用于设置通话控制窗口在桌面控制窗口中置顶。
本发明实施例的一种多媒体通话控制方法、终端及系统,由于主叫瘦终端与被叫终端建立视频会话时,会根据保存的所述视频显示区域的描述数据,在视频显示区域的描述数据对应的区域生成视频播放窗口。这样就能够实现了视频播放窗口和通话控制窗口在显示时成为一个整体了,提高了用户的体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的多媒体通话控制系统的结构示意图;
图2是本发明实施例提供的一种多媒体通话控制方法的流程图;
图3是本发明实施例提供的一种桌面控制窗口发送流程图;
图4是本发明实施例提供的一种通话建立流程图;
图5为本发明实施例提供的视频播放窗口覆盖效果示意图;
图6为本发明实施例提供的窗口调整流程图;
图7为本发明实施例提供的一种多媒体通话控制的终端结构示意图;
图8为本发明实施例提供的另一种多媒体通话控制的终端结构示意图;
图9为本发明实施例提供的多媒体通话控制的系统结构示意图;
图10为本发明实施例提供的又一种多媒体通话控制的终端结构示意图。
具体实施方式
下面结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细的阐述。
本发明实施例提供一种多媒体通话控制方法,所述方法应用于多媒体通话控制系统,图1为本发明实施例一的多媒体通话控制系统的结构示意图,如图1所示,本发明实施例的多媒体通话控制系统包括:用户A的主叫瘦终端,以及在云环境上的与用户A的主叫瘦终端对应的虚拟机,以及视频通话服务器,和用户B的被叫终端;其中,用户A的主叫瘦终端中包含了多媒体播放模块,用户A的对应虚拟机包含了通话控制模块,多媒体播放模块和通话控制模块共同组成了用户A的视频通话客户端,用户A通过该视频通话客户端可以与其他也同样安装了视频通话客户端的用户(如用户B)进行视频通话,用户B的被叫终端可以是一个计算机终端、PAD、手机或者被叫瘦终端,这里以计算机终端例进行说明,其他的终端类型的处理方式是类似的。用户B的被叫终端中也安装了视频通话客户端,各个用户的视频客户端都有一个唯一的ID标识以区分不同用户;
图2是本发明实施例的多媒体通话控制方法的流程图,如图2所示,多媒体通话控制方法包括:
步骤S1,当主叫瘦终端接收到虚拟机发送的通话控制窗口的描述数据时,其中,通话控制窗口的描述数据包括:视频显示区域的描述数据和通话控制界面的描述数据。
步骤S2主叫瘦终端按照通话控制窗口的描述数据,在桌面控制窗口中绘制通话控制窗口,并且保存视频显示区域的描述数据。
步骤S3,当主叫瘦终端与被叫终端建立视频会话时,根据视频显示区域的描述数据,主叫瘦终端在视频显示区域的描述数据对应的区域生成视频播放窗口。
主叫瘦终端按照视频显示区域的描述数据生成了视频播放窗口,即按照视频显示区域的尺寸信息、位置信息和边界信息绘制视频播放窗口的大小、位置、边界,最终达到的效果是视频播放窗口的大小、位置、边界与视频显示区域的大小、位置、边界完全一致,对用户的视觉上就是视频播放窗口覆盖了通话控制窗口的视频显示区域。
上述主叫瘦终端和被叫终端连接有摄像头、麦克风、音箱等外部设备,具有多媒体功能,能够进行视频通话。
在步骤S1中,视频显示区域可以是为了视频播放窗口所预留的默认图片,如空白区域或者某个图片;通话控制界面为用户提供通话控制输入界面,用户可以通过通话控制界面上的操作按钮发起、修改、断开视频通话连接。由于此时,视频通话还没有建立,此时视频显示区域只是显示了预留的默认图片。通过预留视频显示区域,可以使主叫瘦终端在视频显示区域对多媒体通话数据进 行播放处理,不需要云端进行播放处理。
在步骤S2中,主叫瘦终端按照通话控制窗口的描述数据在桌面控制窗口中显示通话控制窗口,即显示了通话控制界面和视频显示区域,而此时视频显示区域为默认图片。
在步骤S3中,由于视频播放窗口是根据视频显示区域的描述数据来生成的视频播放窗口,因此视频播放窗口就完全覆盖了覆盖默认图片,从用户角度来看,通话控制界面和视频播放窗口就完全融为了一个整体。
桌面控制窗口、通话控制窗口以及部署于云端的其他应用的窗口的发送采用的是远程桌面协议(RDP,Remote Desktop Protocol);图3是本发明实施例的桌面控制窗口发送流程图,如图3所示,本发明实施例中桌面控制窗口的发送过程包括:
步骤a1,部署于虚拟机的远程桌面服务端对虚拟机上的屏幕图像进行截取、压缩后发送至部署于主叫瘦终端的远程桌面客户端。
步骤a2,远程桌面客户端接收屏幕图像后进行解压,并在主叫瘦终端上重新绘制屏幕图像。
步骤a3,当远程桌面客户端获取输入设备产生的输入事件时,例如键盘、触摸屏、鼠标的操作事件,远程桌面客户端向远程桌面服务端发送上述输入事件。
步骤a4,远程桌面服务端根据输入事件,在虚拟机生成对应的控制指令,并根据该控制指令,生成新的屏幕图像。
部署于虚拟机的其他应用的窗口也采用上述处理过程。
以下对本发明实施例涉及的应用窗口进行统一解释:
远程控制窗口,设于主叫瘦终端本地,用于显示桌面控制窗口。
视频播放窗口,设于主叫瘦终端本地,用于在主叫瘦终端本地显示播放多媒体通话数据中的视频数据。
桌面控制窗口,设于虚拟机,包括若干应用程序控制窗口;通话控制窗口 是若干应用程序控制窗口之一。
通话控制窗口,设于虚拟机,包括视频显示区域和通话控制界面,在视频通话的正常情况下,在瘦终端上,视频播放窗口将覆盖视频显示区域。
进一步,本发明实施例的多媒体通话控制方法,图4是本发明实施例提供的通话建立流程图,如图4所示,在步骤S2中主叫瘦终端按照通话控制窗口的描述数据在桌面控制窗口中绘制通话控制窗口之后,以及在步骤S3之前,多媒体通话控制方法还包括:
步骤S21,主叫瘦终端向虚拟机发送通话请求事件信息。
具体为:用户A点击通话控制界面上的视频通话按钮,此时主叫瘦终端将向虚拟机输入通话请求事件信息。
步骤S22,当虚拟机接收到主叫瘦终端发送的通话请求事件信息时,虚拟机向视频通话服务器发送视频通话建立请求。
具体为:当虚拟机收到了通话请求事件信息时,虚拟机确认需要向被叫终端发起视频呼叫,此时,主叫瘦终端对应的虚拟机向视频通话服务器发送视频通话建立请求,请求建立与被叫终端上的视频通话客户端的通话连接,该通话建立请求包含了用户B的视频通话客户端ID和用户A的主叫瘦终端的地址,以及与用户A的视频通话客户端ID;如图1所示,虚拟机与视频通话服务器采用会话初始化协议(SIP,Session Initiation Protocol)和会话描述协议(SDP,Session Description Protocol)的信令建立通话连接。
本发明实施例中,虚拟机上通话控制模块和视频通话服务器上的多媒体播放模块共同组成了用户A的视频通话客户端。
步骤S23,视频通话服务器向被叫终端发送视频通话建立请求。
具体为:视频通话服务器接收到虚拟机发送的视频通话建立请求,获取到用户B的的视频通话客户端ID,并根据用户B的的视频通话客户端ID,获取到用户B的被叫终端的地址,并向用户B的被叫终端的地址发送视频通话建立请求,该视频通话建立请求包含了用户A的主叫瘦终端的地址,以及用户A 的视频通话客户端ID。
步骤S24,被叫终端向视频通话服务器发送视频通话建立响应,视频通话建立响应包括被叫终端地址。
具体为:用户B的被叫终端接收到视频通话建立请求,并根据用户A的主叫瘦终端地址和与用户A的视频通话客户端ID,经视频通话服务器向虚拟机发送视频通话建立响应,该视频通话建立响应包含了用户B的终端地址,并且此时被叫终端与视频通话服务器建立了通话控制会话。
如图1所示,虚拟机采用远程管理控制协议(RMCP,Remote Management Control Protocol)的信令将视频通话建立响应发送至该主叫瘦终端;虚拟机还建立了主叫瘦终端与视频通话服务器之间的通话控制会话,通过该通话控制会话,用户A可以通过主叫瘦终端经过虚拟机向视频通话服务器发送通话控制信令。通话控制信令也是采用远程管理控制协议的信令由主叫瘦终端发送至虚拟机,然后又虚拟机发送至视频通话服务器,最后视频通话服务器发送至被叫终端。此外,虚拟机和主叫瘦终端之间的关于桌面控制窗口、通话控制窗口、视频播放窗口等窗口的显示控制指令也是采用远程管理控制协议进行发送和控制。也可以这样理解,为了使图1中的多媒体播放模块和通话控制模块构成一个完整的视频通话客户端,需要同时对多媒体播放模块和通话控制模块进行协同工作的控制,而这个协同工作的控制的控制信令都是采用远程管理控制协议进行发送和控制的。
步骤S25,该主叫瘦终端接收到包括被叫终端地址的视频通话建立响应后,根据该被叫终端地址与被叫终端进行视频会话协商,协商成功后,就可以执行上述步骤S3了,以及可以按照该被叫终端地址直接向被叫终端发送多媒体通话数据,以及直接接收被叫终端发送的多媒体通话数据,也就是说,协商成功后,并且在瘦终端的视频播放窗口,播放被叫终端发送的多媒体通话数据。
主叫瘦终端接收了虚拟机转发的视频通话建立响应,获取到被叫终端地址,并根据该被叫终端地址,与被叫终端进行多媒体传输协商,在成功协商后,主 叫瘦终端和被叫终端就可以直接传输多媒体数据,即实现了主叫瘦终端和被叫终端之间的视频通话。如图1所示,多媒体数据的传输是采用实时传输协议(RTP,Real-time Transport Protocol)直接将数据在主叫瘦终端和被叫终端间进行传输。
在主叫瘦终端和被叫终端之间的视频通话过程中,主叫瘦终端按照被叫终端地址直接向被叫终端发送多媒体通话数据,以及直接接收被叫终端发送的多媒体通话数据具体为:在用户A的主叫瘦终端与用户B的被叫终端协商成功后,用户A的主叫瘦终端根据用户B的被叫终端的地址,向用户B的终端发送多媒体数据,或从用户B的终端接收多媒体数据;用户B的终端根据用户A的主叫瘦终端的地址,向用户A的主叫瘦终端发送多媒体数据,或从用户A的主叫瘦终端接收多媒体数据。
通过上述技术方案,主叫瘦终端与被叫终端通过虚拟机的通话控制应用建立通话连接后,在通话过程中产生的多媒体通话数据不需要经过虚拟机中转,直接在主叫瘦终端和被叫终端间进行传输,解决了虚拟机二次中转多媒体通话数据导致的延迟,并且不会影响远程桌面协议的正常使用。
而且远程桌面协议是为尽可能地流畅访问远程服务而设计的,不适合传输视频数据,多媒体通话数据经过虚拟机中转会导致视频质量严重下降,同时还可能因视频媒体数据对带宽的占用,影响主叫瘦终端访问虚拟机的流畅性。
图5为本发明实施例一的视频播放窗口覆盖效果示意图,如图5所示,最终在主叫瘦终端的显示效果就是:远程控制窗口中包括桌面控制窗口,桌面控制窗口中包括通话控制窗口,通话控制窗口的视频显示区域上面覆盖有视频播放窗口,用户可以通过通话控制窗口包括的通话控制界面进行通话控制操作。各个窗口在用户看来是逐层显示的,可以使用户在视频通话情况下,能够通过通话控制界面进行通话控制,能够通过桌面控制窗口进行桌面云系统操作。
进一步,如图6所示,用户A与用户B在进行视频通话时,用户A可能会调整通话控制窗口,此时上述多媒体通话控制方法,如图6所示,还包括:
步骤c11,当主叫瘦终端获取输入设备产生对通话控制窗口进行调整的输入事件时,例如键盘、触摸屏、鼠标的操作事件,主叫瘦终端向虚拟机发送上述输入事件。
对通话控制窗口进行调整的输入事件可以对应不同的通话控制窗口的的调整行为。
调整通话控制窗口包含了通话控制窗口的窗口最小化调整、窗口最大化调整、恢复默认大小的窗口、窗口位置移动调整和窗口尺寸变化调整。
当用户需要将通话控制窗口的窗口最小化时,则用户通过输入设备点击最小化的按钮,这样就产生了一个窗口最小化的输入事件。
当用户需要将通话控制窗口的窗口最大化时,则用户通过输入设备点击最大化的按钮,这样就产生了一个窗口最大化的输入事件。
当用户需要将通话控制窗口的窗口恢复默认大小时,则用户通过输入设备点击默认大小的按钮,这样就产生了一个窗口恢复默认大小的输入事件。
当用户需要将通话控制窗口的窗口的位置移动时,则用户通过输入设备将通话控制窗口移动到一个指定的位置,这样就产生了一个窗口位置移动的输入事件。
当用户需要将通话控制窗口的窗口的窗口大小进行调整时,则用户通过输入设备将通话控制窗口大小拖动到一个指定大小的尺寸,这样就产生了一个窗口尺寸大小调整的输入事件。
步骤c12,虚拟机接收了上述的输入事件,根据该输入事件,在虚拟机生成相应的控制指令,并按照控制指令,对通话控制窗口进行显示调整。
当输入事件为窗口最小化的输入事件,则在虚拟机生成的是窗口最小化的控制指令,并根据窗口最小化的控制指令,执行对通话控制窗口的窗口最小化的处理,并生成了窗口最小化后的通话控制窗口的描述数据。
当输入事件为窗口最大化的输入事件,则在虚拟机生成的是窗口最大化的控制指令,并根据窗口最大化的控制指令,执行对通话控制窗口的窗口最大化 的处理,并生成了窗口最大化后的通话控制窗口的描述数据。
当输入事件为窗口恢复默认大小的输入事件,则在虚拟机生成的是窗口恢复默认大小的控制指令,并根据窗口恢复默认大小的控制指令,执行对通话控制窗口的窗口恢复默认大小的处理,并生成了窗口恢复默认大小后的通话控制窗口的描述数据。
当输入事件为窗口位置移动的输入事件,则在虚拟机生成的是窗口位置移动的控制指令,窗口位置移动的控制指令包含了移动后的窗口位置,并根据窗口位置移动的控制指令,执行对通话控制窗口的窗口位置移动的处理,并获得位置移动后的通话控制窗口的描述数据。
当输入事件为窗口尺寸大小调整的输入事件,则在虚拟机生成的是窗口尺寸大小调整的控制指令,窗口尺寸大小调整的控制指令包含了调整后的窗口大小、方向和位置,并根据窗口尺寸大小的控制指令,执行对通话控制窗口的窗口尺寸大小的处理,并获得窗口尺寸大小调整后的通话控制窗口的描述数据。
步骤c13,虚拟机向主叫瘦终端发送显示控制指令,其中,显示控制指令可以使主叫瘦终端对本地的视频播放窗口进行与通话控制窗口对应的显示调整。
如果步骤c12中控制指令是窗口最小化的控制指令,则显示控制指令就是相应的窗口最小化的显示调整指令,该显示调整指令包含了窗口最小化后的通话控制窗口的描述数据。
如果步骤c12中控制指令是窗口最大化的控制指令,则显示调整指令就是相应的窗口最大化的显示调整指令,该显示调整指令包含了窗口最大化后的通话控制窗口的描述数据。
如果步骤c12中控制指令是窗口恢复默认大小的控制指令,则显示调整指令就是相应的窗口恢复默认大小的显示调整指令,该显示调整指令包含了窗口恢复默认大小后的通话控制窗口的描述数据。
如果步骤c12中控制指令是窗口位置移动的控制指令,则显示调整指令为 一个包含位置移动后的通话控制窗口的描述数据,这里的位置移动后的通话控制窗口的描述数据包括了位置移动后的视频显示区域的描述数据和位置移动后的通话控制界面的描述数据。
如果步骤c12中控制指令是窗口尺寸大小调整的控制指令,则显示调整指令为一个包含窗口尺寸大小调整后的通话控制窗口的描述数据,这里的窗口尺寸大小调整后的通话控制窗口的描述数据包括了窗口尺寸大小调整后的视频显示区域的描述数据和窗口尺寸大小调整后的通话控制界面的描述数据。
步骤c14,主叫瘦终端接收并执行虚拟机发送的显示调整指令。
如果主叫瘦终端接收到的是窗口最小化后的通话控制窗口的描述数据的显示调整指令,主叫瘦终端根据显示调整指令,相应的将视频播放窗口进行窗口最小化处理,以及按照窗口最小化后的通话控制窗口的描述数据绘制窗口最小化的通话控制窗口。
如果主叫瘦终端接收到的是窗口最大化后的通话控制窗口的描述数据的显示调整指令,主叫瘦终端根据显示调整指令,相应的将视频播放窗口进行窗口最大化处理,以及按照窗口最大化后的通话控制窗口的描述数据绘制窗口最大化的通话控制窗口。
如果主叫瘦终端接收到的是窗口恢复默认大小后的通话控制窗口的描述数据的显示调整指令,主叫瘦终端根据显示调整指令,相应的将视频播放窗口进行窗口恢复默认大小处理,以及按照窗口恢复默认大小后的通话控制窗口的描述数据绘制恢复默认大小的通话控制窗口。
如果主叫瘦终端接收到的是包含窗口位置移动后通话控制窗口的描述数据的显示调整指令,则根据窗口位置移动后的视频显示区域的描述数据,主叫瘦终端将视频播放窗口的位置移动到上述移动后的视频显示区域的描述数据对应的区域,以及按照窗口位置移动后的通话控制窗口的描述数据绘制位置移动后的通话控制窗口。
如果主叫瘦终端接收到的是包含窗口尺寸大小调整后的通话控制窗口的 描述数据的显示调整指令,则根据窗口尺寸大小调整后的视频显示区域的描述数据,主叫瘦终端将视频播放窗口的尺寸大小调整覆盖到上述调整后的视频显示区域的描述数据对应的区域,按照窗口尺寸大小调整后的通话控制窗口的描述数据绘制尺寸大小调整后的通话控制窗口。
进一步,如图6所示,用户A与用户B在进行视频通话时,用户A可能会调整视频播放窗口,此时上述多媒体通话控制方法,还包括:
步骤c21,当主叫瘦终端获取输入设备产生对视频播放窗口进行调整的输入事件时,例如键盘、触摸屏、鼠标的操作事件,主叫瘦终端根据该输入事件,在主叫瘦终端生成相应的控制指令,并按照控制指令,对视频播放窗口进行显示调整,并生成了调整后的视频播放窗口的描述数据。
步骤c22,主叫瘦终端向虚拟机发送显示调整指令,该显示调整指令包含了调整后的视频播放窗口的描述数据。
上述控制指令可以是窗口最小化、窗口最大化、窗口恢复默认大小、窗口位置调整或窗口尺寸大小调整的控制指令。
此时的调整后的视频播放窗口的描述数据就是为窗口最小化后、窗口最大化后、窗口恢复默认大小后、窗口位置调整后或窗口尺寸大小调整后的视频播放窗口的描述数据。
步骤c23,虚拟机接收主叫瘦终端发送的显示调整指令,并根据所述显示调整指令,虚拟机对通话控制窗口进行与视频播放窗口对应的显示调整。
由于调整后的视频播放窗口是通话控制窗口将要调整后的视频显示区域,则调整后的视频播放窗口的描述数据为调整后的通话控制窗口的视频显示区域的描述数据,进一步虚拟机根据调整后的视频播放窗口的描述数据,对通话控制窗口进行调整,并生成调整后的通话控制窗口的描述数据。
步骤c24,虚拟机将生成的调整后的通话控制窗口的描述数据发送给主叫瘦终端,以便于主叫瘦终端根据调整后的通话控制窗口的描述数据绘制调整后 的通话控制窗口。
进一步,如图6所示,用户A与用户B在进行视频通话时,用户A远程控制窗口的窗口最小化调整,此时上述多媒体通话控制方法,还包括:
步骤c31,当该主叫瘦终端接收到远程控制窗口的窗口最小化事件信息时,该主叫瘦终端对远程控制窗口进行窗口最小化的显示调整,并且对视频播放窗口进行窗口最小化的显示调整。
步骤c32,该主叫瘦终端向该虚拟机发送远程控制窗口的窗口最小化事件信息。
步骤c33,当该虚拟机接收到该主叫瘦终端发送的远程控制窗口的窗口最小化事件信息时,该虚拟机对通话控制窗口进行窗口最小化的显示调整。
进一步,如图6所示,用户A与用户B在进行视频通话时,用户A远程控制窗口的窗口最小化调整,此时上述多媒体通话控制方法,还包括:
步骤c41,当该主叫瘦终端接收到远程控制窗口的窗口全屏事件信息时,该主叫瘦终端对远程控制窗口进行窗口全屏的显示调整,并且对视频播放窗口进行窗口全屏的显示调整。
步骤c42,该主叫瘦终端向该虚拟机发送远程控制窗口的窗口全屏事件信息。
步骤c43,当该虚拟机接收到该主叫瘦终端发送的远程控制窗口的窗口全屏事件信息时,该虚拟机对通话控制窗口进行恢复正常窗口的显示调整。
在视频通话过程中,用户可能对通话控制窗口进行显示调整,此时,为了不影响用户体验,需要同时对视频播放窗口进行相应调整,以便于视频播放窗口随着通话控制窗口的显示变化而进行相应的显示变化,从而使得终端设备能够达到使用完整的视频通话软件的用户体验,让用户体验察觉不出通话软件被部署于云端和终端两侧,同理也需要根据视频播放窗口的显示变化调整通话控制窗的显示变化,根据远程控制窗口的显示变化调整视频播放窗口和通话控制窗口的显示变化。
如图7所示,本发明实施例提供一种多媒体通话控制的终端,包括:
接收模块71,用于当接收到虚拟机发送的通话控制窗口的描述数据时,其中,通话控制窗口的描述数据包括:视频显示区域的描述数据和通话控制界面的描述数据;
绘制模块72,用于接收接收模块发送的通话控制窗口的描述数据,按照通话控制窗口的描述数据,在桌面控制窗口中绘制通话控制窗口,并且保存视频显示区域的描述数据;
生成模块73,用于当与被叫终端建立视频会话时,根据视频显示区域的描述数据,在视频显示区域的描述数据对应的区域生成视频播放窗口。
可选的,如图8所示,接收模块71还用于接收虚拟机发送的显示调整指令,其中显示调整指令包含调整后的通话控制窗口的描述数据;绘制模块72,还用于根据调整后的通话控制窗口的描述数据,绘制调整后的通话控制窗口;终端还包括被动调整模块74,用于将视频播放窗口的位置调整到调整后的视频显示区域的描述数据对应的区域。
可选的,如图8所示,终端还包括:主动调整模块75,用于接收对视频播放窗口进行调整的输入事件,并根据对视频播放窗口进行调整的输入事件,生成对视频播放窗口进行调整的控制指令,并按照控制指令,执行对视频播放窗口的显示调整;
发送模块76,用于向虚拟机发送包含显示调整指令,其中显示调整指令包含调整后的视频播放窗口的描述数据,以便于虚拟机根据调整后的视频播放窗口的描述数据,调整通话控制窗口。
如图9所示,本发明实施例还提供一种多媒体通话控制的系统,如7和图8所对应的任一的多媒体通话控制的终端91和终端对应在云服务器上的虚拟机92;其中,虚拟机92用于当接收到多媒体通话控制的终端发送的启动视频通话的事件信息时,向多媒体通话控制的终端发送通话控制窗口的描述数据, 通话控制窗口的描述数据包括视频显示区域的描述数据和通话控制界面的描述数据。
进一步的,虚拟机92还用于当接收到终端发送的通话请求事件信息时,向视频通话服务器发送视频通话建立请求,当虚拟机接收到视频通话服务器发送的视频通话建立响应时,将视频通话建立响应发送至终端,视频通话建立响应包括被叫终端地址。
进一步的,虚拟机92还用于设置通话控制窗口在桌面控制窗口中置顶。
本发明实施例中的多媒体通话控制的终端可以基于计算机系统来实现,图2-6所示的方法均可在基于计算机系统的多媒体通话控制的终端中实现。图10示出了基于计算机系统来实现的多媒体通话控制的终端的实施例。本实施例中多媒体通话控制的终端可以包括:处理器1001、存储器1002和通信接口1003。存储器1002用于存储程序代码。处理器1001用于执行存储器1002中存储的程序代码。本发明一个实施例中,存储器1002存储有第一程序代码,处理器1001用于执行该第一程序代码,包括执行如下操作:当主叫瘦终端接收到虚拟机发送的通话控制窗口的描述数据时,其中,通话控制窗口的描述数据包括:视频显示区域的描述数据和通话控制界面的描述数据;主叫瘦终端按照通话控制窗口的描述数据,在桌面控制窗口中绘制通话控制窗口,并且保存视频显示区域的描述数据;当主叫瘦终端与被叫终端建立视频会话时,根据视频显示区域的描述数据,主叫瘦终端在视频显示区域的描述数据对应的区域生成视频播放窗口。通信接口1003,用于与外部设备通信,如与虚拟机。多媒体通话控制的终端与虚拟机之间交互的消息(如方法实施例图2-6所示)均通过通信接口1003发送和接收。其中,处理器1001根据存储器1002中的程序代码对通信接口1003接收到的消息进行处理,并通过通信接口1003与外部设备交互。处理器1001可以是中央处理器(central processing unit,CPU)、专用集成电路(application-specific integrated circuit,ASIC)等。其中,本实施例中的多媒体通话控制的终端可以包括总线1004。处理器1001、存储器1002以及通信接口 1003之间可通过总线1004连接并通信。其中,存储器1002可以包括:随机存取存储器(random access memory,RAM),只读存储器(read-only memory,ROM),磁盘等具有存储功能的实体。本发明实施例中的呼叫上下文可缓存在RAM中。
上述装置和系统内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
以上技术方案是利用本发明实施例的云服务器和终端设备共同协作形成的,对于云服务器和终端设备各自的工作原理可以参考其各自的技术方案,在此不再赘述。
本领域普通技术人员将会理解,本发明的各个方面、或各个方面的可能实现方式可以被具体实施为系统、方法或者计算机程序产品。因此,本发明的各方面、或各个方面的可能实现方式可以采用完全硬件实施例、完全软件实施例(包括固件、驻留软件等等),或者组合软件和硬件方面的实施例的形式,在这里都统称为“电路”、“模块”或者“系统”。此外,本发明的各方面、或各个方面的可能实现方式可以采用计算机程序产品的形式,计算机程序产品是指存储在计算机可读介质中的计算机可读程序代码。
计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质包含但不限于电子、磁性、光学、电磁、红外或半导体系统、设备或者装置,或者前述的任意适当组合,如随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者快闪存储器)、光纤、便携式只读存储器(CD-ROM)。
计算机中的处理器读取存储在计算机可读介质中的计算机可读程序代码,使得处理器能够执行在流程图中每个步骤、或各步骤的组合中规定的功能动作;生成实施在框图的每一块、或各块的组合中规定的功能动作的装置。
计算机可读程序代码可以完全在用户的计算机上执行、部分在用户的计算 机上执行、作为单独的软件包、部分在用户的计算机上并且部分在远程计算机上,或者完全在远程计算机或者服务器上执行。也应该注意,在某些替代实施方案中,在流程图中各步骤、或框图中各块所注明的功能可能不按图中注明的顺序发生。例如,依赖于所涉及的功能,接连示出的两个步骤、或两个块实际上可能被大致同时执行,或者这些块有时候可能被以相反顺序执行。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (9)
1.一种多媒体通话控制方法,其特征在于,包括:
主叫瘦终端接收虚拟机发送的通话控制窗口的描述数据,其中,所述通话控制窗口的描述数据包括:视频显示区域的描述数据和通话控制界面的描述数据;
所述主叫瘦终端按照所述通话控制窗口的描述数据,在桌面控制窗口中绘制所述通话控制窗口,并且保存所述视频显示区域的描述数据;
当所述主叫瘦终端与被叫终端建立视频会话时,根据所述视频显示区域的描述数据,所述主叫瘦终端在视频显示区域的描述数据对应的区域生成视频播放窗口;
还包括:
所述主叫瘦终端接收对视频播放窗口进行调整的输入事件,并根据所述对视频播放窗口进行调整的输入事件,生成对所述视频播放窗口进行调整的控制指令,并按照所述控制指令,执行对视频播放窗口的显示调整;
所述主叫瘦终端向所述虚拟机发送显示调整指令,其中显示调整指令包含调整后的视频播放窗口的描述数据,以便于所述虚拟机根据所述调整后的视频播放窗口的描述数据,调整所述通话控制窗口。
2.根据权利要求1所述的多媒体通话控制方法,其特征在于,还包括:
所述主叫瘦终端接收所述虚拟机发送的显示调整指令,其中显示调整指令包含调整后的通话控制窗口的描述数据;
所述主叫瘦终端根据所述调整后的通话控制窗口的描述数据,绘制调整后的通话控制窗口,以及将视频播放窗口的位置调整到所述调整后的视频显示区域的描述数据对应的区域。
3.根据权利要求1所述的多媒体通话控制方法,其特征在于,所述对视频播放窗口进行调整的输入事件具体为窗口最小化的输入事件、窗口最大化的输入事件、窗口恢复默认大小的输入事件、窗口位置移动的输入事件或窗口尺寸大小调整的输入事件。
4.根据权利要求1所述的多媒体通话控制方法,其特征在于,在所述当主叫瘦终端对应的虚拟机接收到所述主叫瘦终端发送的启动视频通话的事件信息之前,所述方法还包括:
当所述虚拟机接收到所述主叫瘦终端发送的通话请求事件信息时,所述虚拟机向视频通话服务器发送视频通话建立请求;
当所述虚拟机接收到所述视频通话服务器发送的视频通话建立响应时,所述虚拟机将所述视频通话建立响应发送至所述主叫瘦终端,所述视频通话建立响应包括被叫终端地址;
所述主叫瘦终端按照所述被叫终端地址直接向被叫终端发送多媒体通话数据,以及直接接收被叫终端发送的多媒体通话数据。
5.一种多媒体通话控制的终端,其特征在于,包括:
接收模块,用于接收虚拟机发送的通话控制窗口的描述数据,其中,所述通话控制窗口的描述数据包括:视频显示区域的描述数据和通话控制界面的描述数据;
绘制模块,用于接收所述接收模块发送的所述通话控制窗口的描述数据,按照所述通话控制窗口的描述数据,在桌面控制窗口中绘制所述通话控制窗口,并且保存所述视频显示区域的描述数据;
生成模块,用于当与被叫终端建立视频会话时,根据所述视频显示区域的描述数据,在视频显示区域的描述数据对应的区域生成视频播放窗口;
还包括:
主动调整模块,用于接收对视频播放窗口进行调整的输入事件,并根据所述对视频播放窗口进行调整的输入事件,生成对所述视频播放窗口进行调整的控制指令,并按照所述控制指令,执行对视频播放窗口的显示调整;
发送模块,用于向所述虚拟机发送显示调整指令,其中显示调整指令包含调整后的视频播放窗口的描述数据,以便于所述虚拟机根据所述调整后的视频播放窗口的描述数据,调整所述通话控制窗口。
6.根据权利要求5所述的多媒体通话控制的终端,其特征在于,所述接收模块还用于接收所述虚拟机发送的显示调整指令,其中显示调整指令包含调整后的通话控制窗口的描述数据;
所述绘制模块,还用于根据所述调整后的通话控制窗口的描述数据,绘制调整后的通话控制窗口;
所述终端还包括:被动调整模块,用于将视频播放窗口的位置调整到所述调整后的视频显示区域的描述数据对应的区域。
7.一种多媒体通话控制的系统,其特征在于,包括如权利要求5-6任一的多媒体通话控制的终端和所述终端对应在云服务器上的虚拟机;其中,
所述虚拟机用于当接收到所述多媒体通话控制的终端发送的启动视频通话的事件信息时,向所述多媒体通话控制的终端发送通话控制窗口的描述数据,所述通话控制窗口的描述数据包括视频显示区域的描述数据和通话控制界面的描述数据。
8.根据权利要求7所述的系统,其特征在于,所述虚拟机还用于当接收到所述终端发送的通话请求事件信息时,向视频通话服务器发送视频通话建立请求,当所述虚拟机接收到所述视频通话服务器发送的视频通话建立响应时,将所述视频通话建立响应发送至所述终端,所述视频通话建立响应包括被叫终端地址。
9.根据权利要求8所述的系统,其特征在于,所述虚拟机还用于设置通话控制窗口在桌面控制窗口中置顶。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310307087.2A CN103414867B (zh) | 2013-07-19 | 2013-07-19 | 多媒体通话控制方法、终端及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310307087.2A CN103414867B (zh) | 2013-07-19 | 2013-07-19 | 多媒体通话控制方法、终端及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103414867A CN103414867A (zh) | 2013-11-27 |
CN103414867B true CN103414867B (zh) | 2016-08-24 |
Family
ID=49607849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310307087.2A Active CN103414867B (zh) | 2013-07-19 | 2013-07-19 | 多媒体通话控制方法、终端及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103414867B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104301687B (zh) * | 2014-10-27 | 2018-03-23 | 中国联合网络通信集团有限公司 | 应用于虚拟桌面环境的摄像头视频处理方法和相应设备 |
CN105187939A (zh) * | 2015-09-21 | 2015-12-23 | 合一网络技术(北京)有限公司 | 一种实现网页游戏中播放视频的方法及装置 |
CN108366285B (zh) * | 2017-07-06 | 2019-12-06 | 新华三云计算技术有限公司 | 一种视频数据显示方法和装置 |
CN110324557B (zh) * | 2018-03-28 | 2021-04-23 | 视联动力信息技术股份有限公司 | 一种控制终端进行可视化通信的方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102333124A (zh) * | 2011-10-09 | 2012-01-25 | 华为技术有限公司 | 一种提升云计算模式下语音或视频传输质量的方法及装置 |
CN102810040A (zh) * | 2011-05-31 | 2012-12-05 | 联想(北京)有限公司 | 一种显示处理方法、装置及计算机系统 |
CN102981894A (zh) * | 2011-09-05 | 2013-03-20 | 联想(北京)有限公司 | 显示方法和电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4926601B2 (ja) * | 2005-10-28 | 2012-05-09 | キヤノン株式会社 | 映像配信システム、クライアント端末及びその制御方法 |
-
2013
- 2013-07-19 CN CN201310307087.2A patent/CN103414867B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102810040A (zh) * | 2011-05-31 | 2012-12-05 | 联想(北京)有限公司 | 一种显示处理方法、装置及计算机系统 |
CN102981894A (zh) * | 2011-09-05 | 2013-03-20 | 联想(北京)有限公司 | 显示方法和电子设备 |
CN102333124A (zh) * | 2011-10-09 | 2012-01-25 | 华为技术有限公司 | 一种提升云计算模式下语音或视频传输质量的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103414867A (zh) | 2013-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10015440B2 (en) | Multiple channel communication using multiple cameras | |
US9900356B2 (en) | Method and apparatus for transferring active communication session streams between devices | |
US8797999B2 (en) | Dynamically adjustable communications services and communications links | |
US9338394B2 (en) | System and method for providing enhanced audio in a video environment | |
KR102115922B1 (ko) | 영상 통신 방법 및 그 영상 통신 시스템 | |
US9024997B2 (en) | Virtual presence via mobile | |
US9559869B2 (en) | Video call handling | |
US20150077509A1 (en) | System for a Virtual Multipoint Control Unit for Unified Communications | |
CN102859480A (zh) | 屏幕共享 | |
WO2014101428A1 (zh) | 画面控制的方法及终端、视频会议装置 | |
CN114610253A (zh) | 一种投屏方法及设备 | |
CN108293104A (zh) | 信息处理系统、无线终端和信息处理方法 | |
CN103414867B (zh) | 多媒体通话控制方法、终端及系统 | |
CN112968898A (zh) | 用于针对通信会话的端点控制的方法和系统 | |
US9503812B2 (en) | Systems and methods for split echo cancellation | |
CN112104649A (zh) | 多媒体交互方法、装置、电子设备、服务器和存储介质 | |
CN113726534A (zh) | 会议控制方法、装置、电子设备及存储介质 | |
KR20110138094A (ko) | 화상 회의 시스템 및 그 방법 | |
KR101545587B1 (ko) | 화상 회의 시스템 및 그 방법 | |
WO2023185651A1 (zh) | 一种通信方法、装置及系统 | |
KR101502014B1 (ko) | 화상 회의 시스템 및 그 방법 | |
US9288436B2 (en) | Systems and methods for using split endpoints in video communication systems | |
CN103297314A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |