⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 genexcplc.m

📁 ITU-T G.723.1 Speech Coder: Matlab implementation This package implements the speech coder and de
💻 M
字号:
function [es, DecoderMem] = GenExcPLC (DecoderMem, DecoderPar)% Packet loss frame decoder% The previous data is taken from DecoderMem.eMem. This is the excitation% from the previous frame.% $Id: GenExcPLC.m 1.5 2004/08/06 G.723.1-v2r1a $LSubframe = DecoderPar.LSubframe;LFrame = sum (LSubframe);eMem = DecoderMem.eMem;NErr = DecoderMem.PLC.NErr;DecoderMem.PLC.uvGain = DecoderMem.PLC.uvGain * DecoderPar.PLCpar.uvGainF;% Update the error countNErr = NErr + 1;% If too many consecutive errors, set the output to zeroif (NErr >= DecoderPar.PLCpar.NErrMax)  es = zeros (LFrame, 1);  eMem = zeros (size (eMem));else  L = DecoderMem.PLC.L;  if (~ isnan (L))    % Voiced    % Zero input, recursive filtering of past excitation    es = DecoderPar.PLCpar.vGainF * RepExc (eMem, LFrame, L);    eMem = ShiftVector (eMem, es);  else    % Unvoiced    [esN, DecoderMem.PLC.Seed] = RandVal (DecoderMem.PLC.Seed, LFrame);    es = DecoderMem.PLC.uvGain * esN;    % Clear memory    eMem = zeros (size (eMem));  endendDecoderMem.eMem = eMem;DecoderMem.PLC.NErr = NErr;return% -------------------------function [RV, Seed] = RandVal (Seed, NVal)% Generate NVal random numbers in [-1, +1) as a column vector.for (i = 1:NVal)  Seed = mod (521 * Seed + 259, 65536);  % Create a signed value  Val = Seed;  if (Val >= 32768)    Val = Val - 65536;  end  % Scale to [-1, +1)  RV(i,1) = Val / 32768;  endreturn

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -