frames.m
来自「LPC vocoder LPC vocoder with several op」· M 代码 · 共 42 行
M
42 行
function [DATA,NFRAMES]=frames(Y,SHIFT,DUR)
%determine number of frames and pad with zeros where needed
L=size(Y,1);
NFRAMES=1;
while L>1
L=L-SHIFT;
if L>0
NFRAMES=NFRAMES+1;
end
if L==1
PAD=DUR-L;
end
if L<1
PAD=DUR-(L+SHIFT);
end
end
Y=[Y; zeros(PAD,1)]; %pad speech with zeros
%create data array (each column denotes a frame)
DATA=zeros(DUR,NFRAMES); %preallocate DATA for speed
for i=0:NFRAMES-1
DATA(:,i+1)=Y(1+i*SHIFT:DUR+i*SHIFT);
end
k=NFRAMES;
n=0;
while DATA(:,k)==zeros(DUR,1);
k=k-1;
n=n+1;
end
DATA=DATA(:,1:(NFRAMES-n));
NFRAMES=NFRAMES-n;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?