2022spring

バーチャル空間における
空間オーディオSDK

HTC NIPPON株式会社代表取締役社長児島 全克

概要

メタバースという言葉が最近話題を呼んでいるが、実際にはVRでは当たり前となっている仮想空間のことを指す。仮想空間を現実の物理法則に即してプログラミングすると、現実とは区別できなくなるほど現実味を帯びてくる。これは林檎が落ちる引力だけではなく、音の伝搬も同様である。本記事では、音の伝搬について物理法則をプログラミングできなくても、簡単にリアルな音を再現させるためのSDKについて紹介する。
※SDK: Software Development Kit(ソフトウェア開発キット)

ABSTRACT

The word Metaverse has been a hot topic recently, but it actually refers to virtual space which is common space in VR. When programming virtual space according to physics of reality, it becomes so realistic that cannot be distinguished from reality. This is not only the attraction of the apple falling, but also the sound propagation. In this article, I will introduce an SDK that allows you to easily reproduce realistic sound even if you cannot program physics for sound propagation.

1. はじめに

HTCは2016年以来、VIVEというサービスブランドの元、数多くのVRゴーグルを発売し、VR市場を開拓してきた。人々が集えて話し合えるようなこれまでVRで実現してきた仮想空間が、いまはメタバースという言葉に変わり、大きく広がりをみせているように、VRはゲームだけの物ではなく、コロナ禍でなかなか行けなくなった観光地を友達と一緒に楽しんだり、アイドルグループのステージを見たりといったエンタテインメントにも広がりをみせている。この臨場感は映像の3D化だけではなく、サウンドも同様にリアリティーを追求することで、実際の世界により近づけることが可能となる。

現実世界と同じような仮想空間を創造するには、現実世界と同じ物理法則を適用させてやる必要がある。たとえば、ボールが床の上を転がって壁に当たって跳ね返る場合、ボールと床の摩擦係数を計算し、ゆっくりと速度を落とし、壁と衝突する際には衝突係数を計算してやる必要がある。音に関しても同様に、音源から音が発射され、距離に従って減衰し、壁に跳ね返って伝わってくる。音に関しては更に複雑で、人が顔を動かすたびに左右の耳で聞こえる音が耳の形状にともなって変化する。これを全て一からプログラミングするのは物理法則に精通している必要があるし、かなり大変な作業となる。HTCでは、VRゴーグル VIVEにおいて、プログラミングなしで簡単に仮想空間を実現するために、ソフトウェア開発キット(SDK)を提供しており、本記事ではその機能を解説することにより、メタバースでどのように空間サウンドを作っているかを紹介する。

2. 空間オーディオSDKを構成する技術

2.1 プラットフォーム

HTCの提供するサウンド用SDK(ソフトウェア開発キット)は3DSP(3D Sound Perception)と言い、多機能な空間オーディオプラグインである。3DSP Audio SDKは、XRコンテンツを作成するための2大プラットフォームであるUnityとUnreal Engineに対応しており、コンテンツ作成時に非常に簡単に使用することができるようになっている。

3Dの空間サウンドを作成するには、3Dの仮想空間を作成する必要がある。たとえば、自分の家の寝室に置いてある目覚まし時計を想定してみる。玄関のドアを開いた時に、目覚まし時計がなっているのが聞こえるが、聞こえ方としては寝室の場所、廊下、部屋割り、床の素材、壁の素材などによって、どのように聞こえるかは大きく変わってくる。入り組んだ部屋の奥のほうに寝室がある場合、玄関のすぐ隣に寝室がある場合など、まずは空間を作成する必要がある。UnityやUnreal Engineというのは、非常に多くの機能があるが、まずはこの空間を作成するためのプラットフォームと考えていただきたい。

Unityはユニティ・テクノロジー社が運営しているゲームエンジンで、3Dのゲームやコンテンツを手軽に製作することが可能であり、製作から実行まですべてUnity上で行うことができるため、総合的な開発環境としても使用されている。Unityは、”白猫プロジェクト” や ”Pokémon Go” などを始めとする多くの有名な作品にも採用されている。Unreal EngineはEpic Games社が開発したゲームエンジンで、こちらも非常に多くの企業に採用されており、”鉄拳” や “キングダムハーツ” など多くの有名作品に採用されている。ともに、プログラミングの知識が無い人でも直感的にゲームやコンテンツを製作することができるようになっている。

