[X,fs]=audioread('C:\Users\18010100372\Desktop\We Will Rock You.wav');
ts=1/fs;
N=length(X)-1;
t=0:1/fs:N/fs;
Nfft=N;
df=fs/Nfft;
fk=(-Nfft/2:Nfft/2-1)*df;
a1=1; a2=-1; b1=1; b2=-1; %分离左声道和右声道
SoundLeft=X(:,1);
SoundRight=X(:,2); %对左声道和右声道进行快速傅里叶变换
SoundLeft_f=ts*fftshift(fft(SoundLeft,N));
SoundRight_f=ts*fftshift(fft(SoundRight,N)); %显示左右声道幅度变化
figure(1)
subplot(411)
plot(t,SoundLeft);
subplot(412)
plot(t,SoundRight); %显示左右声道频率变化
subplot(413)
f_range=[-5000,5000,0,0.1];
plot(fk,SoundLeft_f);
axis(f_range);
subplot(414)
f_range=[-5000,5000,0,0.1];
plot(fk,SoundRight_f);
axis(f_range);
NewLeft=a1*SoundLeft+a2*SoundRight;
NewRight=b1*SoundLeft+b2*SoundRight;
Sound(:,1)=NewLeft;
Sound(:,2)=NewRight;
Sound_Left_f=ts*fftshift(fft(NewLeft,N));
Sound_Right_f=ts*fftshift(fft(NewRight,N));
figure(2)
subplot(411)
plot(t,NewLeft);
subplot(412)
plot(t,NewRight);
f_range=[-5000,5000,0,0.1];
subplot(413)
plot(fk,Sound_Left_f);
axis(f_range);
subplot(414)
plot(fk,Sound_Right_f);
axis(f_range);
BP=fir1(300,[800,2200]/(fs/2)); %根据左右声道差异进行滤波【800,2200】Hz
CutDown=filter(BP,1,Sound);
Sound_Final=Sound-0.6*abs(CutDown);
Sound_Final_f=ts*fftshift(fft(Sound_Final,N));
figure(3)
subplot(211)
plot(t,Sound_Final);
subplot(212)
f_range=[-5000,5000,0,0.1];
plot(fk,Sound_Final_f);
axis(f_range);
audiowrite('C:\Users\18010100372\Desktop\去人声.wav',Sound_Final,fs);
matlab消除歌曲人声.zip
需积分: 50 117 浏览量
2020-07-06
09:22:21
上传
评论 12
收藏 1.02MB ZIP 举报
果酱奶糖小可爱哟
- 粉丝: 4
- 资源: 13
最新资源
- 微信自动抢红包APP.zip
- 微信抢红包神器-红包鸟(可以抢多种情况下的红包,支持手机息屏抢红包、屏蔽群抢红包).zip
- 微信抢红包,支持xposed与免root,xposed支持最新版,免root需自己实现.zip
- 一维卷积神经网络英语电影评论情感分类项目功能实现-Embedding层
- 微信 自动抢红包 插件外挂(Android),实现了监控通知栏,自动点击红包等功能,帮助大家快速抢到红包.zip
- 满满的干货:分享二十个Python学习资源材料.zip
- USD ISO14229-1-2013 中文版
- STM32单片机FPGA毕设电路原理论文报告模糊控制器在无线监控机群系统中的应用
- OpenWrt-Toolchain-ipq
- STM32单片机FPGA毕设电路原理论文报告模糊控制逆变弧焊电源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