第八講語音處理應(yīng)用(二)_第1頁
第八講語音處理應(yīng)用(二)_第2頁
第八講語音處理應(yīng)用(二)_第3頁
第八講語音處理應(yīng)用(二)_第4頁
第八講語音處理應(yīng)用(二)_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

SPCE061A語音處理應(yīng)用第八講語音處理應(yīng)用(二)SPCE061A語音處理應(yīng)用四、語音錄放四、語音錄制語音錄制流程用SPCE061A錄制語音用SPCE061A播放錄音創(chuàng)建一個錄放音程序用匯編語言編寫錄放音程序小結(jié)和注意事項疑難解答1、語音錄制流程語音采樣在定時中斷的控制下,以一定的速率(8KHz)進(jìn)行AD轉(zhuǎn)換壓縮編碼將采集到的數(shù)據(jù)以某種算法壓縮編碼存儲將編碼后的數(shù)據(jù)保存到存儲介質(zhì)中2、用SPCE061A錄制語音3、用SPCE061A播放錄音4、創(chuàng)建一個錄放音程序新建工程4、創(chuàng)建一個錄放音程序復(fù)制錄放音需要的支持文件到工程所在的文件夾Sacmv26e.libHardware.incHardware.asmFlash.asmSRam.asm4、創(chuàng)建一個錄放音程序添加支持文件到工程中添加程序文件和頭文件添加語音函數(shù)庫4、創(chuàng)建一個錄放音程序編寫錄音程序新建程序文件編寫代碼4、創(chuàng)建一個錄放音程序編寫放音程序在main.c中編寫放音函數(shù)4、創(chuàng)建一個錄放音程序編寫中斷服務(wù)程序新建匯編語言程序文件編寫中斷服務(wù)程序代碼4、創(chuàng)建一個錄放音程序編寫main()函數(shù)4、創(chuàng)建一個錄放音程序下載運(yùn)行5、用戶接口函數(shù)Hardware.asm中定義了用戶接口函數(shù),可對語音錄放程序做靈活的定制F_SP_SACM_DVR_Init_F_SP_InitQueue_DVRF_SP_ReadQueue_DVRF_SP_TestQueue_DVRF_SP_RampUpDAC1

…………6、用匯編語言編寫錄放音程序Sacmv26e.lib語音函數(shù)庫還有供匯編語言直接調(diào)用的函數(shù),它們與C函數(shù)一一對應(yīng)(前面加上“F_”前綴):F_SACM_DVR_InitialF_SACM_DVR_InitEncoderF_SACM_DVR_InitDecoderF_SACM_DVR_FetchQueueF_SACM_DVR_FillQueueF_SACM_DVR_EecoderF_SACM_DVR_Decoder

