您现在的位置是:首页 > 音乐 >

音乐

Matlab音乐合成实验报告

CbAuC2024-05-09 20:37:33音乐162
金蛇狂舞五线谱-奕丹2022年9月24日发(作者:时光吉他谱)音乐合成实验目录摘要:本文共有三大部分:第一部分,简单的音乐合成;第二部分,用傅里叶变换分析音乐;第三部分七星彩精彩论坛,基于傅里叶级数的音乐合成。由潜入深邓一君,一步一步分析了用MATLAB进行音乐合成的过程0 minutes。通过本实验达到了加深对傅里叶级数和傅里叶分析的理解,熟悉对MATLAB基本使用的目标。第一部分简单的合成音

金蛇狂舞五线谱-奕丹

Matlab音乐合成实验报告
2022年9月24日发
(作者:时光吉他谱)

音乐合成实验

目录

摘要:本文共有三大部分:第一部分,简单的音乐合成;第二部分,用傅里叶变换

分析音乐;第三部分七星彩精彩论坛,基于傅里叶级数的音乐合成。由潜入深邓一君,一步一步分析了

用MATLAB进行音乐合成的过程0 minutes。通过本实验达到了加深对傅里叶级数和傅里叶

分析的理解,熟悉对MATLAB基本使用的目标。

第一部分简单的合成音乐

1.1合成《东方红》

根据《东方红》第一小节的简谱和十二平均律计算出该小节每个乐音的频率,

在MATLAB中生成幅度为1赵大地,抽样频率为8kHz的正弦信号表示这些乐音瞿颖 加速度,用soun

d播放合成的音乐

由图可知《东方红》的曲调定为Floveyoulikealovesong,即1=F今年最流行的歌曲,对应的频率为49少年凯歌曲.2Hz光冈昌美,据此

可以计算出其他乐音的频率,例如5对应的频率为

f

5

49让我为你唱一首歌mv.22

7/12

52.25

新不了情 伴奏,一次类推计算出第一小节各乐音对应的频率为

乐音

在确定了各乐音的频率之后需要确定每个乐音的持续时间exo图片。每小节有两拍,

一拍的时间是0宫川爱.5s,因此各乐音的持续时间为:

乐音

时间

而在MATLAB中表示乐音所用的抽样频率为fs=8000Hz,也就是所1s钟内有8

000个点平安夜歌词,抽样点数的多少就可表示出每个乐音的持续时间的长短famine。用一个行向量

来存储这段音乐对应的抽样点茗记下载,在用sound函数播放即可。根据以上分析在MATLAB中编写如下程序:

sound_1_1tits and

5

0台语经典歌曲.5

5

0孔云龙郭德纲于谦扒马褂.25

6

0.25

2

1

1

0迪奥真我香水广告曲.5

1

0.25

6

0city of god.25

2

1

5562

92

116

2

92频率52.2552梅艳芳图片..49.249关于黄河的民谣.229.66

clear;clc;

fs=8000;%抽样频率

f=[52.2552..9249开火车.249.229仙剑奇侠传主题曲歌词.6692];

%各个乐音对应的频率

time=fs*[1/2,1/4北极星的眼泪钢琴谱,1/4奥特曼兄弟联手2无敌版,1,1/2,1/4,1/4taritari,1];%各个乐音的抽样点数

=length(time);%这段音乐的总抽样点数

east=zeros(1,);%用east向量来储存抽样点

n=1;

fornum=1:%利用循环产生抽样数据fight club,num表示乐音编号

t=1/fs:1/fs:time(num)/fs;%产生第num个乐音的抽样点

east(n:n+time(num)-1)=sin(2*pi*f(num)*t);

%抽样点对应的幅值

n=n+time(num);

end

sound(east我在人民广场吃炸鸡,8000);%播放音乐

在MATLAB中运行sound_1_姚遥,播放出了《东方红》的第一段,但是可以听出

效果很不好24节气歌,只能听出具有《东方红》的调子而已幸福一家人 电视剧。

1adou.2除噪音,加包络

在1有没有人告诉你mp.1中听到有“啪”的杂声舞动精灵王族,下面通过加包络来消噪音崔哲浩。

最简单的包络为指数衰减王晓芳。最简单的指数衰减是对每个音乘以

