matlab苹果代码,MATLAB自制bad apple音乐【纯代码】

% bad apple乐谱写成matlab代码,5#不知道是啥用 so1f 代替了。想听的话找个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);

blke = zeros(1,j);

% 1/16 notes

fa0s = mod16.*cos(2*pi*ScaleTable(1)*f0*t16);

so0s = mod16.*cos(2*pi*ScaleTable(2)*f0*t16);

la0s = mod16.*cos(2*pi*ScaleTable(3)*f0*t16);

ti0s = mod16.*cos(2*pi*ScaleTable(4)*f0*t16);

do1s = mod16.*cos(2*pi*ScaleTable(5)*f0*t16);

re1s = mod16.*cos(2*pi*ScaleTable(6)*f0*t16);

mi1s = mod16.*cos(2*pi*ScaleTable(7)*f0*t16);

fa1s = mod16.*cos(2*pi*ScaleTable(8)*f0*t16);

so1s = mod16.*cos(2*pi*ScaleTable(9)*f0*t16);

la1s = mod16.*cos(2*pi*ScaleTable(10)*f0*t16);

tb1s = mod16.*cos(2*pi*ScaleTable(11)*f0*t16);

ti1s = mod16.*cos(2*pi*ScaleTable(12)*f0*t16);

do2s = mod16.*cos(2*pi*ScaleTable(13)*f0*t16);

re2s = mod16.*cos(2*pi*ScaleTable(14)*f0*t16);

mi2s = mod16.*cos(2*pi*ScaleTable(15)*f0*t16);

fa2s = mod16.*cos(2*pi*ScaleTable(16)*f0*t16);

so2s = mod16.*cos(2*pi*ScaleTable(17)*f0*t16);

la2s = mod16.*cos(2*pi*ScaleTable(18)*f0*t16);

ti2s = mod16.*cos(2*pi*ScaleTable(19)*f0*t16);

do3s = mod16.*cos(2*pi*ScaleTable(20)*f0*t16);

blks = zeros(1,k);

%%%%%%%%%%%%以上都是基础设置%%%%%%%%%%%%%%

% Blank Block 空白

blkblock = [blkf blkf blkf blkf blkf blkf blkf blkf...

blkf blkf blkf blkf blkf blkf blkf blkf];

% Base Melody 基调 可以没有

%cello = [blkf blkf blkf blkf blkf blkf blkf blkf...

%blkf blkf blkf blkf blkf blkf blkf blkf];

%cello = [do1f do1f so0f so0f la0f la0f mi0f mi0f...

%fa0f fa0f do0f do0f fa0f fa0f so0f so0f];

% So-FUCKING-Long Melody 简谱(正文) 确实长(应该在word里替换一下再输出嘛)

%violin = [re1e mi1e fa1e so1e la1e...

%re2e do2e la1e re1e...

%la1e so1e fa1e mi1e...

%re1e mi1e fa1e so1e la1e...

%so1e fa1e mi1e re1e fa1e mi1e re1e do1e mi1e...

%re1e mi1e fa1e so1e la1e...

%]; %C调版?

violin = [la1e ti1e do2e re2e mi2e blke la2e so2e mi2e blke la1e blke mi2e re2e do2e ti2e la1e ti1e do2e re2e mi2e blke re2e do2e ti1e la1e ti1e do2e ti1e la1e so1e ti1e ...

la1e ti1e do2e re2e mi2e blke la2e so2e mi2e blke la1e blke mi2e re2e do2e ti2e la1e ti1e do2e re2e mi2e blke re2e do2e ti1e blke do2e blke re2e blke mi2e blke ...

la1e ti1e do2e re2e mi2e blke la2e so2e mi2e blke la1e blke mi2e re2e do2e ti2e la1e ti1e do2e re2e mi2e blke re2e do2e ti1e la1e ti1e do2e ti1e la1e so1e ti1e ...

la1e ti1e do2e re2e mi2e blke la2e so2e mi2e blke la1e blke mi2e re2e do2e ti2e la1e ti1e do2e re2e mi2e blke re2e do2e ti1e blke do2e blke re2e blke mi2e blke ...

so2e la2e mi2e re2e mi2e blke re2e mi2e so2e la2e mi2e re2e mi2e blke re2e mi2e re2e do2e ti1e so1e la1e blke so1e la1e ti1e do2e re2e mi2e la1e blke mi2e so2e ...

so2e la2e mi2e re2e mi2e blke re2e mi2e so2e la2e mi2e re2e mi2e blke re2e mi2e re2e do2e ti1e so1e la1e blke so1e la1e ti1e do2e re2e mi2e la1e blke mi2e so2e ...

so2e la2e mi2e re2e mi2e blke re2e mi2e so2e la2e mi2e re2e mi2e blke re2e mi2e re2e do2e ti1e so1e la1e blke so1e la1e ti1e do2e re2e mi2e la1e blke mi2e so2e ...

so2e la2e mi2e re2e mi2e blke re2e mi2e so2e la2e mi2e re2e mi2e blke la2e ti2e do3e ti2e la2e so2e mi2e mi2e re2e mi2e re2e do2e ti1e so1e la1e blke mi2e so2e ...

so2e la2e mi2e re2e mi2e blke re2e mi2e so2e la2e mi2e re2e mi2e blke re2e mi2e re2e do2e ti1e so1e la1e blke so1e la1e ti1e do2e re2e mi2e la1e blke mi2e so2e ...

so2e la2e mi2e re2e mi2e blke re2e mi2e so2e la2e mi2e re2e mi2e blke re2e mi2e re2e do2e ti1e so1e la1e blke so1e la1e ti1e do2e re2e mi2e la1e blke ...

];

% cello

c1 = [cello cello cello cello cello...

cello cello cello cello cello...

cello cello cello cello cello...

cello cello cello cello cello...

cello cello cello blkf];

% violin1

v1 = [blkblock violin blkblock blkblock];

% violin2

v2 = [blkblock blkblock violin blkblock];

% violin3

v3 = [blkblock blkblock blkblock violin];

% Get dirty

%s = c1;

%s = c1+v1+v2+v3;

%s = s/max(s); %归一化

%sound(s,fs);

violin = violin/max(violin);%无基调%归一化

sound(violin,fs);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值