codegain.m
来自「ITU-T G.723.1 Speech Coder: Matlab imple」· M 代码 · 共 41 行
M
41 行
function CGC = CodeGain (ACBbIB, Pulseval, Pitchpar)% Combined codes for the adaptive codebook gains and the multipulse gains.% $Id: CodeGain.m 1.3 2004/08/03 G.723.1-v2r1a $GModV = Pitchpar.GModV;NSubframe = length (Pulseval);for (i = 1:NSubframe) % Code the gains for the pitch and the multipulse contributions ShiftC = (~ isinf (Pulseval(i).ShiftLag)); CGC(i) = SubframeGainC (ACBbIB(:,i), Pulseval(i).gC, ShiftC, GModV); endreturn%--------------------function CGC = SubframeGainC (ACBbIB, gC, ShiftC, GModV)% Form the combined gain code for the adaptive codebook gain and the% multipulse gain.% ACBbIB: Adaptive codebook gain (index, codebook). The index takes on% 85 levels (codebook 1) or 170 levels (codebook 2)% gC: Multipulse amplitude code code (24 levels)% ShiftC: Multipulse shift flag for shift and repeat operation. The use of% shift and repeat is only available if the pitch filter uses% codebook 1.% The total number of combinations is 4080, which can be coded with 12 bitsACBbC = ACBbIB(1) - 1;CBookI = ACBbIB(2);if (CBookI == 1) % Choose 85 or 170 levels CGC = CombineVals ([gC, ACBbC, ShiftC], GModV{CBookI});else CGC = CombineVals ([gC, ACBbC], GModV{CBookI});endreturn
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?