音乐的合成Word格式文档下载.docx

上传人:b****1 文档编号:444931 上传时间:2023-04-28 格式:DOCX 页数:20 大小:393.93KB
下载 相关 举报
音乐的合成Word格式文档下载.docx_第1页
第1页 / 共20页
音乐的合成Word格式文档下载.docx_第2页
第2页 / 共20页
音乐的合成Word格式文档下载.docx_第3页
第3页 / 共20页
音乐的合成Word格式文档下载.docx_第4页
第4页 / 共20页
音乐的合成Word格式文档下载.docx_第5页
第5页 / 共20页
音乐的合成Word格式文档下载.docx_第6页
第6页 / 共20页
音乐的合成Word格式文档下载.docx_第7页
第7页 / 共20页
音乐的合成Word格式文档下载.docx_第8页
第8页 / 共20页
音乐的合成Word格式文档下载.docx_第9页
第9页 / 共20页
音乐的合成Word格式文档下载.docx_第10页
第10页 / 共20页
音乐的合成Word格式文档下载.docx_第11页
第11页 / 共20页
音乐的合成Word格式文档下载.docx_第12页
第12页 / 共20页
音乐的合成Word格式文档下载.docx_第13页
第13页 / 共20页
音乐的合成Word格式文档下载.docx_第14页
第14页 / 共20页
音乐的合成Word格式文档下载.docx_第15页
第15页 / 共20页
音乐的合成Word格式文档下载.docx_第16页
第16页 / 共20页
音乐的合成Word格式文档下载.docx_第17页
第17页 / 共20页
音乐的合成Word格式文档下载.docx_第18页
第18页 / 共20页
音乐的合成Word格式文档下载.docx_第19页
第19页 / 共20页
音乐的合成Word格式文档下载.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

音乐的合成Word格式文档下载.docx

《音乐的合成Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《音乐的合成Word格式文档下载.docx(20页珍藏版)》请在冰点文库上搜索。

音乐的合成Word格式文档下载.docx

1.2音乐中噪声的消除…………………………………………………………………..

1.3升高、降低八度…………………………………………………….

1.4加入谐波……………………………………………………………………………..

音乐的傅里叶分析…………………………………………………………………………

总结………………………………………………………………………

乐曲解析

乐音的基本特征可以用基波频率、谐波频率和包络波形三个方面来描述,我们用大写英文字母CDEFGAB表示每个音的“音名”(或称为“音调”),当指定某一音名时,它对应固定的基波信号频率。

图1表示钢琴的键盘结构,并注明了每个琴键对应的音名和基波频率值。

这些频率值是按“十二平均律”计算导出,下面解释计算规则:

图1钢琴键盘和相应频率

从图1可以看到,靠下边的G键称为小字组G,它的频率值f0=196Hz,而靠上面的另一个G键是小字一组G,它的频率值是f1=392Hz。

两者为二倍频率关系,即f1相当于f0的二次谐波。

也称为8度音或倍频程Octave(即我们画频响特性图时所用的术语“倍频程”)。

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

由图可知《seeyouagain》的曲调定为G,即1=G,对应的频率为293.66Hz,据此可以计算出其他乐音的频率,类推计算出各乐音对应的频率与时间见表2

乐音对应的频率

乐音

5

2

1

3

频率

293.66

440

392

493.88

3

2

196

6

246.94

349.63

220

乐音对应的时间

时间

0.5

0.25

1.5

0.75

表2

在MATLAB中表示乐音所用的抽样频率为fs=3800Hz,也就是所1s钟内有3800个点,抽样点数的多少就可表示出每个乐音的持续时间的长短。

用一个行向量来存储这段音乐对应的抽样点,在用sound函数播放即可。

第1章音乐的合成

1.1音乐的简单合成

根据《seeyouagain》片段的简谱和“十二平均律”计算出该片段中各个乐音的频率,在MATLAB中生成幅度为1、抽样频率为3800kHz的正弦信号表示这些乐音。

请用sound函数播放每个乐音,听一听音调是否正确,最后用这一系列乐音信号拼出《seeyouagain》片段,注意控制每个乐音持续的时间要符合节拍,用sound函数播放合成的乐音。

clear;

clc;

fs=3800;

%抽样频率