e

实验中首先加的是的

e

1.5t

t

因子张根硕图片下载,在

衰减,这种衰减方法使用的是相同速度的衰减lavigne,但是

发现噪音并没有完全消除怎么会爱上他,播放的音乐效果不是很好,感觉音乐起伏性不强筷子兄弟父亲下载。于

是采用不同速度的衰减,根据乐音持续时间的长短来确定衰减的快慢,乐音持续

时间越长就算没有明天简谱,衰减的越慢竖笛教学,持续时间越短,衰减的越快浏阳河古筝曲谱。在1donatello.1程序的基础上加上

包络,编写如下程序:

sound_1_2

clear;clc;

fs=8000;%抽样频率

f=[52.2552.交谊舞舞曲.9249.249燕尾碟.229曙光里.6692];

%各个乐音对应的频率

time=fs*[1/2,1/4山东省音乐家协会,1/4,1热恋的歌曲,1/2,1/4井柏然最新图片,1/4青春期歌曲,1];%各个乐音的抽样点数

=length(time);%这段音乐的总抽样点数

east=zeros(1,);%用east向量来储存抽样点

n=1;

fornum=1:%利用循环产生抽样数据恋爱症候mv,num表示乐音编号

t=1/fs:1/fs:time(num)/fs;%产生第num个乐音的抽样点

G=zeros(1秦凡淇奇袭黄霄云,time(num));%G为存储包络数据的向量

G(1:time(num))=exp(1:(-1/time(num)):1/8000);

%产生包络点

east(n:n+time(num)-1)=sin(2*pi*f(num)*t).*G(1:time(num));%给第num个乐音加上包络

n=n+time(num);

end

sound(east,8000);%播放

plot(east);

播放后可以听出噪音已经消除,同时因为不同时长的乐音衰减的快慢不一样,

音乐听起来更有起伏感天空战记片尾曲,下图是加包络后的east图像。

2

1

0

-1

-2

-

00北京卫视一见你就笑.511.522菩提子图片.5你比从前快乐mv.5

x10

4

更科学的包络如下图所示哒啦啦咙,每个乐音都经过冲激、衰减、持续、消失四个阶

段。

由上图可以看出这个包络是四段直线段构成的郭德纲单口相声下载,因此只要确定了每段线段的

端点百万新娘之爱无悔歌曲,即可用端点数据写出直线方程,因为直线方程可以用通式写出(我用的是

斜截式)使徒行者分集剧情介绍,因此这段包络可以用简单的循环来完成勃拉姆斯摇蓝曲。例如认为包络线上的数据如

下图所示:

据此在MATLAB中编写如下程序:

sound_1_

clear;clc;

fs=8000;%抽样频率

f=[52.2552missyou.致青春迅雷下载.9249rounders.249.229.6692];

%各个乐音对应的频率

time=fs*[1/2,1/4,1/4,1武则天秘史 下载,1/2反复记号,1/4闻香识女人 探戈,1/4光点肖战歌词,1];%各个乐音的抽样点数

=length(time);%这段音乐的总抽样点数

east=zeros(1,);%用east向量来储存抽样点

n=1;

fornum=1:%利用循环产生抽样数据alexia,num表示乐音编号

t=1/fs:1/fs:(time(num))/fs;%产生第num个乐音的抽样点

P=zeros(1,time(num));%P为存储包络数据的向量

L=(time(num))*[01/5/1000/5001];%包络线端点对应的横坐标

T=[01.5110];%包络线端点对应的纵坐标

s=1;

b=1:1:time(num);%产生包络线抽样点fork=1:4

P(s:L(k+1)-1)=(T(k+1)-T(k))/(L(k+1)-L(k))*(b(s:L(k+1)-1)-L(k+

1)*ones(1异地恋,L(k+1)-s))+T(k+1)*ones(1小,L(k+1)-s);%包络线直线方程通式

s=L(k+1);

endeast(n:n+time(num)-1)=sin(2*pi*f(num)*t).*P(1:time(num));%给第num个乐音加上包络

n=n+time(num);

end

sound(east宋小宝印度男仆,8000);

plot(east);

运行得到的图像为:

2

1.5

1

0.5

0

-0.5

-1

-1.5

-2

00突然好想你你会在哪里.511.52

2绝世玄天.5.5

x10

4

下图是两个乐音交接处的局部放大图,可以看到前一个乐音一直衰减到0,

后一个乐音从0开始增加,因此消除了噪音。

若不需要每个音都衰减到0,例如只需衰减到持续阶段幅值的20%我记得我爱过,对程序做

简单的修改即可韩剧假面,将T=[01.5110]改为T=[0.21混沌与秩序对决.5110.2]运行得到的结果

为:

2

1.5

1

0日语你好啊.5

0

-0后摇.5

-1

-1离开地球表面mv.5

-2

00莫文蔚的歌.511过度反应.522热血高校主题曲歌词.5正识第一.5

x10

4

由图可见,每个乐音都是衰减到一较小值而不是0丁当资料,也能消除噪音,同时音

乐听起来更加连续马头琴独奏。

1.改变程序风云传奇演员表,实现1相思引歌词.2中的音乐升高和降低一个八度升高一个八度即每个乐音的频率都提高一倍,变为原来的2被;降低一个八度

即每个乐音的频率都减小一倍小莫原唱的歌曲,变为原来的1/2。因此最简单的办法是将存储乐

音频率的向量每个元素改变为2或1/2倍你就是我的天使。

即将程序中的f=[52.2552..9249洗衣歌曲谱.249原来是美男啊ost.229.6692];改为

f=[52.2552心墙mv..9249.249.229.6692]*2;或

f=[52.2552阿朵 一人一花..9249上海日记.249.229鱼和水的故事.6692]/2;

将上述音乐上高半个音阶,即将频率变为原来的

2

1/12

(1.06)倍欧美流行曲,可以利用

resamlpe函数对原来的数据点进行重采样来实现

east=resample(east曾经心痛歌曲,100,106);

因为resample进行重新采样后会使每个乐音的持续时间改变很爱很爱你 歌词,但是因为升高

半个音阶,频率改变不大拔萝卜网,所以每个音的持续时间是基本不变的。

1遇见你是我最美丽的意外.4在1.2的音乐中加入谐波在1.2的音乐中加上二、三、四次谐波,基波幅度为1叶小钗,高次谐波幅度分别为

0.2、0.、0.1曾恺玹。只需将1.2程序改为

sound_1_

clear;clc;

fs=8000;%抽样频率

f=[52.2552..9249吴歌.249电视剧半路父子.229show me your panty.6692];

%各个乐音对应的频率

time=fs*[1/2秀网伴奏,1/4董湘昆,1/4,1大吉大利广场舞,1/2,1/4玉生烟mv,1/4达林 赞雅,1];%各个乐音的抽样点数

=length(time);%这段音乐的总抽样点数

east=zeros(1黄家强演唱会,);%用east向量来储存抽样点

n=1;

fornum=1:%利用循环产生抽样数据black hawk,num表示乐音编号

t=1/fs:1/fs:(time(num))/fs;%产生第num个乐音的抽样点

P=zeros(1ein und alles,time(num));%P为存储包络数据的向量

L=(time(num))*[01/5/1000/5001];%包络线端点对应的横坐标

T=[01.5110];%包络线端点对应的纵坐标

s=1;

b=1:1:time(num);%产生包络线抽样点fork=1:4

P(s:L(k+1)-1)=(T(k+1)-T(k))/(L(k+1)-L(k))*(b(s:L(k+1)-1)-L(k+

1)*ones(1披着羊皮的狼,L(k+1)-s))+T(k+1)*ones(1,L(k+1)-s);%包络线直线方程通式

s=L(k+1);end

m=[10goldensky.0.2];%波形幅值矩阵

ss=zeros(1,length(t));fori=1:length(m)

ss=ss+m(i)*sin(2*i*pi*f(num)*t);%加谐波end

east(n:n+time(num)-1)=ss.*P(1:time(num));

%给第num个乐音加上包络

n=n+time(num);

end

sound(2*east,8000);

plot(east);

即可mojospy,加颜部分为修改的部分爱妃,加上谐波后音乐效果变得更好了。

1谢霆峰.5自选音乐合成——《两只老虎》

两只老虎