…………匯編語音播放函數(shù)使用R1、R2……寄存器來傳遞參數(shù)和返回值。例如,C語言的SACM_DVR_Initial(0);語句可改寫為: r1=0 callF_SACM_DVR_InitialC語言的SACM_DVR_FetchQueue()函數(shù)可改寫為: callF_SACM_DVR_FetchQueue 函數(shù)的返回值保存在R1寄存器中。6、用匯編語言編寫錄放音程序7、小結(jié)和注意事項語音錄放需要的支持文件:Sacmv26e.lib,Hardware.asm,Hardware.inc,Flash.asm,SRam.asm語音錄制需要調(diào)用Flash讀寫函數(shù),在Flash.asm中定義。如果使用外掛的Flash、EEPROM等存儲器,則需要編寫相應(yīng)的讀寫程序替換上述函數(shù)。語音的錄制和播放調(diào)用同一個中斷服務(wù)函數(shù)F_FIQ_Service_SACM_DVR7、小結(jié)和注意事項相應(yīng)地,在播放錄音的開始和結(jié)束時可使用漸入漸出函數(shù)防止爆音:SP_RampUpDAC1();SP_RampUpDAC2();SP_RampDnDAC1();SP_RampDnDAC2();實(shí)際上,語音錄制時采用的壓縮編碼是A2000格式,因此,錄制的語音資源可以采用A2000播放程序播放。8、疑難解答播放程序并沒有用到SRam.asm文件中的內(nèi)容,為什么還要把它包含到工程中?事實(shí)上,語音錄放也可以選擇自動錄放和手動錄放兩種模式。而自動錄音時要用到SP_InitWriteSRAM等幾個用戶接口函數(shù),這些函數(shù)在SRam.asm文件中定義。因此,雖然手動錄放時并沒有用到這些函數(shù),但必須定義這些函數(shù)才可以編譯成功。SPCE061A語音處理應(yīng)用五、語音識別五、語音識別語音識別概述語音識別原理特定人語音識別函數(shù)庫特定人語音識別程序流程特定人語音識別程序示例其他特定人識別函數(shù)小結(jié)和注意事項疑難解答1、語音識別概述根據(jù)對說話人的依賴程度,分為:特定人語音識別(SD)只能辨認(rèn)特定使用者的語音,訓(xùn)練->使用非特定人語音識別(SI)可辨認(rèn)任何人的語音,無須訓(xùn)練根據(jù)對說話方式的要求,分為:孤立詞識別每次只能識別單個詞匯連續(xù)語音識別用者以正常語速說話,即可識別其中的語句2、語音識別原理3、特定人語音識別函數(shù)庫包含特定人語音訓(xùn)練、識別,語音特征模型的導(dǎo)入、導(dǎo)出函數(shù)等。連續(xù)語音識別可支持每組7條語音命令的識別在外接凌陽SPR系列Flash存儲器的條件下,可支持10個命令組,每組16條語音命令4、特定人語音識別程序流程5、特定人語音識別程序示例新建工程復(fù)制語音識別、語音播放需要的支持文件到工程所在文件夾。語音識別函數(shù)庫bsrv222SDL.lib語音識別頭文件bsrSD.inc,bsrSD.h語音播放支持文件Sacmv26e.lib,Hardware.asm,Hardware.inc5、特定人語音識別程序示例5、特定人語音識別程序示例用PC錄制下列提示語音(也可自定義提示語音),注意保存文件名不要包含中文?!罢堓斎氲谝粭l命令”“請輸入第二條命令”“請再說一遍”“沒有聽到任何聲音”“兩次輸入不相同”“環(huán)境噪聲太大”“訓(xùn)練成功,開始識別”“識別成功,第一條命令”“識別成功,第二條命令”5、特定人語音識別程序示例利用凌陽語音壓縮工具“CompressTool”將錄好的語音壓縮成S480格式。把壓縮后的語音資源文件復(fù)制到工程所在文件夾下。5、特定人語音識別程序示例將上述文件添加到工程中Project->AddtoProject->Files bsrSD.inc,bsrSD.h, Hardware.asm,Hardware.incProject->AddtoProject->Resource 9個S480格式語音資源文件Project->Setting->Link bsrv222SDL.lib Sacmv26e.lib5、特定人語音識別程序示例在工程中新建C程序文件,編寫語音播放函數(shù)PlaySnd()。5、特定人語音識別程序示例編寫“訓(xùn)練”函數(shù)TrainWord()。5、特定人語音識別程序示例編寫主函數(shù)main()5、特定人語音識別程序示例編寫中斷服務(wù)程序5、特定人語音識別程序示例添加語音資源索引表在Resource.asm的結(jié)尾添加T_SACM_S480_SpeechTable5、特定人語音識別程序示例編譯連接,下載運(yùn)行按F7鍵或“Build”按鈕,編譯連接。確認(rèn)選擇了“USEICE”。按F5鍵或“ExecuteProgram”按鈕,下載并運(yùn)行。5、特定人語音識別程序示例程序測試聽到提示“請輸入第一條命令”后,說出一句語音命令。如果輸入成功,會提示“請再說一遍”,重復(fù)剛才的語音命令。如果由于某種原因?qū)е螺斎胧?,會提示“沒有聽到任何聲音”、“環(huán)境噪聲太大”,如果兩次訓(xùn)練的語音差別過大,會提示“兩次輸入不相同”。第一條命令訓(xùn)練成功后,用同樣的辦法訓(xùn)練第二條語音命令。5、特定人語音識別程序示例程序測試兩條命令都訓(xùn)練完成后,就可以開始識別了如果識別出第一條語音命令,則提示“識別成功,第一條命令”如果識別出第一條語音命令,則提示“識別成功,第二條命令”6、其他特定人識別函數(shù)除了前面示例中的基本應(yīng)用外,函數(shù)庫還提供了很多函數(shù)用來對識別過程進(jìn)行靈活的控制。下面介紹幾個比較常用的函數(shù):BSR_PauseRecognizer()暫停識別,但不釋放中斷等資源BSR_ResumeRecognizer()恢復(fù)被暫停的識別BSR_GetRecognizerScore()獲得識別結(jié)果的可信度,返回值從-4096到4096,數(shù)值越大表示輸入語音與特征模型的匹配度越高。6、其他特定人識別函數(shù)其他特定人識別函數(shù)BSR_EnableCPUIndicator()開啟CPU狀態(tài)監(jiān)測功能。開啟該功能后,IOA0和IOA1將發(fā)出每16ms電平變化一次的方波。BSR_DisableCPUIndicator()關(guān)閉CPU狀態(tài)監(jiān)測功能。BSR_ExportSDWord(intCommandID)函數(shù)庫為工程創(chuàng)建了一個100Word的數(shù)組BSR_SDModel[100],可以把某條訓(xùn)練命令的特征模型數(shù)據(jù)導(dǎo)出到這個數(shù)組中。BSR_ImportSDWord(intCommandID)可以把BSR_SDModel數(shù)組中的數(shù)據(jù)導(dǎo)入為某條語音命的特征模型。7、小結(jié)和注意事項特定人語音識別由“訓(xùn)練”和“識別”兩個步驟組成。訓(xùn)練過程中,每條語音命令的長度不要超過1.3秒。訓(xùn)練后得到的語音特征模型是保存在RAM中的,每條命令占用96Word,由于RAM空間的限制,同時可識別的語音命令數(shù)量最大為7條。如果需要識別更多語音命令,可以采用命令分組的方法。語音特征模型數(shù)據(jù)可以通過下面兩個函數(shù)導(dǎo)入和導(dǎo)出:BSR_ImportSDWord(),BSR_ExportSDWord()8、疑難解答B(yǎng)SR_DeleteSDGroup(0),從函數(shù)名看來,好像是刪除一個組的意思。它是怎么完成初始化RAM的?語音命令的特征模型是通過BSR_Train函數(shù)保存在RAM空間中的。如果所需的RAM空間已被舊的特征模型數(shù)據(jù)占滿,則新特征模型無法保存到RAM中。利用BSR_DeleteSDGroup函數(shù)可以把RAM空間中所有的特征模型刪除,釋放出所需空間。SunplusSPCE061A微控制器六、語音壓縮工具CompressTool介紹主要內(nèi)容

