一种实现音视频会议平滑切换的方法及装置与流程

文档序号:11139214阅读:439来源:国知局
一种实现音视频会议平滑切换的方法及装置与制造工艺

本发明涉及通信技术领域,具体涉及一种实现音视频会议平滑切换的方法及装置。



背景技术:

在专网通信领域中,用户可以使用能够录制并播放语音或者视频的集群终端,通过专网通信网络接入会议控制中心而进行远程音视频会议。

在现有音视频多媒体会议控制技术中,在进行媒体数据交换时,会议的某一参与方将一个规定时长的语音数据包存储满后,例如30毫秒,发送到网络中,会议控制中心可以将该语音数据包立即转发给会议的另一参与方,以避免语音的延迟;另外,现有的音视频多媒体会议控制技术在管理会议参与方的连接状态时,普遍采用在线、下线两种状态,当会议控制中心检测到某一会议参与方下线后,直接切换其状态记录。

但是,当前的无线网络环境各不相同,网络质量经常达不到较高的Qos(Quality of Service,服务质量),当音视频会议中某个或者某些参与方使用质量较差网络接入到会议中时,可能会出现会议开始时,如果少数会议参与方还没有接入会议,则无法接收到会议主讲方的语音,即出现丢字现象;另外,会议参与方在断网后直接退出会议,网络恢复后需要重新接入会议中,在网络情况不稳定时,反复上下线会造成所接收到的语音断续,以上两点均会造成音视频会议质量不佳的技术问题。



技术实现要素:

有鉴于此,本发明提供一种实现音视频会议平滑切换的方法及装置,以解决现有技术中在低网络质量情况下,音视频会议的丢字现象,以及终端反复上下线造成的语音断续问题。

为解决上述问题,本发明提供的技术方案如下:

一种实现音视频会议平滑切换的方法,所述方法应用于会议控制中心,所述方法包括:

接收第一集群终端发送的会议建立请求,根据所述会议建立请求通知第二集群终端与所述会议控制中心建立连接;

按照接收顺序缓存所述第一集群终端发送的媒体数据包;

在达到媒体数据包预设缓存个数后,按照接收顺序将缓存的媒体数据包逐个发送给所述第二集群终端。

相应的,所述媒体数据包预设缓存个数是根据所述第二集群终端与所述会议控制中心建立连接的时间确定的。

相应的,所述方法还包括:

检测所述第二集群终端与所述会议控制中心的连接状态;

当检测到所述第二集群终端与所述会议控制中心的连接状态由连接状态变为断开状态,将所述第二集群终端标记为伪在线终端;

为所述伪在线终端按照接收顺序继续缓存接收到的媒体数据包;

当检测到所述伪在线终端与所述会议控制中心的连接状态变为连接状态,按照接收顺序将缓存的媒体数据包逐个发送给所述伪在线终端。

相应的,所述方法还包括:

当所述伪在线终端与所述会议控制中心的连接状态超过预设时间未变为连接状态,将所述伪在线终端标记为下线终端,并清除为所述伪在线终端缓存的媒体数据包。

相应的,所述检测所述第二集群终端与所述会议控制中心的连接状态,包括:

根据所述第二集群终端发送的心跳信号检测所述第二集群终端与所述会议控制中心的连接状态。

一种实现音视频会议平滑切换的装置,所述装置应用于会议控制中心,所述装置包括:

接收单元,用于接收第一集群终端发送的会议建立请求,根据所述会议建立请求通知第二集群终端与所述会议控制中心建立连接;

第一缓存单元,用于按照接收顺序缓存所述第一集群终端发送的媒体数据包;

第一发送单元,用于在达到媒体数据包预设缓存个数后,按照接收顺序将缓存的媒体数据包逐个发送给所述第二集群终端。

相应的,所述媒体数据包预设缓存个数是根据所述第二集群终端与所述会议控制中心建立连接的时间确定的。

相应的,所述装置还包括:

检测单元,用于检测所述第二集群终端与所述会议控制中心的连接状态;

第一标记单元,用于当检测到所述第二集群终端与所述会议控制中心的连接状态由连接状态变为断开状态,将所述第二集群终端标记为伪在线终端;

第二缓存单元,用于为所述伪在线终端按照接收顺序继续缓存接收到的媒体数据包;

第二发送单元,用于当检测到所述伪在线终端与所述会议控制中心的连接状态变为连接状态,按照接收顺序将缓存的媒体数据包逐个发送给所述伪在线终端。

相应的,所述装置还包括:

第二标记单元,用于当所述伪在线终端与所述会议控制中心的连接状态 超过预设时间未变为连接状态,将所述伪在线终端标记为下线终端;

清除单元,用于清除为所述伪在线终端缓存的媒体数据包。

相应的,所述检测单元具体用于:

根据所述第二集群终端发送的心跳信号检测所述第二集群终端与所述会议控制中心的连接状态。

由此可见,本发明实施例具有如下有益效果:

本发明实施例通过在音视频会议开始时,由会议控制中心缓存若干个接收到的媒体数据包,在缓存的媒体数据包达到媒体数据包预设缓存个数后,即在一段缓冲时间后,再向参会的其他集群终端发送所缓存的媒体数据包,以保证集群终端在连接到会议控制中心后再开始接收媒体数据包,从而避免出现丢字现象;另外,在某一集群终端断开与会议控制中心的连接时,暂时将该集群终端标记为伪在线终端,并继续为伪在线终端缓存接收到的媒体数据包,当伪在线终端在预设时间内重新连接到会议控制中心时,再按顺序向伪在线终端发送缓存的媒体数据包,以保证伪在线终端可以接收到其断线期间产生的媒体数据包,不会出现语音断续的问题。

附图说明

图1为本发明实施例的应用场景示意图;

图2为本发明实施例中实现音视频会议平滑切换的方法实施例一的流程图;

图3为本发明实施例中实现音视频会议平滑切换的方法实施例一的数据交互示意图;

图4为本发明实施例中实现音视频会议平滑切换的方法实施例二的流程图;

图5为本发明实施例中集群终端状态切换示意图;

图6为本发明实施例中实现音视频会议平滑切换的方法实施例二的数据交换示意图;

图7为本发明实施例中实现音视频会议平滑切换的装置实施例的示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明实施例作进一步详细的说明。

为了方便理解本发明实施例,首先对本发明实施例的应用场景进行说明,参见图1所示,在专网通信领域中,用户可以使用能够录制并播放语音或者视频的集群终端,通过专网通信网络接入会议控制中心而进行远程音视频会议,会议控制中心可以装载在服务器中,可以理解为多媒体音视频会议系统中的中心控制模块。在一次音视频会议中,会议控制中心可以同时接入至少两个集群终端,所接入的多个集群终端可以是相同制式的集群终端,也可以是不同制式的集群终端。

在现有技术中,在会议开始时,如果少数会议参与方还没有接入会议,则无法接收到会议主讲方的语音,即出现丢字现象,经过发明人分析这是由于不同制式的集群终端接入会议控制中心的时间并不相同,且不同集群终端当前的无线网络环境也不相同,而发起会议的集群终端无法获知其他终端与会议控制中心的连接情况,就会出现发起会议的用户使用集群终端开始向会议中心发送媒体数据,而其他终端可能无法接收而出现丢字现象。针对该问题,在本发明实施例中,在会议控制中心接收到媒体数据包后,并不立即将媒体数据包进行转发,而是利用缓存技术将媒体数据包进行缓存,在缓存的媒体数据包达到媒体数据包预设缓存个数后,即在一段缓冲时间后,再向参会的其他集群终端发送所缓存的媒体数据包,以保证参会的集群终端在连接 到会议控制中心后,会议控制中心再向这些集群终端发送媒体数据包,从而避免出现丢字现象。

另外,在现有技术中,集群终端与会议中心的连接状态普遍采用在线、下线两种状态,在网络情况不稳定时,会出现反复上下线造成所接收到的语音断续。针对该问题,在本发明实施例中,增加伪在线状态,在某一集群终端断开与会议控制中心的连接时,暂时将该集群终端标记为伪在线终端,并继续为伪在线终端缓存接收到的媒体数据包,当伪在线终端在预设时间内重新连接到会议控制中心时,再按顺序向伪在线终端发送缓存的媒体数据包,以保证伪在线终端可以接收到其断线期间产生的媒体数据包,不会出现语音断续的问题。