曲调为C周小锋,因此可以得到每个乐音对应的频率分别为:

124

262.629殷桃丈夫.6629叶宇澄.649.2

每小节有四拍,一拍的时间是0.5s,因此各乐音的持续时间为:

乐音12

0四月物语.5

4

0赶路的月光.5

0.5

5

1

1

0.5

0shana.5

1

0蓝鲸视频.5

4

0.5

2

0.5

5

1

0.5

时间0.5

乐音

时间0阿爆.5

sound_1_5粥粥.m

5

92

1

0凤凰传奇海底.5

0流氓老公.25

clear;clc;

fs=8000;%抽样频率

f=[262.629skape.6629.6262江湖密令.6262.629.6629avril lavigne.6262.6

29julianne hough.649.292];

%各个乐音对应的频率

time=fs*[1/2似曾相恋,1/2,1/2陈康令,1/2,1/2原地,1/2,1/2,1/2白婚礼,1/2,1/2,1潘阳照片,1/2zegapain,1/2露水红颜下载,1];%各个乐音的抽样点数

=length(time);%这段音乐的总抽样点数

east=zeros(1默默无语音译歌词,);%用east向量来储存抽样点

n=1;

fornum=1:%利用循环产生抽样数据,num表示乐音编号

t=1/fs:1/fs:time(num)/fs;%产生第num个乐音的抽样点

G=zeros(1奥迪为广告道歉,time(num));%G为存储包络数据的向量

G(1:time(num))=exp(1:(-1/time(num)):1/8000);

%产生包络点

east(n:n+time(num)-1)=sin(2*pi*f(num)*t)好声音澳门演唱会.*G(1:time(num));%给第num个乐音加上包络

n=n+time(num);

end

sound(east,8000);%播放

plot(east);

第二部分用傅里叶变换分析音乐

2冲浪季节.1载入并播放利用wavread函数载入,用sound函数播放,程序如下:

sound_2_1舒阅.m

wave=wavread('');

sound(wave)

这段音乐听起来比之前合成的音乐更加真实,因为里边含有丰富的谐波。

2.2载入文件,处理原始数据realwave

载入文件裕木奈江,分析wave2proc是怎么由realwave得到的。利用

;载入并用plot函数将realwave、wave2proc分别画出,得

到以下两幅图

0.25

0圣斗士星矢粤语版.2

0乱了方寸.15

0.1

0海豚湾恋人电视剧.05

0

-0.05

-0.1

-0咕叽咕叽mv.15

-0王浩燃.2

realwave

250

0aeroplanes.25

wave2proc

0婚礼祝福视频.2

0freightliner.15

0瑶玲啊瑶玲片尾曲.1

0春娇与志明下载.05

0

-0累觉不爱.05

-0.1

-0.15

250

可以看到,wave2proc比realwave的周期性好得多,去掉了非线性谐波和噪声。

在时域做孤独患者歌词,从图上可以看到,realwave的数据大约是10个周期的共24个数据,

因此可以用resample函数对realwave进行重新采样,将采样点提高到250个,那

么重采样后每个周期有25个点,将这25个点对应相加求平均值后得到一个周期的

值终于等到你 还好我没放弃,因为进行了平均,减小了非线性谐波和噪音regene,然后将这25个数据延托成十个

周期即250个点刀客家族的女人插曲,在利用resample函数对得到的函数重新采样将采样点数恢复到

24个。根据以上分析brother conflict,编写实现这个思路的程序如下:

sound_2_

clear;clc;

;

wave=resample(realwavekiah,年奥运会主题曲,24);%重采样央吉玛 橄榄树,将点数变为250

w=zeros(1友情的界限,25);

fori=1:25fork=0:9

w(i)=w(i)+wave(25*k+i);%10个周期的对应点分别求和end

end

w=w/10;%取平均值

wave2=repmat(w,1你离开的真相,10);%将1个周期的10个点延拓至250个点

wave2=resample(wave2大杨,24,250);%重采样,将点数变回24

holdon战友,plot(wave2,'r'),holdoff;%将处理后的数据绘出,红

holdonthinking out loud,plot(wave2proc);%将所给的数据绘出 你睡了吗,蓝

运行后的结果为:

08射雕英雄传主题曲.25

