matlab弹钢琴卡农,【matlab】寂寞的理科生用matlab演奏卡农
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
先声明,我刚刚看到这个帖子,是在人人上面。这里和大家分享一下。
我已经试过了,的确可以演奏,还是很清晰。
在此深深膜拜一下这位编写程序的高手……
————————————————————————————
% Can't image, Matlab is so powerful!
% 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);
blke = zeros(1,j);
% 1/16 notes
fa0s = mod16.*cos(2*pi*ScaleTable(1)*f0*t16);
matlab弹钢琴卡农,【matlab】寂寞的理科生用matlab演奏卡农相关推荐
- matlab弹钢琴卡农,神马FL神马Cubase都弱爆了!【matlab】弹凑卡农
%作者是谁呢?是谁呢?反正作者很爱卡农很强大就是!嘿嘿... % Cripple Pachebel's Canon on Matlab % Have fun fs = 44100; % sample ...
- matlab卡农,又用Mathematica写了一段卡农
你能在这里听到它 用数学软件演奏音乐早已不是什么新鲜事,很早就有人用Matlab弹奏卡农或是最炫民族风,最近我知道还有人用无理数生成一段音乐,很有趣.而我选择用Mathematica弹奏卡农是因为卡农 ...
- Matlab弹出窗口
Matlab弹出窗口 Matlab 弹出窗口 1.文件打开操作 uigetfile命令 打开以.m结尾的文件 [FileName,PathName] = uigetfile('*.m','Select ...
- MATLAB弹出对话框的使用
Matlab 弹出对话框使用 msgbox('你要显示的内容', '对话框标题'); msgbox(num2str(p), '对话框标题'); matlab中inputdlg函数用户交互中使用方法如下 ...
- matlab已经停止工作,win10系统运行Matlab弹出已停止工作窗口的修复步骤
有关win10系统运行Matlab弹出已停止工作窗口的操作方法想必大家有所耳闻.但是能够对win10系统运行Matlab弹出已停止工作窗口进行实际操作的人却不多.其实解决win10系统运行Matlab ...
- matlab已经停止工作,win7系统运行Matlab弹出已停止工作窗口的解决方法
朋友们在使用win7系统电脑时,偶尔就会碰到系win7系统运行Matlab弹出已停止工作窗口的状况.如果在平时的使用过程中遇到win7系统运行Matlab弹出已停止工作窗口情况的话,相信许多朋友都不知 ...
- 带瀑布流的电钢琴_让人人都能学会弹钢琴——零基础入门的智能电钢琴 POP Piano...
原标题:让人人都能学会弹钢琴--零基础入门的智能电钢琴 POP Piano 前言 其实你一直希望成为一个会弹琴的人,只是一直没有机会开始. 如果是20世纪是网络纪元,那么21世纪就是AI纪元.当人类创 ...
- matlab模拟角度调制系统的仿真与设计,基于Matlab的模拟通信系统的仿真设计
<基于Matlab的模拟通信系统的仿真设计>由会员分享,可在线阅读,更多相关<基于Matlab的模拟通信系统的仿真设计(25页珍藏版)>请在人人文库网上搜索. 1.目录摘要-第 ...
- 华洛希钢琴HAROCHE老师告诉你:弹钢琴的正确手型与指法
钢琴大师鲁宾斯坦说过:"演奏钢琴最大的秘诀是,在正确的地方使用正确的指法,弹奏正确的琴键".可见, 手型和指法在学习钢琴演奏中的重要性,当指法练到一定程度时,就会成为一种技巧,成为 ...
最新文章
- 关于NLPIR应用在KETTLE中的探索
- RandomAccessFile r rw rws rwd之间的区别
- [Windows]ping itsafe环境变量
- ***后门与密码破解
- .net 事件委托 java_仿net事件委托的java事件模型实现(转csdn)
- getopt和getopt_long函数
- 多进程修改全局变量(python版)
- Matlab如何实现区间优化
- 代码审计中的SQL注入
- 【渝粤教育】广东开放大学 形成性考核 (29)
- 爬虫入门—网页信息爬取
- Java:接口文档示例
- 怎样在php中制作电子相册,电子相册制作 如何制作电子相册带音乐和文字
- ADB下载及常用命令
- 美团监控系统mysql_美团MySQL数据库巡检系统的设计与应用
- 【税务基础知识】--很实用的常识
- 平安京服务器维护,决战平安京无法登陆怎么解决 无法登陆原因及解决方案一览...
- 网络隔离下的几种数据交换技术比较
- 电动车充电桩显示无法连接服务器失败,电动车充电桩故障排除技巧
- Unity 自定义Image形状