本发明实施例将从实现音视频会议平滑切换的装置角度进行描述,该实现音视频会议平滑切换的装置具体可以应用在会议控制中心中,该会议控制中心可以装载在服务器、基站等设备中。

参见图2所示,本发明实施例中提供的实现音视频会议平滑切换的方法实施例一,可以包括以下步骤:

步骤201:接收第一集群终端发送的会议建立请求,根据会议建立请求通知第二集群终端与会议控制中心建立连接。

第一集群终端可以理解为音视频会议的会议发起方集群终端,第二集群终端可以理解为音视频会议的参与方集群终端,即接收会议当前讲话方媒体数据的集群终端,可以理解的是,第一集群终端可以转换为第二集群终端,即当会议讲话方切换,会议发起方集群终端也可以转换为接收会议当前讲话方媒体数据的集群终端。在音视频会议需要创建时,第一集群终端可以向会议控制中心发送会议建立请求,会议建立请求为信令数据,会议控制中心可以根据该会议建立请求建立音视频会议,并通知第二集群终端与会议控制中心建立连接,接入该音视频会议。

步骤202:按照接收顺序缓存第一集群终端发送的媒体数据包。

第一集群终端通过发送媒体数据包的方式向会议控制中心发送数据,每个媒体数据包可以有固定的长度,例如30ms,即使用第一集群终端的用户在讲话的过程中,每产生30ms的媒体数据,第一集群终端就将这些媒体数据作为一个媒体数据包发送给会议控制中心,这样,会议控制中心会按顺序接收到多个媒体数据包,并按接收顺序对这些媒体数据包进行缓存。

步骤203:在达到媒体数据包预设缓存个数后,按照接收顺序将缓存的媒体数据包逐个发送给第二集群终端。

在本发明的一些实施例中,媒体数据包预设缓存个数可以根据第二集群终端与会议控制中心建立连接的时间确定。

例如,第二集群终端与会议控制中心建立连接的最慢时间为150ms,每个媒体数据包为30ms,则可以将媒体数据包预设缓存个数设置为5个,这样,在缓存5个媒体数据包后,距离会议控制中心接收到第一集群终端发送的第一个媒体数据包的起始时刻已经经过了30ms*5=150ms,这时,第二集群终端已经与会议控制中心建立连接完成,再向第二集群终端按照接收顺序从第一个媒体数据包开始逐个发送所缓存的媒体数据包,就可以保证在第二集群终端与会议控制中心连接完成后接收到完整的媒体数据,而不会出现会议起始阶段的丢字现象,从而平滑起始音视频会议。

参见图3所示,利用数据交互示意图对本发明实施例中提供的实现音视频会议平滑切换的方法实施例一进行举例说明。

会议发起方可以理解为第一集群终端,参会方可以理解为第二集群终端,在第一时刻第一集群终端向会议控制中心发送媒体数据包1,会议控制中心对媒体数据包1进行缓存,第二时刻第一集群终端向会议控制中心发送媒体数据包2,会议控制中心对媒体数据包1、媒体数据包2进行缓存,第三时刻第一集群终端向会议控制中心发送媒体数据包3,会议控制中心对媒体数据 包1、媒体数据包2、媒体数据包3进行缓存;假设媒体数据包预设缓存个数为3,则会议控制中心达到了媒体数据包预设缓存个数,可以开始向第二集群终端发送媒体数据包,会议控制中心在向第二集群终端发送媒体数据包的同时也可以接收媒体数据包,可以采用发送一个媒体数据包同时接收一个媒体数据包的方式进行数据的接收发送,则在第四时刻会议控制中心向第二集群终端发送媒体数据包1,同时第一集群终端向会议控制中心发送媒体数据包4,会议控制中心对媒体数据包2、媒体数据包3、媒体数据包4进行缓存;在第五时刻会议控制中心向第二集群终端发送媒体数据包2,同时第一集群终端向会议控制中心发送媒体数据包5,会议控制中心对媒体数据包3、媒体数据包4、媒体数据包5进行缓存,以此类推,这样,在会议控制中心对媒体数据包1、媒体数据包2、媒体数据包3进行缓存的时间段内,第二集群终端已经建立了和会议控制中心的连接,从而可以从媒体数据包1开始接收媒体数据,而不会出现丢字现象。

