matlab弹钢琴卡农,神马FL神马Cubase都弱爆了!【matlab】弹凑卡农

%作者是谁呢?是谁呢?反正作者很爱卡农很强大就是!嘿嘿。。。

% Cripple Pachebel's Canon on Matlab

% Have fun

fs = 44100; % sample rate

dt = 1/fs;

T16 = 0.125;

t16 = [0:dt:T16];

[temp k] = size(t16);

t4 = linspace(0,4*T16,4*k);

t8 = linspace(0,2*T16,2*k);

[temp i] = size(t4);

[temp j] = size(t8);

% Modification functions

mod4 = sin(pi*t4/t4(end));

mod8 = sin(pi*t8/t8(end));

mod16 = sin(pi*t16/t16(end));

f0 = 2*146.8; % reference frequency

ScaleTable = [2/3 3/4 5/6 15/16 ...

1 9/8 5/4 4/3 3/2 5/3 9/5 15/8 ...

2 9/4 5/2 8/3 3 10/3 15/4 4 ...

1/2 9/16 5/8];

% 1/4 notes

do0f = mod4.*cos(2*pi*ScaleTable(21)*f0*t4);

re0f = mod4.*cos(2*pi*ScaleTable(22)*f0*t4);

mi0f = mod4.*cos(2*pi*ScaleTable(23)*f0*t4);

fa0f = mod4.*cos(2*pi*ScaleTable(1)*f0*t4);

so0f = mod4.*cos(2*pi*ScaleTable(2)*f0*t4);

la0f = mod4.*cos(2*pi*ScaleTable(3)*f0*t4);

ti0f = mod4.*cos(2*pi*ScaleTable(4)*f0*t4);

do1f = mod4.*cos(2*pi*ScaleTable(5)*f0*t4);

re1f = mod4.*cos(2*pi*ScaleTable(6)*f0*t4);

mi1f = mod4.*cos(2*pi*ScaleTable(7)*f0*t4);

fa1f = mod4.*cos(2*pi*ScaleTable(8)*f0*t4);

so1f = mod4.*cos(2*pi*ScaleTable(9)*f0*t4);

la1f = mod4.*cos(2*pi*ScaleTable(10)*f0*t4);

tb1f = mod4.*cos(2*pi*ScaleTable(11)*f0*t4);

ti1f = mod4.*cos(2*pi*ScaleTable(12)*f0*t4);

do2f = mod4.*cos(2*pi*ScaleTable(13)*f0*t4);

re2f = mod4.*cos(2*pi*ScaleTable(14)*f0*t4);

mi2f = mod4.*cos(2*pi*ScaleTable(15)*f0*t4);

fa2f = mod4.*cos(2*pi*ScaleTable(16)*f0*t4);

so2f = mod4.*cos(2*pi*ScaleTable(17)*f0*t4);

la2f = mod4.*cos(2*pi*ScaleTable(18)*f0*t4);

ti2f = mod4.*cos(2*pi*ScaleTable(19)*f0*t4);

do3f = mod4.*cos(2*pi*ScaleTable(20)*f0*t4);

blkf = zeros(1,i);

% 1/8 notes

fa0e = mod8.*cos(2*pi*ScaleTable(1)*f0*t8);

so0e = mod8.*cos(2*pi*ScaleTable(2)*f0*t8);

la0e = mod8.*cos(2*pi*ScaleTable(3)*f0*t8);

ti0e = mod8.*cos(2*pi*ScaleTable(4)*f0*t8);

do1e = mod8.*cos(2*pi*ScaleTable(5)*f0*t8);

re1e = mod8.*cos(2*pi*ScaleTable(6)*f0*t8);

mi1e = mod8.*cos(2*pi*ScaleTable(7)*f0*t8);

fa1e = mod8.*cos(2*pi*ScaleTable(8)*f0*t8);

so1e = mod8.*cos(2*pi*ScaleTable(9)*f0*t8);

la1e = mod8.*cos(2*pi*ScaleTable(10)*f0*t8);

tb1e = mod8.*cos(2*pi*ScaleTable(11)*f0*t8);

ti1e = mod8.*cos(2*pi*ScaleTable(12)*f0*t8);

do2e = mod8.*cos(2*pi*ScaleTable(13)*f0*t8);

re2e = mod8.*cos(2*pi*ScaleTable(14)*f0*t8);

mi2e = mod8.*cos(2*pi*ScaleTable(15)*f0*t8);

fa2e = mod8.*cos(2*pi*ScaleTable(16)*f0*t8);

so2e = mod8.*cos(2*pi*ScaleTable(17)*f0*t8);

la2e = mod8.*cos(2*pi*ScaleTable(18)*f0*t8);

ti2e = mod8.*cos(2*pi*ScaleTable(19)*f0*t8);

do3e = mod8.*cos(2*pi*ScaleTable(20)*f0*t8);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值