微信应用和iPhone 7,能给3D音频带来什么?

2024-11-15 03:42:09 admin

雷锋网按:本文作者陈孝良,微信工学博士,应用音频声智科技创始人。微信雷锋网独家文章,应用音频转载请联系授权。微信

微信应用号的应用音频内测无疑是一个重磅消息,这几日覆盖了媒体头条,微信各个领域都在猜测微信应用对于APP带来的应用音频重要影响。虽然暂时还无法确认微信应用在音频支持方面的微信细节,但是应用音频微信这几年在音频方面的进步还是有很多惊喜。

微信对于音频的微信支持主要有两种方法,一个是应用音频微信内置的浏览器,另外一个就是微信JS-SDK,这两种方法面向的应用音频开发应用场景不同。JS-SDK对于音频的微信支持主要是录音和识别,但是这两个功能被微信自身严重限制,扩展性很差,当前主要应用于微信Native SDK集成的场景。

微信应用推出之前,真正能够带给开发人员想象力的则是微信浏览器。微信浏览器曾经也很垃圾,老版本对于H5和CSS3的支持很差,一度让开发者吐槽为“移动端的IE”。 2016年4月,微信浏览器终于升级到X5 Blink内核,而且Android和IOS平台兼容性基本一致,当时就激起各个开发社区的一波热浪。

微信浏览器能够支持哪些音频功能?我们用html5test进行了测试,结果如下图:

微信应用和iPhone 7,能给3D音频带来什么?

可以看到,微信浏览器已经全面支持最重要的Web Audio API接口。Web Audio API是H5里面一个用来处理和合成声音的Javascript接口。这个API可以被用来编写游戏声音引擎,以及实现类似各种音乐制作软件对声音的编辑和处理等功能。

事实上,Web上的音频播放一直比较落后,在H5之前主要依赖于Flash或者QuickTime的插件形式。而在此之前的音效体验,基本都是依赖于APP底层驱动或者硬件内置音效的方法。H5的Audio标签具有非常重要的意义,它允许了基本的流式音频播放。

但是,Audio标签仅能提供给开发人员对声音文件进行读取,播放,暂停以及音量调节的功能,它并不能处理更复杂的音频应用。对于复杂的基于Web 的游戏或者交互式应用,特别是游戏音频引擎和桌面音频处理应用里实现的混音、处理、滤波、音效、定位等功能,则就需要Web Audio API来进行处理。

Web Audio API包括了支持复杂混音的模组化音频路由、高动态范围音频处理、多采样精度和低延时音频处理、动态音效生成、声音包络和淡入淡出支持、声道分离和合并处理、音视频分离支持、网络实时通信支持、现场音频处理支持、动态压缩和频域处理、音频可视化支持、非线性效果和滤波器支持以及声信号参数生成等等。这些功能罗列起来,是不是有点类似音频领域的PS软件?事实上,利用这些API,可以快速做出一款“美声”的微信应用出来,下图就是Web Audio API的可视化效果截图。 

微信应用和iPhone 7,能给3D音频带来什么?

甚至,Web Audio API直接支持了各种场景空间音效,比如仅仅通过简单的几行H5代码就可以随意切换不同的场景,仿佛置身于真实的场景之中,享受沉浸式的声音体验。这些场景包括:大/小房间、教堂、音乐厅、山洞、隧道、门厅、森林、露天剧场、通过门口的一个遥远房间的声音、滤波器效果。好吧,几乎可以抛弃专业的音效插件了!甚至将来,硬件仅仅打通录音和播放的通道就可以了,至于效果完全交由软件来处理。

当然,Web Audio API最为吸引人的,还是对于空间音频,通常称为3D音频的支持。这里所说的3D音频需要加上“虚拟”两字,毕竟和杜比全景声相比还是有较大差距,但是若应用于当前流行的VR游戏或者聊天,Web Audio API的这项功能也还是不错。Web Audio API全面支持Equal-power、HRTF、距离衰减、多普勒频移、声源/听者模型等虚拟3D音频功能,利用这些API,几十行代码就可以实现较为逼真的3D效果。

微信应用和iPhone 7,能给3D音频带来什么?

这里要阐述下HRTF,即头相关传递函数(Head Related Transfer Function),通俗来说,就是试图模拟人耳获取声音的模型,并且通过这个模型虚拟出来任意声源所对人耳所造成的感觉。Equal-power也是3D音频的一种方法,但是效果不如HRTF更好一些。HRTF主要参数是ITD(Interaural Time Difference )双耳时间差、ILD(Interaural Level Difference)双耳强度差和双耳相关系数(Interaural Coherence)。科学家通过大量实验验证,这些参数和人耳处理声音的机制密切相关,但是没有准确的理论推导。因此HRTF需要测量众多人耳的数据,并通过这些数据建立起黑盒子的声学模型,这有点类似机器学习的意思。

微信应用和iPhone 7,能给3D音频带来什么?

从这点来看,Web Audio API提供的HRTF还是标准模型,仍然需要科研机构和专业公司继续研发完善。当然,开源也是其中非常重要的推动力量,比如Google已经开源的项目Omnitone,就可以配合Web网页体验VR/AR的沉浸式音效。国内SoundAI团队,也有开源HRTF数据库和配套引擎的计划。

但是若没有音频硬件方面的支持,上述的这些功能也大都是个摆设,无法打造出用户期望的效果。特别是在iPhone 7的双扬声器配置之前,大多数用户通过手机聆听的还是单声道体验,若想感受虚拟3D效果就必须佩戴耳机,这在VR领域很不方便,VR眼镜再戴上耳机总是个障碍。何况厂商所赠送的耳机,基本上也都是祸害用户的耳朵。这些配套的不足对于用户来说都是巨大的麻烦,也是3D音频发展迟缓的重要原因。可喜的是,大多数用户对于音质的渴求正在回归,几十元的耳机和低价的喇叭已经无法满足需求。这点从侧面来看也有所端倪,例如Vivo的卖点恰恰就是强调音质,而苹果直接在iPhone 7上同时提升了扬声器和耳机的配置。其实仔细一想也是,手机既然标配了双摄像头,自然也需要标配双喇叭,甚至多麦克这些音频硬件,用户无非就是关注声音和视频的沉浸式效果而已。

iPhone 7既然配置了双扬声器,AirPods也是独立无线双通道,相信国内的众多手机厂商很快就会跟上,这就给3D音频应用带来无限的空间,甚至基于微信的沉浸式3D音频体验也不再遥远。既然开发的难度降低很多,那什么场景才能黏住用户?游戏和音乐自然是重要的场景,但是这两个场景总是老生常谈,用户的预期基本上被消耗殆尽。当然,这都是企鹅帝国尤其重要的阵地,企鹅帝国开放平台的600万开发人员肯定还会推出各类微信音频应用。

产品经理总是喜欢挖掘能够超出用户预期的空间和产品,而最近火热的直播和VR,或许将是3D音频应用的重要场景,简单的音效提升对于用户来说可能都是惊喜。事实上,腾讯不可能不关注直播和VR这个领域。另外,微信最大的优势还在于庞大的用户社交群体,作为一个社交平台,微信会不会推出VR社交,VR直播,甚至3D语音聊天?这也是我们所期待的一个方向,虽然微信应用中还会是更多的音乐和游戏率先支持3D音频,但是至少,当我们在微信聊天的时候,我们应该感知到对方就在身旁…….

友链


  • 文章

    86

  • 浏览

    525

  • 获赞

    5357

赞一个、收藏了!

分享给朋友看看这篇文章

热门推荐