ADPCM语音编码标准MATLAB实现.doc

ADPCM语音编码标准MATLAB实现.doc

ID:56904340

大小:213.00 KB

页数:11页

时间:2020-07-21

ADPCM语音编码标准MATLAB实现.doc_第1页
ADPCM语音编码标准MATLAB实现.doc_第2页
ADPCM语音编码标准MATLAB实现.doc_第3页
ADPCM语音编码标准MATLAB实现.doc_第4页
ADPCM语音编码标准MATLAB实现.doc_第5页
资源描述:

《ADPCM语音编码标准MATLAB实现.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、ADPCM语音编码标准MATLAB实现(2012-03-0814:54:12)转载▼标签:g.721adpcm语音编码标准matlab实现杂谈分类:信号处理该方法的理论不再赘述,参考《数字语音处理及MATLAB实现》这本书的源程序,对一段英文歌曲进行编码解码:%主程序clc;clear;coe=[1,0,1,0,0,0,0,0,0,0,0];coe1=[0,0,0];coe2=[0,0,0,0,0,0,0,0,0,0];coe3=[0];Dqk=zeros(1,7);%自适应你量化器输出fid=fopen('speech1.txt');a=fscanf(fid,

2、'%e');fclose(fid);fid=fopen('spp.txt','wt');%存放解码输出波形fori=1:size(a,1);Slk=a(i);[coe,coe1,coe2,coe3,Dqk]=adpcm(Slk,coe,coe1,coe2,coe3,Dqk);fprintf(fid,'%f',coe2(5));endfclose(fid);fid=fopen('spp.txt','rt');b=fscanf(fid,'%e');subplot(211);plot(a);subplot(212);plot(b);%语音编解码子函数程序a

3、dpcm.mfunction[coe,coe1,coe2,coe3,Dqk]=adpcm(Slk,coe,coe1,coe2,coe3,Dqk)%语音编解码函数Yk_pre=coe2(1);%初值传递Sek_pre=coe2(2);Ik_pre=coe2(3);Ylk_pre_pre=coe2(4);Srk_pre=coe2(5);Srk_pre_pre=coe2(6);a2=coe2(7);Tdk_pre=coe2(8);Trk_pre=coe2(9);Num=coe2(10);coe2(10)=coe2(10)+1;[Sek,coe]=Sek_com(Srk

4、_pre,Srk_pre_pre,Dqk,coe);%自适应预测Dk=Dk_com(Slk,Sek);%采样值与其估值差值计算Yuk_pre=yu_result(Yk_pre,wi_result(abs(Ik_pre)));%快速非锁定标度因子计算ifYuk_pre<1.06Yuk_pre=1.06;elseifYuk_pre>10.00Yuk_pre=10.00;endendYlk_pre=yl_result(Ylk_pre_pre,Yuk_pre);%锁定标度因子计算Trk_pre=Trk_com(a2,Dqk(6),Ylk_pre);%窄带信号瞬变判定Td

5、k_pre=Tdk_com(a2);%单频信号判定[Alk,coe1]=Alk_com(Ik_pre,Yk_pre,coe1,Tdk_pre,Trk_pre);%自适应速度控制与自适应预测ifAlk<0.0Alk=0.0;elseifAlk>1.0Alk=1.0;endend[Yk,coe3]=Yk_com(Ik_pre,Alk,Yk_pre,coe3);%量化阶距自适应因子计算Ik=Ik_com(Dk,Yk);%自适应量化并编码输出Yk_pre=Yk;Srk_pre_pre=Srk_pre;Sek_pre=Sek;Ylk_pre_pre=Ylk_pre;Ik_

6、pre=Ik;coe2(1)=Yk;coe2(6)=Srk_pre;coe2(2)=Sek;coe2(4)=Ylk_pre;coe2(3)=Ik;Dqk(1)=Dqk(2);Dqk(2)=Dqk(3);Dqk(3)=Dqk(4);Dqk(4)=Dqk(5);Dqk(5)=Dqk(6);Dqk(6)=Dqk(7);Dqk(7)=Dqk_com(Ik_pre,Yk_pre);%自适应逆量化器输出Srk_pre=Srk_com(Dqk(7),Sek_pre);%重建信号输出coe2(5)=Srk_pre;%自适应速度控制与自适应预测子函数function[h,coe1

7、]=Alk_com(Ik_pre,Yk_pre,coe1,Tdk_pre,Trk_pre)Dmsk_p2=coe1(1);Dmlk_p2=coe1(2);Apk_pre2=coe1(3);Dmsk_p1=(1-2^(-5))*Dmsk_p2+2^(-5)*fi_result(abs(Ik_pre));Dmlk_p1=(1-2^(-7))*Dmlk_p2+2^(-7)*fi_result(abs(Ik_pre));coe1(1)=Dmsk_p1;coe1(2)=Dmlk_p1;if((abs(Dmsk_p1-Dmlk_p1)>=2^(-3)*Dmlk_p1)

8、(Y

9、k_pre<3)

10、(Td

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。