乐器,音乐数据产生器和用于乐器的音乐数据源的制作方法

文档序号:2832328阅读:223来源:国知局
专利名称:乐器,音乐数据产生器和用于乐器的音乐数据源的制作方法
技术领域
本发明涉及一种乐器,更具体地说是涉及例如键盘乐器的乐器,与乐 器相关联的音乐数据产生器和音乐数据源。
背景技术
当音乐家在弹奏一声学乐器例如钢琴时,弹奏者按次序确定出乐音, 这些乐音是借助于乐谱通过操作盘即黑琴键和白琴键来产生的,被按压的 黑白琴键使得执行单元产生移动,从而利用音锤来击打琴弦。基本音乐数 据以置于五线谱上的音符和休止符的形式给音乐家,音乐家解释乐谱上的 所表示的乐曲,从而确定实际的键移动。因此,在声学乐器上进行演奏需 要脑力劳动。
乐器制造商们已向使用者们提供了电子乐器和复合型乐器,例如自动 弹奏钢琴,这些类型的乐器已受到使用者们的青睐。
对于电子乐器和复合型乐器而言,乐曲是用二进制代码来表达的。当 使用者希望通过电子乐器来乐曲时, 一数据处理器就解释键移动,并把二 进制代码供给到一乐音产生器,以便产生电子乐音。类似地,当使用者命 令自动弹奏钢琴重现一演奏时, 一数据源就开始把二进制数据供给到数据 处理器,从而键无需演奏人员的手指的弹奏,利用驱动器来激起键移动。 这就意味着音乐数据是以二进制代码给出的。不仅音符和休止符,而且精 细的脑力劳力要用二进制代码来表达。在下文中,电子乐器和复合型乐器 被称作"非声学乐器"。
在日本专利申请公开Nos.昭53-112716,昭58-159279和昭59-82682
5中公开了非声学乐器的一些典型例子。音乐数据被转换成二进制代码,其
格式在MIDI (乐器数字接口 ( Musical Instrument Digit Interface ))协议中被 定义了。在下文中,这些二进制代码被称作"MIDI音乐数据代码"。例如, 音符-起事件,音符-止事件,要被产生的乐音的音高,要被赋予给这些乐音 的速度是由MIDI音乐数据代码来表达的。尽管音符-起事件,音符-止事件 以及音高与五线谱上的音符相对应,速度在乐谱上并未被精确表达,并且 是通过演奏人员的脑力劳动来为声学乐器确定的。这样,MIDI音乐数据代 码可方便地表达在声学乐器上所进行的演奏,并且被广泛地应用于非声学 乐器中。
通过自动弹奏钢琴可获得用于重现演奏的MIDI音乐数据代码。内置的 控制器根据要被移动的黑/白键的音乐数据确定出参考轨迹,并且通过一 伺服控制技术迫使黑/白键在休息位置和端部位置之间沿着参考轨迹进行 移动。
然而,在非声学乐器中会遇到这样一个问题,即,根据MIDI音乐数据 代码所重现出的乐音并不能与在声学乐器上的原始演奏的乐音或音乐家所 指定的乐音精确对应。

发明内容
因此,本发明的一个重要目的是提供一种乐器,这种乐器以高级的音 乐数据代码的形式来精确地记录那些要被产生的乐音。
本发明的另 一个重要目的是提供一种音乐数据产生器,用于以高级的 音乐数据代码的形式来记录那些要被产生的乐音。
本发明的另外 一个重要目的是提供一种音乐数据源,高级的音乐数据 代码被存储在该音乐数据源中。
根据本发明的一个方面,提供了一种用于产生乐音的乐器,这种乐器 包括 一乐音产生系统,该乐音产生系统包括多个连接件,这些连接件选 择性地被驱动,以便指定所述要被产生的乐音的音高,所述的多个连接件 中的每个连接件都具有一特定的构件; 一乐音产生子系统,该乐音产生子 系统通过所述的多个连接件被驱动以产生乐音;以及一记录系统,该记录 系统包括多个传感器,至少监测多个连接件的特定构件,并产生监测信号, 这些监测信号携带有多段数据,每段数据代表一物理量,所述物理量用于表示所述特定构件的移动, 一数据处理单元,用于分析所述的多段数据, 以便产生 一音乐数据代码组,该音乐数据代码组代表由所述乐音产生系统 产生的乐音,其中,所述音乐数据代码组包括特定的音乐数据代码,每个 特定的音乐数据代码具有被赋予 一位串的 一数据字段,所述位串用于在一 通常区域中以一分辨率以及在所述通常区域外侧的一区域中以不同于所述 分辨率的另外一个分辨率来表示所述的物理量。本发明还提供了一种音乐
数据产生器,该音乐数据产生器包括多个传感器,至少监测安装在一乐 器内的多个连接件的特定构件,并产生一些监测信号,这些监测信号携带 有多段数据,每段数据代表用于表示所述特定的构件的移动的一物理量; 和一数据处理单元,用于分析所述的数据,以便形成一音乐数据代码组, 该音乐数据代码组代表由所述乐器产生的乐音,其中,所述的音乐数据代 码组包括特定的音乐数据代码,每个音乐数据代码具有一数据字段,该数 据字段被赋予一位串,所述位串在通常区域内以一分辨率表示所述物理量, 在所述通常区域外侧的 一 区域中以不同于所述分辨率的另外的一个分辨率 表示所述物理量。本发明还提供一种用于输出至少一音乐数据代码组的音 乐数据源,包括一存储空间,用于存储代表要被产生的乐音的所述音乐数 据代码组,其中,所述的音乐数据代码组包括特定的音乐数据代码,每个 音乐数据代码具有一数据字段,该数据字段被赋予一位串,所述位串在通 常区域内以一分辨率表示所述物理量,在所述通常区域外侧的一区域中以 不同于所述分辨率的另外的一个分辨率表示所述物理量。
根据本发明的另一方面,提供了一种用于产生乐音的乐器,这种乐器 包括 一乐音产生系统,该乐音产生系统包括多个连接件,这些连接件选 择性地被驱动,以便指定所述要被产生的乐音的音高,并且具有对应的构 件和对应的另外的构件;和一乐音产生子系统,该乐音产生子系统通过所 述的多个连接件被驱动以产生所述的乐音; 一记录系统,该记录系统包括 多个传感器,用于监测所述多个连接件的所述构件和所述另外的构件,并 产生监测信号,这些监测信号携带有多段第一数据,每段第一数据代表用 于表示所述构件的移动的一物理量,并且产生另外的监测信号,该另外的 监测信号携带有多段第二数据,每段第二数据代表用于表示所述另外的特 定的构件的移动的另外的一个物理量;和一数据处理单元,用于分析所述 的多段第一数据和多段第二数据,以便产生一音乐数据代码组,该音乐数据代码组代表由所述乐音产生系统产生的所述乐音,其中,所述音乐数据 代码组包括特定的音乐数据代码,每个特定的音乐数据代码具有被赋予一 位串的一数据字段,该位串的数字范围可被分成至少两个数字范围,这两 个数字范围分别表示所述物理量和所述的另外的一个物理量。本发明还提
供了一种音乐数据产生器,它包括多个传感器,用于监测一乐器中的多 个连接件的构件和另外的构件,并产生监测信号和另外的监测信号,所述 的监测信号携带有多段第一数据,每段第一数据代表用于表示所述构件的 移动的一物理量,所述另外的监测信号携带有多段第二数据,每段第二数 据代表用于表示所述另外的构件的移动的另外的一个物理量, 一数据处理 单元,用于分析所述的多段第一数据和多段第二数据,以便产生一音乐数 据代码组,该音乐数据代码组代表由所述乐器产生的乐音,其中,所述的 音乐数据代码组包括特定的音乐数据代码,每个特定的音乐数据代码具有 一数据字段,该数据字段被赋予一位串,该位串的一数字范围可以分成至 少两个数字范围,分别表示所述物理量和所述另外的一个物理量。本发明 还提供了 一种用于输出至少一音乐数据代码组的音乐数据源,包括一存储 空间,用于存储代表要被产生的乐音的所述音乐数据代码组,其中,所述 的音乐数据代码组包括特定的音乐数据代码,每个音乐数据代码具有一数 据字段,该数据字段被赋予一位串,该位串的数字范围可分成至少两个数 字范围,分别表示所述的物理量和所述的另外的一个物理量。
根据本发明另外一个方面,提供了一种用于产生乐音的乐器,包括 一乐音产生系统,该乐音产生系统包括多个连接件,这些连接件选择 性地被驱动,以便指定所述要被产生的乐音的音高,所述的多个连接件中 的每个连接件具有一特定的构件;和一乐音产生子系统,该乐音产生子系 统通过所述的多个连接件被驱动以产生所述的乐音; 一记录系统,该记录 系统包括多个传感器,用于至少监测所述多个连接件的特定构件,并产生 监测信号,这些监测信号携带有多段数据,每段数据代表用于表示所述特 定的构件的移动的一物理量;和一数据处理单元,用于分析所述的多段数 据,以便产生一音乐数据代码组,该音乐数据代码组代表由所述乐音产生 系统产生的所述乐音,其中,所述音乐数据代码组包括表示所述物理量的 多个音乐数据代码子组,每个音乐数据代码子组具有 一第一位串,该第 一位串粗略表示所迷物理量;和一第二位串,该第二位串精确表示所述物
8理量。本发明还提供了一种音乐数据产生器,包括多个传感器,用于至少监测一乐器中的多个连接件的特定的构件,并产生监测信号,所述的监测信号携带有多段数据,每段数据代表用于表示所述特定构件的移动的一物理量;和一数据处理单元,用于分析所述多段数据,以便产生一音乐数据代码组,该音乐数据代码组代表由所述乐器产生的乐音,其中,所述的音乐数据代码组包括多个代表所述物理量的音乐数据子组,每个音乐数据子组具有第一位串,所述第一位串粗略地表示所述物理量,和第二位串,所述第二位串精确地表示所述物理量。本发明还提供了 一种用于输出至少一音乐数据代码组的音乐数据源,包括一存储空间,用于存储代表要被产生的乐音的所述音乐数据代码组,其中,所述的音乐数据代码组包括多个音乐数据代码子组,这些音乐数据代码代表用于表示一乐器的特定构件的移动的一物理量,并且其中每个音乐数据代码子组具有和一第一位串,该第一位串粗略表示所述物理量; 一第二位串,该第二位串精确地表示所述物理量。


