欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~

本文由腾讯游戏云 发表于云+社区专栏

游戏社交化是近年来游戏行业发展的重要趋势,如何提高游戏的社交属性已成为各大游戏厂商游戏策划的重要组成部分。游戏中玩家的互动形式也不再止于语音聊天,有了更为高阶的需求,比如:玩家在“吃鸡”的时候,会通过外带的声卡或者其他的技术手段进行“变声“。大叔变萝莉,萌妹变宅男,这些都让游戏里的语音互动变得更具娱乐性。

在这股社交娱乐大浪潮下,腾讯云游戏多媒体引擎GME创新性地引入了变声的玩法,让变声成为了游戏内置的功能。只要接入GME的SDK,游戏研发厂商就可以提供给玩家更加丰富有趣的游戏内语音体验,让玩家在不借助任何外部设备的情况下,实现抠脚大汉变声萝莉、变声口吃的的有趣玩法。

目前,腾讯云GME的这个变声功能已应用在手机QQ上,被亿万QQ用户所使用。用户在拨通QQ电话或者发送语音消息时,选择 “变声”,就可以在“萝莉”、“歪果仁”、“熊孩子”等数十种特色音效中自由切换。

实测效果: https://v.qq.com/x/page/p0728cduuy3.html

年轻人追求个性,喜欢猎奇。手机QQ这个变声功能帮助用户展现自己的“多面人格”,让聊天更有趣,广受用户好评。

用户使用反馈

变声的原理,即是通过改变人声的音调、音色,使输出声音在感官上与原始声音不同。人耳分辨人声,是通过音色和音调两个维度去做区分。日常所说的男中音、男高音,就是音调不同;音调一致的情况下,我们依然能通过音色去区分人声。变声器,正是借助对声音音色和音调的双重复合改变,实现输出声音的改变。

在音频后处理领域,“变声”是一个相对常见的功能,语音消息的变声不难,但是在QQ电话中实时变声,这可是个大挑战。要保证在用户无感的超低延时下对人声进行特殊处理,怎么办呢?

为了降低时延,技术团队想了不少办法:数据采集阶段,用自研前处理替换系统的前处理,把时延降低了30ms;处理过程中,支持更少长度的处理(常规变声处理必须定长20ms处理,这20ms等待时间也会体现在总时延上面),能将延时控制在30ms以内。而人耳不会感受的最大延时是40ms,这个延时基本不被用户所感知。最终实现了用户在QQ里体验到的实时语音变声功能。

“趣味变声”也集成到了腾讯云游戏多媒体引擎GME产品能力中。只要在游戏中集成GME的SDK,就能实现QQ通话里的趣味变声玩法,丰富游戏玩家的社交体验,让游戏玩家爱上沟通,通过社交属性有效地提升游戏热度。

腾讯云游戏多媒体引擎 GME(Gaming Multimedia Engine)提供一站式游戏语音解决方案。针对不同游戏场景深度优化,覆盖休闲社交类、MOBA 类、MMORPG、FPS 等多种游戏类型。支持多人实时语音、3D位置语音、语音消息和语音转文本等功能。功能完备,接入门槛低,一个 SDK 即可满足多样化的游戏内语音需求。

问答

怎么换域名?

相关阅读

一个域名引发的血案……

你的nginx访问过慢?增加个模块吧!

给你的CVM安装一个面板吧!

此文已由作者授权腾讯云+社区发布,原文链接:https://cloud.tencent.com/developer/article/1165382?fromSource=waitui

欢迎大家前往腾讯云+社区或关注云加社区微信公众号(QcloudCommunity),第一时间获取更多海量技术实践干货哦~

海量技术实践经验,尽在云加社区

