|
说到数字音频,大家肯定不会陌生,现在谁的手机里还不存几首MP3?
- O( W# }, ]# u; R3 T
' B+ C) d5 T, ^* G+ P/ D- p/ J自然界的音频信号是连续的模拟信号,为了让电子设备能够识别并播放音频,需要将模拟型号转换成数字信号。这个过程包含采样、量化、编码三个阶段,我们常见的数字音频文件都是经过这种方式来得到的。MP3的采样率范围为8kHz到48kHz,而wav则使用44.1kHz的采样率。/ f( B4 t6 s: K7 l( L I h
; Y; D9 K# O& D2 P- U( c& F
人耳的频率响应范围约为20Hz-20kHz,换算下来,当采样率达到40kHz以上时,人耳就很难分辨数字信号和模拟信号间的差异了。* k: n% p8 q+ [% x- F G& A
, ?9 s1 r: M& j5 b
& U- g, f' w3 g9 u
* c2 z; `( K1 V7 G在众多的数字音频格式中,有一种音频格式却没有遵循上述的特点,这个另类就是MIDI。
9 s# `3 `$ k& ^! k( S* n* y
, {) ~" \) `- j9 n t7 iMIDI的英文全称为Musical Instrument Digital Interface,直译为乐器数字接口。这种编码格式的提出是为了解决各种电声乐器之间通信问题。* y/ S8 T/ Z- P& N
+ u1 s0 W1 A# [& o) o- S
与常规的音频文件不同,MIDI编码的文件存储的并不是对模拟信号采样后的数字音频信号,而是一系列控制指令。- C: e2 R: A# ~0 A
" u7 P) l# s: R9 m; u% h2 p( d8 ^
每个MIDI文件开头的4个字节为「4d 54 68 64」,对应的ASCII字符为「MThd」,它表示这个文件是MIDI文件,后续的10个字节则定义了该MIDI文件的一些全局信息,如音轨数、节拍时长等信息,在这14个字节之后的内容就是真正的「音频」部分。& w2 B( T0 b! b) a* b9 N
6 W1 `/ t9 D( |) y/ j1 R8 J
MIDI的音频部分由一系列的MIDI Event组成,每一个Event可以理解为对当前时刻的音符的描述,包括音符的音高、音色、持续时间、力度等。当我们在PC上播放MIDI音频文件时,PC的声卡就会根据这些Event实时「合成」对应的声音并播放出来,而不是「回放」,这也就决定了MIDI文件的播放效果取决于声卡品质的高低。7 u; O9 T& C; ~4 {
& W' B) u# x$ c从上文的描述可以看出,MIDI文件其实是数字世界的「五线谱」,它的内容确定了MIDI播放器在什么时刻应该发出何种声音。; u" }( n9 {4 h# y8 P$ R" Z
: V' m- c! |5 D8 @ v/ G" M
MIDI编码格式在日常生活中并不多见,它主要应用于数字音乐创作领域。由于MIDI文件记录的是一系列原始的音频控制命令,所以它可以很方便的被重新编辑,同时配合丰富的音色库就可以制作出流行音乐。MIDI也可以直接控制各种各样的电子音源,进而「演奏」出独特的音乐效果。: v& t4 T" Z4 u* D
q2 }9 Q& P2 m# F! d X6 U- w. S7 B" J% g4 v! Z$ Y" N2 R
7 S7 P! o) I* ~+ _
|
|