【问题标题】:Unity doesn't work with Microsoft cognitive SpeechToText iOS SDKUnity 不适用于 Microsoft 认知 SpeechToText iOS SDK
【发布时间】:2016-07-10 02:45:43
【问题描述】:

我正在使用 Unity 5.3 和最新的 MS STT iOS SDK。如果我设置 UnitySetAudioSessionActive(1),MS STT 会在我第二次调用语音识别时给我一个错误状态 - SpeechClientStatus_MicrophoneUnavailable。

我不得不调用 UnitySetAudioSessionActive(1) 的原因是,在我使用 MS SpeechToText 之后,我的 IOS 应用程序无法正常播放音频剪辑。这是我发现我可以再次听到音频剪辑的唯一方法。

【问题讨论】:

    标签: ios unity3d speech-to-text avaudiosession microsoft-cognitive


    【解决方案1】:

    我已通过以下 2 个步骤解决了问题 -

    在启动麦克风和识别的方法中,在调用 startMicAndRecognition 之前添加这些行

    AVAudioSession *  _aSession= [AVAudioSession sharedInstance];   
    [_aSession setActive:NO withOptions:AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation error:nil];
    [_aSession setActive:YES error:nil];
    MicrophoneRecognitionClient* micClient =  [SpeechRecognitionServiceFactory createMicrophoneClient:(SpeechRecognitionMode_ShortPhrase)
                                                                                     withLanguage:(self.defaultLocale)
                                                                                    withPrimaryKey:(self.subscriptionKey)
                                                                                    withSecondaryKey:(self.subscriptionKey)
                                                                                    withProtocol:(self)];
    
    [micClient startMicAndRecognition];
    

    在你得到最终消息的方法中做这样的事情 -

    [micClient endMicAndRecognition];
    UnitySetAudioSessionActive(1);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-01
      • 2020-09-29
      • 1970-01-01
      • 1970-01-01
      • 2016-12-20
      • 1970-01-01
      • 2016-07-07
      相关资源
      最近更新 更多