这样,本发明实施例通过在音视频会议开始时,由会议控制中心缓存若干个接收到的媒体数据包,在缓存的媒体数据包达到媒体数据包预设缓存个数后,即在一段缓冲时间后,再向参会的其他集群终端发送所缓存的媒体数据包,以保证集群终端在连接到会议控制中心后再开始接收媒体数据包,从而避免出现丢字现象。

参见图4所示,是本发明实施例中提供的实现音视频会议平滑切换的方法实施例二,本发明实施例中提供的实现音视频会议平滑切换的方法还可以包括以下步骤:

步骤401:检测第二集群终端与会议控制中心的连接状态。

在本发明的一些实施例中,检测第二集群终端与会议控制中心的连接状态的具体实现可以包括:

根据第二集群终端发送的心跳信号检测第二集群终端与会议控制中心的 连接状态。

在音视频会议的进行过程中,会议控制中心可以通过接收第二集群终端发送的心跳信号检测第二集群终端与会议控制中心的连接状态,当超过预设时间没有接收到某个第二集群终端发送的心跳信号,则可以判断该第二集群终端与会议控制中心的连接状态为断开状态。

会议控制中心可以管理各个会议参与方即各个集群终端的状态机,根据不同的状态机变换,决定不同的处理路径。在实际应用中,会议控制中心可以为每个接入到音视频会议的集群终端建立一个结构体数组,用于保存该集群终端的相关信息,例如连接状态、制式信息、接入方式等,以及缓存针对该集群终端的媒体数据包。

步骤402:当检测到第二集群终端与会议控制中心的连接状态由连接状态变为断开状态,将第二集群终端标记为伪在线终端。

步骤403:为伪在线终端按照接收顺序继续缓存接收到的媒体数据包。

当第二集群终端与会议控制中心的连接状态由连接状态变为断开状态,并不立即将第二集群终端标记为下线终端,而是将第二集群终端标记为伪在线终端,继续为伪在线终端缓存媒体数据包。

步骤404:当检测到伪在线终端与会议控制中心的连接状态变为连接状态,按照接收顺序将缓存的媒体数据包逐个发送给伪在线终端。

当伪在线终端恢复与会议控制中心的连接,则会议控制中心可以继续向伪在线终端发送缓存的媒体数据包,并将该伪在线终端标记为在线终端。

在本发明的一些实施例中,还可以包括:当伪在线终端与会议控制中心的连接状态超过预设时间未变为连接状态,将伪在线终端标记为下线终端,并清除为伪在线终端缓存的媒体数据包。

参见图5所示,是本发明实施例中集群终端状态切换示意图,本发明实施例中增加了伪在线状态,即当集群终端与会议控制中心的连接状态由连接 状态时,该集群终端标记为在线终端,当集群终端与会议控制中心的连接状态由连接状态变为断开状态时,也就是集群终端发生了断网,则暂时将该集群终端标记为伪在线终端,如果伪在线终端与会议控制中心的连接状态超过预设时间未变为连接状态,则将该伪在线终端标记为下线终端,而如果伪在线终端在预设时间内与会议控制中心的连接状态恢复为连接状态,则将该伪在线终端重新标记为在线终端;对于下线终端,则需要重新登录接入会议控制中心,与会议控制中心的连接状态恢复为连接状态后,重新被标记为在线终端。

参见图6所示,利用数据交互示意图对本发明实施例中提供的实现音视频会议平滑切换的方法实施例一进行举例说明。

参会方可以理解为第二集群终端,在音视频会议进行过程中,例如,在第四时刻会议控制中心向第二集群终端发送媒体数据包1,同时会议控制中心接收到会议讲话方发送的媒体数据包4,会议控制中心对媒体数据包2、媒体数据包3、媒体数据包4进行缓存;此时,第二集群终端发生断网,则其被标记为伪在线终端,则会议控制中心继续缓存所接收到的媒体数据包,例如,在第五时刻会议控制中心接收到会议讲话方发送的媒体数据包5,会议控制中心对媒体数据包2、媒体数据包3、媒体数据包4、媒体数据包5进行缓存;在第六时刻会议控制中心接收到会议讲话方发送的媒体数据包6,会议控制中心对媒体数据包2、媒体数据包3、媒体数据包4、媒体数据包5、媒体数据包6进行缓存;如果伪在线终端恢复为在线终端,则会议控制中心开始向该终端发送所缓存的媒体数据包,例如,在第七时刻会议控制中心向之前的伪在线终端发送媒体数据包2,同时会议控制中心接收到会议讲话方发送的媒体数据包7,会议控制中心对媒体数据包3、媒体数据包4、媒体数据包5、媒体数据包6、媒体数据包7进行缓存,之后会议控制中心可以恢复正常会议状态,继续发送一个媒体数据包再接收一个媒体数据包,以此类推。

