基于matlab演奏音乐,技能 | 什么?用MATLAB也能演奏音乐?

我这周已经咕了三篇文章了T T

立flag需谨慎(我不一定补得回来了)

d185676d4b059967dc811466f50eb99d.png

这周我们将来解锁MATLAB的新技能→用MATLAB演奏音乐!!!

由于时间有限(已经熄灯了),今天先把代码贴出来,原理我们下回介绍

% 创建函数gen_wavefunction y=gen_wave(tone,rythm)  Fs=8192; %设置采样率 freqs=[523,587,659,698,783,880,988]; %设置频率 x=linspace(0,2*pi*rythm,floor(Fs*rythm)); y=sin(freqs(tone)*x).*(1-x/(rythm*2*pi));end% 我们来弹一曲小星星?y1=gen_wave(1,0.5);y2=gen_wave(1,0.5);y3=gen_wave(5,0.5);y4=gen_wave(5,0.5);y5=gen_wave(6,0.5);y6=gen_wave(6,0.5);y7=gen_wave(5,1);y=[y1,y2,y3,y4,y5,y6,y7];y1=gen_wave(4,0.5);y2=gen_wave(4,0.5);y3=gen_wave(3,0.5);y4=gen_wave(3,0.25);y5=gen_wave(3,0.25);y6=gen_wave(2,0.5);y7=gen_wave(2,0.5);y8=gen_wave(1,1);y=[y,y1,y2,y3,y4,y5,y6,y7,y8];y1=gen_wave(5,0.5);y2=gen_wave(5,0.5);y3=gen_wave(4,0.5);y4=gen_wave(4,0.5);y5=gen_wave(3,0.5);y6=gen_wave(3,0.5);y7=gen_wave(2,1);y=[y,y1,y2,y3,y4,y5,y6,y7];y1=gen_wave(5,0.5);y2=gen_wave(5,0.5);y3=gen_wave(4,0.5);y4=gen_wave(4,0.5);y5=gen_wave(3,0.5);y6=gen_wave(3,0.5);y7=gen_wave(2,1);y=[y,y1,y2,y3,y4,y5,y6,y7];y1=gen_wave(1,0.5);y2=gen_wave(1,0.5);y3=gen_wave(5,0.5);y4=gen_wave(5,0.5);y5=gen_wave(6,0.5);y6=gen_wave(6,0.5);y7=gen_wave(5,1);y=[y,y1,y2,y3,y4,y5,y6,y7];y1=gen_wave(4,0.5);y2=gen_wave(4,0.5);y3=gen_wave(3,0.5);y4=gen_wave(3,0.25);y5=gen_wave(3,0.25);y6=gen_wave(2,0.5);y7=gen_wave(2,0.5);y8=gen_wave(1,1);y=[y,y1,y2,y3,y4,y5,y6,y7,y8];sound(y,Fs);

大家快来试一试叭

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值