本發(fā)明屬于聲學(xué)處理領(lǐng)域,尤其涉及一種調(diào)節(jié)語音音量的方法和裝置。
背景技術(shù):
手機(jī)作為一種大眾化電子產(chǎn)品,已經(jīng)成為生活的必需品,其移動性為人們提供了很大的方便。由于手機(jī)的移動性,使得用戶可以在各種環(huán)境中使用手機(jī),例如比較安靜的環(huán)境或比較嘈雜的環(huán)境。然而,當(dāng)用戶在不同的環(huán)境中使用手機(jī)進(jìn)行通話時,環(huán)境噪聲對用戶的干擾不同。在比較嘈雜的環(huán)境中進(jìn)行通話時,手機(jī)的通話音量可能讓用戶很難聽清楚,而在比較安靜的環(huán)境中進(jìn)行通話時,手機(jī)的通話音量可能又顯得過大。
現(xiàn)有的一種調(diào)節(jié)語音音量的方法是計算總聲音數(shù)據(jù)的能量和語音數(shù)據(jù)的能量,將總聲音數(shù)據(jù)的能量減去語音數(shù)據(jù)的能量,獲得環(huán)境噪音數(shù)據(jù)的能量,再根據(jù)環(huán)境噪音數(shù)據(jù)的能量去調(diào)節(jié)語音數(shù)據(jù)的能量。
上述現(xiàn)有的調(diào)節(jié)語音音量的方法實際上是通過抑制環(huán)境噪音數(shù)據(jù)的能量來實現(xiàn)調(diào)節(jié)語音數(shù)據(jù)的能量的目的,這種方式的效果有時會欠佳,例如,即使抑制了環(huán)境噪音數(shù)據(jù)的能量,但語音數(shù)據(jù)的能量仍然很小的話,則用戶仍然聽不清楚語音的內(nèi)容。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種調(diào)節(jié)語音音量的方法和裝置,以自適應(yīng)地調(diào)節(jié)語音音量,使得在任何環(huán)境下用戶都能聽清語音內(nèi)容。
本發(fā)明第一方面提供一種調(diào)節(jié)語音音量的方法,所述方法包括:
獲取單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值;
根據(jù)所述單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值,判斷當(dāng)前的聲音是否為語音;
若所述當(dāng)前聲音為語音且音量低于預(yù)設(shè)音量閾值,則調(diào)節(jié)所述語音的音量直至所述語音的音量不低于所述預(yù)設(shè)音量閾值。
本發(fā)明第二方面提供一種調(diào)節(jié)語音音量的裝置,所述裝置包括:
獲取模塊,用于獲取單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值;
判斷模塊,用于根據(jù)所述單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值,判斷當(dāng)前的聲音是否為語音;
調(diào)節(jié)模塊,用于若所述當(dāng)前聲音為語音且音量低于預(yù)設(shè)音量閾值,則調(diào)節(jié)所述語音的音量直至所述語音的音量不低于所述預(yù)設(shè)音量閾值。
從上述本發(fā)明技術(shù)方案可知,本發(fā)明的技術(shù)方案是在判斷當(dāng)前聲音是為語音后,對語音的音量進(jìn)行調(diào)節(jié),與現(xiàn)有技術(shù)通過抑制環(huán)境噪音數(shù)據(jù)的能量來實現(xiàn)調(diào)節(jié)語音數(shù)據(jù)的能量的目的相比,由于本發(fā)明的技術(shù)方案是直接去調(diào)節(jié)語音的音量而并非去抑制噪音音量,因此,本發(fā)明提供的技術(shù)方案調(diào)節(jié)語音的效果更好,使得用戶在嘈雜的環(huán)境下亦能聽清語音內(nèi)容。
附圖說明
圖1是本發(fā)明實施例一提供的調(diào)節(jié)語音音量的方法的實現(xiàn)流程示意圖;
圖2是本發(fā)明實施例二提供的調(diào)節(jié)語音音量的裝置的結(jié)構(gòu)示意圖;
圖3是本發(fā)明實施例三提供的調(diào)節(jié)語音音量的裝置的結(jié)構(gòu)示意圖;
圖4是本發(fā)明實施例四提供的調(diào)節(jié)語音音量的裝置的結(jié)構(gòu)示意圖;
圖5是本發(fā)明實施例五提供的調(diào)節(jié)語音音量的裝置的結(jié)構(gòu)示意圖;
圖6-a是本發(fā)明實施例六提供的調(diào)節(jié)語音音量的裝置的結(jié)構(gòu)示意圖;
圖6-b是本發(fā)明實施例七提供的調(diào)節(jié)語音音量的裝置的結(jié)構(gòu)示意圖;
圖6-c是本發(fā)明實施例八提供的調(diào)節(jié)語音音量的裝置的結(jié)構(gòu)示意圖;
圖6-d是本發(fā)明實施例八提供的調(diào)節(jié)語音音量的裝置的結(jié)構(gòu)示意圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案及有益效果更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明實施例提供一種調(diào)節(jié)語音音量的方法,所述方法包括:獲取單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值;根據(jù)所述單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值,判斷當(dāng)前聲音是否為語音;若所述當(dāng)前聲音為語音且音量低于預(yù)設(shè)音量閾值,則調(diào)節(jié)所述語音的音量直至所述語音的音量不低于所述預(yù)設(shè)音量閾值。本發(fā)明實施例還提供相應(yīng)的調(diào)節(jié)語音音量的裝置。以下分別進(jìn)行詳細(xì)說明。
請參閱附圖1,是本發(fā)明實施例一提供的調(diào)節(jié)語音音量的方法的實現(xiàn)流程示意圖,主要包括以下步驟S101至步驟S103,詳細(xì)說明如下:
S101,獲取單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值。
在本發(fā)明實施例中,在獲取單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值之前,所述方法還包括將來自麥克的模擬聲音數(shù)據(jù)轉(zhuǎn)換為數(shù)字聲音數(shù)據(jù)并調(diào)節(jié)數(shù)字聲音數(shù)據(jù)的增益,例如,模數(shù)轉(zhuǎn)換模塊即模數(shù)轉(zhuǎn)換器(ADC)將來自麥克的模擬聲音數(shù)據(jù)轉(zhuǎn)換為數(shù)字聲音數(shù)據(jù),并且,模數(shù)轉(zhuǎn)換模塊中的接口接收軟件提供的增益(Gain),從而調(diào)節(jié)數(shù)字聲音數(shù)據(jù)的增益。
作為本發(fā)明一個實施例,獲取單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值可通過如下步驟S1011至S1013實現(xiàn):
S1011,對數(shù)字聲音數(shù)據(jù)進(jìn)行快速離散傅立葉變換,獲得單位時間內(nèi)的頻譜數(shù)據(jù)。
具體可以是將連續(xù)的數(shù)字聲音數(shù)據(jù)按照單位時間數(shù)據(jù)幀置入控制器的硬件傅立葉計算單元中進(jìn)行快速離散傅立葉變換,獲得單位時間內(nèi)的頻譜數(shù)據(jù)。
需要說明的是,由于在本發(fā)明實施例中,傅立葉計算單元通過硬件實現(xiàn),因此,對數(shù)字聲音數(shù)據(jù)進(jìn)行快速離散傅立葉變換,獲得單位時間內(nèi)的頻譜數(shù)據(jù)的計算速度相當(dāng)快,且穩(wěn)定性好。
S1012,計算頻譜數(shù)據(jù)的平方以獲得各個頻點的能量譜。
S1013,將各個頻點的能量譜求和后轉(zhuǎn)換為功率得到單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值。
S102,根據(jù)經(jīng)步驟S101獲取的單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值,判斷當(dāng)前聲音是否為語音。
由于人的聲音具有連續(xù)性,即,當(dāng)聲音連續(xù)時間超過設(shè)定的閾值,例如,超過100ms,則可認(rèn)為該聲音為人的聲音即語音,當(dāng)連續(xù)一定時間,例如,超過300ms無聲則認(rèn)為沒人說話。因此,根據(jù)經(jīng)步驟S101獲取的單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值,判斷當(dāng)前聲音是否為語音具體可以是:計算連續(xù)預(yù)設(shè)時間內(nèi)當(dāng)前數(shù)字聲音數(shù)據(jù)的能量最大值與能量最小值之差,若連續(xù)預(yù)設(shè)時間內(nèi)當(dāng)前數(shù)字聲音數(shù)據(jù)的能量最大值與能量最小值之差大于預(yù)設(shè)能量閾值,則確定當(dāng)前聲音為語音。
S103,若當(dāng)前聲音為語音且音量低于預(yù)設(shè)音量閾值,則調(diào)節(jié)語音的音量直至語音的音量不低于預(yù)設(shè)音量閾值。
在本發(fā)明一個實施例中,調(diào)節(jié)語音的音量直至語音的音量不低于預(yù)設(shè)音量閾值可以是:將所述語音的音量與預(yù)設(shè)音量閾值比較,若所述語音的音量小于所述預(yù)設(shè)音量閾值,則向模數(shù)轉(zhuǎn)換模塊反饋增益,以使模數(shù)轉(zhuǎn)換模塊根據(jù)增益增大語音的音量直至語音的音量不低于所述預(yù)設(shè)音量閾值。
如前所述,本發(fā)明實施例的模數(shù)轉(zhuǎn)換模塊實際是一個模數(shù)轉(zhuǎn)換器(ADC)除了用于將來自麥克的模擬聲音數(shù)據(jù)轉(zhuǎn)換為數(shù)字聲音數(shù)據(jù)之外,其中的接口還接收軟件提供的增益(Gain);從接口讀取軟件提供的當(dāng)前增益后,若語音音量偏小,則將增益增大,再將增大的增益值寫入接口,ADC將該增益設(shè)置為對應(yīng)芯片內(nèi)部運(yùn)算放大器的增益值,從而調(diào)節(jié)數(shù)字聲音數(shù)據(jù)的增益。
從上述附圖1示例的調(diào)節(jié)語音音量的方法可知,是在判斷當(dāng)前聲音是為語音后,對語音的音量進(jìn)行調(diào)節(jié),與現(xiàn)有技術(shù)通過抑制環(huán)境噪音數(shù)據(jù)的能量來實現(xiàn)調(diào)節(jié)語音數(shù)據(jù)的能量的目的相比,由于本發(fā)明實施例提供的方法是直接去調(diào)節(jié)語音的音量而并非去抑制噪音音量,因此,本發(fā)明實施例提供的方法調(diào)節(jié)語音的效果更好,使得用戶在嘈雜的環(huán)境下亦能聽清語音內(nèi)容。
請參閱附圖2,是本發(fā)明實施例二提供的調(diào)節(jié)語音音量的裝置的結(jié)構(gòu)示意圖。為了便于說明,附圖2僅示出了與本發(fā)明實施例相關(guān)的部分。附圖2示例的調(diào)節(jié)語音音量的裝置可以是附圖1示例的調(diào)節(jié)語音音量的方法的執(zhí)行主體。附圖2示例的調(diào)節(jié)語音音量的裝置主要包括獲取模塊201、判斷模塊202和調(diào)節(jié)模塊203,其中:
獲取模塊201,用于獲取單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值;
判斷模塊202,用于根據(jù)單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值,判斷當(dāng)前的聲音是否為語音;
調(diào)節(jié)模塊203,用于若當(dāng)前聲音為語音且音量低于預(yù)設(shè)音量閾值,則調(diào)節(jié)語音的音量直至語音的音量不低于預(yù)設(shè)音量閾值。
需要說明的是,以上附圖2示例的調(diào)節(jié)語音音量的裝置的實施方式中,各功能模塊的劃分僅是舉例說明,實際應(yīng)用中可以根據(jù)需要,例如相應(yīng)硬件的配置要求或者軟件的實現(xiàn)的便利考慮,而將上述功能分配由不同的功能模塊完成,即將所述調(diào)節(jié)語音音量的裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。而且,實際應(yīng)用中,本實施例中的相應(yīng)的功能模塊可以是由相應(yīng)的硬件實現(xiàn),也可以由相應(yīng)的硬件執(zhí)行相應(yīng)的軟件完成,例如,前述的判斷模塊,可以是具有執(zhí)行前述根據(jù)單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值,判斷當(dāng)前的聲音是否為語音的硬件,例如判斷器,也可以是能夠執(zhí)行相應(yīng)計算機(jī)程序從而完成前述功能的一般處理器或者其他硬件設(shè)備;再如前述的調(diào)節(jié)模塊,可以是執(zhí)行若當(dāng)前聲音為語音且音量低于預(yù)設(shè)音量閾值,則調(diào)節(jié)語音的音量直至語音的音量不低于預(yù)設(shè)音量閾值的硬件,例如調(diào)節(jié)器,也可以是能夠執(zhí)行相應(yīng)計算機(jī)程序從而完成前述功能的一般處理器或者其他硬件設(shè)備(本說明書提供的各個實施例都可應(yīng)用上述描述原則)。
附圖2示例的獲取模塊201可以包括變換單元301、能量譜計算單元302和能量值獲取單元303,如附圖3所示本發(fā)明實施例三提供的調(diào)節(jié)語音音量的裝置,其中:
變換單元301,用于對數(shù)字聲音數(shù)據(jù)進(jìn)行快速離散傅立葉變換,獲得單位時間內(nèi)的頻譜數(shù)據(jù);
能量譜計算單元302,用于計算頻譜數(shù)據(jù)的平方以獲得各個頻點的能量譜;
能量值獲取單元303,用于將各個頻點的能量譜求和后轉(zhuǎn)換為功率得到單位時間幀上數(shù)字聲音數(shù)據(jù)的能量值。
附圖2示例的判斷模塊202可以包括差值計算單元401和確定單元402,如附圖4所示本發(fā)明實施例四提供的調(diào)節(jié)語音音量的裝置,其中:
差值計算單元401,用于計算連續(xù)預(yù)設(shè)時間內(nèi)當(dāng)前數(shù)字聲音數(shù)據(jù)的能量最大值與能量最小值之差;
確定單元402,用于若連續(xù)預(yù)設(shè)時間內(nèi)當(dāng)前數(shù)字聲音數(shù)據(jù)的能量最大值與能量最小值之差大于預(yù)設(shè)能量閾值,則確定當(dāng)前聲音為語音。
附圖2示例的調(diào)節(jié)模塊203可以包括比較單元501和增益反饋單元502,如附圖5所示本發(fā)明實施例四提供的調(diào)節(jié)語音音量的裝置,其中:
比較單元501,用于將語音的音量與預(yù)設(shè)音量閾值比較;
增益反饋單元502,用于若語音的音量小于預(yù)設(shè)音量閾值,則向模數(shù)轉(zhuǎn)換模塊反饋增益,以使模數(shù)轉(zhuǎn)換模塊根據(jù)增益增大語音的音量直至語音的音量不低于預(yù)設(shè)音量閾值。
附圖2至5任一示例的調(diào)節(jié)語音音量的裝置還可以包括模數(shù)轉(zhuǎn)換模塊601,如附圖6-a至6-d所示本發(fā)明實施例六至九提供的調(diào)節(jié)語音音量的裝置。模數(shù)轉(zhuǎn)換模塊601用于將來自麥克的模擬聲音數(shù)據(jù)轉(zhuǎn)換為所述數(shù)字聲音數(shù)據(jù)并調(diào)節(jié)所述數(shù)字聲音數(shù)據(jù)的增益。
需要說明的是,上述裝置各模塊/單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與本發(fā)明方法實施例基于同一構(gòu)思,其帶來的技術(shù)效果與本發(fā)明方法實施例相同,具體內(nèi)容可參見本發(fā)明方法實施例中的敘述,此處不再贅述。
本領(lǐng)域普通技術(shù)人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲于一計算機(jī)可讀存儲介質(zhì)中,存儲介質(zhì)可以包括:只讀存儲器(ROM,Read Only Memory)、隨機(jī)存取存儲器(RAM,Random Access Memory)、磁盤或光盤等。
以上對本發(fā)明實施例所提供的調(diào)節(jié)語音音量的方法和裝置進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進(jìn)行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。