演奏原理:sound(y,Fs) 以采样率 Fs 向扬声器发送音频信号 y。
Fs 指单位时间对音频信号采样的次数。采样频率的选择应该遵循奈奎斯特(Harry Nyquist)采样理论:如果对某一模拟信号进行采样,则采样后可还原的最高信号频率只有采样频率的一半,或者说只要采样频率高于输入信号最高频率的两倍,就能从采样信号系列重构原始信号。正常人听觉的频率范围大约在20Hz~20kHz之间,根据奈奎斯特采样理论,为了保证声音不失真,采样频率应该在40kHz左右。
y 一般指正弦波信号,对应的频率可以在网上找到数据。

由以上可写出自己喜欢的音乐的曲子了,以生日快乐歌为例,找到对应谱子
main.m

clear;clc;
Fs = 40000;
y = [yy(1,5,0.2),yy(1,5,0.2),yy(1,6,0.3),yy(1,5,0.3),yy(2,1,0.3),yy(1,7,0.3),zeros(1,2478),...yy(1,5,0.2),yy(1,5,0.2),yy(1,6,0.3),yy(1,5,0.3),yy(2,2,0.3),yy(2,1,0.3),zeros(1,2478),...yy(1,5,0.2),yy(1,5,0.2),yy(2,5,0.3),yy(2,3,0.3),yy(2,1,0.3),yy(1,7,0.2),yy(1,6,0.2),zeros(1,2478),...yy(2,4,0.2),yy(2,4,0.2),yy(2,3,0.3),yy(2,1,0.3),yy(2,2,0.3),yy(2,1,0.3)];
sound(y,Fs);

注:y构成一个行向量,sound按顺序演奏

yy.m

function y = yy(type,tone,rythm)
%type为1表示低音,为2表示中音,为3表示高音
%tone为音节序号,1为哆
%rythm为持续时间长短
%y为所输出声波信号所对应离散值Fs = 40000;freqs = zeros(3,7);freqs(1,:) = [220,246.94,277.19,293.67,329.63,370,415.31];freqs(2,:) = [440,493.88,554.37,587.33,659.33,739.99,830.61];freqs(3,:) = [880,987.76,1108.73,1174.66,1318.52,1479.98,1661.22];x = linspace(0, 2 * pi * rythm, floor(Fs * rythm));y = sin(freqs(type,tone) * x);
end

注:两个函数里的Fs应保持一致。

MATLAB演奏音乐相关推荐

  1. 《MATLAB PROJECT》用MATLAB演奏音乐

    用MATLAB演奏音乐 (1) 采样率 (2) 十二平均律 (3) 声音强弱效果控制 (4) 声音播放时间控制 (5) 自定义音符函数 (6) <River Flows In You>演奏 ...

  2. matlab自带的音乐,MATLAB乐器(如何用matlab演奏音乐)

    近期在家无聊,刷B站视频的时候发现有up上传了matlab制作的音乐,效果很是有趣.顺带吐槽一下,手机端的B站总是推荐莫名其妙的内容,但是通过搜索关键词,你又总能搜到不错的视频,我试了几个教学课程,视 ...

  3. MATLAB创建音乐《光年之外》

    基于乐理和MATLAB自身sound函数,可以实现MATLAB演奏音乐,本文中以邓紫棋<光年之外>为例实现了该功能. 主函数代码为: Fs = 44100; y1=gen_wave2(3, ...

  4. 用matlab演奏周杰伦的《七里香》

    问题描述 前几天在学习matlab的时候,发现了一篇用matlab演奏音乐的文章,不禁感叹matlab居然还能这么玩!于是我就学着用matlab演奏我最喜欢听的一首歌--周杰伦的<七里香> ...

  5. 【音乐】基于matlab演奏《过火》【含Matlab源码 1875期】

    一.获取代码方式 获取代码方式1: [音乐]基于matlab演奏<过火>[含Matlab源码 1875期] 获取代码方式2: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代 ...

  6. 【音乐】基于matlab演奏《青花瓷》【含Matlab源码 1873期】

    一.获取代码方式 获取代码方式1: [音乐]基于matlab演奏<青花瓷>[含Matlab源码 1873期] 获取代码方式2: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此 ...

  7. matlab音乐合成卡农,matlab演奏《卡农》

    [attach]matlab演奏<卡农>程序文件[/attach] % Cripple Pachebel's Canon on Matlab % Have fun fs = 44100; ...

  8. matlab合成和弦,基于Matlab实现音乐识别与自动配置和声的功能.pdf

    基于Matlab实现音乐识别与自动配置和声的功能 杨若芳,等 基于Matlab实现音乐识别与自动配置和声的功能 1 2 杨若芳 ,项 顶 1 (甘肃兰州城市学院教育学院 甘肃兰州,730070) 2 ...

  9. 如何用matlab演奏《偏爱》

    文章目录 前言 一.效果演示 二.如何唱 1.原理 2.代码 总结 前言 之前学了点matlab,看朋友圈有人做了<追光者>,学了几天,兴致勃勃写了个<偏爱>,后忘记记录了,现 ...

最新文章

  1. TCP/IP协议簇分层详解---转
  2. cpu和显卡瓶颈测试软件,《怪物猎人:世界》CPU测试:4核成瓶颈、6核才够用
  3. 【机器学习基础】朴素贝叶斯的算法实现
  4. VS2008如何添加 OLE/COM 对象查看器 .
  5. js实现数组对象去重
  6. 三星三层影像传感器提升拍摄能力 索尼压力倍增
  7. linux vim自动执行快捷键,Linux Vim快捷键操作命令整理
  8. hive load data外部表报错_生产SparkSQL如何读写本地外部数据源及排错
  9. 鸿蒙系统基础是云计算吗,国内两大系统横空出世,鸿蒙不算啥,这系统才叫牛...
  10. Ubuntu14.04下配置固定IP
  11. 【术语扫盲】CKD (全散件组装)
  12. oracle11g数据库登录01017,windows oracle11g数据库使用sqlplus登录的时候出现ora-01017报错...
  13. 微信小程序:we重师
  14. 阿里云盘 WebDAV升级
  15. 《辛雷学习方法》读书笔记——前言
  16. 内网渗透测试:域内权限维持思路总结
  17. qiankun+vue项目开发
  18. 2018年高教社杯全国大学生数学建模竞赛题目
  19. 高通Camera 软件工程师的成长之路
  20. R tidyverse学习01

热门文章

  1. QPushButton 实现保持按下效果(转载​​)
  2. Python 文件加密
  3. 电商运营基本常识你都知道哪些?
  4. Debian 下 mysql workbench 报 tables could not be fetched.
  5. DC report_timing 报告分析(STA)
  6. 计算机防火墙打不开0x6d9,win7防火墙出现0x6d9该怎么办
  7. Matlab含新能源(风电光伏)和多类型电动汽车配电网风险评估
  8. [IJCAI2016]Makeup Like a Superstar: Deep Localized Makeup Transfer Network
  9. 7.26 5 优化浪漫 恋爱中的经济学
  10. 如何在滴滴云 DC2 上搭建 MySQL 服务