本發明實施例涉及通信技術領域,尤其涉及一種麥克風模式切換方法及移動終端。
背景技術:
為了在噪音環境下達到好的通話效果,通常,移動終端使用雙麥克風(Dual Mic)降噪方案進行降噪來提高通話質量。其中,Dual Mic指的是移動終端內置的兩個麥克風,其中,一個設置在移動終端的頂端,另一個設置在移動終端的底端。設置在底端的麥克風和設置在頂端的麥克風都用來采集用戶的語音信息。雙麥克風降噪方案主要是移動終端根據兩個麥克風的語音信息的到達時間和相位差的不同,對兩個麥克風的語音信息進行處理,進而屏蔽與用戶的語音信息不相關的內容,達到降噪的效果。
但是,在用戶使用過程中,若設置在移動終端頂端的麥克風出現故障,例如,堵塞或者損壞,移動終端就無法接收到該麥克風的語音信息,因此雙麥克風的降噪方案也就無法實現,最終導致對方聽到聲音變調、斷斷續續等現象,無法保證正常的通話。
在用戶進行維修之前,用戶只有通過修改移動終端的底層驅動配置文件和音頻校準數據庫將移動終端的雙麥克模式切換成單麥克風模式,才能保證正常通話。但是,由于用戶無法對位于移動終端的底層驅動配置文件和音頻校準數據庫進行操作,不能實現麥克風模式的切換,因此,當麥克風出現故障時,移動終端無法保證正常通話,降低了移動終端的可擴展性。
技術實現要素:
本發明實施例的主要目的在于提出一種麥克風模式切換方法及移動終端,旨在實現當麥克風出現故障時,保證移動終端正常通話,提高移動終端的可擴展性。
一方面,本發明實施例提供的一種麥克風模式切換方法,包括:
獲取同一時間采集的第一語音信息和第二語音信息,其中,第一語音信息為第一麥克風采集到的語音信息,第二語音信息為第二麥克風采集到的語音信息,所述第一麥克風和所述第二麥克風具有預設的距離;
比較第一語音信息和第二語音信息,并根據第一語音信息和第二語音信息的比較結果,判斷第一麥克風和/或第二麥克風是否異常;
對異常麥克風進行麥克風模式切換操作,并啟動單麥克風模式。
本發明實施例還提出一種移動終端,包括:
獲取模塊,用于獲取同一時間采集的第一語音信息和第二語音信息,其中,第一語音信息為第一麥克風采集到的語音信息,第二語音信息為第二麥克風采集到的語音信息,所述第一麥克風和所述第二麥克風具有預設的距離;
處理模塊,用于比較第一語音信息和第二語音信息,并根據第一語音信息和第二語音信息的比較結果,判斷第一麥克風和/或第二麥克風是否異常;
執行模塊,用于對異常麥克風進行麥克風模式切換操作,并啟動單麥克風模式。
本發明實施例提出的麥克風模式切換方法及移動終端,通過獲取同一時間采集的第一語音信息和第二語音信息,根據第一語音信息和第二語音信息的比較結果,判斷第一麥克風和/或第二麥克風是否出現異常;對異常麥克風進行麥克風模式切換操作,并啟動單麥克風模式。本發明提供的技術方案通過比較第一語音信息和第二語音信息,根據二者的比較結果,確認出現異常的麥克風,執行切換操作,實現了當麥克風出現故障時,保證移動終端正常通話,提高了移動終端的可擴展性。
附圖說明
圖1為實現本發明實施例各個實施例的移動終端一個可選的硬件結構示意圖;
圖2為本發明實施例提供的麥克風模式切換方法實施例一的流程圖;
圖3為本發明實施例提供的移動終端實施例一的結構示意圖。
本發明實施例目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。
具體實施方式
應當理解,此處所描述的具體實施例僅僅用以解釋本發明實施例,并不用于限定本發明實施例。
現在將參考附圖描述實現本發明實施例各個實施例的移動終端。在后續的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發明實施例的說明,其本身并沒有特定的意義。因此,"模塊"與"部件"可以混合地使用。
移動終端可以以各種形式來實施。例如,本發明實施例中描述的終端可以包括諸如移動電話、智能電話、筆記本電腦、數字廣播接收器、PDA(個人數字助理)、PAD(平板電腦)、PMP(便攜式多媒體播放器)、導航裝置等等的移動終端以及諸如數字TV、臺式計算機等等的固定終端。下面,假設終端是移動終端。然而,本領域技術人員將理解的是,除了特別用于移動目的的元件之外,根據本發明實施例的實施方式的構造也能夠應用于固定類型的終端。
圖1為實現本發明實施例各個實施例的移動終端一個可選的硬件結構示意圖。
移動終端100可以包括無線通信單元110、A/V(音頻/視頻)輸入單元120、用戶輸入單元130、感測單元140、輸出單元150、存儲器160、接口單元170、控制器180和電源單元190等等。圖1示出了具有各種組件的移動終端,但是應理解的是,并不要求實施所有示出的組件。可以替代地實施更多或更少的組件。將在下面詳細描述移動終端的元件。
無線通信單元110通常包括一個或多個組件,其允許移動終端100與無線通信系統或網絡之間的無線電通信。例如,無線通信單元可以包括廣播接收模塊111、移動通信模塊112、無線互聯網模塊113、短程通信模塊114和位置信息模塊115中的至少一個。
廣播接收模塊111經由廣播信道從外部廣播管理服務器接收廣播信號和/或廣播相關信息。廣播信道可以包括衛星信道和/或地面信道。廣播管理服務器可以是生成并發送廣播信號和/或廣播相關信息的服務器或者接收之前生成的廣播信號和/或廣播相關信息并且將其發送給終端的服務器。廣播信號可以包括TV廣播信號、無線電廣播信號、數據廣播信號等等。而且,廣播信號可以進一步包括與TV或無線電廣播信號組合的廣播信號。廣播相關信息也可以經由移動通信網絡提供,并且在該情況下,廣播相關信息可以由移動通信模塊112來接收。廣播信號可以以各種形式存在,例如,其可以以數字多媒體廣播(DMB)的電子節目指南(EPG)、數字視頻廣播手持(DVB-H)的電子服務指南(ESG)等等的形式而存在。廣播接收模塊111可以通過使用各種類型的廣播系統接收信號廣播。特別地,廣播接收模塊111可以通過使用諸如多媒體廣播-地面(DMB-T)、數字多媒體廣播-衛星(DMB-S)、數字視頻廣播-手持(DVB-H),前向鏈路媒體(MediaFLO@)的數據廣播系統、地面數字廣播綜合服務(ISDB-T)等等的數字廣播系統接收數字廣播。廣播接收模塊111可以被構造為適合提供廣播信號的各種廣播系統以及上述數字廣播系統。經由廣播接收模塊111接收的廣播信號和/或廣播相關信息可以存儲在存儲器160(或者其它類型的存儲介質)中。
移動通信模塊112將無線電信號發送到基站(例如,接入點、節點B等等)、外部終端以及服務器中的至少一個和/或從其接收無線電信號。這樣的無線電信號可以包括語音通話信號、視頻通話信號、或者根據文本和/或多媒體消息發送和/或接收的各種類型的數據。
無線互聯網模塊113支持移動終端的無線互聯網接入。該模塊可以內部或外部地耦接到終端。該模塊所涉及的無線互聯網接入技術可以包括WLAN(無線LAN)(Wi-Fi)、Wibro(無線寬帶)、Wimax(全球微波互聯接入)、HSDPA(高速下行鏈路分組接入)等等。
短程通信模塊114是用于支持短程通信的模塊。短程通信技術的一些示例包括藍牙TM、射頻識別(RFID)、紅外數據協會(IrDA)、超寬帶(UWB)、紫蜂TM等等。
位置信息模塊115是用于檢查或獲取移動終端的位置信息的模塊。位置信息模塊的典型示例是GPS(全球定位系統)。根據當前的技術,GPS模塊115計算來自三個或更多衛星的距離信息和準確的時間信息并且對于計算的信息應用三角測量法,從而根據經度、緯度和高度準確地計算三維當前位置信息。當前,用于計算位置和時間信息的方法使用三顆衛星并且通過使用另外的一顆衛星校正計算出的位置和時間信息的誤差。此外,GPS模塊115能夠通過實時地連續計算當前位置信息來計算速度信息。
A/V輸入單元120用于接收音頻或視頻信號。A/V輸入單元120可以包括相機121和麥克風1220,相機121對在視頻捕獲模式或圖像捕獲模式中由圖像捕獲裝置獲得的靜態圖片或視頻的圖像數據進行處理。處理后的圖像幀可以顯示在顯示單元151上。經相機121處理后的圖像幀可以存儲在存儲器160(或其它存儲介質)中或者經由無線通信單元110進行發送,可以根據移動終端的構造提供兩個或更多相機1210。麥克風122可以在電話通話模式、記錄模式、語音識別模式等等運行模式中經由麥克風接收聲音(音頻數據),并且能夠將這樣的聲音處理為音頻數據。處理后的音頻(語音)數據可以在電話通話模式的情況下轉換為可經由移動通信模塊112發送到移動通信基站的格式輸出。麥克風122可以實施各種類型的噪聲消除(或抑制)算法以消除(或抑制)在接收和發送音頻信號的過程中產生的噪聲或者干擾。
用戶輸入單元130可以根據用戶輸入的命令生成鍵輸入數據以控制移動終端的各種操作。用戶輸入單元130允許用戶輸入各種類型的信息,并且可以包括鍵盤、鍋仔片、觸摸板(例如,檢測由于被接觸而導致的電阻、壓力、電容等等的變化的觸敏組件)、滾輪、搖桿等等。特別地,當觸摸板以層的形式疊加在顯示單元151上時,可以形成觸摸屏。
感測單元140檢測移動終端100的當前狀態,(例如,移動終端100的打開或關閉狀態)、移動終端100的位置、用戶對于移動終端100的接觸(即,觸摸輸入)的有無、移動終端100的取向、移動終端100的加速或減速移動和方向等等,并且生成用于控制移動終端100的操作的命令或信號。例如,當移動終端100實施為滑動型移動電話時,感測單元140可以感測該滑動型電話是打開還是關閉。另外,感測單元140能夠檢測電源單元190是否提供電力或者接口單元170是否與外部裝置耦接。感測單元140可以包括接近傳感器1410將在下面結合觸摸屏來對此進行描述。
接口單元170用作至少一個外部裝置與移動終端100連接可以通過的接口。例如,外部裝置可以包括有線或無線頭戴式耳機端口、外部電源(或電池充電器)端口、有線或無線數據端口、存儲卡端口、用于連接具有識別模塊的裝置的端口、音頻輸入/輸出(I/O)端口、視頻I/O端口、耳機端口等等。識別模塊可以是存儲用于驗證用戶使用移動終端100的各種信息并且可以包括用戶識別模塊(UIM)、客戶識別模塊(SIM)、通用客戶識別模塊(USIM)等等。另外,具有識別模塊的裝置(下面稱為"識別裝置")可以采取智能卡的形式,因此,識別裝置可以經由端口或其它連接裝置與移動終端100連接。接口單元170可以用于接收來自外部裝置的輸入(例如,數據信息、電力等等)并且將接收到的輸入傳輸到移動終端100內的一個或多個元件或者可以用于在移動終端和外部裝置之間傳輸數據。
另外,當移動終端100與外部底座連接時,接口單元170可以用作允許通過其將電力從底座提供到移動終端100的路徑或者可以用作允許從底座輸入的各種命令信號通過其傳輸到移動終端的路徑。從底座輸入的各種命令信號或電力可以用作用于識別移動終端是否準確地安裝在底座上的信號。輸出單元150被構造為以視覺、音頻和/或觸覺方式提供輸出信號(例如,音頻信號、視頻信號、警報信號、振動信號等等)。輸出單元150可以包括顯示單元151、音頻輸出模塊152、警報單元153等等。
顯示單元151可以顯示在移動終端100中處理的信息。例如,當移動終端100處于電話通話模式時,顯示單元151可以顯示與通話或其它通信(例如,文本消息收發、多媒體文件下載等等)相關的用戶界面(UI)或圖形用戶界面(GUI)。當移動終端100處于視頻通話模式或者圖像捕獲模式時,顯示單元151可以顯示捕獲的圖像和/或接收的圖像、示出視頻或圖像以及相關功能的UI或GUI等等。
同時,當顯示單元151和觸摸板以層的形式彼此疊加以形成觸摸屏時,顯示單元151可以用作輸入裝置和輸出裝置。顯示單元151可以包括液晶顯示器(LCD)、薄膜晶體管LCD(TFT-LCD)、有機發光二極管(OLED)顯示器、柔性顯示器、三維(3D)顯示器等等中的至少一種。這些顯示器中的一些可以被構造為透明狀以允許用戶從外部觀看,這可以稱為透明顯示器,典型的透明顯示器可以例如為TOLED(透明有機發光二極管)顯示器等等。根據特定想要的實施方式,移動終端100可以包括兩個或更多顯示單元(或其它顯示裝置),例如,移動終端可以包括外部顯示單元(未示出)和內部顯示單元(未示出)。觸摸屏可用于檢測觸摸輸入壓力以及觸摸輸入位置和觸摸輸入面積。
音頻輸出模塊152可以在移動終端處于呼叫信號接收模式、通話模式、記錄模式、語音識別模式、廣播接收模式等等模式下時,將無線通信單元110接收的或者在存儲器160中存儲的音頻數據轉換音頻信號并且輸出為聲音。而且,音頻輸出模塊152可以提供與移動終端100執行的特定功能相關的音頻輸出(例如,呼叫信號接收聲音、消息接收聲音等等)。音頻輸出模塊152可以包括揚聲器、蜂鳴器等等。
警報單元153可以提供輸出以將事件的發生通知給移動終端100。典型的事件可以包括呼叫接收、消息接收、鍵信號輸入、觸摸輸入等等。除了音頻或視頻輸出之外,警報單元153可以以不同的方式提供輸出以通知事件的發生。例如,警報單元153可以以振動的形式提供輸出,當接收到呼叫、消息或一些其它進入通信(incomingcommunication)時,警報單元153可以提供觸覺輸出(即,振動)以將其通知給用戶。通過提供這樣的觸覺輸出,即使在用戶的移動電話處于用戶的口袋中時,用戶也能夠識別出各種事件的發生。警報單元153也可以經由顯示單元151或音頻輸出模塊152提供通知事件的發生的輸出。
存儲器160可以存儲由控制器180執行的處理和控制操作的軟件程序等等,或者可以暫時地存儲己經輸出或將要輸出的數據(例如,電話簿、消息、靜態圖像、視頻等等)。而且,存儲器160可以存儲關于當觸摸施加到觸摸屏時輸出的各種方式的振動和音頻信號的數據。
存儲器160可以包括至少一種類型的存儲介質,所述存儲介質包括閃存、硬盤、多媒體卡、卡型存儲器(例如,SD或DX存儲器等等)、隨機訪問存儲器(RAM)、靜態隨機訪問存儲器(SRAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、可編程只讀存儲器(PROM)、磁性存儲器、磁盤、光盤等等。而且,移動終端100可以與通過網絡連接執行存儲器160的存儲功能的網絡存儲裝置協作。
控制器180通常控制移動終端的總體操作。例如,控制器180執行與語音通話、數據通信、視頻通話等等相關的控制和處理。另外,控制器180可以包括用于再現(或回放)多媒體數據的多媒體模塊1810,多媒體模塊1810可以構造在控制器180內,或者可以構造為與控制器180分離。控制器180可以執行模式識別處理,以將在觸摸屏上執行的手寫輸入或者圖片繪制輸入識別為字符或圖像。
電源單元190在控制器180的控制下接收外部電力或內部電力并且提供操作各元件和組件所需的適當的電力。
這里描述的各種實施方式可以以使用例如計算機軟件、硬件或其任何組合的計算機可讀介質來實施。對于硬件實施,這里描述的實施方式可以通過使用特定用途集成電路(ASIC)、數字信號處理器(DSP)、數字信號處理裝置(DSPD)、可編程邏輯裝置(PLD)、現場可編程門陣列(FPGA)、處理器、控制器、微控制器、微處理器、被設計為執行這里描述的功能的電子單元中的至少一種來實施,在一些情況下,這樣的實施方式可以在控制器180中實施。對于軟件實施,諸如過程或功能的實施方式可以與允許執行至少一種功能或操作的單獨的軟件模塊來實施。軟件代碼可以由以任何適當的編程語言編寫的軟件應用程序(或程序)來實施,軟件代碼可以存儲在存儲器160中并且由控制器180執行。
至此,己經按照其功能描述了移動終端。下面,為了簡要起見,將描述諸如折疊型、直板型、擺動型、滑動型移動終端等等的各種類型的移動終端中的滑動型移動終端作為示例。因此,本發明實施例能夠應用于任何類型的移動終端,并且不限于滑動型移動終端。
如圖1中所示的移動終端100可以被構造為利用經由幀或分組發送數據的諸如有線和無線通信系統以及基于衛星的通信系統來操作。
基于上述移動終端硬件結構,提出本發明實施例方法各個實施例。
圖2為本發明實施例提供的麥克風模式切換方法實施例一的流程圖,如圖2所示,包括:
步驟210、獲取同一時間采集的第一語音信息和第二語音信息。
可選地,本發明實施例中,第一語音信息為第一麥克風采集到的語音信息,第二語音信息為第二麥克風采集到的語音信息。
具體的,第一語音信息和第二語音信息是由移動終端在同一時刻采集同一音源而來的。
可選地,第一麥克風設置在移動終端底端,可以通過觸發的方式采集到第一語音信息;第二麥克風設置在移動終端頂端,可以通過觸發的方式采集到第二語音信息。由于第一麥克風距離用戶的嘴巴比較近,第二麥克風距離用戶的嘴巴相對較遠,因此,第二麥克風采集到的語音信息包括的噪音比第一麥克風采集到的語音信息包括的較多。本發明實施例并不以此為限。
可選地,在本發明實施例中,第一麥克風和第二麥克風具有預設的距離,該預設的距離由移動終端的具體長度參數確定,本發明并不限制預設的距離的長度。
以高通平臺為例,移動終端獲取的第一語音信息和第二語音信息設置在0x1586端點處,位于0x1586端點處的語音信息是沒有經過任何處理的語音信息。可以理解的是,若為其他的平臺,則語音信息則在其他的平臺對應的端點處。
步驟220、比較第一語音信息和第二語音信息,并根據第一語音信息和第二語音信息的比較結果,判斷第一麥克風和/或第二麥克風是否異常。
在一個實施例中,可以先判斷移動終端是否有麥克風異常,如果有麥克風異常,然后再確認第一麥克風和/或第二麥克風哪個是異常的;另外,也可以根據第一語音信息和第二語音信息的比較結果直接確認第一麥克風和第二麥克風中的異常麥克風或相對異常的一個麥克風。
仍以高通平臺為例,移動終端可以通過比較位于0x1586端點處第一語音信息的波形數據和第二語音信息的波形數據來判斷移動終端是否有麥克風異常,需要說明的是,本發明還可以通過第一語音信息和第二語音信息的其他相關數據,來判斷移動終端是否有麥克風異常。同時,不同的平臺移動終端比較的語音信息的位置是不相同的,本發明并不以此為限。
以移動終端通過比較第一語音信息的波形數據和第二語音信息的波形數據判斷移動終端是否有麥克風異常為例進行說明:正常情況下,也就是兩個麥克風都沒有發生故障的情況下,第一語音信息對應的波形數據和第二語音信息對應的波形數據除了增益不同,其他方面例如、波形等情況基本是相同的,并且是第二麥克風的增益要小于第一麥克風的增益,因此,當第一語音信息和第二語音信息的波形數據基本相同時,則可判定第一麥克風和第二麥克風正常,否則,第一麥克風和/或第二麥克風異常,然后在確認第一麥克風和/或第二麥克風哪個是異常的,具體的確認方式可以移動終端播放第一語音信息和第一語音信息,移動終端根據執行于移動終端的用戶的操作來確認出現異常的麥克風,具體的,用戶選擇的結果通過用戶與移動終端的交互界面傳輸至移動終端。
具體的,根據第一語音信息和第二語音信息的比較結果,可以通過移動終端預先設置的標準、用戶的選擇或者擇優選擇來直接確認第一麥克風和第二麥克風中的異常麥克風或相對異常的一個麥克風。本發明并不對確認異常麥克風的方式進行進一步的限定。
可選地,在本發明實施例中,第一語音信息對應的波形數據和第二語音信息對應的波形數據以脈沖調制解調編碼的方式存儲在數字信號處理芯片(Digital Singal Processor,簡稱DSP)日志中。
可選地,數字信號處理芯片可以為美國模擬器件公司(Analog Device Instrument,簡稱:ADI)生產的數字信號處理芯片ADSP,代表系列有應用于底端領域的ADSP Sharc 211xx、應用于高端領域的ADSP TigerSharc系列及應用于消費電子領域的ADSP Blackfin系列。
具體的,本發明實施例可以通過定期開啟ADSP Log對第一語音信息和第二語音信息進行比較,本發明并不以此為限。
步驟230、對異常麥克風進行麥克風模式切換操作,并啟動單麥克風模式。
具體的,若異常麥克風為第一麥克風,則異常麥克風對應的切換麥克風模式操作為修改底層驅動配置文件,并切換音頻校準數據庫(Audio calibration data Base,簡稱ACDB),若異常麥克風為第二麥克風,則異常麥克風對應的切換麥克風模式操作為修改底層驅動配置文件。
本實施例提供的麥克風模式切換方法通過獲取同一時間采集的第一語音信息和第二語音信息,比較第一語音信息和第二語音信息,并根據第一語音信息和第二語音信息的比較結果,判斷第一麥克風和/或第二麥克風是否異常,對異常麥克風進行麥克風模式切換操作,并啟動單麥克風模式。本發明通過對比第一語音信息與第二語音信息確定異常麥克風,然后由移動終端對異常麥克風執行麥克風模式切換操作,避免了現有技術中,由于用戶無法對位于移動終端底層的數據進行操作,不能實現麥克風模式的切換的技術問題,實現了當麥克風出現故障時,保證移動終端正常通話,提高了移動終端的可擴展性。
進一步地,在實施例一的技術方案的基礎上,在實施例二中,步驟220中判斷第一麥克風和/或第二麥克風是否異常,還包括:
發送用于提示麥克風出現異常的提醒消息。
具體的,提醒消息可以為振動、提示語音或者以推送消息的方式進行提醒,本發明并不對提醒消息的類型進行限制,具體根據移動終端的設置來限定。
在實施例二的技術方案的基礎上,在實施例三中,步驟220包括:
根據第一語音信息和第二語音信息,采用預設的相似波形算法來確定第一語音信息和第二語音信息的相似度;
根據第一語音信息和第二語音信息的相似度,比較第一麥克風和第二麥克風。
以比較語音信息的波形數據為例說明比較的過程:假定第一語音信息對應的波形數據為x(t)、第二語音信息對應的波形數據為y(t),選擇倍數a使a*y(t)去逼近x(t)。本發明實施例采用誤差能量度量第一語音信息和第二語音信息的相似度。
具體的,如果兩完全不相似的波形數據其幅度取值和出現時刻是相互獨立、彼此無關的,滿足x(t)*y(t)=0,其積分結果亦為0,所以當相關系數為0時相似度最差,即不相關。當相關系數為1,則誤差能量為0,說明這兩個波形數據相似度很好,是線性相關的。因此,相關系數可以作為第一語音信息和第二語音信息的相似度的判斷。
當相關系數為1,則說明第一語音信息和第二語音信息相似度很好,第一麥克風和第二麥克風均正常;若相關系數不為1,則說明第一語音信息和第二語音信息相似度不好,第一麥克風和/或第二麥克風出現異常。
另外,根據第一語音信息和第二語音信息的比較結果,可以根據移動終端預先設置的標準、兩個麥克風之間擇優選擇或者根據用戶的選擇等來確認第一麥克風和/或第二麥克風是否異常。
具體的,移動終端預先設置的標準可以為一個標準的波形數據,將第一語音數據和第二語音數據與移動終端預先設置的標準進行對比,確認第一麥克風和/或第二麥克風是否異常,或者可以選擇兩個麥克風的語音信息之中噪聲較大的語音信息對應的麥克風作為發生異常的麥克風。
具體的,根據用戶的選擇確認麥克風出現異常,具體的,移動終端將第一語音信息和第二語音信息分別進行播放,由用戶根據聽到的信息,判斷哪個麥克風出現故障,并在移動終端的交互界面上,選擇是第一麥克風出現問題或者第二麥克風出現問題,由移動終端獲取異常麥克風。
具體的,移動終端分別播放第一語音信息和第二語音信息,可以先播放第一語音信息,再播放第二語音信息;還可以為先播放第二語音信息,再播放第一語音信息。可以理解的是,本發明并不對第一語音信息和第二語音信息的播放順序進行限制,具體根據移動終端的設置來確定。
進一步地,在實施例二的技術方案的基礎上,在實施例四中,步驟230中,若異常麥克風為第一麥克風,則對異常麥克風進行麥克風模式切換操作,包括:
修改底層驅動配置文件,將底層驅動配置文件中第一麥克風對應的信息修改為第二麥克風對應的信息。
具體的,在以XML配置文件為例進行說明:
將底層驅動配置文件Mixer_paths_mtp.xml文件內容中的第一麥克風的代碼替換成第二麥克風對應的代碼,實現第一麥克風到第二麥克風的切換。
可選地,第一麥克風對應的代碼為adc1,第二麥克風對應的代碼adcx,x隨著平臺的改變而改變。
將Platform.c內字段的snd_device對應的代碼從免提模式修改為手持模式。
切換音頻校準數據庫,將音頻校準數據庫中的雙麥克風通道信息修改為單麥克風通道信息。
具體的,不同的平臺對應的雙麥克風通道信息修改為單麥克風通道信息的方式不同,本發明實施例并不對修改方式進行限定。
其中,本發明并不限制修改底層驅動配置文件和切換音頻校準數據庫的操作順序,具體根據移動終端的設置來確定。
進一步地,在實施例二的技術方案的基礎上,在實施例五中,在步驟230中,若異常麥克風為第二麥克風,則對異常麥克風進行麥克風模式切換操作,包括:
修改底層驅動配置文件,將底層驅動配置文件中第二麥克風對應的信息修改為第一麥克風對應的信息。
具體的,在以XML配置文件為例進行說明:
將底層驅動配置文件Mixer_paths_mtp.xml文件內容中的第二麥克風的代碼替換成第一麥克風對應的代碼,實現第二麥克風到第一麥克風的切換。
可選地,第一麥克風對應的代碼為adc1,第二麥克風對應的代碼adcx,x隨著平臺的改變而改變。
進一步地,在上述實施例的技術方案的基礎上,在實施例四中,在步驟230之后,移動終端重新啟動,采用單麥克風降噪方案對用戶的通話進行降噪,達到麥克風降噪的目的,進一步地提高了通話質量。
本發明實施例提供一種移動終端。參照圖3,圖3為本發明實施例提供的移動終端實施例一的結構示意圖,如圖3所示,包括:獲取模塊310、處理模塊320和執行模塊330。
獲取模塊310,用于獲取同一時間采集的第一語音信息和第二語音信息。
可選地,本發明實施例中,第一語音信息為第一麥克風采集到的語音信息,第二語音信息為第二麥克風采集到的語音信息。
具體的,第一語音信息和第二語音信息是由移動終端在同一時刻采集同一音源而來的。
可選地,第一麥克風設置在移動終端底端,可以通過觸發的方式采集到第一語音信息,第二麥克風設置在移動終端頂端,可以通過觸發的方式采集到第二語音信息。由于第一麥克風距離用戶的嘴巴比較近,第二麥克風距離用戶的嘴巴相對較遠,因此,第二麥克風采集到的語音信息包括的噪音比第一麥克風采集到的語音信息包括的較多。本發明實施例并不以此為限。
可選地,在本發明實施例中,第一麥克風和第二麥克風具有預設的距離,該預設的距離由移動終端的具體參數確定,本發明并不限制預設的距離的長度。
以高通平臺為例,移動終端獲取的第一語音信息和第二語音信息設置在0x1586端點處,位于0x1586端點處的語音信息是沒有經過任何處理的語音信息。可以理解的是,若為其他的平臺,則語音信息則在其他的平臺對應的端點處。
處理模塊320,用于比較第一語音信息和第二語音信息,并根據第一語音信息和第二語音信息的比較結果,判斷第一麥克風和/或第二麥克風是否異常。
在一個實施例中,可以先判斷移動終端是否有麥克風異常,如果有麥克風異常,然后再確認第一麥克風和/或第二麥克風哪個是異常的;另外,也可以根據第一語音信息和第二語音信息的比較結果直接確認第一麥克風和第二麥克風中的異常麥克風或相對異常的一個麥克風。
仍以高通平臺為例,移動終端可以通過比較位于0x1586端點處第一語音信息的波形數據和第二語音信息的波形數據來判斷移動終端是否有麥克風異常,需要說明的是,本發明還可以通過第一語音信息和第二語音信息的其他相關數據,來判斷移動終端是否有麥克風異常,同時,不同的平臺移動終端比較的語音信息的位置是不相同的,本發明并不以此為限。
以移動終端通過比較第一語音信息的波形數據和第二語音信息的波形數據判斷移動終端是否有麥克風異常為例進行說明:正常情況下,也就是兩個麥克風都沒有發生故障的情況下,第一語音信息對應的波形數據和第二語音信息對應的波形數據除了增益不同,其他方面例如、波形等情況基本是相同的,并且是第二麥克風的增益要小于第一麥克風的增益,因此,當第一語音信息和第二語音信息的波形數據基本相同時,則可判定第一麥克風和第二麥克風正常,否則,第一麥克風和/或第二麥克風異常,然后在確認第一麥克風和/或第二麥克風哪個是異常的,具體的確認方式可以移動終端播放第一語音信息和第一語音信息,移動終端根據執行于移動終端的用戶的操作來確認出現異常的麥克風,具體的,用戶選擇的結果通過用戶與移動終端的交互界面傳輸至移動終端。
具體的,根據第一語音信息和第二語音信息的比較結果,可以通過移動終端預先設置的標準、用戶的選擇或者擇優選擇來直接確認第一麥克風和第二麥克風中的異常麥克風或相對異常的一個麥克風。本發明并不對確認異常麥克風的方式進行進一步的限定。
可選地,在本發明實施例中,第一語音信息對應的波形數據和第二語音信息對應的波形數據以脈沖調制解調編碼的方式存儲在數字信號處理芯片(Digital Singal Processor,簡稱DSP)日志中。
可選地,數字信號處理芯片可以為美國模擬器件公司(Analog Device Instrument,簡稱:ADI)生產的數字信號處理芯片ADSP,代表系列有應用于底端領域的ADSP Sharc 211xx、應用于高端領域的ADSP TigerSharc系列及應用于消費電子領域的ADSP Blackfin系列。
具體的,本發明實施例可以通過定期開啟ADSP Log對第一語音信息和第二語音信息進行比較,本發明并不以此為限。
執行模塊330,用于對異常麥克風進行麥克風模式切換操作,并啟動單麥克風模式。
具體的,若異常麥克風為第一麥克風,則異常麥克風對應的切換麥克風模式操作為修改底層驅動配置文件,并切換音頻校準數據庫(Audio calibration data Base,簡稱ACDB),若異常麥克風為第二麥克風,則異常麥克風對應的切換麥克風模式操作為修改底層驅動配置文件。
本實施例提供的移動終端通過獲取模塊獲取同一時間采集的第一語音信息和第二語音信息,處理模塊比較第一語音信息和第二語音信息,并根據第一語音信息和第二語音信息的比較結果,判斷第一麥克風和/或第二麥克風是否異常;執行模塊對異常麥克風進行麥克風模式切換操作,并啟動單麥克風模式。本發明通過對比第一語音信息與第二語音信息,并確定異常麥克風,然后由移動終端對異常麥克風執行麥克風模式切換操作,避免了現有技術中,由于用戶無法對位于移動終端底層的數據進行操作,不能實現麥克風模式的切換的技術問題,實現了當麥克風出現故障時,保證移動終端正常通話,提高了移動終端的可擴展性。
進一步地,在實施例一的技術方案的基礎上,在實施例二中,處理模塊還用于發送模塊用于發送提示麥克風出現異常的提醒消息。
具體的,提醒消息可以為振動、提示語音或者以推送消息的方式進行提醒,本發明并不對提醒消息的類型進行限制,具體根據移動終端的設置來限定。
在實施例二的技術方案的基礎上,在實施例三中,處理模塊還用于:
根據第一語音信息和第二語音信息,采用預設的相似波形算法來確定第一語音信息和第二語音信息的相似度;
根據第一語音信息和第二語音信息的相似度,比較第一麥克風和第二麥克風。
以比較語音信息的波形數據為例說明比較的過程:假定第一語音信息對應的波形數據為x(t)、第二語音信息對應的波形數據為y(t),選擇倍數a使a*y(t)去逼近x(t)。本發明實施例采用誤差能量度量第一語音信息和第二語音信息的相似度。
具體的,如果兩完全不相似的波形數據其幅度取值和出現時刻是相互獨立、彼此無關的,滿足x(t)*y(t)=0,其積分結果亦為0,所以當相關系數為0時相似度最差,即不相關。當相關系數為1,則誤差能量為0,說明這兩個波形數據相似度很好,是線性相關的。因此,相關系數可以作為第一語音信息和第二語音信息的相似度的判斷。
當相關系數為1,則說明第一語音信息和第二語音信息相似度很好,第一麥克風和第二麥克風均正常;若相關系數不為1,則說明第一語音信息和第二語音信息相似度不好,第一麥克風和/或第二麥克風出現異常。
另外,根據第一語音信息和第二語音信息的比較結果,可以根據移動終端預先設置的標準、兩個麥克風之間擇優選擇或者根據用戶的選擇等來確認第一麥克風和/或第二麥克風是否異常。
具體的,移動終端預先設置的標準可以為一個標準的波形數據,將第一語音數據和第二語音數據與移動終端預先設置的標準進行對比,確認第一麥克風和/或第二麥克風是否異常,或者可以選擇兩個麥克風的語音信息之中噪聲較大的語音信息對應的麥克風作為發生異常的麥克風。
具體的,根據用戶的選擇確認麥克風出現異常,具體的,移動終端將第一語音信息和第二語音信息分別進行播放,由用戶根據聽到的信息,判斷哪個麥克風出現故障,并在移動終端的交互界面上,選擇是第一麥克風出現問題或者第二麥克風出現問題,由移動終端獲取異常麥克風。
具體的,移動終端分別播放第一語音信息和第二語音信息,可以先播放第一語音信息,再播放第二語音信息;還可以為先播放第二語音信息,再播放第一語音信息。可以理解的是,本發明并不對第一語音信息和第二語音信息的播放順序進行限制,具體根據移動終端的設置來確定。
進一步地,在實施例二的技術方案的基礎上,在實施例四中,若異常麥克風為第一麥克風,執行模塊對異常麥克風進行麥克風模式切換操作,包括:
修改底層驅動配置文件,將底層驅動配置文件中第一麥克風對應的信息修改為第二麥克風對應的信息。
具體的,在以XML配置文件為例進行說明:
將底層驅動配置文件Mixer_paths_mtp.xml文件內容中的第一麥克風的代碼替換成第二麥克風對應的代碼,實現第一麥克風到第二麥克風的切換。
可選地,第一麥克風對應的代碼為adc1,第二麥克風對應的代碼adcx,x隨著平臺的改變而改變。
將Platform.c內字段的snd_device對應的代碼從免提模式修改為手持模式。
切換音頻校準數據庫,將音頻校準數據庫中的雙麥克風通道信息修改為單麥克風通道信息。
具體的,不同的平臺對應的雙麥克風通道信息修改為單麥克風通道信息的方式不同,本發明實施例并不對修改方式進行限定。
其中,本發明并不限制修改底層驅動配置文件和切換音頻校準數據庫的操作順序,具體根據移動終端的設置來確定。
進一步地,在實施例二的技術方案的基礎上,在實施例五中,若異常麥克風為第二麥克風,執行模塊330對異常麥克風進行麥克風模式切換操作包括:
修改底層驅動配置文件,將底層驅動配置文件中第二麥克風對應的信息修改為第一麥克風對應的信息。
具體的,在以XML配置文件為例進行說明:
將底層驅動配置文件Mixer_paths_mtp.xml文件內容中的第二麥克風的代碼替換成第一麥克風對應的代碼,實現第二麥克風到第一麥克風的切換。
可選地,第一麥克風對應的代碼為adc1,第二麥克風對應的代碼adcx,x隨著平臺的改變而改變。
進一步地,在上述實施例的技術方案的基礎上,在實施例四中,移動終端啟動單麥克風模式之后,移動終端重新啟動,采用單麥克風降噪方案對用戶的通話進行降噪,達到麥克風降噪的目的,進一步地提高了通話質量。
需要說明的是,在本文中,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。
通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件,但很多情況下前者是更佳的實施方式。基于這樣的理解,本發明實施例的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,服務器,空調器,或者網絡設備等)執行本發明實施例各個實施例所述的方法。
以上僅為本發明實施例的優選實施例,并非因此限制本發明實施例的專利范圍,凡是利用本發明實施例說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的技術領域,均同理包括在本發明實施例的專利保護范圍內。