您的位置:首页 > 编程语言 > MATLAB

Matlab 制作《最炫民族风》弱爆了,附代码

2012-05-22 22:12 295 查看
大家可以在Matlab下实验下。。。。。。
%Mostshiningnationalwind//最炫民族风onMatlab
%TheModificationisfrom"canon",notbyme

fs=44100;%samplerate
dt=1/fs;

T16=0.125;

t16=[0:dt:T16];
[tempk]=size(t16);

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

[tempi]=size(t4);
[tempj]=size(t8);

%Modificationfunctions
mod4=(t4.^4).*exp(-30*(t4.^0.5));
mod4=mod4*(1/max(mod4));
mod8=(t8.^4).*exp(-50*(t8.^0.5));
mod8=mod8*(1/max(mod8));
mod16=(t16.^4).*exp(-90*(t16.^0.5));
mod16=mod16*(1/max(mod16));

f0=2*146.8;%referencefrequency

ScaleTable=[2/33/45/615/16...
19/85/44/33/25/39/515/8...
29/45/28/3310/315/44...
1/29/165/8];

%1/4notes
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/8notes
do0e=mod8.*cos(2*pi*ScaleTable(21)*f0*t8);
re0e=mod8.*cos(2*pi*ScaleTable(22)*f0*t8);
mi0e=mod8.*cos(2*pi*ScaleTable(23)*f0*t8);

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/16notes
do0s=mod16.*cos(2*pi*ScaleTable(21)*f0*t16);
re0s=mod16.*cos(2*pi*ScaleTable(22)*f0*t16);
mi0s=mod16.*cos(2*pi*ScaleTable(23)*f0*t16);

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);

%MelodybySchau_mal
part0=[mi1fla0ela0edo1fmi1f...
re1ere1smi1sre1edo1ere1edo1ela0f...
mi1fla0ela0edo1fmi1f...
so1ere1smi1sre1edo1ere1edo1eti0eso0e...
mi1fla0ela0edo1fmi1f...
re1ere1smi1sre1edo1ere1edo1ela0eso0e...
mi1fla0ela0edo1fmi1f...
so1emi1eblkfblkfblkf...
];

part1=[la0fla0eso0ela0fla0edo1e...
do1fre1edo1ela0fla0f...
do1fdo1eso0edo1ere1emi1eso1e...
so1emi1ere1fmi1fmi1f...
la1ela1ela1eso1emi1emi1fdo1e...
la0ela0ela0emi1ere1smi1sre1ere1f...
mi1emi1eso1emi1ere1emi1ere1edo1e...
la0fso0fla0fla0f...
];

part2=[mi1emi1eso1emi1emi1eso1eso1ela1e...
do2ela1eso1fla1sdo2sla1ela1f...
la0fla0eso0ela0fdo1f...
re1emi1sre1sdo1ere1emi1fmi1f...
la0ela1ela1eso1ere1emi1sre1sdo1ere1e...
mi1fmi1fblkeblkeblkf...
do1ela0ela0edo1ere1fso0eso0e...
mi1eso1emi1ere1edo1fdo1f...
la0edo1ere1emi1ere1edo1eso0emi0e...
la0fla0fblkeblkeblkf...
];

part3=[la0fla0eso0ela0fdo1f...
re1emi1sre1sdo1ere1emi1fmi1f...
la0ela1ela1eso1ere1emi1sre1sdo1ere1e...
mi1fmi1fblkeblkeblkf...
do1ela0ela0edo1ere1fso0eso0e...
mi1eso1emi1ere1edo1fdo1edo1e...
la0edo1ere1emi1eso1emi1emi1eso1e...
la1fla1fla1fla1f...
];

part4=[la1ela1sla1sla1ela1ela1ela1sso1smi1ere1e...
re1ere1sre1smi1emi1sso1smi1emi1sre1sdo1edo1sla0s...
la0fla0eso0ela0fla0edo1e...
re1emi1sre1sdo1ere1emi1fmi1f...
la1eso1emi1ere1eso1emi1ere1edo1e...
do1fdo1fla0sdo1sre1smi1sre1sdo1sla0sdo1s
];

part5=[do2edo2sdo2sla1ela1sla1sso1eso1sso1smi1emi1smi1s...
re1emi1sre1sdo1ela0sso0sla0sso0sdo1sre1smi1sso1sla1sre2s...
do2fdo2fblksblksblksblksdo1ere1e...
mi1fmi1fmi1fso1emi1e...
la1fla1fla1edo1eso1emi1e...
re1fre1ere1sre1sre1ere1edo1ere1e...
mi1fmi1emi1smi1smi1ere1sdo1sti0edo1sre1s...
mi1fmi1fmi1fso1emi1e...
do2fla1fla1fla1edo1e...
re1fso1fso1fla1f...
ti1fti1fti1fti1f...
];

part6=[blkfblkfmi1eso1emi1eso1e...
mi1fla0ela0sla0sdo1fla0emi1sla0s...
do1edo1sdo1sre1edo1sre1smi1fmi1f...
mi1fla0ela0sla0sso1fre1ere1sre1s...
mi1fmi1fmi1sre1sdo1sla0smi0sre0smi0sso0s...
do1fla0ela0sla0sre1fso0eso0sso0s...
mi0fso0eso0sso0sdo1fdo1f...
la0fdo1edo1sla0smi1emi1smi1sre1ere1smi1s...
];

%Combination,v1iscompleteversion,v2issimpleversion.
v1=[part0part1part1part2part3part4part0part1part1part2part3part5part3part6part3];
v2=[part0part1part1part2part3part5part3part6part3];

%Let'srock^_^
s=v1;
s=s/max(s);
sound(s,fs);


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: