数字信号处理课程设计(对音乐信号的各种处理)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验1
1、音乐信号的音谱和频谱观察
○1使用wavread语句读取音乐信号,获取抽样率;
○2输出音乐信号的波形和频谱,观察现象;
○3使用sound语句播放音乐信号,注意不同抽样率下的音调变化,解释现象。
clear all;close all;clc
[a,fs,bit]=wavread('c:\MATLAB6p5\work\陪你一起看草原.wav');
size(a);
y1=a(:,1);
a1=y1(10000:60000)
figure;
subplot(2,1,1),plot(a);
subplot(2,1,2),plot(a1);
x1=resample(a1,2,1); %y=resample(x,p,q)返回量的长度是向量x的p/q倍sound(x1,fs);
%sound(a,fs);
N1=length(a1);
F1=fft(a1,N1);
w=2/N1*[0:N1-1]; %频谱图横坐标设置
figure;
plot(w,abs(F1));
N2=length(a1);
t=0:1/N2:1/N2*(N2-1);
title('傅利叶变换'); %傅利叶变换;
figure;
plot(a1);
title('时域波形'); %时域波形;
1,以二倍的抽样率听声音信号时,音乐播放的特别快,像被压缩了,播放的时间比原信号短。
2,以二分之一的抽样率听声音信号时,音乐播放的特别慢,像被拉长了,播放的时间比原信号长。
3,原信号频谱截止频率为0.5*pi
实验2
2、音乐信号的抽取(减抽样)
○1观察音乐信号频率上限,选择适当的抽取间隔对信号进行减抽样(给出两种抽取间隔,代表混叠和非混叠);
○2输出减抽样音乐信号的波形和频谱,观察现象,给出理论解释;
○3播放减抽样音乐信号,注意抽样率的改变,比较不同抽取间隔下的声音,解释现象。
clear all;close all;clc
[a,fs,bit]=wavread('c:\MATLAB6p5\work\陪你一起看草原.wav');
size(a);
y1=a(:,1);
a1=y1(10000:60000)
D=2; %减抽样;
l=length(a1);
yd=a1(1:D:l);
sound(yd,fs/D);
N3=length(yd);
t=0:1/N3:1/N3*(N3-1); %横坐标设置figure;
plot(yd);
title('减抽样时域波形'); %时域波形; xlabel('t');
ylabel('幅度');
N4=length(yd);
F2=fft(yd,N4);
w=2/N4*[0:N4-1];
figure;
plot(w,abs(F2));
title('减抽样频谱'); %减抽样频谱
xlabel('f');
ylabel('幅度');
D=2,减抽样
D=4,减抽样
1,原信号频谱截止频率为0.5*pi,当D=2时,频谱刚好不混叠,当D>2时,频谱就会混叠。
2,减抽样后的音乐信号听起来变得尖锐,有失真。
3,抽样率随着抽样间隔的增大而逐渐变小,声音越来越失真,音调变得急促,而尖锐,信号产生混叠
实验3
3、音乐信号的AM调制
○1观察音乐信号的频率上限,选择适当调制频率对信号进行调制(给出高、低两种调制频率);
○2输出调制信号的波形和频谱,观察现象,给出理论解释;
○3播放调制音乐信号,注意不同调制频率下的声音,解释现象。
clear all;close all;clc
[a,fs,bit]=wavread('c:\MATLAB6p5\work\陪你一起看草原.wav');
size(a);
y1=a(:,1);
a1=y1(10000:100000);
%sound(a1,fs);
N=length(a1);
n1=0:[N-1];
y=cos(0.5*pi*n1); %产生余弦信号
N1=length(a1);
F1=fft(y,N1);
w=2/N1*[0:N1-1];
figure;
plot(w,abs(F1));
title('cos(wt)频谱'); %余弦频谱
xlabel('f');
ylabel('幅度');
N2=length(a1);
F2=fft(a1,N2);
w=2/N2*[0:N2-1];
figure;
plot(w,abs(F2));
title('yinyue频谱'); %原信号频谱
xlabel('f');
ylabel('幅度');
x1=a1.*y'; % 音乐信号与余弦信号点乘进行调制figure
plot(x1);
N3=length(a1);
F3=fft(x1,N3); %调制信号傅立叶变换
w=2/N3*[0:N3-1];
figure;
plot(w,abs(F3));
title('调制频谱'); %调制信号频谱
xlabel('f');
ylabel('幅度');
sound(x1,fs);