我在Ionic2框架,科爾多瓦插件尋找語音識別。語音識別(語音到文本 - STT科爾多瓦插件)
如果可以實現,您能否輕輕提供一個代碼示例(.html和.ts)?
我發現了這個,但是用於Ionic1:http://devgirl.org/2016/01/08/speaking-with-cordova/,我無法修改Ionic2的代碼。
我真的很感謝你能提供的任何幫助,並且對我的小英文很抱歉。
我在Ionic2框架,科爾多瓦插件尋找語音識別。語音識別(語音到文本 - STT科爾多瓦插件)
如果可以實現,您能否輕輕提供一個代碼示例(.html和.ts)?
我發現了這個,但是用於Ionic1:http://devgirl.org/2016/01/08/speaking-with-cordova/,我無法修改Ionic2的代碼。
我真的很感謝你能提供的任何幫助,並且對我的小英文很抱歉。
來源:https://github.com/macdonst/SpeechRecognitionPlugin。
使用命令行,這個插件添加到您的Ionic2項目:
cd Your_Project_Root_Folder
由於iOS的10它是強制性的,以在info.plist中添加一個NSMicrophoneUsageDescription
訪問麥克風。
要添加此條目,您可以在插件安裝時通過MICROPHONE_USAGE_DESCRIPTION
變量。
ionic plugin add https://github.com/macdonst/SpeechRecognitionPlugin --variable MICROPHONE_USAGE_DESCRIPTION="your usage message"
在iOS 10和更大的,它使用的天然SFSpeechRecognizer(同Siri的)。 在iOS 9及更早版本中,它使用iSpeech SDK,需要一個API密鑰,在https://www.ispeech.org/上獲得一個,它是免費的。爲了提供鍵,添加此偏好的config.xml裏
<preference name="apiKey" value="yourApiKeyHere" />
你的.ts的開頭添加聲明文件,只需導入後,類定義之前:
declare const SpeechRecognition: any;
然後,在你的類:
recognition: any;
constructor() {}
SpeechToText() {
this.platform.ready().then(() => {
this.recognition = new SpeechRecognition();
this.recognition.lang = 'en-US';
this.recognition.onnomatch = (event => {
console.log('No match found.');
});
this.recognition.onerror = (event => {
console.log('Error happens.');
});
this.recognition.onresult = (event => {
if (event.results.length > 0) {
console.log('Output STT: ', event.results[0][0].transcript);
}
});
this.recognition.start();
});
}
iSpeech支持的語言有: 英語(加拿大)(EN -CA)英文(美國)(en-US)西班牙文(西班牙文)(es-ES)法文(法文)(fr-FR)意大利文(意大利文)(it-IT)波蘭文(波蘭文)(pl-PL)葡萄牙文(葡萄牙)(pt-PT)
ps:對於iOS 10錯誤kAFAssistantErrorDomain或者如果您必須等待結果,請檢查this。
完成!
編輯:測試的離子V3.0.1(2017年4月6日)和正常工作:)
看看這個鏈接 - HTTPS: //github.com/gandhirajan/Cordova_Speech_Recognizer – Gandhi
這是針對離子:( )如何將代碼轉換爲離子2? – mosca90
請理解,但這正是您面臨的問題嗎? – Gandhi