基于群组的多人音视频通信方法和装置转让专利

申请号 : CN201510059783.5

文献号 : CN105991963B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 薛笛

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本发明提供一种基于群组的多人音视频通信方法和装置,通过接收群组中的第一用户发送的多人音视频通信请求,上述第一用户为上述群组中的任一用户,上述多人音视频通信请求中包含多人音视频通信参数;根据上述多人音视频通信参数创建多人音视频通信资源;转发上述第一用户向上述群组中的至少一个第二用户发送的多人音视频通信邀请,上述多人音视频通信邀请用于邀请上述第二用户进行多人音视频通信;接收所述至少一个第二用户中接受邀请的用户发送的加入所述多人音视频通信请求;对加入上述多人音视频通信的所有用户进行音视频通信控制。从而,使得进行多人音视频通信的所有用户都可以实现音频或视频通信,提高通信效率。

权利要求 :

1.一种基于群组的多人音视频通信方法,其特征在于,包括:

接收群组中的第一用户发送的多人音视频通信请求,所述第一用户为所述群组中的任一用户,所述多人音视频通信请求中包含多人音视频通信参数;

根据所述多人音视频通信参数创建多人音视频通信资源;

转发所述第一用户向所述群组中的至少一个第二用户发送的多人音视频通信邀请,所述多人音视频通信邀请用于邀请所述第二用户进行多人音视频通信;

接收所述至少一个第二用户中接受邀请的用户发送的加入所述多人音视频通信请求;

对加入所述多人音视频通信的所有用户进行音视频通信控制;

其中,所述对加入所述多人音视频通信的所有用户进行音视频通信控制,包括:接收所述所有用户中的R个用户上传的音频数据,所述R为大于等于1的整数;根据所述R个用户上传的音频数据的质量和所述多人音视频通信资源的空闲的上行音频通路个数,获取待转发的音频数据;将所述待转发的音频数据转发给所述所有用户中除上传所述音频数据的用户之外的其他用户。

2.根据权利要求1所述的方法,其特征在于,所述多人音视频通信参数包含所述第一用户的身份信息和所述群组的信息;

所述根据所述多人音视频通信参数创建多人音视频通信资源,包括:对所述第一用户的身份信息进行验证;

若验证通过,根据所述群组的信息向所述第一用户分配并发送第一申请接口信息,所述第一申请接口信息中包含第一接口机地址;

接收所述第一接口机地址对应的第一接口机转发的所述第一用户发送的创建多人音视频通信资源的请求;

创建多人音视频通信资源。

3.根据权利要求2所述的方法,其特征在于,所述第一申请接口信息中还包含身份校验令牌;

所述创建多人音视频通信资源的请求中包含所述身份校验令牌;

所述创建多人音视频通信资源,包括:

根据所述身份校验令牌对所述第一用户进行验证;

若验证通过,创建所述多人音视频通信资源。

4.根据权利要求1-3任一项所述的方法,其特征在于,所述对加入所述多人音视频通信的所有用户进行音视频通信控制,进一步包括:对加入所述多人音视频通信的所有用户进行上行视频数据控制。

5.根据权利要求4所述的方法,其特征在于,所述对加入所述多人音视频通信的所有用户进行上行视频数据控制,包括:接收所述所有用户中的N个用户发送的上行视频数据请求,所述N为大于等于1的整数;

根据所述多人音视频通信资源的空闲上行视频数据通路个数向所述N个用户发送所述上行视频数据请求的响应。

6.根据权利要求5所述的方法,其特征在于,所述根据所述多人音视频通信资源的空闲上行视频数据通路个数向所述N个用户发送所述上行视频数据请求的响应,包括:获取所述多人音视频通信资源中空闲上行视频数据通路个数M;

当所述M≥N,则向所述N个用户发送请求成功的响应;

当所述0<M≤N,则从所述N个用户中选择M个用户,向所述M个用户发送请求成功的响应,向所述N个用户中除所述M个用户之外的用户发送请求失败的响应;

当所述M=0,则向所述N个用户发送请求失败的响应。

7.根据权利要求1所述的方法,其特征在于,所述根据所述R个用户上传的音频数据的质量和所述多人音视频通信资源的空闲的上行音频通路个数,获取待转发的音频数据,包括:获取所述多人音视频通信资源的空闲的上行音频通路个数S,所述S为大于等于1的整数;

