matlab音乐合成葫芦娃

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录

音乐合成实验................................................................................................. 错误!未定义书签。

摘要: (1)

第一部分简单的合成音乐 (1)

1.1合成《葫芦娃》 (1)

1.2 除噪音,加包络 (5)

1.3改变程序,实现1.2中的音乐升高和降低一个八度 (8)

1.4在1.2的音乐中加入谐波 (9)

摘要:

本文共有三大部分:第一部分,简单的音乐合成;第二部分,用傅里叶变换分析音乐;第三部分,基于傅里叶级数的音乐合成。由潜入深,一步一步分析了用MATLAB进行音乐合成的过程。通过本实验达到了加深对傅里叶级数和傅里叶分析的理解,熟悉对MATLAB 基本使用的目标。

第一部分简单的合成音乐

1.1 合成《葫芦娃》

根据《葫芦娃》第一小节的简谱和十二平均律计算出该小节每个乐音的频率,在MATLAB中生成幅度为1,抽样频率为8kHz的正弦信号表示这些乐音,用sound播放合成的音乐

而在MATLAB中表示乐音所用的抽样频率为fs=8000Hz,也就是所1s钟内有8000个点,抽样点数的多少就可表示出每个乐音的持续时间的长短。用一个行向量来存储这段音乐对应的抽样点,在用sound函数播放即可。

clear all;clc;

freq=8000; %抽样频率

T=1/freq;

pattime=0.5; %节拍的时间

note2=0:T:2*pattime;

note4=0:T:1*pattime;

note8=0:T:0.5*pattime;

note_1=261.63; %各个音乐对应的频率

note_2=293.67;

note_3=329.63;

note_5=391.99;

note_6=440;

note_7=493.88;

note_1b=523.25;

wave1=sin(2*pi*note_1*note4); %各个音符所对应的节拍

wave2=sin(2*pi*note_1*note4);

wave3=sin(2*pi*note_3*note2);

wave4=sin(2*pi*note_1*note4);

wave5=sin(2*pi*note_1*note4);

wave6=sin(2*pi*note_3*note2);

wave7=sin(2*pi*note_6*note4);

wave8=sin(2*pi*note_6*note4);

wave9=sin(2*pi*note_6*note8);

wave10=sin(2*pi*note_5*note8);

wave11=sin(2*pi*note_6*note4);

wave12=sin(2*pi*note_5*note4);

wave14=sin(2*pi*note_3*note4); wave15=sin(2*pi*note_1b*note8); wave16=sin(2*pi*note_6*note8); wave17=sin(2*pi*note_6*note8); wave18=sin(2*pi*note_5*note8); wave19=sin(2*pi*note_6*note2); wave20=sin(2*pi*note_5*note4); wave21=sin(2*pi*note_1*note4); wave22=sin(2*pi*note_2*note2); wave23=sin(2*pi*note_7*note2); wave24=sin(2*pi*note_7*note8); wave25=sin(2*pi*note_5*note8); wave26=sin(2*pi*note_3*note4); wave27=sin(2*pi*note_5*note2); wave28=sin(2*pi*note_1b*note8); wave29=sin(2*pi*note_6*note8); wave30=sin(2*pi*note_6*note8); wave31=sin(2*pi*note_5*note8); wave32=sin(2*pi*note_5*note8); wave33=sin(2*pi*note_6*note8); wave34=sin(2*pi*note_6*note8); wave35=sin(2*pi*note_5*note4); wave36=sin(2*pi*note_1*note4); wave37=sin(2*pi*note_3*note2); wave38=sin(2*pi*note_1b*note8); wave39=sin(2*pi*note_6*note8); wave40=sin(2*pi*note_6*note8); wave41=sin(2*pi*note_5*note8); wave42=sin(2*pi*note_5*note8); wave43=sin(2*pi*note_6*note8); wave44=sin(2*pi*note_6*note8); wave45=sin(2*pi*note_5*note4); wave46=sin(2*pi*note_1*note4); wave47=sin(2*pi*note_2*note2); wave48=sin(2*pi*note_3*note2); wave49=sin(2*pi*note_3*note8); wave50=sin(2*pi*note_1*note8); wave51=sin(2*pi*note_6*note4); wave52=sin(2*pi*note_1*note2); wave53=sin(2*pi*note_3*note4); wave54=sin(2*pi*note_5*note4); wave55=sin(2*pi*note_6*note4); wave56=sin(2*pi*note_6*note8);

相关文档
最新文档