专利名称:用多重选择的外部指定改变音质的电子乐器的制作方法
技术领域:
本发明涉及具有能发送和接收用于音乐操作的各种音乐数据的MIDI接口的电子乐器。更具体说,本发明涉及能根据外部控制信息改变音质的电子乐器。
日本已公开专利申请No.59-197090揭示了一种能将外部提供的音调控制信息变换为有效控制由内部音调发生器产生的音调特性的内部音调控制数据的电子乐器。更具体地说,所公开的电子乐器当其接受不能被产生的音色名称时,即用另一音色替代该选定音色来操作以便产生乐音(musical tones)。然而,在不同种类的乐器音色中,有能用另一音色容易地加以替代的简单音色以及不适于被替代的执拗音色。不过传统电子乐器仍在不切实考虑的情况下自动地用能发出的音色替代一不能发出的音色。
为了在不同模型(models)的电子乐器中共用音乐数据,人们期望用一完全相同的音色码把一个公共音色赋予不同模型。然而,每个模型具有带个别性能的单独音调产生机构,因此每个模型可有一独特的音色。此外就共有音色而言,一个高性能的模型可安装一个共有音色的多个变型。应用时,一种具有少量音色种类的简单模型用于重放原本为有大量音色种类的复杂模型准备的音乐数据。既然这样,该简单模型可不设置相应音色。若一个缺掉的音色由选自变音的替换音色来代替,则实际上没有问题。但是,若替代是独特音色,则该乐器产生不协调乐音从而妨碍了音乐数据的重放。再者,甚至在变音方面,一个不顾设置各模型音色的简单替换也可能导致这些音色的相当一致的变化。
鉴于以上指出的先有技术的种种缺陷,本发明的一个目的是在用一现存音色替代缺少的音色时确保一致性和选择性。
根据本发明的第一方面的电子乐器包括设有多个音色,用于产生有一选自已设置音色中的一个音色的乐音音调发生装置;接收装置,用于接收选定一所需音色的音色标示信息;检验装置,用于核对该所需音色是否存在于设置的音色中;当存在所需音色时起作用的更换装置,用于从所设置音色中选择音色以使乐音变为所需音色;以及当缺少所需音色时有效的不变更装置,用于从已设置音色中选择一个早先被选定和确认存在的替代音色以在该替代音色下产生乐音。
根据本发明第二方面的电子乐器包括设有多个音色的音调发生装置,用以产生具有选自设有音色的一个音色的乐音;接收装置,用于接收指定至少第一选择和第二选择所需音色的音色标示信息;以及选择装置,当设有的音色中存在第二选择时有效地用于选择使得在第二选择所需音色下产生乐音的音色;和另一方面当设有的音色中缺少第二选择时有效地用于从设有的音色中选择第一选择音色以替代第二选择,从而在第一选择的另一所需音色下产生乐音。
根据本发明第三方面,由多种电子乐器组成的一个系统,其中每个电子乐器包括设有多个音色的音调发生装置,用于产生具有选自设有的音色中的一个音色的乐音,其中一种电子乐器还包括发送装置,用于发送指定所需音色接连的音色标示信息和指定代替所需音色的替换音色的领先的音色标示信息,其中另一种电子乐器还包括用于连续接收领先的音色标示信息和接连的音色标示信息的接收装置,和当设置音色中缺少所需音色时有效的选择装置,用于从设置音色中选择替换音色致使能在替换音色下产生乐音。
图1是表示按本发明一种电子乐器的一个实施例的总方块图2是表示包含在图1实施例中的一种有效电路的方块图;图3是由本发明电子乐器所执行的一个主程序的流程图;图4是表示MIDI接口过程的一个程序流程图;图5是表示效果处理的一个程序流程图;图6是表示干燥度(dry level)设定处理的一个程序流程图;图7是表示一个混响调节过程的程序流程图;图8是表示一个专用处理程序的流程图;图9是表示一个存储体(bank)选择处理的程序流程图;图10是表示节目变更过程的程序流程图;图11是表示一个颤音处理程序的流程图;图12是表示音符事件(note event)处理程序的流程图;图13是表示一个音调发生过程的流程图;图14是一张音色表的简要示意图,该表列出了设置在该电子乐器实施例中的音色。
图15是表示音色标示信息发送过程的程序流程图;此后将结合附图描述本发明的诸实施例。图1示出按本发明一个实施例的电子乐器的结构方块图。该电子乐器包括MIDI接口1,CPU(中央处理单元)2,ROM(只读存储器)3,RAM(随机存取存贮器)4,操作面板5,乐音合成电路6,效果电路7,声音系统8和总线9。MIDI接口1根据MIDI(乐器数字接口)标准工作以实现弹奏信息同外部MIDI仪器的通信。CPU2控制该电子乐器的全部操作。ROM3贮存由CPU2执行的程序和各种控制数据。RAM4设有诸如寄存器和标记之类的工作区。操作面板5包括由用户致动的手动部件。乐音合成电路6根据来自CPU2的命令产生乐音信号。效果电路7接收从乐音合成电路6馈送的原始音调的乐音信号,并给原始音调赋予各种不同效果。声音系统8根据从效果电路7送来并经其改进的乐音信号发出音乐声。总线9对上面提过的各部件进行双向地彼此连接。
图2示出该效果电路7的方块结构。在本实施例中,效果电路7包括混响电路11,颤音电路12,合唱电路13,乘法器21-24和加法器31-34。诸如混响电路11和颤音电路12之类的这些电路起到特殊效果并通常称其为″效果应用电路″。效果电路7是对每一MIDI通道单独设置的。不然可利用分时型而共用该效果电路。原始音调的乐音信号从乐音合成电路6被并行地输入到四个乘法器21-24,在那里将乐音信号乘以给定倍增系数。乘法器21是为调节所保留的无这些效果的原始音调(干调(dry tone))的音调控制电位器的电平而提供的。乘法器22是为调节由混响电路11给予一种混响效果的效果音调的音调控制电位器电平而设置的。乘法器23是为调节由颤音电路12给予颤音效果的另一效果音调的音调控制电位器电平而设置的。乘法器24是为调节由合唱电路13给予合唱效果的又一效果音调的音调控制电位器电平而设置。加法器31-34将干调同被调节到各自音调控制电位器电平的若干效果音调彼此相加,以输出一连同这些效果施加到声音系统8的最后乐音信号。
接着给出对电子乐器本实施例的基本操作的一般说明。本乐器通过MIDI接口1接收外部的演奏信息。接收到的演奏信息被存入一给定的MIDI缓冲器。CPU2扫描MIDI缓冲器并当MIDI缓冲器中存在事件数据时即按该数据执行一请求处理。例如,若乐器接收含有音调节距(tone pitch)数据和键-开/键-关数据的音符数据,则CPU2一旦将该音符数据写入音符缓冲器,便将一命令送至乐音合成电路6以产生对应于该音符数据的乐音信号。乐音合成电路6根据来自CPU2的命令产生乐音信号。
此外,电子乐器从外部通过MIDI接口1发送诸如音色标示信息之类的演奏信息。在传送该音色标示信息中,接收该音色标示信息的另一电子乐器可能不具有由该音色标示信息指定的完全相同的音色。在处理这种情况时,该发送的电子乐器假定发送指定一般音色的一般音色标示信息,并接着发送指定一目标专用音色的专用音色标示信息。由于这样,若接收电子乐器没有专用音色,则用一般音色来替代该专用音色以便能成功地产生一乐音信号。
另外,该乐器被外部供以效果数据,这些数据可确定各乘法器21-24的倍增系数,即,干音和效果音的音调控制电位器的电平。即,当接收到效果数据时,CPU2根据该效果数据调节效果电路7中的干音和效果音的音调控制电位器电平。这样,外部提供的该效果数据可包括未在该电子乐器中设置的效果种类。例如,参照图2,另一外部电子乐器除通常的效果应用电路11-13和相关的乘法器21-24和加法器31-34外,还可附加诸如音节栓电路41和相位器(phaser)电路42和相关乘法器51和52以及加法器61和62之类的效果应用电路。这样,在包含音节栓和相位器效果音的条件下,该外部电子乐器用公式来表示附加地确定音节栓和相位器效果音调的音调控制电位器电平和确定干音的音调控制电位器电平的效果数据。该效果数据包括音节栓和相位器的音调控制电位器电平调节数据,并由实际上没有音节栓电路和相位器电路的本实施例的电子乐器接收。若接收乐器使用按原样接收到的效果数据来调节干音和效果电路7中的效果音的音调控制电位器电平,则由于干音的音调控制电位器电平变得极小故可能妨碍了总体效果的平衡。鉴于这一缘故,本电子乐器在接收包含不是自已的音节栓和相位器的音调控制电位器电平设定数据在效果数据时,对效果平衡进行如下校正调定(adjnstive setting)。
(1)接收″BnH+5AH+Vd″的效果数据上述代码″BnH″表示命令CPU根据接着的第二字节数据去控制电子乐器的控制改变。代码BnH中的n设为0至F,以指定一个MIDI的声道号。符号H表示十六进制的记谱法。借助这一方式,可将效果数据指定给每一MIDI声道。虽未特别提及,但对每一MIDI声道均设置有各种寄存器。下一代码″5AH″表示呈现值为Vd的干发送电平(dry sendinglevel)的连续数据。该干发送电平有一缺省值(default value)7FH。此外,干发送电平值的范围设为从OOH至7FH。当接收到数据5AH+Vd时,CPU2根据那时刻设定的效果音的其他电平校正该干发送电平Vd,然后CPU2根据该校正结果设定干音调的音调控制电位器的电平。详细地说,将原始干发送电平Vd同混响,颤音,合唱,音节栓和相位器中的缺少的效果种类,例如,本实施例中的音节栓和相位器的发送电平相加。也就是说,根据下列公式计算干发送电平的总和值。
L=20·log{(Vd4+∑Ve4/16)1/2/1272}…(1)式中Ve代表该乐器没有能力实现的那种效果的发送电平。在该公式中,L代表以分贝(dB)为单位的总计干音调控制电位器的电平,以及∑Ve4代表缺少的效果种类的发送电平四次方之和。该干音调电平L被发送到效果电路7以设定乘法器21的倍增系数。在总计音量(tonevolume)超过0dB的情况下,有效音量限于0dB。此外,在(Vd4+∑Ve4/16)=0的情况下,有效音量被设定为L=-∞(零音量)。在干发送电平的动态范围下限以下的音量由该下限替代。
(2)接收效果数据″BnH+5BH+V″代码″5BH″表示代表混响的发送电平V的后继数据。当接收到该效果数据时,CPU2根据下列公式计算混响电平LL=20·log(V2/1272)…(2)算出的混响电平L被送到效果电路7,在那里根据此值设定乘法器22的倍增系数。(3)如果不是混响,而是颤音,合唱,音节栓和相位器象混响一样按公式(2)计算音量电平。在这类情况下,代码″5BH″由5CH,5DH,5EH或5FH来替代。但在情况(2)和(3)中,若乐器接收一种对应于缺席效果种类的效果数据,则直接保留该接收到的效果发送电平V供作为情况(1)计算中Ve使用而不调整效果电路。此外,在情况(2)和(3)中,若V=0则设定L=∞(零音量)。如此调谐每种效果的回音(return tone)的音量电平以便设定当发送电平达到最大值时相对干音调约为-12dB的响度。小于发送值动态范围的下限值的音量由下限替代。该效果的发送电平V的缺陷值对混响设定为40H而对剩下的效果种类设为OOH。
下面结合图3-15流程图详细说明本实施例电子乐器的操作。首先,图3表示该电子乐器的主程序。当接通该乐器电源时,在第一步S1实现初始化。接着,在步骤S2完成MIDI的接口处理。在步骤S3实现音调发生过程。在步骤S4,实现面板处理。在步骤S5实现其他处理。此后,该程序回到步骤S2,从由此重复随后诸过程。
图4示出在图3步骤S2所执行的MIDI接口处理的一个子程序。首先,由于接收数据曾存贮在MIDI缓冲器中故在步骤S11扫描MIDI缓冲器。在步骤S12作有关MIDI缓冲器是否存贮了一事件数据的检验。若未存贮该事件数据,则该程序进到步骤S15的数据传输过程以及随后的步骤,若在步骤S12确认该事件数据被存入MIDI缓冲器,则步骤S13保证按该事件数据进行将如图5及后续附图所示的各种各样的事件处理。在执行了事件处理之后,在步骤S14从MIDI缓冲器擦除该已处理的事件数据,从而程序回到步骤S11。只要事件数据仍留在MIDI缓冲器中,就要重复执行步骤S11-S14的循环。
在步骤S15,一旦待发送数据存入MIDI传输缓冲器中,便扫描MIDI传输缓冲器。在步骤S16检查有关MIDI传输缓冲器是否存有待发送事件数据。若存有事件数据,步骤S17则保证借助图1所示MIDI接口1发送被扫描的事件数据。在事件数据传送之后,步骤S18承担从MIDI传输缓冲器删除或清除被发送的事件的数据,从而程序回到步骤S15。只要MIDI传输缓冲器中仍有事件数据,便要重复执行步骤S15-S18的循环。若步骤S16判定没有待发送事件数据,则该程序返回。
图5示出在图4步骤S13所调用的效果处理子程序。在该程序中,对每一MIDI声道分开进行效果处理。首先,在步骤S21作有关存入MIDI缓冲器中的效果数据是否指示如情况(1)中的干电平要进行调整的检查。若该数据表明要对干电平进行调整,则步骤S22承担执行干电平调整处理,从而返回。若在步骤S21判定该数据未指明干电平调整,则步骤S23承担作有关效果数据是否指示对混响电平进行如情况(2)中的调整的检查。若该数据表明对混响电平进行调整,则在步骤S24实现混响调整处理,从而返回。若在步骤S23判定该数据未指示混响电平的调整,则步骤S25承担有关效果数据是否指示颤音电平调整的检查。若该数据指示颤音电平调整,则在步骤S26进行颤音调整处理,从而返回。若步骤S25判定效果数据未指示颤音电平调整,则步骤S27承担有关效果数据是否指示合唱电平调整的检查。若该数据指示合唱电平调整,则在步骤S28承担合唱调整处理,从而返回。若步骤S27判定效果数据未指示合唱电平调整,则步骤S29承担有关效果数据是否指示音节栓电平调整。若数据指示音节栓电平调整,则在步骤S30承担音节栓调整处理,从而返回。若步骤S29判定数据未指示音节栓电平调整,则步骤S31承担有关效果数据是否指示相位器电平调整的检查。若数据指示相位器电平调整,则在步骤S32实现相位器调整过程,从而返回。若步骤S31判定数据未指示相位器电平调整,则在步骤S33执行其他效果处理,从而返回。
图6示出在图5的步骤S22所执行的干电平调整处理的子程序。首先在步骤S41作为有关混响,颤音,合唱,音节栓和相位器中的哪一个被装入内部效果电路7的检查。接着,步骤S42承担将接收的干发送电平数据置入寄存器Vd。此外,步骤S43承担将缺少的效果种类电平数据置入寄存器Vei。在本实施例中,未设置音节栓和相位器,因此,当前音节栓电平设置在寄存器Ve1中而相位器电平设置在寄存器Ve2中。接着,步骤S44承担计算L=20.1og{(vd4+∑Vei4/16)/1272},该式如情况(1)中公式(1)所示。在本实施例中,∑Vei4项由Ve14+VeZ4代表。若总音量超过OdB,则该合成电平设为OdB,接着,步骤S45承担将计算出的干电平L馈送到效果电路7的任务。由此,根据干电平L设定乘法器21的倍增系数。在步骤S45之后该程序返回。
图7示出在图5的步骤S24所执行的混响调整处理的子程序。首先,步骤S51承担将混响发送电平的接收数据置入寄存器V。接着,步骤S52承担将发送电平V作为混响电平存入寄存器。若内部效果电路中未设有混响,则被存储混响电平可用于图6步骤S43中对缺少的效果种类进行计算。接着,步骤S53承担有关混响是否装入内部效果电路7的检查。若未装混响,程序直接返回。若装有混响,步骤S54承担计算L=20·log(V2/1272),该式如情况(2)所用公式(2)所示。于是,在步骤S55,计算结果L作为混响电平馈入效果电路7。步骤S55后程序返回。
对图5的步骤S26的颤音调整处理步骤S28的合唱调整处理,步骤S30的音节栓调整处理和步骤S32的相位器调整处理来说,进行如图7混响调整处理类似的子程序。也就是说,接收到的每个效果种类电平被置于寄存器V和另一独立寄存器中。此外,对有关每种效果是否被设置进行检查。若已设置,则如步骤S54那样用公式(2)计算电平L。算得结果作为效果电平馈送至效果电路7。本实施例未装音节栓和相位器,因此,在步骤S30的音节栓调整过程和步骤S32的相位器调整过程中实际上未执行步骤S54和S55的计算和馈送过程。
接着,结合图8-12详细说明图4的步骤S13所调用的剩余过程的子程序。首先,简要说明一下用于以下处理程序中的各种寄存器,(1)BSL[i]用于存储对每个MIDI声道所设置的存储体选择器的LSB的寄存器,其中,自变数i表示相应MIDI声道。(2)BSM[i]用于存储对每个MIDI声道设置的存储体选择器的MSB的寄存器,其中自变数i表示相应MIDI声道(3)KC用于存储键代码的存储器(4)KEV用于存储键事件种类,即健-通(on)或健-断(off)的寄存器(5)KV用于存储键速度的寄存器(6)LSD[i]用于暂存为每个MIDI声道设置的存储体选择器的LSB的寄存器,其中自变数i表示相应MIDI声道(7)M用于存储主调谐数据寄存器(8)MCH用于存储MIDI声道号的寄存器(9)MSD[i]用于暂存每个MIDI声道设置的存储体选择器的MSB的寄存器,其中自变数i代表相应MIDI声道(10)mtun用于存储主调谐的最终计算值的寄存器(11)mvol用于存储主音量的最终计算值的寄存器(12)PC[i]用于存储每个MIDI声道处的程序变化代码的寄存器,其中自变数i表示相应MIDI声道(13)PD[i]用于暂存每个MIDI声道处程序变化代码的寄存器,其中自变数i表示相应MIDI声道(14)TCH用于存储产生声道号的空闲音调寄存器(15)VD[i]用于暂存每个MIDI声道的颤音数据的寄存器,其中自变量;代表相应MIDI声道(16)VDE用于存储每个声道的颤音数据的最终计算值的寄存器(17)VMin用于存储每个音色的颤音的最小调制深度的寄存器(18)VSens用于存储每个音色的颤音灵敏度的寄存器(19)LBSL[i]用于寄存当存储体选择器的MSB置于00H时每个MIDI声道的存储体选择器的最后能(last able)LSB的寄存器,其中,自变数i表示相应MIDI声道(20)LPC[i]用于当存储体选择器的MSB置于7FH时寄存程序变化的最后能代码的寄存器,其中自变数i表示相应MIDI声道(21)USER当旋律音色(melody timbre)设定在除MSB=00H以外时所用的标记,用于指示旋律音色是否设置在乐器内。这类寄存器通过初始化被置零。
图8示出在图4步骤S13所调用的一种专用处理的子程序。该专用处理程序是在MIDI接口处接收到专用信息时执行。首先,在步骤S61作有关MIDI缓冲器中的专用数据是否指示主调谐的调整的检查。若数据指示主调谐,则在步骤S62将主调谐的接收数据设定于寄存器M中。该数据范围为OOH到FFH,同时缺席值设定为7FH。接着,步骤S63承担根据寄存器M的贮存值对主调谐的最后值mtun的计算。当寄存器M的数据为OOH时,mtun取″-100″值, 当寄存器M的数据为7FH时取大约″+100″的值。mtun的该值被看作这样一个森特值,以便于在围绕标准节距的上半音和下半音范围内执行主调谐的调整。此外,在步骤S64,将寄存器mtun的值馈送至乐音合成电路。此后,程序返回到图4的步骤S14。当接收到mtun值时,乐音合成电路可改变主调谐,或另一方面当产生在接收mtun之后允许的新近第一音调时可改变主调谐。若步骤S61判定该专用数据未指示主调谐的调整,则在步骤S65作有关该专用数据是否指示调整主音量的检查。若该数据指示对主音量进行调整,则在步骤S66将接收的主音量数据设定在寄存器mvol中。该数据范围从OOH至7FH。接着,在步骤S67将mvol寄存器的值输出至乐音合成电路。每个声道的音量在乐音合成电路接收主音量数据时被即时改变因为必须对该数据加以实时处理。此后,程序回到图4的步骤S14。
在步骤S65若判定专用数据指示不调整主音量,则由步骤S68作有关该专用数据是否指示初始化的进一步检查。若该数据指示乐器系统的初始化,则步骤S69承担除主调谐外的各种调整的初始化,该电子乐器可用于同一种普通声学仪器或同一个由MIDI信号驱动的改进型声学仪器组合的集体弹奏中。在此情况下,演奏者必须完成不同乐器中的最后调谐。一般说来,这种调谐需要相当长时间。不过一旦实现这种调谐,在一个很长时间周期内不需要其他调谐。另一方面,在改变音乐发送新数据以前可经常进行该系统的初始化,以擦除不必要的老数据。鉴于这点,除主调谐数据外,执行这种初始化。该初始化如下进行干发送电平←7FH每个效果电平←OOH主音量←7FH程序改变←OOH存储体选择器MSB←OOH存储体选择器MSB←7FH(仅对MIDI声道10)存储体选择器LSB←OOH颤音数据←OOH此后程序回到图4的步骤S14。若步骤S68判定专用数据不指示初始化,则在步骤S70进行其他专门处理,从而返回到图4的步骤S14。
图9示出图4步骤S13中所涉及的存储选择处理的子程序。当存储体选择信号在MIDI接口被接纳时,执行存储体选择处理程序。存储体选择器具有一对部件MSB和LSB。存储体选择器MSB用于选择曲调音色,节奏音色和用户音色。存储体选择器LSB表示旋律音色域(domain)和用户音色域的扩展部分。首先,步骤S81承担将包含在所接收的存储体选择信号中的MIDI声道号设置到寄存器MCH。然后,在步骤S82作关于所接收存储体选择信号是否与MSB部分有关的检查。若接收数据指示该MSB部分,则步骤S83承担将接收的存储体数据存入相应MIDI声道的暂存器MSD中,从而返回。若步骤S82判定所接收存储体选择信号不指示MSB部分,即指示LSB部分,则后续步骤S84承担将所接收存储体选择数据存入暂存器LSD。此后,程序返回。当如后面将说明的接收到程序改变信号时,才实施实际的存储体选择。为此,接收的存储体选择数据一度被存入暂存器MSD和LSD之任一个中。
图10示出图4步骤S13所调用的程序改变处理的子程序。当允许节目改变信号通过MIDI接口时,便执行该程序改变处理程序。首先,步骤S91将所接收节目改变信号的MIDI声道号设置到寄存器MCH中,并将一节目改变代码存入暂时寄存器PDI MCHI。然后,步骤S92将所接收存储体选择数据和节目改变数据分别转移至寄存器BSM[MCH]或BSL[MCH],以及寄存器PC[MCH],用以供给乐音合成电路的音色发生器。
接着,步骤S93作有关指配给相关MIDI声道的存储体选择数据MSB是否指示7FH的检查。若指示7FH,则判定一节奏音色被指配给那个MIDI声道,正如下面将描述的,程序改变数据和存储体选择数据在节奏音色和旋律音色之间被看作是不同的。若旋律音色被指配给MIDI声道,则步骤S94根据存入寄存器MSD[MCH]和LSD[MCH]的声道MCH的存储体选择数据MSB和LSB,以及根据存入寄存器PD[MCH]内的声道MCH的程序改变数据去检索一张旋律音色表格。该旋律音色表写有真实乐音数据的存储区地址——借此可作有关是否存在请求音色的检查。于是,后续步骤S95检查有关存储体选择数据MSB是否指示OOH。在OOH情况下,则判定所指示的旋律音色是选自一组公共音色中的一个,这些公共音色可通用于不同样式的乐器。然后在步骤S96和进一步步骤中进行音色替换处理。选用公共音色的所有乐器样式可能由于质量等级(grade)不同而未装每一种类音色或变奏曲。采取通用音色组的场合,是通过节目变化从通用音色选择一特定音色的。此外,所选音色的一个变奏曲是由存储体选择数据LSB规定的。因此,一个高性能模型可通过扩展LSB而具有各种各样的变奏曲,而低质量模型可能有一组简易的公用音色。在这种情况下,所有部件根据节目变化的相同代码产生音色以避免所产生音色中的不一致性。这样,若所指定的音色属于公用音色,则对应于存储体选择器的最后确认的LSB的变奏曲实际上如下产生。也就是说,步骤S96承担有关根据步骤S94的检索结果是否存在选定音色的检查。若存在该音色,则可根据由步骤S92所设定的信息产生乐音。因此,引起步骤S97将无任何变化的存储体选择数据BSL置于寄存器LBSL中-这表明对该音色的最后确认的音。此后程序返回。若步骤S96判定不存在精确的该音色变奏曲,则后继步骤S96用先前选定并由步骤S97设定的最后确认数据即能(able)数据LBSL来替换由步骤S92设定的存储体选择数据LSB。此后程序返回。在存储体选择数据MSB指示OOH的情况下,通过这种方式得到用存储体选择数据LSB对该音色的替换。寄存器LBSL存贮当MSB=OOH被输入时在相应MIDI声道中被确认有效的最近存储体选择数据LSB。因此,借助步骤S98的替换过程,当不存在现时选定音色时,该最后能(last able)音色替代了所接收的不能音色。
现结合图14具体说明上述音色的替代操作。该图中,标有1-X的每个方块表示旋律音色。实线框表示装入电子乐器的能音色,而虚线框表示未装入电子乐器的不能音色。音色的变音是借助这些方框区域(domain)组合的。在图14的实例中,方块1-1至1-7代表标准音色的变音,方块1-8至1-A代表亮音色(bright timbre)的变音,和方块1-10至1-11代表暗音色(dark timbre)的变音。若发送电子乐器寄存音色1-11,则该发送电子乐器首先发送第一音色标示信息——该信息规定一类似音色1-10,然后再发送给定正确音色1-11的第二音色标示信息。一个接收电子乐器连续接收如流程图中所示第一和第二音色标示信息。然而,接收乐器未安装音色1-11,因此设定最后能音色1-10替代音色1-11。通过这种方式,若希望要音色替代,则连续发送不同音色标示信息以使接收乐器能从所寄存的音色中选择最佳音色。在上述实例中,该音色替代被命令去选定暗音色的变音;在此情况下,若接收乐器未装有音色1-10,则按顺序的一个最后能音色可替代该缺少的音色1-10。
再参见图10,继续说明程序变化处理。若由步骤S95判定存储体选择数据MSB不指示OOH,则不选择公用音色组,而选择对个别样式的乐器才有的另一特有音色组。在此情况下,与公用音色不同,不能实现音色的置换或替代。所以,若存在所选音色,则按该存在的音色产生乐音。若不存在所选音色,乐音的产生便中止。此外,为避免不经济地利用音调产生声道可禁止指定某一音调产生声道。也就是说,步骤S99根据步骤S94的检索结果设定寄存器USER的任务。如后面将描述的,在音调产生过程中,可利用寄存器USER。在USER=0的情况下,全然禁止对该音调产生声道的指定。
再回到步骤S93,若判定寄存器MSD指示7FH,则步骤S100根据贮存MIDI声道MCH的存储体选择数据MSB的寄存器BSM,和根据暂存程序改变码的寄存器PC去寻找在节奏音色表格中是否存在相应音色。有关节奏音色,与旋律音色相反,可根据节目变化而不是存储体选择数据LSB选择变音。若步骤S101判定存在被指定的音色,则根据步骤S92设定的节目变化码PC产生乐音。此外,在步骤S102将设定PC保存在寄存器LPC中以供可能的音色替换之用。若判定不存在指定音色,则步骤S103承担,用确认为有效的能节目变化码LPC去替代或置换在步骤S92设定的节目变化码。此后,程序返回。
如上所述,存储体选择数据MSB被利用来在旋律音色和节奏音色之间或在旋律独特的用户音色中进行的一般选择。具体地说,存储体选择数据MSB=OOH表示对不同模型均是共同的共用音色,不是OOH的存储体选择数据MSB表示对个别模型是独特的唯一音色。结果,在共用音色情况下,音色替代明确由选择在替代前刚确认为有效的存储体来进行。在唯一音色情况下,不进行音色替代,但中止音调产生以避免音色的不一致变化。存储体选择数据LSB指明一般音色范围内的一个特定变音,因此LSB的变化不会引起严重影响。在存储体选择数据MSB=7FH的节奏音色的情况下,该音色不是由存储体选择数据LSB选择,而是由节目变更码和健码选择的。在此情况下,以类似于旋律音色的存储体选择数据LSB的方式来处理节奏音色的节目变更码。
图11示出一个在图4步骤S13所调用的颤音处理子程序。该颤音处理程序是在由MIDI接口接收到颤音数据时执行的。在颤音处理程序中,步骤S111承担将包含在所接收节目变更信息中的MIDI声道号设置于寄存器MCH内并将颤音数据置于寄存器VD[MCH]中。此后,程序回到图4的步骤S14。在本实施例中,在接收到颤音数据时,即直接将其保留在该寄存器中。该保留数据实际上用作当相应MIDI声道允许音调产生命令时的颤音信息。否则,该颤音信息可通过本程序馈入乐音合成电路以执行实时颤音处理。
图12示出图4步骤S13所调用的音符事件处理的子程序。该音符事件处理程序是在MIDI接口接收音符事件数据时执行。首先,步骤S121承担将包含在接收节目变更信息中的MIDI声道码置于寄存器MCH中,并分别将包括健码,速度和健事件的接收信息置于寄存器KC,KV和KEV。寄存器KEV写有健-通信息KON或健断信息KOFF。然后,在步骤S122将设定信息保存在音符缓冲器,从而返回到图4的步骤S14。
图15示出图4步骤S17所调的音色标示信息传输过程的子程序。该音色信息发送过程的子程序是在弹奏者启动操作盘的音色开关和可外部地馈入音色调整的条件下执行的。首先,步骤S151承担有关待发送的音色标示信息是否选定予料会寄存在每种乐器中的一般性质的标准音色的检查。若予料待发送所需目标音色可能未装入接收方,则后续步骤S152选择类似于目标音色和比目标音色较接近于标准或一般音色的替代音色,并将在先音色标示信息写入MIDI传输缓冲器以指定明确的音色。接着,步骤S153承担将连续音色标示信息写入MIDI传输缓冲器以指定非明确或不确定的目标音色。通过这一做法,如前已述,接收方若未装入目标音色则可如此实现音色替代,即用接近低级(close inferior)音色而不是固定音色来替代较高级目标音色。若步骤S151予料目标音色的确装在其他仪器中,则步骤S153直接将该唯一(sole)音色标示信息写入MIDI传输缓冲器。
正如以上结合图5-12所述,输入MIDI接口的数据是根据输入数据的事件性质由MIDI接口处理的图4程序处理的。若MIDI缓冲器内没有任何待处理数据,则程序回到图3的步骤S3以执行音调产生处理。图13示出图3步骤S3所执行的音调产生处理的子程序。在音调产生处理程序中,第一步S131承担恢复由图12步骤S122写入音符缓冲器的各种数据。接着,在步骤S132作出有关恢复的事件数据是否指示KON事件的检查。若判定为恢复数据指示KON事件,则接着在步骤S133作有关寄存器USER是否指示″1″的检查。若寄存器USER不指示″1″,即USER=0,则程序跳到步骤S143,以禁止规定的MIDI声道的分配,因为该乐器未装指定用户音色。若寄存器USER指示″1″,则程序进行步骤S134。在这一步,予定一空闲音调发生声道,供产生健-通事件用。被予定声道号设定在寄存器TCH中。接着,在步骤S135作有关节奏音色是否被指定(即BSM=7FH)用于为音调发生所规定的MIDI声道的检查。在BSM不是7FH的情况下判定旋律音色被指配给该规定的MIDI声道。在此情况下,程序进到步骤S136。在这一步中,从根据存储体选择数据和程序变更数据的旋律音色表再现乐音数据。该再现的乐音数据包括音色波形的存储器地址,包络信息,颤音信息,效果信息,音量平衡信息等等。在下一步S137,将再现的颤音灵敏度设置在寄存器VSens中并将最小调制深度设置在寄存器VMin。在步骤S138,根据这些VSens和VMin计算实际的颤音值VDE。在步骤S139,将颤音信息馈入到乐音合成电路。在步骤S139之后,程序进到步骤S141。若在步骤S135判定寄存器BSM指示7FH,则指定节奏音色。在此情况下,步骤S140承担根据节目变更码和健码从节奏音色表再现乐音数据,从而程序进到步骤S141,用这种方式,再现的乐音数据在步骤S141被馈入乐音合成电路以开始产生乐音。再返回看步骤S132,若事件不是健-通事件KON而是健-断事件,则程序分叉至步骤S142,在那里将健-断信号馈至相应音调产生声道,从而程序进到步骤S143。在步骤S143,清除来自音符缓冲器的已处理数据。此外,若步骤S144判定另一数据仍在音符缓冲器中,则程序回到步骤S131从而继续音调发生处理。
在本实施例中,当接收的音色标示信息指示一空缺音色时,在先指定和确认存在的音色被选择以替代指定的空缺音色。不过,另一可选做法是可用通常装入每种乐器中的公用音色替代空缺音色。这是在图10步骤S98通过将″O″调整到值BSL来实现的。此外,可对节奏音色进行类似替换。在此情况下,在步骤S103将值PC设定为″O″,因为节奏音色的节目变更PC等效于旋律音色的存储体选择LSB。
如上所述,根据本发明,若接收音色信息指定未装入的一缺席或不能音色,则选择事先或在先确认为有效的另一存在或能音色去替代缺席音色。因此,该缺席音色不是由固定音色替代,而可由事先通过在先信息指定的一个可变音色来替代,从而获得与先有技术不同的扩展的音色替代。
权利要求
1.一种电子乐器,包括设有多个音色,用于产生有一选自已设置音色中的一个音色的乐音的音调发生装置;接收装置,用于接收选定一所需音色的音色标示信息;检验装置,用于核对该所需音色是否存在于设置的音色中;当存在所需音色时起作用的更换装置,用于从所设置音色中选择音色以使乐音变为所需音色;以及当缺少所需音色时起作用的不变更装置,用于从已设置音色中选择一个早先被选定和确认存在的替代音色以在该替代音色下产生乐音。
2.一种电子乐器,包括设有多个音色的音调发生装置,用以产生具有选自设有音色的一个音色的乐音;接收装置,用于接收指定至少第一选择和第二选择所需音色的音色标示信息;以及当设有的音色中存在第二选择时起作用的选择装置,用于选择使得在第二选择所需音色下产生乐音的音色;和另一方面当设有的音色中缺少第二选择时有效地用于从设有的音色中选择第一选择音色以替代第二选择,从而在第一选择的另一所需音色下产生乐音。
3.根据权利要求2的电子乐器,其特征在于所述接收装置包括用于接收音色标示信息的装置,该信息指定一个确实存在于已设置音色中的确定第一选择的所需音色和一个不确定是否存在于已设置音色中的不确定的另一所需音色的第二选择。
4.根据权利要求2的电子乐器,其特征在于所述接收装置包括一个用于接收音色标示信息的装置,该信息指定有一般性质的所需音色的一般第一选择以及一个相对该一般第一选择具有特定性质的另一所需音色的特定第二选择。
5.根据权利要求2的电子乐器,其特征在于,所述接收装置包括用于接收指定一次级第一选择的在先音色标示信息以及用于接收随后指定具有高于第一选择优先级的一高级第二选择的音色标示信息的装置。
6.一种由多种电子乐器组成的系统,其中每个电子乐器包括设有多个音色的音调发生装置,用于产生具有选自设有的音色中的一个音色的乐音,其中一种电子乐器还包括发送装置,用于发送指定所需音色接连的音色标示信息和指定代替所需音色的替换音色的在先音色标示信息,以及另一种电子乐器还包括用于连续接收在先音色标示信息和接连的音色标示信息的接收装置,和当设置音色中缺少所需音色时起作用的选择装置,用于已设置音色中选择替换音色致使能在替换音色下产生乐音。
全文摘要
一种电子乐器,利用设有多个音色用于产生具有选自已设音色的乐音的音调发生器。设有一MIDI接口,以接收指定所需音色的主选择和次选择的音色标示信息。当主选择存在于已设音色中时操用的存储体选择器用于选择音色,使得在主选的所需音色下产生乐音,另一方面当该主选择不在已设音色中时则用于从已设音色中选择一次要选择以替代主选择,使得在该次要选择的另一所需音色下产生乐音。
文档编号G10H1/00GK1151061SQ95118939
公开日1997年6月4日 申请日期1995年11月16日 优先权日1994年11月16日
发明者近藤昌夫 申请人:雅马哈株式会社