会议控制中心对“伪在线”的参会方实时网络检测,当检测到参会方的网络状态从连接变为断开后,继续智能缓存一定时间段的媒体和信令数据,并维持参会方的在线状态。当发现网络重新连接后,处理缓存的媒体和信令,会议参会者状态平滑切换,对终端用户透明。会议控制中心记录本参会方为“伪在线”状态,本状态对其他参会方来讲是等同于“在线”状态。其他参会方和此参会方的用户界面都不切换状态,可以改善会议用户的使用体验。

这样,在某一集群终端断开与会议控制中心的连接时,暂时将该集群终端标记为伪在线终端,并继续为伪在线终端缓存接收到的媒体数据包,当伪在线终端在预设时间内重新连接到会议控制中心时,再按顺序向伪在线终端发送缓存的媒体数据包,以保证伪在线终端可以接收到其断线期间产生的媒体数据包,不会出现语音断续的问题。

相应的,参见图7所示,是本发明实施例中提供的实现音视频会议平滑切换的装置实施例一的示意图,该装置可以应用于会议控制中心,该装置可以包括:

接收单元701,用于接收第一集群终端发送的会议建立请求,根据会议建立请求通知第二集群终端与会议控制中心建立连接。

第一缓存单元702,用于按照接收顺序缓存第一集群终端发送的媒体数据包。

第一发送单元703,用于在达到媒体数据包预设缓存个数后,按照接收顺序将缓存的媒体数据包逐个发送给第二集群终端。

在本发明的一些实施例中,媒体数据包预设缓存个数可以根据第二集群终端与会议控制中心建立连接的时间确定。

在本发明的一些实施例中,本发明实施例中提供的实现音视频会议平滑切换的装置实施例还可以包括:

检测单元,用于检测第二集群终端与会议控制中心的连接状态。

第一标记单元,用于当检测到第二集群终端与会议控制中心的连接状态由连接状态变为断开状态,将第二集群终端标记为伪在线终端。

第二缓存单元,用于为伪在线终端按照接收顺序继续缓存接收到的媒体数据包。

第二发送单元,用于当检测到伪在线终端与会议控制中心的连接状态变为连接状态,按照接收顺序将缓存的媒体数据包逐个发送给伪在线终端。

其中,在本发明的一些实施例中,检测单元可以具体用于:

根据第二集群终端发送的心跳信号检测第二集群终端与会议控制中心的连接状态。

另外,在本发明的一些实施例中,本发明实施例中提供的实现音视频会议平滑切换的装置实施例还可以包括:

第二标记单元,用于当伪在线终端与会议控制中心的连接状态超过预设时间未变为连接状态,将伪在线终端标记为下线终端;

清除单元,用于清除为伪在线终端缓存的媒体数据包。

这样,本发明实施例通过在音视频会议开始时,由会议控制中心缓存若干个接收到的媒体数据包,在缓存的媒体数据包达到媒体数据包预设缓存个数后,即在一段缓冲时间后,再向参会的其他集群终端发送所缓存的媒体数据包,以保证集群终端在连接到会议控制中心后再开始接收媒体数据包,从而避免出现丢字现象;另外,在某一集群终端断开与会议控制中心的连接时,暂时将该集群终端标记为伪在线终端,并继续为伪在线终端缓存接收到的媒体数据包,当伪在线终端在预设时间内重新连接到会议控制中心时,再按顺序向伪在线终端发送缓存的媒体数据包,以保证伪在线终端可以接收到其断线期间产生的媒体数据包,不会出现语音断续的问题。

需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分 互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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