本文由 WxBit 站長(zhǎng)原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處卧须。內(nèi)容僅適用于 App Inventor 2 WxBit?漢化版
WxBit?漢化版在周末悄悄發(fā)布一個(gè)里程碑更新另绩,增加了“人工智能”分類,其中的百度語(yǔ)音識(shí)別花嘶、合成與喚醒笋籽,給 App Inventor?應(yīng)用增加了嘴巴和耳朵。有別于“多媒體”分類中的語(yǔ)音合成與識(shí)別組件椭员,百度語(yǔ)音交互組件不要求手機(jī)安裝第三方語(yǔ)音識(shí)別應(yīng)用與合成引擎车海,通用性更好。本站獨(dú)有的語(yǔ)音交互組件隘击,讓我們輕松實(shí)現(xiàn)屬于自己的語(yǔ)音助理侍芝。
在開(kāi)始介紹語(yǔ)音交互組件前,先要介紹自定義“應(yīng)用包名(Package Name)”埋同,在應(yīng)用首屏(Screen1)的設(shè)計(jì)視圖屬性中設(shè)置竭贩。這個(gè)功能雖然已經(jīng)上線有一段時(shí)間,但是應(yīng)該很多同學(xué)沒(méi)有注意莺禁,也沒(méi)有用過(guò)留量。應(yīng)用包名,在 App Inventor 中等同于應(yīng)用ID哟冬,是應(yīng)用的唯一標(biāo)識(shí)楼熄,類似人的身份證號(hào)碼。包名中只能包含數(shù)字浩峡、字母可岂、點(diǎn)和下劃線,點(diǎn)為分隔符翰灾,將包名分割為多個(gè)部分缕粹,每部分必須以字母開(kāi)頭稚茅。例如:com.wxbit.appinventor.aicompanion3,這是?ai伴侶的包名平斩。_com.abc亚享、com.123、.com.abc绘面,這些都是錯(cuò)誤格式的包名欺税。
如果不設(shè)置包名,系統(tǒng)生成APK的包名一般是這樣:wxbit.ai_Q(32位唯一標(biāo)識(shí)).項(xiàng)目名稱揭璃,例如:wxbit.ai_QCCC18AB0D04C3B7CFD21E1D67A60AF0F.test晚凿。如果設(shè)置應(yīng)用包名,系統(tǒng)默認(rèn)會(huì)在前面加上“wxbit.”前綴瘦馍。比如填寫appinventor歼秽,則最后生成APK的包名就是:wxbit.appinventor。
如果需要使用離線合成和語(yǔ)音喚醒情组,正確設(shè)置應(yīng)用包名是必須的步驟燥筷。
下面分別介紹百度語(yǔ)音交互3大組件:
一、百度語(yǔ)音識(shí)別
使用流式協(xié)議呻惕,能夠聽(tīng)用戶說(shuō)荆责,即時(shí)處理獲得結(jié)果滥比。不需要像Rest API亚脆,上傳整個(gè)錄音文件才獲得結(jié)果。即時(shí)響應(yīng)盲泛,能夠給用戶更好的使用體驗(yàn)濒持。
識(shí)別模式提供了多種配置,適用于不同的場(chǎng)景寺滚。
詳細(xì)說(shuō)明請(qǐng)參考文檔:http://ai.baidu.com/docs#/ASR-Android-SDK/3557153c
二柑营、百度語(yǔ)音合成
不同于Rest API下載完整個(gè)音頻文件再播放,在線模式能夠一邊下載一邊播放村视。百度語(yǔ)音合成不支持“純離線”模式官套,首先都會(huì)嘗試聯(lián)網(wǎng),如果選擇的不是“純?cè)诰€模式”蚁孔,聯(lián)網(wǎng)超時(shí)后會(huì)使用內(nèi)置的離線引擎合成語(yǔ)音奶赔。需要注意的是,第一次使用離線語(yǔ)音合成杠氢,一定需要聯(lián)網(wǎng)下載授權(quán)文件站刑。授權(quán)文件與 AppId、AppKey鼻百、SecretKey?和應(yīng)用包名相關(guān)绞旅,詳細(xì)配置本文最后再說(shuō)明摆尝。
語(yǔ)音合成功能概要
純?cè)诰€模式:也就是不使用離線引擎,生成的APK文件較小因悲,推薦使用堕汞。
WiFi在線,6秒超時(shí):連接 WiFi?時(shí)使用在線合成囤捻,如果 6 秒還未連接成功和連接的不是 WiFi?網(wǎng)絡(luò)臼朗,則使用離線合成。
WiFi與4G在線蝎土,6秒超時(shí):連接 WiFi?和 4G?網(wǎng)絡(luò)時(shí)使用在線合成视哑,如果 6 秒還未連接成功或使用的是其他網(wǎng)絡(luò),則使用離線合成誊涯。
WiFi與4G在線挡毅,1.2秒超時(shí):同上,連接超時(shí)時(shí)間為1.2秒暴构。
WiFi在線跪呈,1.2秒超時(shí):同“WiFi在線,6秒超時(shí)”取逾,連接超時(shí)時(shí)間為1.2秒耗绿。
詳細(xì)說(shuō)明請(qǐng)參考文檔:http://ai.baidu.com/docs#/TTS-Android-SDK/47c81acf
三、百度語(yǔ)音喚醒
此喚醒砾隅,并非點(diǎn)亮手機(jī)屏幕這個(gè)“喚醒”误阻。而是應(yīng)用聽(tīng)到用戶說(shuō)的特定關(guān)鍵詞,會(huì)觸發(fā)事件代碼塊晴埂。啟用后臺(tái)喚醒后究反,即使手機(jī)是鎖屏狀態(tài),也一樣可以觸發(fā)事件代碼塊儒洛。后臺(tái)喚醒功能精耐,會(huì)加速電量消耗,請(qǐng)謹(jǐn)慎使用琅锻。
系統(tǒng)內(nèi)置支持10個(gè)關(guān)鍵詞卦停,分別是:小寶同學(xué)、拍照恼蓬、播放惊完、暫停、上一首滚秩、下一首专执、增大音量、減小音量郁油、打開(kāi)電燈本股、關(guān)閉電燈攀痊。如果需要自定義喚醒詞,請(qǐng)到這里導(dǎo)出:http://ai.baidu.com/tech/speech/wake?拄显。導(dǎo)出的喚醒詞為WakeUp.bin苟径,上傳這個(gè)文件到項(xiàng)目的素材中即可。
在設(shè)計(jì)視圖或邏輯視圖中啟用語(yǔ)音喚醒功能躬审,當(dāng)用戶說(shuō)到喚醒詞棘街,“被語(yǔ)音喚醒”事件會(huì)被觸發(fā),在這個(gè)代碼塊中完成對(duì)用戶的回應(yīng)承边。
因?yàn)檎Z(yǔ)音喚醒遭殉,是離線識(shí)別,必須正確配置?AppId博助、AppKey险污、SecretKey?和應(yīng)用包名。如果只是為了測(cè)試富岳,可以留空以上三個(gè)參數(shù)蛔糯,應(yīng)用包名設(shè)置為:baidu。生成APK的應(yīng)用包名實(shí)際是 wxbit.baidu窖式,使用了本文作者配置的百度語(yǔ)音應(yīng)用蚁飒。
本文由 WxBit 站長(zhǎng)原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處萝喘。內(nèi)容僅適用于 App Inventor 2 WxBit?漢化版
下文介紹百度語(yǔ)音應(yīng)用的創(chuàng)建淮逻,如果你已經(jīng)有百度云服務(wù)帳號(hào),直接進(jìn)入控制臺(tái)創(chuàng)建應(yīng)用蜒灰。
1弦蹂、注冊(cè)百度云帳號(hào)
打開(kāi)https://cloud.baidu.com肩碟,點(diǎn)擊“管理控制臺(tái)”强窖,進(jìn)入登錄界面。如果沒(méi)有百度帳號(hào)削祈,請(qǐng)先注冊(cè)一個(gè)翅溺,具體步驟這里不做贅述。注冊(cè)完百度帳號(hào)髓抑,回到這里注冊(cè)百度云帳號(hào)咙崎。
第一次登錄百度云需要補(bǔ)充些信息,然后進(jìn)入控制臺(tái)吨拍。
2褪猛、創(chuàng)建語(yǔ)音交互應(yīng)用
從控制臺(tái)進(jìn)入“語(yǔ)音識(shí)別”創(chuàng)建應(yīng)用,并選擇“Android”羹饰,然后填寫ai項(xiàng)目首屏設(shè)置的包名伊滋,加上“wxbit.”前綴碳却。比如ai項(xiàng)目應(yīng)用包名設(shè)置的是?com.appinventor.project,在這里應(yīng)該填寫:wxbit.com.appinventor.project 笑旺。
3昼浦、獲取?AppId、AppKey筒主、SecretKey
填寫好應(yīng)用包名與百度語(yǔ)音應(yīng)用的參數(shù)关噪,就可以使用百度語(yǔ)音組件啦。
這里有個(gè)使用百度語(yǔ)音組件實(shí)現(xiàn)的演示應(yīng)用乌妙,供大家測(cè)試:語(yǔ)音交互功能演示.apk