Warning: count(): Parameter must be an array or an object that implements Countable in /home/psychic-vr-lab/www/psychic-vr-lab.com/blog/wp-includes/post-template.php on line 284

Warning: count(): Parameter must be an array or an object that implements Countable in /home/psychic-vr-lab/www/psychic-vr-lab.com/blog/wp-includes/post-template.php on line 284

Warning: count(): Parameter must be an array or an object that implements Countable in /home/psychic-vr-lab/www/psychic-vr-lab.com/blog/wp-includes/post-template.php on line 284

Warning: count(): Parameter must be an array or an object that implements Countable in /home/psychic-vr-lab/www/psychic-vr-lab.com/blog/wp-includes/post-template.php on line 284
開発入門 > Unity > Unityシーン中でマイクでのリアルタイム録音をストリーム再生する

Unityシーン中でマイクでのリアルタイム録音をストリーム再生する

Oculus+ヘッドフォンを利用している利用者などに、外部から入力したマイクでのアナウンス音声をリアルタイムにシーン中でストリーミング再生するシナリオを実現します。

Mic Controlアセットを使って実現しましょう。

mic1

アセットをダウンロードし、インポートします。

空のGameObjectを作成し、「Assets」-「MicControl」-「Javascript version(Original)」内にあるMicControlスクリプトを先ほど作成した空のGameObjectにアタッチします。
Muteプロパティのチェックを外します。

mic2

再生してみましょう。

マイク(パソコンにつながっている物理的なマイク)から入力した音声がスピーカーから聞こえるはずです。ハウリングするのでイヤホンをつけて試してみましょう。

さて、ここでMicControlを追加したオブジェクト自体はスピーカーのマークが表示され、シーン内の場所を移動することができます。ただ、残念なことにこのMicControlは3Dオーディオには対応していないために、音源の場所を変更しても左右のスピーカーから聞こえる音は変化しません。

Mic Controlの作者であるAlzheimer StudioのMark Duistersに3Dオーディオオプションつけてよとメールしてみたところ、快くOKのお返事頂きました。時間ができたら実装してアップデートしていただけるとのこと。素晴らしい。

 

ちなみに、MarkはJS版の開発を行っていて、C#版はコミュニティのメンバーが移植してくれているらしいです。

 

Mic Controlでは、Exampleも同梱されてて、そこでは、マイク入力音声の大きさを取得するサンプルが紹介されています。。

JavaScriptコードを下記のように作成し、例えばCUBEにアタッチすると声の大きさに合わせてCUBEのサイズが変化します。

function Update () {
	//scales the gameObject heigt based on input stream gathered from MicControl.loudness
	transform.localScale=Vector3(1,MicControl.loudness,1);
}

 

追記 2014/10/30

Markにメールして10時間後に3Dオーディオオプション実装したよ!と返信もらいました。早い!!
今週末にはAsset Storeに反映される予定だそうです。チュートリアルビデオはもう作成されたようです。

 

 

カテゴリー: Unity タグ: ,

HOME / Coporate Site/ Careers

© Copyright 2018 STYLY..