点击观看大咖分享
随着游戏行业的迅猛发展, 游戏行业竞争日益加剧, 好的用户体验度和快速反应能力成为游戏网站发展的关键. 游戏行业整体解决方案将能够为游戏厂商提供优质全面便捷的服务.
腾讯云结合自身在云计算业务多年的技术沉淀, 依托丰富的游戏生态资源和能力, 打造出贯通腾讯云和游戏行业的解决方案, 通过三款自研的产品串联出游戏行业的通用需求, 并且通过腾讯云强大的弹性伸缩和业务边防能力, 腾讯云游戏解决方案 https://cloud.tencent.com/solution/game?from=10680 能够快速扩展满足游戏行业业务发展需求.
本次腾讯云大学大咖分享 https://cloud.tencent.com/edu?from=10680 课程邀请腾讯云行业高级产品架构师 郑晓曦老师 分享关于 "腾讯云游戏行业整体解决方案" 课程的内容.
本课程主要介绍三款服务: 腾讯云游戏语音服务, 腾讯云游戏加速服务与腾讯云小游戏联机对战引擎.
1. 腾讯云游戏语音服务 GME
提供一站式的语音解决方案, 主要由实时语音, 离线语音与语音分析三大功能模块组成. 以及此外 GME 还提供一些特色功能, 包括: 趣味变声, K 歌伴奏和 3D 方位语音.
实时语音: 类似于我们的微信通话一样, 能够进行在游戏的对账, 或房间内进行指挥, 或游戏场景沟通等.
实时语音, 是整个音频的链路都会涉及到的, 从前端的语音的采集, 前处理 (可能会有一些编码降噪), 伴奏 (如 K 歌场景), 编码, 网络传输后台流控, 服务器端的解码, 混音 (在服务器端用均衡器的方式进行变更或加强处理), 后处理 (内容审核, 声音校验), 播放. 应用场景有语音直播, 线上 ktv, 游戏开黑等.
离线语音: 实现类似微信的语音消息功能, 为游戏玩家提供了异步化的消息沟通方式. 同时, 还支持语音转文字功能, 并支持多达 120 种语言.
离线语音服务的流程是, 用户通过在 App 或者在游戏中嵌入的 sdk 录制音频, 然后上传音频, 该音频将存储在云端的云存储中, 这时后台调用对应的接口来进行阴转文. 此外, 支撑 120 种语言, 包括阿拉伯语, 西班牙语等. 可以应用于有意思的场景, 如全球同服, 这个是在游戏行业应用比较多的, 可以跟全球各个区域的玩家进行联网, 可以有很好的游戏体验和沟通.
有兴趣深入了解的话可以添加学习君联系我们, 将提供对应的离线语音的语音转文本的体验 demo.
语音分析: 主要为游戏开发者和游戏运营方提供各种不良信息的筛选和过滤, 维护游戏内生态良性发展.
通过腾讯云语音分析, 可以将所有内容的文件, 通过机器的方式, 用更低成本, 更高效的方式进行检测. 能够检测的类别, 包括暴恐, 色情, 政治敏感等, 还有自定义的违规词, 比如, 作为一款游戏, 在游戏中, 不要去提及竞争对手的游戏产品, 这种场景下, 可以通过自定义的违规词来进行区分. 另外, 对于业务开展的不同, 分析有所不同的情况下, 自定义词库对于客户而言, 就会显得非常重要.
那如果客户自己去做这样的语音分析, 将有哪些困难呢?
技术门槛高. 因为这里涉及到 ASR 能力, 是对语义的理解, 并转换成文本, 有很多情况下是需要考虑到前后文来进行语音的转换, 另外, 很多语音实际上是带着口音和杂音的. 特殊的词汇是当下相对比较敏感的词汇, 那就需要更多的预警机制, 例如对于当下的热点的时事, 什么是可以说什么是不可以说的.
资源消耗大. 腾讯云有 AI 消噪的方式, 能够通过声纹的变化, 从而判断决策哪部分的声音, 可以在处理时忽略. 这是需要强大的 AI 平台和引擎才能做到的.
缺乏足够的训练数据, 场景覆盖不全面. 腾讯云的生文库或用于检测的大盘库是基于腾讯系的 qq, 微信等的一个大盘的能力. 拥有海量的这种训练数据, 场景覆盖的保障.
GME 语音分析拥有以下优势:
AI 音频降噪
人声伴奏分离. 很多的直播流是一个单一的流, 会携带者主播播放的伴奏声, Gem 可以用技术的手段, 做到人声伴奏的分离.
集团音频审核技术开放. 上述提及到, 整个集团为语音分析提供支撑库.
接入简单, 功能全面. 接入是直接通过流的方式, 不一定要去升级 App / 游戏, 或嵌入 SDK.
1.1 GME 的应用架构
首先, 游戏服务器和多媒体服务器 (即语音的服务器), 其实是两条流的. 客户如果走高清语音流, 使用 GME 服务, 不会影响游戏本身的流畅性. GME 服务是直接从客户的客户端, 对应地直联到语音服务器, 从而避免在数据上面的冲突和干扰.
语音服务器的集群有如下的能力:
独立于游戏的服务器.
全球可以就近访问.
弹性伸缩. 当用户有一些爆发性的增长, 拥有弹性扩容的能力.
跨平台兼容. 服务海外客户较多, PC 端与主机端可以进行互联.
SDK 的兼容和支撑, GME 基本上涵盖了业界所有的头牌引擎.
所以, 任何类型的游戏或需求, 以 GME 的产品能力都能够提供足够的支撑和保障.
1.2 GME 的语音分析处理模型
推出该产品, 背后的原因很重要是有腾讯系这个大盘库. 从产品的形态跟业界其他的产品对比, Gem 拥有两次筛选的流程.
第一次是进入同源音频库, 也就是声纹库, 进行最初步的筛选和命中.
第二次是通过 ASR 声转文的方式进行文本库的匹配筛选. 很容易筛选出色情, 呻吟等, 当主播有一些语言上面的暗示或者是一些关键词被命中了之后, 从业务的角度, 可以进行人工的复审.
1.3 GME 的接入方式
GME 的接入方式是非常简单的. 有两种方式, 分别是 SDK 连接和 API 调用的方式. 相当于无论是提供直播流还是语音流, 可以直接检测该流的内容有没有存在名单或是异常的情况.
实时语音和离线语音是必须通过 SDK 来支撑的, 因其涉及到点对点, 端到端的通讯.
客户项目《QQ 狼人杀》, 三小时就可以完成接入. 接入如果有任何问题, 有专人的团队和研发进行售前的支持, 帮助大家接入, 甚至可以派人到您办公室, 解决这个技术上的问题.
1.4 GME 的应用场景
应用场景广泛, 不仅限于游戏行业, 只要是与语音相关的, 都可以应用. 例如语音转文本, 通过机器和 AI 的手段对语音的内容进行检查等情况. 文创, 政企行业都有应用.
1.5 客户案例
以下是腾讯云 GME 的部分客户, 基本服务了大部分游戏行业.
2. 腾讯云游戏加速服务
该部分介绍的是相对底层, 应用场景较窄的产品 GAAP 腾讯云应用加速服务, 依托于腾讯云在全球 IDC 的节点的部署.
2.1 业务场景及痛点
游戏场景: 游戏出海或入华, 全球同服, 如果通过公网进行连接, 延迟高, 卡顿严重.
办工场景: 文件传输, 远程登录, 如果通过 VPN, 会经常掉线, 下载速度慢, 影响效率.
网络应用: 远端服务调用, 回源, 典型场景如境外支付, 失败率高的话体验感极差.
2.2 网络加速的手段
先看网络传输的过程, 传输分为接入段和传输段两部分.
接入段优化. 首先终端是通过连接 Wi-Fi 还是基站上网, 这部分是无线优化.
其次通过最近的节点进行访问, 也就是就近接入.
传输段优化. 效果最好的方法是专有传输 (专线传输), 物理上的一条电缆光纤专属该客户使用.
路由优化, 路由的一个最大的作用, 是在传输数据包过程中, 尽可能减少连接物理设备.
反向代理, 是直接将数据包进行透传.
协议优化, 是门槛比较高的一种方法, 指在标准协议里, 依据自身需求, 更改校验字段.
总的来看, 腾讯云应用加速方案分为两部分, 接入段的公网加速和传输段的专有加速. 右下角的图表, 是上海到硅谷 http 请求时延对比图, 可以明显看到加速方案的效果.
2.3 GAAP 产品架构
首先看 GAAP 的使用效果:
大陆到东南亚区域加速效果明显, 在 20% 的加速到 17 倍加速不等. 从广州到香港, 通过公网的话是在 750 毫秒左右, 而通过 GAAP 的加速可以降低到在 35 毫秒左右.
韩国到欧洲及东南亚有优势. 该隧道是基于腾讯云的底层资源, 是非常有优势的.
欧洲, 美洲互联加速效果明显. 加速的效果也是很好的.
再看如何实现加速的, 前面讲到网络传输的接入段和传输段两个阶段, 实际上在 GAAP 产品中, 是分成了 T1,T2,T3 三个阶段, 接入段和传输段是覆盖到 T1,T2 阶段, T3 阶段是从腾讯云的机房 IDC, 连接到云外的服务器或是云服务商. T1 阶段的加速是比较难把握, 让他的路由直接指向的. GAAP 接入集群上, 然后当数据包流量进入接入集群后, 中间的管道传输, 完全依赖于腾讯云数据中心之间的直连网络, 所以是加速效果最好的网络质量. 到达源站区域后, 通过反向代理和转发的机制, 并将内部的 IP 换成源站 IP 同时保留原始 IP, 从而实现整体的通讯. 在跨区域的, 大区域覆盖的网络, 实现的加速效果是最好的.
2.4 全球应用加速网络构建
高速传输: 就近接入, 专有传输, 智能路由, 反向代理
易用性: 控制台 / API, 实时数据监控, 丰富灵活的配置
稳定可靠: 专线多线互备, 集群转发, 多链路切换
2.5 全球应用加速核心能力
准 fullmesh 网络
在底层, 不同的数据中心之间的互联, 每个节点通过跳点的中间连接, 可以连接到任意节点, 做到部分 mesh 网络.
跨云互联
通过硅谷对接, 可以覆盖到南美, 北美.
通过中国香港 / 新加披对接, 可以覆盖到东南亚.
通过底层的合作方的云合作资源, 构建一个全球的统一的网络.
2.6 加速前后对比图
图中是几个站点的加速的实际效果, 这是时时都在更新的.
效果比较明显的是到新加坡, 曼谷, 台湾, 东京这些地方.
丢包率, 更多地可能会影响像游戏, 支付的场景. 在加速前这条折线是很曲折的, 通过加速的产品方案后, 可以看到是非常平的一条线, 数值已经很贴近零了.
2.7 全球应用加速核心能力
全球有很多的数据机房, 靠数据中心之间的互联, 来实现更为可用的一个全球网络.
2.8 全球应用加速适配的多维度场景
场景上总结, 中国国内的企业要出海, 海外的企业要入华 (企业出海, 业务入华). 以下是典型的实际客户落地的四个行业.
GAAP 这款产品, 实际上是不需要你的业务, 非得部署在腾讯云上, 从这条管道的角度来说, 可以连接第三方的云或 IDC, 通过 DNS 的配置, 从而直接将用户的流量和数据包引导到该管道的接入集群上.
2.9 服务的客户
图中给大家列了一些客户, 如吃鸡, 王者荣耀等, 部落冲突是服务的最大客户, 是可以和全球各个地区的玩家一起进行对战的.
3. 腾讯云小游戏联机对战引擎
提供的是快速上线一块联机的游戏的服务, 或者通过实现技术来保障和帮助客户能更容易的去构建联机游戏.
3.1 什么是联机游戏
如跳一跳, 跳一跳里面会有好友的得分排行榜, 实际上是拉取了社交链当中的一些相关数据. 再如棋牌类, 贪吃蛇大作战, 天龙八部等, 还有包括一些社交类的游戏.
3.2 联机游戏的三大痛点
匹配: 人少匹配不到人; 匹配规则复杂.
网络通信技术复杂: 联机游戏会有两种用得比较多的同步, 是真同步和状态同步.
帧同步: 游戏在客户端的所所占空间大, 就是安装包会特别大. 服务端从别地客户端同步过来的消息, 然后本地来实现对应的动画渲染. 比较容易出现作弊或者外挂, 因为在客户端, 可以伪造上报的信息.
状态同步: 是所有的客户端进行上报, 然后服务端对应的去计算出来, 如扣血量是多少, 拿到了什么样的宝物等. 是在服务端来处理, 联机就是对于处理的时效, 时延, 通讯传输的消耗会更大一些.
部署:
部署在线匹配的服务, 需要对战服, 是有状态的, 负载均衡和弹性扩容. 因为它是有状态的, 所以没有办法很容易进行扩容. 传统用 IDC, 其实是没有办法很好的去传递房间的状态的.
多地的部署, 还有更新不停服等等的能力.
通过这样的一个引擎的服务, 来帮助大家实现.
3.3 整个功能模块
最上层是加入房间, 返回 IP, 有对应的一个 pop. 包含了用户管理, 房间管理还有在线匹配的逻辑.
其次是网络通信, 可以实现消息发送, 帧同步, 状态同步.
最后是底层, 游戏对战服务. IT 的基础能力, 可以做到弹性的扩容. 管理上, 可以很简单的用户只需要去上传游戏服务代码, 底层的这个资源已经在腾讯云上默认地开通了. 所以, 那整体的企业或者使用完全是一个平台性质的服务.
3.4 引擎接入的方式
一个 API 实现在线匹配, 支持机器人.
从匹配规则的角度, 第一是根据游戏玩家的数量来进行匹配, 第二是根据玩家的等级, 第三个是根据玩家的技能. 这些匹配都可以很容易地通过类似于 JS 的代码来实现. 另外还支持匹配机器人.
4 个 API 实现帧同步.
4 个前端 API, 分别是开始帧同步, 结束帧同步, 发消息和收消息.
后端就不需要再有任何的 API.
实时服务器 - 状态同步的部署.
状态同步其实只需要通过后台的控制台的 ui 界面, 进行代码的上传, 然后有对应的一些连锁编写的游戏的逻辑, 就可以直接部署好游戏服务了.
3.5 我们的客户
以下是我们的部分客户. 跑跑极限漂是在手机 qq 的平台上的一款小游戏. 还有迷你世界枪战精英, 也是一款 qq 手游上的小游戏.
问卷
为了给广大开发者提供最实用, 最热门前沿, 最干货的视频教程, 请让我们听到你的需要, 感谢您的时间! 点击填写 问卷
来源: https://www.qcloud.com/developer/article/1564484