【问题标题】:How to add voice commands to an HoloLens 2 App in Unity?如何在 Unity 中向 HoloLens 2 应用程序添加语音命令?
【发布时间】:2020-03-12 13:52:06
【问题描述】:

我们正在 Unity 中创建一个 UWP 应用。我们正在使用 MRTK。我想添加语音命令。如果我说“把立方体变成蓝色”,它应该把立方体本身变成蓝色。

这是我尝试过的: Create Empty -> 添加脚本 'Speech Input Source' -> 创建一个名为“Turn the cube blue”的关键字 -> 添加脚本 Speech Input Handler -> 将输入关键字“Turn the cube blue”并在 Response () 中获取我的 Cube,并使用我的 turn blue 脚本。

现在当我说我的关键字时,会弹出一个错误。

NullReferenceException: Object reference not set to an instance of an object 

当我打开那个错误时,它给了我这个代码:

InputManager.Instance.RaiseSpeechKeywordPhraseRecognized(this, 0, confidence, phraseDuration, phraseStartTime, semanticMeanings, text);

SpeechInputSource 脚本中。

【问题讨论】:

  • 您是否尝试过断点以查看 null 到底是什么?
  • 我已经完成了所有这些的 debug.log。我发现语义含义是空的
  • 来自相关support post的两个问题:场景中有InputManager吗?您是否在项目设置中启用了“麦克风”功能?
  • 麦克风已激活,我的相机上有脚本 MixedRealityInputModule。它不起作用。
  • 您能提供您的 MRTK 版本吗?是2.0之后吗?您的 SpeechInputSource 脚本是来自 MRTK 吗?截至今天,MRTK 的最新版本是 2.3,这是推荐的版本,它提供了新功能并修复了一些已知错误。

标签: unity3d speech-recognition keyword hololens


【解决方案1】:

在 MRTK2 之后的版本中,不再需要 SpeechInputSource。相反,必须将 Speech Command 的关键字添加到输入系统的 Speech 配置文件中。请查看 SpeechInputExample 场景(在 MRTK/Examples/Demos/Input/Scenes/Speech 中)以了解如何使用语音输入。

另外,official documentation 显示了更多关于最新版本 MRTK 中语音功能的信息,这将对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-03
    • 2021-05-08
    • 2010-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-21
    相关资源
    最近更新 更多