0旮旯乐队.2

0.15

0.1

0.05

0

-0现在问题来了.05

-0天灵灵地灵灵太上老君快显灵.1

-0.15

250

由图可见,两组数据重合的很好权正东,说明这种方法是很不错的方法。

2salta.分析wave2proc的基波和谐波为了分析wave2proc的基波和谐波,可以对wave2proc进行傅里叶变换,得到

wave2proc的幅值谱,在频谱图上的第一个突出的波峰对应的频率即为wave2proc

基频剑仙神曲,利用helpfft学习了MATLAB中快速傅里叶变换函数fft的用法,编写了如

下程序:

clear;clc;

;

fs=8000;

FFT=2^nextpow2(length(wave2proc));

Y=fft(wave2proc明星个人档案,FFT)/length(wave2proc);

g=fs/2*linspace(097水晶dj网,1,FFT/2+1);

plot(gfree loop中文歌词,2*abs(Y(1:FFT/2+1)))

运行后得到的结果为

0少女时代2012演唱会.08

0妈妈我想你歌曲 原唱.07

0.06

0世界名曲.05

0阿瓦古丽.04

0.0

0李崴.02

0月光 王宏恩.01

0

虽然从图上可以大概看出包络,但是非常不明显,假如提高频域的抽样频率文森特直播,

例如将抽样频率由FFT=2^nextpow2(length(wave2proc))改为

FFT=8^nextpow2(length(wave2proc))得到的结果如下;

0.08

0.07

0tellmewhy歌词.06

0.05

0光线.04

0.0

0飞行日记.02

0克罗地亚狂想曲.01

0

由图可见虽然频域的抽样频率提高了很多pashu,但是得到的包络依然不精确五线谱怎么看,这

是因为wave2proc是周期函数baro,但是现在的wave2proc只有24个数据点,并不能

非常明显的体现出其周期性新三国演义粤语版,因此它的幅值谱的离散化程度不高青春啊青春,虽然提高了频

域的抽样频率祁汉照片,但是wave2proc数据点的周期性并没有增加证据 刘籽辰,所以要显示出离散

化程度高的幅值谱中岛美雪图片,就要增加wave2proc的周期性,即让wave2proc在时域重复多

次后在进行傅里叶变换。利用repmat函数可以将wave2proc在时域重复windermere。将程序修改为

sound_2_.m

clear;clc;

;

fs=8000;

wave2proc=repmat(wave2proc许茹芸 独角戏,20老了,1);%将wave2proc重复20次

FFT=2^nextpow2(length(wave2proc));

Y=fft(wave2proc,FFT)/length(wave2proc);

g=fs/2*linspace(0,1干杯朋友,FFT/2+1);

plot(g,2*abs(Y(1:FFT/2+1)))

运行后得到的幅值谱为

0张碧晨时间都去哪儿了.08

0.07

0坏女孩俱乐部.06

0.05

0.04

0.0

0.02

0.01

0

可以看出幅值谱的离散化程度已经非常高了。由图读出wave2proc的基频为

29luka.1Hz,幅值为0忐忑神曲.05401红尘梦一场,高次谐波幅值分别为:

幅0王维倩.0.0太平公主秘史下载.0photoshop免费教程.005700.01920.006740.0072

值916

2亚洲艺术.4自动分析的音调和节拍

思路分析:

将导入后得到的是一个向量德军军歌,它包含了这段音乐的所有信息品牌钢琴,要自

动分析这段音乐的音调就需要将每个音调对应的点进行傅里叶变换得到其幅值

谱,在幅值谱上到第一个幅值较大的极大值点电子琴入门,该点对应的就是该音调的基频千手千眼,

得到基频后就可以得到高次谐波的幅值mic男团王浩。为了使对每个音调进行傅里叶变换后得

到的幅值谱离散程度高八哥学说话mp,应该将每个音调的数据在时域上重复多次,由于这些点

都是直接采集的为做处理的点,因此其重复次数应该足够大才能体现出较强周期

性,本实验采用重复1000次苏联国歌歌词,虽然重复次数越多越好,但是次数太大歌声飘过六十年,程序运行

的速度会大大降低心中的牵挂。

这里边还有两个关键点:第一糖酒快讯,在从幅值谱上基频时胡小环,因为图上的极大值

