- 6
- 0
- 约3.39万字
- 约 36页
- 2017-08-15 发布于天津
- 举报
音乐播放和混音 - 86Duino
86Duino
音乐播放和混音
一 、 声音是什么?
实作过很多章节之后,本章开始来谈些不一样的主题,声音就是一个,很
多时后,美妙的声音能感动人心,能让EduCake 发出动人的声音想必是件有
趣的事情。
首先,得先了解,声音是一种需要透过介质(空气、水等等)传递的波动,
在不同介质里面还会有不同的速度,传入耳朵,震动耳膜,然后我们才有办法
感知声音的来源和内容。一般来说,人类耳朵可以听到声音的频率约是在
20Hz ~ 20000Hz(赫兹) 之间,超过这个范围就称为超音波,而低于这一范围
的称为次声波;而狗就可以听到40~50000Hz 的声音,所以有时候明明没听
到声音狗还是大叫就是这样,因为他们听到人类听不到的声音了,用超音波模
块简单的测试就可以发现这个状况。其中Hz 是一种描述声音频率的单位,如
下图1
-1-
86Duino
图1. 一个简单的声音波动图
图中的声音只是一种简单的高低的方波型构成,有点像是之前谈过的
PWM,这个图的波只有两种,高态和低态,不管哪一种,都算是一次震动,
只是差别震动幅度高低而已,频率的定义就是: 一秒钟里面发生多少次这样的
震动,EX: 300Hz 代表一秒钟有三百次震动次数,频率越高,代表震动的次数
越多,我们的耳朵听到的声音就会越尖锐,相对的频率越低听到的声音就会越
低沉。而震动的幅度代表了声音的强度,震动的幅度越大,我们就会听到越大
的声音。这就好像我们用手拍水面,轻轻拍,水波很低缓;但用力拍,水就会
波动剧烈是一样的。
再来就是音色(声音的特色) ,如图2,同样的音高和同样的声音强度的情
况下,音色会让一段声音明显被分辨出是不同乐器或是不同的人声,这主要是
因为发出声音的材质不同,虽然发出一样频率的声音,但该材质的致密度、刚
性、弹性等等的物理性质不同使得发出的声音里面会有额外的”特色杂音”混
在其中,形成特色频率。就好像唱歌,虽然同样都唱出Do、Re、Me、Fa、So…
的音,但男生唱出来混有男生特有的低沉音在内,女声唱出混有女生特有的高
音在内,都会使得一段同样旋律的声音出来有明显不同;各种大提琴、箫、吉
他、钢琴等等也是因为这样。这些特色音里面的这些特色杂音,因为通常含盖
了中低高等音频,甚至有些几乎要超过人耳能听到的范围,所有的这些声音若
是以特定比例混合起来,虽然同时都发出一样声调,可以因为彼此音色的特性,
-2-
86Duino
使的整体的声音变好听,这也是为何乐团演奏总喜欢一堆各式乐器混和去搭配
的原因,整体演奏的感觉好很多。
图2. 声音的特色
有了频率、振幅、音色,其实我们就可以把很多美妙的声音重现出来。控
制振幅,也就是音量大小(对控制来说就是改变电流大小或是PWM) ,可以模拟
出声音远近的变化感觉,而变化的速度,还可以让人耳有速度的感觉,就好像
警车或是救护车,我们可以听声音就知道他们接近或远离的速度是一样的,不
同的是,这里面除了音量的变化还带有都普勒效应的频率变化。也可以利用左
右两个喇叭来配合,更能营造出立体的环场和左右方向感觉的声音。甚至反推
这个过程就可以去作声音的辨识,甚至语音的辨识了,不过后面这些不是本章
讨论范围,往后再谈。
-3-
86Duino
二 、 发出声音
知道声音的特性以后,就可以利用EduCake 的内建功能来实作出这些声
音,首先需要了解两个指令tone( ) 、notone( ) 。
tone( ) 这个指令会在指定的
原创力文档

文档评论(0)