Vuforia Studio HoloLens2備忘録：HoloLensの日本語ボイスコマンドを簡単作成

#はじめに

Vuforia Studioでは、HoloLens用のコンテンツを簡単に作成できる。さらには、日本語ボイスコマンドを簡単に追加できる。その例を備忘録としておく。

#前提

この備忘録は、Vuforia Studioで、ARコンテンツを独力で作成できる人が対象。
また、Vuforia Studioで作成した日本語ボイスコマンドの実行確認には、Microsoft Storeから__最新Vuforia Viewアプリ（バージョン 9.0.3 以上）__をインストール済のHoloLens2が必要。その HoloLens2の言語は、設定にて、日本語にしてあること。
HoloLens2は、WiFi経由で、Vuforia Studioで作成したARコンテンツの公開サーバー（Vuforia Experience Server）に接続ができることが必要。
HoloLnes用の動画再生(3Dビデオ)ウィジェットは、Vuforia Studio バージョン 8.5.14 以降で利用できる。
尚、[Vuforia Studio HoloLens2備忘録：HoloLensで動画再生AR、を簡単作成](https://qiita.com/tm181001/items/fd2709e5f51a4327b7b8) の続きとして、日本語ボイスコマンドの追加をしていく。


#日本語ボイスコマンドを追加して、試す

###日本語ボイスコマンドを追加する

Vuforia Studio 画面の右上隅の「・・・」の下のアイコンをクリックして、画面の右端に「データペイン」を表示する。そして、アプリケーションのイベントの緑の「＋」をクリックする。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/297270/94d4842e-b975-696b-91fb-cf2c1b406830.png)
「アプリケーションイベントを追加」のテキスト入力欄に、イベント名として、videoPlay と入力する。 音声コマンドを使用したイベントのトリガーを許可にチェックが入った状態で、追加ボタンをクリックする。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/297270/df8c8ef2-e85e-8e25-def6-89e1b89be5c3.png)
videoPlay イベントが追加されたことを確認したら、緑の「>」をクリックしていくつかの設定入力欄を表示する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/297270/67c0560b-9e5e-2619-3ae4-feb07b729319.png)

音声エイリアスがボイスコマンドになる。「再生」と入力する。音声応答は、ボイスコマンドを認識したときに自動音声で流れる返事になる。音声応答は必須ではないが、今回は試しなので「ビデオを再生します」と入力する。これで、HoloLens2 で AR再生中に「再生」と言うと、コマンドとして認識されて、「ビデオを再生します」という自動音声が流れることになる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/297270/e434c929-bbdb-9d58-d23f-9d7646258cf0.png)

###ボイスコマンドで実行する処理を追加する

今回は、ビデオウィジェットで動画を再生させる。そこで、videoPlay イベントをドラッグして、ビデオウィジェットにドロップして関連を追加する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/297270/cb6c6d3e-716a-2c83-b565-bb8af38a024f.png)
Play をチェックして選択し、バインドボタンをクリックする。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/297270/f37f1298-3834-7e5c-f4a6-ada4d04b95db.png)
これで、「再生」というと、動画を再生するようになる。

また、JS欄に JavaScriptのファンクションを指定して、JavaScriptを実行することもできる。その場合には、ファンクション名の最初に、__viewCtrl.__  の文字を忘れずに追加する必要があることに注意。例えば、nextStep(); でれば、イベントのJS欄には __viewCtrl.__nextStep(); と記載する。

###プレビューする

プレビューではボイスコマンドの認識はできないが、認識されたらどのように動作するかの確認はできる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/297270/6ac609eb-5eb9-844d-c20f-483fdb17b631.png)
プレビューに表示された videoPlay をクリックしてみる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/297270/8e4dab15-242d-675c-e9e1-7833c347be0d.png)
すると、画面下から「ビデオを再生します」と応答が表示され、また、ビデオウィジェットは再生状態になり、▶ の再生ボタンが一時停止ボタンに変わることを確認できる。尚、残念ながら、3Dビデオウィジェットはプレビューでの動画再生はできない。

###公開(パブリッシュ)して、HoloLens2 で試す

HoloLens2 で作成した日本語ボイスコマンドを試してみる。おぉ！ 「再生」と言うと、動画再生が始まった！
本投稿では、ボイスコマンドを実際に使っている様子を撮影したりしていないのでお見せできないが、HoloLens2 があり、Vuforia Studio でコンテンツ作成ができるのであれば、とにかく簡単に追加できるので、是非とも試してみて頂きたい。


#おわりに

Vuforia Studioで、HoloLens用のコンテンツに、簡単に日本語ボイスコマンドを追加できた。HoloLensはハンズフリーで AR表示を見ることができるのが良さの一つ。日本語ボイスコマンドを追加することで、AR の中での操作もハンズフリーにできるので、嬉しい。

#参考

・[ジェスチャーを使用した 3D アイウェアエクスペリエンスの作成とパブリッシュ @ Vuforia Studioヘルプ](http://support.ptc.com/help/vuforia/studio/ja/#page/Studio_Help_Center%2FBeginnerEyewear.html)

・[Vuforia Studio HoloLens2備忘録：HoloLensで動画再生AR、を簡単作成](https://qiita.com/tm181001/items/fd2709e5f51a4327b7b8)