音頻壓縮簡介凌陽音頻壓縮簡介錄制WAV文件方法簡介凌陽語音壓縮工具使用介紹資源加載到工程中的方法簡介1、音頻壓縮簡介音頻壓縮的目的

通過對資料的壓縮,達(dá)到高效率存儲和轉(zhuǎn)換資料的結(jié)果,即在保證一定聲音質(zhì)量的條件下,以最小的資料率來表達(dá)和傳送聲音信息。音頻壓縮編碼方式

波形編碼參數(shù)編碼混合編碼音頻壓縮技術(shù)趨勢降低資料率,提高壓縮比,用于廉價、低保真場合追求高保真度,復(fù)雜的壓縮技術(shù)2、凌陽音頻壓縮簡介凌陽音頻壓縮算法壓縮率SACM_A2000:8:1,8:1.25,8:1.5SACM_S480:80:3,80:4.5凌陽音頻壓縮算法編碼方式SACM_A2000:波形編碼SACM_S240:參數(shù)編碼SACM_S480:混合編碼凌陽音頻壓縮算法數(shù)據(jù)率SACM_A2000:16Kbps/20Kbps/24KbpsSACM_S480:4.8Kbps/7.2Kbps凌陽音頻壓縮算法非常多,這里提到的只是其中的兩三種,因?yàn)榱桕栒Z音壓縮工具CompressTool只支持A2000和S480兩種方式,故這里重點(diǎn)介紹的是上面兩種。3、錄制wav文件方法介紹<1>打開PC機(jī)自帶的錄音機(jī)在開始菜單中打開錄音機(jī)錄音機(jī)3、錄制wav文件方法介紹<2>設(shè)置wav文件的屬性必須要設(shè)置wav文件屬性為“8K16位單聲道”。文件菜單中選擇屬性3、錄制wav文件方法介紹<3>設(shè)置wav文件的屬性必須要設(shè)置wav文件屬性為8K16位單聲道。在彈出的屬性對話框中選擇“立即轉(zhuǎn)換”按鈕選擇立即轉(zhuǎn)換按鈕3、錄制wav文件方法介紹<4>此時彈出“聲音選擇”對話框,在其中“屬性”文本框中將錄音文件設(shè)置為“8K16位單聲道”選擇8K16位單聲道3、錄制wav文件方法介紹<5>此時屬性已經(jīng)設(shè)置完成,可以開始錄音點(diǎn)擊錄音機(jī)的錄音按鈕進(jìn)行錄音錄音之后點(diǎn)擊停止錄音按鈕保存已經(jīng)錄制好的wav文件錄音按鈕停止按鈕保存該wav文件4、語音壓縮工具介紹凌陽公司提供了windows環(huán)境下的語音壓縮工具利用此語音壓縮工具可以將剛剛錄制好的wav文件壓縮成A2000或S480的形式4、語音壓縮方式介紹<1>安裝語音壓縮工具CompressTool打開語音壓縮工具在[開始]→[程序]→[CompressTool]將其打開打開語音壓縮工具4、語音壓縮方式介紹<2>在語音壓縮工具界面上可以看到“壓縮單個文件”和“壓縮多個文件”兩個按鈕,我們先來介紹壓縮單個文件的方法。壓縮單個文件按鈕壓縮多個文件按鈕4、語音壓縮方式介紹<3>選擇“壓縮單個文件按鈕”,在“選擇要壓縮的wav文件”文本框中添加需要進(jìn)行壓縮的wav文件路徑然后點(diǎn)擊“下一步”選擇需要壓縮wav文件路徑4、語音壓縮方式介紹<4>然后選擇壓縮算法再選擇壓縮數(shù)據(jù)率選擇壓縮后文件的存儲路徑選擇“壓縮”按鈕選擇壓縮算法選擇A2000壓縮方式選擇S480壓縮方式選擇需要的數(shù)據(jù)率選擇壓縮后文件存儲路徑開始壓縮A2000數(shù)據(jù)率有16K/20K/24Kbps三種4、語音壓縮方式介紹<5>顯示“OK”后表示單個文件已經(jīng)壓縮成功!壓縮完畢4、語音壓縮方式介紹<6>壓縮多個文件的方法也差不多啟動語音壓縮工具選擇“壓縮多個文件”按鈕4、語音壓縮方式介紹<7>選擇“路徑選擇”按鈕選擇需要壓縮的多個文件選擇“下一步”路徑選擇按鈕選擇需要

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論