一种游戏语音聊天系统技术方案

技术编号:9936761 阅读:136 留言:0更新日期:2014-04-18 19:47
一种游戏语音聊天系统,其特征在于,包括:频道管理服务器CS,与多个游戏服务器及多个UDP语音服务器AS相连,用于控制多个AS,当某个频道激活时,指定一台AS为该频道内所有客户端提供语音服务,并与多个游戏服务器进行交互,为该多个游戏服务器提供服务;UDP语音服务器AS群组,包含多个AS,该AS群组与多个游戏客户端及CS连接,用于接收和转发该多个游戏客户端的UDP语音包,并接收并保存所述CS发送的频道信息和频道中的玩家信息。

【技术实现步骤摘要】
一种游戏语音聊天系统
本专利技术涉及通信领域,尤其涉及一种游戏语音聊天系统。
技术介绍
目前,越来越多的线上游戏可以实现语音聊天功能,其原理如下:游戏客户端采集麦克风的PCM音频数据,对PCM数据进行前期优化(去噪,判断是否静音),然后使用语音压缩库压缩通过UDP方式发送到语音服务器。语音服务器接收到语音包后,判断玩家所处的频道,向处于同一频道中的其他客户端转发语音包。收到语音包的客户端解压缩音频后进行播放。现有技术的游戏语音聊天系统中,如果人数过多,有可能会引发超过系统最大负载,影响语音音质的情况。
技术实现思路
本专利技术的目的是克服现有技术中的不足之处,提供了一种游戏语音聊天系统,解决了现有技术中系统架构下易出现高负载影响语音音质的问题,增强了系统稳定性。本专利技术实施例提供一种游戏语音聊天系统,包括:频道管理服务器CS,与多个游戏服务器及多个UDP语音服务器AS相连,用于控制多个AS,当某个频道激活时,指定一台AS为该频道内所有客户端提供语音服务,并与多个游戏服务器进行交互,为该多个游戏服务器提供服务;UDP语音服务器AS群组,包含多个AS,该AS群组与多个游戏客户端及CS连接,用于接收和转发该多个游戏客户端的UDP语音包,并接收并保存所述CS发送的频道信息和频道中的玩家信息。通过本专利技术提供的系统,通过CS和AS群组组成的系统架构,解决了现有技术中系统架构下易出现高负载影响语音音质的问题,增强了系统稳定性。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例一的系统框图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例一图1是本专利技术实施例一的系统框图,如图1所示,该系统包括:频道管理服务器CS101,与多个游戏服务器及多个UDP语音服务器AS相连,用于控制多个AS,当某个频道激活时,指定一台AS为该频道内所有客户端提供语音服务,并与多个游戏服务器进行交互,为该多个游戏服务器提供服务;CS主要面向游戏服务器,完成游戏服务器添加,删除,修改频道,玩家进入,退出,管理频道等请求。CS下面还控制了若干个AS服务器,当某个频道激活的时候,CS会指定某台AS为这个频道的所有客户端提供语音服务。CS可以同时对多个游戏服务器提供服务,但一个游戏服务器同时只向一台CS发送请求。单个CS服务器101预计可以做到对一个游戏区甚至多个游戏区的所有游戏服提供服务。UDP语音服务器AS群组102,包含多个AS,该AS群组与多个游戏客户端及CS连接,用于接收和转发该多个游戏客户端的UDP语音包,并接收并保存所述CS发送的频道信息和频道中的玩家信息。多个AS服务器组成一个AS服务器群组102。群组中所有AS服务器的配置都保存在数据库中。当一个CS服务器101启动时,会在群组中查找若干个负载较小的AS并与之相连。当游戏服务器需要使用频道服务时,需要选定一个CS服务器101并与其相连。AS服务器主要面向游戏客户端,接收和转发游戏客户端的UDP语音包。AS中保存了由CS发送过来的各种频道信息,和频道中的玩家信息,当一个游戏客户端向其发送语音包时。AS根据游戏客户端所在的频道,向频道中的其他游戏客户端转发语音数据包。需要说明的是,CS与AS之间的关系是多对多的关系。一个CS可以控制多台AS,同一台AS又可以被多台CS控制,但AS会把来自不同CS的数据进行隔离,不会发生冲突。可以把AS集群看成是一个进程池,CS是一个消费者的角色,消费者从进程池中挑选若干进程为其完成服务。CS和CS之间并不互通数据,甚至控制了同一台AS也不需要知道。这样做是为了能让AS集群中的所有服务器资源能够得到充分利用。AS集群的服务器IP和控制端口会保存在数据库中,CS能查询数据库获取这些AS服务器信息。此外,AS的负载来源于与其连接的游戏客户端,游戏客户端连接得越多,则CPU和带宽的占用越高。AS每隔一小段时间计算一次当前的负载情况,负载的计算方式为:对当前客户端数量,频道数量做一个加权平均,得出一个数值,数值越高表示负载越大。计算完后发送给与自己连接的CS。CS就能得出当前最低负载的AS服务器。当新的频道被创建时,CS把频道数据分配给负载最低的AS服务器。需要通话的客户端连接这个AS服务器,并验证进入这个频道,就能通过AS转发语音包的形式实现语音通话。通过这种做法,CS基本能把负载平均分配到自己控制的AS服务器。CS与AS之间的交互可以比较灵活,CS控制多个AS,并发出请求让AS对游戏客户端提供服务。本文档来自技高网...
一种游戏语音聊天系统

【技术保护点】
一种游戏语音聊天系统,其特征在于,包括:频道管理服务器CS,与多个游戏服务器及多个UDP语音服务器AS相连,用于控制多个AS,当某个频道激活时,指定一台AS为该频道内所有客户端提供语音服务,并与多个游戏服务器进行交互,为该多个游戏服务器提供服务;UDP语音服务器AS群组,包含多个AS,该AS群组与多个游戏客户端及CS连接,用于接收和转发该多个游戏客户端的UDP语音包,并接收并保存所述CS发送的频道信息和频道中的玩家信息。

【技术特征摘要】
1.一种游戏语音聊天系统,其特征在于,包括:频道管理服务器CS,与多个游戏服务器及多个UDP语音服务器AS相连,用于控制多个AS,当某个频道激活时,指定一台AS为该频道内所有客户端提供语音服务,并与多个游戏服务器进行交互,为该多个游戏服务器提供服务;UDP语音服务器AS群组,包含多个AS,该AS群组与多个游戏客户端及CS连接,用于接收和转发该多个游戏客户端的UDP语音包,接收并保存所述CS发送的频道信息和频道中的玩家信息;一个CS控制多台AS,同一台AS被...

【专利技术属性】
技术研发人员:徐波
申请(专利权)人:广州多益网络科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1