按照所述R个用户上传的音频数据的质量从中选择质量最好的前S个音频数据为待转发的音频数据。

8.根据权利要求1-3任一项所述的方法,其特征在于,所述对加入所述多人音视频通信的所有用户进行音视频通信控制之后,还包括:接收所述所有用户中的每个用户周期性上报的通信质量参数,所述通信质量参数中包含上行丢包率、下行丢包率和延迟;

根据所述通信质量参数对所述所有用户中的每个用户进行流量控制。

9.根据权利要求1-3任一项所述的方法,其特征在于,还包括:接收所述所有用户中每个用户的退出所述多人音视频通信资源请求;

释放所述多人音视频通信资源。

10.根据权利要求1-3任一项所述的方法,其特征在于,还包括:接收所述所有用户中第三用户发送的释放所述多人音视频通信资源请求,其中,所述第三用户为所述所有用户中具有管理权限的用户;

释放所述多人音视频通信资源。

11.一种基于群组的多人音视频通信装置,其特征在于,包括:接收模块,用于接收群组中的第一用户发送的多人音视频通信请求,所述第一用户为所述群组中的任一用户,所述多人音视频通信请求中包含多人音视频通信参数;

创建模块,用于根据所述多人音视频通信参数创建多人音视频通信资源;

转发模块,用于转发所述第一用户向所述群组中的至少一个第二用户发送的多人音视频通信邀请,所述多人音视频通信邀请用于邀请所述第二用户进行多人音视频通信;

所述接收模块,还用于接收所述至少一个第二用户中接受邀请的用户发送的加入所述多人音视频通信请求;

控制模块,用于对加入所述多人音视频通信的所有用户进行音视频通信控制,具体用于接收所述所有用户中的R个用户上传的音频数据,所述R为大于等于1的整数;根据所述R个用户上传的音频数据的质量和所述多人音视频通信资源的空闲的上行音频通路个数,获取待转发的音频数据;将所述待转发的音频数据转发给所述所有用户中除上传所述音频数据的用户之外的其他用户。

12.根据权利要求11所述的装置,其特征在于,所述多人音视频通信参数包含所述第一用户的身份信息和所述群组的信息;

所述创建模块具体用于对所述第一用户的身份信息进行验证;若验证通过,根据所述群组的信息向所述第一用户分配并发送第一申请接口信息,所述第一申请接口信息中包含第一接口机地址;接收所述第一接口机地址对应的第一接口机转发的所述第一用户发送的创建多人音视频通信资源的请求;创建多人音视频通信资源。

13.根据权利要求12所述的装置,其特征在于,所述第一申请接口信息中还包含身份校验令牌;

所述创建多人音视频通信资源的请求中包含所述身份校验令牌;

所述创建模块具体用于根据所述身份校验令牌对所述第一用户进行验证;若验证通过,创建所述多人音视频通信资源。

14.根据权利要求11-13任一项所述的装置,其特征在于,所述控制模块进一步用于对加入所述多人音视频通信的所有用户进行上行视频数据控制。

15.根据权利要求14所述的装置,其特征在于,所述控制模块具体用于接收所述所有用户中的N个用户发送的上行视频数据请求,所述N为大于等于1的整数;根据所述多人音视频通信资源的空闲上行视频数据通路个数向所述N个用户发送所述上行视频数据请求的响应。

16.根据权利要求15所述的装置,其特征在于,所述控制模块具体用于获取所述多人音视频通信资源中空闲上行视频数据通路个数M;当所述M≥N,则向所述N个用户发送请求成功的响应;当所述0<M≤N,则从所述N个用户中选择M个用户,向所述M个用户发送请求成功的响应,向所述N个用户中除所述M个用户之外的用户发送请求失败的响应;当所述M=0,则向所述N个用户发送请求失败的响应。

17.根据权利要求11所述的装置,其特征在于,所述控制模块具体用于获取所述多人音视频通信资源的空闲的上行音频通路个数S,所述S为大于等于1的整数;按照所述R个用户上传的音频数据的质量从中选择质量最好的前S个音频数据为待转发的音频数据。