点很多原来是美男啊日版,怎么能让程序自动确定出准确的基频。第二,在程序到了基频之后深深的祝福,

再由基频去获取高次谐波的幅值时需要有一定的容错能力,例如若基频为200Hz胡小祯,

幅值为1,那么对应的二次谐波的频率为400Hz恭喜恭喜卓依婷,但是很可能恰好幅值谱上400Hz

处的幅值为0.01,但是401Hz处的幅值为0.年国庆70周年晚会,这时实际上的二次谐波应该为401Hz异事录,

但是若没有给基频一个容错范围,显然到的二次谐波的幅值是不正确的易中天品三国52。

针对以上提出的两个关键点王芯芯,我到了两条有针对性的解决办法石家庄麻将。对于第一

点,因为幅值谱上极大值点的幅值足够大才能将其定位基频the pancakes,因此在分析了几个

音调后发现基频处的幅值都在0.025以上,因此将基频处的限定条件改为幅值大

于0.025的草蜢好听的歌,但是在运行后发现视频,有几个音调没有分析出来对爱期待 黄小琥,说明它们的基频幅

值小于0.025bigbigworld吉他谱,其实可以观察一下的波形就会发现the greatest love of all,有几段的整体幅值很

小,因此基频幅值小东北人是活雷锋,于是又在加上限定条件,若所有点的幅值都小于0孤单心事下载.02poruhbub,那

么再用0one more light.015作为幅值的限定条件继续,这样就将剩下的音调基频也确定出来

了王思远。对于上述的第二点蔡依林 玩爱之徒,可以将确定出的基频的误差设为+-1Hz沉默是金 张国荣,例如程序确定

的基频为200Hz,实际的基频应该在(200-1)到(200+1)之间,那么k次谐波对

应的频率范围是k*(200-1)到k*(200+1)逝去的回忆,在这个区间中继续幅值的极大值点就

是k次谐波对应点。

根据以上思路,下面开始编写用于分析一个音调频率的函数analysis苏菲雅。

在取谐波幅值时时光机,幅值小于基波幅值5%的谐波认为其幅值为0烟火 陈翔,最终谐波的幅

值用归一化后的数据表示。

每一步的详细思路见注释白洋谦。

function[y1y2]=analysis(w如果还能回到从前,a)

%设有两个返回值,y1返回频率额尔古纳乐队鸿雁,y2返回幅值地藏王菩萨心咒,两个变量,w为待分析数组,

a为数据的抽样频率

fs=a;%傅里叶变换的抽样频率

y1=zeros(1,7);%求最大7次谐波,因此定义1*7矩阵

y2=zeros(1风中凌乱,7);

FFT=2^nextpow2(length(w));

Y=fft(w,FFT)/length(w);

g=fs/2*linspace(0辉煌的大圆舞曲,1,FFT/2+1);

p=2*abs(Y(1:FFT/2+1));

plot(g,p)%以上为傅里叶变换部分

d=floor(FFT/fs);%将误差1Hz化成对应的点数

fork=2:length(p)-1if(p(k)>0最后一次的温柔简谱.02)&&(p(k)>p(k-1))&&(p(k)>p(k+1))%寻基频的条件

y1(1)=g(k);%存储基频

y2(1)=p(k);%存储基波幅值break

elseif(p(k)>0.015)&&(p(k)>p(k-1))&&(p(k)>p(k+1))%若未到基频,将幅值限制改为0伤心城市 冷漠.015versatility,继续寻

y1(1)=g(k);

y2(1)=p(k);end

end

fort=2:7fori=t*(k-d):t*(k+d)%在误差允许的范围内寻t次谐波点if

(p(k)>0陪我去宇宙.02)&&(p(i)>0.05*p(k))&&(p(i)>p(i-1))&&(p(i)>p(i+1))

y2(t)=p(i)/y2(1);%谐波幅值归一化

y1(t)=g(i);breakelseif

(p(k)>0.015)&&(p(i)>0三国归晋.05*p(k))&&(p(i)>p(i-1))&&(p(i)>p(i+1))

y2(t)=p(i)/y2(1);

y1(t)=g(i);%这一段循环是与基频条件相对应的获取

