第2章 数字声音及MIDI简介
***************************************************************************
2.1,声音与听觉器官
2.2 声音信号数字化
2.2.1 从模拟过渡到数字
2.2.2 模拟信号与数字信号
2.2.3 声音信号数字化
2.2.4 采样频率
2.2.5 采样精度
2.2.6 声音质量与数据率
2.3 声音文件的存储格式
2.4 声音工具
2.5 声音质量的度量
2.6 电子乐器数字接口(MIDI)系统
2.6.1 MIDI简介
2.6.2 FM合成声音
2.6.3 乐音样本合成声音
2.6.4 MIDI 系统
2.6.5 MIDI消息
2.6.6 MIDI音序器和标准MIDI文件
2.6.7 合成器的多音调和多音色
2.6.8 通用MIDI(GM)
练习与思考题参考文献和站点
***************************************************************************
声音是携带信息的极其重要的媒体,是多媒体技术研究中的一个重要内容。声音的种类繁多,如人的话音、乐器声、动物发出的声音、机器产生的声音以及自然界的雷声、风声、雨声、闪电声等。这些声音有许多共同的特性,也有它们各自的特性。在用计算机处理这些声音时,既要考虑它们的共性,又要利用它们的各自的特性。本章将介绍声音的基础知识,重点掌握声音数字化的两个最基本的概念。此外,还介绍在上网浏览或者脱机工作时你会经常遇到的声音文件存储格式和声音工具。
2.1 声音与听觉器官声音是通过空气传播的一种连续的波,叫声波。声音的强弱体现在声波压力的大小上,音调的高低体现在声音的频率上。声音用电表示时,声音信号在时间和幅度上都是连续的模拟信号,如图2-01所示。声波具有普通波所具有的特性,例如反射 (reflection)、折射 (refraction)和衍射 (diffraction)等。

图2-01 声音是一种连续的波
对声音信号的分析表明,声音信号由许多频率不同的信号组成,这类信号称为复合信号,而单一频率的信号称为分量信号。声音信号的一个重要参数就是带宽,它用来描述组成复合信号的频率范围。如高保声音信号(high-fidelity audio)的频率范围为10 Hz~20?000 Hz,它的带宽约为20 kHz,而视频信号的带宽是6 MHz。
声音信号的两个基本参数是频率和幅度。信号的频率是指信号每秒钟变化的次数,用Hz表示。例如,大气压的变化周期很长,以小时或天数计算,一般人不容易感到这种气压信号的变化,更听不到这种变化。对于频率为几Hz到20 Hz的空气压力信号,人们也听不到,如果它的强度足够大,也许可以感觉到。人们把频率小于20 Hz的信号称为亚音信号,或称为次音信号(subsonic);频率范围为20 Hz~20 kHz的信号称为音频(Audio)信号;虽然人的发音器官发出的声音频率大约是80~3400 Hz,但人说话的信号频率通常为300~3000 Hz,人们把在这种频率范围的信号称为话音(speech)信号;高于20 kHz的信号称为超音频信号,或称超声波 (ultrasonic) 信号。超音频信号具有很强的方向性,而且可以形成波束,在工业上得到广泛的应用,如超声波探测仪,超声波焊接设备等就是利用这种信号。在多媒体技术中,处理的信号主要是音频信号,它包括音乐、话音、风声、雨声、鸟叫声、机器声等。
人们是否都能听到音频信号,这主要取决于各个人的年龄和耳朵的特性。一般来说,人的听觉器官能感知的声音频率大约在20~20000 Hz之间,在这种频率范围里感知的声音幅度大约在0~120 dB之间。除此之外,人的听觉器官对声音的感知还有一些重要特性,这些特性将在第9章中介绍,它们在声音数据压缩中已经得到广泛的应用。
2.2 声音信号数字化
2.2.1 从模拟过渡到数字回顾历史,大多数电信号的处理一直是用模拟元部件(如晶体管、变压器、电阻、电容等)对模拟信号进行处理。但是,开发一个具有相当精度、且几乎不受环境变化影响的模拟信号处理元部件是相当困难的,而且成本也很高。
如果把模拟信号转变成数字信号,用数字来表示模拟量,对数字信号做计算,那末难点就发生了转移,把开发模拟运算部件的问题转变成开发数字运算部件的问题,这就出现了数字信号处理器(digital signal processor,DSP)。DSP与通用微处理器相比,除了它们的结构不同外,其基本差别是,DSP有能力响应和处理采样模拟信号得到的数据流,如做乘法和累加求和运算。
在数字域而不在模拟域中做信号处理的主要优点是:首先,数字信号计算是一种精确的运算方法,它不受时间和环境变化的影响;其次,表示部件功能的数学运算不是物理上实现的功能部件,而是仅用数学运算去模拟,其中的数学运算也相对容易实现;此外,可以对数字运算部件进行编程,如欲改变算法或改变某些功能,还可对数字部件进行再编程。
2.2.2 模拟信号与数字信号话音信号是典型的连续信号,不仅在时间上是连续的,而且在幅度上也是连续的。在时间上“连续”是指在一个指定的时间范围里声音信号的幅值有无穷多个,在幅度上“连续”是指幅度的数值有无穷多个。我们把在时间和幅度上都是连续的信号称为模拟信号。
在某些特定的时刻对这种模拟信号进行测量叫做采样(sampling),由这些特定时刻采样得到的信号称为离散时间信号。采样得到的幅值是无穷多个实数值中的一个,因此幅度还是连续的。如果把信号幅度取值的数目加以限定,这种由有限个数值组成的信号就称为离散幅度信号。例如,假设输入电压的范围是0.0V~0.7V,并假设它的取值只限定在0、0.1、0.2,…,0.7共8个值。如果采样得到的幅度值是0.123V,它的取值就应算作0.1V,如果采样得到的幅度值是0.26V,它的取值就算作0.3,这种数值就称为离散数值。我们把时间和幅度都用离散的数字表示的信号就称为数字信号。
2.2.3 声音信号数字化声音进入计算机的第一步就是数字化,数字化实际上就是采样和量化。如前所述,连续时间的离散化通过采样来实现,就是每隔相等的一小段时间采样一次,这种采样称为均匀采样(uniform sampling);连续幅度的离散化通过量化(quantization)来实现,就是把信号的强度划分成一小段一小段,如果幅度的划分是等间隔的,就称为线性量化,否则就称为非线性量化。图2–02表示了声音数字化的概念。

