本發(fā)明涉及語音遙控器的技術(shù)領(lǐng)域,尤其涉及一種尾音識別方法及語音遙控器。
背景技術(shù):
目前,隨著數(shù)字化技術(shù)的發(fā)展,遙控器的功能也越來越多,有藍牙,紅外,語音等功能。而語音功能是智能設(shè)備非常重要的一種功能,其語音識別的準確率也是非常重要的?,F(xiàn)有遙控器是通過藍牙或者2.4G技術(shù)傳輸聲音,但在遙控器的語音數(shù)據(jù)接收模塊外一層存在屏幕遮擋,且受到周圍復(fù)雜環(huán)境的影響,使得遙控器的語音識別能力比較差,容易丟失尾音。
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的在于提出一種尾音識別方法及語音遙控器,旨在解決遙控器的語音識別能力比較差,容易丟失尾音的技術(shù)問題。
為實現(xiàn)上述目的,本發(fā)明提供的一種尾音識別方法,所述尾音識別方法包括以下步驟:
根據(jù)用戶觸發(fā)的采集指令對用戶的語音進行采集;
當接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集,并判斷通過采集獲得的總錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù);
若所述總錄音數(shù)據(jù)不為所述完整錄音數(shù)據(jù),則繼續(xù)對用戶的語音進行采集,直至所述總錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集。
可選地,所述根據(jù)用戶觸發(fā)的采集指令對用戶的語音進行采集的步驟包括:
根據(jù)所述語音采集指令將采集的語音數(shù)據(jù)緩存在預(yù)設(shè)數(shù)據(jù)緩存區(qū)中;
從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù);
將讀取獲得的語音數(shù)據(jù)寫入預(yù)設(shè)數(shù)據(jù)庫,所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)加上之前讀取的語音數(shù)據(jù)。
可選地,所述判斷通過采集獲得的總錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù)的步驟包括:
判斷所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)是否等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù);
所述繼續(xù)對用戶的語音進行采集,直至所述總錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集的步驟包括:
若所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)小于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則執(zhí)行從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù)的步驟;
若所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則停止從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。
可選地,所述判斷通過采集獲得的錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù)的步驟之前,所述尾音識別方法還包括:
獲取用戶觸發(fā)語音采集指令的時間,記為開始時間;
當接收到用戶觸發(fā)的采集停止指令,記錄停止時間;
根據(jù)所述開始時間、所述停止時間和預(yù)設(shè)比特率計算獲得完整錄音數(shù)據(jù)的字節(jié)數(shù)。
可選地,所述尾音識別方法還包括:
根據(jù)從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)的次數(shù)計算延遲時間;
判斷所述延遲時間是否大于預(yù)設(shè)時間;
若所述延遲時間大于所述預(yù)設(shè)時間,則停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù)。
此外,為實現(xiàn)上述目的,本發(fā)明還提供一種語音遙控器,所述語音遙控器包括:
采集模塊,用于根據(jù)用戶觸發(fā)的采集指令對用戶的語音進行采集;
所述采集模塊,還用于當接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集,并判斷通過采集獲得的總錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù);
停止模塊,用于若所述總錄音數(shù)據(jù)不為所述完整錄音數(shù)據(jù),繼續(xù)對用戶的語音進行采集,直至所述總錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集。
可選地,所述采集模塊包括:
緩存單元,用于根據(jù)所述語音采集指令將采集的語音數(shù)據(jù)緩存在預(yù)設(shè)數(shù)據(jù)緩存區(qū)中;
讀取單元,用于從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù);
寫入單元,用于將讀取獲得的語音數(shù)據(jù)寫入預(yù)設(shè)數(shù)據(jù)庫,所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)加上之前讀取的語音數(shù)據(jù)。
可選地,所述語音遙控器還包括:
判斷模塊,用于判斷所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)是否等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù);
所述讀取單元,還用于若所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)小于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù);
所述停止模塊,還用于若所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則停止從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。
可選地,所述語音遙控器還包括:
獲取模塊,用于獲取用戶觸發(fā)語音采集指令的時間,記為開始時間;
記錄模塊,用于當接收到用戶觸發(fā)的采集停止指令,記錄停止時間;
計算模塊,用于根據(jù)所述開始時間、所述停止時間和預(yù)設(shè)比特率計算獲得完整錄音數(shù)據(jù)的字節(jié)數(shù)。
可選地,所述計算模塊,還用于根據(jù)從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)的次數(shù)計算延遲時間;
所述判斷模塊,還用于判斷所述延遲時間是否大于預(yù)設(shè)時間;
所述停止模塊,還用于若所述延遲時間大于所述預(yù)設(shè)時間,則停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù)。
本發(fā)明在接收到用戶觸發(fā)的采集指令后,對用戶的語音進行采集,當接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集,直至采集獲得的錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集,本方案在接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集直至采集獲得的錄音數(shù)據(jù)為完整錄音數(shù)據(jù),因此本發(fā)明能夠保證錄音數(shù)據(jù)的完整性,使得尾音不丟失,可以準確有效的識別用戶的語音。
附圖說明
圖1為本發(fā)明尾音識別方法第一實施例的流程示意圖;
圖2為本發(fā)明第二實施例中所述根據(jù)用戶觸發(fā)的采集指令對用戶的語音進行采集步驟的細化流程示意圖;
圖3為本發(fā)明尾音識別方法第三實施例的流程示意圖;
圖4為本發(fā)明尾音識別方法第四實施例流程示意圖;
圖5為本發(fā)明尾音識別方法第五實施例的流程示意圖;
圖6為本發(fā)明語音遙控器第一實施例的功能模塊示意圖;
圖7為本發(fā)明第二實施例中所述采集模塊的細化功能模塊示意圖;
圖8為本發(fā)明語音遙控器第三實施例的功能模塊示意圖;
圖9為本發(fā)明語音遙控器第四實施例的功能模塊示意圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進一步說明。
具體實施方式
應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明提供一種尾音識別方法。
參照圖1,圖1為本發(fā)明尾音識別方法第一實施例的流程示意圖。
在本實施例中,該尾音識別方法包括:
步驟S10,根據(jù)用戶觸發(fā)的采集指令對用戶的語音進行采集;
用戶在所述語音遙控器上按下錄音按鍵,此時所述遙控器接收到錄音按鍵的狀態(tài)的為down,從而獲取觸發(fā)的語音采集指令,然后根據(jù)所述語音采集指令啟動所述語音遙控器的錄音功能,并消除歷史錄音數(shù)據(jù),為保存新的錄音數(shù)據(jù)做準備,然后語音遙控器對用戶的語音數(shù)據(jù)進行采集,同時監(jiān)聽采集獲得的語音數(shù)據(jù),判斷采集獲得的語音數(shù)據(jù)是否異常。具體實施中,當用戶用手指按下所述錄音按鍵,即處于down狀態(tài),在很短的時間內(nèi)移開手指,使得所述錄音按鍵處于up狀態(tài),所述語音遙控器不啟動錄音功能。在更多的實施中,用戶連續(xù)按下按上所述錄音按鍵,即所述錄音按鍵的狀態(tài)在down狀態(tài)和up狀態(tài)之間來回變化時,所述語音遙控器也不啟動錄音功能。
步驟S20,當接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集,并判斷通過采集獲得的總錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù);
所述遙控器接收到用戶觸發(fā)的采集停止指令,即所述遙控器中的錄音按鍵處于up狀態(tài)時,此時由于遙控器外層有外殼阻擋和周圍網(wǎng)絡(luò)環(huán)境的影響等,用戶的語音數(shù)據(jù)會延遲傳輸,因此不會立即停止對用戶的語音進行采集,所述遙控器繼續(xù)對用戶的語音進行采集,獲得總錄音數(shù)據(jù),然后判斷此時所述數(shù)據(jù)采集模塊采集獲得的總錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù)。具體實施中,可根據(jù)預(yù)設(shè)算法獲得的完整錄音數(shù)據(jù)的字節(jié)數(shù),然后判斷該總錄音數(shù)據(jù)的字節(jié)數(shù)是否與完整錄音數(shù)據(jù)的字節(jié)數(shù)相等,從而判斷該總錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù)。所述預(yù)設(shè)算法是人為設(shè)置的,可以根據(jù)不同的實際情況進行不同的設(shè)置。所述完整錄音數(shù)據(jù)的字節(jié)數(shù)是通過預(yù)設(shè)算法得到的,即要保證錄音數(shù)據(jù)的完整性需要獲取的語音數(shù)據(jù)字節(jié)數(shù)的大小,只有當獲取的語音數(shù)據(jù)的字節(jié)數(shù)與完整錄音數(shù)據(jù)的字節(jié)數(shù)相等,則可以保證錄音數(shù)據(jù)的完整性。在更多的實施中,可預(yù)設(shè)數(shù)據(jù)緩存區(qū),將采集獲得數(shù)據(jù)緩存在該數(shù)據(jù)緩存區(qū)中,然后讀取固定大小的語音數(shù)據(jù),當讀取完該數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù)時,讀取獲得的語音數(shù)據(jù)即可判定為完整錄音數(shù)據(jù)。
步驟S30,若所述總錄音數(shù)據(jù)不為所述完整錄音數(shù)據(jù),則繼續(xù)對用戶的語音進行采集,直至所述總錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集。
通過判斷得到所述語音遙控器采集獲得的總錄音數(shù)據(jù)不為所述完整錄音數(shù)據(jù),則繼續(xù)對用戶的語音進行采集,直至語音遙控器采集獲得的總錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集,從而保證錄音數(shù)據(jù)的完整性。
在本實施例中,本發(fā)明在接收到用戶觸發(fā)的采集指令后,對用戶的語音進行采集,當接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集,直至采集獲得的錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集,本方案在接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集直至采集獲得的錄音數(shù)據(jù)為完整錄音數(shù)據(jù),因此本發(fā)明能夠保證錄音數(shù)據(jù)的完整性,使得尾音不丟失,可以準確有效的識別用戶的語音。
進一步地,參照圖2,基于上述第一實施例可得本發(fā)明發(fā)明尾音識別方法第二實施例中所述步驟S10的細化流程示意圖,在本實施例中,所述步驟S10包括:
步驟S11,根據(jù)所述語音采集指令將采集的語音數(shù)據(jù)緩存在預(yù)設(shè)數(shù)據(jù)緩存區(qū)中;
所述語音遙控器接收到用戶觸發(fā)的語音采集指令后,即所述語音遙控器中的錄音按鍵處于down狀態(tài),根據(jù)所述語音采集指令傳輸?shù)絾铀稣Z音遙控器的錄音功能。在本實施例中,所述語音遙控器中預(yù)設(shè)有語音數(shù)據(jù)緩存區(qū),用于緩存采集獲得的語音數(shù)據(jù),即根據(jù)所述語音采集指令先將用戶的語音數(shù)據(jù)緩存在預(yù)設(shè)數(shù)據(jù)緩存區(qū)中。
步驟S12,從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù);
所述語音遙控器將用戶的語音數(shù)據(jù)緩存在所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中后,所述語音遙控器從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù),即讀取固定大小的語音數(shù)據(jù)。所述預(yù)設(shè)字節(jié)數(shù)可以認為設(shè)置,具體實施中,可通過多次試驗獲得不同實際情況下的最優(yōu)值,當然也可以設(shè)置一個普遍的值,提高所述語音遙控器的兼容性。所述語音遙控器在所述預(yù)設(shè)緩存區(qū)讀取語音數(shù)據(jù)的同時,所述預(yù)設(shè)緩存區(qū)可緩存用戶的語音數(shù)據(jù),即緩存和讀取可同時進行。當然也可以在用戶的語音數(shù)據(jù)緩存完之后,再從預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。具體實施中,當所述數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù)的字節(jié)數(shù)小于預(yù)設(shè)字節(jié)數(shù)時,所述語音遙控器讀取該語音數(shù)據(jù)后,需記錄該語音數(shù)據(jù)的字節(jié)數(shù),即記錄實際讀取獲得的語音數(shù)據(jù)的字節(jié)數(shù)。
步驟S13,將讀取獲得的語音數(shù)據(jù)寫入預(yù)設(shè)數(shù)據(jù)庫,所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)加上之前讀取的語音數(shù)據(jù)。
所述語音遙控器讀取獲得語音數(shù)據(jù)后,將讀取獲得的語音數(shù)據(jù)寫入預(yù)設(shè)數(shù)據(jù)庫,所述預(yù)設(shè)數(shù)據(jù)庫用于存儲讀取獲得的語音數(shù)據(jù),包括當前讀取的語音數(shù)據(jù)和之前讀取的語音數(shù)據(jù),即所述預(yù)設(shè)數(shù)據(jù)庫中的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)和之前讀取的語音數(shù)據(jù)之和。具體實施中,在事件完成之后,所述預(yù)設(shè)數(shù)據(jù)庫中的語音數(shù)據(jù)以及所述預(yù)設(shè)緩存區(qū)中的語音數(shù)據(jù)都會清空,便于下一次采集,當然也可以在下一次采集開始時,清空歷史語音數(shù)。
在本實施例中,本發(fā)明該語音遙控器中預(yù)設(shè)有語音數(shù)據(jù)緩存區(qū),可將用戶的語音數(shù)據(jù)進行緩存,然后所述語音遙控器從所述數(shù)據(jù)緩存區(qū)中讀取固定大小的語音數(shù)據(jù),并將其寫入預(yù)設(shè)數(shù)據(jù)庫中,使得所述預(yù)設(shè)數(shù)據(jù)庫中的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)和之前讀取的語音數(shù)據(jù)之和,因此本發(fā)明能夠在緩存用戶的語音數(shù)據(jù)的同時,讀取獲得語音數(shù)據(jù),減少采集時間。
進一步地,參照圖3,基于上述第一或第二實施例可得本發(fā)明尾音識別方法第三實施例的流程示意圖,在本實施例中,所述步驟S20包括:
步驟S21,判斷所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)是否等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù);
所述語音遙控器在接收到用戶觸發(fā)的采集停止指令后,即所述錄音按鍵的狀態(tài)處于up狀態(tài),繼續(xù)對用戶的語音進行采集,所述語音遙控器從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)后,判斷所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)是否等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù)。
所述步驟S30包括:
若所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)小于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則執(zhí)行步驟S12,即從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù);
步驟S31,若所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則停止從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。
所述語音遙控器通過判斷發(fā)現(xiàn)所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)小于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則執(zhí)行步驟S12:從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù),即繼續(xù)對用戶的語音進行采集,然后將讀取獲得的語音數(shù)據(jù)寫入預(yù)設(shè)數(shù)據(jù)庫,所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)加上之前讀取的語音數(shù)據(jù),在所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則停止從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。
在本實施例中,本發(fā)明在接收到用戶觸發(fā)的采集停止指令后,所述語音遙控器繼續(xù)從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù),然后判斷所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)是否等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),若等于,則停止讀取,若小于,則繼續(xù)讀取,本方案通過在預(yù)設(shè)數(shù)據(jù)緩存區(qū)緩存語音數(shù)據(jù)和讀取語音數(shù)據(jù),并在觸發(fā)停止指令時,繼續(xù)讀取語音數(shù)據(jù),可快速采集用戶的語音數(shù)據(jù),也能夠有效的保證錄音數(shù)據(jù)的完整性。
進一步地,參照圖4,基于上述第一、第二或第三實施例可得本發(fā)明尾音識別方法第四實施例流程示意圖,在本實施例中,所述步驟S20之前,所述尾音識別方法還包括:
步驟S40,獲取用戶觸發(fā)語音采集指令的時間,記為開始時間;
所述語音遙控器接收到用戶觸發(fā)的數(shù)據(jù)采集指令,即所述語音遙控器中的錄音按鍵處于down狀態(tài),此時記錄用戶觸發(fā)語音采集指令的時間,該時間為數(shù)據(jù)采集的開始時間。
步驟S50,當接收到用戶觸發(fā)的采集停止指令,記錄停止時間;
所述語音遙控器接收到用戶觸發(fā)的采集停止指令,即所述語音遙控器中的錄音按鍵處于up狀態(tài),此時記錄用戶觸發(fā)采集停止指令的時間,該時間為采集停止時間,但所述所述語音遙控器繼續(xù)從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。
步驟S60,根據(jù)所述開始時間、所述停止時間和預(yù)設(shè)比特率計算獲得完整錄音數(shù)據(jù)的字節(jié)數(shù)。
所述所述語音遙控器獲得所述開始時間、所述停止時間和預(yù)設(shè)比特率后,可根據(jù)所述開始時間、所述停止時間和預(yù)設(shè)比特率計算完整錄音數(shù)據(jù)的字節(jié)數(shù),即根據(jù)開始時間和停止時間計算獲得采集時間,然后采集時間與預(yù)設(shè)比特率相乘可以得到完整錄音數(shù)據(jù)的字節(jié)數(shù),在該總錄音數(shù)據(jù)的字節(jié)數(shù)等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù)時,判定所述總錄音數(shù)據(jù)為所述完整錄音數(shù)據(jù)。所述預(yù)設(shè)比特率可以通過多次試驗獲得最優(yōu)值。在本實施例中,所述預(yù)設(shè)比特率為每毫秒1600字節(jié)。
在本實施例中,本發(fā)明根據(jù)采集語音數(shù)據(jù)的開始時間和停止時間可以得到采集時間,然后將所述采集時間與預(yù)設(shè)比特率相乘得到完整錄音數(shù)據(jù)的字節(jié)數(shù),在該總錄音數(shù)據(jù)的字節(jié)數(shù)等于完整錄音數(shù)據(jù)的字節(jié)數(shù)時,判定所述總錄音數(shù)據(jù)為所述完整錄音數(shù)據(jù),本發(fā)明通過計算完整錄音數(shù)據(jù)的字節(jié)數(shù),可快速判定總錄音數(shù)據(jù)的完整性,增強語音識別的準確度。
進一步地,參照圖5,基于上述第一、第二、第三或第四實施例可得本發(fā)明尾音識別方法第五實施例的流程示意圖,在本實施例中,所述尾音識別方法還包括:
步驟S70,根據(jù)從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)的次數(shù)計算延遲時間;
步驟S80,判斷所述延遲時間是否大于預(yù)設(shè)時間;
步驟S90,若所述延遲時間大于所述預(yù)設(shè)時間,則停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù)。
所述語音遙控器從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)的次數(shù),根據(jù)所述次數(shù)計算延遲時間,然后判斷所述延遲時間是否大于預(yù)設(shè)時間,若所述延遲時間大于所述預(yù)設(shè)時間,則停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù),則所述所述語音遙控器判定當前的語音數(shù)據(jù)的狀態(tài)為異常,并停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù),
在本實施例中,本發(fā)明所述語音遙控器獲取從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)的次數(shù),并根據(jù)該次數(shù)計算延遲時間,在該延遲時間大于所述預(yù)設(shè)時間時,停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù),本發(fā)明通過預(yù)設(shè)時間驗證延遲時間的有效性,能夠在異常情況下,立即停止采集語音,不會造成時間的浪費。
本發(fā)明進一步提供一種語音遙控器。
參照圖6,圖6為本發(fā)明語音遙控器第一實施例的功能模塊示意圖。
在本實施例中,該語音遙控器包括:
采集模塊10,用于根據(jù)用戶觸發(fā)的采集指令對用戶的語音進行采集;
用戶在所述語音遙控器上按下錄音按鍵,此時所述遙控器接收到錄音按鍵的狀態(tài)的為down,從而獲取觸發(fā)的語音采集指令,然后根據(jù)所述語音采集指令啟動所述語音遙控器的錄音功能,并消除歷史錄音數(shù)據(jù),為保存新的錄音數(shù)據(jù)做準備,然后語音遙控器對用戶的語音數(shù)據(jù)進行采集,同時監(jiān)聽采集獲得的語音數(shù)據(jù),判斷采集獲得的語音數(shù)據(jù)是否異常。具體實施中,當用戶用手指按下所述錄音按鍵,即處于down狀態(tài),在很短的時間內(nèi)移開手指,使得所述錄音按鍵處于up狀態(tài),所述語音遙控器不啟動錄音功能。在更多的實施中,用戶連續(xù)按下按上所述錄音按鍵,即所述錄音按鍵的狀態(tài)在down狀態(tài)和up狀態(tài)之間來回變化時,所述語音遙控器也不啟動錄音功能。
所述采集模塊10,還用于當接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集,并判斷通過采集獲得的總錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù);
所述遙控器接收到用戶觸發(fā)的采集停止指令,即所述遙控器中的錄音按鍵處于up狀態(tài)時,此時由于遙控器外層有外殼阻擋和周圍網(wǎng)絡(luò)環(huán)境的影響等,用戶的語音數(shù)據(jù)會延遲傳輸,因此不會立即停止對用戶的語音進行采集,所述遙控器繼續(xù)對用戶的語音進行采集,獲得總錄音數(shù)據(jù),然后判斷此時所述數(shù)據(jù)采集模塊采集獲得的總錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù)。具體實施中,可根據(jù)預(yù)設(shè)算法獲得的完整錄音數(shù)據(jù)的字節(jié)數(shù),然后判斷該總錄音數(shù)據(jù)的字節(jié)數(shù)是否與完整錄音數(shù)據(jù)的字節(jié)數(shù)相等,從而判斷該總錄音數(shù)據(jù)是否為完整錄音數(shù)據(jù)。所述預(yù)設(shè)算法是人為設(shè)置的,可以根據(jù)不同的實際情況進行不同的設(shè)置。所述完整錄音數(shù)據(jù)的字節(jié)數(shù)是通過預(yù)設(shè)算法得到的,即要保證錄音數(shù)據(jù)的完整性需要獲取的語音數(shù)據(jù)字節(jié)數(shù)的大小,只有當獲取的語音數(shù)據(jù)的字節(jié)數(shù)與完整錄音數(shù)據(jù)的字節(jié)數(shù)相等,則可以保證錄音數(shù)據(jù)的完整性。在更多的實施中,可預(yù)設(shè)數(shù)據(jù)緩存區(qū),將采集獲得數(shù)據(jù)緩存在該數(shù)據(jù)緩存區(qū)中,然后讀取固定大小的語音數(shù)據(jù),當讀取完該數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù)時,讀取獲得的語音數(shù)據(jù)即可判定為完整錄音數(shù)據(jù)。
停止模塊20,用于若所述總錄音數(shù)據(jù)不為所述完整錄音數(shù)據(jù),則繼續(xù)對用戶的語音進行采集,直至所述總錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集。
通過判斷獲得所述語音遙控器中的數(shù)據(jù)采集模塊采集獲得的總錄音數(shù)據(jù)不為所述完整錄音數(shù)據(jù),則繼續(xù)對用戶的語音進行采集,直至數(shù)據(jù)采集模塊采集獲得的總錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集,從而保證錄音數(shù)據(jù)的完整性。
在本實施例中,本發(fā)明在接收到用戶觸發(fā)的采集指令后,對用戶的語音進行采集,當接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集,直至采集獲得的錄音數(shù)據(jù)為完整錄音數(shù)據(jù)時,停止對用戶的語音進行采集,本方案在接收到用戶觸發(fā)的采集停止指令時,繼續(xù)對用戶的語音進行采集直至采集獲得的錄音數(shù)據(jù)為完整錄音數(shù)據(jù),因此本發(fā)明能夠保證錄音數(shù)據(jù)的完整性,使得尾音不丟失,可以準確有效的識別用戶的語音。
進一步地,參照圖7,基于上述第一實施例可得本發(fā)明發(fā)明語音遙控器第二實施例中所述采集模塊的細化功能模塊示意圖,基于上述實施例,在本實施例中,所述采集模塊10包括:
緩存單元11,用于根據(jù)所述語音采集指令將采集的語音數(shù)據(jù)緩存在預(yù)設(shè)數(shù)據(jù)緩存區(qū)中;
所述語音遙控器接收到用戶觸發(fā)的語音采集指令后,即所述語音遙控器中的錄音按鍵處于down狀態(tài),根據(jù)所述語音采集指令傳輸?shù)絾铀稣Z音遙控器的錄音功能。在本實施例中,所述語音遙控器中預(yù)設(shè)有語音數(shù)據(jù)緩存區(qū),用于緩存采集獲得的語音數(shù)據(jù),即根據(jù)所述語音采集指令先將用戶的語音數(shù)據(jù)緩存在預(yù)設(shè)數(shù)據(jù)緩存區(qū)中。
讀取單元12,用于從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù);
所述語音遙控器將用戶的語音數(shù)據(jù)緩存在所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中后,所述語音遙控器從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù),即讀取固定大小的語音數(shù)據(jù)。所述預(yù)設(shè)字節(jié)數(shù)可以認為設(shè)置,具體實施中,可通過多次試驗獲得不同實際情況下的最優(yōu)值,當然也可以設(shè)置一個普遍的值,提高所述語音遙控器的兼容性。所述語音遙控器在所述預(yù)設(shè)緩存區(qū)讀取語音數(shù)據(jù)的同時,所述預(yù)設(shè)緩存區(qū)可緩存用戶的語音數(shù)據(jù),即緩存和讀取可同時進行。當然也可以在用戶的語音數(shù)據(jù)緩存完之后,再從預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。具體實施中,當所述數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù)的字節(jié)數(shù)小于預(yù)設(shè)字節(jié)數(shù)時,所述語音遙控器讀取該語音數(shù)據(jù)后,需記錄該語音數(shù)據(jù)的字節(jié)數(shù),即記錄實際讀取獲得的語音數(shù)據(jù)的字節(jié)數(shù)。
寫入單元13,用于將讀取獲得的語音數(shù)據(jù)寫入預(yù)設(shè)數(shù)據(jù)庫,所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)加上之前讀取的語音數(shù)據(jù)。
所述語音遙控器讀取獲得語音數(shù)據(jù)后,將讀取獲得的語音數(shù)據(jù)寫入預(yù)設(shè)數(shù)據(jù)庫,所述預(yù)設(shè)數(shù)據(jù)庫用于存儲讀取獲得的語音數(shù)據(jù),包括當前讀取的語音數(shù)據(jù)和之前讀取的語音數(shù)據(jù),即所述預(yù)設(shè)數(shù)據(jù)庫中的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)和之前讀取的語音數(shù)據(jù)之和。具體實施中,在事件完成之后,所述預(yù)設(shè)數(shù)據(jù)庫中的語音數(shù)據(jù)以及所述預(yù)設(shè)緩存區(qū)中的語音數(shù)據(jù)都會清空,便于下一次采集,當然也可以在下一次采集開始時,清空歷史語音數(shù)。
在本實施例中,本發(fā)明該語音遙控器中預(yù)設(shè)有語音數(shù)據(jù)緩存區(qū),可將用戶的語音數(shù)據(jù)進行緩存,然后所述語音遙控器從所述數(shù)據(jù)緩存區(qū)中讀取固定大小的語音數(shù)據(jù),并將其寫入預(yù)設(shè)數(shù)據(jù)庫中,使得所述預(yù)設(shè)數(shù)據(jù)庫中的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)和之前讀取的語音數(shù)據(jù)之和,因此本發(fā)明能夠在緩存用戶的語音數(shù)據(jù)的同時,讀取獲得語音數(shù)據(jù),減少采集時間。
進一步地,參照圖8,基于上述第一或第二實施例可得本發(fā)明語音遙控器第三實施例的功能模塊示意圖,在本實施例中,所述語音遙控器還包括:
判斷模塊30,用于判斷所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)是否等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù);
所述語音遙控器在接收到用戶觸發(fā)的采集停止指令后,即所述錄音按鍵的狀態(tài)處于up狀態(tài),繼續(xù)對用戶的語音進行采集,所述語音遙控器從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)后,判斷所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)是否等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù)。
所述讀取單元12,還用于若所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)小于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則返回所述讀取單元,用于從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù);
所述停止模塊20,還用于若所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則停止從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。
所述語音遙控器通過判斷發(fā)現(xiàn)所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)小于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則返回所述讀取單元12,用于從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取預(yù)設(shè)字節(jié)數(shù)的語音數(shù)據(jù),即繼續(xù)對用戶的語音進行采集,然后將讀取獲得的語音數(shù)據(jù)寫入預(yù)設(shè)數(shù)據(jù)庫,所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)為當前讀取的語音數(shù)據(jù)加上之前讀取的語音數(shù)據(jù),在所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),則停止從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。
在本實施例中,本發(fā)明在接收到用戶觸發(fā)的采集停止指令后,所述語音遙控器繼續(xù)從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù),然后判斷所述預(yù)設(shè)數(shù)據(jù)庫中存儲的語音數(shù)據(jù)的字節(jié)數(shù)是否等于所述完整錄音數(shù)據(jù)的字節(jié)數(shù),若等于,則停止讀取,若小于,則繼續(xù)讀取,本方案通過在預(yù)設(shè)數(shù)據(jù)緩存區(qū)緩存語音數(shù)據(jù)和讀取語音數(shù)據(jù),并在觸發(fā)停止指令時,繼續(xù)讀取語音數(shù)據(jù),可快速采集用戶的語音數(shù)據(jù),也能夠有效的保證錄音數(shù)據(jù)的完整性。
進一步地,參照圖9,基于上述第一、第二或第三實施例可得本發(fā)明語音遙控器第四實施例的功能模塊示意圖,在本實施例中,所述語音遙控器還包括:
獲取模塊40,用于獲取用戶觸發(fā)語音采集指令的時間,記為開始時間;
所述語音遙控器接收到用戶觸發(fā)的數(shù)據(jù)采集指令,即所述語音遙控器中的錄音按鍵處于down狀態(tài),此時記錄用戶觸發(fā)語音采集指令的時間,該時間為數(shù)據(jù)采集的開始時間。
記錄模塊50,用于當接收到用戶觸發(fā)的采集停止指令,記錄停止時間;
所述語音遙控器接收到用戶觸發(fā)的采集停止指令,即所述語音遙控器中的錄音按鍵處于up狀態(tài),此時記錄用戶觸發(fā)采集停止指令的時間,該時間為采集停止時間,但所述語音遙控器繼續(xù)從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)。
計算模塊60,用于根據(jù)所述開始時間、所述停止時間和預(yù)設(shè)比特率計算獲得完整錄音數(shù)據(jù)的字節(jié)數(shù)。
所述所述語音遙控器獲得所述開始時間、所述停止時間和預(yù)設(shè)比特率后,可根據(jù)所述開始時間、所述停止時間和預(yù)設(shè)比特率計算完整錄音數(shù)據(jù)的字節(jié)數(shù),即根據(jù)開始時間和停止時間計算獲得采集時間,然后采集時間與預(yù)設(shè)比特率相乘可以得到完整錄音數(shù)據(jù)的字節(jié)數(shù)。所述預(yù)設(shè)比特率可以通過多次試驗獲得最優(yōu)值。在本實施例中,所述預(yù)設(shè)比特率為每毫秒1600字節(jié)。
在本實施例中,本發(fā)明根據(jù)采集語音數(shù)據(jù)的開始時間和停止時間可以得到采集時間,然后將所述采集時間與預(yù)設(shè)比特率相乘得到完整錄音數(shù)據(jù)的字節(jié)數(shù),在該總錄音數(shù)據(jù)的字節(jié)數(shù)等于完整錄音數(shù)據(jù)的字節(jié)數(shù)時,判定所述總錄音數(shù)據(jù)為所述完整錄音數(shù)據(jù),本發(fā)明通過計算完整錄音數(shù)據(jù)的字節(jié)數(shù),可快速判定總錄音數(shù)據(jù)的完整性,增強語音識別的準確度。
進一步地,基于上述第一、第二、第三或第四實施例可得本發(fā)明語音遙控器第五實施例,在本實施例中,所述計算模塊60,用于根據(jù)所述語音遙控器中的數(shù)據(jù)采集模塊從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)的次數(shù)計算延遲時間;
所述判斷模塊30,用于判斷所述延遲時間是否大于預(yù)設(shè)時間;
所述停止模塊20,用于若所述延遲時間大于所述預(yù)設(shè)時間,則停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù)。
所述語音遙控器從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)的次數(shù),根據(jù)所述次數(shù)計算延遲時間,然后判斷所述延遲時間是否大于預(yù)設(shè)時間,若所述延遲時間大于所述預(yù)設(shè)時間,則停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù),則所述所述語音遙控器判定當前的語音數(shù)據(jù)的狀態(tài)為異常,并停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù),
在本實施例中,本發(fā)明所述語音遙控器獲取從所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中讀取語音數(shù)據(jù)的次數(shù),并根據(jù)該次數(shù)計算延遲時間,在該延遲時間大于所述預(yù)設(shè)時間時,停止讀取所述預(yù)設(shè)數(shù)據(jù)緩存區(qū)中的語音數(shù)據(jù),本發(fā)明通過預(yù)設(shè)時間驗證延遲時間的有效性,能夠在異常情況下,立即停止采集語音,不會造成時間的浪費。
以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。