百度智能小程序 語音識(shí)別

2020-09-05 14:16 更新

VoiceRecognizer

解釋:語音識(shí)別

方法參數(shù)

Object object


object 參數(shù)說明

屬性名 類型 默認(rèn)值 必填 說明

mode

String

dnn

聽音模式,有效值 dnn/touch 。

longSpeech

Boolean

false

是否開啟長語音

context

String

input

語音識(shí)別所用的場(chǎng)景值,有效值見下表格。

mode 有效值如下

參數(shù)值 說明

dnn

自動(dòng)聽音,默認(rèn)值。

touch

手動(dòng)聽音(需要手動(dòng)調(diào)用 stop 方法才會(huì)停止語音識(shí)別)

context 有效值如下

參數(shù)值 說明

input

輸入法場(chǎng)景

search

搜索場(chǎng)景值

屬性說明

屬性名 說明
VoiceRecognizer.start 開始
VoiceRecognizer.stop 停止
VoiceRecognizer.cancel 取消
VoiceRecognizer.onStart 引擎準(zhǔn)備就緒
VoiceRecognizer.onRecognize 有識(shí)別結(jié)果返回
VoiceRecognizer.onFinish 識(shí)別完成
VoiceRecognizer.onError 識(shí)別遇到錯(cuò)誤

示例




圖片示例

代碼示例

// AI系列的api有宿主使用限制,只可在百度App中使用,建議使用時(shí)加一層判斷防止代碼報(bào)未知錯(cuò)誤
let host = swan.getSystemInfoSync().host;
if (host === 'baiduboxapp') {
    const voiceRecognizer = swan.ai.getVoiceRecognizer();
    voiceRecognizer.onStart(() => {
        console.log('voice start');
    });
    voiceRecognizer.onRecognize(res => {
        console.log('voice recognize', res);
    });
    voiceRecognizer.onFinish(res => {
        console.log('voice end', res);
    });
    voiceRecognizer.onError(err => {
        console.log('voice error', err);
    });
    const options = {
        mode: 'dnn',
        longSpeech: false
    };
    voiceRecognizer.start(options);
}
else {
    swan.showToast({
        title: '此api目前僅可在百度App上使用',
        icon: 'none'
    });
}

Bug & Tip

  • 長語音時(shí),mode參數(shù)不生效,默認(rèn)為dnn(自動(dòng)聽音)。 此模式下會(huì)自動(dòng)檢測(cè),不斷調(diào)用onRecognize返回中間識(shí)別結(jié)果,檢測(cè)到靜音(大概 5s)會(huì)自動(dòng)斷句,斷句后調(diào)用onFnish返回一句話的識(shí)別結(jié)果并添加標(biāo)點(diǎn)符號(hào)。在調(diào)用 stop后,才正式結(jié)束識(shí)別;
  • 自動(dòng)聽音&短語音:開始識(shí)別后,8s 內(nèi)沒有檢測(cè)到聲音,則結(jié)束識(shí)別并觸發(fā)onError;在說話后,如 5s 內(nèi)未檢測(cè)到聲音,判定為靜音,會(huì)自動(dòng)結(jié)束識(shí)別,返回識(shí)別結(jié)果。如說話超過 60s,觸發(fā)onError。
  • 手動(dòng)聽音&短語音:開始識(shí)別后,8s 內(nèi)沒有檢測(cè)到聲音,則結(jié)束識(shí)別并觸發(fā)onError;如說話超過 60s,觸發(fā)onError;如時(shí)間未超過 60s,則可以一直記錄語音,直到調(diào)用stop,在onFinish中返回識(shí)別結(jié)果。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)