これらのプラットフォームは、空間作成だけではなく、様々な物理法則を簡単に再現できるように工夫されており、コンテンツクリエーターは、重力、衝突、光源、光反射など物理法則をいちいちプログラミングしなくても良いようになっている。たとえば、柔らかい光源を目線に持ってくることで、夕方の世界を作り上げることができるし、重力を6分の1にすることで月面をシミュレートできる。基本的には、視覚的に影響の或るものは、ほぼすべてこれらのプラットフォームで実に正確に再現することができるようになっている。しかしながら、3D空間ではサウンドも非常に重要となり、視覚と聴覚がマッチングして初めて実世界に近い体験ができるため、HTCでは3D空間の音を再現するための3DSP Audio SDKを提供するに至った。

2.2 3DSP Audio SDKの機能

3DSP Audio SDKには大きく次の6つの特徴的な機能があり、以下に順次説明する。

2.2.1 高次アンビソニックス(HOA)

アンビソニックスとは、XRや360°ビデオなど新しい体験型コンテンツの普及にともないサラウンドにも新たな表現力が求められ、開発された技術である。一般的なステレオ再生の場合、リスナーの前面から再生される平面的な音場であるが、5.1chや7.1chのサラウンドになると、リスナーの前後左右180°取り巻くようになる。更に”Dolby Atomos” や “Auro-3D” と言った3Dサウンドでは、高さを加えた半球面のドーム型の音場となる。アンビソニックスでは、更に拡張した360°全球面サラウンドサウンド技術となり、リスナーを全て包み込む空間サウンドをシミュレートする技術である。

アンビソニックス次数と呼ばれる球面調和関数の次数は、音の方向のリアルな描写に大きな影響を与え、一般的には3次アンビソニックスが、空間サウンドのより優れた指向性を生成するため、空間オーディオモデルでよく使用される。

高次を使用する場合、アンビソニックプロセスにはより高い計算能力が必要になるが、3DSPアンビソニックスプロセスは、特許出願中の技術で1次アンビソニックスと同等の計算能力で実現可能となっており、計算量を抑えることにより、あらゆる環境で利用できるようになっている。

2.2.2 頭部伝達関数(HRTF)

頭部伝達関数は、空間音響モデルを表す関数である。例えば、真正面の音源からの左右の耳におけるインパルス応答は同時であるが、左右どちらかに寄った音源からの左右の耳のインパルス応答には時間と振幅に差が生じる。3D空間での音源の場合、左右だけではなく、また耳の形状などでも応答は違ってくる。人間の耳に伝わる音源からのオーディオ体験を変える可能性のある要因は非常に多くあり、単一の計算で現象をシミュレートするには複雑すぎるため、すべての音響応答がモデル化されたデータベースが作成されている。

3DSP Audio SDKには、何千もの水平方向と垂直方向の両方の細かい方向セグメントで測定されたHRTF(頭部伝達関数)データベースを使用している。また測定されていないHRTF方向の場合、最も近いと思われるデータから生成されるようになっている。環境、測定機器、その他の要因によって引き起こされるHRTFに影響を与える品質の劣化も、このデータベースにより改善され再現されている。

2.2.3 ルームオーディオ

ルームオーディオは、初期反射、後期残響、周囲音など、部屋の音をシミュレートする技術である。部屋の壁の材質(木、コンクリート、ガラスなど)は、音の伝達において、初期段階での音の反射に影響を与えその後、音はより多くの反射に遭遇し、背景音と混ざり合い、最終的に遅い残響に変わりる。さらに、特に人間が部屋の隅にいるような場合は、バイノーラル音響をシミュレートする必要がありまた、冷蔵庫やエアコンのような低雑音に関しても、ルームオーディオ技術でシミュレートしている。

例えば、天井がコンクリートでできており、前後と左の壁は木製、右の壁にはカーペット状の壁紙が施され、冷蔵庫の雑音が環境音として出ているような複雑な場合でも、パラメータを変更するだけで再現できるようなインターフェースを提供している。

また、音はアナログ的に放射線状に広がりをみせるが、全てを方向をシミュレーションすることは難しく高度な計算が必要となってくる。そこで、あらゆるシミュレーション環境で利用できるようにオーディオレイキャスト(サウンドのベクトル数)を自由に設定できるようにしており、音の方向を例えば10本のベクトルで、あるいは20本のベクトルで計算するように設定できる。多くのレイキャストを設定すると、高度なシミュレーション環境が必要となってくる。

2.2.4 Hi-Resオーディオ

