主要過程是將語音等模擬信號每隔一定時間進行取樣,使其離散化,同時將抽樣值按分層單位四舍五入取整量化,同時將抽樣值按一組二進制碼來表示抽樣脈沖的幅值。也就是說語音信號最終以脈沖形式編碼。
有一定電子基礎的都知道傳感器采集音頻信號是模擬量,而我們實際傳輸過程中使用的是數(shù)字量。而這就涉及到模擬轉(zhuǎn)數(shù)字的過程,下面將進行介紹。
1 PCM編碼原理
PCM 脈沖編碼調(diào)制是Pulse Code Modulation的縮寫。脈沖編碼調(diào)制是數(shù)字通信的編碼方式之一。主要過程是將話音、圖像等模擬信號每隔一定時間進行取樣,使其離散化,同時將抽樣值按分層單位四舍五入取整量化,同時將抽樣值按一組二進制碼來表示抽樣脈沖的幅值。
模擬信號數(shù)字化必須經(jīng)過三個過程,即抽樣、量化和編碼。
1.1抽樣
抽樣是把模擬信號以其信號帶寬2倍以上(來奎斯特采樣定理)的頻率提取樣值(采樣率),變?yōu)樵跁r間軸上離散的抽樣信號的過程。
采樣率:每秒從連續(xù)信號中提取并組成離散信號的采樣個數(shù),用赫茲(Hz)來表示。
sample:
如音頻信號采樣率為8000hz。
可以理解上圖采樣對應圖中 那段電壓隨時間變化的曲線 為1秒 那下面那個1 2 3 …10那就因該有1-8000個點,即將1秒均分為8000份,依次取出來那8000個點時間 對應的電壓值。
1.2 量化
抽樣信號雖然是時間軸上離散的信號,但仍然是模擬信號,其樣值在一定的取值范圍內(nèi),可有無限多個值。必須采用“四舍五入”的方法把樣值分級“取整”,使一定取值范圍內(nèi)的樣值由無限多個值變?yōu)橛邢迋€值。這一過程稱為量化。
采樣位數(shù):指的是描述數(shù)字信號所使用的位數(shù)。
8位(8bit)代表2的8次方=256,16 位(16bit)則代表2的16次方=65536;
sample:
如音頻傳感器采集到的電壓范圍為0-3.3V,采樣位數(shù)為8bit(位)
即我們把3.3V/ 2^8 = 0.0128 即為量化精度。
我們把3.3v分成0.0128為步進的Y軸,如圖3中的1 2 …8就變成了0 0.0128 0.0256 ……3.3 V
比如某個采樣點的電壓值為1.652V(1280.128 與 1290.128之間) 我們對它四舍五入就為1.65V 對應 量化等級為128 。
1.3 編碼
量化后的抽樣信號就轉(zhuǎn)化為按抽樣時序排列的一串十進制數(shù)字碼流,即十進制數(shù)字信號。簡單高效的數(shù)據(jù)系統(tǒng)是二進制碼系統(tǒng),因此,應將十進制數(shù)字代碼變換成二進制編碼。根據(jù)十進制數(shù)字代碼的總個數(shù),可以確定所需二進制編碼的位數(shù),即字長(采樣位數(shù))。這種把量化的抽樣信號變換成給定字長的二進制碼流的 過程稱為編碼。
sample:
接著上面的1.65V 對應 量化等級為128 。對應的2進制為10000000 。即該采樣點編碼后結(jié)果為10000000 。當然這是沒有考慮正負值情況下的編碼方式,而且編碼方式種類非常多,需要具體問題具體分析。(PCM音頻格式編碼為A律13折線編碼)
2 PCM音頻編碼
PCM信號未經(jīng)過任何編碼和壓縮處理(無損壓縮)。與模擬信號比,它不易受傳送系統(tǒng)的雜波及失真的影響。動態(tài)范圍寬,可得到音質(zhì)相當好的效果。
2.1 PCM編碼
編碼上采用了的是A律13折線編碼。
具體可參考:http://blog.csdn.net/qingkongyeyue/article/details/52122486
2.2 聲道:
單聲道聲音文件,采樣數(shù)據(jù)為八位的短整數(shù)(short int 00H-FFH);
雙聲道立體聲聲音文件,每次采樣數(shù)據(jù)為一個16位(采樣位數(shù)仍是8bit)的整數(shù)(int),高八位(左聲道)和低八位(右聲道)分別代表兩個聲道。
PCM的每個樣本值包含在一個整數(shù)i中,i的長度為容納指定樣本長度所需的最小字節(jié)數(shù)。
首先存儲低有效字節(jié),表示樣本幅度的位放在i的高有效位上,剩下的位置為0,這樣8位和16位的PCM波形樣本的數(shù)據(jù)格式如下所示。
2.3 采樣頻率
人對頻率的識別范圍是 20HZ - 20000HZ, 如果每秒鐘能對聲音做 20000 個采樣, 回放時就足可以滿足人耳的需求.
8000hz 為電話采樣。
22050 的采樣頻率是常用的。
44100已是CD音質(zhì), 超過48000的采樣對人耳已經(jīng)沒有意義。
一般情況下,一幀PCM是由2048次采樣組成的。
2.4 采樣位數(shù)
每個采樣數(shù)據(jù)記錄的是振幅, 采樣精度取決于儲存空間(采樣位數(shù))的大小:
1 字節(jié)(也就是8bit) 只能記錄 256 個數(shù), 也就是只能將振幅劃分成 256 個等級
2 字節(jié)(也就是16bit) 可以細到 65536 個數(shù), 這已是 CD 標準了;
4 字節(jié)(也就是32bit) 能把振幅細分到 4294967296 個等級, 實在是沒必要了
如果是雙聲道(stereo), 采樣就是雙份的, 文件也差不多要大一倍.
2.5 比特率
碼率是指經(jīng)過編碼后的音頻數(shù)據(jù)每秒鐘需要用多少個比特來表示
2.6 有損和無損
對于我們最常說的**“無損音頻**”來說,一般都是指傳統(tǒng)CD格式中的16bit/44.1kHz采樣率的文件格式,而知所以稱為無損壓縮,也是因為其包含了20Hz-22.05kHz這個完全覆蓋人耳可聞范圍的頻響頻率而得名。
參考文獻:http://blog.csdn.net/ownWell/article/details/8114121
聯(lián)系客服