91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 28KB
    文件類型: .m
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2021-06-14
  • 語言: Matlab
  • 標(biāo)簽: matlab??webrtc??fullaec??aec??

資源簡(jiǎn)介

webrtc中的回聲消除模塊,matlab版本,親測(cè)可用,是做回聲消除(AEC)的好學(xué)習(xí)代碼

資源截圖

代碼片段和文件信息

%?Partitioned?block?frequency?domain?adaptive?filtering?NLMS?and?
%?standard?time-domain?sample-based?NLMS?
%fid=fopen(‘a(chǎn)ecFar-samsung.pcm‘?‘rb‘);?%?Load?far?end
fid=fopen(‘a(chǎn)ecFar.pcm‘?‘rb‘);?%?Load?far?end
%fid=fopen(farFile?‘rb‘);?%?Load?far?end
rrin=fread(fidinf‘int16‘);
fclose(fid);?
%rrin=loadsl(‘data/far_me2.pcm‘);?%?Load?far?end
%fid=fopen(‘a(chǎn)ecNear-samsung.pcm‘?‘rb‘);?%?Load?near?end
fid=fopen(‘a(chǎn)ecNear.pcm‘?‘rb‘);?%?Load?near?end
%fid=fopen(nearFile?‘rb‘);?%?Load?near?end
ssin=fread(fidinf‘int16‘);
%ssin?=?[zeros(10241)?;?ssin(1:end-1024)];

fclose(fid);
rand(‘state‘13);
fs=16000;
mult=fs/8000;
%rrin=rrin(fs*0+1:round(fs*120));
%ssin=ssin(fs*0+1:round(fs*120));
if?fs?==?8000
cohRange?=?2:3;
elseif?fs==16000
cohRange?=?2;
end

%?Flags
NLPon=1;??%?NLP
CNon=1;?%?Comfort?noise
PLTon=1;??%?Plotting

M?=?16;?%?Number?of?partitions
N?=?64;?%?Partition?length
L?=?M*N;?%?Filter?length?
if?fs?==?8000
????mufb?=?0.6;
else
????mufb?=?0.5;??
end
%mufb=1;??
VADtd=48;
alp?=?0.1;?%?Power?estimation?factor?alc?=?0.1;?%?Coherence?estimation?factor
beta?=?0.9;?%?Plotting?factor?
%%?Changed?a?little?%%
step?=?0.3;%0.1875;?%?Downward?step?size?
%%
if?fs?==?8000
????threshold=2e-6;??%?DTrob?threshold
else
????%threshold=0.7e-6;
????threshold=1.5e-6;?end

if?fs?==?8000
????echoBandRange?=?ceil(300*2/fs*N):floor(1800*2/fs*N);
????%echoBandRange?=?ceil(1500*2/fs*N):floor(2500*2/fs*N);
else
????echoBandRange?=?ceil(300*2/fs*N):floor(1800*2/fs*N);
????%echoBandRange?=?ceil(300*2/fs*N):floor(1800*2/fs*N);
end
%echoBandRange?=?ceil(1600*2/fs*N):floor(1900*2/fs*N);
%echoBandRange?=?ceil(2000*2/fs*N):floor(4000*2/fs*N);
suppState?=?1;
transCtr?=?0;

Nt=1;
vt=1;

ramp?=?1.0003;?%?Upward?ramp
rampd?=?0.999;?%?Downward?ramp
cvt?=?20;?%?Subband?VAD?threshold;
nnthres?=?20;?%?Noise?threshold?

shh=logspace(-1.3-2.2N+1)‘;
sh=[shh;flipud(shh(2:end-1))];?%?Suppression?profile

len=length(ssin);
w=zeros(L1);?%?Sample-based?TD?NLMS?
WFb=zeros(N+1M);?%?Block-based?FD?NLMS
WFbOld=zeros(N+1M);?%?Block-based?FD?NLMS
YFb=zeros(N+1M);
erfb=zeros(len1);
erfb3=zeros(len1);

ercn=zeros(len1);
zm=zeros(N1);
XFm=zeros(N+1M);
YFm=zeros(N+1M);
pn0=10*ones(N+11);
pn=zeros(N+11);
NN=len;
Nb=floor(NN/N)-M;
erifb=zeros(Nb+11)+0.1;
erifb3=zeros(Nb+11)+0.1;
ericn=zeros(Nb+11)+0.1;
dri=zeros(Nb+11)+0.1;
start=1;
xo=zeros(N1);
do=xo;
eo=xo;

echoBands=zeros(Nb+11);
cohxdAvg=zeros(Nb+11);
cohxdSlow=zeros(Nb+1N+1);
cohedSlow=zeros(Nb+1N+1);
%overdriveM=zeros(Nb+1N+1);
cohxdFastAvg=zeros(Nb+11);
cohxdAvgBad=zeros(Nb+11);
cohedAvg=zeros(Nb+11);
cohedFastAvg=zeros(Nb+11);
hnledAvg=zeros(Nb+11);
hnlxdAvg=zeros(Nb+11);
ovrdV=zeros(Nb+11);
dIdxV=zeros(Nb+11);
SLxV=zeros(Nb+11);
hnlSortQV=zeros(Nb+11);
hnlPrefAvgV=zeros(Nb+11);
mutInfAvg=zeros(Nb+11);
%overdrive=zeros(Nb+11);
hnled?=?zeros(N+1?1);
weight=zeros(N+11);
hnlMax?=?zeros(N+1?1)

評(píng)論

共有 條評(píng)論