图2-02 声音的采样和量化
声音数字化需要回答两个问题:①每秒钟需要采集多少个声音样本,也就是采样频率(fs)是多少,②每个声音样本的位数(bit per sample,bps)应该是多少,也就是量化精度。
2.2.4 采样频率采样频率的高低是根据奈奎斯特理论(Nyquist theory)和声音信号本身的最高频率决定的。奈奎斯特理论指出,采样频率不应低于声音信号最高频率的两倍,这样就能把以数字表达的声音还原成原来的声音,这叫做无损数字化(lossless digitization)。采样定律用公式表示为
fs ( 2f 或者 Ts ( T/2
其中f为被采样信号的最高频率。
你可以这样来理解奈奎斯特理论:声音信号可以看成由许许多多正弦波组成的,一个振幅为A、频率为f的正弦波至少需要两个采样样本表示,因此,如果一个信号中的最高频率为,采样频率最低要选择2。例如,电话话音的信号频率约为3.4 kHz,采样频率就选为8 kHz。
2.2.5 采样精度样本大小是用每个声音样本的位数bit/s(即bps)表示的,它反映度量声音波形幅度的精度。例如,每个声音样本用16位(2字节)表示,测得的声音样本值是在0~65536的范围里,它的精度就是输入信号的1/65536。样本位数的大小影响到声音的质量,位数越多,声音的质量越高,而需要的存储空间也越多;位数越少,声音的质量越低,需要的存储空间越少。
采样精度的另一种表示方法是信号噪声比,简称为信噪比(signal-to-noise ratio,SNR),并用下式计算:
SNR= 10 lg [(Vsignal)2 / (Vnoise)2]=20 lg (Vsignal / Vnoise)
其中,Vsignal表示信号电压,Vnoise表示噪声电压;SNR的单位为分贝(db)
例1:假设Vnoise=1,每个声音样本位数用1位表示时,Vsignal=21,它的信噪比SNR=6分贝。
例2:假设Vnoise=1,每个声音样本位数用16位表示时,Vsignal=216,它的信噪比SNR=96分贝。
2.2.6 声音质量与数据率根据声音的频带,通常把声音的质量分成5个等级,由低到高分别是电话(telephone)、调幅(amplitude modulation,AM)广播、调频(frequency modulation,FM)广播、激光唱盘(CD-Audio)和数字录音带(digital audio tape,DAT)的声音。在这5个等级中,使用的采样频率、样本精度、通道数和数据率列于表2–01。
表2–01 声音质量和数据率质量
采样频率
(kHz)
样本精度
(bit/s)
单道声/
立体声
数据率(kB/s)
(未压缩)
频率范围
电话*
8
8
单道声
64.0
200~3 400 Hz
AM
11.025
8
单道声
88.2
20~15 000Hz
FM
22.050
16
立体声
705.6
50~7 000Hz
CD
44.1
16
立体声
1411.2
20~20 000 Hz
DAT
48
16
立体声
1536.0
20~20 000 Hz
* 电话使用(律编码,动态范围为13位,而不是8位(详见第3章)
2.3 声音文件的存储格式如同存储文本文件一样,存储声音数据也需要有存储格式。在因特网上和各种机器上运行的声音文件格式很多,但目前比较流行的有以.wav (waveform),.au(audio),.aiff(Audio Interchangeable File Format)和.snd(sound)为扩展名的文件格式。.wav格式主要用在PC上,.au主要用在Unix工作站上,.aiff和snd主要用在苹果机和美国视算科技有限公司(Silicon Graphics,Inc.,SGI)的工作站上。
用.wav为扩展名的文件格式称为波形文件格式(WAVE File Format),它在多媒体编程接口和数据规范1.0(Multimedia Programming Interface and Data Specifications 1.0)文档中有详细的描述。该文档是由IBM和微软公司于1991年8月联合开发的,它是一种为交换多媒体资源而开发的资源交换文件格式(Resource Interchange File Format,RIFF)。
波形文件格式支持存储各种采样频率和样本精度的声音数据,并支持声音数据的压缩。波形文件有许多不同类型的文件构造块组成,其中最主要的两个文件构造块是Format Chunk(格式块)和Sound Data Chunk(声音数据块)。格式块包含有描述波形的重要参数,例如采样频率和样本精度等,声音数据块则包含有实际的波形声音数据。RIFF中的其他文件块是可选择的。它的简化结构如图2–03所示。

图2–03 WAVE文件结构
如果读者需要非常深入和详细的文件格式的资料,请参看[2]。此外,为便于读者辨认文件的属性,表2–02列出了部分声音文件的后缀。
表2-02 常见的声音文件扩展名文件的扩展名
说明
au
Sun和NeXT公司的声音文件存储格式(8位(律编码或者16位线性编码)
aif(Audio Interchange)
Apple计算机上的声音文件存储格式
cmf(Creative Music Format)
声霸(SB)卡带的MIDI文件存储格式
mct
MIDI文件存储格式
mff(MIDI Files Format)
MIDI文件存储格式?
mid(MIDI)
Windows的MIDI文件存储格式
mp2
MPEG Layer I,II
mp3
MPEG Layer III
mod(Module)
MIDI文件存储格式
rm(RealMedia)
RealNetworks公司的流放式声音文件格式
ra(RealAudio)
RealNetworks公司的流放式声音文件格式
rol
Adlib声音卡文件存储格式
snd(sound)
Apple计算机上的声音文件存储格式
seq
MIDI文件存储格式
sng
MIDI文件存储格式
voc(Creative Voice)
声霸卡存储的声音文件存储格式
wav(Waveform)*
Windows采用的波形声音文件存储格式
wrk
Cakewalk Pro软件采用的MIDI文件存储格式
*支持PCM,ADPCM,(率和A率波形(详见第3章)
2.4 声音工具声音工具(audio tools)用来录放、编辑和分析声音文件。声音工具使用得相等普遍,但它们的功能相差很大。下面列出了比较常见的几种工具。
1,Windows 95/98本身带的“Sound Recorder”
当你在英文版Windows 95/98的界面上单击:
Start→Programs→Accessories→Multimedia/Entertainment→单击Sound Recorder
之后就调出如图2–04所示的窗口。使用它可录音,作简单的声音编辑(如插入、删除等)。

图2–04 Windows的录音器
2,买声音卡时带的工具如果你的计算机安装有声音卡,一般来说都附带有声音工具。例如,声霸(Sound Blaster)卡带有几种声音工具,通常要由用户自己安装。其中,功能比较强的是WaveStudio 4.00的用户界面如图2–05所示。

图2–05 Creative Wave Studio Version 4.00的用户界面
3,网络上下载的工具因特网上有许多站点提供试用的或者是免费的声音工具。图2–06所示的就是从[3]上下载供试用的Cool?Edit工具,它很受声音研究工作者的欢迎。类似的工具还有goldwave公司的声音工具,参见[5]。

图2–06 Cool?Edit 96的用户界面
2.5 声音质量的度量声音质量的评价是一个很困难的问题,目前还在继续研究的课题。前面介绍了用声音信号的带宽来衡量声音的质量,等级由高到低依次是DAT,CD,FM,AM和数字电话。此外,声音质量的度量还有两种基本的方法:一种是客观质量度量,另一种是主观质量度量。评价语音质量时,有时同时采取两种方法评估,有时以主观质量度量为主。
声音客观质量的度量主要用信噪比(signal to niose ratio,SNR),详细计算可参看[1]~[2]。
与用SNR客观质量度量相比较,应该可以说人的感觉(如听觉、视觉等)更具有决定意义,感觉上的、主观上的测试应该成为评价声音质量和图像质量不可缺少的部分。而有的学者则认为,在语音和图像信号编码中使用主观质量度量比使用客观质量度量更加恰当,更有意义。可是一般来说,可靠的主观度量值也是比较难获得的,所获得的值也是一个相对值。
主观度量声音质量的方法类似于电视节目中的歌手比赛,由评委对每个歌手的表现进行评分,然后求出平均值。对声音质量的度量也可以使用类似的方法,召集若干实验者,由他们对声音质量的好坏进行评分,求出平均值作为对声音质量的评价。这种方法称为主观平均判分法,所得的分数称为主观平均(mean opinion score,MOS)分。
现在,对声音主观质量度量比较通用的标准是5分制,各档次的评分标准见表2-03。
表2-03 声音质量评分标准分数
质量级别
失真级别
5
优(Excellent)
无察觉
4
良(Good)
(刚)察觉但不讨厌
3
中(Fair)
(察觉)有点讨厌
2
差(Poor)
讨厌但不反感
1
劣(Bad)
极讨厌(令人反感)
2.6 电子乐器数字接口(MIDI)系统
2.6.1 MIDI简介
MIDI是Musical Instrument Digital Interface的首写字母组合词,可译成“电子乐器数字接口”。用于在音乐合成器(music synthesizers)、乐器(musical instruments)和计算机之间交换音乐信息的一种标准协议。从20世纪80年代初期开始,MIDI已经逐步被音乐家和作曲家广泛接受和使用。MIDI是乐器和计算机使用的标准语言,是一套指令(即命令的约定),它指示乐器即MIDI设备要做什么,怎么做,如演奏音符、加大音量、生成音响效果等。MIDI不是声音信号,在MIDI电缆上传送的不是声音,而是发给MIDI设备或其它装置让它产生声音或执行某个动作的指令。
MIDI标准之所以受到欢迎,主要是它有下列几个优点:生成的文件比较小,因为MIDI文件存储的是命令,而不是声音波形;容易编辑,因为编辑命令比编辑声音波形要容易得多;可以作背景音乐,因为MIDI音乐可以和其它的媒体,如数字电视、图形、动画、话音等一起播放,这样可以加强演示效果。
产生MIDI乐音的方法很多,现在用得较多的方法有两种:一种是(frequency modulation,FM)合成法,另一种是乐音样本合成法,也称为波形表(Wavetable)合成法。这两种方法目前主要用来生成音乐。在介绍MIDI之前先简单介绍FM合成法,然后介绍乐音样本合成法,再介绍MIDI系统。
2.6.2 FM合成声音音乐合成器的先驱Robert Moog采用了模拟电子器件生成了复杂的乐音。20世纪80年代初,美国斯坦福大学(Stanford University)的一名叫John Chowning的研究生发明了一种产生乐音的新方法,这种方法称为数字式频率调制合成法(digital frequency modulation synthesis),简称为FM合成器。他把几种乐音的波形用数字来表达,并且用数字计算机而不是用模拟电子器件把它们组合起来,通过数模转换器(digital to analog convertor,DAC)来生成乐音。斯坦福大学得到了发明专利,并且把专利权授给Yamaha公司,该公司把这种技术做在集成电路芯片里,成了世界市场上的热门产品。FM合成法的发明使合成音乐工业发生了一次革命。
FM合成器生成乐音的基本原理如图2-07所示。它由5个基本模块组成:数字载波器、调制器、声音包络发生器、数字运算器和模数转换器。数字载波器用了3个参数:音调(pitch)、音量(volume)和各种波形(wave);调制器用了6个参数:频率(frequency)、调制深度(depth)、波形的类型(type)、反馈量(feedback)、颤音(vibrato)和音效(effect);乐器声音除了有它自己的波形参数外,还有它自己的比较典型的声音包络线,声音包络发生器用来调制声音的电平,这个过程也称为幅度调制(amplitude modulation),并且作为数字式音量控制旋钮,它的4个参数写成ADSR,这条包络线也称为音量升降维持静音包络线(Attack,decay,sustain,release,ADSR)包络线。

图2-07 FM声音合成器的工作原理在乐音合成器中,数字载波波形和调制波形有很多种,不同型号的FM合成器所选用的波形也不同。图2-08是Yamaha OPL-III数字式FM合成器采用的波形。

图2-08 声音合成器的波形各种不同乐音的产生是通过组合各种波形和各种波形参数并采用各种不同的方法实现的。用什么样的波形作为数字载波波形、用什么样的波形作为调制波形、用什么样的波形参数去组合才能产生所希望的乐音,这就是FM合成器的算法。
通过改变图2-07中所示的参数,可以生成不同的乐音,例如:
改变数字载波频率可以改变乐音的音调,改变它的幅度可以改变它的音量。
改变波形的类型,如用正弦波、半正弦波或其它波形,会影响基本音调的完整性。
快速改变调制波形的频率(即音调周期)可以改变颤音的特性。
改变反馈量,就会改变正常的音调,产生刺耳的声音。
选择的算法不同,载波器和调制器的相互作用也不同,生成的音色也不同。
在多媒体计算机中,图2-07中的13个声音参数和算法共14个控制参数以字节的形式存储在声音卡的ROM中。播放某种乐音时,计算机就发送一个信号,这个信号被转换成ROM的地址,从该地址中取出的数据就是用于产生乐音的数据。FM合成器利用这些数据产生的乐音是否真实,它的真实程度有多高,这就取决于可用的波形源的数目、算法和波形的类型。
2.6.3 乐音样本合成声音使用FM合成法来产生各种逼真的乐音是相当困难的,有些乐音几乎不能产生,因此很自然地就转向乐音样本合成法。这种方法就是把真实乐器发出的声音以数字的形式记录下来,播放时改变播放速度,从而改变音调周期,生成各种音阶的音符。
乐音样本的采集相对比较直观。音乐家在真实乐器上演奏不同的音符,选择44.1 kHz的采样频率、16位的乐音样本,这相当于CD-DA的质量,把不同音符的真实声音记录下来,这就完成了乐音样本的采集。
乐音样本通常放在ROM芯片上,ROM是超大规模集成电路(very large scale integrated,VLSI)芯片。使用乐音样本合成器的原理框图如图2-09所示。

图2-09 乐音样本合成器的工作原理乐音样本合成器所需要的输入控制参数比较少,可控的数字音效也不多,大多数采用这种合成方法的声音设备都可以控制声音包络的ADSR参数,产生的声音质量比FM合成方法产生的声音质量要高。
2.6.4 电子乐器数字接口(MIDI)系统
MIDI协议提供了一种标准的和有效的方法,用来把演奏信息转换成电子数据。MIDI信息是以“MIDI messages”传输的,它可以被认为是告诉音乐合成器(music synthesizer)如何演奏一小段音乐的一种指令,而合成器把接收到的MIDI数据转换成声音。国际MIDI协会(International MIDI Association)出版的MIDI 1.0规范对MIDI协议作了完整的说明。
MIDI数据流是单向异步的数据位流(bit stream),其速率为31.25 kbps,每个字节为10位(1位开始位,8位数据位和1位停止位)。MIDI乐器上的MIDI接口通常包含3种不同的MIDI连接器,用IN(输入),OUT(输出)和THRU(穿越)。MIDI数据流通常由MIDI控制器(MIDI controller)产生,如乐器键盘(musical instrument keyboard),或者由MIDI音序器(MIDI sequencer)产生。MIDI控制器是当作乐器使用的一种设备,在播放时把演奏转换成实时的MIDI数据流,MIDI音序器是一种装置,允许MIDI数据被捕获、存储、编辑、组合和重奏。来自MIDI控制器或者音序器的MIDI数据输出通过该装置的MIDI OUT连接器传输。
通常,MIDI数据流的接收设备是MIDI声音发生器(MIDI sound generator)或者MIDI声音模块(MIDI sound module),它们在MIDI IN端口接收MIDI信息(MIDI messages),然后播放声音。图2-10表示的是一个简单的MIDI系统,它由一个MIDI键盘控制器和一个MIDI声音模块组成。许多MIDI键盘乐器在其内部既包含键盘控制器,又包含MIDI声音模块功能。在这些单元中,键盘控制器和声音模块之间已经有内部链接,这个链接可以通过该设备中的控制功能(local control)对链接打开(ON)或者关闭(OFF)。

图2-10 简单的MIDI系统单个物理MIDI通道(MIDI channel)分成16个逻辑通道,每个逻辑通道可指定一种乐器,如图2-11所示。在MIDI信息(MIDI messages)中,用4个二进制位来表示这16个逻辑通道。音乐键盘可设置在这16个通道之中的任何一个,而MIDI声源或者声音模块可被设置在指定的MIDI通道上接收。

图211 MIDI的通道概念[4]
在一个MIDI设备上的MIDI IN连接器接收到的信息可通过MIDI THRU连接器输出到另一个MIDI设备,并可以菊花链的方式连接多个MIDI设备,这样就组成了一个复杂的MIDI系统,如图2-12所示。在这个例子中,MIDI键盘控制器对MIDI音序器(MIDI sequencer)来说是一个输入设备,而音序器的MIDI OUT端口连接了几个声音模块。作曲家可使用这样的系统来创作几种不同乐音组成的曲子,每次在键盘上演奏单独的曲子。这些单独曲子由音序器记录下来,然后音序器通过几个声音模块一起播放。每一曲子在不同的MIDI通道上播放,而声音模块可分别设置成接收不同的曲子。例如,声音模块#1可设置成播放钢琴声并在通道1接收信息,模块2设置成播放低音并在通道5接收信息,而模块2设置成播放鼓乐器并在通道10上接收消息等。在图2-12中使用了多个声音模块同时分别播放不同的声音信息。这些模块也可以做在一起构成一个叫做多音色(multitimbral)的声音模块,它同样可以起到同时接收和播放多种声音的作用。

图2-12 复杂MIDI系统[4]
图2-13是用PC机构造的MIDI系统,该系统使用的声音模块就是这样一种单独的多音色声音模块。在这个系统中,PC机使用内置的MIDI接口卡,用来把MIDI数据发送到外部的多音色MIDI合成器模块。像多媒体演示程序、教育软件或者游戏等应用软件,它们把信息通过PC总线发送到MIDI接口卡。MIDI接口卡把信息转换成MIDI消息(MIDI messages),然后送到多音色声音模块同时播放出许多不同的乐音,例如钢琴声、低音和鼓声。使用安装在PC机上的高级的MIDI音序器软件,用户可把MIDI键盘控制器(MIDI keyboard controller)连接到MIDI接口卡的MIDI IN端口,也可以有相同的音乐创作功能。

图2-13 使用PC机构成的MIDI系统[4]
使用PC机构造MIDI系统可以有不同的方案。例如,可把MIDI接口和MIDI声音模块组合在PC添加卡上。多媒体个人计算机MPC(Multimedia PC)规范就要求PC添加卡上必须有这样的声音模块,称为合成器(synthesizer)。通过已有的电子波形来产生声音的合成器称为FM合成器(FM synthesis),而通过存储的乐音样本来产生声音的合成器称为波表合成器(wave table synthesis)。
MPC(Multimedia PC)规格需要声音卡的合成器是多音色(muti-timbral)和多音调(polyphonic)的合成器。多音色是指合成器能够同时播放几种不同乐器的声音,在英文文献里常看到用voices和patches来表示,音色就是把一个人说话(或一种乐器)的声音与另一个人说话(或另一种乐器)的声音区分开来的音品;多音调是指合成器一次能够播放的音符(note)数。MPC规格定义了两种音乐合成器:基本合成器(Base-level synthesizer)和扩展合成器(Extended synthesizer),基本合成器和扩展合成器之间的差别如表01所示。
表2-04 基本合成器和扩展合成器之间的差别合成器名称
旋律乐器声
(melodic instruments)
打击乐器声
(percussive instruments)
(synthesizer)
音色数
(timbres)
音调数
(polyphony)
音色数
(timbres)
音调数
(polyphony)
基本合成器
3种音色
6个音符
3种音色
3个音符
扩展合成器
9种音色
16个音符
8种音色
16个音符
基本合成器必须具有同时播放3种旋律音色和3种打击音色(鼓乐)的能力,而且还必须具有同时播放6个旋律音符和3个打击音符的能力,因此,基本合成器具有9种音调;扩展合成器要能够同时播放9种旋律音色和8种打击音色。
2.6.5 MIDI消息
MIDI设备使用的一系列MIDI音符,可被认为是告诉音乐合成器如何播放一小段音乐的指令。因为MIDI数据是一套音乐符号的定义,而不是实际的音乐声音,因此MIDI文件的内容被称为MIDI消息(MIDI messages)。一个MIDI消息由1个8位的状态字节并通常跟着2个数据字节组成。在状态字节中,最高有效位设置成“1”,低4位用来表示这个MIDI消息是属于哪个通道,4位可表示16个可能的通道,其余3位的设置表示这个MIDI消息是什么类型的消息。MIDI消息可分成通道消息(Channel Messages)和系统消息(System Messages)两大类,如图12-14所示。
MIDI通道消息可分成通道声源消息(Voice Messages)—携带的演奏数据,和通道方式消息(Mode Messages)—表示合成器响应MIDI数据的方式;MIDI系统消息分成公共消息(Common Messages)—标识在系统中的所有接收器、实时消息(Real Time Messages)—用于MIDI部件之间的同步和独占消息(Exclusive Messages)—厂商的标识代码。

图12-14 MIDI信息
2.6.6 MIDI音序器和标准MIDI文件
MIDI合成器实时接收和处理MIDI消息(MIDI messages)。当合成器接收到一个“note on (乐音开)”MIDI消息时就演奏相应的声音,当接收到一个“note off (乐音关)”MIDI消息时就停止演奏。如果MIDI数据源是乐器键盘,“note on”消息就实时产生,在像这样的实时应用中,就无需与MIDI消息一起发送一个定时信息。如果MIDI数据存储成数据文件,或者使用音序器编辑的数据文件,MIDI消息就需要某种形式的定时标记(time-stamping)。
国际MIDI协会(International MIDI Association)出版了标准MIDI文件(Standard MIDI Files)规范,该标准说明了处理定时标记MIDI数据的一种标准化方法。这种方法适合各种应用软件共享MIDI数据文件,这些软件包括音序器、乐谱软件包和多媒体演示软件。
标准MIDI文件(Standard MIDI File)规范定义了3种MIDI文件格式,MIDI音序器能够管理文件标准规定的多个MIDI数据流,即声轨(tracks)。MIDI文件格式0(Format 0)规定所有MIDI音序数据(MIDI sequence data)必须存储在单个声轨上,它仅用于简单的单声轨设备;MIDI文件格式1(Format 1)规定数据以一个声轨集的方式存储;MIDI文件格式2(Format 2)可用几个独立模式存储数据。
2.6.7 合成器的多音调和多音色合成器或者声音发生器的多音调(polyphony)是一次演奏多个音符(note)的能力。大多数早期的音乐合成器是单音调的,即一次仅演奏一个音符。如果在装配有单音调合成器(monophonic synthesizer)的键盘上同时按下5个键,只能听到一个音符的声音;如果在装配有能支持4个音调的合成器的键盘上同时按下5个键,可产生4个音符的声音。许多现代的声音模块有16,24或者32个音符的复调音。
合成器或者声音发生器能够产生的不同声音一般用配音(patche)、指令(program)、算法(algorithm)、声音(sound)或者音色(timbre)来表示。现代合成器通常使用指令号(program number)来表示它们产生的不同声音。使用指令号(program number)或者配音号(patch number)来指定想要获得的声音(sound)。例如,一个声音模块可使用配音#1(patch number 1)来产生钢琴声,配音#36(patch number 36)产生低音弦乐器声。配音号和声音之间的对关系称为配音映射(patch map)。一个MIDI Program Change(MIDI指令变化)消息可用来告诉在给定通道上正在接收消息的设备要使用新的乐器声。例如,使用指令号36的数据字节(见附录1:General MIDI program number)并通过发送一个MIDI Program Change消息,音序器可在通道4上设置演奏低音弦乐器声(fretless bass sounds)。
如果一个合成器或者声音发生器能够同时产生2个或者2个以上的不同乐音,就说这个合成器或者声音发生器是多音色(multi-timbral)的。例如,如果一个合成器能够同时演奏5个音调(notes),就说它是多音调的(polyphonic);如果一个合成器也能够同时产生钢琴声(piano sound)和低音(bass sound),就说它是一个多音色(multi-timbral)合成器。如果有24个音调(同时播放24个音符)并且是6种音色(同时产生6 种不同音色)的一种合成器或者声音模块,它可合成6种管弦乐队的声音。音序器可把钢琴部分的MIDI消息发送给通道1,低音部分的MIDI消息发送给通道2,萨克斯管部分的MIDI消息发送给通道3,鼓声部分的MIDI消息发送给通道10,等。一个多音色合成器(multi-timbral synthesizer)的多音调(polyphony)通常是动态分配的。在上面的例子中,例如5种声源可用于钢琴,2个声源用于低音,一个用于萨克斯管,6个声源用于鼓乐,剩下10没有使用。
2.6.8 通用MIDI(GM)
通用MIDI规范(General MIDI Specification)是由国际MIDI协会(International MIDI Association)颁布的,用于通用MIDI乐器(General MIDI Instruments)。该规范包括通用MIDI声音集(General MIDI Sound Set)即配音映射(patch map)、通用MIDI打击乐音集(General MIDI Percussion Set)即打击乐音与音符号之间的映射、以及一套通用MIDI演奏(General MIDI Performance)能力,包括声音数目和MIDI消息类型等。
通用MIDI系统规定MIDI通道1~9和11~16用于旋律乐器声,而通道10用于以键盘为基础的打击乐器声。
练习与思考题音频信号的频率范围大约多少?话音信号频率范围大约多少?
什么叫做模拟信号?什么叫做数字信号?
什么叫做采样?什么叫做量化?什么叫做线性量化?什么叫做非线性量化?
采样频率根据什么原则来确定?
样本精度为8位的信噪比等于多少分贝?
声音有哪几种等级?它们的频率范围分别是什么?
选择采样频率为22.050 kHz和样本精度为16位的录音参数。在不采用压缩技术的情况下,计算录制2分钟的立体声需要多少MB(兆字节)的存储空间(1MB=1024×1024B)
什么叫做MIDI?它有什么特点?
用自己的语言说明FM合成声音和乐音样本合成声音的思想。
参考文献和站点林福宗,陆 达 编著,多媒体与CD-ROM,北京:清华大学出版社,1995.3,171-173
各种文件存储格式:http://www.wotsit.org/(浏览日期:1999年1月30日)
http://www.syntrillium.com/(浏览日期:1999年1月31日)
http://midiworld.com/basics.htm(浏览日期:1999年9月30日)
http://www.goldwave.com/(浏览日期:1999年1月31日)