18.根据权利要求11-13任一项所述的装置,其特征在于,所述控制模块还用于接收所述所有用户中的每个用户周期性上报的通信质量参数,所述通信质量参数中包含上行丢包率、下行丢包率和延迟;根据所述通信质量参数对所述所有用户中的每个用户进行流量控制。

19.根据权利要求11-13任一项所述的装置,其特征在于,所述控制模块还用于接收所述所有用户中每个用户的退出所述多人音视频通信资源请求;释放所述多人音视频通信资源。

20.根据权利要求11-13任一项所述的装置,其特征在于,所述控制模块还用于接收所述所有用户中第三用户发送的释放所述多人音视频通信资源请求,其中,所述第三用户为所述所有用户中具有管理权限的用户;释放所述多人音视频通信资源。

说明书 :

基于群组的多人音视频通信方法和装置

技术领域

[0001] 本发明涉及计算机技术,尤其涉及一种基于群组的多人音视频通信方法和装置。

背景技术

[0002] 群组是由一些具有共同属性标签(如目标、兴趣爱好、地域或身份等)的人聚集而成的一种临时或永久的组织关系,通过利用网络资源创建群组可以使群组内的成员更方便地进行沟通与交流。
[0003] 多人音视频通信的场景很多,如视频会议、在线教育、基于多人音视频的在线娱乐(如在线主播、在线K歌、在线拨片、游戏内多人语音)等,不同的场景的差别仅在于对音视频通信质量的要求不同以及对上行音视频数据和下行音视频数据权限控制的不同,以主播型实时音视频服务为例,一个主播负责主持一个虚拟音视频直播房间,一个虚拟音视频直播房间相当于一个群组,群组中的成员为主播和观众,在这种场景中,主播通过自己的终端设备发送上行音视频数据到服务器,由服务器将上述音视频数据发送给房间内的所有观众的终端设备,房间内的观众只能接收音视频数据,观众和主播之间以及观众之间只能依赖于图片、文字、道具等间接方式进行通信,而无法通过音频方式或视频方式实现高效的通信,可见,采用现有技术的多人音视频通信方式,通信效率低。

发明内容