f=[293.66440392293.66293.66392440493.88440392440293.66440392293.66293.66392440493.88440392440293.66440392293.66293.66392440493.88440392440293.66440392293.66293.66196246.94293.66329.63293.66293.660196220220196220246.940246.94293.66329.63349.23329.63293.66246.9422022019622022022019600196246.94293.66329.63293.66293.660196220220196246.940220246.94293.66329.63392440493.88440392293.66329.63392];

%各个乐音对应的频率

time=(3/2)*fs*[1/2,1/2,1/2,1/2,1/2,1/4,1/4,1/4,1/4,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/4,1/4,1/4,1/4,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/4,1/4,1/4,1/4,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,3/2,1/2,1,3/4,1/4,1/2,1/2,1/2,1/2,1,1/2,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1,1/4,1/4,1/4,1/4,3/2,1/2,1,3/4,1/4,1/2,1/2,1/2,1/2,1,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/4,1/4,1/2];

%各个乐音的抽样点数

N=length(time);

%这段音乐的总抽样点数

east=zeros(1,N);

%用east向量来储存抽样点

n=1;

fornum=1:

N%利用循环产生抽样数据,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);

%播放音乐

分析:

从运行结果可以听出,在每个乐音之间会有比较明显的“啪啪”声,这就是杂音,所以接下来要把杂音消除。

1.2音乐中噪声的消除

原理分析:

每个乐音之间有比较明显的“啪啪”声,是由于相位不连续产生了高频分量。

这种噪声严重影响合成音乐的质量,丧失真实感,下面通过加包络来消除杂音。

最简单的包络为指数衰减。

最简单的指数衰减是对每个音乘以

因子,在实验中首先加的是

的衰减,这种衰减方法使用的是相同速度的衰减,但是发现噪音并没有完全消除,播放的音乐效果不是很好,感觉音乐起伏性不强。

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

%各个乐音对应的频

xio=zeros(1,N);

N%利用循环产生抽样数据,num表示乐音编号

(time(num))/fs;

%产生第num个乐音的抽样点

P=zeros(1,time(num));

%P为存储包络数据的向量

L=(time(num))*[01/5333/1000333/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

hetangyese(n:

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

time(num));

%给第num个乐音加上包络

sound(hetangyese,8000);

plot(hetangyese);

wavwrite(hetangyese,'

hetangyese2'

从播放的的声音可以听出,杂音已经基本消除,听起来更有节奏感。

1.3升高、降低八度

升高八度

f=2*[293.66440392293.66293.66392440493.88440392440293.66440392293.66293.66392440493.88440392440293.66440392293.66293.66392440493.88440392440293.66440392293.66293.66196246.94293.66329.63293.66293.660196220220196220246.940246.94293.66329.63349.23329.63293.66246.9422022019622022022019600196246.94293.66329.63293.66293.660196220220196246.940220246.94293.66329.63392440493.88440392293.66329.63392];

%各个乐音的抽样点数

P=zeros(1,time(num));

%包络线端点对应的横坐标

for

k=1:

4P(s:

%包络线直线方程通式

s=L(k+1);

n+time(num)-1)=sin(2*pi*f(num)*t).*P((3/2):

%给第num个乐音加上包络

降低八度

f=(1/2)*[293.66440392293.66293.66392440493.88440392440293.66440392293.66293.66392440493.88440392440293.66440392293.66293.66392440493.88440392440293.66440392293.66293.66196246.94293.66329.63293.66293.660196220220196220246.940246.94293.66329.63349.23329.63293.66246.9422022019622022022019600196246.94293.66329.63293.66293.660196220220196246.940220246.94293.66329.63392440493.88440392293.66329.63392];

for

4P(s:

1.4加入谐波

%抽样频率

time=(7/4)*fs*[1/2,1/2,1/2,1/2,1/2,1/4,1/4,1/4,1/4,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/4,1/4,1/4,1/4,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/4,1/4,1/4,1/4,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,3/2,1/2,1,3/4,1/4,1/2,1/2,1/2,1/2,1,1/2,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1,1/4,1/4,1/4,1/4,3/2,1/2,1,3/4,1/4,1/2,1/2,1/2,1/2,1,1/4,1/4,1/2,1/2,1/2,1/2,1/2,1/2,1/2,1/4,1/4,1/2];

fork=1:

m=[10.30.2];

%波形幅值矩阵

ss=zeros(1,lengt

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2