搜索
您的当前位置:首页正文

语音识别的引入

来源:二三娱乐

使用百度的SDK来进行语音识别,链接:

(非利益相关)

导入进Unity3d中,下面我们分析如何通过结果分支控制交互反馈。

这个包封装了百度的语音识别和语音合成,在此不作结构分析,打开AsrDemo.cs脚本,找到OnClickStopButton()并修改成如下所示:

public void OnClickStopButton()

    {

        StartButton.gameObject.SetActive(false);

        StopButton.gameObject.SetActive(false);

        DescriptionText.text = "处理中";

        Microphone.End(null);

        Debug.Log(Message);

        var data = Asr.ConvertAudioClipToPCM16(_clipRecord);

        StartCoroutine(_asr.Recognize(data, s =>

        {

            logic(s);

            StartButton.gameObject.SetActive(true);

        }));

    }

我们在协程中添加一个方法logic(s);这个方法如下图:

名称随意

实际上,s.result[0]在协程中记录了从云端拿到的识别结果,我们只要对这个结果做逻辑判断即可分情况调用不同方法。

下图是Start部分:

Top