[0004] 本发明提供一种基于群组的多人音视频通信方法和装置,以提高沟通效率。
[0005] 本发明第一方面提供一种基于群组的多人音视频通信方法,包括:
[0006] 接收群组中的第一用户发送的多人音视频通信请求,所述第一用户为所述群组中的任一用户,所述多人音视频通信请求中包含多人音视频通信参数;
[0007] 根据所述多人音视频通信参数创建多人音视频通信资源;
[0008] 转发所述第一用户向所述群组中的至少一个第二用户发送的多人音视频通信邀请,所述多人音视频通信邀请用于邀请所述第二用户进行多人音视频通信;
[0009] 接收所述至少一个第二用户中接受邀请的用户发送的加入所述多人音视频通信请求;
[0010] 对加入所述多人音视频通信的所有用户进行音视频通信控制。
[0011] 在上述实施例中,所述多人音视频通信参数包含所述第一用户的身份信息和所述群组的信息;
[0012] 所述根据所述多人音视频通信参数创建多人音视频通信资源,包括:
[0013] 对所述第一用户的身份信息进行验证;
[0014] 若验证通过,根据所述群组的信息向所述第一用户分配并发送第一申请接口信息,所述第一申请接口信息中包含第一接口机地址;
[0015] 接收所述第一接口机地址对应的第一接口机转发的所述第一用户发送的创建多人音视频通信资源的请求;
[0016] 创建多人音视频通信资源。
[0017] 在上述实施例中,所述第一申请接口信息中还包含身份校验令牌;
[0018] 所述创建多人音视频通信资源的请求中包含所述身份校验令牌;
[0019] 所述创建多人音视频通信资源,包括:
[0020] 根据所述身份校验令牌对所述第一用户进行验证;
[0021] 若验证通过,创建所述多人音视频通信资源。
[0022] 在上述实施例中,所述对所述多人音视频通信的所有用户进行音视频通信控制,包括:
[0023] 对加入所述多人音视频通信的所有用户进行上行视频数据控制;和/或[0024] 对加入所述多人音视频通信的所有用户进行上行音频数据控制。
[0025] 在上述实施例中,所述对加入所述多人音视频通信的所有用户进行上行视频数据控制,包括:
[0026] 接收所述所有用户中的N个用户发送的上行视频数据请求,所述N为大于等于1的整数;
[0027] 根据所述多人音视频通信资源的空闲上行视频数据通路个数向所述N用户发送所述上行视频数据请求的响应。
[0028] 在上述实施例中,所述根据所述多人音视频通信资源的空闲上行视频数据通路个数向所述N个用户发送所述上行视频数据请求的响应,包括:
[0029] 获取所述多人音视频通信资源中空闲上行视频数据通路个数M;
[0030] 当所述M≥N,则向所述N个用户发送请求成功的响应;
[0031] 当所述0
[0032] 当所述M=0,则向所述N个用户发送请求失败的响应。
[0033] 在上述实施例中,所述对加入所述多人音视频通信的所有用户进行上行音频数据控制,包括:
[0034] 接收所述所有用户中的R个用户上传的音频数据,所述R为大于等于1的整数;
[0035] 根据所述R用户上传的音频数据的质量和所述多人音视频通信资源的空闲的上行音频通路个数,获取待转发的音频数据;
[0036] 将所述待转发的音频数据转发给所述所有用户中除上传所述音频数据的用户之外的其他用户。
[0037] 在上述实施例中,所述根据所述R个用户上传的音频数据的质量和所述多人音视频通信资源的空闲的上行音频通路个数,获取待转发的音频数据,包括:
[0038] 获取所述多人音视频通信资源的空闲的上行音频通路个数S,所述S为大于等于1的整数;
[0039] 按照所述R个用户上传的音频数据的质量从中选择质量最好的前S个音频数据为待转发的音频数据。
[0040] 在上述实施例中,所述对加入所述多人音视频通信的所有用户进行音视频通信控制之后,还包括:
[0041] 接收所述所有用户中的每个用户周期性上报的通信质量参数,所述通信质量参数中包含上行丢包率、下行丢包率和延迟;
[0042] 根据所述通信质量参数对所述所有用户中的每个用户进行流量控制。
[0043] 在上述实施例中,所述方法还包括:
[0044] 接收所述所有用户中每个用户的退出所述多人音视频通信资源请求;
[0045] 释放所述多人音视频通信资源。
[0046] 在上述实施例中,所述方法还包括:
[0047] 接收所述所有用户中第三用户发送的释放所述多人音视频通信资源请求,其中,所述第三用户未所述所有用户中具有管理权限的用户;
[0048] 释放所述多人音视频通信资源。
[0049] 本发明实施例第二方面提供一种基于群组的多人音视频通信装置,包括:
[0050] 接收模块,用于接收群组中的第一用户发送的多人音视频通信请求,所述第一用户为所述群组中的任一用户,所述多人音视频通信请求中包含多人音视频通信参数;
[0051] 创建模块,用于根据所述多人音视频通信参数创建多人音视频通信资源;
[0052] 转发模块,用于转发所述第一用户向所述群组中的至少一个第二用户发送的多人音视频通信邀请,所述多人音视频通信邀请用于邀请所述第二用户进行多人音视频通信;
[0053] 所述接收模块,还用于接收接收所述至少一个第二用户中接受邀请的用户发送的加入所述多人音视频通信请求;
[0054] 控制模块,用于对加入所述多人音视频通信的所有用户进行音视频通信控制。
[0055] 在上述实施例中,所述多人音视频通信参数包含所述第一用户的身份信息和所述群组的信息;
[0056] 所述创建模块具体用于对所述第一用户的身份信息进行验证;若验证通过,根据所述群组的信息向所述第一用户分配并发送第一申请接口信息,所述第一申请接口信息中包含第一接口机地址;接收所述第一接口机地址对应的第一接口机转发的所述第一用户发送的创建多人音视频通信资源的请求;创建多人音视频通信资源。
[0057] 在上述实施例中,所述第一申请接口信息中还包含身份校验令牌;
[0058] 所述创建多人音视频通信资源的请求中包含所述身份校验令牌;
[0059] 所述创建模块具体用于根据所述身份校验令牌对所述第一用户进行验证;若验证通过,创建所述多人音视频通信资源。
[0060] 在上述实施例中,所述控制模块具体用于对加入所述多人音视频通信的所有用户进行上行视频数据控制;和/或对加入所述多人音视频通信的所有用户进行上行音频数据控制。
[0061] 在上述实施例中,所述控制模块具体用于接收所述所有用户中的N个用户发送的上行视频数据请求,所述N为大于等于1的整数;根据所述多人音视频通信资源的空闲上行视频数据通路个数向所述N用户发送所述上行视频数据请求的响应。
[0062] 在上述实施例中,所述控制模块具体用于获取所述多人音视频通信资源中空闲上行视频数据通路个数M;当所述M≥N,则向所述N个用户发送请求成功的响应;当所述0
[0063] 在上述实施例中,所述控制模块具体用于接收所述所有用户中的R个用户上传的音频数据,所述R为大于等于1的整数;根据所述R用户上传的音频数据的质量和所述多人音视频通信资源的空闲的上行音频通路个数,获取待转发的音频数据;将所述待转发的音频数据转发给所述所有用户中除上传所述音频数据的用户之外的其他用户。
[0064] 在上述实施例中,所述控制模块具体用于获取所述多人音视频通信资源的空闲的上行音频通路个数S,所述S为大于等于1的整数;按照所述R个用户上传的音频数据的质量从中选择质量最好的前S个音频数据为待转发的音频数据。
[0065] 在上述实施例中,所述控制模块还用于接收所述所有用户中的每个用户周期性上报的通信质量参数,所述通信质量参数中包含上行丢包率、下行丢包率和延迟;根据所述通信质量参数对所述所有用户中的每个用户进行流量控制。
[0066] 在上述实施例中,所述控制模块还用于接收所述所有用户中每个用户的退出所述多人音视频通信资源请求;释放所述多人音视频通信资源。
[0067] 在上述实施例中,所述控制模块还用于接收所述所有用户中第三用户发送的释放所述多人音视频通信资源请求,其中,所述第三用户未所述所有用户中具有管理权限的用户;释放所述多人音视频通信资源。
[0068] 本发明提供的基于群组的多人音视频通信方法和装置,通过接收群组中的第一用户发送的多人音视频通信请求,上述第一用户为上述群组中的任一用户,上述多人音视频通信请求中包含多人音视频通信参数;根据上述多人音视频通信参数创建多人音视频通信资源;转发上述第一用户向上述群组中的至少一个第二用户发送的多人音视频通信邀请,上述多人音视频通信邀请用于邀请上述第二用户进行多人音视频通信;接收上述至少一个第二用户中接受邀请的用户发送的加入所述多人音视频通信请求;对上述多人音视频通信的所有用户进行音视频通信控制。从而,使得进行多人音视频通信的所有用户都可以实现音频或视频通信,提高通信效率。

