unity作为一个游戏引擎他的插件是相当丰富的 最近在学习的过程中发现了语音识别这个插件发现相当好用于是就将其分享出来。
step1:首先先导入UnityEngine.Windows.Speech
step2:其次创建出一个公共变量 public ConfidenceLevel m_ConfidencelLevel = ConfidenceLevel.Medium;(这边是设置语音识别的灵敏度分四个级别强度依次降低排序为 High Low Rejected Medium)
step3:创建一个数组public string[ ] keyWordArr;用来存放我们所需要唤醒的关键词
step4: 定义出一个语音识别器 private PhraseRecognizer m_phraseRecognizer;
step5: 在awak 方法中进行语音识别器的唤醒
private void awake()
{
//进行识别方法的注册
m_PhraseRecognizer = new keywordRecognizer(keyWordArr, m_ConfidencelLevel);
m_PhraseRecognizer.OnPhraseRecognized += M_PhraseRecognizer_OnPhraseRecognized;
m_PhraseRecognizer.Start(); //开启语音识别
}
private void OnDestroy()
{
m_PhraseRecognizer.Dispose(); //关闭语音识别
}
private void M_PhraseRecognizer_OnPhraseRecognized(PhraseRecognizedEventArgs args)
{
//这里就是进行语音识别的相应的功能
if (args.text == "关闭背景音乐")
{
Debug.Log("关闭了背景音乐");
}
}