PCM編碼壓縮演算法

2021-04-14 00:00:43 字數 1526 閱讀 7168

/pcm編碼壓縮演算法

module upcmcode

( input [15:0]audioval, //input audio val

output [7:0]pcmcode //output pcm code

); reg [7:0]code;

wire [15:0]val;

assign val = (audioval[15]==1)?((~audioval)+1):audioval;

assign pcmcode = ~code;

always @(val)

begin

if(val>=16'd8159)

begin

code[6:0]=7'h7f;

end

else if (val>=16'd4063)

begin

code[6:4]=3'b111;

code[3:0]=(val-16'd4063)/256;

end

else if (val>=16'd2015)

begin

code[6:4]=3'b110;

code[3:0]=(val-16'd2015)/128;

end

else if (val>=16'd991)

begin

code[6:4]=3'b101;

code[3:0]=(val-16'd991)/64;

end

else if (val>=16'd479)

begin

code[6:4]=3'b100;

code[3:0]=(val-16'd479)/32;

end

else if (val>=16'd223)

begin

code[6:4]=3'b011;

code[3:0]=(val-16'd223)/16;

end

else if (val>=16'd95)

begin

code[6:4]=3'b010;

code[3:0]=(val-16'd95)/8;

end

else if (val>=16'd31)

begin

code[6:4]=3'b001;

code[3:0]=(val-16'd31)/4;

end

else if (val>=16'd0)

begin

code[6:4]=3'b000;

code[3:0]=val/2;

end

code[7] = audioval[15];

end

endmodule

top

本文**

脈衝編碼調製 PCM

稱為pcm pulse code modulation 即脈衝編碼調製。數碼訊號是對連續變化的模擬訊號進行抽樣,量化和編碼產生的,這種電的數碼訊號稱為數字基帶訊號,由pcm電端機產生。簡單說就是模 數轉換。模擬訊號經過抽樣和量化以後,可以得到一系列輸出,它們共有q個電平狀態。當q比較大時,如果直接傳...

faac庫編碼PCM資料

faac是乙個成熟的aac編碼庫。其提供的主要介面函式如下 faacencopenfaacenchandle faacapi faacencopen unsigned long samplerate,unsigned int numchannels,unsigned long inputsample...

搬磚 PCM語音編碼

pcm語音編碼 主要過程是將語音等模擬訊號每隔一定時間進行取樣,使其離散化,同時將抽樣值按分層單位四捨五入取整量化,同時將抽樣值按一組二進位製碼來表示抽樣脈衝的幅值。也就是說語音頻號最終以脈衝形式編碼。有一定電子基礎的都知道感測器採集音訊訊號是模擬量,而我們實際傳輸過程中使用的是數字量。而這就涉及到...