3D位置语音,引领吃鸡游戏体验升级
欢迎大家前往云加社区,获取更多腾讯海量技术实践干货哦~
作者:腾讯游戏云
导语:在刚刚结束的首届腾讯用户开放日上,腾讯音视频实验室带着3D位置音效解决方案,向所有用户亮相,为用户提供360度立体空间的沉浸式听觉体验,那么这项技术如何结合具体的场景提升用户听感和体验呢?这篇文章将会详细阐述。
基于游戏开发引擎(例如Unreal、Unity)实现的3D音效在游戏中的应用已经非常普遍了,通过游戏引擎模拟重现空间中声源方位,例如CS中射击的枪声、中弹时的音效、附近敌人轻微的脚步声,可以显著提高游戏的沉浸感,造就身临其境的游戏体验。
这里我们可以听一段音视频实验室通过3D音效算法处理前后的音频对比(请带上耳机收听):
处理前:http://m.v.qq.com/play/play.html?vid=p0525cjnmhj&ptag=4_5.9.0.21014_copy
处理后:http://m.v.qq.com/play/play.html?vid=y0525bzlbwz&ptag=4_5.9.0.21014_copy
可以听到,处理后的音频携带了更多的空间感和方位感信息,通过扩展音乐的延展度,让声场更大、声音位置感更准确、声音运动轨迹更加生动,提升音乐的临场感和沉浸感。
然而,3D音效之前并没有大规模应用在实时语音沟通领域,这主要是由于之前重度游戏中玩法对于语音能力的定位更多是沟通方式而非创新玩法,使用场景对于实时语音携带方位感诉求也不强烈。
2017年一款游戏《绝地求生:大逃杀》,通过创新的百人大逃杀、胜者吃鸡玩法,短时间获得了全球玩家的青睐和追捧。除了游戏玩法本身的创意之外,游戏对于实时语音玩法也进行了颠覆式创新。游戏过程中玩家可以设置【全体模式】向附近的玩家喊话、挑衅、搭讪,这种语音模式可以与陌生人进行很有趣的沟通和互动。社交媒体上已经有很多用户基于这种语音模式,创作了很多趣味视频。
而引入3D位置语音之后,玩家在喊话过程中会暴露自己的方位和位置信息,玩家的声音也会根据位置变化而实时改变。可以说,3D音效让《大逃杀》这种玩家间的沟通和战斗体验更真实,感受更加沉浸式、更加身临其境的吃鸡玩法。
3D音效除了应用在吃鸡游戏中之外,结合线上棋牌房等多人语音场景也可以显著提升用户体验。
现在多人会话中几路声音混为单声道后,声源将集中于一点。应用3D位置音效,收听者可以将不同发送方虚拟到空间不同的位置上,用户更容易通过位置信息知道当前是谁在讲话。这种技术非常适合应用到固定方位的聊天室中。
例如,3D音效应用到棋牌类游戏的语音房间时,通过将各个声音虚拟到桌面相应位置,玩家可以清楚地感知到其他玩家的声音是来自自己左、右还是正前方,打造线上棋牌房的沉浸式体验,也让玩家开语音沟通的意愿更加强烈。
以下是我们模拟玩家方位处理的一段棋牌游戏中实时语音效果:
http://m.v.qq.com/play/play.html?vid=x0525b7bchv&ptag=4_5.9.0.21014_copy
3D音效的另一个重要应用场景是VR音频。
VR的一切都是关于临场感,而逼真的3D音效效果可以成为临场感的点睛之笔。VR设备能够通过头部运动追踪物体固然重要,能够听到携带物体位置信息的声音也同样重要,逼真的3D音效效果能够给玩家传递其他玩家的位置信息、环境信息,通过视觉和听觉的相互加强来达到最好的效果。
从方位上,VR中各个声音可以虚拟到空间的某个位置上,使用户感受声音来自特定位置;用户转头时,VR中刚才所虚拟方位的声音将随之变化相应的方位,制造出360度立体空间声音定位的效果,让玩家更加确信声源就在现实中。这对于VR类游戏体验非常关键。目前音视频实验室的3D音效相关技术提案已提交到AVS(国家音视频编解码技术标准)的VR音频国家标准中,且在腾讯今年发布的一款VR 游戏“hello world”中已上线。
3D音效还可用于高清视频的音频处理,用户只需使用双声道耳机,即可在家体验影院的沉浸式立体声视听体验。
我们知道,在电影院观影过程中为了打造立体声效果常用5.1声道,7.1声道,每个声道的声音通过不同位置的音箱播放出来,配合影片,观众体验更加震撼。而当戴耳机来观看电影时,由于常规的方法是简单的将靠左侧的所有声道混在左声道,靠右侧的声道混在右声道,中置声道左右都混,这导致无论5.1还是7.1所有声像最终都变成左中右,模糊掉许多细节导致一些声音的变化体现不真实,例如从左后方运动到左方再到左前。更严重的是,假如其他声道无声,只有左前声道有声音,就变成了只有左耳机响,这种感受很不好。
而3D音效可将各声道虚拟到各个相应音箱的位置,从而使听觉更像来自空间中的各个音箱。运用3D音效技术,用户在家用双声道耳机即可体验沉浸式的影院立体声效果。
以下是我们在腾讯视频上截取的音乐原声并通过3D音效处理后的效果:
http://m.v.qq.com/play/play.html?vid=l0525grmt7b&ptag=4_5.9.0.21014_copy
那么,三维虚拟听觉是如何实现的呢?要将普通单声道声音处理为沉浸感的音频需要先了解下面的问题:人耳如何分辨声音来自何方? 我们先看下面的图:
通过图中我们可以看到,左右耳听到的声音先后、左右耳听到的声音的大小、左右耳听到声音实际频谱都是有差异的。
我们的3D音效技术,就是利用“头部关联传输函数”(HRTF 算法),对双耳之间的时间差异和频谱差异进行建模,形成有声源方位感的声音。同时我们还通过采样混响填补HRIR缺失的环境反射声,从而构建完整的声场模型。比如在一个小房间里,不仅可以听到两个人之间的对话,还可以听到声音从墙壁中反射的效果,增加沉浸感。在下一篇关于3D音效技术揭秘的文章中,我们会披露关于此项技术更多的原理介绍,敬请期待!
3D位置语音解决方案应用到游戏实时语音沟通中,玩家可以根据队友语音“听声辨位”,拥有“身临其境”的沉浸式游戏体验。目前3D音效技术已经集成到腾讯音视频实验室推出的实时游戏音视频TMG(Tencent Mobile Gaming)解决方案中。TMG提供了包括多人实时语音、实时视频、语音消息、语音转文本等功能,覆盖了休闲社交类、MOBA 类、MMORPG 等多种游戏类型,是一个专门针对游戏场景定制的实时游戏音视频 SDK,且接入门槛极低,一个 SDK 即可满足多样化的游戏音视频诉求。有关实时游戏音视频(Tencent Mobile Gaming)服务的详细信息,可浏览https://cloud.tencent.com/product/tmg?idx=1
相关阅读
「腾讯云游戏开发者技术沙龙」1月19日游戏加速主题等你来约!
腾讯游戏云 Dolphin 上线 开启游戏更新 easy 模式
一分钟配置的“黑科技”,腾讯云独家开放云压测能力
此文已由作者授权云加社区发布,转载请注明原文出处
3D位置语音,引领吃鸡游戏体验升级的更多相关文章
- 为什么MOBA、“吃鸡”游戏不推荐用tcp协议——实测数据
欢迎大家前往云加社区,获取更多腾讯海量技术实践干货哦~ 作者:腾讯云游戏行业资深架构师 余国良 MOBA类和"吃鸡"游戏为什么对网络延迟要求高? 我们知道,不同类型的游戏因为玩法. ...
- tcp没用吗?为什么MOBA、“吃鸡”游戏不推荐用tcp协议
本文由云+社区发表 作者:腾讯云游戏行业资深架构师 余国良 MOBA类和"吃鸡"游戏为什么对网络延迟要求高? 我们知道,不同类型的游戏因为玩法.竞技程度不一样,采用的同步算法不一样 ...
- 为什么MOBA和吃鸡类游戏不推荐用tcp协议 延迟不利于实时游戏
http://news.gamedog.cn/a/20171221/2287418.html 我们知道,不同类型的游戏因为玩法.竞技程度不一样,采用的同步算法不一样,对网络延迟的要求也不一样.例如,M ...
- 【程序员的吃鸡大法】利用OCR文字识别+百度算法搜索,玩转冲顶大会、百万英雄、芝士超人等答题赢奖金游戏
[先上一张效果图]: 一.原理: 其实原理很简单: 1.手机投屏到电脑: 2.截取投屏画面的题目部分,进行识别,得到题目和三个答案: 3.将答案按照一定的算法,进行搜索,得出推荐答案: 4.添加了一些 ...
- HTC VIVE 虚拟现实眼镜VR游戏体验
HTC的VIVE入手一段时间了,体验了几个免费的VR游戏,效果还不错,分享一下. 1. VIVE主要部件 VIVE的主要部件有3个,分别是头盔,两个无线控制手柄和两个定位器. 1.1 头盔 头盔整体照 ...
- 【BZOJ5109】[CodePlus 2017]大吉大利,晚上吃鸡! 最短路+拓扑排序+DP
[BZOJ5109][CodePlus 2017]大吉大利,晚上吃鸡! Description 最近<绝地求生:大逃杀>风靡全球,皮皮和毛毛也迷上了这款游戏,他们经常组队玩这款游戏.在游戏 ...
- [BZOJ5109][LOJ #6252][P4061][CodePlus 2017 11月赛]大吉大利,今晚吃鸡!(最短路+拓扑排序+传递闭包+map+bitset(hash+压位))
5109: [CodePlus 2017]大吉大利,晚上吃鸡! Time Limit: 30 Sec Memory Limit: 1024 MBSubmit: 107 Solved: 57[Sub ...
- Camel Games借助AWS在爆发式增长中提供优质游戏体验
关于Camel Games Camel Games 成立于2009年,是中国首家得到google市场官方认证的顶尖开发公司.长期以来,Camel Games始终依靠于率先的技术背景,致力于成为国际一流 ...
- 如何实现最佳的跨平台游戏体验?Unity成亮解密实时渲染
7月31日,2018云创大会游戏论坛在杭州国际博览中心103B圆满举行.本场游戏论坛聚焦探讨了可能对游戏行业发展有重大推动的新技术.新实践,如AR.区块链.安全.大数据等. Unity大中华区技术经理 ...
随机推荐
- 记录一下通过分析Tomcat内部jar包找出request.getReader()所用的字符编码在哪里设置和起效的完整分析流程
前言: 之前写Java服务端处理POST请求时遇到了请求体转换成字符流所用编码来源的疑惑,在doPost方法里通过request.getReader()获取的BufferedReader对象内部的 R ...
- openstack安装在虚拟机上重启之后无法启动问题
http://www.byywee.com/page/M0/S931/931767.html 运行rejoin-stack.sh脚本的核心: exec screen -c $TOP_DIR/stack ...
- Android Task 任务
关于Android中的组件和应用,之前涉及,大都是静态的概念.而当一个应用运行起来,就难免会需要关心进程.线程这样的概念.在Android中,组件的动态运行,有一个最与众不同的概念,就是Task,翻译 ...
- java中“==”号的运用
对于值类型,“==”号会判断其是否相等 对于引用类型,“==”对于引用类型则会判断引用(内存地址)是否相同,“==”运算只是调用了对象的equal()方法 public static void mai ...
- python 实用案例 supervisord管理进程详解
Supervisor是由python语言编写,基于linux操作系统的一款服务器管理工具,用以监控服务器的运行,发现问题能立即自动预警及自动重启等功能.Supervisor类似于monit,monit ...
- webpack 3.X学习之CSS处理
Loaders Loaders是Webpack最重要的功能之一,他也是Webpack如此盛行的原因.通过使用不同的Loader,Webpack可以的脚本和工具,从而对不同的文件格式进行特定处理. Lo ...
- 我们是80后 golang入坑系统
现在这个系列,已经开始两极分化了. 点赞的认为风格轻松,看着不困.反之,就有人嫌写的罗里吧嗦,上纲上线.所以善意提醒,里面不只是技术语言,还有段子.专心看技术的,千万别点!别怪我没提醒!差点忘说,版权 ...
- Jenkins与网站代码上线解决方案
1.1 前言 Jenkins是一个用Java编写的开源的持续集成工具.在与Oracle发生争执后,项目从Hudson项目独立. Jenkins提供了软件开发的持续集成服务.它运行在Servlet容器中 ...
- python基础0
1.运行:D:\tools\python\python-2.7.10.amd64=>安装到c:\python 2.环境变量:path:c:\Python27 3.cmd:python回车 //s ...
- System.getProperty()方法获取系统变量
来自我的CSDN博客 今天在阅读JDBC的DriverManager类源码时,看到了这么一句代码: System.getProperty("jdbc.drivers"): ...