|
|
说到数字音频,大家肯定不会陌生,现在谁的手机里还不存几首MP3?
9 ~3 Z0 H' @2 ?% h% E# ]2 }' |, Y: h8 d. }$ [: V; H+ h
自然界的音频信号是连续的模拟信号,为了让电子设备能够识别并播放音频,需要将模拟型号转换成数字信号。这个过程包含采样、量化、编码三个阶段,我们常见的数字音频文件都是经过这种方式来得到的。MP3的采样率范围为8kHz到48kHz,而wav则使用44.1kHz的采样率。- U3 u: K+ u5 [. R' |# Z$ I
$ g1 S; W: m+ k& X3 R: j人耳的频率响应范围约为20Hz-20kHz,换算下来,当采样率达到40kHz以上时,人耳就很难分辨数字信号和模拟信号间的差异了。
0 N* `4 E% }! E4 _6 ^* J5 `, v$ t% G9 |; P* M7 \" U8 \: z
4 w+ A ~% u7 ?& ~% c* m7 c. e. m! @8 w0 g
在众多的数字音频格式中,有一种音频格式却没有遵循上述的特点,这个另类就是MIDI。
! ], p9 ~% {+ E7 Z8 X
: T" d ]: b4 T4 t: j+ aMIDI的英文全称为Musical Instrument Digital Interface,直译为乐器数字接口。这种编码格式的提出是为了解决各种电声乐器之间通信问题。
& T( j3 h1 [ @
+ x- q# f2 L% V( A. u, O; I与常规的音频文件不同,MIDI编码的文件存储的并不是对模拟信号采样后的数字音频信号,而是一系列控制指令。
j4 e/ ]( I( ?$ o4 }6 f& g( I! F2 v
/ b4 h V! t, N6 L, P每个MIDI文件开头的4个字节为「4d 54 68 64」,对应的ASCII字符为「MThd」,它表示这个文件是MIDI文件,后续的10个字节则定义了该MIDI文件的一些全局信息,如音轨数、节拍时长等信息,在这14个字节之后的内容就是真正的「音频」部分。
8 C$ S& y( z' c; R& Y# W5 E; }0 T5 Y8 ^* e
MIDI的音频部分由一系列的MIDI Event组成,每一个Event可以理解为对当前时刻的音符的描述,包括音符的音高、音色、持续时间、力度等。当我们在PC上播放MIDI音频文件时,PC的声卡就会根据这些Event实时「合成」对应的声音并播放出来,而不是「回放」,这也就决定了MIDI文件的播放效果取决于声卡品质的高低。
) D% _; S2 v; O/ ?; s' x
$ Z0 f7 s' L' Y: S. ~! u从上文的描述可以看出,MIDI文件其实是数字世界的「五线谱」,它的内容确定了MIDI播放器在什么时刻应该发出何种声音。1 S/ G0 I7 C' r, j: J* r
1 u/ u+ b# b1 N' w% I7 _5 h9 @4 YMIDI编码格式在日常生活中并不多见,它主要应用于数字音乐创作领域。由于MIDI文件记录的是一系列原始的音频控制命令,所以它可以很方便的被重新编辑,同时配合丰富的音色库就可以制作出流行音乐。MIDI也可以直接控制各种各样的电子音源,进而「演奏」出独特的音乐效果。
* p0 ]/ b* ^/ ]& F) w4 s+ Q7 { ^7 j' ^' Y- g7 a0 L; `% C
, f" \. D4 P. v" A" f$ A
: H+ h* q7 X) t |
|