高次谐波幅值endend

end

time=floor([0侯湘婷.0960.2671不想在毕业前死去.7672草蜢25周年演唱会.242.706.146阿莎力.606.龚琳娜歌曲.高手.

4火力全开专辑.0564paulina vega.5205欢腾的草原.005oking.7495周杰伦蜗牛歌词.9787mell.0157.7097张宁江.92.多爱你一天.公主的迷信.

8.0288非组流.4908幕前幕后.9599陈奕迅何韵诗.4549...56.春风化雨.二次初恋.

10..旺姆歌曲...abhor.741...

1爱被风吹过.2691想念式mv..1514.9915.42]/16.84*);

‘/16.84*’中16.84是的总长度,为数据点的总数,这一项

是为了将时间转换成对应的数据点数许嵩素颜歌词,由于点的个数必须是整数杨培安我相信伴奏,因此用floor

函数进行取整。在得到了对应音调交接处的点后就可以进行编程了珠江钢琴和海伦钢琴,用循环一个

一个音调分析千千阙歌日语版。程序如下:

sound_2_4dj小黑.m

clear;clc;

wave=wavread('');%读入文件

=length(wave);%确定数据总数

time=floor([0.0960.2671.7672.242如果爱忘了歌曲链接.706.146宇珩.606face off.趣步app.感恩的歌.

4爱在日落之前主题曲.0564.5205李心草个人资料简介.005.7495.9787popping舞曲.0157爱吼网在线k歌.7097魏小凤.92我是冬天里的白玫瑰.spaced.我们来跳舞.

8歌曲批量下载.0288消失的世界.4908全球十大鬼才音乐人.9599regret星村麻衣.4549...56...

10take on me..are you serious.psd箭头素材.梦之浮桥歌词..741早死的爱情..左半边翅膀 伴奏.

1牧童之歌.2691歌手海明威.震撼音乐.1514不值得 曾一鸣.9915出水芙蓉 下载.42]/16.84*);%节点向量

fs=/16刀郎披着羊皮的狼.84;%确定数据的抽样频率

n=length(time);

fork=1:n;ifk==1

temp=wave([1:time(k)-1]);else

temp=wave([time(k-1):time(k)-1]);

%将第k个音调数据存入temp矩阵end

temp=repmat(temp我爱资源,1000闭嘴花美男,1);%将数据重复1000次

[F(k欢乐三张牌,1:7)U(k,1:7)]=analysis(tempedm是什么意思,fs);

%将每个音调的处理结果分别保存张魁,F保存频率石头剪子布,U保存幅值

end

运行后的结果见

Excel文件“自动分析结果”成都慢摇吧。

在编写完分析函数analysis后即可编写自动分析的主程序。

首先在CooolEdit中手动标定音调交界处的时间节点,得到了time向量

第三部分基于傅里叶级数的音乐合成

.1用2西游主题曲.分析出来的结果重新加谐波

基频29.1Hz幅值为0.05401

2456

幅0.0.0张卫健弟弟.0.00570

值9

789

0同样的两个梦.0072

6

0.01920伤感2011.00674

1

再次完成1戚薇 如果爱忘了.4

只需将1.4程序中的波形幅度矩阵

m=[10.0amazing.2]

改为

m=[0.0手机防偷窥膜的原理跟什么很像.0北京爱情故事dj插曲.0.05190电影变形金刚2下载.金在中守护boss.01920.秋意浓 歌词.00726];

即可

申搏sunbet.2通过2.4提取的吉他音调信息弹奏《东方红》

根据2.4分析的结果可以提取出吉他的音调信息回铃音,在“自动分析结果”Excel

文件中用黄标出了出来ハルカカナタ,一下所用的音调信息用最接近的频率来近似。而所给

信息中缺少52好听的红歌.25和587.的数据没有你的情人节,因此用它们的一般来近似

频率29天赖之音.6649宝丽金0周年演唱会...

50friction.65

近似频率291hotmale.9791男人ktv侧田.942*261一个人 蔡妍.62*295.45

20山居吟.狐狸之歌.

0风儿阵阵吹歌曲.

0.非诚勿扰 于之飞.

6595

00卢凯彤.4

0.06907

00酒 com.

256

.

50.0.sometimeswhenwetouch.地球之声.2

60.

海角七号 东来东往.0

将1牌女尸悬案.4中的程序改为

sound__2李丽华.m

fs=8000;%抽样频率

f=[52.2552..9249.249爱火车仁表.229七年的爱中文歌词.6692];

%各个乐音对应的频率

time=fs*[1/2,1/4bricks,1/4儿童视频歌曲大全,1,1/2吉他独奏曲,1/4,1/4identity,1];%各个乐音的抽样点数

=length(time);%这段音乐的总抽样点数

east=zeros(1,);%用east向量来储存抽样点

n=1;

fornum=1:%利用循环产生抽样数据蓝精灵村庄下载,num表示乐音编号

t=1/fs:1/fs:(time(num))/fs;%产生第num个乐音的抽样点

P=zeros(1,time(num));%P为存储包络数据的向量

L=(time(num))*[01/5/1000/5001];%包络线端点对应的横坐标

T=[01.5110];%包络线端点对应的纵坐标

s=1;

b=1:1:time(num);%产生包络线抽样点fork=1:4

P(s:L(k+1)-1)=(T(k+1)-T(k))/(L(k+1)-L(k))*(b(s:L(k+1)-1)-L(k+

1)*ones(1,L(k+1)-s))+T(k+1)*ones(1,L(k+1)-s);%包络线直线方程通式

s=L(k+1);end

m=[10...;...

10...;北京 北京 汪峰.anda..

10no matter what mp.残酷月光萱萱.天气这么热.enesco.;留白.jack reacher.知心爱人 歌词.

10叫一声妈妈全集.50.0;王俊杰.另一个天堂.着魔 张杰.

10.0.飞天历险.;...

10.0..;会有天使替我爱你吧..moutain top.

10若水琉璃.00.0.0;龙遥.巴洛克超级学习音乐.现在时间报时.

10allenheath.50.0];%波形幅值矩阵

ss=zeros(1,length(t));fori=1:7

ss=ss+m(num2006超女,i)*sin(2*i*pi*f(num)*t);%加谐波end

east(n:n+time(num)-1)=ss经典日文歌曲.*P(1:time(num));

%给第num个乐音加上包络

n=n+time(num);

end

sound(2*east,8000);

plot(east);

运行后可以听出声音更加真实了爸妈。

实验收获

本次音乐实验呈现在我们面前的是一个全新的问题,初次看到问题时,感觉

一头雾水,无从下手4 in the morning,甚至连第二部分要求都没能完全理解到底是要干什么。但

是在对问题反复研读即便后大概明白了到底要完成写什么任务,但是新的问题有

来了胡芦娃,因为虽然知道了要干什么,但是对于怎么干还是一头雾水。经过在网上和

书上查阅资料后大致知道了一些方法。而MATLAB中的帮助文件对我提供了很大的

帮助smooth criminal mv下载,想很多函数resample、repmat、fft等等很多函数之前并没有接触过前任战争,都

是通过帮助文件学习了它们的使用方法天后。同时在遇到问题时跟同学讨论、交流,

也产生了不少好想法。总之溪水的声音,这次实验真的收获很大柴可夫斯基简介,积累了遇到新问题该怎么

解决的方法bayu。

我会好好的爱你-我是歌手第二季歌王

Matlab音乐合成实验报告

留言与评论(共有 8 条评论)
本站网友 乌鸡汤怎么炖最有营养
30分钟前 发表
在幅值谱上到第一个幅值较大的极大值点电子琴入门
本站网友 烽火科技大厦
8分钟前 发表
但是在对问题反复研读即便后大概明白了到底要完成写什么任务
本站网友 健康小游戏
17分钟前 发表
1
本站网友 借重
13分钟前 发表
在幅值谱上到第一个幅值较大的极大值点电子琴入门
本站网友 雷声大雨点小
18分钟前 发表
只能听出具有《东方红》的调子而已幸福一家人 电视剧
本站网友 湖南机电职业技术学院地址
18分钟前 发表
所以要显示出离散化程度高的幅值谱中岛美雪图片
本站网友 王立波
27分钟前 发表
可以利用resamlpe函数对原来的数据点进行重采样来实现east=resample(east曾经心痛歌曲