语音表达是人类最直接的表达方式之一,语音输入不像手势识别的AirTap操作久了会让用户觉得手部酸痛。对于HoloLens,语音输入是三大基本输入方式之一,广泛地运用在各种交互场所上。Hololens上语音输入有三种形式,分别是:
* 语音命令 Voice Command
* 听写 Diction
* 语法识别 Grammar Recognizer
本文主要介绍语音命令,对于HoloLens的交互使用来说,语音命令也是最经常被使用的语音输入形式。
语音命令 Voice Command
使用语音命令,首先的确保在应用中已经开启 microphone 的功能特性,具体设置是 Edit -> Project Settings -> Player -> Settings for Windows Store -> Publishing Settings -> Capabilities 下找到 microphone 特性并勾上。
对于语音命令的使用,开发者通过声明 Dictionary
**KeywordRecognizer.cs**
using UnityEngine.Windows.Speech;
using System.Collections.Generic;
using System.Linq;
public class KeywordManager : MonoBehavior
{
KeywordRecognizer keywordRecognizer;
Dictionary<string, System.Action> keywords = new Dictionary<string, System.Action>();
void Start()
{
//初始化关键词
keywords.Add("activate", () =>
{
// 想执行的行为
});
keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());
keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
//开始识别
keywordRecognizer.Start();
}
private void KeywordRecognizer_OnPhraseRecognized(PhraseRecognizedEventArgs args)
{
System.Action keywordAction;
//