根据下面的描述,并结合附图就可以更清楚地理解乐器、音乐数据产生器和音乐凄t据源的特征和优点,在这些附图中
图1是表示本发明的一复合型键盘乐器的结构的剖面侧视图,
图2是一侧视图,表示出了安装在复合型键盘乐器中的一白键,
图3是一侧视图,表示出了也被安装在复合型键盘乐器中的一音锤,
图4是一方框图,表示安装在复合型键盘乐器中的一记录器的系统结
构,
图5表示被赋予给复合型键盘乐器中所用的基本位置数据和延伸位置数据的格式,
图6A是一曲线图,表示第一例中的实际音锤4亍程和基本位置数据/延伸位置数据之间的相互关系,
图6B是一曲线图,表示第一例中的实际的键行程和基本位置数据/延伸位置数据之间的相互关系,
图7A是一个表,用于描述笫一例中的实际音锤行程的基本位置数据/延伸位置数据的特征,图7B是一个表,用于描述第一例中的实际的键行程的基本位置数据/
延伸位置数据的特征,
图8是一个表,用于描述第二例中的被赋予给不同数据的数字子范围,
图9A表示在第一例中的被赋予给一增量和一减量的数字范围,
图9B表示在第三例中的被赋予给一增量和一减量的数字范围,
图IOA是一曲线图,表示第三例中的实际音锤行程和基本位置数据/
延伸位置数据之间的相互关系,
图IOB是一曲线图,表示第三例中的实际的键行程和基本位置数据/
延伸位置数据之间的相互关系,
图IIA是一个表,用于描述第三例中的实际音锤行程的基本位置数据
/延伸位置数据的特征,
图IIB是一个表,用于描述第三例中的实际的键行程的基本位置数据
/延伸位置数据的特征,
图12表示出了在第三例中所用的被赋予给基本位置数据和延伸位置数
据的数字范围,
图13是一剖面侧视图,表示出了根据本发明的另一种复合型键盘乐器的结构,
图14是一侧视图,表示安装在复合型键盘乐器中的一白键,
图15是一侧视图,表示出了也被安装在复合型键盘乐器中的一音锤,
图16是一方框图,表示复合型键盘乐器中所安装的一记录器的系统结
构,
图17表示被赋予给复合型键盘乐器中所用的基本位置数据和延伸位置数据的格式,
图18表示分别被赋予给当前键位置和当前音锤位置的两个数字范围,
图19A是一曲线图,表示第一例中的实际音锤行程和基本位置数据/延伸位置数据之间的相互关系,
图19B是一曲线图,表示第 一例中的实际的^fe行程和基本位置数据/延伸位置数据之间的相互关系,
图20A是一个表,用于描述第一例中的实际音锤行程的基本位置数据/延伸位置数据的特征,
图20B是一个表,用于描述第一例中的实际的4建行程的基本位置数据/延伸位置数据的特征,
图21A表示出了在第一例中被赋予给一增量和一减量的数字范围,
图21B表示出了在第二例中被赋予给一增量和 一减量的数字范围,
图22A是一曲线图,表示第二例中的实际音锤行程和基本位置数据/延伸位置数据之间的相互关系,
图22B是一曲线图,表示第二例中的实际的键行程和基本位置数据/延伸位置数据之间的相互关系,
图23A是一个表,用于描述第二例中的实际音锤行程的基本位置数据/延伸位置数据的特征,
图23B是一个表,用于描述第二例中的实际的键行程的基本位置数据/延伸位置数据的特征,
图24表示出了在第二例中被赋予给基本位置数据和延伸位置数据的一些数字范围,
图25是一剖面图侧视图,表示出了根据本发明的另外一种复合型键盘乐器的结构,
图26是一侧视图,表示安装在复合型键盘乐器中的一白键,
图27是一侧视图,表示出了也被安装在复合型键盘乐器中的一音锤,
图28是一方框图,表示复合型键盘乐器中所安装的一记录器的系统结
构,
图29表示出了位置数据的一系列段,
图30A是一曲线图,表示第一例中的实际音锤行程和基本位置数据/延伸位置数据之间的相互关系,
图30B是一曲线图,表示第一例中的实际的键行程和基本位置数据/延伸位置数据之间的相互关系,
图31A是一个表,用于描述第一例中的实际音锤行程的基本位置数据/延伸位置数据的特征,
图31B是一个表,用于描述第一例中的实际的键行程的基本位置数据/延伸位置数据的特征,
图32A和32B表示出了可提供一 当前音锤位置和一 当前键位置的两组延伸位置数据,
图33A表示出了在第一例中被赋予给一增量和一减量的数字范围,
ii图33B表示在第三例中被赋予给一增量和一减量的数字范围,
图34A是一曲线图,表示第三例中的实际音锤行程和基本位置数据/延伸位置数据之间的相互关系,
图34B是一曲线图,表示第三例中的实际的键行程和基本位置数据/延伸位置数据之间的相互关系,
图35A是一个表,用于描述第三例中的实际音锤行程的基本位置数据/延伸位置数据的特征,
图35B是一个表,用于描述第三例中的实际的键行程的基本位置数据/延伸位置数据的特征,
图36表示出了在第二例中被赋予给多段基本位置数据和延伸位置数据的一些数字范围,
图37是一侧视图,表示出了根据MIDI音乐数据代码组来重现演奏一演奏的自动演奏器的结构。
具体实施例方式
在下面的描述中,术语"前部"是指比术语"后部,,所指位置更靠近正弹奏乐曲的弹奏者的位置。在一前部位置和一对应的后部位置之间所画的一条线在一个"前后方向"上延伸,侧向方向与该前后方向垂直。
第一实施例
复合型^:盘乐器的结构
参照图1,实施本发明的一种复合型键盘乐器大体上包括一声学钢琴100和一记录系统105。记录系统105被安装在声学钢琴100内,该记录系统产生一些表示在声学钢琴上的演奏的音乐数据代码。
声学钢琴100包括 一钢琴箱110、 一键盘120、 一些执行单元140、一些音锤150、 一些制音器(damper) 160和一些琴弦170。键盘120被安装在钢琴箱的一键床110a上,并且向坐在声学钢琴100前方的一凳子(图中未示)上的钢琴演奏者暴露着。琴弦170被拉伸在钢琴箱110内部的键盘120的后部上,执行单元140和音锤150被安装在钢琴箱110内,并位于琴弦170下方。 一些制音机构160分别与这些琴弦170相关联,并且这些制音机构能与相关联的琴弦170间隔开以及相接触,从而能暂时性地允许琴弦发生振动。键盘120包括 一平衡轨120a、 一些平衡销125以及一些黑色键/白色键130。平衡轨120a沿侧向在键床110a上延伸,这些平衡销125从平衡轨120a以间隔开的方式向上突出。在黑色键/白色键130的中部设置一些竖直孔,平衡销125分別穿过这些竖直孔,以便分別向黑色键/白色键130提供支点。在这个例子中,黑色键/白色键130的总数是八十八,代表音符的键代码[21]至[108]被分别赋予这些黑/白键130。
再参照图1, ^:执行单元140与黑/白键130的后部分别相连,从而黑/白键130在其自身重量作用下,使得黑/白键130的后部下沉到一后轨上。另一方面,黑/白键130的前部被提升到一前轨120c上方。因此,黑/白键130停留在对应对应的休息位置,而且没有任何外力作用于它们的前部。在图2中用实线表示出了处于休息位置的其中 一个白键130。
在钢琴演奏者用他/她的手指在黑/白键130的前部上实施作用力时,所述前部就下沉到前轨120c上,后部把执行单元140向上推起。当前部与前轨120c接触时,黑/白键130就到达对应对应的端部。在图2中用点划线表示出了位于端部的白键130。在这种情况中,在黑/白键的前端,键的行程为IO毫米数量级。对于本领域普通技术人员来说,执行单元140的结构是已知的,因此为了简明起见,在下文中将不再对其进行描述。
音锤150分别与执行单元140关联,相应地也就与黑/白键130相关联。由于这个原因,音符号[21]-[108]也分别被赋予这些音锤150。当黑/白键130处于休息位置时,相关联的音锤150与相关联的执行单元140在顶杆的头部相接触,并且停留在对应对应的休息位置。在图3中,用实线表示出了位于休息位置的一个音锤150。当演奏者按压黑/白键130的前端部时,相关联的执行单元140就开始转动,并向上推动音锤。在黑/白键130向端部位置运动的过程中,执行单元140就从相关联的音锤150脱离。然后,音锤150被驱动转动,并且在自由转动结束时与琴弦170相撞击。音锤150使得琴弦170产生振动,并且这种振动被传播到一音板(图中未示)。音板也产生振动,从而就从音板上辐射出乐音。
如图3所示,音锤150被分解成一锤木141 、 一锤毡(a hammer felt)142、 一锤柄143。锤木141净皮固定在锤柄142的前端,锤毡142被锤木141保持着。锤柄143的另一端通过一销144与锤柄突缘146相连,从而可以绕着销144转动。点划线表示出了位于端部位置的音锤150,在这个端部位
13置,音锤150撞击到琴弦170 (如图3所示)。在这种情况下,锤毡142从 休息位置到端部位置大致移动了大约48毫米以上。
如果声学钢琴ioo的所有的构件都是刚性的,那么,黑/白键130就 会在休息位置和端部位置之间移动,并且音锤会从^K息位置转动到音锤130 撞上琴弦170的位置。然而,实际中的声学钢琴100的构件是可弹性变形 的。此外,由于老化变劣, 一些构件还会塑性变形。这就意味着黑/白键 130和音锤150会移动超过端部位置和休息位置。
实际上,在声学钢琴上进行实际演奏时可以看出,黑/白《建130和音 锤150有时会过度地移动超过端部位置和休息位置。然而,在现有技术中, 键移动和音锤移动是按假设黑/白键和音锤都在休息位置和端部位置之间 的参考轨迹上移动来描述的。本发明人注意到了实际的键移动与这种假设
之前存在着差别,这种差别使得重新演奏时的乐音变得很怪。为了精确地 描述键移动,将会考虑到所述的过度移动,这将在下文中被详细描述。
记录系统105包括 一记录器107、 一些键传感器310和一些音锤传感 器410。这些键传感器310分别与黑/白键130相关联,用于监测相关联的 黑/白键130。另一方面,这些音锤传感器410分别与音锤150相关联,用 于监测相关联的音锤150。这些键传感器310和音锤传感器410与记录器 107相连接,并且提供表示相关联的黑/白键130的当前键位置的键位置信 号和表示相关联的音锤150的当前音锤位置的信号。
从如2中可以更清楚地看到,刚性板300在成排的黑/白键130上侧 向延伸,键传感器310以等于黑/白键130的间距的间隔固连在刚性板300 的下表面上。在这个例子中,键传感器310采用成对的光发射元件和光检 测元件,即反射型光电耦(photo-coupler),反射板135被连接到黑/白键 130的上表面上。光发射元件把光束照射到相关联的反射板135上。光束在 反射板135上反射,并且入射到光检测元件上。入射光在光检测元件中被 转变成光电流,由该光电流产生键位置信号。入射光的强度随着光电耦与 反射板135之间的距离而变化,从而,键位置信号就表示出距键传感器310 的距离,即,表示出当前的键位置。键传感器310能分辨0.001毫米的增量 /减量,可监测距离被增加到超过每个休息位置和端部位置达键行程的三 分之一,键行程即休息位置和端部位置之间的轨迹长度。为了使两种4建行 程可被区分开,休息位置和端部位置之间的键行程被称作"理论的键行程",可监测距离内的键行程被称作"实际的键行程"。当一黑/白键130从休息 位置移动到端部位置时,该黑/白键130就移动了所述的"理论的整个键 行程"。理论的整个键行程之外的可监测的距离范围被称作"过移区域"。
类似地,从图3中可以看得更清楚, 一刚性板400在音锤柄143上方 沿侧向延伸,音锤传感器410和相关联的反射板145分别被连接到刚性板 400的下表面和音锤柄143的上表面。音锤传感器410可由光电耦来实施, 由光电流产生类似于键位置信号的音锤位置信号。音锤传感器410也具有 0.001毫米的分辨率,可监测范围被加长到超过每个休息位置和端部位置达 三分之一音锤行程,即休息位置和端部位置之间的轨迹长度。与键行程相 类似,休息位置和端部位置之间的音锤行程被称作"理论的音锤行程",可 监测范围内的音锤行程被称作"实际音锤行程"。当一音锤150被从休息位 置转动到端部位置时,音锤就移动了 "理论的整个音锤行程"。理论的整个 音锤行程之外的可监测范围被称作"过移区域"。
尽管为声学钢琴100配备了键传感器310和音锤传感器410,但是,另 外的构件也可以由传感器来监测。例如,制音器传感器161可以被设置在 制音器160上方。制音器传感器161以这样的方式被连接到一刚性板162 上,即,使得制音器传感器与反射板163相对置。如前所述,制音器160 允许琴弦170振动并使振动衰减。然而,制音器160不仅仅在两个位置之 间被改变。在实际演奏中,演奏者有时使制音器轻轻地接触琴弦170,以便 给乐音赋予艺术表现。如果制音器传感器161也被安装在声学风琴100上, 那么,记录器107就会从制音传感器161上获得另一种音乐数据,从而使 得演奏更接近原始演奏。
记录器的系统结构
参照图4,记录器107包括 一中央处理器200,称为"CPU"; —随 机存取存储器,简称为"RAM"; —只读存储器220,简称为"ROM"; — 操作盘230; —些计时器240; —些模数转换器250a/250b; —共享母线系 统B; —存储单元260,例如一软盘驱动器。 一磁盘驱动器或硬盘驱动器与 该记录器107相连。也可以用另外的存储装置来存储数据。存储单元260 可采用CD-ROM或CD-RAM的光盘驱动器、光电》兹》兹盘驱动器、ZIP盘驱 动器、DVD (Digital Versatile Disk)驱动器,或安装有半导体存储装置的存 储板。中央处理器200、随机存取存储器210、只读存储器220、操作盘230、 计时器240、模数转换器250a/250b和存储单元260都与共享母线系统B相 连接,从而,中央处理器200能通过共享母线系统B与其它的部件210/220 / 230 / 240 / 250a/250b/260相互通信。八十八个键传感器310与模数转换 器250a相连,通过该模数转换器250a把键位置信号转换成数字的键位置信 号。另一方面,八十八个音锤传感器410与另外的模数转换器250b相连, 并且通过该模数转换器250b把音锤位置信号转换成数字的音锤位置信号。 数字的键位置信号和数字的音锤位置信号具有一位串,该位串的长度足以 表示出所述的分辨率。在这种情况下,向当前键位置和当前音锤位置赋予 12位。
计算机程序和参数表被存储在只读存储器220内,随机存取存储器210 用作一工作存储器。中央处理器200根据计算机程序运行,完成计算机程 序中所表达的任务,从而产生代表在键盘120上的演奏的MIDI信息的音乐 数据代码。代表着MIDI信息的音乐数据代码组即MIDI音乐数据代码被存 储在存储单元260内。从而,演奏就被记录在存储单元260内。
操作盘230是一人机界面。各种开关、杆、指示器、显示窗被设置在 操作盘230上,使用者通过操作盘230向中央处理器200发出命令。计时 器240可以由软件来实施。中央处理器200选择性地起动和停止所述的计 时器,从而测定所消逝的时间。
当演奏者在声学钢琴100上演奏乐曲时,中央处理器200就根据计算 机程序运行,从而产生MIDI音乐数据代码。中央处理器200周期性地从模 数转换器250a/250b获取当前键位置和当前音锤位置,并且把这些当前键位 置和当前音锤位置加到已经存储在随机存取存储器210内的一系列当前4建 位置和一系列当前音锤位置。中央处理器200检验这些当前键位置,以便 确定是否移动了任何键130。
当中央处理器200发现一黑/白键130的位置发生了改变时,中央处 理器200就断定发生了键移动,并且为将要产生的要衰减乐音产生MIDI 声音信息。中央处理器200还在产生MIDI声音信息时起动计时器240,在 产生下一个MIDI声音信息时停止计时器。中央处理器200测量两个MIDI 事件之间的消逝时间,以产生代表消逝时间的持续时间数据代码。在这种 情况下,中央处理器200还产生代表当前键位置和当前音锤位置的声音信息。在用于重现演奏的乐器中未被使用的空闲格式(idle formats )被赋予代 表当前键位置和当前音锤位置的声音信息,代表当前键位置和当前音锤位 置的MIDI音乐数据代码与代表音符-起和音符-止以及消逝时间的MIDI音 乐数据一起被存储在存储单元260内。这些空闲格式将在下文中被详细描 述。
MIDI音乐数据代码和持续时间数据代码被供给到存储单元260并存储 于其内。使用者通过操作盘230可以向中央处理器200给出数据写入速度 和数据读出速度,中央处理器200又把这些数据写入速度和数据读出速度 指示给存储单元260。然而,在只读存储器220内为所述速度写入速度和数 据读出速度存储了默认值,中央处理器200通常命令存储单元260以默认 值把MIDI音乐数据代码和持续时间数据代码向磁盘写入或从磁盘读出。在 下面的描述中,假设存储单元260以默认值把这些数据代码写入^^盘或从 磁盘中读出。
尽管中央处理器200通常把代表演奏的全部的MIDI音乐数据代码和持 续时间数据代码从随机存取存储器210转移到存储单元260,但是,使用者 能选择要被记录到存储单元260内的音符。假设使用者想记录一部分乐曲, 那么,使用者就命令中央处理器200把这些乐音记录在一寄存器内。中央 处理器200选择那些代表所选音符的MIDI音乐数据、改变持续时间数据代 码的消逝时间。中央处理器200把所选的MIDI音乐数据代码和持续时间数 据代码选定的数据代码转移到存储单元260,并且把它们存储在存储盘内。 这样,记录器107就能选择性地记录那些由键移动/音锤移动所表达的乐 音。
一组MIDI音乐数据代码和持续时间数据代码以标准的MIDI文件形式 被存储在存储单元260内,这种文件形式通常被简称为"SMF"。换句话说, 键移动和音锤移动与代表音符-起、音符数、速度和音符-止的声音信息一起 被编译成空闲声音信息,并且那些声音信息被存储在MIDI音乐数据代码 中。对于直接表达键轨迹和音锤轨迹的数据代码而言,编译成声音信息是 有利的,这是因为使用者容易编辑和传输这些MIDI音乐数据代码。
位置数据
图5表示出了被赋予键移动和音锤移动的格式。由于这种格式被赋予 给MIDI协议中的复调键压(polyphonic key pressure )和控制变化,在自动
17弹奏钢琴中(通过这种钢琴来重现演奏),复调键压和控制变化是无用的。 换句话说,这些格式在自动弹奏钢琴中是空闲的。由于这个原因,这些空 闲格式被赋给基本位置数据和延伸位置数据,这将在下文中被详细描述。
基本的定位数据和延伸位置数据以不同的分辨率表示当前键位置和当 前音锤位置。 一段基本位置数据以相对较低的分辨率粗略表示位于休息位 置和端部位置之间的键轨迹即理论的键行程上的当前键位置,或表示位于
休息位置和端部位置之间的音锤轨迹即理论的音锤行程上的当前音锤位 置。换句话说,位于休息位置和端部位置之间的键轨迹的一特定区域或位 于休息位置和端部位置之间的音锤轨迹的一特定区域由这段基本位置数据 来粗略规定。
另一方面, 一段延伸位置数据以相对较高的分辨率表示在端部位置和 休息位置之间的特定区域中的当前键位置或者以相对较低的分辨率表示在 过移区域中的当前键位置。否则,这段延伸位置数据以相对较高的分辨率 表示在端部位置和休息位置之间的特定区域中的当前音锤位置或者以相对 较低的分辨率表示在过移区域中的当前音锤位置。因此,这段延伸位置数 据不仅描述了在休息位置和端部位置之间实际的键行程/实际的音锤行 程,而且还描述了在过移区域中实际的键行程或实际的音锤行程。这段延 伸位置数据使得可以表达一 "富余",其意思是过移量。由于基本位置数据 和延伸位置数据在当前键位置和当前音锤位置之间被共享,因此,两个数 字范围分别被赋予理论的/实际的键行程和理论的/实际的音锤行程。
如5所示,代表一段基本位置数据和一段延伸位置数据的声音信息由3 个字节来表示。第一个字节是在MIDI协议中定义的状态字节,第二个字节 和第三个字节也是在MIDI协议中定义的数据字节。代表一段基本位置数据 的声音信息所具有的状态字节为[1010nnnn],所具有的数据字节为 [Okkkkkkk]和
,并且该声音信息由十六进制符号[An kk xx]表示。 位串[nnnn]表示一通道号。位串[kkkkkkk]表示被赋予黑/白键130或其中一 个音锤150的音符号。换句话说,位串[kkkkkkk]代表从
到[1101100] 中的一个二进制数,其中,
等于十进制符号中的21, [IIOIIOO]等 于十进制符号中的108。如前所述,使用者能命令中央处理器200处理一特 定区域中的黑/白键130的移动以及处理特定寄存器中的音锤150的移动。 如果使用者把特定寄存器给了中央处理器200,那么,中央处理器200就通过把位串[kkkkkkk]与特定寄存器中的音符号相比,选择黑/白键130和音 锤150。
位串[xxxxxxx]代表一段基本位置数据。数字范围[xxxxxxx]被分成两个 数字范围,这两个数字范围分别被赋予理论的键行程和理论的音锤行程。 从而,只有一个格式在黑/白键130和音锤150之间被共享。从MIDI信息 的经济使用方面来看,这个特征是有利的。
行程以及在特定区域/过移区域中不同分辨率的实际的音锤行程。代表一 段延伸位置数据的声音信息也具有一个状态字节[1011nnnn]和两个数据字 节,表示成

