基于matlab的声音的延迟与混响课程设计任务书(编辑修改稿)内容摘要:

: RRazzzH 1)( , a 1 ( 4)全通结构的混响器的系统函数 : 全通滤波器的传递函数公式为 H(Z)=y(Z)/X(Z)=(K+Z^(m))/(1K*Z^(m)) 其中 m为回声延时取样, k为反馈系数。 用直接 1型表示这个传递函数则为: y(n)=k*x(n)+x(nm)+k*y(nm) 可见其实际上是一个简单的 IIR 滤波器,时间 n的输出有时间 n 的输入和 m点之前的输入与输出计算而得。 由于这个 IIR 滤波器的频率响应为水平直线,所以被称为全通滤波器。 13 3 程序设计的步骤和过程 原始语音信号时域波形和频谱 [y,fs,bits]=wavread(39。 C:\Users\Administrator\Desktop\音 频信号 .wav39。 )。 %用于读取语音,采样值放在向量 y 中, fs 表示采样频率 (Hz), bits 表示采样位数。 [50000 150000]表示读取从 50000 点到 150000 点的值(若只有一个 N的点则表示读取前 N点的采样值)。 y=y(:,1)。 %只取单信道 sound(y,fs,bits)。 %播放原始信号 Y=fft(y)。 %对原始信号取傅里叶变换 subplot(2,2,1:2)。 plot(y)。 title(39。 原始信号时域波形 39。 )。 subplot(2,2,3)。 plot(abs(Y))。 title(39。 原始信 号幅频 39。 )。 subplot(2,2,4)。 plot(angle(Y))。 title(39。 原始信号相频 39。 )。 采样后语音信号的时域波形和频谱 [y,fs,bits]=wavread(39。 C:\Users\Administrator\Desktop\ 音频信号 .wav39。 ,[50000 150000])。 %只取原信号的一部分,即时间区间 [50000 150000] y=y(:,1)。 Y=fft(y,6001)。 %抽取 6001点 subplot(2,2,1:2)。 plot(y)。 title(39。 采样信号时域 波形 39。 )。 subplot(2,2,3)。 plot(abs(Y))。 title(39。 采样信号幅频 39。 )。 subplot(2,2,4)。 plot(angle(Y))。 title(39。 采样信号相频 39。 )。 sound(y,fs,bits)。 %回放采样信号 14 对采样后的信号延时 [y,fs,bits]=wavread(39。 C:\Users\Administrator\Desktop\ 音频信号 .wav39。 ,[50000 150000])。 y=y(:,1)。 z=[zeros(3000,1)。 y]。 %延迟 3000 Z=fft(z,6001)。 subplot(2,2,1:2)。 plot(z)。 title(39。 延时后时域波形 39。 )。 subplot(2,2,3)。 plot(abs(Z))。 title(39。 延时后幅频 39。 )。 subplot(2,2,4)。 plot(angle(Z))。 title(39。 延时后相频 39。 )。 sound(y,fs,bits)。 %回放延迟信号 对采样后的信号混响 [y,fs,bits]=wavread(39。 C:\Users\Administrator\Desktop\ 音频信号 .wav39。 ,[50000 150000])。 y=y(:,1)。 z=[zeros(3000,1)。 y]。 y=[y。 zeros(3000,1)]。 %补 3000 y1=y+z。 %将原始信号与延迟信号相加,产生混响信号 Y1=fft(y1,6001)。 subplot(2,2,1:2)。 plot(y1)。 title(39。 混响的时域波形 39。 )。 subplot(2,2,3)。 plot(abs(Y1))。 title(39。 混响的幅频 39。 )。 subplot(2,2,4)。 plot(angle(Y1))。 title(39。 混响的相频 39。 )。 sound(y,fs,bits)。 %回放混响信号 15 单回声滤波器程序设计 [y,fs,bits]=wavread(39。 C:\Users\Administrator\Desktop\ 音频信号 .wav39。 ,[50000 150000])。 y=y(:,1)。 z=[zeros(3000,1)。 y]。 y=[y。 zeros(3000,1)]。 a=。 R=5000。 %滤波器阶数设置,其值越高,回声越明显 Bz1=[1,zeros(1,R1),a]。 %单回声滤波器系统函数分子 Az1=(1)。 %单回声滤波器系统函数 分母 y2=filter(Bz1,Az1,y)。 %单回声滤波器系统函数 Y2=fft(y2,6001)。 [h,w]=freqz(Bz1,Az1)。 %求设计的滤波器频谱 subplot(3,2,1)。 plot(abs(h))。 title(39。 单回声滤波器幅频响应 39。 )。 subplot(3,2,2)。 plot(angle(h))。 title(39。 单回声滤波器相频响应 39。 )。 subplot(3,2,3:4)。 plot(y2)。 title(39。 单回声滤波器时域图 39。 )。 subplot(3,2,5)。 plot(abs(Y2))。 title(39。 单回声滤波器幅频 39。 )。 subplot(3,2,6)。 plot(angle(Y2))。 title(39。 单回声滤波器相频 39。 )。 sound(y2,fs,bits)。 多重回声滤波器程序设计 [y,fs,bits]=wavread(39。 C:\Users\Administrator\Desktop\ 音频信号 .wav39。 ,[50000 150000])。 y=y(:,1)。 16 z=[zeros(3000,1)。 y]。 y=[y。 zeros(3000,1)]。 a=。 N=5。 R=9000。 %滤波器阶数设置,其值越高,回声越明显 Bz1=[1,zeros(1,N*R1),a^N]。 %多重回声滤波器系统函数分子 Az1=[1,zeros(1,R1),a]。 %多重回声滤波器系统函数分母 y2=filter(Bz1,Az1,y)。 Y2=fft(y2,6001)。 [h,w]=freqz(Bz1,Az1)。 subplot(3,2,1)。 plot(abs(h))。 title(39。 多重回声滤波器幅频响应 39。 )。 subplot(3,2,2)。 plot(angle(h))。 title(39。 多重回声滤波器相频响应 39。 )。 subplot(3,2,3:4)。 plot(y2)。 title(39。 多重回声滤波器时域图 39。 )。 subplot(3,2,5)。 plot(abs(Y2))。 title(39。 多重回声滤波器幅频 39。 )。 subplot(3,2,6)。 plot(angle(Y2))。 title(39。 多重回声滤波器相频 39。 )。 sound(y2,fs,bits)。 无限个回声滤波器程序设计 [y,fs,bits]=wavread(39。 C:\Users\Administrator\Desktop\ 音频信号 .wav39。 ,[50000 150000])。 y=y(:,1)。 z=[zeros(3000,1)。 y]。 y=[y。 zeros(3000,1)]。 a=。 R=5000。 %滤波器阶数设置,其值越高,回声越明显 17 Bz=[0,zeros(1,R1),1]。 %无限个回声滤波器系统函数分子 Az=[1,zeros(1,R1),a]。 %无限个回声滤波器系统函数分母 y2=filter(Bz,Az,y)。 Y2=fft(y2,6001)。 [h,w]=freqz(Bz,Az)。 subplot(3,2,1)。 plot(abs(h))。 title(39。 无限个回声滤波器幅频响应 39。 )。 subplot(3,2,2)。 plot(angle(h))。 title(39。 无限个回声滤波器相频响应 39。 )。 subplot(3,2,3:4)。 plot(y2)。 title(39。 无限个回声滤波器时域图 39。 )。 subplot(3,2,5)。 plot(abs(Y2))。 title(39。 无限个回声滤波器信号幅频 39。 )。 subplot(3,2,6)。 plot(angle(Y2))。 title(39。 无限个回声滤波器信 号相频 39。 )。 sound(y2,fs,bits)。 全通结构滤波器程序设计 [y,fs,bits]=wavread(39。 C:\Users\Administrator\Desktop\ 音频信号 .wav39。 ,[50000 150000])。 y=y(:,1)。 z=[zeros(3000,1)。 y]。 y=[y。 zeros(3000,1)]。 a=。 R=5000。 %滤波器阶数设置,其值越高,回声越明显 Bz1=[a,zeros(1,R1),1]。 %全通滤波器系统函数分子 Az1=[1,zeros(1,R1),a]。 %全通滤波器系统函数分母 [h,w]=freqz(Bz1,Az1)。 yy2=filter(Bz1,Az1,y)。 YY2=fft(yy2,6001)。 subplot(3,2,1)。 plot(abs(h))。 18 title(39。 全通滤波器幅频响应 39。 )。 subplot(3,2,2)。 plot(angle(h))。 title。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。