📄 genexcdat.m
字号:
function [es, DecoderMem] = GenExcDAT (VC, DecoderMem, DecoderPar)% Data file mode decoder. The input VC is from a data passed from the coder% (without passing through a bitstream file).% $Id: GenExcDAT.m 1.6 2004/08/03 G.723.1-v2r1a $FMode = VC.FMode + 1;if (FMode ~= 1 & FMode ~= 2) error ('GenExcDAT: Unsupported mode for data files');endLSubframe = DecoderPar.LSubframe;eMem = DecoderMem.eMem;L = VC.L;b = VC.b;em = VC.em;NSubframe = length (LSubframe);LPrev = NaN;LeMem = length (eMem);j = 0;for (i = 1:NSubframe) N = LSubframe(i); % Pitch contribution ep = PitchContrib (N, L(i), b(:,i), eMem, DecoderPar.Pitchpar); LPrev = L(i); % Total excitation es(j+1:j+N,1) = ep + em(:,i); % Shift the pitch memory ex = [eMem; es(j+1:j+N)]; eMem = ex(end-LeMem+1:end); j = j + N;end% Pitch postfilter values (before clipping)PFval = PFPitchval (L, eMem, FMode, LSubframe, DecoderPar.PFpar);% Clip the pitch memoryDecoderMem.eMem = ClipSignal (eMem, DecoderPar.Clippar);% Apply the pitch postfilter (after clipping)if (DecoderPar.PFpar.enable) es = PPostFilter (DecoderMem.eMem, PFval, LSubframe);endreturn
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -