CN105637579B - 通过在多组波形数据之间切换来再现波形的技术 - Google Patents

通过在多组波形数据之间切换来再现波形的技术 Download PDF

Info

Publication number
CN105637579B
CN105637579B CN201480055703.2A CN201480055703A CN105637579B CN 105637579 B CN105637579 B CN 105637579B CN 201480055703 A CN201480055703 A CN 201480055703A CN 105637579 B CN105637579 B CN 105637579B
Authority
CN
China
Prior art keywords
wave data
group
data
switching position
switching
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201480055703.2A
Other languages
English (en)
Other versions
CN105637579A (zh
Inventor
植村教裕
山本和彦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jahang Haran Corp
Original Assignee
Jahang Haran Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jahang Haran Corp filed Critical Jahang Haran Corp
Publication of CN105637579A publication Critical patent/CN105637579A/zh
Application granted granted Critical
Publication of CN105637579B publication Critical patent/CN105637579B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/008Means for controlling the transition from one tone waveform to another
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/36Accompaniment arrangements
    • G10H1/40Rhythm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/02Instruments in which the tones are synthesised from a data store, e.g. computer organs in which amplitudes at successive sample points of a tone waveform are stored in one or more memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/038Cross-faders therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/322Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier used signal is digitally coded
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/341Rhythm pattern selection, synthesis or composition
    • G10H2210/346Pattern variations, break or fill-in
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/025Envelope processing of music signals in, e.g. time domain, transform domain or cepstrum domain
    • G10H2250/035Crossfade, i.e. time domain amplitude envelope control of the transition between musical sounds or melodies, obtained for musical purposes, e.g. for ADSR tone generation, articulations, medley, remix
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/541Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • General Engineering & Computer Science (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

本发明的目的是以期望的时序在多组波形数据之间进行切换,同时防止产生噪声。根据从当前再现的一组波形数据(20)切换至另一组波形数据(20’)的切换指令,参照当前再现的一组波形数据的切换位置信息(25)和所述另一组波形数据的切换位置信息(25),将所述另一组波形数据(20’)上的切换位置或者当前再现的一组波形数据(20)上的切换位置设置为用于使当前再现的波形数据(20)的再现终止的终止定时。例如,如果在处于紧随切换指令时刻之后存在的另一组波形数据(20’)上的切换位置之前的50毫秒的时段内存在当前再现的一组波形数据(20)上的切换位置,则将当前再现的一组波形数据(20)上的所述切换位置设置为终止定时,而如果不存在这种切换位置,则将所述另一组波形数据(20’)上的切换位置设置为终止定时。

Description

通过在多组波形数据之间切换来再现波形的技术
技术领域
本发明涉及一种用于通过在多组波形数据之间按次序切换来再现乐音的波形再现技术,并且更具体地说,涉及一种用于控制在将用于再现的多组波形数据之间切换的时序的技术。
背景技术
之前,已知的自动演奏设备对例如指示琶音、低音、节奏和其它模式的伴奏模式数据进行预存储,并且基于这种伴奏模式数据执行乐音(tone)的自动演奏。注意,在本说明书中,术语“乐音”不仅用于指示音乐声而且用于指示语音或任何其它声音。
通常,每组伴奏模式数据的时长对应于约几个小节。通过重复地读出一组伴奏模式数据(下文中,还被称作“主模式”),自动演奏设备基于该组伴奏模式数据连续执行多个小节的自动演奏。此外,在自动演奏设备中,除主模式之外,还预备有被叫做插入模式、中断模式或即兴模式等的子伴奏模式数据(被称作“子模式”),其各自的时长比主模式的时长更短(例如,仅一个小节)。一旦通过用户在主模式的重复再现期间的操作提供用于从主模式切换至子模式的指令,自动演奏设备就执行控制,以停止主模式的再现来再现所指示的子模式直至该子模式结束,并且随后自动地恢复主模式的再现。
专利文献1公开了一种设备,该设备响应于从主模式切换至诸如插入模式的子模式的指令,即使主模式的当前再现位置正要经过一个小节或者在该小节的中途,该设备也立即将伴奏模式数据从主模式切换至子模式而不等待主模式的当前再现位置到达该小节的边界位置。根据专利文献1中的公开,根据预定标准限定乐音控制数据,诸如在MIDI标准中限定的MIDI数据。
现有技术文献:
专利文献:
专利文献1:日本专利申请公布特开平10-268866号
在一些情况下,将通过对乐器的实际演奏乐音、人声和自然声采样而获得的音频波形数据(下文中简单地称作“波形数据”)以及前述MIDI数据用作伴奏模式数据。
在其中上述专利文献1中公开的技术被应用于利用波形数据准备的伴奏模式数据的情况下,将会出现以下问题:在将利用一些波形数据准备的主模式切换至利用其它波形数据准备的子模式时,会产生噪声。例如,如果子模式的再现在期望的定时开始,则所述再现不一定始于给定乐音的开始或者头部(即,起奏部分);也就是说,所述再现有时会始于乐音的中间或半途部分,即从乐音的中途开始。在这种情况下,从乐音的半途部分开始的乐音产生会成为噪声。此外,如果在主模式的再现过程中在起奏部分响起之后立即切换至子模式,以及如果正好在切换之后起奏部分也位于子模式的位置,则将出现所谓的两次发声,这会变为噪声。
发明内容
鉴于以上现有技术中的问题,本发明的一方面是提供一种改进的技术,该技术允许在期望的时刻在多组波形数据之间切换,同时防止在从当前再现的一组波形数据切换至另一组波形数据时产生噪声。
根据本发明,提供了一种计算机可读存储介质,其包含一组指令,所述指令能够通过处理器执行以执行通过利用存储在存储部分中的多组波形数据来再现波形的方法,所述方法包括:再现步骤,根据时间推移来再现存储在所述存储部分中的所述多组波形数据中的任一组;指定步骤,在通过所述再现步骤再现所述多组波形数据中的第一组波形数据的过程中指定所述多组波形数据中的第二组波形数据;获取步骤,针对所述第一组波形数据和所述第二组波形数据中的每一组波形数据,获取指明该波形数据中的一个或多个切换位置的切换位置信息;设置步骤,至少基于接收到对所述第二组波形数据的指定的时间点以及参照所述第一组波形数据的切换位置信息和所述第二组波形数据的切换位置信息,将所述第二组波形数据中的一个切换位置或者当前再现的所述第一组波形数据中的一个切换位置设置为用于使当前再现的所述第一组波形数据的再现终止的终止定时;以及控制步骤,响应于所述第二组波形数据的指定,执行用于将将要通过所述再现步骤再现的波形数据从所述第一组波形数据切换至所述第二组波形数据的控制,所述控制步骤响应于通过所述再现步骤再现波形数据的时序到达通过所述设置步骤设置的所述终止定时,来至少执行用于使所述第一组波形数据的再现终止的控制。
根据本发明,一旦在再现一组波形数据(第一组波形数据)的过程中指定另一组波形数据(第二组波形数据),就针对当前再现的第一组波形数据和指定的第二组波形数据中的每一组获取指明该波形数据中的一个或多个切换位置的切换位置信息。例如,切换位置是被记录为波形数据的单独的乐音的起奏部分。至少基于接收到对第二组波形数据的指定的时间点以及参照第一组波形数据的切换位置信息和第二组波形数据的切换位置信息,将第二组波形数据中的一个切换位置或者第一组波形数据中的一个切换位置设置为用于使当前再现的第一组波形数据的再现终止的终止定时。如果将第一组波形数据中的切换位置设为终止定时,则可以正好在切换前的第一组波形数据结束之前可靠地防止产生不期望的乐音。因此,本发明可以在两组波形数据之间切换时可靠地防止由于所谓“两次发声”(在切换前的一组波形数据和切换后的一组波形数据内基本同时(即,在很短时间内)产生乐音)而产生噪声。另一方面,如果将被指定为切换后的一组波形数据(即,切换目标)的第二组波形数据中的切换位置设置为终止定时,则在被指定为切换目标的第二组波形数据中的切换位置使当前再现的第一组波形数据的再现终止。因此,切换后的第二组波形数据(被指定为切换目标)的再现可始于第二组波形数据中的切换位置。按照这种方式,本发明可以防止在开始再现切换后的第二组波形数据时产生噪声(例如,由于在波形中途(即波形的半途位置)开始再现而导致的噪声)。
结果,本发明可实现以下优越益处:允许在期望的时刻切换波形数据,同时可靠地防止由于从当前再现的波形数据(第一组波形数据)切换至另一组波形数据(第二组波形数据)而导致的噪声的出现或产生。
在本发明的一个实施例中,所述设置步骤还可被构造为:将所设置的终止定时设置为用于开始再现指定的第二组波形数据的起始定时。
作为特定示例,所述设置步骤确定当前再现的第一组波形数据中的任何切换位置是否存在于正好在接收到对第二组波形数据的指定的时间点之后出现的第二组波形数据中的切换位置之前的预定时间(范围)内。在确定当前再现的第一组波形数据中的任何切换位置存在于预定时间内时,所述设置步骤将当前再现的第一组波形数据中的切换位置设置为终止定时。通过这样将当前再现的第一组波形数据中的切换位置设置为终止定,可避免正好在当前再现的波形数据(第一组波形数据)结束之前产生不期望的乐音,因此防止两次发声。当确定在预定时间内不存在当前再现的第一组波形数据中的切换位置时,所述设置步骤将正好在接收到对第二组波形数据的指定的时间点之后出现的第二组波形数据中的切换位置设置为终止定时,因此不仅可防止由于“两次发声”导致的噪声,而且可防止在开始再现另一组波形数据(第二组波形数据)时的噪声。
在本发明的另一实施例中,所述设置步骤还可被构造为:将正好在接收到对第二组波形数据的指定时的时间点之后出现的音乐边界位置设置为用于开始再现指定的第二组波形数据的起始定时。
作为另一特定示例,所述设置步骤确定当前再现的第一组波形数据中的任何切换位置是否存在于正好在接收到对第二组波形数据的指定的时间点之后出现的音乐边界之前的预定时间(范围)内。在确定当前再现的第一组波形数据中的任何切换位置存在于所述预定时间内时,所述设置步骤将第一组波形数据中的切换位置设置为终止定时。通过这样将当前再现的第一组波形数据中的切换位置设置为终止定时,可避免正好在当前再现的波形数据(第一组波形数据)结束之前产生不期望的乐音,从而防止两次发声。另一方面,当确定在预定时间内不存在当前再现的第一组波形数据中的切换位置时,所述设置步骤将正好在接收到对第二组波形数据的指定的时间点之后出现的音乐边界位置设置为终止定时。因此,不仅可正好在当前再现的一组波形数据结束之前防止正好在当前再现的波形数据之前的“两次发声”,而且可防止在开始再现另一组波形数据(第二组波形数据)时的噪声。
根据本发明的另一方面,提供了一种波形再现设备,该波形再现设备包括:存储部分,其被构造为存储多组波形数据;再现部分,其被构造为根据时间推移来再现存储在所述存储部分中的所述多组波形数据中的任一组;指定部分,其在通过所述再现部分再现所述多组波形数据中的第一组波形数据的过程中指定所述多组波形数据中的第二组波形数据;获取部分,其针对所述第一组波形数据和所述第二组波形数据中的每一组波形数据来获取指明该波形数据中的一个或多个切换位置的切换位置信息;设置部分,其至少基于接收到对所述第二组波形数据的指定的时间点以及参照所述第一组波形数据的切换位置信息和所述第二组波形数据的切换位置信息,将所述第二组波形数据中的一个切换位置或者当前再现的所述第一组波形数据中的一个切换位置设置为用于使当前再现的所述第一组波形数据的再现终止的终止定时;以及控制部分,其响应于所述第二组波形数据的指定,执行用于将将要通过所述再现部分再现的波形数据从所述第一组波形数据切换至所述第二组波形数据的控制,所述控制部分响应于通过所述再现部分再现波形数据的时序到达通过所述设置部分设置的所述终止定时,来至少执行用于使所述第一组波形数据的再现终止的控制。
根据本发明的又一方面,提供了一种能够通过处理器执行的方法,所述方法通过利用存储在存储部分中的多组波形数据来再现波形,所述方法包括:再现步骤,根据时间推移来再现存储在所述存储部分中的所述多组波形数据中的任一组;指定步骤,在通过所述再现步骤再现所述多组波形数据中的第一组波形数据的过程中指定所述多组波形数据中的第二组波形数据;获取步骤,针对所述第一组波形数据和所述第二组波形数据中的每一组波形数据,获取指明该波形数据中的一个或多个切换位置的切换位置信息;设置步骤,至少基于接收到对所述第二组波形数据的指定的时间点以及参照所述第一组波形数据的切换位置信息和所述第二组波形数据的切换位置信息,将所述第二组波形数据中的一个切换位置或者当前再现的所述第一组波形数据中的一个切换位置设置为用于使当前再现的所述第一组波形数据的再现终止的终止定时;以及控制步骤,响应于所述第二组波形数据的指定,执行用于将将要通过所述再现步骤再现的波形数据从所述第一组波形数据切换至所述第二组波形数据的控制,所述控制步骤响应于通过所述再现步骤再现波形数据的时序到达通过所述设置步骤设置的所述终止定时,来至少执行用于使所述第一组波形数据的再现终止的控制。
附图说明
图1是说明作为本发明特征的波形数据切换处理的概念图;
图2是示出应用了本发明的电子乐器的实施例的示例硬件设置的框图;
图3是示出伴奏模式数据的数据结构的概念图;
图4A是通过乐谱示出将用作伴奏模式数据的示例波形数据的图;
图4B是在概念上示出对应于图4A所示的乐谱的波形数据和说明与所述波形数据相关联的起始信息(onset information)的时序图;
图5是示出在电子乐器中执行的自动演奏处理的示例的流程图;
图6是示出乐节(section)切换定时设置处理的示例的流程图;
图7是示出小节内乐节切换定时设置处理的示例的流程图;
图8是示出小节边界位置部分处切换定时设置处理的示例的流程图;以及
图9是乐节切换处理的示例的流程图。
具体实施方式
将参照附图详细描述本发明的实施例。
图1是说明作为本发明特征的波形数据切换处理的概念图。在图1中,沿着竖直方向排列的两个水平图描绘了两组波形数据20和20’。带圆圈的数字“1”、“2”、“3”和“4”各自指示小节中的拍数,图中的水平方向对应于所述各组波形数据20和20’的再现时间轴。所述各组波形数据之一20的时长为两个小节,而另一组波形数据20’的时长为一个小节。在图1中,对于时长为一个小节的这组波形数据20’,连续地描绘两个(即,两组)相同的波形数据,这只是为了便于将这组波形数据20’与时长为两个小节的那组波形数据20相关联。
所述各组波形数据20和20’与多个切换位置信息片段相关联,所述切换位置信息用于指示对应的波形数据的一个或多个潜在切换位置(也称作“起始信息”)。潜在切换位置中的每一个是波形数据20或20’的位置,该位置可在当前再现的所述各组波形数据之一20将被切换至另一组波形数据20’时被设置为用于切换的定时(切换定时)(即,用于使从其切换的(即,当前再现的)一组波形数据终止的终止定时,或者用于使作为切换目标的一组波形数据开始的开始时刻)。在该图的上部示出的(与稍后描述的主乐节(main section)200关联的)所述各组波形数据之一20具有十个潜在切换位置“Mo_1”、“Mo_2”、…、“Mo_10”,而在该图的下部示出的(与稍后描述的插入乐节210关联的)另一组波形数据20’具有八个潜在切换位置“Fo_1”、“Fo_2”、…、“Fo_8”。
本发明的主要特征如下。也就是说,在再现所述各组波形数据之一20(即,第一组波形数据20)的过程中,一旦提供了用于使将要再现的的波形数据(即,再现目标波形数据)切换至另一组波形数据(即,第二组波形数据)20’的指令,就会至少基于接受该指令的时间点并且参照当前再现的一组波形数据(即,第一组波形数据)20的切换位置信息和另一组波形数据(即,第二组波形数据)20’的切换位置信息,使当前再现的一组波形数据20的再现在指定的另一组波形数据20’的潜在切换位置“Fo_1”、“Fo_2”、…、“Fo_8”中的任一个或者当前再现的一组波形数据20的潜在切换位置“Mo_1”、“Mo_2”、…、“Mo_10”之一终止。将在稍后详细描述在当前实施例中执行的用于设置切换定时的处理和切换处理。
图2是示出应用了本发明的电子乐器100的实施例的示例硬件设置的框图。在电子乐器100中,在包括微处理器单元(CPU)1、只读存储器(ROM)2和随机存取存储器(RAM)3的微计算机的控制下执行各种处理。CPU 1控制整个电子乐器100的操作。ROM 2、RAM 3、存储装置4、演奏操作器单元5、面板操作器单元6、显示部分7、音频再现部分8、MIDI乐音产生器部分9、乐音控制电路10和接口11经通信总线12连接至CPU 1。
用于计算关于例如用于定时器中断处理的信号中断定时的各种时间,并且计算各种时间。例如,定时器13产生用于设置自动地演奏乐音的演奏节拍的节拍时钟脉冲、执行波形数据的时间拉伸控制的频率等。将定时器13所产生的这些节拍时钟脉冲提供至CPU 1作为处理定时指令,或者作为中断指令。CPU 1根据这些指令执行各种处理。
在ROM 2中存储通过CPU 1执行的各种控制程序、CPU 1参考的各种数据等。RAM 3用作用于临时存储随着CPU 1执行各种程序而产生的各种数据的工作存储器,用作用于临时存储当前执行的程序和与当前执行的程序有关的数据的存储器,以及用于各种其它目的。
存储装置4具有内置数据库,其能够存储许多不同的数据,诸如多组伴奏模式数据等。在存储装置4中还可存储用于通过CPU 1执行的各种控制程序。在ROM 2中没有预存储特定程序的情况下,可将所述程序预存储在外部存储装置(例如,硬盘装置)4中,从而通过将程序从外部存储装置4读出至RAM 3中来允许CPU 1按照与其中特定程序预存储在ROM 2中的情况完全相同的方式操作。这种布置方式极大地有利于程序的版本升级、添加新程序等。
存储装置4可为任何期望类型,只要其使用诸如硬盘(HD)、软盘(FD)、紧凑盘(CD-ROM或者CD-RAM)、磁光盘(MO)和DVD(数字多用盘)的各种记录介质中的任意一种即可。作为另外一种选择,存储装置4可为诸如闪速存储器的半导体存储器。
例如,演奏操作器单元5为包括多个键和键开关的键盘,可操作所述多个键来选择将要产生的乐音的音高,所述键开关与所述键设置为具有对应关系。演奏操作器单元5可用于由演奏人进行手动演奏,但也可用作在自动伴奏功能中用于输入和弦的输入装置。当然,除键盘类型之外,演奏操作器单元5可为任何其它类型,诸如弦乐器类型(吉他类型)、管乐器类型或者打击乐器类型。
面板操作器单元6包括设置在电子乐器100的操作面板上的各种手动操作器,诸如乐节切换开关、用于设置演奏节拍的节拍设置开关以及用于指示自动演奏的开始/停止的再现(播放)/停止按钮。
响应于在面板操作器单元6上的操作,包括液晶显示器(LCD)面板、CRT等的显示部分7不仅在视觉上显示各种画面(诸如伴奏模式数据选择画面、演奏节拍设置画面和乐节切换画面),而且显示诸如当前选择的伴奏模式数据的内容和CPU 1的控制状态的各种信息。演奏人可通过参照在显示部分7上显示的各种信息容易地执行诸如伴奏模式数据选择、演奏节拍设置和乐节切换的各种操作。
音频再现部分8基于经通信总线12提供的波形数据来产生和输出波形信号。MIDI乐音产生器部分9基于经通信总线12提供的MIDI数据来产生和输出波形信号。
上述音频再现部分8和MIDI乐音产生器部分9连接至乐音控制部分10。包括信号混合(加法)电路、D/A转换电路、乐音音量控制电路等的乐音控制部分10通过对波形信号执行数字信号处理而为通过音频再现部分8和MIDI乐音产生器部分9产生的波形信号赋予各种效果,将这些波形信号混合(加在一起)并且将混合后的波形信号输出至包括扬声器等的音响系统14。音响系统14以可听见的方式产生与从乐音控制部分10输出的波形信号相对应的乐音。
接口11是一种用于在电子乐器100与未示出的其它设备之间发送和接收(即,交互)各种数据和各种信息(例如控制程序)的接口。电子乐器100可包括一个或多个这种接口11,例如符合MIDI标准的MIDI接口以及符合以太网(注册商标)标准的网络接口。这些接口11可为有线连接类型和无线连接类型之一或二者。
图3是示出存储于在电子乐器100中建立的数据库中的伴奏模式数据的数据结构的概念图。例如,数据库建立在存储装置4中。如图3所示,多组伴奏模式数据200、210、220、230、…存储在数据库中。这几组伴奏模式数据200、210、220、230、…与诸如主乐节、插入乐节、前奏乐节和结束乐节的各个部分关联。这些乐节是音乐作品的伴奏的构件。
伴奏模式数据200、210、220、230、…中的每一个包括一组或多组波形数据20(每一组波形数据将被用作伴奏模式数据)以及与各组波形数据20关联的波形再现控制信息22。各组波形数据20中的每一组包括通过对乐器、人声、自然声等的实际演奏乐音采样获得的乐音波形数据(音频波形数据)。各部分200、210、220、230、…的各组波形数据20中的每一组的时长为一个小节,并且以适于对应乐节的乐器的演奏作为其内容。波形数据20可为诸如WAV、AIFF和MP3的任何一种期望格式。
波形再现控制信息22包括切换位置信息25,其指明针对相应的一组波形数据20设置的一个或多个潜在切换位置(一个或多个起始信息)。波形再现控制信息22还可包括:基本节拍,其指示在记录波形数据20时使用的节拍;拍信息,其指示波形数据20的一个小节中的单独的拍的定时;等等。
如图1所示,参照切换位置信息25来确定稍后描述的乐节切换定时,切换位置信息25是指明相应的一组波形数据20中的一个或多个潜在切换位置(一个或多个起始信息)的信息。可通过分析相应的一组波形数据20来获得包括切换位置信息25的波形再现控制信息22中的各种信息。在自动演奏时,CPU 1参照波形再现控制信息22来控制将用于波形数据20的再现处理中的各种参数。
图4A和图4B是详细解释图1所示的各组波形数据20和20’以及与各组波形数据20和20’关联的切换位置信息25的图。假设所述一组波形数据20与主乐节的伴奏模式数据200关联,并且所述一组波形数据20’与插入乐节210的伴奏模式数据关联。带圆圈的“1”、“2”、“3”和“4”各自指示小节中的拍数,并且图中的水平方向对应于各组波形数据20和20’的再现时间轴。作为一个示例,各组波形数据20和20’各自代表鼓演奏(即,各组波形数据20和20’各自是鼓部的伴奏模式数据)。注意,在本说明书中,各个乐节的伴奏模式数据(即,主乐节200的伴奏模式数据、插入乐节210的伴奏模式数据、…)有时将会被写为各乐节的名称,例如主乐节200、插入乐节210等等。
图4A通过乐谱示出了与主乐节200和插入乐节210相关联的各组波形数据20和20’的相应演奏内容。如图4A所示,主乐节200的时长为两个小节。根据主乐节200的演奏内容,在一个小节中,在第一拍以四分音符演奏低音鼓一次,在第二拍以四分音符演奏小军鼓一次,在第三拍以八分音符演奏低音鼓两次,在第四拍以四分音符演奏小军鼓一次,同时以四分音符连续演奏踩镲。另一方面,插入乐节210的时长为一个小节。根据插入乐节210的演奏内容,以八个八分音符击打高桶鼓、中桶鼓、落地桶鼓、低音鼓和小军鼓,从而演奏连续击鼓声。
图4B是说明与关联于主乐节200的所述一组波形数据20和关联于插入乐节210的所述一组波形数据20’相对应的波形形状和切换位置信息25的图。各组波形数据20和20’的相应的波形形状各自指示乐器的被记录演奏乐音的乐音音量变化。与主乐节200关联的所述一组波形数据20是基于图4A所示的乐谱的两个小节的鼓演奏乐音的记录。在利用伴奏模式数据的自动伴奏领域中熟知的是,假设以重复方式或循环方式再现两个小节的波形数据20来生成主乐节200。
与插入乐节210关联的所述一组波形数据20’是基于图4A所示的乐谱的一个小节的鼓演奏乐音的记录。假设响应于用户的操作而在主乐节200的循环再现中至少将所述一个小节的波形数据再现一次来生成插入乐节210,并且随后恢复主乐节200的再现,即在主乐节200的循环再现过程中插入所述一个小节的波形数据。注意,在图4A和图4B(以及图1)中,将插入乐节210的两个波形数据210a和210b示为沿着时间轴按顺序排列,这仅仅是为了便于将所述一组波形数据20’与所述一组波形数据20关联。
在各组波形数据20和20’中的每一个中,针对包括在作为波形数据记录的乐音中的一个或多个起奏部分(图4B所示的波形的“峰”部分)设置潜在切换位置(起始信息)。更具体地说,将起奏部分中的每一个的起始位置(波形的上升位置)设为潜在切换位置(起始信息)。切换位置信息25是指明对应于一个或多个起奏部分(图4B所示的波形的“峰”部分)的潜在切换位置(多个起始信息)的信息。例如,图1和图4所示的主乐节200的切换位置信息25包括指明十个起始信息“Mo_1”、“Mo_2”、…、“Mo_10”的数据,所述十个起始信息对应于所述一组波形数据20的十个起奏部分。此外,图1和图4B所示的插入乐节210的切换位置信息25包括指明八个起始信息“Fo_1”、“Fo_2”、…、“Fo_8”的数据,所述八个起始信息对应于所述一组波形数据20’的八个起奏部分。
例如,在主乐节200的第一小节的第一拍,演奏踩镲和低音鼓(见图4A的音乐乐谱)。在这种情况下,在同一拍演奏踩镲和低音鼓,因此,在波形数据中,仅有一个起奏部分20a对应于这些乐器的乐音。此外,在这种情况下,在起奏部分20a的开始位置或者头位置设置一个起始信息“Mo_1”。
这里,各组波形数据20和20’包括通过对演奏人根据图4A所示的乐谱所指示的内容利用一组鼓实际演奏的演奏乐音进行采样(记录)而获得的数据。因为演奏人的演奏或多或少因人而异,所以被记录为波形数据20和20’的各个乐音的位置通常偏离准确拍节位置(即,准确定时)。因此,多个起始信息中的每一个的位置往往稍稍偏离于图4A的音乐乐谱上所指示的对应音符的拍位置。
例如,因为在记录时在稍早的定时演奏了在主乐节200的第二小节的第一拍对应于踩镲和低音鼓的演奏乐音20b,所以在所述一组波形数据20中的第一小节的末尾处记录演奏乐音20b。因此,对应于演奏乐音20b的起始信息“Mo_6”被设置在第一小节的末尾处(更具体地说,演奏乐音20b的起奏部分的起始位置)而不是第二小节的第一拍位置。
接着,将描述在电子乐器100中利用前述伴奏模式数据演奏的“自动演奏处理”。这里,用户使得电子乐器100执行自动演奏,同时在图3所示的主乐节200、插入乐节210、前奏乐节220、结束乐节230等的对应的伴奏模式数据之间选择性地切换。图5是示出通过电子乐器100的CPU 1执行的自动演奏处理示例的流程图。CPU 1响应于用户给出的自动演奏开始指令而开始进行即时自动演奏处理。在自动演奏处理的一个特定示例中,假设响应于用户的乐节切换指令而在与主乐节200关联的所述一组波形数据20的循环再现过程中插入所述一组波形数据20’并且随后恢复主乐节200的再现。注意,在本说明书中使用“乐节切换”来表示用于使切换前的一组波形数据的再现终止和开始再现被指定为切换目标的另一组波形数据的操作。
在步骤S1,CPU 1执行初始化处理。例如,初始化处理包括响应于用户的操作而设置演奏节拍的操作以及从数据库(存储装置4)读出所选择的伴奏模式数据并将读出的伴奏模式数据载入RAM 3中的操作。在当前示例中,假设当前选择主乐节200,因此,CPU 1将与主乐节200关联的所述一组波形数据20和波形再现控制信息22(包括切换位置信息25)从存储装置4载入RAM 3中。
在下一步骤S2,CPU 1根据当前设置的演奏节拍开始再现与主乐节200关联的所述一组波形数据20。也就是说,CPU 1开始从RAM 3读出与主乐节200关联的所述一组波形数据20。音频再现部分8基于所述读出的一组波形数据20产生并输出波形信号。注意,CPU 1响应于自动演奏的开始而激活再现计数器。再现计数器的计数值在对应于演奏节拍的每个预定循环周期加一。再现计数器为波形再现的经过时间(再现时序)计数。当与波形数据20关联的基本节拍与当前设置的演奏节拍彼此不同时,CPU 1和音频再现部分8可通过执行公知的时间拉伸控制在期望的演奏节拍产生波形数据20的乐音,而不会使得乐音音高从原始音高发生改变。
接着,在步骤S3,CPU 1确定是否接收到任何用户指令。如果未接收到用户指令(步骤S3中的确定为“否”),则CPU 1按照循环方式执行步骤S2和步骤S3的操作。因此,CPU 1和音频再现部分8重复地再现与单个主乐节200关联的整个两小节的波形数据20。CPU 1和前述音频再现部分8所执行的步骤S2等的前述操作一起充当根据时间推移来再现存储在存储部分中的所述多组波形数据中的任一组的再现步骤,或者一起充当根据时间推移来再现存储在存储部分中的所述多组波形数据中的任一组的再现部分。
一旦在波形数据20的循环再现过程中接收到任何用户指令(步骤S3中的确定为“是”),CPU 1响应于接收到的用户指令而执行各种操作(步骤S4和步骤S8)。自动演奏处理的当前示例假设将用于使得将要再现的波形数据(将被再现的波形数据或者再现对象)从主乐节200切换至插入乐节210的“乐节切换指令”(步骤S4)、自动演奏终止指令(步骤S8)或者其它指令作为用户指令。用于接收用户的“乐节切换指令”的面板操作器单元6的操作和前述操作一起构成在通过再现步骤使一组波形数据(第一组波形数据)再现的过程中指定另一组波形数据(第二组波形数据)的步骤,或者作为在通过再现部分使一组波形数据(第一组波形数据)再现的过程中指定另一组波形数据(第二组波形数据)的指定部分。
如果已接收到“乐节切换指令”(步骤S4中的确定为“是”),则在步骤S5,CPU 1将与被指定为切换目标的插入乐节210相关联的所述一组波形数据20’和波形再现控制信息22从数据库(存储装置4)载入到RAM 3中,而且还在步骤S6从RAM 3获取与插入乐节210相关联的切换位置信息25(图4B中的起始信息“Fo_1”至“Fo_8”)以及与当前再现的主乐节200相关联的切换位置信息25(图4B中的起始信息“Mo_1”至“Mo_10”)。通过CPU 1执行的步骤S6的操作充当针对当前再现的一组波形数据(第一组波形数据)和指定的另一组波形数据(第二组波形数据)中的每一个获取用于指明该波形数据中的一个或多个切换位置的切换位置信息的获取步骤,或者充当针对当前再现的一组波形数据(第一组波形数据)和指定的另一组波形数据(第二组波形数据)中的每一个获取用于指明该波形数据中的一个或多个切换位置的切换位置信息的获取部分。
此外,在步骤S7,CPU 1基于接收到乐节切换指令的时间点(即,乐节切换指令的接收时间)、当前指定为切换目标的插入乐节210的所述一组波形数据20’中的起始信息(潜在切换位置)以及当前再现的插入乐节210的所述一组波形数据20中的起始信息(潜在切换位置)之间的位置关系来执行用于设置稍后描述的“乐节切换定时”的处理。在步骤S7中设置“乐节切换定时”之后,自动演奏处理返回步骤S2。
如果用户指令是“自动演奏终止指令”(步骤S4中的确定为“否”且步骤S8中的确定为“是”),则CPU1响应于自动演奏终止指令,通过执行终止控制来使当前自动演奏处理终止。例如,如果用户给出用于指示从主乐节200至结束乐节230的乐节切换指令的“自动演奏终止指令”,则CPU 1在紧随自动演奏终止指令的接收时间之后的小节中使主乐节200的再现终止,随后开始再现结束乐节230而不是主乐节200,并且随后在将结束乐节230再现至结尾之后结束自动演奏处理。此外,如果通过用户对再现(播放)/停止按钮进行操作而给出“自动演奏终止指令”,则CPU 1通过在接收到自动演奏终止指令的时间点执行再现终止控制来终止自动演奏处理。
此外,如果接收到的用户指令不是前述中的任一个(步骤S4和步骤S8中的每一个中的确定为“否”),则CPU 1执行对应于用户指令的另一处理。除前述从主乐节200切换至插入乐节210或者结束乐节以外,其它用户指令的示例还包括用于在乐节之间切换的指令、静音开/关指令、音色改变指令和乐音音量改变指令。
以下更详细地描述在以上步骤S7的乐节切换定时设置处理。图6至图8是示出乐节切换定时设置处理的流程图。一旦图5的处理前进至步骤S7(即,响应于从主乐节切换至插入乐节的指令),CPU 1就开始图6所示的乐节切换定时设置处理。
在步骤S11,CPU 1对接收到乐节切换指令的时间点是否正好在小节边界之前进行确定。作为音乐边界位置的示例,小节边界指示一个小节与紧随所述一个小节之后的另一小节之间的边界。在图4B的示出的示例中,与主乐节200关联的所述一组波形数据20中的第一小节的尾部与第二小节的头部之间的连接点以及循环再现时第二小节的尾部与第一小节的头部的连接点是小节边界。CPU 1可根据基于前述再现计数值的拍数来对接收到乐节切换指令的时间点的波形数据的当前再现位置与小节边界之间的关系进行识别。例如,可通过对接收到乐节切换指令的时间点是否在正好在当前再现的小节之前的预定时间(范围)(例如50毫秒)内或者接收到乐节切换指令的时间点是否在当前再现的小节中的四拍半的位置或之后进行确定,来确定接收到乐节切换指令的时间点是否正好在小节边界之前。
如果接收到乐节切换指令的时间点不是正好在小节边界之前(步骤S11中的确定为“否”),则CPU 1在如图7所示的步骤S12执行“小节内乐节切换定时设置处理”。如果接收到乐节切换指令的时间点正好在小节边界之前(步骤S11中的确定是),则CPU 1如图8所示在步骤S13执行“小节边界处乐节切换定时设置处理”。
现在,参照图1的前述概念图以及图6、图7和图8的流程图,将主要参照“情况A”、“情况B”和“情况C”描述特定于乐节切换指令的不同接收时间的“乐节切换定时设置处理”的示例。
图1中的箭头50a所指示的“情况A”是其中用户给出正好在第一小节的第三拍之前切换至插入乐节210的指令的情况。在这种情况下,CPU 1在步骤S11中确定为“否”,从而在步骤S12前进至“小节内乐节切换定时设置处理”。图1中的箭头50b所指示的“情况B”是其中用户给出正好在第一小节的第四拍之前切换至插入乐节210的指令的情况。同样,在这种情况下,CPU 1在步骤S11中确定为“否”,从而在步骤S12前进至“小节内乐节切换定时设置处理”。
在“小节内乐节切换定时设置处理”中,如图7所示,在步骤S14,CPU 1从在以上步骤S6获取的插入乐节210的起始信息“Fo_1”至“Fo_8”中获取正好在乐节切换指令的接收时间之后出现的一个起始信息“Fo_x”(“x”是值“1”至“8”中的任一个)。然后,在步骤S15,CPU1检查当前再现的主乐节200的所有起始信息“Mo_1”至“Mo_10”,以确定当前再现的主乐节200的起始信息“Mo_y”中的任一个(“y”是“1”至“10”中的任一个值)是否正好在以上步骤S14获取的插入乐节210的起始信息“Fo_x”之前的预定时间(范围)内出现。
预定时间(范围)的时长为例如50毫秒。期望的是,预定时间的时长是用于防止由于切换前乐节(主乐节200)的乐音产生与切换后乐节(插入乐节210)的乐音产生之间的时间距离太近而导致在从主乐节200切换至插入乐节210时将会发生的两次发声所必需的时长。“50毫秒”时长是优选的示例,其原因在于:(1)两次发声往往出现在其中被记录为波形数据的各乐音的位置偏离于音符所指示的拍位置的情况(通常,被记录的乐音是稍早于音符所指示的拍位置(即,领先拍风格)演奏的乐音的情况)下,(2)可将各个乐音(其被记录为将要用作伴奏模式数据的波形数据)的位置与音符的定时(拍数所指示的参考定时)之间的偏离宽度假设为大约“50毫秒”以内,以及(3)可将50毫秒偏离宽度以内的乐音看作一拍时间内的乐音(换句话说,可将在时间上彼此分离超过50毫秒的乐音看作不同拍(不同定时)的乐音)。
在情况A中,例如,正好在接收到乐节切换指令的时间点(由箭头50a指示)之后出现的插入乐节210的起始信息为“Fo_5”,并且在“Fo_5”之前没有出现主乐节200的起始信息。也就是说,虽然正好在“Fo_5”之前出现主乐节200的起始信息,但是因为在晚于“Mo_2”时提供乐节切换指令,所以在从乐节切换指令至“Fo_5”的部分中没有出现主乐节200的起始信息“Mo_y”;因此,在步骤S15确定为“否”。在这种情况下,CPU 1在步骤S16将正好在乐节切换指令的接收时间之后出现的插入乐节210的起始信息“Fo_x”(情况A中的“Fo_5”)设置为当前再现的主乐节200的终止定时,而且将插入乐节210的起始信息“Fo_x”(情况A中的“Fo_5”)设置为当前被指定为切换目标的插入乐节210的再现将要开始的起始定时。
在情况B中,正好在乐节切换指令的接收时间(由箭头50b指示)之后出现的插入乐节210的起始信息是“Fo_7”,并且正好在“Fo_7”之前出现的主乐节200的起始信息是“Mo_5”。在这里,假设“Mo_5”出现在从“Fo_7”开始的预定时间(例如,50毫秒)内。然后,如果在插入乐节210的起始信息“Fo_7”的位置执行乐节切换,则对应于“Fo_7”的起奏部分正好在对应于“Mo_5”的起奏部分发声之后(50毫秒内)响起,从而会出现所谓的“两次发声”。
因此,如在情况B中那样,如果当前再现的主乐节200的任何起始信息“Mo_y”正好出现在处于插入乐节210的起始信息“Fo_x”(其正好在乐节切换指令的接收时间之后)之前的预定时间内(步骤S15中的确定为“是”),则CPU1在步骤S17不仅将正好出现在处于插入乐节210的起始信息“Fo_x”(其正好在乐节切换指令的接收时间之后)(情况B中的“Fo_7”)之前的预定时间内的当前再现的主乐节200的起始信息“Mo_y”(情况B中的“Mo_5”)设置为当前再现的主乐节200的终止定时,而且将主乐节200的起始信息“Mo_y”(情况B中的“Mo_5”)设置为用于使被指定为切换目标的插入乐节210的再现开始的起始定时。因为在主乐节的“Mo_5”发声之前使主乐节的再现终止并且随后开始再现插入乐节,所以这种设置可防止两次发声。
在步骤S16或者S17之后,CPU 1结束图7的处理。
箭头50c所指示的“情况C”是其中用户给出用于在第一小节的第四拍或者在第一小节的第四拍之后切换至插入乐节210的指令的情况。在这种情况下,CPU 1在以上步骤S11确定为“是”,从而前进至步骤S13的“小节边界处乐节切换定时设置处理”。
在“小节边界处乐节切换定时设置处理”中,如图8所示,CPU 1在步骤S18确定正好在当前再现的小节结束之前的预定时间(范围)内是否存在当前再现的主乐节200的任何起始信息“Mo_z”(z是值“1”至“10”中的任一个)。预定时间的时长设为例如50毫秒以防止如针对步骤S15所说明的“两次发声”。
在情况C中,接收到乐节切换指令的时间点(即,乐节切换指令的接收时间)(箭头50c)正好在第一小节结束之前,并且正好在第一小节结束之前出现的主要乐节200的起始信息是“Mo_6”,并且在这里假设起始信息“Mo_6”出现在第一小节结束的预定时间(例如,50毫秒)内。因此,如果在第一小节结束时或者在正好出现在乐节切换指令的时间之后的插入乐节210的起始信息“Fo_1”的位置处执行乐节切换,则“Fo_1”的起奏部分将正好在“Mo_6”的起奏部分发声之后(即,50毫秒内)响起,从而将发生“两次发声”。
因此,在正好在小节结束之前接收到乐节切换指令(如情况C中那样)以及正好在小节结束之前的预定时间(例如,50毫秒)内当前再现的主要篇章200的起始信息“Mo_z”中的任一个(步骤S18中确定为“是”)的情况下,CPU 1在步骤S19不仅将正好在小节结束之前的当前再现的主乐节200的起始信息“Mo_z”(情况C中的“Mo_6”)的位置设为当前再现的主要乐节200的终止定时,而且CPU 1在步骤S20将当前再现的小节的边界位置(情况C中的第一小节的结尾或者第二小节的开头)设为用于使被指定为切换目标的插入乐节210的再现开始的起始定时。
另一方面,在其中正好在小节结束之前接收到乐节切换指令但是正好在小节结束之前的预定时间(例如,50毫秒)内不存在当前再现的主乐节200的起始信息“Mo_z”(步骤S18中确定为“否”)的情况下,CPU 1将当前再现的小节的边界位置设置为对被指定的插入乐节210进行再现的起始定时,而且将当前再现的小节的边界位置设为当前再现的主乐节200的终止定时。注意,在本领域中,通常将在小节边界位置处行乐节切换本身作为利用例如MIDI数据的伴奏模式数据的乐节切换控制。
在步骤S20之后,CPU 1终止图8的处理。CPU 1执行的步骤S7、S16、S17和S19的前述操作一起充当这样的设置步骤,其至少基于接收到切换指令的时间点以及参照当前再现的第一组波形数据的切换位置信息和被指定的第二组波形数据的切换位置信息,将第二组波形数据的一个切换位置或者当前再现的第一组波形数据的一个切换位置设置为用于使当前再现的第一组波形数据的再现终止的终止定时;或者一起充当这样的设置部分,其至少基于接收到切换指令时的时间点以及参照当前再现的第一组波形数据的切换位置信息和被指定的第二组波形数据的切换位置信息,将第二组波形数据的一个切换位置或者当前再现的第一组波形数据的一个切换位置设置为用于使当前再现的第一组波形数据的再现终止的终止定时的设置部分。
在通过图6至图8的处理(即,通过步骤S7的操作)设置乐节切换定时之后,自动演奏处理返回至步骤S2。然后,在步骤S2和S3执行主乐节200的波形数据的循环再现的同时,一旦当前再现的主要乐节200的再现位置到达按照前述方式设置的乐节切换定时,CPU 1就使得将要再现的波形数据(再现对象)从主乐节200的第一组波形数据20切换至插入乐节210的第二组波形数据20’。
图9是通过CPU 1执行的乐节切换处理的流程图。乐节切换处理是每隔对应于波形读出时钟的预定时间间隔而开始的中断处理。在步骤S21,CPU 1确定当前再现的主乐节200的再现位置是否到达在步骤S16、S17或S19设置的终止定时。响应于当前再现的主乐节200的再现位置到达乐节切换定时(步骤S21中确定为“是”),CPU 1结束主乐节200的波形数据20的读出。响应于波形数据20的读出终止,音频再现部分8使主乐节200的波形数据20的再现终止。
在下一步骤S23,CPU 1确定当前再现的主乐节200的再现位置是否到达在步骤S16、S17或S20设置的起始定时。响应于当前再现的主乐节200的再现位置到达起始定时(步骤S23中的确定是),CPU 1开始读出插入乐节210的波形数据20’。响应于开始读出插入乐节210的波形数据20’,音频再现部分8开始再现插入乐节210的波形数据20’。另一方面,如果当前再现的主乐节200的再现位置还未到达起始定时或者终止定时(步骤S21和S23中确定为“否”),则CPU 1结束图9的处理。按照这种方式,每当图9的中断处理开始时,CPU 1等待到达终止定时或者起始定时。
在其中在小节内给出乐节切换指令并且正好在插入乐节的起始信息“Fo_5”(其正好在乐节切换指令之后)之前的预定时间内不存在主乐节的起始信息“Mo_y”(步骤S15中确定为“否”)的情况下(如在情况A中那样),一旦当前再现的主乐节200的再现位置到达对应于“Fo_5”的位置(以上步骤S21和S23中确定为“是”),CPU 1和音频再现部分8(在以上步骤S22和S24)不仅使主乐节200的波形数据20的再现终止,而且开始再现插入乐节210的波形数据20’。在这种情况下,因为主乐节正好在“Fo_5”之前的预定时间内没有不期望的乐音(起奏部分)并且因为插入乐节210的波形数据的再现可始于“Fo_5”的起奏部分,所以能够可靠地防止由于两次发声以及由于在乐音中途(波形中的一个“峰”)开始再现而产生噪声。
此外,在其中在小节内给出乐节切换指令并且正好在插入乐节210的起始信息“Fo_7”(其正好在乐节切换指令之后出现)之前的预定时间内出现主乐节的起始信息“Mo_5”(步骤S15中确定为“是”)的情况下(如在情况B中那样),一旦当前再现的主乐节200的再现位置到达对应于“Mo_5”的位置(以上步骤S21和S23中确定为“是”),CPU 1和音频再现部分8(在以上步骤S22和S24中)不仅使主乐节200的波形数据20的再现终止,而且开始再现插入乐节210的波形数据20’。在这种情况下,因为在位置“Mo_5”使主乐节200的波形数据的再现终止,所以可避免“Mo_5”的起奏部分的发声。当在位置“Mo_5”开始再现插入乐节210的波形数据20’时,在位置“Fo_7”开始插入乐节210的发声。因此,同样地,在这种情况下,不仅能够可靠地防止由于两次发声而产生噪声,而且能够可靠地防止由于在乐音中途(波形中的一个“峰”)开始再现而产生噪声。
在其中在小节边界给出乐节切换指令并且正好在小节结束之前的预定时间内出现主乐节的起始信息“Mo_6”(以上步骤S18中确定为“是”)的情况下(如情况C中那样),一旦当前再现的主乐节200的再现位置到达对应于“Mo_6”的位置(以上步骤S21中确定为“是”),CPU 1和音频再现部分8就终止主乐节200的波形数据20的再现(以上步骤S22)。然后,一旦当前再现时序到达小节边界位置(以上步骤S23中确定为“是”),CPU 1和音频再现部分8就开始再现插入乐节210的波形数据20’(以上步骤S24)。在这种情况下,通过在位置“Mo_6”终止主乐节200的波形数据20的再现,可避免起奏部分“Mo_6”的发声,因此,能够可靠地防止由于两次发声而产生噪声。
此外,在其中在小节边界处给出乐节切换指令并且正好在小节结束之前的预定时间内不存在主乐节的起始信息“Mo_z”(以上步骤S18中确定为“否”)的情况下,一旦当前再现的主乐节的再现位置到达小节边界位置(以上步骤S21和S23中确定为“是”),CPU 1和音频再现部分8就终止主乐节200的波形数据20的再现,并且开始再现插入乐节210的波形数据20’(以上步骤S22和S24)。
通过CPU 1执行的步骤S22的前述操作充当控制步骤,其响应于第二组波形数据的指定,执行用于使得将要通过再现步骤再现的波形数据从第一组波形数据切换至第二组波形数据的控制,该控制步骤响应于通过再现步骤的波形数据再现的时序到达通过设置步骤设置的终止定时,来至少执行用于使第一组波形数据的再现终止的控制;或者,通过CPU 1执行的步骤S22的前述操作充当控制部分,其响应于第二组波形数据的指定,执行用于使得将要通过再现部分再现的波形数据从第一组波形数据切换至第二组波形数据的控制,该控制部分响应于通过前述再现部分的波形数据再现时序到达设置的终止定时,来至少执行用于使第一组波形数据的再现终止控制。
一旦再现目标通过图9的处理切换至插入乐节210的波形数据20’,CPU 1和音频再现部分8就在一个小节结束之前再现插入乐节210的波形数据20’至少一次,并且通过图5的步骤S2和S3的操作终止插入乐节210的波形数据20’的再现。然后,CPU 1和音频再现部分8使再现对象返回到主乐节200,并且循环再现与主乐节200关联的波形数据。
因此,如上排列的自动演奏处理的示例可实现以下优越益处:允许在期望的时刻切换波形数据,同时可靠地防止由于在波形中途开始再现或者由于当再现对象将从主乐节200切换至插入乐节210时“两次发声”而产生噪声。
注意,虽然以上已经关于潜在切换位置设置在起奏部分中的每一个的起始位置的情况描述了当前实施例,但是本发明不限于此,并且这种潜在切换位置可例如设置在波形水平低于预定值的位置或者设置在这种较低波形水平状态持续预定时间的位置。
此外,虽然以上已经关于其中参照存储在与各组波形数据20和20’关联的波形再现控制信息22中的切换位置信息25而在步骤S6获取各组波形数据20和20’的起始信息“Mo_1”至“Mo_10”和“Fo_1”至“Fo_8”的情况描述了当前实施例,但是将在步骤S6获取的切换位置信息25不一定是预存储信息,而是可在对当前再现的波形数据20和与被指定为切换目标的插入乐节210关联的波形数据20’进行再现的过程中通过实时分析而进行计算。
此外,虽然上文将S11描述为:被设置为使用一个小节的边界位置作为充当确定条件的音乐边界的示例,但是步骤S11可这样设置,即,使用一组多个小节(诸如一组四个小节或八个小节)的边界位置作为这样的充当确定条件的音乐边界。作为另一替代方案,以上步骤S11可设置为例如使用拍数或者时钟脉冲作为这种确定条件。
此外,在其中不仅将要终止主乐节的波形数据20的再现而且将要在一个起始信息(“Fo_x”或者“Mo_y”)的相同位置开始再现插入乐节210的波形数据20’的情况下,如情况A或者情况B中那样,音频再现部分8可在乐节切换时对主乐节200的波形数据20和插入乐节210的波形数据20’以合适的时间宽度(例如,5.8毫秒)执行淡入淡出处理。此外,在其中将要在波形数据20的“Mo_z”的位置终止主乐节200的波形数据20的再现的情况下(如情况C那样),可执行淡出处理,以使得主乐节200的波形数据20在“Mo_z”的位置进入静默状态。
此外,虽然在图9的乐节切换处理中已经关于其中音频再现部分8终止主要乐节200的波形数据20的再现(步骤S22)以及开始再现插入乐节210的波形数据20’(步骤S24)的情况描述了当前实施例,但是步骤S22的操作可基于主要乐节200的波形数据20而非主要乐节200的波形数据20的再现终止(停止)使演奏乐音静音。
此外,虽然上面关于将当前再现的波形数据从主乐节200切换至插入乐节210的情况描述了前述实施例来作为乐节切换的示例,但是本发明不限于此,而是可应用于任何期望的部分之间的切换,诸如从主乐节200切换至结束乐节230以及从插入乐节210切换至结束乐节230。简短地说,只需要所述乐节切换处理是用于将给定的一组伴奏模式数据的波形数据切换至另一组伴奏模式数据的处理。
此外,虽然以上关于将要在单个演奏部(诸如鼓部)中使用的所述多组伴奏模式数据200、210、220、230、…描述了前述实施例,但是在前述数据库中还可存储与未示出的多个演奏部(诸如和弦伴奏部和低音部)关联的多个部特定的伴奏模式数据。在数据库中还可存储对应于多种音乐风格(例如爵士、流行、摇滚和蓝调)的多组伴奏模式数据200、210、220、230、…。
还应该注意,电子乐器100可被构造为将在MIDI数据中生成的伴奏模式数据进一步存储至数据库(存储装置4)中,从而可利用在MIDI数据中生成的伴奏模式数据执行自动演奏。此外,可在自动演奏中混合地包括利用在MIDI数据中生成的伴奏模式数据的一个或多个演奏部以及利用在波形数据中生成的伴奏模式数据的一个或多个演奏部。
应该注意,存储在数据库(存储装置4)中的伴奏模式数据200、210、220、230、…是例如由电子乐器100的制造者和生产者预先存储在数据库中的数据。然而,本发明不限于此,并且由电子乐器的用户新生成(记录)的伴奏模式数据可附加地存储在数据库中。另外,可经外部设备(诸如经互联网连接至电子乐器100的服务器设备)获取由制造者或者用户新生成的伴奏模式数据,从而使得已经存储在数据库中的伴奏模式数据可被获取到的伴奏模式数据替代,或者使得获取到的伴奏模式数据可以新存储在数据库中。根据时间推移,再现步骤或者再现部分,存储在存储部分中的所述多组波形数据中的任一组可布置为:不仅再现与存储在设于电子乐器100中的存储装置4中的伴奏模式数据200、210、220、230、…中的任一个相关联的波形数据,而且例如在经外部设备获取波形数据的同时再现经外部设备获取的波形数据。
还应该注意,电子乐器100不一定限于其中各种功能模块(例如演奏操作器单元5、显示部分7、音频再现部分8、MIDI乐音产生器部分9和乐音控制电路10)被设置或者包含在单个设备外壳中的类型,并且单独的装置或者元件可以每隔一个模块或多个功能模块就经MIDI接口等互连,以构造电子乐器100。
此外,本发明的波形再现设备的应用不限于电子乐器100,并且本发明的波形再现设备可应用于诸如个人计算机、便携式通信终端(例如PDA(便携式信息终端)和便携式电话)以及游戏装置等的任何其它类型的设备、装置和装备,只要这种设备、装置和装备能够至少基于波形数据执行乐音的自动演奏即可。
最终,应该理解,在本发明中采用的处理器可为能够执行微程序的诸如DSP的处理器,而不限于能够执行软件程序的诸如前述CPU1的处理器。作为另一替代形式,在本发明中采用的处理器可为包括能够实现期望处理功能的专用硬件电路(集成电路或者一组分离电路)的处理器。

Claims (6)

1.一种能够通过处理器执行的方法,所述方法通过利用存储在存储装置中的多组波形数据来再现波形,所述方法包括:
再现步骤,根据时间推移来再现存储在所述存储装置中的所述多组波形数据中的任一组;
指定步骤,在通过所述再现步骤再现所述多组波形数据中的第一组波形数据的过程中指定所述多组波形数据中的第二组波形数据;
获取步骤,针对所述第一组波形数据和所述第二组波形数据中的每一组波形数据,获取指明该波形数据中的一个或多个切换位置的切换位置信息;
设置步骤,至少基于接收到对所述第二组波形数据的指定的时间点以及参照所述第一组波形数据的切换位置信息和所述第二组波形数据的切换位置信息,来确定所述第二组波形数据中的一个切换位置和当前再现的所述第一组波形数据中的一个切换位置之中的哪一个应当被设置为用于使当前再现的所述第一组波形数据的再现终止的终止定时,所述设置步骤将所确定的切换位置设置为所述终止定时;以及
控制步骤,响应于所述第二组波形数据的指定,执行用于将将要通过所述再现步骤再现的波形数据从所述第一组波形数据切换至所述第二组波形数据的控制,所述控制步骤响应于通过所述再现步骤再现波形数据的时序到达通过所述设置步骤设置的所述终止定时,来至少执行用于使所述第一组波形数据的再现终止的控制。
2.根据权利要求1所述的方法,其中,所述设置步骤还将所设置的终止定时设置为用于开始再现指定的第二组波形数据的起始定时,并且
其中,所述控制步骤响应于通过所述再现步骤再现波形数据的时序到达所设置的起始定时,来执行用于开始再现所述第二组波形数据的控制。
3.根据权利要求1或2所述的方法,其中,所述设置步骤确定当前再现的第一组波形数据中的任何切换位置是否存在于正好在接收到对所述第二组波形数据的指定的时间点之后出现的第二组波形数据中的潜在切换位置之前的预定时间内,并且
其中,在确定当前再现的第一组波形数据中的任何切换位置存在于所述预定时间内时,所述设置步骤将当前再现的第一组波形数据中的切换位置设置为所述终止定时,但当确定在所述预定时间内不存在当前再现的第一组波形数据中的切换位置时,所述设置步骤将正好在接收到对所述第二组波形数据的指定的时间点之后出现的第二组波形数据中的切换位置设置为所述终止定时。
4.根据权利要求1所述的方法,其中,所述设置步骤还将正好在接收到对所述第二组波形数据的指定的时间点之后出现的音乐边界位置设置为用于开始再现所指定的第二组波形数据的起始定时,并且
其中,所述控制步骤响应于通过所述再现步骤再现波形数据的时序到达设置的起始定时,来执行用于开始再现所述第二组波形数据的控制。
5.根据权利要求1或4所述的方法,其中,所述设置步骤确定当前再现的第一组波形数据中的任何切换位置是否存在于正好在接收到对所述第二组波形数据的指定的时间点之后出现的音乐边界之前的预定时间内,并且
其中,在确定当前再现的第一组波形数据中的任何切换位置存在于所述预定时间内时,所述设置步骤将所述第一组波形数据中的切换位置设置为所述终止定时,但当确定在所述预定时间内不存在当前再现的第一组波形数据中的切换位置时,所述设置步骤将正好在接收到对所述第二组波形数据的指定的时间点之后出现的音乐边界位置设置为所述终止定时。
6.一种波形再现设备,包括:
存储部分,其被构造为存储多组波形数据;
再现部分,其被构造为根据时间推移来再现存储在所述存储部分中的所述多组波形数据中的任一组;
指定部分,其在通过所述再现部分再现所述多组波形数据中的第一组波形数据的过程中指定所述多组波形数据中的第二组波形数据;
获取部分,其针对所述第一组波形数据和所述第二组波形数据中的每一组波形数据来获取指明该波形数据中的一个或多个切换位置的切换位置信息;
设置部分,其至少基于接收到对所述第二组波形数据的指定的时间点以及参照所述第一组波形数据的切换位置信息和所述第二组波形数据的切换位置信息,来确定所述第二组波形数据中的一个切换位置和当前再现的所述第一组波形数据中的一个切换位置之中的哪一个应当被设置为用于使当前再现的所述第一组波形数据的再现终止的终止定时,所述设置部分将所确定的切换位置设置为所述终止定时;以及
控制部分,其响应于所述第二组波形数据的指定,执行用于将将要通过所述再现部分再现的波形数据从所述第一组波形数据切换至所述第二组波形数据的控制,所述控制部分响应于通过所述再现部分再现波形数据的时序到达通过所述设置部分设置的所述终止定时,来至少执行用于使所述第一组波形数据的再现终止的控制。
CN201480055703.2A 2013-10-09 2014-10-07 通过在多组波形数据之间切换来再现波形的技术 Expired - Fee Related CN105637579B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013-212257 2013-10-09
JP2013212257A JP6252088B2 (ja) 2013-10-09 2013-10-09 波形再生を行うためのプログラム、波形再生装置及び方法
PCT/JP2014/076844 WO2015053278A1 (ja) 2013-10-09 2014-10-07 複数セットの波形データを切り替えて波形再生を行う技術

Publications (2)

Publication Number Publication Date
CN105637579A CN105637579A (zh) 2016-06-01
CN105637579B true CN105637579B (zh) 2019-10-22

Family

ID=52813094

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480055703.2A Expired - Fee Related CN105637579B (zh) 2013-10-09 2014-10-07 通过在多组波形数据之间切换来再现波形的技术

Country Status (5)

Country Link
US (1) US20160240179A1 (zh)
EP (1) EP3057090A4 (zh)
JP (1) JP6252088B2 (zh)
CN (1) CN105637579B (zh)
WO (1) WO2015053278A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9842577B2 (en) 2015-05-19 2017-12-12 Harmonix Music Systems, Inc. Improvised guitar simulation
GB2581032B (en) 2015-06-22 2020-11-04 Time Machine Capital Ltd System and method for onset detection in a digital signal
US9773486B2 (en) 2015-09-28 2017-09-26 Harmonix Music Systems, Inc. Vocal improvisation
US9799314B2 (en) * 2015-09-28 2017-10-24 Harmonix Music Systems, Inc. Dynamic improvisational fill feature
GB2557970B (en) 2016-12-20 2020-12-09 Mashtraxx Ltd Content tracking system and method
JP7250132B2 (ja) * 2019-07-09 2023-03-31 ローランド株式会社 録音再生装置
JP7419830B2 (ja) * 2020-01-17 2024-01-23 ヤマハ株式会社 伴奏音生成装置、電子楽器、伴奏音生成方法および伴奏音生成プログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4314493A (en) * 1977-11-26 1982-02-09 Kabushiki Kaisha Kawai Gakki Seisakusho Automatic rhythm pattern accompaniment equipment
CN1197974A (zh) * 1997-01-31 1998-11-04 雅马哈株式会社 采用时间扩展/压缩控制技术的音发生装置及方法
US5919047A (en) * 1996-02-26 1999-07-06 Yamaha Corporation Karaoke apparatus providing customized medley play by connecting plural music pieces
US6080926A (en) * 1998-05-28 2000-06-27 Kabushiki Kaisha Kawai Gakki Seisakusho Automatic accompanying apparatus and automatic accompanying method capable of simply setting automatic accompaniment parameters
CN101064101A (zh) * 2006-04-25 2007-10-31 雅马哈株式会社 乐音合成装置和方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3446528B2 (ja) * 1997-03-21 2003-09-16 ヤマハ株式会社 自動演奏制御装置
JPH1110462A (ja) * 1997-06-19 1999-01-19 Seiko Sangyo Kk 庇の製造方法
EP1304680A3 (en) * 2001-09-13 2004-03-03 Yamaha Corporation Apparatus and method for synthesizing a plurality of waveforms in synchronized manner
JP3724410B2 (ja) * 2001-10-29 2005-12-07 ヤマハ株式会社 携帯端末における楽曲編集装置及び携帯端末で利用する楽曲編集プログラム
JP3909677B2 (ja) * 2002-04-12 2007-04-25 株式会社河合楽器製作所 自動演奏装置
JP2005010462A (ja) * 2003-06-19 2005-01-13 Yamaha Corp 自動演奏装置及び自動演奏処理プログラム並びに自動演奏パターンデータを記録したコンピュータ読み取り可能な記録媒体
JP2006292954A (ja) * 2005-04-08 2006-10-26 Kawai Musical Instr Mfg Co Ltd 電子楽器
JP4821533B2 (ja) * 2006-09-21 2011-11-24 ヤマハ株式会社 アルペジオ演奏装置及びプログラム
JP5504883B2 (ja) * 2009-12-25 2014-05-28 ヤマハ株式会社 自動伴奏装置
JP6019803B2 (ja) * 2012-06-26 2016-11-02 ヤマハ株式会社 自動演奏装置及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4314493A (en) * 1977-11-26 1982-02-09 Kabushiki Kaisha Kawai Gakki Seisakusho Automatic rhythm pattern accompaniment equipment
US5919047A (en) * 1996-02-26 1999-07-06 Yamaha Corporation Karaoke apparatus providing customized medley play by connecting plural music pieces
CN1197974A (zh) * 1997-01-31 1998-11-04 雅马哈株式会社 采用时间扩展/压缩控制技术的音发生装置及方法
US6080926A (en) * 1998-05-28 2000-06-27 Kabushiki Kaisha Kawai Gakki Seisakusho Automatic accompanying apparatus and automatic accompanying method capable of simply setting automatic accompaniment parameters
CN101064101A (zh) * 2006-04-25 2007-10-31 雅马哈株式会社 乐音合成装置和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Advanced Synchronization of Audio or Symbolic Musical Patterns: An Algebraic Approach;F. Berthaut et al.;《2012 IEEE Sixth International Conference on Semantic Computing》;20121231;第302-303、306-308页 *

Also Published As

Publication number Publication date
US20160240179A1 (en) 2016-08-18
EP3057090A1 (en) 2016-08-17
WO2015053278A1 (ja) 2015-04-16
JP6252088B2 (ja) 2017-12-27
JP2015075661A (ja) 2015-04-20
CN105637579A (zh) 2016-06-01
EP3057090A4 (en) 2017-04-19

Similar Documents

Publication Publication Date Title
CN105637579B (zh) 通过在多组波形数据之间切换来再现波形的技术
CN104412320B (zh) 使用音频波形数据的自动演奏技术
CN103514868B (zh) 使用音频波形数据的自动演奏技术
CN103514867B (zh) 使用音频波形数据的自动演奏技术
JP7476934B2 (ja) 電子楽器、電子楽器の制御方法、及びプログラム
JP3915807B2 (ja) 奏法自動判定装置及びプログラム
JP3541686B2 (ja) 演奏練習装置と記録媒体
JP3829780B2 (ja) 奏法決定装置及びプログラム
JP2002229567A (ja) 波形データ録音装置および録音波形データ再生装置
JP2006126710A (ja) 奏法決定装置及びプログラム
CN112825244A (zh) 配乐音频生成方法和装置
JP2000194375A (ja) 波形再生装置
JP3613191B2 (ja) 波形生成方法及び装置
JP2006350101A (ja) 楽音波形合成装置
JP2003114680A (ja) 楽曲情報編集装置及び楽曲情報編集プログラム
JP3637782B2 (ja) データ生成装置と記録媒体
JP3327188B2 (ja) 和音進行作成支援装置及び和音進行作成支援プログラムを記録した記録媒体
JP4173475B2 (ja) 歌詞表示方法および装置
JPH1097256A (ja) 楽音発生装置及びプログラムを記録した媒体
JPH10171475A (ja) カラオケ装置
JP4229064B2 (ja) 音声合成装置および音声合成プログラム
JP3876896B2 (ja) 波形生成方法及び装置
JPH1091181A (ja) カラオケ装置
JP2003150162A (ja) 楽音発生装置及びプログラムを記録した媒体
JP2006133464A (ja) 奏法決定装置及びプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20191022

Termination date: 20211007