VIVEのVR機器ほぼ全機種においてHi-Res音源の再生とアナログ回路を装備しており、JAS認定のHi-Res機器となっている。3DSP Audio SDKでも、Unityの最大サンプルレートである24bit、96000Hz、PCM音源までサポートしているため、音源に忠実なサウンド再生能力に加え、これまで紹介した高次アンビソニックス(HOA)、頭部伝達関数 (HRTF)、ルームオーディオなどにより、現実世界の音を可能な限り再現できるようにしている。

2.2.5 伝搬減衰

音源からの音波の伝播は、距離に応じて変化する。 点音源の場合の音響エネルギーは距離の2乗に反比例し、線音源では距離に反比例するという法則を3DSP Audio SDKでもシミュレートしているが、音の減衰は周波数によって異なっており、音源がリスナーからさまざまな距離である場合の応答を記録することにより、実世界の効果を提供している。

2.2.6 オクルージョン効果

オクルージョン効果とは、たとえば音源がドアの向こう側にあるような場合、ドアが閉まっている時にはドアの材質により音が漏れ聞こえ、ドアが開いた時には開いた幅により音がクリアに聞こえてくるような効果のことを指す。3DSP Audio SDKでは、音波が障害物にぶつかったときの現象を再現するために、オクルージョン効果を採用しており、障害物の材質や厚さなどの特性によって、結果として音の影響を計算する。

また、障害物によって、音源と人間の頭の間の音の伝達が非対称に遮られる場合もある。よりリアルなシミュレーションのために、両耳で異なる音を得られるよう、両耳オクルージョンの機能を実装している。例えば、片側開きのスライド式ドアの前に人が立っている場合、最初片側の耳から音が聞こえ始め、全部開いた時点で両耳ともに聞こえる。これを再現したものである。オクルージョンには2種類存在し、ジオメトリック・オクルージョンとレイキャスト・オクルージョンがある。

ジオメトリック・オクルージョン

障害物の位置、回転、サイズ、形状などの幾何学的要因に応じて、オクルージョンサウンド効果を表現するような高精度な分析幾何学的手法を採用しており、ジオメトリック・オクルージョンと呼ばれる。これは、UnityやUnreal Engineのような他のプラットフォームの物理エンジンを一切使用せずに、効率的に実行することができるようにしている。

レイキャスト・オクルージョン

サウンドオクルージョンをシミュレートするために、ライントレーシングに基づく技術を使用している。音源が放射されている間に、いくつの光線が遮蔽されたかをカウントし、それによりオクルージョン効果を計算している。これはUnityやUnreal Engineなどのプラットフォームの物理エンジンを利用しているため、プラットフォームがサポートしている限り、ジオメトリの形状は非常に柔軟に対応できるようになっている。

3. まとめ

HTCの提供する3DSP Audio SDKを利用することにより、プログラミングを一切行わなくても、誰でも簡単に音の空間伝搬をシミュレーションしてくれ、より現実に近い環境を創造することが簡単にできるようになった。今までは、前面の左右にスピーカーを配置したステレオシステムや、あるいは前後4方向にスピーカーを配置した静的な空間で、オーケストラが奏でる美しい音を楽しんでいたが、例えばウィーンの路上で弦カルを演奏している人たちの周りを歩きながら、4人のそれぞれの音源が耳に伝わってくる違いを楽しむという、今までは不可能だった新しい音楽の楽しみがメタバースによって実現することが可能となってくる。

HTCでは見たものを可能な限り手を加えることなくそのままの映像に残し、原音を可能な限り忠実に再生することに拘ってきた。この映像や音への拘りにより、HTCのVR機器はほぼすべての機種でJAS認定のハイレゾ再生の品質を確保しており、ハードやSDKなどのソフトの面から、コンテンツへの多様性をサポートしてきた。音のエキスパート達によるウィーン路上での弦楽四重奏を、近い将来には、新しいメタバースの中で、楽しみたいものであるし、音の世界での新しいビジネスとして確立してほしいと願う。

執筆者プロフィール

児島 全克(こじま まさかつ)
1985年よりモトローラ社にて通信機器開発に従事。世界初のJava、SUPL、UWB 搭載携帯、日本初の3Gスマートフォンを発表。2006年よりHTC NIPPONにて、日本初Androidフォンなどをリリース。2017年同社社長に就任。現在、5G・XR製品戦略を展開。著書は、スマホ時代のモバイル・ビジネスとプラットフォーム戦略(創成社)、クラウド時代のヘルスケアモニタリングシステム構築と応用(シーエムシー出版)。博士(技術経営)。