声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3326|回复: 10

[综合讨论] MATLAB在音乐演奏中的应用

[复制链接]
发表于 2007-8-15 20:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
各位高手,向各位请教一个问题,我想用 MATLAB来实现钢琴键盘上的演奏.在钢琴的键盘上1234567i 按照频率不同来区分音色,我具体想实现的是所有键的频率已知,我随机按下的键可以根据它的频率具体出它具体是1234567i 哪个键,这个过程利用 MATLAB来实现,急用谢谢!

[ 本帖最后由 eight 于 2007-8-15 20:49 编辑 ]
回复
分享到:

使用道具 举报

发表于 2007-8-15 20:44 | 显示全部楼层
没见过matlab版本的。
下面这本书里有个实现演奏音乐功能的程序
如熟悉c# 语言的话可以参考一下
c# 程序设计
【原 书 名】 Programming in the Key of C#  
【原出版社】 Microsoft Press
【作  者】(美)Charles Petzold
【译  者】 杨涛
发表于 2007-8-15 20:51 | 显示全部楼层
原帖由 我爱白白 于 2007-8-15 20:24 发表
各位高手,向各位请教一个问题,我想用 MATLAB来实现钢琴键盘上的演奏.在钢琴的键盘上1234567i 按照频率不同来区分音色,我具体想实现的是所有键的频率已知,我随机按下的键可以根据它的频率具体出它具 ...


str = get(gcf,'currentkey');

其他步骤自己查阅资料、摸索一下
 楼主| 发表于 2007-8-15 21:30 | 显示全部楼层

我不太明白

谢谢您的回复我不太明白这个语句什么意思
发表于 2007-8-15 21:37 | 显示全部楼层
原帖由 我爱白白 于 2007-8-15 21:30 发表
谢谢您的回复我不太明白这个语句什么意思


获得“用户点击了键盘上的哪个键”这个信息
 楼主| 发表于 2007-8-15 22:06 | 显示全部楼层

利用if判断那个音乐问题可以吗

钢琴键的频率已知,按下键就已知频率了,利用if语句判断与已知频率是否对应,可关键是我要十个手指头都在按啊,那是否要建个数组啊,怎么办啊!谢谢急用!
发表于 2007-8-15 22:15 | 显示全部楼层
肯定要有个数组 储存 己知频率,  当得到按下键的信息时,再从数组中搜索出对应的 键。
 楼主| 发表于 2007-8-17 08:47 | 显示全部楼层

matlab 在音乐中的应用后续!

向各位高手请教一个程序,有八个量代表键盘上的1234567i,频率已知,我按下任意一个键他的频率知道,如何合理的运用语句确定这个键是1234567i哪一个呢?谢谢急用!
发表于 2007-8-17 15:12 | 显示全部楼层
如果声音是被采集下来,可以用判断每个音的基频。标准音调A1应是440Hz ,其它音的频率可推算出来。基频的计算可以经FFT后用修正法求出。

评分

1

查看全部评分

 楼主| 发表于 2007-8-17 21:49 | 显示全部楼层

在仿真中怎么才能实现

各位高手,我想在仿真中实现按哪个键就出对应的音,好象matlab中有关于声音的模块是cooland吗?我记不太清楚了?请各位指点迷津!谢谢!
发表于 2007-8-17 21:53 | 显示全部楼层
原帖由 我爱白白 于 2007-8-17 21:49 发表
各位高手,我想在仿真中实现按哪个键就出对应的音,好象matlab中有关于声音的模块是cooland吗?我记不太清楚了?请各位指点迷津!谢谢!


在程序中获得“用户点击键盘上哪个键”的问题我在3楼已经告诉你了,至于如何发音的问题,我就不懂了,而且这台破电脑无法安装 matlab ,所以暂时只能给你这点提示了

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-12 09:56 , Processed in 0.075170 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表