Google发布Omnitone开源系统,是VR制作新潮流来袭的节奏吗?

镁客 8年前 (2016-08-03)

当下主流的全景3D音频内容格式马上就要过时了。

上个月,谷歌在其官方博客上公布了其网页VR音频系统Omnitone项目的技术细节。这个项目是一个跨浏览器支持的开源空间音频渲染器,主要是为VR设备营造“全景音频”环境提供解决方案,让用户获得更好的VR沉浸感。

http://photocdn.sohu.com/20160727/Img461147650.jpg

提到“全景音频”的解决方案,有些人或许觉得理论十分简单,做一个虚拟空间,该空间里任何一个音源,用三维坐标标定,然后将VR头盔里的坐标数据导入,再输出相应的声音,即可得到一个完美的“自然”声场。但是这个方案的前提是音源数足够少、运算速度足够快,所以用于逼真模拟现实世界数量众多的音源是几乎不可能的。

目前,主流的全景3D音频内容格式包括Quad Binaural和Ambisonic。

http://photocdn.sohu.com/20160727/Img461147650.jpg

其中,Quad Binaural是将一个声场用0、90、180、270度四个方向去表征。如果需要录制一个点的声场,则录制这个点前后左右的声音,每个方向两个声道,最终八个声道。想得到新的方向的声音,用四个方向的声音进行加权合成即可。这种方案的好处是解码非常容易,比如我们很自然就会想到45度时候的声音就是一半的0度+一半的90(虽然实际情况会更复杂一些)。相比现在常用的一阶的Ambisonic(FOA,First Order Ambisonic),其对水平方向的敏感度更高。不过,它的问题在于垂直方向的声音是木有变化的。

http://photocdn.sohu.com/20160727/Img461147650.jpg

Ambisonic则是从球谐函数出发,(n+1)^2个声道来表征声场。举例来说,Google发布的Omnitone是一阶的Ambisonic,于是有(1+1)^2=4个声道,如上图所示,w,x,y,z。w可以理解成背景声,x,y,z分别是来自直角坐标系三个方向的声音。这个方案的好处在于有了z(垂直)这个方向,抬头或者低头在VR世界里声音是会有区别的,而且随着你提供的运算能力的提升,用更高阶的Ambisonic函数可以获得更好的效果。不过, 越高阶的ambisonic函数解码越复杂。此外,一阶Ambisonic(FOA)因为将相反方向传来的声音(C,D)同时混入了X,所以当你转头的时候,在某些角度下的听者对方向的灵敏度是不如Quad Binaural的。

而Google的网页VR音频系统Omnitone项目用到的解决办法很聪明,而且单刀直入。它主要支持目前业界较为常用的FOA(一阶Ambisonic)格式,这也是YouTube App推荐的主要全景声格式。

下面是Omnitone音频处理过程图解:

http://photocdn.sohu.com/20160727/Img461147650.jpg

从上图可以看出,Google的Omnitone系统的Ambisonic解码器采用了业界主流的算法流程,根据传感器给出的方位信息, 采用一个旋转算子来实现声场旋转,进而用双声道输出。

可以大胆预言的是是,FOA的全景声将会在未来几年快速普及,这对VR行业来说也是一个福音。不过,现在的问题是FOA声音文件缺乏,而录制FOA声音硬件昂贵,且不便于携带使用。有兴趣创业者可以尝试解决这个问题。

最后,记得关注微信公众号:镁客网(im2maker),更多干货在等你!

镁客网


科技 | 人文 | 行业

微信ID:im2maker
长按识别二维码关注

硬科技产业媒体

关注技术驱动创新

分享到