实时语音趣味变声,大叔变声“妙音娘子”Get一下的更多相关文章

  1. 挑战中英实时语音翻译——Skype Translator 中文预览版登陆中国

    Translator 中文预览版登陆中国" title="挑战中英实时语音翻译--Skype Translator 中文预览版登陆中国"> 今天,我们正式宣布在中国 ...

  2. scala-协变、逆变、上界、下界

    scala-协变.逆变.上界.下界 当我们定义一个协变类型List[A+]时,List[Child]可以是List[Parent]的子类型. 当我们定义一个逆变类型List[-A]时,List[Chi ...

  3. # li鼠标移入移出,点击,变背景色,变checkbox选中状态

    移入移出背景色改变和点击背景色改变,两者是否相互覆盖? 若移出背景色恢复,影响点击事件的背景色改变,会产生效果为: 点击时,背景色改变,并且checkbox选中 鼠标移开后,checkbox仍选中,但 ...

  4. 用css 添加手状样式,鼠标移上去变小手,变小手

    用css 添加手状样式,鼠标移上去变小手,变小手 cursor:pointer; 用JS使鼠标变小手onmouseover(鼠标越过的时候) onmouseover="this.style. ...

  5. 转:android实时语音问题分析

    转:http://ticktick.blog.51cto.com/823160/1746136 PigeonCall:一款Android VoIP网络电话App架构分析 2016-02-29 20:1 ...

  6. scala-协变和逆变

    class GaoJi class ZhongJi extends GaoJi //协变=========================== class Card[+T] val cgaoji = ...

  7. DIV的变高与变宽

    代码: <!DOCTYPE HTML><html><head> <meta charset="utf-8"> <title&g ...

  8. HTML5实时语音通话聊天,MP3压缩传输3KB每秒

    目录 一.把玩方法 二.技术特性 (1)数据传输 (2)音频采集和编码 (3)音频实时接收和播放 三.应用场景 自从Recorder H5 GitHub开源库优化后,对边录边转码成小语音片段文件实时上 ...

  9. JS多物体运动案例:变宽、变高

    任务描述: 当鼠标移入"变宽"矩形时,该矩形宽度逐渐增加至400px,移出该矩形,宽度逐渐恢复至初始值;当鼠标移入"变高"矩形时,该矩形高度逐渐增加至400px ...

随机推荐

  1. 在Linux上安装Python3

    1. 安装依赖环境 # yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline- ...

  2. Java接口和抽象类以及接口的意义,instanceof的利用

    接口interface: 1. 在接口中没有变量,成员无论如何定义,都是公共常量,public static final即使不显式声明也如此. 2. 所有接口方法均隐含public abstract即 ...

  3. XShell上传文件到Linux服务器上

    在学习Linux过程中,我们常常需要将本地文件上传到Linux主机上,这里简单记录下使用Xsheel工具进行文件传输 1:首先连接上一台Linux主机 2:输入rz命令,看是否已经安装了lrzsz,如 ...

  4. java 一维数组

    数组的概念?有什么特点? 数组是指一组数据的集合,数组中的每个数据被称作元素.在数组中可以存放任意类型的元素,但同一个数组里存放的元素类型必须一致. 一维数组的定义格式? 数据类型[]   名称  = ...

  5. git merge与 git rebase区别及实例

    接Git分支创建与合并,在分支合并时,有两种方式:git merge 和git rebase. git merge:将两个分支,合并提交为一个新提交,并且新提交有2个parent. git rebas ...

  6. Python_正则表达式一

    ''' 常用的正则表达式元字符 . 匹配换行符以外的任意单个字符 * 匹配位于'*'之前的字符或子模的0次或多次出现 + 匹配位于'+'之前的字符或子模式的1次或多次出现 - 用在[]之内用来表示范围 ...

  7. Oracle12c中SQL优化(SQL TUNING)新特性之SQL计划指令

    SQL计划指令是Oracle12c中自适应查询优化的功能之一.SQL计划指令就像“额外的提醒” ,用以提醒优化器你先前选择了的计划并不是最优的,典型的是因为错误的势评估.错误的势评估往往是由统计信息缺 ...

  8. python+selenium实现登录账户

    selenium 是一套完整的web应用程序测试系统,包含了测试的录制(selenium IDE),编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Gr ...

  9. Socket TCP/UDP

    TCP TCPClient package com.tcp; import java.io.*; import java.net.*; class TCPClient { public static ...

  10. 监听Web容器启动与关闭

    在Servlet API 中有一个 ServletContextListener 接口,它能够监听 ServletContext 对象的生命周期,实际上就是监听 Web 应用的生命周期. 要监听web ...