后浪云百度小程序教程:VoiceRecognizer

  • VoiceRecognizer
    • 示例
      • 图片示例
      • 代码示例
    • Bug & Tip

    VoiceRecognizer

    解释:语音识别。

    Web 态说明:受宿主环境限制,Web 态暂不支持 AI 能力相关接口。调用 swan.ai.getVoiceRecognizer 时,Web 态会做 打开百度 App 对应小程序页面 的降级处理。

    示例

    在开发者工具中打开

    在开发者工具中打开

    在 WEB IDE 中打开

    扫码体验

    代码示例

    后浪云百度小程序教程:VoiceRecognizer插图

    请使用百度APP扫码

    图片示例

    后浪云百度小程序教程:VoiceRecognizer插图1

    后浪云百度小程序教程:VoiceRecognizer插图2

    后浪云百度小程序教程:VoiceRecognizer插图3

    代码示例

    • JS
     
     
     
    1. // AI系列的 API 有宿主使用限制,只可在百度 App 中使用,建议使用时加一层判断防止代码报未知错误
    2. let host = swan.getSystemInfoSync().host;
    3. if (host === 'baiduboxapp') {
    4. const voiceRecognizer = swan.ai.getVoiceRecognizer();
    5. voiceRecognizer.onStart(() => {
    6. console.log('voice start');
    7. });
    8. voiceRecognizer.onRecognize(res => {
    9. console.log('voice recognize', res);
    10. });
    11. voiceRecognizer.onFinish(res => {
    12. console.log('voice end', res);
    13. });
    14. voiceRecognizer.onError(err => {
    15. console.log('voice error', err);
    16. });
    17. const options = {
    18. mode: 'dnn',
    19. longSpeech: false
    20. };
    21. voiceRecognizer.start(options);
    22. }
    23. else {
    24. swan.showToast({
    25. title: '此api目前仅可在百度App上使用',
    26. icon: 'none'
    27. });
    28. }

    Bug & Tip

    • Tip:长语音时,mode参数不生效,默认为dnn(自动听音)。 此模式下会自动检测,不断调用onRecognize返回中间识别结果,检测到静音(大概 5s)会自动断句,断句后调用onFnish返回一句话的识别结果并添加标点符号。在调用stop后,才正式结束识别;

    • Tip:自动听音 & 短语音:开始识别后,8s 内没有检测到声音,则结束识别并触发onError;在说话后,如 5s 内未检测到声音,判定为静音,会自动结束识别,返回识别结果。如说话超过 60s,触发onError

    • Tip:手动听音 & 短语音:开始识别后,8s 内没有检测到声音,则结束识别并触发onError;如说话超过 60s,触发onError;如时间未超过 60s,则可以一直记录语音,直到调用stop,在onFinish中返回识别结果。

    THE END