附图说明

[0069] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0070] 图1为本发明基于群组的多人音视频通信装置实施例一的结构示意图;
[0071] 图2为本发明基于群组的多人音视频通信方法实施例一的流程示意图;
[0072] 图3为本发明基于群组的多人音视频通信装置实施例二的结构示意图;
[0073] 图4为本发明基于群组的多人音视频通信方法实施例二的流程示意图;
[0074] 图5为本发明基于群组的多人音视频通信方法实施例三的流程示意图;
[0075] 图6为本发明基于群组的多人音视频通信装置实施例三的结构示意图。

具体实施方式

[0076] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0077] 本发明的基于群组的多人音视频通信方法可由基于群组的多人音视频通信装置执行,基于群组的多人音视频装置可以是群组内成员均可访问的服务器或计算机等,图1为本发明基于群组的多人音视频通信装置实施例一的结构示意图;如图1所示,其包含处理器11,例如CPU,存储器12,至少一个通信总线13以及运行在硬件之上的操作系统14。通信总线
13用于实现元件之间的通信连接。存储器12可能包含高速RAM存储器,也可能还包括非易失性存储器NVM,例如至少一个磁盘存储器,存储器中可以存储各种程序,用于完成各种处理功能以及实现本实施例的方法步骤。
[0078] 本领域技术人员可以理解的是,图1所示基于群组的多人音视频装置还可以包含其余各种可能的元件,例如无线通信模块等,本发明不做限定。其中,存储器12中存储有基于群组的多人音视频装置方法的代码,处理器11用于执行存储器12中的代码。
[0079] 下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
[0080] 图2为本发明基于群组的多人音视频通信方法实施例一的流程示意图,如图2所示,本实施例的执行主体是多人音视频通信装置,本实施例的方法如下:
[0081] S201:多人音视频通信装置接收群组中的第一用户发送的多人音视频通信请求。
[0082] 本实施例中的群组可以是第一用户根据需求创建的,例如:从好友列表中选出需要与之进行多人音视频通信的用户,也可以是之前已创建(即已有)的群组。
[0083] 第一用户为群组中的任一用户,通常为群组的创建者或者管理员。
[0084] 多人音视频通信请求中包含多人音视频通信参数,多人音视频通信参数可以包含第一用户的身份信息和群组的信息,更具体地,可以是第一用户的用户名、用户标识(Identification,以下简称:ID)、群组的名称、群组的ID、群组内成员数量等,对此本发明不作限制。
[0085] 第一用户通过发送多人音视频通信请求以请求进行多人音视频通信。
[0086] S202:多人音视频通信装置根据多人音视频通信参数创建多人音视频通信资源。
[0087] 多人音视频通信装置对第一用户的身份信息进行验证;若验证通过,根据群组的信息向第一用户分配并发送第一申请接口信息,第一申请接口信息中包含第一接口机地址。进一步地,第一申请接口信息中也可以包括:身份校验令牌。
[0088] 第一用户通过第一接口机地址对应的第一接口机发送创建多人音视频通信资源的请求。
[0089] 多人音视频通信装置接收到创建多人音视频通信资源的请求之后,创建多人音视频通信资源。
[0090] 如果第一申请接口信息中还包含身份校验令牌,则在创建多人音视频通信资源之前,还根据身份校验令牌对第一用户进行验证,若验证通过,则创建多人音视频通信资源。
[0091] S203:多人音视频通信装置转发第一用户向群组中的至少一个第二用户发送的多人音视频通信邀请。
[0092] 其中,多人音视频通信邀请用于邀请第二用户进行多人音视频通信。
[0093] S204:多人音视频通信装置接收所述至少一个第二用户中接受邀请的用户发送的加入所述多人音视频通信请求。
[0094] 第二用户接收到多人音视频通信邀请之后,根据自身需求向多人音视频通信装置所述多人音视频通信请求;。
[0095] 接受邀请的用户从多人音视频通信装置获取第二申请接口信息,所述第二申请接口信息中包含第二接口机地址,第二用户通过第二接口地址对应的第二接口机向多人音视频通信装置发送加入多人音视频通信资源的请求,多人音视频通信装置接收第二接口机地址对应的第二接口机转发的第二用户发送的加入所述多人音视频通信资源的请求,以使第二用于加入多人音视频通信资源。
[0096] S205:多人音视频通信装置对加入多人音视频通信的所有用户进行音视频通信控制。
[0097] 因受群组内的第一用户或第二用户的网络带宽的限制,多人音视频通信资源会限制上行音频数据通路的数量和上行视频数据通路的数量。
[0098] 对加入多人音视频通信的所有用户进行音视频通信控制包括:
[0099] 对加入多人音视频通信的所有用户进行上行视频数据控制;和/或[0100] 对加入多人音视频通信的所有用户进行上行音频数据控制。
[0101] 其中,对加入多人音视频通信的所有用户进行上行视频数据控制,具体为:所有用户中有发送上行视频数据需求的N个用户向多人音视频通信装置发送上行视频数据请求,多人音视频通信装置接收上述N个用户发送的上行视频数据请求,N为大于等于1的整数;根据多人音视频通信资源的空闲上行视频数据通路个数向N用户发送所述上行视频数据请求的响应。
[0102] 具体地:获取多人音视频通信资源中空闲上行视频数据通路个数M;
[0103] 当M≥N,则向N个用户发送请求成功的响应。
[0104] 当0
[0105] 当M=0,则向N个用户发送请求失败的响应。
[0106] 其中,对加入多人音视频通信的所有用户进行上行音频数据控制,具体为:所有用户中有发送上行音频数据需求的R个用户向多人音视频通信装置上传音频数据,多人音视频通信装置接收所有用户中的R个用户上传的音频数据,R为大于等于1的整数;根据R用户上传的音频数据的质量和多人音视频通信资源的空闲的上行音频通路个数,获取待转发的音频数据;将待转发的音频数据转发给所有用户中除上传音频数据的用户之外的其他用户。
[0107] 具体地:根据R个用户上传的音频数据的质量和多人音视频通信资源的空闲的上行音频通路个数,获取待转发的音频数据,包括:
[0108] 获取多人音视频通信资源的空闲的上行音频通路个数S,S为大于等于1的整数;按照R个用户上传的音频数据的质量从中选择质量最好的前S个音频数据为待转发的音频数据。
[0109] 本实施例,通过接收群组中的第一用户发送的多人音视频通信请求,上述第一用户为上述群组中的任一用户,上述多人音视频通信请求中包含多人音视频通信参数;根据上述多人音视频通信参数创建多人音视频通信资源;转发上述第一用户向上述群组中的至少一个第二用户发送的多人音视频通信邀请,上述多人音视频通信邀请用于邀请上述第二用户进行多人音视频通信;接收上述至少一个第二用户中接受邀请的用户发送的加入多人音视频通信请求;对上述多人音视频通信的所有用户进行音视频通信控制。从而,使得进行多人音视频通信的所有用户都可以实现音频或视频通信,提高通信效率。
[0110] 在上述实施例中,进一步地,在对多人音视频通信的所有用户进行音视频通信控制之后,还包括:
[0111] 多人音视频通信装置接收所有用户中的每个用户周期性上报的通信质量参数,通信质量参数中包含上行丢包率、下行丢包率和延迟;根据通信质量参数对所述所有用户中的每个用户进行流量控制,例如:调整帧率、码率、加大冗余或减少冗余等。
[0112] 多人音视频通话需求结束后,可以通过以下两种方式触发释放多人音视频通信资源,其中一种方式为:接收到所有用户中的每个用户的退出多人音视频通信资源请求之后,释放所述多人音视频通信资源。
[0113] 另一种方式为:接收所有用户中第三用户发送的释放多人音视频通信资源请求,其中,第三用户未所述所有用户中具有管理权限的用户;释放所述多人音视频通信资源。
[0114] 图3为本发明基于群组的多人音视频通信装置实施例二的结构示意图;本实施例的装置中包含流控服务模块、消息系统模块、策略服务模块和群组服务模块,群组中的用户可通过对应的接口机与流控服务模块进行交互,可通过接入服务模块与消息系统模块、策略服务模块和群组服务模块进行交互。结合图2所示的步骤,其中,S201具体可以由其中的策略服务模块执行,S202具体可以由流控服务模块执行,S203可以由消息系统模块执行,S204可以由策略服务模块执行,S205可以由流控服务模块执行。具体流程参见图2,此处不再赘述。
[0115] 下面分别以第一用户和第二用户的执行流程进行描述,下述流程中的步骤与图2中类似的参见图2中的相应的详细描述,下面实施例将不再赘述。
[0116] 图4为本发明基于群组的多人音视频通信方法实施例二的流程示意图,图4为第一用户执行的流程,如图4所示:
[0117] S401:创建群组或者选择现有的群组。
[0118] S402:发送多人音视频通信需求。
[0119] S403:加入多人音视频通信资源。
[0120] S404:向第二用户发送多人音视频通信邀请。
[0121] S405:与群组中第二用户进行多人音视频通信。
[0122] 在进行多人音视频通信过程中,需要与流控服务模块进行交互,以发送上行视频数据或上行音频数据。
[0123] S406:多人音视频通信结束,发送退出多人音视频通信资源请求。
[0124] 图5为本发明基于群组的多人音视频通信方法实施例三的流程示意图,图5为第二用户执行的流程,如图5所示:
[0125] S501:接收多人音视频通信邀请。
[0126] S502:发送加入多人音视频通信的请求。
[0127] S503:与群组中其他用户进行多人音视频通信。
[0128] 图6为本发明基于群组的多人音视频通信装置实施例三的结构示意图,本实施的装置包括接收模块601、创建模块602、转发模块603、和控制模块604,其中,接收模块601用于接收群组中的第一用户发送的多人音视频通信请求,上述第一用户为上述群组中的任一用户,上述多人音视频通信请求中包含多人音视频通信参数;创建模块602用于根据上述多人音视频通信参数创建多人音视频通信资源;转发模块603用于转发上述第一用户向上述群组中的至少一个第二用户发送的多人音视频通信邀请,上述多人音视频通信邀请用于邀请上述第二用户进行多人音视频通信;上述接收模块601还用于接收所述至少一个第二用户中接受邀请的用户发送的加入所述多人音视频通信请求;控制模块604用于对加入上述多人音视频通信的所有用户进行音视频通信控制。
[0129] 在上述实施例中,上述多人音视频通信参数包含上述第一用户的身份信息和上述群组的信息;上述创建模块602具体用于对上述第一用户的身份信息进行验证;若验证通过,根据上述群组的信息向上述第一用户分配并发送第一申请接口信息,上述第一申请接口信息中包含第一接口机地址;接收上述第一接口机地址对应的第一接口机转发的上述第一用户发送的创建多人音视频通信资源的请求;创建多人音视频通信资源。
[0130] 在上述实施例中,上述第一申请接口信息中还包含身份校验令牌;上述创建多人音视频通信资源的请求中包含上述身份校验令牌;上述创建模块602具体用于根据上述身份校验令牌对上述第一用户进行验证;若验证通过,创建上述多人音视频通信资源。
[0131] 在上述实施例中,上述控制模块604具体用于对加入上述多人音视频通信的所有用户进行上行视频数据控制;和/或,对加入上述多人音视频通信的所有用户进行上行音频数据控制。
[0132] 在上述实施例中,上述控制模块604具体用于接收上述所有用户中的N个用户发送的上行视频数据请求,上述N为大于等于1的整数;根据上述多人音视频通信资源的空闲上行视频数据通路个数向上述N用户发送上述上行视频数据请求的响应。
[0133] 在上述实施例中,上述控制模块604具体用于获取上述多人音视频通信资源中空闲上行视频数据通路个数M;当上述M≥N,则向上述N个用户发送请求成功的响应;当上述0
[0134] 在上述实施例中,上述控制模块604具体用于接收上述所有用户中的R个用户上传的音频数据,上述R为大于等于1的整数;根据上述R用户上传的音频数据的质量和上述多人音视频通信资源的空闲的上行音频通路个数,获取待转发的音频数据;将上述待转发的音频数据转发给上述所有用户中除上传上述音频数据的用户之外的其他用户。
[0135] 在上述实施例中,上述控制模块604具体用于获取上述多人音视频通信资源的空闲的上行音频通路个数S,上述S为大于等于1的整数;按照上述R个用户上传的音频数据的质量从中选择质量最好的前S个音频数据为待转发的音频数据。
[0136] 在上述实施例中,上述控制模块604还用于接收上述所有用户中的每个用户周期性上报的通信质量参数,上述通信质量参数中包含上行丢包率、下行丢包率和延迟;根据上述通信质量参数对上述所有用户中的每个用户进行流量控制。
[0137] 在上述实施例中,上述控制模块604还用于接收上述所有用户中每个用户的退出上述多人音视频通信资源请求;释放上述多人音视频通信资源。
[0138] 在上述实施例中,上述控制模块604还用于接收上述所有用户中第三用户发送的释放上述多人音视频通信资源请求,其中,上述第三用户未上述所有用户中具有管理权限的用户;释放上述多人音视频通信资源。
[0139] 上述装置实施例,通过接收模块接收群组中的第一用户发送的多人音视频通信请求,上述第一用户为上述群组中的任一用户,上述多人音视频通信请求中包含多人音视频通信参数;创建模块根据上述多人音视频通信参数创建多人音视频通信资源;转发模块转发上述第一用户向上述群组中的至少一个第二用户发送的多人音视频通信邀请,上述多人音视频通信邀请用于邀请上述第二用户进行多人音视频通信;接收模块接收至少一个第二用户中接受邀请的用户发送的加入所述多人音视频通信请求;控制模块对上述多人音视频通信的所有用户进行音视频通信控制。从而,使得进行多人音视频通信的所有用户都可以实现音频或视频通信,提高通信效率。
[0140] 本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0141] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。