MATLAB数字信号处理音频

MATLAB数字信号处理音频

  • 1.绘制时域图像
  • 2.绘制频谱图
  • 3.绘制时域图并产生 回声效果
  • 4.调节频率达到变声效果

资源链接: https://download.csdn.net/download/qq_41676952/11217113

1.绘制时域图像

clear
clc
 %左声道
 [data,fs]= audioread('E:\AAAAA\数字信号处理\音频处理\盗将行 .wav');

 left=data(:,1);  % 左声道
 right=data(:,2); % 右声道
 
 % 采样总时间
 time=(1/fs)*length(left);
 
 t = linspace(0,time,length(left));
 plot(t,left);
 
 xlabel('t/s');
 ylabel('y(t)');
soundsc(left,fs);  %播放音乐

MATLAB数字信号处理音频_第1张图片

2.绘制频谱图

clear
clc

[data,fs]= audioread('E:\AAAAA\数字信号处理\音频处理\盗将行 .wav');
  
N = length(data);

left = data(:,1);
right= data(:,2);

Y = fft(left,N);

Pyy = Y.* conj(Y) / N;  % conj(Y)是求Y的共轭数

halflength=floor(N/2);  

f=fs*(0:halflength)/N; % 采样频率的一半为频率范围
figure;
plot(f,Pyy(1:halflength+1));
xlabel('Frequency(Hz)');

MATLAB数字信号处理音频_第2张图片

3.绘制时域图并产生 回声效果

 clear
 clc
 
 [data,fs]= audioread('E:\AAAAA\数字信号处理\音频处理\盗将行 .wav');
  
 left = data(:,1);
 right= data(:,2);
 
 leftout = left;
 
 time=(1/fs)*length(left);
 
 N = 10000;   % delay second = N/fs;
 
 for n = N+1:length(left)
     leftout(n) = left(n) + left(n - N);
 end
 
 t = linspace(0,time,length(left));
 plot(t,leftout);
 
 soundsc(leftout,fs);

4.调节频率达到变声效果

clear
clc

[x,fs]= audioread('E:\AAAAA\数字信号处理\音频处理\盗将行 .wav');

time=(1/fs)*length(x);%计算时间

x1=x*0.5;   %幅值调节

fs1=fs*2;   %频率调节
soundsc(x1,fs1);

pause % 按任意键结束播放
clear sound

资源链接:https://download.csdn.net/download/qq_41676952/11217113

你可能感兴趣的:(MATLAB数字信号处理音频)