。位串[nnnn]还代表通道号,该通道号与 对应的状态字节[An]的位串[nnnn]—致。伴随有位串[OOOIOOOO]的状态字节 代表着通常目的的延伸数据。
如果基本位置数据表明黑/白键130或音锤150正在休息位置和端部 位置之间的特定区域中移动,那么,位串[yyyyyyy]就代表在特定区域中当 前键位置或当前音锤位置,并且具有相对较高的分辨率。另一方面,当黑 /白键130在过移区域中移动时,位串[yyyyyyy]代表当前键位置或当前音 锤位置,并且具有相对较低的分辨率。因此,分辨率的变化使得位串[yyyyyyy] 可以表示实际的键行程和实际的音锤行程。
当代表一段延伸位置数据的声音信息被存储在存储单元260内时,这 段延伸位置数据就被存储在与对应的基本位置数据所存储的地址相邻的地 址。当MIDI音乐数据代码被从存储单元260输送到中央处理器200时,代 表一段基本位置数据的声音信息就被代表这段延伸位置数据的声音信息跟 随着,其它任何声音信息都不在这些声音信息之间传递。这能确保所述一 段基本位置数据与所述一段延伸位置数据成对。因此,连续的地址分配和 连续的信息传递有效地防止了意外的丟失数据。
第一例
图6A和6B表示出了一实际的音锤轨迹和一实际的键轨迹。横坐标轴 表示消逝的时间,纵坐标轴表示由十六进制数所表达的实际的键行程/实 际的音锤行程或当前音锤位置/当前键位置。曲线PL1和PL2代表实际的 音锤行程和实际的键行程。由于当前键位置/当前音锤位置由7位表示, 因此,十六进制数[xx]和[yy]从零,即十六进制符号[OOh],变化到127,即
19十六进制符号[7Fh]。方括号中的小字母"h"代表十六进制符号。
图7A和7B是描述用于实际音锤行程的基本位置数据/延伸位置数据 特征的表以及描述用于实际的键行程的基本位置数据/延伸位置数据的特征。
首先,参照图6A和7A描述实际音锤行程。音锤行程的基本位置数据 被赋予[40h]至[70h]的数字范围。音锤150从零毫米处的休息位置转动到48 毫米处的端部位置,从而,理论的整个音锤行程为48毫米。第三字节[xx] 从[40h],其等于十进制符号64,变化到[70h],其等于十进制符号112,从 而理论的整个音锤行程即48毫米被分成48个区域。因此,每个计数表示1 毫米的变化。如果音锤150被转动超过40毫米,那么,声音信息就被表示 为[An kk 68]。每个区域中的音锤轨迹被假设为线性的。
当前音锤位置精确地由延伸位置数据来表示。第三字节[yy]从[OOh]变化 到[7Fh],从而每段延伸位置数据向相关联段的基本位置数据提供128个子 区域。当第三字节[xx]落入到数值范围[41h]至[6Fh]时,第三字节[yy]就表示 休息位置和端部位置之间的当前音锤位置的增量和减量,每个计数等于1 /64毫米。这128个子区域被分成两组。128个子区域的一个子区域即[OOh] 被赋予这段基本位置数据[Ankkxx],剩余的子区域被分成两组。这两组中 的其中 一组包括64个子区域
至-[40h],另外一组包括63个子区域
至+ [3Fh]。减量由64个子区域所表示,从而相对于当前音锤位置[Ankkxx] 而言最大减量为-l毫米。另一方面,增量由63个子区域所表示,从而最大 的增量为+63/64毫米,即+ 0.984375毫米。因此,第三字节[yy]表示最小 行程-1毫米至最大音锤行程+ 0.984375毫米。当前音锤位置被表示为十六 进制数[xx]和[yy]的和。
当第三字节[xx]表示休息位置即[40h]或端部位置即[70h]时,第三字节 [yy]就表示增量或减量,每个计数等于1/4毫米。实际音锤行程由[xx]+ [yy] /64毫米表示。由于在过移区域中的当前音锤位置被以低分辨率确定,因此, 可以表示在过移区域中实际的音锤行程,而且无需增加表示空闲声音信息 的数据字节的数目。
如上所述,最大减量和最大增量分别为-1毫米和0.984375毫米。因此, 位串以相对较高的分辨率表示数字范围± 1毫米。当第三字节[yy]是[OOh]时, 增量或减量为零,并且对应于由这段基本位置数据[40h]或[70h]表示的音锤位置。从休息位置的最大减量为-64/4毫米,即-16毫米,并且由[40h]表示。 另一方面,从端部位置的最大增量是+ 63/4毫米,即15.75毫米,并由[3Fh] 表示。因此,第三字节[yy]表示过移区域中的数值范围土16毫米。增量和减 量与所述富余相对应。
音锤行程被假设为从休息位置的40.5毫米。音锤行程被基本位置数据 [Ankk68]和延伸位置数据[Bn 10 20]表示。第三字节[68h]等于40毫米,第 三字节[20h]等于+0.5毫米。因此,两个十六制数字的和等于40.5毫米。当 然,40.5毫米的音锤行程也可由基本位置数据[Ankk 69]和延伸位置数据[Bn 10 60]表示,这是因为第三字节[69h]和[60h]等于41毫米和-5毫米。
类似地,56毫米的音锤行程由基本位置数据[Ankk70]和延伸位置数据 [Bnl0 20]表示。第三字节[70h]等于48毫米,第三字节[20h]等于+ 8毫米。 因此,两个十六制数的和等于56毫米。
-0.25毫米的音锤行程由基本位置数据[An kk 40]和延伸位置数据[Bn 10 7F]表示。第三字节[40h]为0毫米或休息位置,另外的第三字节[7Fh]等于 -0.25毫米。因此,这两个十六进制数的和等于-0.25毫米。
接着,参照图6B和7B来描述键行程。键行程的基本位置数据被赋予 数字范围
至[30h]。黑/白键130从休息位置移动到端部位置,经过的 理论的整个键行程为10毫米。第三个字节[xx]的每个计数(digit) 1等于 0.225毫米的变化。十六进制数
表示一当前键位置,该当前位置朝端部 位置从休息位置间隔开0.225毫米。十六进制数[30h]表示与当前键位置
间隔0.225 x48=10.8毫米的当前位置。最大当前^:位置位于端部位置外侧。 因此,键行程由从
至[2Fh]的十六进制数表示,且间隔为0.225毫米。 在每个区域中的键轨迹被假设为线性的。
当第三字节[xx]表示最小当前键位置即
或最大当前键位置即[30h] 时,第三字节[yy]表示相当大的增量或相当小的增量,每个计数等于0.225/4 毫米。实际的键行程由[xx]与[yy]x 0.225/64的和表示,单位为毫米。由于 在过移区域中当前键位置被以低分辨率确定,因此,可以表示在过移区域 中的实际的^l建行程,而且未增大数据字节的数目。
另 一方面,当前音锤位置被当前键位置
和当前键位置[2Fh]之间的 i延伸位置数据精确地表示。也就是,第三字节[yy]表示休息位置和端部位置 之间的当前音锤位置的增量和减量,并具有相对较高的分辨率。每个计数等于0.225/64毫米。实际的键行程为[xx]和[yy] x0.^5/64的和,单位为毫 米。
类似于实际音锤行程来确定实际的键行程。第三字节[xx]被假设为落入 在数字范围
至[30h]内。如果第三字节[yy]等于十六进制数[OOh],实际 的键行程等于第三字节[xx]与0.225的乘积,单位为毫米。另一方面,如果 第三字节[yy]等于[40h],那么,减量达到最大,为-64 x 0.225/64毫米,即-0.225 毫米,最大减量被加到由第三字节[xx]所表示的当前键位置上。当第三字节 [yy]等于[3Fh]时,增量达到最大化,为+63 x 0.225/64毫米,即,+ 0.221484375 毫米,该最大增量被加到由第三字节[xx]所表示的当前键位置上。因此,当 前键位置就被基本位置数据和延伸位置数据精确地表示为(0.225 x (xx+yy/65)毫米。
第三字节[xx]被假设等于十六进制数
和[30h]。延伸位置数据表示 在过移区域中距当前键位置
或[30h]的长度。十六进制数[OOh],即[yy] =
,表示参考位置[xx;h
或[30h]。如果第三字节[yy]等于[40h],那 么,相对于由
的第三字节[xx]所表示的当前键位置而言,减量就达最大 化-64 x 0.225/4毫米,即,-3.6毫米。另一方面,当第三字节[yy]等于[3Fh] 时,增量达最大化,为+63 x 0.225/4毫米,即,+3.54375毫米。因此,数字 范围被加长至约±3.6毫米。在过移区域中实际的键行程由延伸位置数据和
基本位置数据表示为(0.225 x(xx+yy/4))亳米。由于每个计数等于最大值,因
此,可以表示富余,而且未增大第三字节[yy]中的计数的数目。
零键行程由基本位置数据[An kk Ol]和延伸位置数据[Bn 10 7C]的组合 来表示,其中的基本位置数据[An kk Ol]表示0.225毫米的键行程,其中的 延伸位置数据[Bn 10 7C]表示(-4x 0.225/4)的减量,即0.225毫米。类似 地,10.125毫米的实际的键行程由基本位置数据[Ankk2D]和延伸位置数据 [Bn 10 OO]的组合来表示,其中基本位置数据[An kk 2D]表示10.125毫米的 键行程,延伸位置数据[Bn 10 OO]表示为零的增量/减量。当黑/白键移过 休息位置时,-0.025毫米的实际的键行程由基本位置数据[An kk Ol]和延伸 位置数据[Bn 10 7F]的组合来表示,其中基本位置数据[An kk Ol]表示0.225 毫米的键行程,延伸位置数据[Bn 10 7F]表示为-0.25毫米的减量。
从前面的描述可以知道,当前音锤位置和当前键位置由 一段基本位置 数据和一段延伸位置数据来描述,增量/减量在过移区域中被增大。结果
22是,增大的增量/增大的减量使得可以表示出当前音锤位置/当前键位置, 而且不会增大第三字节中的计数的数目。这个特征是有利的,因为对于复 合型键盘乐器而言,空闲声音信息是可获得的。 第二例
尽管在第一例中,当前键位置需要两类声音信息,但是,在第二实施 例中,只有一类声音信息在过移区域中的当前键位置和休息位置与端部位
置之间的当前键位置之间被共享。在这个例子中,复音键压的声音信息[An kk xx]在基本位置数据和延伸位置数据之间被共享。复音键压的声音信息具 有被表示为[xx]的第三字节,第三字节[xx]的数字范围被分成图8所示的三 个数字子范围。
第三字节[xx]的数字范围被分成三个子区域,即

,[10h]至 [6Fh],[70h]至[7Fh]。数字子区域[10h]至[6Fh]被赋予休息位置和端部位置之 间的当前键位置。在这种情况中,端部位置与休息位置间隔开10毫米。由 于具有位于[10h]至[6Fh]之间的十六进制的数,因此,每个十六进制数的计 数等于约0.01毫米。
从[OOh]至[OFh]的数字范围被赋予休息位置外侧的过移区域中的当前 键位置。每个数表示约0.16毫米,也就是说,分辨率在0.16毫米数量级, 从而休息位置外侧的富余在2.5毫米数量级。另一方面,从[70h]至[7Fh]的 数字子区域被赋予端部位置外侧的过移区域中的当前键位置。分辨率也是 为0.16毫米数量级,从而,端部位置外侧的富余为2.5毫米数量级。
因此,分辨率随着数字子范围而改变,从而,只有一类MIDI信息的第 三字节[xx]能表示过移区域中的当前键位置以及休息位置和端部位置之间 的当前4建^立置。
当重现演奏时需要当前音锤位置时,另 一类MIDI信息就被赋予当前音 锤位置。
第三例
正如结合第一例所描述的那样,由第三字节[yy]的十六进制数
所表 示的参考位置与第三字节[xx]的十六进制数相对齐,数字范围[OOh]至[3Fh],
至[40h]分别被赋予增量或偏离参考位置的正偏离值以及减量或偏离参 考位置的负偏离值,如图9A所示。所有这些延伸位置数据都具有被固定成 [10h]的第二字节。在第三实施例中,这些延伸位置数据被表示为[Bn 10yy]和[Bn 11 yy]。 由第三字节[yy]的十六进制数[OOh]所表示的参考位置也与第三字节[xx]的十 六进制数对齐。延伸位置数据[Bn 10 yy]的第三字节[yy]被赋予 一增量或偏离 参考位置的正偏离值,延伸位置数据[Bn 11 yy]的第三字节[yy]被赋予一减量 或偏离参考位置的负偏离值,如图9B所示。第一和第二字节[BnlO]代表应 用于偏离参考位置的正偏离值的延伸数据。第一和第二字节[Bn ll]代表偏 离参考位置的负偏离值的延伸数据。由于129个十六进制数由第三字节[yy] 表示,因此,在第三实施例中的富余等于第一例中的富余的情况下,在过 移区域中的分辨率比第一例中的分辨率要高两倍。否则,第三实施例中的
第三字节[yy]所提供的富余要大于第一例中的富余。
图10A表示出了实际的音锤行程PL3与第三字节[xx]和[yy]的十六进制 数字之间的关系;图10B表示出了实际的键行程PL4与第三字节[xx]和[yy] 之间的关系。横坐标轴表示消逝的时间,纵坐标轴表示以十六进制数[xx] 和[yy]所表示的实际的键行程/实际音锤行程或当前音锤位置/当前键位 置。
图IIA是一个表,该表中描述了实际音锤行程的基本位置数据/延伸 位置数据的特征。图11B是一个表,该表中描述了实际的键行程的基本位 置数据/延伸位置数据的特征。
首先来描述实际音锤行程。理论的整个音锤行程被假设为48毫米。休 息位置对应的音锤行程为零。端部位置对应的音锤行程为48毫米。第三字 节[xx]的数字范围一部分被地赋予音锤行程, 一部分被赋予键行程。在这种 情况中,数字范围[40h]至[70h]被赋予音锤行程(见图IIA)。每个计数或每 个十六进制数表示1毫米的音锤行程。十六进制数[40h]表示休息位置,十 六进制数[70h]表示端部位置。休息位置和端部位置之间的当前音锤位置由 [41h]和[6Fh]之间的一个十六进制数来表示。1毫米的单元音锤行程#1假设 是线性变化的因此,由第三字节[xx]所表示的这些特征与结合图6A和7A 所描述的特征是相同的。
当第三字节[xx]表示休息位置和端部位置之间的当前音锤位置,即从 [41h]至[6Fh]时,每段延伸位置数据[Bn 11 yy]的第三字节[yy]和每段延伸位 置数据[Bn 11 yy]的第三字节[yy]精确地表示当前音锤位置,并表示增量和减 量,即偏离由第三字节[xx]的十六进制数所表示的当前音锤位置的偏离值。每个计数或每个十六进制数等于1/128毫米。因此,第三字节[yy]以相对 较高的分辨率表示出在音锤150在休息位置和端部位置之间移动情况下的 偏离值。
另一方面,当第三字节[xx]表示休息位置[40h]或端部位置[70h]时,每 段延伸位置数据[Bn 10 yy]的第三字节[yy]表示在端部位置外侧的过移区域 中的当前音锤位置。每段延伸位置数据[Bn 11 yy]的第三字节[yy]表示在^^息 位置外侧的过移区域中的当前音锤位置。每个数位或每个十六进制数等于1 /8毫米。因此,第三字节[yy]在音锤150过移端部位置和休息位置的情况 下以相对较低的分辨率表示偏离值。从端部位置的最大增量为15.875毫米, 从休息位置的最大减量为-15.875毫米。因此,这些延伸位置数据向音锤150 提供富余± 15.875,从而使得休息位置和端部位置之间的通常范围两侧的可 监测范围被加长了 。由于两类MIDI信息[Bn 10 yy]和[Bn 11 yy]被用于这些 延伸位置数据,因此与第一例相比,本例的分辨率被提高了。
假设一音锤150在通常区域移动,该通常区域等于48毫米,位于休息 位置和端部位置之间。第三字节[xx]大于[40h]且小于[70h],在通常区域中 的分辨率为i.o毫米。当基本位置数据和和相关联的延伸位置数据被表示为 [An kk xx]和[Bn 10 00]时,音锤150位于由第三字节[xx]表示的当前音锤位 置,第三字节[yy]的十六进制数
表明偏离由第三字节[xx]所表示的当前 音锤位置的偏离量为零。如果第三字节[yy]等于[7Fh],正偏离量被最大化, 最大增量等于127/ 128毫米,即+0.9921875毫米。因此,这段延伸位置数 据[Bn 10 yy]以分辨率为1 / 128毫米来表示从零至+0.9921875毫米的正偏 离。
另 一方面,当基本位置数据[An kk xx]伴随有一段延伸位置数据[Bn 11 yy]时,在朝休息位置的方向上,当前音锤位置从等于第三字节[xx]的位置 偏离。如果第三字节[yy]十六进制数[OOh],那么负偏离为零,音锤150位于 等于第三字节[xx]的当前音锤位置。如果第三字节[yy]等于十六进制数 [7Fh],负偏离被最大化,并且该最大减量等于-127/128毫米,即-0.9921875 毫米。因此,延伸位置数据[Bn 11 yy]以1/128毫米的分辨率表示从零至 -0.9921875毫米的负偏离。
假设音锤150移过端部位置或休息位置。第三字节[xx]等于[40h]或 [70h],在过移区域中分辨率为1/8毫米。当基本位置数据[An kk xx]伴随
25有一段延伸位置数据[Bn 10yy]时,音锤150就移过端部位置。如果第三字 节[yy]等于
,那么,音锤150就位于端部位置。如果第三字节[yy]等于 [7Fh],那么,当前音锤位置就从端部位置正偏离达+127/8毫米,即+15.875 毫米。因此,第三字节[yy]以1/8毫米的分辨率表示从端部位置的增量或 偏离,最大增量等于+15.875毫米。
另一方面,当基本位置数据[Ankkxx]伴随有一段延伸位置数据[Bn 11 yy]时,音锤150就移过休息位置。如果第三字节[yy]等于[OOh],那么音锤 150就位于休息位置。如果第三字节[yy]等于[7Fh],那么当前音锤位置就负 偏离休息位置达-127/8毫米,即-15.875毫米。因此,第三字节[yy]以1/8 毫米的分辨率表示从休息位置的负偏离或减量,最大的减量等于15.875毫 米。
假设一黑/白键130在由十六进制数[OOh]所表示的休息位置与由十六 进制数[30h]所表示的一边界键位置之间移动。在休息位置和端部位置之间 的键行程约为io毫米,在边界键位置的键行程等于10.8毫米。这些基本位 置数据在休息位置和边界键位置之间的分辨率为0.225毫米。另一方面,这 些延伸位置数据在十六进制数
和十六进制数[2Fh]之间的第三字节[xx] 的数字范围内分辨率为0.225/128毫米。
当基本位置数据和相关联的延伸位置数据被表示为[An kk xx]和[Bn 10 OO]时,黑/白键130位于由第三字节[xx]所表示的当前键位置,第三字节[yy] 的十六进制数
表明偏离由第三字节[xx]所表示的当前音锤位置的偏离 量为零。如果第三字节[yy]等于[7Fh],那么,正偏离或增量就达最大化,该 最大增量等于+127x0.225/128毫米,即+0.2232421875毫米。因此,延伸位 置数据[Bn 10 yy]以0.225/128毫米的分辨率表示从零至+0.2232421875毫米 的正偏离。
另一方面,当基本位置数据[An kk xx]伴随有一段延伸位置数据[Bn 11 yy]时,当前键位置就朝休息位置方向从等于十六进制数[OOh]的位置偏离。 如果第三字节[yy]等于十六进制数[OOh],负偏离或减量为零,黑/白键130 位于等于第三字节[xx]的当前键位置。如果第三字节[yy]等于十六进制数 [7Fh],那么,负偏离就被最大化,该最大减量等于-127x0.225/128亳米,即 -0.2232421875毫米。因此,延伸位置数据[Bn 11 yy]以0.225 / 128毫米的分 辨率表示从零至-0.2232421875毫米的负偏离。假设黑/白键130移过端部位置或边界键位置。第三字节等于
或[30h],在过移区域中分辨率为0.225/8毫米。当基本位置数据伴随有延伸 数据[Bn 10 yy]时,黑/白键130移过边界键位置。如果第三字节[yy]等于 [OOh],那么,黑/白键130就位于边界键位置。如果第三字节[yy]等于[7Fh], 那么,当前4定位置就从边界4建位置正偏离达+127x0.225/8毫米,即+3.571875 毫米。因此,第三字节[yy]以0.225/8毫米的分离率表示从边界键位置偏离 的偏离量或增量,最大增量等于+3.571875毫米。
另 一方面,当基本位置数据[An kk xx]伴随有一段延伸位置数据[Bn 11 yy]时,黑/白键130移过休息位置。如果第三字节[yy]等于[OOh],那么黑 /白键130就位于休息位置。如果第三字节[yy]等于[7Fh],那么,当前键位 置就从休息位置负偏离-127x0.225/8毫米,即-3.571875毫米。因此,第三 字节[yy]以0.225/8毫米的分辨率表示从休息位置的负偏离或减量,最大减 量等于-3.571875毫米。
因此,在过移区域中采用相对较低的分辨率,从而两类声音信息表示 休息位置外侧和边界键位置外侧的富余。
尽管对于休息位置和端部位置/边界键位置之间的当前音锤位置和当 前键位置而言,延伸位置数据[BnlOyy]和[Bnllyy]都可供使用,但是,如 图12所示,在第三实施例中,只有延伸位置数据[Bn 10yy]被用于偏离由第 三字节[xx]所表示的位置的偏离量。延伸位置数据[Bn 11 yy]只表示从休息位 置
或[40h]的负偏离量或负减量。音锤150和黑/白键130位于基于基 本位置数据[An kk xx]和相关联的延伸位置数据[Bn 10 yy]的组合的当前的 音锤位置/当前键位置。例如,当音锤150或黑/白键130到达基本位置 数据[An kk 50]和基本位置数据[An kk 51]之间的一特定位置时,从[An kk 50] 的正偏离量就由延伸位置数据[Bn 10yy]表示。如果音锤150或黑/白键130 移过端部位置或边界^:位置,那么,音锤150或黑/白4建130就位于偏离 端部位置或边界键位置达由[Bn 10 yy]所表示的富余量的当前音锤位置或当 前键位置。
然而,只有端部位置或边界键位置外侧的音锤150或黑/白键130才 可位于偏离那儿达由延伸位置数据所表示的距离的当前音锤位置或当前键 位置。否则,两类声音信息[BnlOyy]和[Bnllyy]可以选择性地与声音信息 [An kk xx]—起被使用。例如,如果音锤150或黑/白键130位于基于基本位置数据[An kk 50]和相关联的延伸位置数据[Bn 10 yy]的当前音锤位置或 当前键位置,那么可以利用基本位置数据[Ankk 51]和另外相关联的延伸位 置数据[Bn 11 yy]来表示该当前音锤位置和当前键位置。
延伸位置数据可只表示在过移区域中的当前音锤位置和当前键位置。 在这种情况中,,音锤150和黑/白键130可只基于基本位置数据[An kk xx] 位于特定当前音锤位置和特定当前键位置。
正如将要知道的那样,第三字节[xx]的数字范围被分成两个子范围,和 第 一例 一样,声音信息[An kk xx]能表示两类当前位置。
此外,两个声音信息[Bn 10yy]和[Bn 11 yy]被用于正增量和负减量,这 个特征使得分辨率要高于第一例中的分辨率。分辨率在通常区域和过移区 域之间被改变,这个特征使得在休息位置/端部位置/边界键位置外侧具 有富余量。
根据在实际轨迹上的当前位置来改变分辨率,也就是说,本发明的第 一种构思在每、第二、第三实施例中被实现了,并且可以精确地表示移动 目标的实际移动。表示实际移动的这些数据被编入到各种乐器中所用协议 的空闲格式中,并且被存储在或供给到另外的乐器中。这个特征是有利的, 因为在重现演奏过程中,实际移动在乐器中被精确地再现。
上面已经描述了复合型键盘乐器的结构、记录器107和基本位置数据 /延伸位置数据的系统构成。下面将简要描述中央处理器200或数字信号 处理器所运行的计算机程序以及在计算机程序中所表示的方法。
当演奏者命令记录系统105记录他/她的演奏时,中央处理器200就 周期性地从模数据转换器250a获取数字键位置信号。并形成一键表,在该 键表中,存储区域分别被赋予黑/白键130,中央处理器200把由数字键位 置信号所表示的位置数据在对应的存储区域中进行排队。这种周期性地数 据获取可以通过一计时器中断来执行。
一旦从计时器中断子例程返回,中央处理器200就分析位置数据队列 或系列,判断演奏者是否按压了任一黑/白键130。假设中央处理器200注 意到了一黑/白键130被按压了。中央处理器200就为被按压的黑/白键 130产生音符-起信息,并把代表音符-起信息的MIDI音乐数据代码写入到 随机存取存储器210内。此外,中央处理器200从队列读出表示键轨迹的 多段位置数据中的 一个,然后确定在键轨迹上的当前键位置。当中央处理器200确定出每个当前键位置时,中央处理器200就粗略 确定了当前键位置,并且确定出了偏离粗略键位置的偏离量。中央处理器 200产生声音信息[An kk xx]和相关联的声音信息[Bn 10 yy],并把声音信息 [Ankkxx]和[Bn 10 yy]存储到随机存取存储器210内。即使黑/白键130移 过了端部位置,中央处理器200也可确定出偏离端部位置的偏离量,并且 产生出声音信息[Ankkxx]和[BnlOyy]。这样,中央处理器就通过利用由声 音信息[An kk xx]和[Bn 10 yy]或[Bn 11 yy]所表示的每个当前键位置为每个 黑/白键确定出了键轨迹。中央处理器重复上述次序,并为那些被按压的 键130产生声音信息[An kkxx]和[Bn 10 yy]/[Bn 11 yy]的多个组合。
当演奏者松开按压的黑/白键130时,中央处理器200就产生代表音 符-止信息的MIDI音乐数据,并且还确定出在键轨迹上朝着休息位置的当 前键位置。每个键位置由声音信息[Ankkxx]和[Bn 10yy]/[Bn 11 yy]的组合 来表示,并且并存储在随机存储存储器210内。中央处理器200重复上述 次序,并且为那些松开的键130产生声音信息[Ankkxx]和[Bn 10yy]/[Bn llyy]的多个组合。
中央处理器200还周期性地从模数转换器250b获取数字音锤位置,并 利用声音信息[Ankk xx]和[Bn 10yy]/ [Bn 11 yy]表示出在音锤轨迹上的当前 音锤位置。由于键移动会导致音锤移动,因此,中央处理器200就把代表 音锤轨迹的声音信息[Ankkxx]和[Bn 10 yy]/[Bn 11 yy]与代表键轨迹的声音 信息[Ankkxx]和[Bn 10 yy]/[Bn 11 yy]相互关联起来。
当演奏者完成演奏时,演奏者就命令记录系统105把MIDI音乐数据代 码存储到存储单元260内。中央处理器200要求存储单元260准备出一份 标准的MIDI文件,并且把这组MIDI音乐数据代码转移到存储单元260。 存储单元260把这组MIDI音乐数据代码写入到标准MIDI文件的数据块中, 从而,演奏就被记录在存储单元260的信息存储介质内。
从前面的描述可以知道,演奏者通过记录系统105来记录他们的演奏, 键移动准确地被声音信息[Ankkxx]和[Bn 10yy]/[Bn 11 yy]表示出来。
第二实施例
参照图13, 14, 15,图中表示出了另外一种实施本发明的复合型键盘 乐器,这种键盘乐器大致包括一声学钢琴100A和一记录系统105A。记录 系统105A被安装在声学钢琴100A内,该记录系统产生一些表示出在声学钢琴IOOA上的演奏的音乐数据代码。
声学钢琴100A包括 一钢琴箱110A、 一键盘120A、 一些执行单元 140A、 一些音锤150A、 一些制音器160A和一些琴弦170A。这些部件110A -170A与钢琴箱110、 4定盘120、执行机构140、音锤150、制音器160和 琴弦170相类似。由于这个原因,这些部件110A-170A ^皮标上了与部件 110- 170相对应的附图标记,在此不再对这些部件进行详细描述。
部件110A-170A是可弹性变形的,有些部件会随着老化而产生塑性 变形。例^口,由于前4建布穿孑L ( key cloth punching )131禾口一后專九布132才矣 收黑/白键130的前部和后部,这些部件131和132被黑/白键130压缩。 黑/白键130在平衡轨道120a上跳跃。换句话说,黑/白键130以不同于 理想键移动的实际演奏的方式进行键移动。这就导致黑/白4建130易于移 过端部位置和休息位置。因此,声学钢琴IOOA在类似于前面所描述的复合 型键盘乐器的状况中进行操作。
参照图16,记录系统105A包括一记录器107A、 一些^t建传感器310和 一些音锤传感器410。这些键传感器310分别与黑/白键130相关联,用于 监测相关联的黑/白键130。另一方面,这些音锤传感器410分别与音锤 150A相关联,用于监测相关联的音锤150A。这些键传感器310和音锤传感 器410与记录器107A相连接,并且提供表示相关联的黑/白键130的当前 键位置的键位置信号和表示相关联的音锤150A的当前音锤位置的音锤位 置信号。
从图14和15中可以看得更清楚,类似于第一实施例,键传感器310 和音锤传感器410由刚性板300和400支撑着,并且由成对的反射型光电 耦310/410和反射板135/ 145的组合来实施。反射型光电耦310/410能 分辨出0.001毫米数量级的长度变化,因此,可监测范围要长于理论的整个 键行程和理论的整个音锤行程,这类似于第一实施例,因此,为了避免重 复描述,在此不再对其进行描述。
尽管为声学钢琴100A配备了键传感器310和音锤传感器410,但是, 另外的构件也可以由传感器来监测。例如,制音器传感器161可以祐^殳置 在制音器160A上方。制音器传感器161以这样的方式被连接到一刚性板 162上,即,使得制音器传感器与反射板163相对置。如前所述,制音器 160A允许琴弦170A振动并使振动衰减。然而,制音器160A不仅仅在两个
30位置之间被改变。在实际演奏中,演奏者有时使制音器轻轻地接触琴弦
170A,以便给乐音赋予艺术表现。如果制音器传感器161也被安装在声学 风琴100A上,那么,记录器107A就会从制音器传感器161上获得另一种 音乐数据,从而使得演奏更接近原始演奏。
还可为执行单元140A中的顶杆设置一些顶杆传感器164。这些顶杆对 于本领域普通技术人员来说是已知的,它们是执行单元中的重要部件。在 演奏者按压一黑/白键130时,被按压的黑/白键130就提升起相关联的 音锤150A,并驱动音锤150A沿着与执行单元140A相反的方向转动。当顶 杆与相关联的调节按钮(regulating button)相接触时,顶杆就从相关联的音 锤150A逃开,相关联的音锤开始自由地向琴弦170A移动。这样,顶杆就 限定了从音锤150A逃开的时间,并且给记录器107A重要的数据。由于这 个原因,顶杆传感器164被设置在摆击件(whippen)上,用于监测相关联 的顶杆。
尽管图中未示出,但踏板传感器可以监测制音踏板、柔音踏板和持音 踏板(sostenuto pedal )。另外的声音信息可以被赋予这些踏板,数字范围被 分成三个子范围,这些子范围分别被赋予三个踏板。
参照图16,记录器107A包括 一中夹处理器200,简称为"CPU"; 一随机存取存储器,简称为"RAM"; —只读存储器220A,简称为"ROM"; 一操作盘230; —些计时器240; —些模数转换器250a/250b/250c; —内置 存储单元260A; —共享母线系统B。
中央处理器200、随机存取存储器210、只读存储器220A、操作盘230、 计时器240、模数转换器250a/250b/250c和存储单元260A都与共享母线系 统B相连接,从而,中央处理器200能通过共享母线系统B与其它的部件 210 / 220A / 230 / 240 / 250a/250b/250c/260A相互通信。八十八个键传感器 310与模数转换器250a相连,通过该模数转换器把键位置信号转换成数字 的键位置信号。另一方面,八十八个音锤传感器410与另一个模数转换器 250b相连,并且通过该模数转换器250b把音锤位置信号转换成数字的音锤 位置信号。数字的键位置信号和数字的音锤位置信号具有一位串,该位串 的长度足以表示出所述的分辨率。在这种情况下,向当前键位置和当前音 锤位置赋予12位。
如果在记录系统105A中还设置了制音器传感器161和顶杆传感器
31164,那么,制音器传感器161和顶杆传感器164与模数转换器250c相连, 模拟的制音器位置信号和模拟的顶杆位置信号在被中央处理器200获取前 被转换成数字的制音器位置信号和数字的顶杆位置信号。
计算机程序和参数表被存储在只读存储器220A内,随才几存取存储器 210用作一工作存储器。中央处理器200根据计算机程序运行,完成计算机 程序中所表达的任务,从而产生代表在键盘120A上的演奏的MIDI信息的 音乐数据代码。代表着MIDI信息的一组音乐数据代码即MIDI音乐数据代 码被存储在存储单元260A内,并且在重现演奏之前被从存储单元260A转 移到随机存取存储器210。操作盘230、计时器240和存储单元260A的操 作情况与第一实施例中的情况相类似,因此为了简明起见,在此不再对其
进行累述。
当演奏者在声学钢琴IOOA上演奏乐曲时,中央处理器200就根据计算 机程序运行,从而产生MIDI音乐数据代码。中央处理器200周期性地从模 数转换器250a/250b获取代表当前键位置的的一段数据和代表当前音锤位 置的一段数据,并且把这些当前键位置和当前音锤位置写入随机存取存储 器210内。新的当前键位置和新的当前音锤位置被加到已经存储在随机存 取存储器210内的一系列当前键位置和一系列当前音锤位置。中央处理器 200检验这一系列当前键位置,以便确定是否移动了键130。当中央处理器 200发现一黑/白键130的位置发生了改变时,中央处理器200就断定发生 了键移动,并且产生MIDI声音信息,即为要产生和要衰减的乐音产生音符 -起信息和音符-止信息。中央处理器200还在产生MIDI声音信息时起动计 时器240,在产生下一个MIDI声音信息时停止计时器。中央处理器200测 量两个MIDI事件之间的消逝时间,并产生代表该消逝时间的持续时间数据 代码。这组代表着演奏的MIDI音乐数据代码与代表键轨迹和音锤轨迹的声 音信息一起被存储在一标准的MIDI文件内。在下文中将详细描述4建轨迹和 音锤轨迹的声音信息。
在这种情况下,中央处理器200还产生代表当前键位置和当前音锤位 置的声音信息。在用于重现演奏的乐器中未被使用的空闲格式(idle format) 被赋予代表当前键位置和当前音锤位置的声音信息,代表当前键位置和当 前音锤位置的MIDI音乐数据代码与代表音符-开和音符-止以及消逝时间的 MIDI音乐数据一起被存储在存储单元260A内产生的标准MIDI文件中。这些空闲格式将在下文中被详细描述。位置数据
图17表示出了分别被赋予键移动和音锤移动的空闲格式。尽管这种格式被赋予给MIDI协议中的复调键压和控制变化,但在自动弹奏钢琴(通过这种钢琴来重现演奏)中,复调的键压和控制变化是无用的。换句话说,这些格式在自动弹奏钢琴中是空闲的。由于这个原因,这些空闲格式被赋给基本位置数据和延伸位置数据,这将在下文中被详细描述。
基本的定位数据和延伸位置数据以不同的分辨率表示当前^l定位置和当前音锤位置。 一个基本位置数据粗略表示位于休息位置和端部位置之间的键轨迹上的当前键位置,或表示位于休息位置和端部位置之间的音锤轨迹上的当前音锤位置,并且分辨率相对较低。换句话说,位于^f木息位置和端部位置之间的键轨迹的一特定区域或位于休息位置和端部位置之间的音锤轨迹的 一特定区域由这段基本位置数据来粗略地规定。
另 一方面, 一段延伸位置数据以相对较高的分辨率在端部位置和休息位置之间的特定区域中表示当前键位置或者以相对较低的分辨率在过移区域中表示当前键位置。否则,这段延伸位置数据以相对较高的分辨率在端部位置和休息位置之间的特定区域中表示当前键位置或者以相对较低的分辨率在过移区域中表示当前音锤位置。因此,这段延伸位置数据不仅描述了在休息位置和端部位置之间的键行程/音锤行程,而且还描述了在过移区域中的键行程/音锤行程。由于基本位置数据和延伸位置数据在当前键位置和当前音锤位置之间被共享,因此,与第一实施例相类似,这两个数字范围分别被赋予黑/白键130和音锤150A。
把图17所示的空闲格式与图5所示的空闲格式相比较,可以知道,多段基本位置数据和多段延伸位置数据也被编码成这样的格式,即,这些格式通常被赋予MIDI协议中的复调键压和控制变化。换句话说,第一、第二和第三字节中的位串与第一实施例中所描述的是相同的。由于这个原因,为了简明起见,在此不再描述图17所示的空闲格式。
尽管第三字节[xx]能表达128个十六进制数,但是,由第三字节[xx]所的数字范围被分成两个数字子范围,即从
至[30h],从[40h]至[70h],这两个数字子范围分别被赋予当前键位置和当前音锤位置,如图18所示。基本位置数据在理论上能占据从
至[7Fh]的数字范围。数字范围包含两个数字子范围
至[30h]以及[40h]至[70h],这两个数字子范围被赋予黑/白 键130和音锤150A。另 一方面,延伸位置数据占据
至[7Fh]的数字范围, 数字范围
至[7Fh]在黑/白键130和音锤150A之间被共享。可以根据 由先前的基本位置数据的第三字节[xx]所表示的数字子范围
-[30h]或 [40h]-[70h],确定出第三字节[yy]表示当前键位置还是表示当前音锤位置。
假设第三字节[xx]落入数字子范围
至[30h]内。中央处理器200注 意到粗略表达当前键位置的第三字节[xx],并解释为相关联的延伸位置精确 地表达当前键位置。另一方面,如果中央处理器200发现第三字节[xx]位于 从[40h]到[70h]的数字子范围内,那么,中央处理器200就断定该第三字节 [xx]粗略表达当前音锤位置,并且相关联的延伸位置数据精确地确定当前音 锤位置。
可以理解的是,声音信息[Ankkxx]在多个构件即黑/白键130和音锤 150A之间被共享,不同的数字子范围分别被赋予黑/白键130和音锤150A。 从对声音信息的节约使用方面来看,这个特征是有利的。另一个优点在于 共享的声音信息[An kk xx]使得编辑器容易修改成组的MIDI音乐数据代码。 例如,假设编辑器要修改某种特定类型的乐器的一组MIDI音乐数据代码, 该乐器的数据处理器不能通过基本位置数据和延伸位置数据来控制操作 器。编辑器只需使这些声音信息[Ankkxx]不能使用。然后,数据处理器就 忽略声音信息[Ankkxx]。于是,共享声音信息就使得编辑工作非常容易。 假设另外的一个编辑器要从一音乐通道中除去某一特定寄存器中的一些乐 音。编辑器通过利用音符号就能容易地选择音符。编辑器只比较第二字节[kk] 和用于黑/白键130和音锤150A的特定寄存器内的音符号。然后,编辑器 同时从这些MIDI音乐数据代码中不仅找到黑/白键130的基本位置数据而 且找到相关联的延伸位置数据。
数字子范围[Olh]到[30h]在另 一个数字子范围[40h]到[70h]之前。类似 地,黑/白键首先被移动,然后音锤跟随着键的动作而移动。这样,这些 数字子范围就与执行的顺序相一致。这个特征也是有利的,因为编辑器容 易使数字子范围与数字子范围相互联系起来。
例1
图19A和19B表示出了一条音锤轨迹PL5和一条4建專九迹PL6。音锤 150A从休息位置开始,该休息位置位于O毫米处,并且移过端部位置,所
34述的端部位置位于48毫米处。音锤到达最大的实际音锤行程。然后,音锤 150A开始向休息位置返回。音锤150A经过端部位置,然后在端位置与休 息位置之间的一个特定位置处停止。
另一方面,黑/白键130经过一当前音锤位置,该当前音锤位置位于 距休息位置0.225毫米处,然后移过端部位置。黑/白键130经过另一个特 定位置,该特定位置位于距端部位置10.8毫米处,并到达最大的实际的键 行程。黑/白键130朝休息位置返回,并且在休息位置和端部位置之间的 一个位置处停止。
比较图19A和19B与图6A和6B,音锤轨迹PL5和键轨迹PL6分别与 音锤轨迹PL1和键轨迹PL2相同。由于这个原因,为了简明起见,在此不 再对其进行描述。
音锤轨迹PL5上的一 当前音锤位置由一基本位置数据[An kk xx]和一相 关联的延伸位置数据[Bn 10 yy]来表示。键轨迹PL6上的一 当前键位置也由 一基本位置数据[Ankkxx]和一相关联的延伸位置数据[Bn 10yy]来表示。尽 管第三字节能表示128个从
到[7Fh]的十六进制数,但是, 一数字子范 围[40h]到[70h]被赋予音锤150A,另一数字子范围
到[30h]被赋予黑/ 白键130。
第三字节[yy]也表示128个从
到[7Fh]的十六进制数。然而,该数 字范围在音锤150A和黑/白键130之间被共享。延伸位置数据[Bn 10 yy] 跟随着基本位置数据[An kk xx],根据第三字节[xx]的数字子范围,把公共 的数字范围应用于音锤150A和黑/白键130中的一个。这样,借助于分开 的数字子范围, 一段基本位置数据[An kk xx]和相关联的延伸位置数据[Bn 10 yy]就能表示当前音锤位置或当前键位置。
中央处理器200根据第三字节[xx]的十六进制数,以不同的方式解释延 伸位置数据[Bn 10 yy]的第三字节。当第三字节[xx]表示大于[40h]小于[70h] 的一个十六进制数或表示一个大于
小于[30h]的一个十六进制数时,一 个相对较高的分辨率就被应用于第三字节[yy]的十六进制数。另一方面,当 第三字节[xx]表示十六进制数[40h]/[70h]或十六进制数
/[30h]时, 一个相 对较低的分辨率就被应用于第三字节[yy]的十六进制数。音锤150A的相对 较高的分辨率为1 /64毫米,黑/白键130的相对较高的分辨率为0.225毫 米。另一方面,音锤150A的相对较低的分辨率为1/4毫米,黑/白键130
35的相对较低的分辨率为0.225/64毫米。因此,基本位置数椐[An kk xx]和延伸位置数据[Bn kk yy]的设计方式与第一实施例中的设计方式相同。由于这个原因,基本位置数据[An kk xx]和延伸位置数据[Bn 10 yy]被列表在图20A和20B中,并且不再作详细描述。第二例
在第一例中,尽管只有一种类型的声音信息[Bn 10yy]被赋予延伸位置数据,以便表示正偏离量和负偏离量,但是,两种类型的声音信息[BnlOyy〗和[Bn 11 yy]被赋予延伸位置数据,以便分别表示正偏离量和负偏离量。图21A和21B表示出了第一例和第二例之间的区别。
现在假设一音锤和一黑/白键130在图22A和22B所示的一条音锤轨迹PL7和一条键轨迹PL8上被移动, 一段基本位置数据[An kk xx]和一段相关联的延伸位置数据[Bn 10 yy]或[Bn qq yy]把音锤150A和黑/白键130定位在一 当前音锤位置和一 当前键位置,这与第 一实施例中的第三例相类似。由于这个原因,在图23A和23B中分别把基本位置数据[Ankkxx]的特征和延伸位置数据[Bn 10 yy]和[Bn 11 yy]的特征列出,并且没有进4亍详细描述。比较图23A、 23B与图IIA、 IIB,可以知道,基本位置数据[An kk xx]和延伸位置数据[Bn 10 yy]以及[Bn 11 yy]表示出当前音锤位置和当前4定位置,这与第一实施例中的第三例相类似,为了简明起见,省去了对其描述。
尽管对于休息位置和端部/边界键位置之间的当前音锤位置和当前键位置来说,延伸位置数据[Bn 10 yy]和[Bn 11 yy]都是可供使用的,但是如图24所示,在第二例中只有延伸位置数据[Bn 10 yy]被用于偏离由第三字节[xx]所表示的位置的偏离量。延伸位置数据[Bn 11 yy]只表示从休息位置
或[40h]的负偏离量或负减量。音锤150A和黑/白键130位于基于基本位置数据[An kk xx]和相关联的延伸位置数据[Bn 10 yy]的一当前音锤位置/当前键位置。这个规则与第一实施例中的第三例相同,为了避免不必要的重复,在此不再对其进行描述。
从前面的描述可知,第三字节[xx]的数字范围被分成多个个数字子范围,这些数字子范围分别被赋予不同类型的构件。在第一例和第二例中,两种类型的构件即黑/白键130和音锤150A分别被键传感器310和音锤传'感器410所监测。当多于两种类型的构件要被多个组传感器监测时,第三字节[xx]的数字范围就被分成与多个构件数目相等的多个数字子范围,并且把这些数字子范围分别赋予对应的多个类型的构件。如果类似于黑/白键
130和音锤150A那样,制音器160被制音器传感器161监测,那么,数字 子范围
到[30h], [40h]到[70h], [71h]到[7Fh]可以分别被贝武予黑/白键 130、音锤150A和制音器160A。这样,只有一种类型的声音信息在多种类 型的构件之间被共享。这就导致前面所详细描述的一些优点。
本发明并不局限于具有内置记录系统105A的复合型^l建盘乐器。记录系 统105A也可以与声学钢琴IOOA分开制造。制造商通过利用分开式的记录 系统105A可以把一声学钢琴翻新成复合型^:盘乐器。
记录系统105A的操作方式与记录系统105相类似,因此为了简明起见, 在下文中不再对其进行描述。
第三实施例
图25表示出了实施本发明的另一种复合型的键盘乐器,图26, 27表 示出了设置在这种复合型键盘乐器中的黑/白键130和一音锤150B。
执行第三实施例的复合型键盘乐器大体上包括一声学钢琴100B和一 记录系统105B。记录系统105B被安装在声学钢琴100B内,该记录系统产 生一些表示出在声学钢琴100B上的演奏的音乐数据代码。
声学钢琴100B包括 一钢琴箱110B、一键盘120B、一些^^丸行单元140B、 一些音锤150B、 一些制音器160B、 一些琴弦170B和踏板系统180B。这些 部件110B- 170B与钢琴箱110、键盘120、执行机构140、音锤150、制音 器160和琴弦170相类似。由于这个原因,这些部件110B-170B被标上了 与部件110- 170相对应的附图标记,在此不再对这些部件进^f于详细描述。
踏板系统180B包括一制音踏板、 一柔音踏板和一消音踏板(muffler pedal),即三块踏板182,以及分别与这三块踏板相连的一些连接件184。 这三块踏板182对于本领域普通技术人员来说是已知的,由于这个原因, 在下文中不再对其进行描述。
参照图28,记录系统105B包括一记录器107B、 一些键传感器310和 一些音锤传感器410。这些键传感器310分别与黑/白键130相关联,用于 监测相关联的黑/白键130。这些音锤传感器410也分别与音锤150B相关 联,用于监测相关联的音锤150B。这些键传感器310和音锤传感器410与 记录器107B相连接,并且提供表示相关联的黑/白键130的当前键位置的 键位置信号和表示相关联的音锤150B的当前音锤位置的信号。从图26和27中可以看得更清楚,类似于第一实施例,4建传感器310和音锤传感器410由刚性板300和400支撑着,并且由成对的反射型光电耦310/410和反射板135 / 145的组合来实施。反射型光电耦310/410能分辨出0.001毫米数量级的长度变化。因此,键传感器310和音锤传感器410与第一实施例中的相类似,为了避免重复描述,在此不再对其进行描述。
尽管为声学钢琴100B配备了键传感器310和音锤传感器410,但是,另外一种类型的构件也可以由传感器来监测。例如,制音器传感器161可以被设置在制音器160B上方。制音器传感器161以这样的方式被连接到一刚性板162上,即,使得制音器传感器与反射板163相对置。如前所述,制音器160B允许琴弦170B振动并使振动衰减。然而,制音器160B不仅仅在两个位置之间被改变。在实际演奏中,演奏者有时使制音器轻轻地接触琴弦170B,以便给乐音赋予艺术表现。如果制音器传感器161也被安装在声学风琴100B上,那么,记录器107B就会从制音传感器161上获得另外的一种音乐数据,从而使得演奏更接近原始演奏。
还可以为这些踏板182设置一些踏板传感器186。这些踏板传感器186监测踏板移动,并且向记录器107B提供踏板位置信号。演奏者在他/她的演奏中有时选择性地踩这些踏板182,以便赋予这些乐音以一些效果。尽管演奏者通常把踏板压到端部位置,但是,他/她有时把踏板182保持在休息位置和端部位置之间的某一特定位置。当演奏者踩下制音踏板时,例如,这些制音器160B最好与相关联的琴弦170B间隔开,并且声学钢琴乐音被加长。另一方面,当演奏者把制音踏板保持在特定位置时,制音器160B就轻轻地与琴弦170B保持接触,从而与在制音踏板被踩压到端部位置的情况相比,产生了不同的声学钢琴乐音。因此,踏板行程对声学钢琴乐音产生影响。如果为三块踏板设置踏板传感器186,那么,记录器107B就能确定出踏板轨迹,从而能赋予声学乐音一些效果。
参照图28,记录器107B包括记录器107B包括 一中央处理器200;一随机存取存储器210; —只读存储器220B; —操作盘230; —些计时器240; —些模数转换器250a/250b/250c; —内置存储单元260B; —共享母线系统B。
中央处理器200、随机存取存储器210、只读存储器220B、操作盘230、计时器240、模数转换器250a/250b/250c和存储单元260B都与共享母线系统B相连接,从而,中央处理器200能通过共享母线系统B与其它的部件 210 / 220B / 230 / 240 / 250a/250b/250c/260B相互通信。八十八个4定传感器 310与模数转换器250a相连,通过该模数转换器把键位置信号转换成数字 的键位置信号。另一方面,八十八个音锤传感器410与另一模数转换器250b 相连,并且通过该模数转换器250b把音锤位置信号转换成数字的音锤位置 信号。数字的键位置信号和数字的音锤位置信号具有一位串,该位串的长 度足以表示出所述的分辨率。在这种情况下,向当前键位置和当前音锤位 置赋予12位。
如果在记录系统105B中还设置了制音器传感器161和踏板传感器186, 那么,制音器传感器161和踏板传感器186与模数转换器250c相连,模拟 的制音器位置信号和模拟的踏板位置信号在被中央处理器200获取前被转 换成数字的制音器位置信号和数字的踏板位置信号。
计算机程序和参数表被存储在只读存储器220B内,随机存取存储器 210用作一工作存储器。中央处理器200根据计算机程序运行,完成计算机 程序中所表达的任务,从而产生代表在键盘120上的演奏的MIDI信息的音 乐数据代码。代表着MIDI信息的一组音乐数据代码即MIDI音乐数据代码 被存储在存储单元260B内,并且在进行演奏复制之前被从存储单元260B 转移到随机存取存储器210。操作盘230、计时器240和存储单元260B的 操作情况与第一实施例中的情况相类似,因此为了简明起见,在此不再对 其进行累述。
当演奏者在声学钢琴IOOB上演奏乐曲时,中央处理器200就根据计算 机程序运行,从而产生MIDI音乐数据代码。中央处理器200周期性地从模 数转换器250a/250b获取代表当前键位置的多段数据和代表当前音锤位置 的多段数据,并且把这些当前键位置和当前音锤位置写入随机存取存储器 210内。新的当前键位置和新的当前音锤位置被加到已经存储在随机存取存 储器210内的一系列当前键位置和一系列当前音锤位置。
中央处理器200检验这一系列当前键位置,以便确定是否移动了键 130。当中央处理器200发现一黑/白键130的位置发生了改变时,中央处 理器200就断定发生了键移动,并且产生MIDI声音信息,为要产生和要衰 减的乐音产生音符-起信息和音符-止信息。中央处理器200还在产生MIDI 声音信息时起动计时器240,在产生下一个MIDI声音信息时停止计时器。中央处理器200测量两个MIDI事件之间的消逝时间,并产生代表该消逝时 间的持续时间数据代码。这组些代表着演奏的MIDI音乐数据代码被存储在 一标准的MIDI文件内。
在这种情况下,中央处理器200还产生代表当前键位置和当前音锤位 置的声音信息。空闲格式还被赋予代表当前键位置和当前音锤位置的声音 信息,代表当前键位置和当前音锤位置的MIDI音乐数据代码与代表音符-起和音符_止以及消逝时间的MIDI音乐数据一起被存储在存储单元260B内 产生的标准MIDI文件中。这些空闲格式将在下文中被详细描述。
位置数据
图29表示出了一系列基本位置数据/延伸位置数据。与第一实施例和 第二实施例中的相类似, 一段基本位置数据和 一段相关联的延伸位置数据 表示在键轨迹上的一当前键位置或在音锤轨迹上的一当前音锤位置。通过 这段基本位置数据把黑/白键130或音锤150B定位于粗略的键位置或粗略 音锤位置,相关联的延伸位置数据把偏离该粗略的键位置或粗略的音锤位 置的偏离量提供给黑/白键130或音锤150B。当黑/白键130或音锤150B 被定位于休息位置和端部位置之间的粗略的键位置或粗略的音锤位置时, 就以高分辨率给出偏离量。然而,当黑/白4建130或音锤150移过休息位 置或端部位置时,就以低分辨率给出该偏离量。
第一例
如图29所示,基本位置数据以空闲格式[An kk xx]被编码,延伸位置 数据以空闲格式[BnlOyy]被编码。第一字节[An],第二字节[kk],第三字节 [xx]与第一、第二实施例中的基本位置数据的第一字节、第二字节、第三字 节相同。第一字节[Bn],第二字节[IO],第三字节[yy]与第一、第二实施例 中的延伸位置数据的第一字节、第二字节、第三字节相同。由于这个原因, 为了简明起见,在此省去对空闲格式的描述。
空闲格式的使用使得编辑变得容易快速。例如,假设设计者希望把键 轨迹转移到目前表示的轨迹的任一侧。那么,设计者就搜索这些空闲格式 的MIDI音乐数据,并且把第三字节[xx]和/或[yy]从先前的十六进制数改 变成新的十六进制数。因此对于编辑工作而言,使用空闲格式是有利的。
图30A和30B表示出了 一条音锤轨迹PL9和一条键轨迹PLIO。被赋 予音锤150B的第三字节[xx]的数字范围从[40h]至[70h],数字范围
到[30h]被赋予黑/白键130。
理论的整个音锤行程为48毫米,休息位置和端部位置位于0毫米和48毫米处。在休息位置和端部位置之间的1毫米的音锤行程等于由第三字节[xx]表示的十六进制数的每个增量。另一方面,偏离量在休息位置和端部位置之间以1/64毫米的间隔表示,在过移区域中以1/4毫米的间隔表示。
另一方面,理论的整个键行程约为10毫米,由第三字节[xx]所表示的十六进制数的每个增量等价于0.225毫米。偏离量在休息位置和端部位置之间以0.225/64毫米的间隔表示,在过移区域中以0.225/4毫米的间隔表示。
比较图30A和30B与图6A和6B,图30A所示的音锤轨迹和图30B所示的键轨迹分别与图6A所示的音锤轨迹和图6B所示的键轨迹相同,在第一实施例和第三实施例之间,理论的整个音锤行程和理论的整个键行程是相等的。数据位置系统的这些特征与第一实施例中的数据位置系统的特征相同,如图31A和31B所示,为了简明起见,在此不再对其进行描述。
第二例
如上所述,在第一例中,基本位置数据[Ankkxx]只伴随有一种类型的延伸位置数据[Bn lOyy],偏离量由一段延伸位置数据[Bn 10 yy]表示。这意味着只有一预定的节距(pitch)或多个预定的节距表示从粗略的音锤位置和从粗略的键位置的偏离量。音锤或键并不总是在任何一个尺度(scale)标记处被发现,所述尺度仅由一种类型的延伸位置数据来确定。然而,多于一种类型的延伸位置数据使得可以把黑/白键130或音锤150B定位在多个不同尺度中的一个尺度的一标记处,该多个不同尺度由多于一种类型的延伸位置数据来表示。从这个方面来看,利用一段基本位置数据和相关联的延伸位置数据(其节距互不相同),黑/白键130或音锤150B被精确地定位在当前键位置或当前音锤位置。这就意味着一段基本位置数据伴随有多于一段的延伸位置数据,它们分别可由分辨器区分开。当然,如果黑/白键130或音锤150B在仅由一种类型的延伸位置数据所表示的尺度标记处被发现,那么,这段基本位置数据和相关联的单段延伸位置数据表示当前键位置或当前音锤位置,这与第一例相类似。
图32A表示出了一组延伸位置数据,这些段数据跟随着一段基本位置数据[Ankkxx]。 一段第一延伸位置数据以上述格式[Bn 10 yy]被编码,并且以分辨率0.225/64毫米,0.225/4毫米或1/64毫米,1 / 4毫米表示出从粗略
41的键位置或粗略的音锤位置的偏离量。因此,这段第一延伸位置数据[BnlO yy]把黑/白键130或音锤150B定位在一相当精确的键位置或一相当精确 的音锤位置。 一段第二延伸位置数据以另一种格式[Bn30yy,]被编码,第一 字节[Bn]和第二字节[30]表示第二延伸位置数据。第三字节[yy,]表示从相当 精确的键位置或相当精确的音锤位置的偏离量,并且所具有的分辨率要高 于第一延伸位置数据[Bn 10yy]的分辨率。因此,这段第二延伸位置数据[Bn 30 yy,]就把黑/白键130或音锤150B定位在一个很精确的键位置或一个很 精确的音锤位置。 一段第三延伸位置数据以又一种格式[Bn 11 zz]被编码, 第一字节[Bn]和第二字节[ll]表示第三延伸位置数据。第三字节[zz]表示从 所述很精确的键位置或很精确的音锤位置的偏离量,并且其分辨率要高于 第二延伸位置数据[Bn30yy,]的分辨率。因此,这段第三延伸位置数据[Bn 11 zz]就把黑/白键130或音锤150B确定在一个非常精确的键位置或一个非常 精确的音锤位置。 一段第四延伸位置数据以又一种格式[Bn31 zz,皮编码, 第一字节[Bn]和第二字节[31]表示第四延伸位置数据。第三字节[zz,]表示从 所述非常精确的键位置或非常精确的音锤位置的偏离量,并且其分辨率要 高于第三延伸位置数据的分辨率。因此,这段第四延伸位置数据[Bn31 zz,] 就把黑/白键130或音锤150B确定在一个极精确的键位置或一个极精确的 音锤位置。
图32B表示出了另外一组的延伸位置数据,这组数据跟随着一段基本 位置数据[Ankkxx]。第一、第二、第三延伸位置数据共享第三字节的数字 范围即
到[7Fh]。具体地说,第三字节的数字范围被分成多个数字子范 围,这些数字子范围分别被赋予第一延伸位置数据、第二延伸位置数据、 第三延伸位置数据,…,基本延伸位置数据[An kk xx]把黑/白键130或音 锤150B定位在一粗略的键位置或一粗略的音锤位置。第一延伸位置数据表 示从该粗略的键位置或粗略的音锤位置的偏离量,并且其分辨率要高于基 本位置数据的分辨率,从而把黑/白键130或音锤150B定位在一个相当精 确的键位置或一个相当精确的音锤位置。第二延伸位置数据表示从该相当 精确的键位置或相当精确的音锤位置的偏离量,并且其分辨率要高于第一 延伸位置数据的分辨率。这样,第二延伸位置数据就把黑/白键130或音 锤150B定位在一个很精确的键位置或一个很精确的音锤位置。第三延伸位 置数据表示从所述很精确的键位置或很精确的音锤位置的偏离量,并且其分辨率要高于第二延伸位置数据的分辨率,从而这段第三延伸位置数据就
把黑/白键130或音锤150B确定在一个非常精确的键位置或一个非常精确 的音锤位置。
可以知道,延伸位置数据使得可以精确地表示当前键位置和当前音锤 位置。因此,伴随有延伸位置数据的基本位置数据要比单一类型的位置数 据更可取。
第三例
图33A, 33B表示出了第一和第三例中所采用的基本构思。尽管128 个十六进制数可被赋予第一例中的正偏离量和负偏离量两者,如图32A所 示,但是,128个十六进制数被赋予第三例中的正偏离量和负偏离量中的每 一个,如图32B所示。这就导致分辨率要比第一例中的分辨率高两倍。为 了把128个十六进制数赋予正偏离量和负偏离量中的每一个,这些段延伸 位置数据以两种格式即[Bn 10yy]和[Bn 11 yy]被编码。
图34A和34B表示出了音锤轨迹和基本位置数据/延伸位置数据之间 的关系以及键轨迹和基本位置数据/延伸位置数据之间的关系。与第 一实 施例中的第三例相似。理论的整个音锤行程和理论的整个键行程分别是48 毫米和10毫米,第三字节[xx]的数字范围包含两个子范围,即[40h]至[70h],
至[7Fh],这两个数字子范围分别被赋予音锤150B和黑/白键130。由 于这个原因,基本位置数据/延伸位置数据的特征与第一实施例中的第三 例中的基本位置数据/延伸位置数据的特征是相同的,如图35A和35B所 示。
尽管一段基本位置数据[An kk xx]和一段相关联的延伸位置数据[Bn 10 yy]或[Bn 11 yy]之间的任一组合能表示休息位置和端部位置之间的一 当前 音锤位置或一 当前键位置,但是, 一段基本位置数据[An kk xx]和一段相关 联的延伸位置数据[Bn 10 yy]之间的组合可以被用于休息位置和端部位置之 间的当前音锤位置/当前^:位置以及端部位置外侧的过移区域,如图36所 示。在这种情况中, 一段基本位置数据[Ankkxx]和一段相关联的延伸位置 数据[Bn 11 yy]的另一种组合被用于表示休息位置外侧过移区域中的一当前 音锤位置或一当前键位置。
可以知道,延伸位置数据跟随着基本位置数据,该基本位置数据表示 粗略的音锤位置或粗略的键位置,并且该延伸位置数据表示出从该粗略的音锤位置或粗略的键位置的偏离量,且所具有的分辨率要高于基本位置数
据的分辨率。于是,音锤150B或黑/白键130就被精确地定位在音锤轨迹上的当前音锤位置或键轨迹上的当前键位置。重现演奏
对于图37所示的自动弹奏钢琴而言,可以获得表示演奏的一组MIDI音乐数据代码。自动弹奏钢琴是一声学钢琴300和一 自动演奏系统400的组合体。由于自动弹奏钢琴被配备有记录系统105, 105A或105B,因此,图37中表示出了一些音锤传感器和键传感器。声学钢琴300类似于声学钢琴100,从而声学钢琴300中的构件采用与声学钢琴100中对应构件的一些附图标记来标记。
自动演奏系统400包括 一控制器410; —排电磁线圏操作的键驱动器420,这些键驱动器内置有柱塞传感器430。电磁线圈操作的键驱动器420被设置在键盘120的黑/白键122的下部,并且包括对应的柱塞422,对应的电》兹线圈424,以及内置的柱塞传感器430。柱塞422可从电磁线圈中突出,也可以缩回到电磁线圏内,内置的柱塞传感器430用于监测相关联的柱塞422,以便产生代表当前柱塞位置或柱塞行程的柱塞位置信号。控制器410具有数据处理能力,MIDI音乐数据代码被供给到控制器410,以便进行重现演奏。
控制器410分析这些MIDI音乐数据代码,以便确定要被移动的柱塞422的柱塞轨迹。当控制器410确定出柱塞轨迹时,控制器410就把一驱动信号供给到电磁线圏424。驱动信号会产生;兹场,从而在柱塞422上施加》兹作用力。柱塞422开始从励磁的电磁线圈424突出,并且推动相关联的黑/白键122的后部。这样,电磁线圈操作的键驱动器420就会在没有人进行演奏的情况下使键进行移动。当柱塞422从相关联的电磁线圈424突出时,柱塞传感器430就把当前柱塞位置通报给控制器410,控制器410周期性地比较当前柱塞位置与柱塞轨迹上的目标柱塞位置,以便检查柱塞422是否在所述轨迹上运行。当答案是肯定时,控制器410就保持驱动信号不变。另一方面,如果答案是否定时,那么,控制器410就改变驱动信号的负载比(duty ratio),以便迫使柱塞422精确地沿着所述轨迹移动。
在重现演奏过程中,基本位置和延伸位置数据的使用情况如下。当使用者命令控制器410根据一组MIDI音乐数据代码来重现演奏时,MIDI音乐数据代码就被转移到控制器410,并且被存储在一工作存储器内。控制器 410按顺序从工作存储器获取MIDI音乐数据代码。当由持续时间数据代码
所表示的时间段At终止时,控制器就开始分析相应的声音信息。
现在假设控制器410从工作存储器获取一音符-起信息,那么,控制器 就确定出要被移动的黑/白键122,并且从工作存储器中读出基本位置数据 和相关联的延伸位置数据。控制器410对这些基本位置数据和相关联的延 伸位置数据进行分析,以便根据这些基本位置数据/延伸位置数据,确定 出目标键轨迹和目标音锤轨迹。控制器410还确定出目标柱塞轨迹,柱塞 轨迹产生沿着目标键轨迹的键移动,键移动又会产生沿着目标音锤轨迹的 音锤移动。于是,控制器410根据基本位置数据和延伸位置数据确定出目 标柱塞轨迹。当目标柱塞轨迹被确定时,控制器410就把驱动信号供给到 电f兹线圏424,该驱动信号会产生柱塞移动。当柱塞422>^人电》兹线圏424突 出时,柱塞传感器430就把当前柱塞位置通报给控制器410,于是控制器 410就通过反馈控制迫使柱塞422在目标柱塞轨迹上进行移动。柱塞422在 目标柱塞轨迹上进行移动,从而使相关联的黑/白键122在目标键轨迹上 进行移动,黑/白键122在目标键轨迹上的移动会产生沿着目标音锤轨迹 的音锤移动。因此,音锤150就类似于原始演奏那样进行移动。这就使得
声学乐音的响度类似于原始演奏的乐音响度。
可以知道,通过基本位置数据和延伸位置数据可以在重现演奏过程中 再现原始的声学乐音。这就使得这种演奏与原始的演奏是相同的。
尽管已经描述和图示了本发明的一些具体实施例,但是,对于本领域 普通技术人员来说,很明显,在不脱离本发明的构思和范围的情况下,可 以对本发明作出各种变型和改变。
复合型键盘乐器可以按照直立式钢琴、静音钢琴或羽管键琴 (harpsichord)来制造。此外,本发明适用于任何类型的乐器,例如打击乐 器。作为打击乐器的一个例子是钢片琴(celesta)。
例如,当前键"位置"和当前音锤"位置"并限制本发明中的技术范 围。对于代表乐器的移动部件的任何物理量而言,都可获得声音信息[Ankk xx]和[Bn 10 yy]。声音信息[An kk xx]和[Bn 10 yy]可以相对较低的分辨率和 以相对较高的分辨率表示出移动部件例如黑/白键130、音锤150或制音器 160的速度。另一方面,声音信息[Ankkxx]和[Bn 10yy]可以相对较低的分辨率和以相对较高的分辨率表示出移动部件加速度。
MIDI协议也并不限制本发明的技术范围。也可以用其它的协议来表示 这些要被记录的音乐。
状态字节[An]和[Bn]并不限制本发明的技术范围。可以采用其它的状态 字节,只要其它的状态字节在被供给MIDI音乐数据代码的乐器中不被利 用。
理论的整个音锤行程的值和理论的整个键行程的值也只是例子而已。 如果记录器被安装在另 一种型式的钢琴中,理论的整个音锤行程和理论的 整个键行程与实施例中所描述的是不同的,因此,增量/减量或正偏离量 /负偏离量与这些实施例中所描述的是不同的。
在上述实施例中,休息位置外侧的分辨率等于端部位置或边界键位置
外侧的分辨率。这个特征并不限制本发明的技术范围。休息位置外侧的分 辨率可以不同于端部位置或边界键位置外侧的分辨率。
数值子范围
至[30h]和[40h]至[70h]并不限制本发明的技术范围。这 些数字子范围取决于理论的整个键行程/理论的整个音锤行程以及所需的 分辨率。如果理论的行程要窄于黑/白键130或音锤150的行程,那么,
这些数字子范围就可以被缩窄。
一段基本位置可以不伴随有任何的由附图标记Bl, B2, B3所表示的 延伸位置数据(见图29 ), —段延伸位置数据可以不跟随着一段由附图标记 El, E表示的基本位置数据。术语"A时间,,是指距先前事件和对应的基 本位置数据或对应的延伸位置数据所经过的时间,符号"AT"表示消近的 时间,基本位置数据Bl和B2表明黑/白键[kk]或音锤[kk]在从先前事件经 过AT时间之后将位于在当前键位置[xx]或当前音锤位置[xx]。
尽管基本位置数据Bl和B2粗略地把黑/白键130或音锤150B定位 在键轨迹或音锤轨迹上,但是,在键轨迹/音锤轨迹的特定段内允许这种 粗略的表达。
基本位置数据B3被延伸位置数据E1和E2跟随着。可发现黑/白4走[kk] 或音锤[kk]在从先前事件经过AT时间之后将处在由第三字节[xx]和延伸位 置数据E1的第三字节[yy]所表示的当前键位置处,然后在从先前事件经过 'AT时间之后将处于由第三字节[xx]和下一段延伸位置数据E2的第三字节 [yy]所表示的当前键位置。延伸位置数据E2的消逝时间AT要长于延伸位
46置数据El的消逝时间AT。因此,延伸位置数据连续地以简单的方式确定出当前键位置或当前键位置。
基本数据和延伸数据可表示另外一种类型的物理量,例如速度或加速度。对于移动部件的当前状态而言,通常需要速度和加速度。实际上,键移动和音锤移动是不仅根据键位置/音锤位置而且根据键速度/音锤速度以及键加速度/音锤加速度来确定的。从这些位置来计算出速度和加速度。速度和加速度可以通过一适当的传感器来测量,加速度/位置或位置/速度可以从速度或加速度来计算出。
在前面描述的实施例中,当黑/白键130或音锤150/ 150A/ 150B移过休息位置或端部位置时,分辨率就被降低,以便覆盖相当长的过移区域。
然而,只要有多个十六进制数被赋予过移区域,过移区域中的分辨率就可以高于休息位置和端部位置之间的通常区域中的分辨率。
权利要求中的用语与实施例中的构件的相互对应关系如下。黑/白键130、执行单元140/ 140A/140B,音锤150/ 150A/ 150B,制音器160/160A/160B,琴弦170/ 170A/170B,这些作为一个整体构成了 "乐音产生系统"。每个黑/白键130、相关联的执行单元140/ 140A/140B,相关联的音锤150/ 150A/150B和相关联的制音器160/ 160A/160B组合成"连接件(linkworks)"。琴弦170 / 170A / 170B作为一个整体构成"乐音产生子系统"。每块踏板182,相关联的连接件184和键盘120或相关联的制音器160/ 160A/ 160B也组合成"连接件"。键位置信号和音锤位置信号,制音器位置信号或顶杆位置信号用作"监测信号"。"物理量"是指长度、速度或加速度。中央处理器200、随机存取存储器210,只读存储器220,计时器240,模数转换器250a/250b/250c和母线系统B作为 一个整体构成"数据处理单元"。黑/白键130,音锤150/ 150A/150B,制音器160/ 160A/160B或顶杆用作"特定的构件"。
记录系统105 / 105A/105B用作"音乐数据产生器"。存储单元260/260A/260B对应于"音乐数据源"。
当黑/白键130对应于"构件"时,音锤150/ 150A/150B就用作"其它构件"。键位置信号和音锤位置信号分别对应于"监测信号"和"其它监测信号,,,相应地,键位置或键行程和音锤位置或音锤行程分别对应于"物理量"和"另外的一个物理量"。
声音信息[An kk xx]和声音信息[Bn 10 yy] / [Bn 11 yy],声音信息[An kkxx]和声音信息[Bn 10 yy]/[Bn 30 yy,] / [Bn 11 zz]/[Bn 31 zz,]或声音信息 [An kk xx]和声音信息[Bn 10 yy]/[Bn 10 yy,]/[Bn 10 yy"]是音乐数据代码的 子组,第三字节[xx]和第三字节[yy]/[yy,]/[zz]/[zz,]/[yy"]分别具有第一位串和 第二位串。
权利要求
1、一种用于产生乐音的乐器,包括一乐音产生系统,该乐音产生系统包括多个连接件(130,140A,150A,160A),这些连接件选择性地被驱动,以便指定要被产生的所述乐音的音高,并且具有对应的构件(130)和对应的另外的构件(150A,160A),所述对应的构件和所述对应的另外的构件在一通常区域中移动,和一乐音产生子系统(170A),该乐音产生子系统通过所述的多个连接件被驱动以产生所述的乐音;和一记录系统(105A),该记录系统包括多个传感器(310,410,161,164),监测所述多个连接件的所述构件(130)和所述另外的构件(150A,160A),并产生监测信号和另外的监测信号,所述监测信号携带有多段第一数据,每段第一数据代表用于表示所述构件(130)的移动的一物理量,所述另外的一个监测信号携带有多段第二数据,每段第二数据代表用于表示所述另外的构件(150A,160A)的移动的另外的一个物理量,一数据处理单元(107A),分析所述的多段第一数据和多段第二数据,以便产生一音乐数据代码组,该音乐数据代码组代表由所述乐音产生系统产生的所述乐音,其特征在于所述音乐数据代码组包括特定的音乐数据代码,每个特定的音乐数据代码具有被赋予一第一位串([xx])的一数据字段,所述第一位串的数字范围可被分成至少两个数字范围,这两个数字范围分别表示所述物理量和所述的另外的一个物理量。
2、 根据权利要求1所述的乐器,其中,所述特定的音乐数据代码被赋 予在用于所述乐器的协议中所定义的格式([Ankkxx])。
3、 根据权利要求2所述的乐器,其中,所述特定协议是已知的乐器数 字接口协议。
4、 根据权利要求3所述的乐器,其中,在所述乐器数字接口协议中所 述格式([An kk xx])是为与用于所述物理量的信息不同的另外的一个信息所定义的,所述另外的一个信息在所述乐器中不被使用。
5、 根据权利要求1所述的乐器,其中,所述音乐数据代码组还包括分 别与所述特定的音乐数据代码相关联的另外的音乐数据代码,每个所述特 定的音乐数据代码和每个所述的另外的音乐数据代码分別具有一第 一位串([xx])和一第二位串([yy]),所述第一位串([xx])表示所述物理量的一近似 值或所述另外的一个物理量的一近似值,所述第二位串([yy])表示偏离所述 所似值的一偏离量。
6、 根据权利要求5所述的乐器,其中,所述第二位串([yy])表示一 数字范围,该数字范围可以分成 一个数字子范围,该数字子范围在所迷 通常区域中以一分辨率表示所述的偏离量;和另外的一个数字子范围,该 另外的 一个数字子范围在所述通常区域外侧的 一 区域中以低于所述分辨率 的另外的一个分辨率表示所述偏离量。
7、 根据权利要求1所述的乐器,其中,所述的构件和所述的另外的构 件是键盘(120)的键(130)和音锤(150A),其中的键(130)可被选择 性地按压,以便指定要被产生的所述乐音的所述音高,其中的音锤(150A) 可被驱动转动,以便击打所述乐音产生子系统的琴弦(170A),从而以指定 的音高产生所述乐音。
8、 一种音乐数据产生器(105A),包括多个传感器(310, 410, 161, 164),监测安装在一乐器中的并在一通 常区域中移动的多个连接件的构件(130)和另外的构件(150A, 160A), 并产生监测信号和另外的监测信号,所述监测信号携带有多段第一数据, 每段第一数据代表用于表示所述构件(130)的移动的一物理量,所述另外 的监测信号携带有多段第二数据,每段第二数据代表用于表示所述另外的 构件(150A, 160A)的移动的另外的一个物理量,和一数据处理单元(107A),分析所述的多段第一数据和多段第二数据, 以便产生一音乐数据代码组,该音乐数据代码组代表由所述乐器产生的乐 音,其特征在于所述的音乐数据代码组包括特定的音乐数据代码,每个特定的音乐数 据代码具有一数据字段,该数据字段被赋予一第一位串([xx]),该位串的 数字范围可以分成至少两个数字范围,分别表示所述物理量和所述另外的 一个物理量。
9、 根据权利要求8所述的音乐数据产生器,其中,所述的特定的音乐 数据代码被赋予在用于所述乐器的协议中所定义的一格式([Ankkxx]).
10、 根据权利要求9所述的音乐数据产生器,其中,所述特定协议是 已知的乐器数字接口协议。
11、 根据权利要求IO所述的音乐数据产生器,其中,在所述乐器数字 接口协议中所述格式([An kk xx])是为不同于所述物理量信息的另外的一个 信息,所述另外的 一个信息在所述乐器中不被使用。
12、 根据权利要求8所述的音乐数据产生器,其中,所述音乐数据代 码组还包括分別与所迷特定的音乐数据代码相关联的另外的音乐数据代 码,每个所述特定的音乐数据代码和每个所述的另外的音乐数据代码分别 具有一第一位串([xx])和一第二位串([yy]),所述第一位串([xx])表示所述 物理量的一近似值或所述另外的一个物理量的一近似值,所述第二位串([yyp表示偏离所述近似值的一偏离量。
13、 根据权利要求12所述的音乐数据产生器,其中,所述第二位串 ([yy])表示一数字范围,该数字范围可以分成 一个数字子范围,该数字子范围在所述常区域中以一分辨率表示所述的偏离量;另外的一个数字子范围,该另外的一个数字子范围在所述通常区域外侧的一 区域中以低于所 述分辨率的另外的一个分辨率表示所述偏离量。
全文摘要
为了精确地表示琴键(130)的移动或音锤(150)的移动,利用自动弹奏钢琴中空闲的用于复调键压的声音信息([An kk xx])和用于控制变化的另外的一个声音信息([Bn 10 yy])来表示粗略的键位置或粗略的音锤位置以及偏离该粗略的键位置或粗略的音锤位置的一偏离量,该偏离量在休息位置和端部位置之间的一通常轨迹上以高分辨率的方式被表示,在通常轨迹外侧则以低分辨率的方式被表示;此外,复调键压的声音信息([An kk xx])的第三字节(xx)所表示的数字范围被分成两个被赋予给琴弦(130)和音锤(150)的数字子范围,从而只需很少的声音信息。
文档编号G10H1/34GK101656065SQ20091017100
公开日2010年2月24日 申请日期2004年11月1日 优先权日2003年10月31日
发明者川端太郎, 藤原佑二 申请人:雅马哈株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1