本發(fā)明涉及移動通信技術(shù)領(lǐng)域,特別涉及一種語音引擎切換方法、移動終端及服務(wù)器。
背景技術(shù):
語音助手是一類可以通過語音交互來實現(xiàn)查詢與操作的應(yīng)用程序,通過此類應(yīng)用程序,可以大大提高在不同場景下操作手機的便利性。語音引擎是語音助手類應(yīng)用程序的核心部分。通常,當(dāng)一種語音引擎失效或者語音服務(wù)出現(xiàn)異常的時候,整個語音助手就會出現(xiàn)異常,為了避免產(chǎn)生這種情況,需要多個語音引擎同時準(zhǔn)備好以應(yīng)對這種突發(fā)情況。
然而,目前的語音助手具有一定的局限性,通常只支持內(nèi)置,而不支持多語音引擎的切換,這樣就會導(dǎo)致當(dāng)內(nèi)置的語音引擎對應(yīng)的語音服務(wù)出現(xiàn)異常時,語音服務(wù)中斷或語音助手無法使用。
技術(shù)實現(xiàn)要素:
本發(fā)明提供了一種語音引擎切換方法、移動終端及服務(wù)器,其目的是為了解決目前的語音助手類應(yīng)用程序,當(dāng)內(nèi)置的語音引擎出現(xiàn)異常時,語音服務(wù)中斷或語音助手無法使用的問題。
一方面,本發(fā)明的實施例提供了一種語音引擎切換方法,該方法應(yīng)用于移動終端,該方法包括:
向服務(wù)器發(fā)送語音引擎切換請求;
接收服務(wù)器反饋的當(dāng)前可用的目標(biāo)語音引擎的指示信息;
根據(jù)指示信息,將移動終端的當(dāng)前語音引擎切換至目標(biāo)語音引擎,并使用目標(biāo)語音引擎進行語音服務(wù)。
另一方面,本發(fā)明的實施例還提供了一種語音引擎切換方法,應(yīng)用于服務(wù)器,該方法包括:
接收移動終端的語音引擎切換請求;
查詢當(dāng)前可用的語音引擎以及語音引擎的服務(wù)質(zhì)量參數(shù),服務(wù)質(zhì)量參數(shù)為依據(jù)語音引擎的當(dāng)前擁堵程度以及連接成功率所確定的數(shù)值;
根據(jù)服務(wù)質(zhì)量參數(shù),從當(dāng)前可用的語音引擎中選擇出一個目標(biāo)語音引擎;
將目標(biāo)語音引擎的指示信息發(fā)送給移動終端。
又一方面,本發(fā)明的實施例還提供了一種移動終端,包括:
請求發(fā)送模塊,用于向服務(wù)器發(fā)送語音引擎切換請求;
信息接收模塊,用于接收服務(wù)器反饋的當(dāng)前可用的目標(biāo)語音引擎的指示信息;
引擎切換模塊,用于根據(jù)指示信息,將移動終端的當(dāng)前語音引擎切換至目標(biāo)語音引擎,并使用目標(biāo)語音引擎進行語音服務(wù)。
又一方面,本發(fā)明的實施例還提供了一種服務(wù)器,包括:
請求接收模塊,用于接收移動終端的語音引擎切換請求;
參數(shù)查詢模塊,用于查詢當(dāng)前可用的語音引擎以及語音引擎的服務(wù)質(zhì)量參數(shù),服務(wù)質(zhì)量參數(shù)為依據(jù)語音引擎的當(dāng)前擁堵程度以及連接成功率所確定的數(shù)值;
引擎選擇模塊,用于根據(jù)服務(wù)質(zhì)量參數(shù),從當(dāng)前可用的語音引擎中選擇出一個目標(biāo)語音引擎;
信息發(fā)送模塊,用于將目標(biāo)語音引擎的指示信息發(fā)送給移動終端。
又一方面,本發(fā)明的實施例還提供了一種移動終端,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,處理器執(zhí)行計算機程序時實現(xiàn)上述語音引擎切換方法中的步驟。
再一方面,本發(fā)明的實施例還提供了一種計算機可讀存儲介質(zhì),計算機可讀存儲介質(zhì)上存儲有計算機程序,計算機程序被處理器執(zhí)行時實現(xiàn)上述語音引擎切換方法中的步驟。
再一方面,本發(fā)明的實施例還提供了一種服務(wù)器,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,計算機程序被處理器執(zhí)行時實現(xiàn)上述語音引擎切換方法中的步驟。
這樣,本發(fā)明提供的語音引擎切換方法、移動終端及服務(wù)器,當(dāng)移動終端的當(dāng)前語音引擎服務(wù)異常時,向服務(wù)器發(fā)送語音引擎切換請求,并接收服務(wù)器反饋的攜帶有目標(biāo)語音引擎的指示信息,根據(jù)指示信息切換至目標(biāo)語音引擎,使得移動終端當(dāng)前的語音服務(wù)得以繼續(xù)進行,從而避免因為語音引擎服務(wù)異常,導(dǎo)致語音服務(wù)中斷或語音助手類應(yīng)用程序無法使用的情況。
附圖說明
為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對本發(fā)明實施例的描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1表示本發(fā)明的一實施例提供的語音引擎切換方法的步驟流程圖;
圖2表示本發(fā)明的一實施例提供的移動終端的框圖;
圖3表示本發(fā)明的又一實施例提供的語音引擎切換方法的步驟流程圖;
圖4表示本發(fā)明的又一實施例提供的服務(wù)器的框圖;
圖5表示本發(fā)明的具體示例的步驟流程圖之一;
圖6表示本發(fā)明的具體示例的步驟流程圖之二;
圖7表示本發(fā)明的又一實施例提供的移動終端的框圖;
圖8表示本發(fā)明的又一實施例提供的移動終端的框圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
參見圖1,本發(fā)明的一實施例提供了一種語音引擎切換方法,應(yīng)用于移動終端,該方法包括:
步驟101,向服務(wù)器發(fā)送語音引擎切換請求。
其中,服務(wù)器可以是云端的服務(wù)器,服務(wù)器與移動終端的進行數(shù)據(jù)交互,接收移動終端的語音切換請求等。當(dāng)移動終端的語音引擎服務(wù)異常時,移動終端向服務(wù)器發(fā)送語音引擎切換請求。
步驟102,接收服務(wù)器反饋的當(dāng)前可用的目標(biāo)語音引擎的指示信息。
其中,服務(wù)器根據(jù)移動終端發(fā)送的語音引擎切換請求,查詢移動終端當(dāng)前可用的語音引擎,并將包含目標(biāo)語音引擎的指示信息反饋至移動終端,移動終端接收服務(wù)器反饋的信息,并獲取包含目標(biāo)語音引擎的指示信息。
步驟103,根據(jù)指示信息,將移動終端的當(dāng)前語音引擎切換至目標(biāo)語音引擎,并使用目標(biāo)語音引擎進行語音服務(wù)。
其中,根據(jù)服務(wù)器反饋的指示信息,確定目標(biāo)語音引擎,并將為移動終端的語音助手類應(yīng)用程序正在服務(wù)的當(dāng)前語音引擎,切換至目標(biāo)語音引擎,通過目標(biāo)語音引擎繼續(xù)進行語音服務(wù),避免服務(wù)中斷。
這樣,當(dāng)移動終端的當(dāng)前語音引擎服務(wù)異常時,向服務(wù)器發(fā)送語音引擎切換請求,并接收服務(wù)器反饋的攜帶有目標(biāo)語音引擎的指示信息,根據(jù)指示信息切換至目標(biāo)語音引擎,使得移動終端當(dāng)前的語音服務(wù)得以繼續(xù)進行,而不必因為語音引擎服務(wù)異常,導(dǎo)致語音服務(wù)中斷或語音助手類應(yīng)用程序無法使用。服務(wù)器端可設(shè)置多個為移動終端服務(wù)的語音引擎,當(dāng)需要切換時,為移動終端提供多項選擇,提升用戶的使用體驗。
優(yōu)選地,步驟101包括:
檢測到當(dāng)前語音引擎服務(wù)失敗時,向服務(wù)器發(fā)送語音引擎切換請求;
或者,
根據(jù)預(yù)設(shè)的切換頻率,向服務(wù)器發(fā)送語音引擎切換請求。
具體地,當(dāng)移動終端檢測到語音引擎服務(wù)失敗時,可向服務(wù)器發(fā)送音引擎切換請求,以便移動終端可及時切換新的語音引擎,避免語音服務(wù)中斷或語音助手類應(yīng)用程序無法使用。
或者移動終端可根據(jù)預(yù)設(shè)的切換頻率,定時向服務(wù)器發(fā)送語音引擎切換請求,定時切換語音引擎,以確保語音引擎處于正常工作狀態(tài),提高服務(wù)質(zhì)量。
優(yōu)選地,步驟103之前,該方法還包括:
判斷移動終端是否具有目標(biāo)語音引擎的數(shù)據(jù)包:
若判斷結(jié)果為否,則下載并安裝目標(biāo)語音引擎的數(shù)據(jù)包。
其中,當(dāng)確定目標(biāo)語音引擎之后,需判斷移動終端是否具有該引擎的數(shù)據(jù)包:若有,可直接使用目標(biāo)語音引擎進行語音服務(wù),比如實現(xiàn)語音識別,語音播報和語音內(nèi)容反饋的功能;若判斷結(jié)果為否,則下載并安裝目標(biāo)語音引擎的數(shù)據(jù)包。
優(yōu)選地,檢測到當(dāng)前語音引擎服務(wù)失敗時的步驟,包括:
接收到當(dāng)前語音引擎與當(dāng)前語音引擎的服務(wù)器連接失敗的消息或連接超時的消息。
其中,當(dāng)移動終端接收到當(dāng)前語音引擎與該引擎的服務(wù)器連接失敗,或者連接超時以及其他連接異常的消息時,確認(rèn)前語音引擎服務(wù)失敗,則及時向服務(wù)器發(fā)送語音引擎切換請求,避免影響用戶的正常使用。
本發(fā)明的上述實施例中,當(dāng)移動終端的當(dāng)前語音引擎服務(wù)異常時,向服務(wù)器發(fā)送語音引擎切換請求,并接收服務(wù)器反饋的攜帶有目標(biāo)語音引擎的指示信息,根據(jù)指示信息切換至目標(biāo)語音引擎,使得移動終端當(dāng)前的語音服務(wù)得以繼續(xù)進行,而不必因為語音引擎服務(wù)異常,導(dǎo)致語音服務(wù)中斷或語音助手類應(yīng)用程序無法使用。且移動終端可根據(jù)預(yù)設(shè)的切換頻率,自動向服務(wù)器發(fā)送語音引擎切換請求,定時切換語音引擎,以確保語音引擎處于正常工作狀態(tài),提高服務(wù)質(zhì)量。服務(wù)器端還可設(shè)置多個為移動終端服務(wù)的語音引擎,當(dāng)需要切換時,為移動終端提供多項選擇,提升用戶的使用體驗。本發(fā)明解決了目前的語音助手類應(yīng)用程序,當(dāng)語音引擎出現(xiàn)異常時,語音服務(wù)中斷或語音助手無法使用的問題。
參見圖2,本發(fā)明的一實施例提供了一種移動終端200,包括:
請求發(fā)送模塊201,用于向服務(wù)器發(fā)送語音引擎切換請求。
其中,服務(wù)器可以是云端的服務(wù)器,服務(wù)器與移動終端200的進行數(shù)據(jù)交互,接收移動終端200的語音切換請求等。當(dāng)移動終端200的語音引擎服務(wù)異常時,移動終端200向服務(wù)器發(fā)送語音引擎切換請求。
信息接收模塊202,用于接收服務(wù)器反饋的當(dāng)前可用的目標(biāo)語音引擎的指示信息。
其中,服務(wù)器根據(jù)移動終端200發(fā)送的語音引擎切換請求,查詢移動終端200當(dāng)前可用的語音引擎,并將包含目標(biāo)語音引擎的指示信息反饋至移動終端200,移動終端200接收服務(wù)器反饋的信息,并獲取包含目標(biāo)語音引擎的指示信息。
引擎切換模塊203,用于根據(jù)指示信息,將移動終端200的當(dāng)前語音引擎切換至目標(biāo)語音引擎,并使用目標(biāo)語音引擎進行語音服務(wù)。
其中,根據(jù)服務(wù)器反饋的指示信息,確定目標(biāo)語音引擎,并將為移動終端200的語音助手類應(yīng)用程序正在服務(wù)的當(dāng)前語音引擎,切換至目標(biāo)語音引擎,通過目標(biāo)語音引擎繼續(xù)進行語音服務(wù),避免服務(wù)中斷。
可選地,請求發(fā)送模塊201包括:
第一發(fā)送子模塊,用于檢測到當(dāng)前語音引擎服務(wù)失敗時,向服務(wù)器發(fā)送語音引擎切換請求;
或者,
第二發(fā)送子模塊,用于根據(jù)預(yù)設(shè)的切換頻率,向服務(wù)器發(fā)送語音引擎切換請求。
可選地,移動終端200還包括:
判斷模塊,用于判斷移動終端200是否具有目標(biāo)語音引擎的數(shù)據(jù)包:
若判斷結(jié)果為否,則下載并安裝目標(biāo)語音引擎的數(shù)據(jù)包。
可選地,第一發(fā)送子模塊用于:
接收到當(dāng)前語音引擎與當(dāng)前語音引擎的服務(wù)器連接失敗的消息或連接超時的消息。
本發(fā)明的上述實施例中,當(dāng)移動終端200的當(dāng)前語音引擎服務(wù)異常時,向服務(wù)器發(fā)送語音引擎切換請求,并接收服務(wù)器反饋的攜帶有目標(biāo)語音引擎的指示信息,根據(jù)指示信息切換至目標(biāo)語音引擎,使得移動終端200當(dāng)前的語音服務(wù)得以繼續(xù)進行,而不必因為語音引擎服務(wù)異常,導(dǎo)致語音服務(wù)中斷或語音助手類應(yīng)用程序無法使用。且移動終端200可根據(jù)預(yù)設(shè)的切換頻率,自動向服務(wù)器發(fā)送語音引擎切換請求,定時切換語音引擎,以確保語音引擎處于正常工作狀態(tài),提高服務(wù)質(zhì)量。服務(wù)器端還可設(shè)置多個為移動終端200服務(wù)的語音引擎,當(dāng)需要切換時,為移動終端200提供多項選擇,提升用戶的使用體驗。
參見圖3,本發(fā)明的又一實施例提供了一種語音引擎切換方法,應(yīng)用于服務(wù)器,包括:
步驟301,接收移動終端的語音引擎切換請求。
其中,服務(wù)器可以是云端的服務(wù)器,服務(wù)器與移動終端的進行數(shù)據(jù)交互,接收移動終端的語音切換請求等。
步驟302,查詢當(dāng)前可用的語音引擎以及語音引擎的服務(wù)質(zhì)量參數(shù),服務(wù)質(zhì)量參數(shù)為依據(jù)語音引擎的當(dāng)前擁堵程度以及連接成功率所確定的數(shù)值。
其中,服務(wù)器根據(jù)移動終端發(fā)送的語音引擎切換請求,查詢當(dāng)前可用的語音引擎,以及查詢當(dāng)前可用的語音引擎的服務(wù)質(zhì)量參數(shù),服務(wù)質(zhì)量參數(shù)為評價語音引擎當(dāng)前可提供的服務(wù)質(zhì)量的參考參數(shù),至少依據(jù)語音引擎的當(dāng)前擁堵程度以及連接成功率來確定。通常情況下,擁堵程度以及連接成功率對語音引擎的服務(wù)質(zhì)量影響較大。
步驟303,根據(jù)服務(wù)質(zhì)量參數(shù),從當(dāng)前可用的語音引擎中選擇出一個目標(biāo)語音引擎。
其中,可選擇服務(wù)質(zhì)量參數(shù)最優(yōu)的語音引擎作為目標(biāo)語音引擎,發(fā)送給移動終端。
步驟304,將目標(biāo)語音引擎的指示信息發(fā)送給移動終端。
其中,將包含目標(biāo)語音引擎的指示信息反饋至移動終端,使移動終端接收服務(wù)器反饋的信息,并根據(jù)指示信息切換語音引擎。
優(yōu)選地,連接成功率為語音引擎與語音引擎的服務(wù)器之間的連接成功率;
服務(wù)質(zhì)量參數(shù)為根據(jù)預(yù)設(shè)的權(quán)值對當(dāng)前擁堵程度以及連接成功率進行加權(quán)求和得到的綜合權(quán)值。
具體地,連接成功率為語音引擎與該語音引擎的服務(wù)器之間的連接成功率,語音引擎與其服務(wù)器連接成功后,方可提供語音服務(wù)。
服務(wù)質(zhì)量參數(shù)為根據(jù)當(dāng)前擁堵程度以及連接成功率進行加權(quán)求和后得到的綜合權(quán)值,確保服務(wù)器所選擇的目標(biāo)語音引擎為服務(wù)質(zhì)量較優(yōu)的語音引擎。
本發(fā)明的上述實施例中,當(dāng)接收到移動終端發(fā)送的語音引擎切換請求,查詢當(dāng)前可用的語音引擎以及語音引擎的服務(wù)質(zhì)量參數(shù),將服務(wù)質(zhì)量較優(yōu)的語音引擎作為目標(biāo)語音引擎,并將攜帶有目標(biāo)語音引擎的指示信息發(fā)送至移動終端,使移動終端根據(jù)指示信息切換至目標(biāo)語音引擎,使得移動終端當(dāng)前的語音服務(wù)得以繼續(xù)進行,而不必因為語音引擎服務(wù)異常,導(dǎo)致語音服務(wù)中斷或語音助手類應(yīng)用程序無法使用。服務(wù)器端可設(shè)置多個為移動終端服務(wù)的語音引擎,當(dāng)需要切換時,為移動終端提供多項選擇,提升用戶的使用體驗。
參見圖4,本發(fā)明的一實施例提供了一種服務(wù)器400,包括:
請求接收模塊401,用于接收移動終端的語音引擎切換請求。
其中,服務(wù)器400可以是云端的服務(wù)器,服務(wù)器400與移動終端的進行數(shù)據(jù)交互,接收移動終端的語音切換請求等。
參數(shù)查詢模塊402,用于查詢當(dāng)前可用的語音引擎以及語音引擎的服務(wù)質(zhì)量參數(shù),服務(wù)質(zhì)量參數(shù)為依據(jù)語音引擎的當(dāng)前擁堵程度以及連接成功率所確定的數(shù)值。
其中,服務(wù)器400根據(jù)移動終端發(fā)送的語音引擎切換請求,查詢當(dāng)前可用的語音引擎,以及查詢當(dāng)前可用的語音引擎的服務(wù)質(zhì)量參數(shù),服務(wù)質(zhì)量參數(shù)為評價語音引擎當(dāng)前可提供的服務(wù)質(zhì)量的參考參數(shù),至少依據(jù)語音引擎的當(dāng)前擁堵程度以及連接成功率來確定。通常情況下,擁堵程度以及連接成功率對語音引擎的服務(wù)質(zhì)量影響較大。
引擎選擇模塊403,用于根據(jù)服務(wù)質(zhì)量參數(shù),從當(dāng)前可用的語音引擎中選擇出一個目標(biāo)語音引擎。
其中,可選擇服務(wù)質(zhì)量參數(shù)最優(yōu)的語音引擎作為目標(biāo)語音引擎,發(fā)送給移動終端。
信息發(fā)送模塊404,用于將目標(biāo)語音引擎的指示信息發(fā)送給移動終端。
其中,將包含目標(biāo)語音引擎的指示信息反饋至移動終端,使移動終端接收服務(wù)器400反饋的信息,并根據(jù)指示信息切換語音引擎。
優(yōu)選地,連接成功率為語音引擎與語音引擎的服務(wù)器400之間的連接成功率;
服務(wù)質(zhì)量參數(shù)為根據(jù)預(yù)設(shè)的權(quán)值對當(dāng)前擁堵程度以及連接成功率進行加權(quán)求和得到的綜合權(quán)值。
本發(fā)明的上述實施例中,當(dāng)接收到移動終端發(fā)送的語音引擎切換請求,查詢當(dāng)前可用的語音引擎以及語音引擎的服務(wù)質(zhì)量參數(shù),將服務(wù)質(zhì)量較優(yōu)的語音引擎作為目標(biāo)語音引擎,并將攜帶有目標(biāo)語音引擎的指示信息發(fā)送至移動終端,使移動終端根據(jù)指示信息切換至目標(biāo)語音引擎,使得移動終端當(dāng)前的語音服務(wù)得以繼續(xù)進行,而不必因為語音引擎服務(wù)異常,導(dǎo)致語音服務(wù)中斷或語音助手類應(yīng)用程序無法使用。服務(wù)器400端可設(shè)置多個為移動終端服務(wù)的語音引擎,當(dāng)需要切換時,為移動終端提供多項選擇,提升用戶的使用體驗。
可選地,作為一個具體示例,參見圖5,移動終端的語音引擎切換主要包括以下步驟:
步驟501:語音助手類應(yīng)用程序確定語音服務(wù)的種類。
語音助手類應(yīng)用程序在進行語音服務(wù)的過程中,可預(yù)設(shè)獲取數(shù)據(jù)的規(guī)則確定語音服務(wù)的種類,比如json數(shù)據(jù),key和value的鍵值對。
例如,[“source_type”:”meishi”,“more_url”:”http://baidu.com/”];
其中,source_type是key,value是meishi;
當(dāng)通過key獲取到的value是meishi的時候,就通過key值為more_url的數(shù)據(jù)中獲取對應(yīng)的value值即url地址,則給用戶展示美食信息;
還可設(shè)置有其他的垂類服務(wù),如聊天,那么source_type對應(yīng)的value值可能就是chat,jason字段中有對應(yīng)的key值對應(yīng)的value供展示。
步驟502:檢測到語音服務(wù)異常時,或通過預(yù)先設(shè)定的切換頻率,向服務(wù)器發(fā)送語音引擎切換請求。
步驟503:接收服務(wù)器反饋的當(dāng)前可用的目標(biāo)語音引擎的指示信息,根據(jù)指示信息,確定目標(biāo)語音引擎,并判斷是否具有該引擎的數(shù)據(jù)包。
如果沒有,則執(zhí)行步驟504,再執(zhí)行步驟505;如果有,則直接執(zhí)行步驟305。
步驟504:在應(yīng)用商店或者其他地方下載目標(biāo)語音引擎的數(shù)據(jù)包并安裝。
步驟505,將移動終端的當(dāng)前語音引擎切換至目標(biāo)語音引擎,使用目標(biāo)語音引擎進行語音服務(wù)。
其中,進行語音服務(wù)主要包括:語音識別,語音播報及語音識別內(nèi)容的反饋等服務(wù)。
可選地,可根據(jù)語音助手規(guī)定的獲取數(shù)據(jù)的規(guī)則去返回數(shù)據(jù),如美食服務(wù),比如用戶輸入附近有什么好吃的,返回的jason數(shù)據(jù)的key值與語音助手相同:
[“source_type”:“meishi”,”more_url”:”http://****”];
而聊天的jason數(shù)據(jù)為:
[“source_type”:“chat”,”more_url”:””,”show_text”:”你好!”]。
參見圖6,服務(wù)器端主要執(zhí)行以下流程:
步驟601,接收移動終端的語音引擎切換請求。
步驟602,查詢移動終端當(dāng)前可用的語音引擎,以及語音引擎的服務(wù)質(zhì)量參數(shù)。
步驟603,根據(jù)服務(wù)質(zhì)量參數(shù),從當(dāng)前可用的語音引擎中指定一種可用的語音引擎類型供語音助手查詢。
步驟604,將目標(biāo)語音引擎的指示信息發(fā)送給移動終端。
一方面,本發(fā)明的實施例還提供了一種移動終端,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,計算機程序被處理器執(zhí)行時實現(xiàn)上述語音引擎切換方法實施例的各個過程,且能達到相同的技術(shù)效果,為避免重復(fù),這里不再贅述。
另一方面,本發(fā)明的實施例還提供了一種計算機可讀存儲介質(zhì),計算機可讀存儲介質(zhì)上存儲有計算機程序,計算機程序被處理器執(zhí)行時實現(xiàn)上述語音引擎切換方法中的各個過程,且能達到相同的技術(shù)效果,為避免重復(fù),這里不再贅述。其中,計算機可讀存儲介質(zhì),可以是只讀存儲器(read-onlymemory,簡稱rom)、隨機存取存儲器(randomaccessmemory,簡稱ram)、磁碟或者光盤等。
另一方面,本發(fā)明的實施例還提供了一種服務(wù)器,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,計算機程序被處理器執(zhí)行時實現(xiàn)上述語音引擎切換方法中的步驟。
參見圖7,本發(fā)明的又一實施例提供了一種移動終端700。圖7所示的移動終端700包括:至少一個處理器701、存儲器702、至少一個網(wǎng)絡(luò)接口704以及其他用戶接口703。移動終端700中的各個組件通過總線系統(tǒng)705耦合在一起??衫斫猓偩€系統(tǒng)705用于實現(xiàn)這些組件之間的連接通信??偩€系統(tǒng)705除包括數(shù)據(jù)總線之外,還包括電源總線、控制總線和狀態(tài)信號總線。但是為了清楚說明起見,在圖7中將各種總線都標(biāo)為總線系統(tǒng)705。
其中,用戶接口703可以包括顯示器、鍵盤或者點擊設(shè)備(例如,鼠標(biāo),軌跡球(trackball)、觸感板或者觸摸屏等。
可以理解,本發(fā)明實施例中的存儲器702可以是易失性存儲器或非易失性存儲器,或可包括易失性和非易失性存儲器兩者。其中,非易失性存儲器可以是只讀存儲器(read-onlymemory,rom)、可編程只讀存儲器(programmablerom,prom)、可擦除可編程只讀存儲器(erasableprom,eprom)、電可擦除可編程只讀存儲器(electricallyeprom,eeprom)或閃存。易失性存儲器可以是隨機存取存儲器(randomaccessmemory,ram),其用作外部高速緩存。通過示例性但不是限制性說明,許多形式的ram可用,例如靜態(tài)隨機存取存儲器(staticram,sram)、動態(tài)隨機存取存儲器(dynamicram,dram)、同步動態(tài)隨機存取存儲器(synchronousdram,sdram)、雙倍數(shù)據(jù)速率同步動態(tài)隨機存取存儲器(doubledataratesdram,ddrsdram)、增強型同步動態(tài)隨機存取存儲器(enhancedsdram,esdram)、同步連接動態(tài)隨機存取存儲器(synchlinkdram,sldram)和直接內(nèi)存總線隨機存取存儲器(directrambusram,drram)。本文描述的系統(tǒng)和方法的存儲器702旨在包括但不限于這些和任意其它適合類型的存儲器。
在一些實施方式中,存儲器702存儲了如下的元素,可執(zhí)行模塊或者數(shù)據(jù)結(jié)構(gòu),或者他們的子集,或者他們的擴展集:操作系統(tǒng)7021和應(yīng)用程序7022。
其中,操作系統(tǒng)7021,包含各種系統(tǒng)程序,例如框架層、核心庫層、驅(qū)動層等,用于實現(xiàn)各種基礎(chǔ)業(yè)務(wù)以及處理基于硬件的任務(wù)。應(yīng)用程序7022,包含各種應(yīng)用程序,例如媒體播放器(mediaplayer)、瀏覽器(browser)等,用于實現(xiàn)各種應(yīng)用業(yè)務(wù),實現(xiàn)本發(fā)明實施例方法的程序可以包含在應(yīng)用程序7022中。
在本發(fā)明實施例中,通過調(diào)用存儲器702存儲的程序或指令,具體的,可以是應(yīng)用程序7022中存儲的程序或指令,處理器701用于:向服務(wù)器發(fā)送語音引擎切換請求;接收服務(wù)器反饋的當(dāng)前可用的目標(biāo)語音引擎的指示信息;根據(jù)指示信息,將移動終端的當(dāng)前語音引擎切換至目標(biāo)語音引擎,并使用目標(biāo)語音引擎進行語音服務(wù)。
上述本發(fā)明實施例揭示的方法可以應(yīng)用于處理器701中,或者由處理器701實現(xiàn)。處理器701可能是一種集成電路芯片,具有信號的處理能力。在實現(xiàn)過程中,上述方法的各步驟可以通過處理器701中的硬件的集成邏輯電路或者軟件形式的指令完成。上述的處理器701可以是通用處理器、數(shù)字信號處理器(digitalsignalprocessor,dsp)、專用集成電路(applicationspecificintegratedcircuit,asic)、現(xiàn)場可編程門陣列(fieldprogrammablegatearray,fpga)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件??梢詫崿F(xiàn)或者執(zhí)行本發(fā)明實施例中的公開的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等。結(jié)合本發(fā)明實施例所公開的方法的步驟可以直接體現(xiàn)為硬件譯碼處理器執(zhí)行完成,或者用譯碼處理器中的硬件及軟件模塊組合執(zhí)行完成。軟件模塊可以位于隨機存儲器,閃存、只讀存儲器,可編程只讀存儲器或者電可擦寫可編程存儲器、寄存器等本領(lǐng)域成熟的存儲介質(zhì)中。該存儲介質(zhì)位于存儲器702,處理器701讀取存儲器702中的信息,結(jié)合其硬件完成上述方法的步驟。
可以理解的是,本文描述的這些實施例可以用硬件、軟件、固件、中間件、微碼或其組合來實現(xiàn)。對于硬件實現(xiàn),處理單元可以實現(xiàn)在一個或多個專用集成電路(applicationspecificintegratedcircuit,asic)、數(shù)字信號處理器(digitalsignalprocessor,dsp)、數(shù)字信號處理設(shè)備(dspdevice,dspd)、可編程邏輯設(shè)備(programmablelogicdevice,pld)、現(xiàn)場可編程門陣列(fieldprogrammablegatearray,fpga)、通用處理器、控制器、微控制器、微處理器、用于執(zhí)行本申請所述功能的其它電子單元或其組合中。
對于軟件實現(xiàn),可通過執(zhí)行本文所述功能的模塊(例如過程、函數(shù)等)來實現(xiàn)本文所述的技術(shù)。軟件代碼可存儲在存儲器中并通過處理器執(zhí)行。存儲器可以在處理器中或在處理器外部實現(xiàn)。
可選地,作為另一個實施例,處理器701還用于:檢測到當(dāng)前語音引擎服務(wù)失敗時,向服務(wù)器發(fā)送語音引擎切換請求;或者,根據(jù)預(yù)設(shè)的切換頻率,向服務(wù)器發(fā)送語音引擎切換請求。
可選地,作為另一個實施例,處理器701還用于:判斷移動終端是否具有目標(biāo)語音引擎的數(shù)據(jù)包:若判斷結(jié)果為否,則下載并安裝目標(biāo)語音引擎的數(shù)據(jù)包。
可選地,作為另一個實施例,處理器701還用于:接收到當(dāng)前語音引擎與當(dāng)前語音引擎的服務(wù)器連接失敗的消息或連接超時的消息。
移動終端700能夠?qū)崿F(xiàn)前述實施例中移動終端實現(xiàn)的各個過程,為避免重復(fù),這里不再贅述。
本發(fā)明實施例的移動終端700,通過處理器701當(dāng)移動終端的當(dāng)前語音引擎服務(wù)異常時,向服務(wù)器發(fā)送語音引擎切換請求,并接收服務(wù)器反饋的攜帶有目標(biāo)語音引擎的指示信息,根據(jù)指示信息切換至目標(biāo)語音引擎,使得移動終端當(dāng)前的語音服務(wù)得以繼續(xù)進行,而不必因為語音引擎服務(wù)異常,導(dǎo)致語音服務(wù)中斷或語音助手類應(yīng)用程序無法使用。且移動終端可根據(jù)預(yù)設(shè)的切換頻率,自動向服務(wù)器發(fā)送語音引擎切換請求,定時切換語音引擎,以確保語音引擎處于正常工作狀態(tài),提高服務(wù)質(zhì)量。服務(wù)器端還可設(shè)置多個為移動終端服務(wù)的語音引擎,當(dāng)需要切換時,為移動終端提供多項選擇,提升用戶的使用體驗。
參見圖8,本發(fā)明的又一實施例提供了一種移動終端800。具體地,圖8中的移動終端800可以為手機、平板電腦、個人數(shù)字助理(personaldigitalassistant,pda)、或車載電腦等。
圖8中的移動終端800包括射頻(radiofrequency,rf)電路810、存儲器820、輸入單元830、顯示單元840、處理器850、wi-fi(wirelessfidelity)模塊860、音頻電路870、電源880。
其中,輸入單元830可用于接收用戶輸入的數(shù)字或字符信息,以及產(chǎn)生與移動終端800的用戶設(shè)置以及功能控制有關(guān)的信號輸入。
具體地,本發(fā)明實施例中,該輸入單元830可以包括觸控面板831。觸控面板831,也稱為觸摸屏,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸控面板831上的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動相應(yīng)的連接裝置。可選的,觸控面板831可包括觸摸檢測裝置和觸摸控制器兩個部分。其中,觸摸檢測裝置檢測用戶的觸摸方位,并檢測觸摸操作帶來的信號,將信號傳送給觸摸控制器;觸摸控制器從觸摸檢測裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點坐標(biāo),再送給該處理器850,并能接收處理器850發(fā)來的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實現(xiàn)觸控面板831。除了觸控面板831,輸入單元830還可以包括其他輸入設(shè)備832,其他輸入設(shè)備832可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。
其中,顯示單元840可用于顯示由用戶輸入的信息或提供給用戶的信息以及移動終端800的各種菜單界面。顯示單元840可包括顯示面板841,可選的,可以采用lcd或有機發(fā)光二極管(organiclight-emittingdiode,oled)等形式來配置顯示面板841。
應(yīng)注意,觸控面板831可以覆蓋顯示面板841,形成觸摸顯示屏,當(dāng)該觸摸顯示屏檢測到在其上或附近的觸摸操作后,傳送給處理器850以確定觸摸事件的類型,隨后處理器850根據(jù)觸摸事件的類型在觸摸顯示屏上提供相應(yīng)的視覺輸出。
觸摸顯示屏包括應(yīng)用程序界面顯示區(qū)及常用控件顯示區(qū)。該應(yīng)用程序界面顯示區(qū)及該常用控件顯示區(qū)的排列方式并不限定,可以為上下排列、左右排列等可以區(qū)分兩個顯示區(qū)的排列方式。該應(yīng)用程序界面顯示區(qū)可以用于顯示應(yīng)用程序的界面。每一個界面可以包含至少一個應(yīng)用程序的圖標(biāo)和/或widget桌面控件等界面元素。該應(yīng)用程序界面顯示區(qū)也可以為不包含任何內(nèi)容的空界面。該常用控件顯示區(qū)用于顯示使用率較高的控件,例如,設(shè)置按鈕、界面編號、滾動條、電話本圖標(biāo)等應(yīng)用程序圖標(biāo)等。
在本發(fā)明實施例中,通過調(diào)用存儲該第一存儲器821內(nèi)的軟件程序和/或模塊和/或該第二存儲器822內(nèi)的數(shù)據(jù),處理器850用于:向服務(wù)器發(fā)送語音引擎切換請求;接收服務(wù)器反饋的當(dāng)前可用的目標(biāo)語音引擎的指示信息;根據(jù)指示信息,將移動終端的當(dāng)前語音引擎切換至目標(biāo)語音引擎,并使用目標(biāo)語音引擎進行語音服務(wù)。
可選地,作為另一個實施例,處理器850還用于:檢測到當(dāng)前語音引擎服務(wù)失敗時,向服務(wù)器發(fā)送語音引擎切換請求;或者,根據(jù)預(yù)設(shè)的切換頻率,向服務(wù)器發(fā)送語音引擎切換請求。
可選地,作為另一個實施例,處理器850還用于:判斷移動終端是否具有目標(biāo)語音引擎的數(shù)據(jù)包:若判斷結(jié)果為否,則下載并安裝目標(biāo)語音引擎的數(shù)據(jù)包。
可選地,作為另一個實施例,處理器850還用于:接收到當(dāng)前語音引擎與當(dāng)前語音引擎的服務(wù)器連接失敗的消息或連接超時的消息。
移動終端800能夠?qū)崿F(xiàn)前述實施例中移動終端實現(xiàn)的各個過程,為避免重復(fù),這里不再贅述。
本發(fā)明實施例的移動終端800,通過處理器850當(dāng)移動終端的當(dāng)前語音引擎服務(wù)異常時,向服務(wù)器發(fā)送語音引擎切換請求,并接收服務(wù)器反饋的攜帶有目標(biāo)語音引擎的指示信息,根據(jù)指示信息切換至目標(biāo)語音引擎,使得移動終端當(dāng)前的語音服務(wù)得以繼續(xù)進行,而不必因為語音引擎服務(wù)異常,導(dǎo)致語音服務(wù)中斷或語音助手類應(yīng)用程序無法使用。且移動終端可根據(jù)預(yù)設(shè)的切換頻率,自動向服務(wù)器發(fā)送語音引擎切換請求,定時切換語音引擎,以確保語音引擎處于正常工作狀態(tài),提高服務(wù)質(zhì)量。服務(wù)器端還可設(shè)置多個為移動終端服務(wù)的語音引擎,當(dāng)需要切換時,為移動終端提供多項選擇,提升用戶的使用體驗。
本領(lǐng)域普通技術(shù)人員可以意識到,結(jié)合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結(jié)合來實現(xiàn)。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。
在本申請所提供的實施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上。可以根據(jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
所述功能如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:u盤、移動硬盤、rom、ram、磁碟、光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)以權(quán)利要求的保護范圍為準(zhǔn)。