凌陽語音

1、音頻概述
音頻是指頻率在20Hz~20kHz的聲音信號,具體可分爲波形信號、語音和音樂三種形式。其中波形聲音就是自然界中的所有聲音,是聲音數字化的基礎;語音也可以表示
爲波形聲音,當波形聲音表示不出語言、語音學的內涵。音樂是符號化了的語音,比語音更加規範。
2、音頻信號數字化
音頻信號數字化是指將模擬的(連續的)聲音波形數字化(離散化),變成所謂的數字音頻,以便於計算機處理。數字化主要包括信號採樣和量化兩個方面內容。數字
音頻的質量取決於採樣頻率和量化位數這兩個重要參數。此外,聲道的數目、相應的音頻設備也是影響音頻質量的重要因素。
3、音頻格式:
音頻文件通常分爲聲音文件和樂器數字接口(MIDI)文件兩類。
(1)聲音文件的格式
a、WAVE文件--*.WAV
b、AIFF文件--AIF/AIFF
c、Audio文件--*.Audio
d、MPEG文件--*.MP1、*.MP2、*.MP3
e、RealAudio文件--*.MID/*.RMI
(2)MIDI文件--*.MID/*.RMI
4、語音壓縮編碼:
語音壓縮編碼中的數據量=(採樣頻率*量化位數)/8(字節數)*聲道數目
常見的音頻壓縮編碼:
(1)波形編碼
(2)參數編碼
(3)混合編碼
5、語音的合成分爲兩個檔次:一是有限詞彙的計算機語音輸出;二是基於語音合成技術的從文字到語言(Test-to-Speech)的合成。按照人類語言功能的不同層次,
語音合成又分爲三個層次。
1)從文字到語音(Test-to-Speech)的合成
2)從概念到語音(Concept-to-Speech)的合成
3)從意向到語音(Intention-to-Speech)的合成
6、語音辨識技術有三大研究範圍:口音獨立;連續語音;可辨識詞彙數量
7、凌陽常用音頻形式和壓縮算法
1)波形編碼(SACM_A2000)
特點:高質量、高碼率,適於高保真語音/音樂
2)參數編碼(SACM_S240)
特點:壓縮比大,計算最大,廉價但音質不高
3)混合編碼(SACM_S480)
提點:綜合參數編碼和波形編碼的優點
除此之外,還有FM(調頻)音樂的合成方式,即SACM_MS01
8、單片機對語音的控制入錄音放音、合成記辨識也廣泛應用到現實生活中。語音處理大致可以分爲A/D轉換、編碼處理、存儲、解碼以及D/A轉換等。
9、凌陽語音壓縮算法有SACM_A2000、SACM_S480和SACM_S240三種格式。其中,SACM_A2000音頻壓縮算法的壓縮比較小(8:1),編碼速率課選擇16kbit/s、20bit/s
、24bit/s三種之一,具有高質量、高編碼速率的特點,適用於高保真的音樂和語音;SACM_S480語音壓縮算法的壓縮比較大(80:3),編碼速率可選擇1.8kbit/s、
7.2kbit/s兩種之一,較爲節省存儲容量,音質介於SACM_A2000和SACM_S240之間,適用於語音播放(如“文曲星”詞庫等)。SACM_S240壓縮算法的壓縮比較大
(80:1.5),價格也最低,編碼速率只能選2.4kbit/s,適用於對保真度要求不高的場所(如電子類產品)。
10、語音播放應用程序接口函數
1)void SACM_A2000/S480/S240_Initial(int Init_Index)
SACM_A2000/S480/S240語音播放之前對定時器、中斷和DAC等初始化
2)void SACM_A2000/S480/S240_ServiceLoop(void)
從資源文件中獲取SACM_A2000/S480/S240語音資料,並將其填入譯碼隊列中。該函數在自動方式下使用,實現取數據、填充語音隊列和解壓縮三步操作(在手動方式下
需要用三個函數分別完成)

3)void SACM_A2000/S480/S240_Play(int Speech_Index,int Channel,int
Ramp_Set)
Speech_Index:語音索引號;Channel的值及意義:1-DAC1通道播放;2-DAC2通
道播放;3-DAC1和DAC2雙通道播放。Ramp_Set的值及意義:0-禁止語音增/減調節;1-僅允許音量增加;2-只允許音量減少;3-允許音量增/減調節。
4)void SACM_A2000/S480/S240_Stop(void)
停止播放SACM_A2000/S480/S240語音或樂曲。
5)void SACM_A2000/S480/S240_Pause(void)
暫停播放SACM_A2000/S480/S240語音或樂曲
6)void SACM_A2000/S480/S240_Resume(void)
恢復暫停播放的SACM_A2000/S480/S240語音或樂曲
7)void SACM_A2000/S480/S240_Volume(viod)
在播放SACM_A2000/S480/S240語音或樂曲時改變主音量
8)unsigned int SACM_A2000/S480/S240_Status(void)
[返回值]當RI的bit0=0時,表示語音播放結束;bit0=1時,表示語音在播放中。
獲取SACM_A2000/S480/S240語音播放的狀態
9)Call F_FIQ_Service_SACM_A2000/S480/S240
用作SACM_A2000/S480/S240語音背景程序的中斷服務子程序。通過前臺子程序(自動方式的SACM_A2000/S480/S240_ServiceLoop及手動方式的SACM_A2000/S480/S240_Decode)對語音資料進行解碼,然後將其送入DAC通道播放。
10)void SACM_A2000/S480/S240_InitDecode(int Channel)
[參數]Channel=1,2,3,分別表示使用DAC1、DAC2、DAC3通道及DAC1和DAC2雙通道
該函數用於手動方式對語音資料解壓縮。
11)void SACM_A2000/S480/S240_Decode(void)
從語音隊列裏獲取SACM_A2000/S480/S240語音資料,並進行譯碼,然後通過中斷服務子程序將其送入DAC通道播放。
[說明]該函數用於手動方式對語音資料進行譯碼
12)void SACM_A2000/S480/S240_FillQueue(void)
將從用戶存儲區獲取SACM_A2000/S480/S240語音編碼資料,然後將其填入語音隊列中等譯碼處理
[說明]該函數用於手動方式對語音資料進行譯碼
13)unsigned int SACM_A2000/S480/S240_TestQueue(void)
[返回值]RI=0、1、2,分別表示語音隊列“不空不滿”、語音隊列“滿”和語音隊列“空”
獲取語音隊列的狀態
[說明]該函數用於手動方式對語音資料進行譯碼
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章