CN1153187C - 具有软件和硬件声源的计算机化的音乐系统 - Google Patents

具有软件和硬件声源的计算机化的音乐系统 Download PDF

Info

Publication number
CN1153187C
CN1153187C CNB961104171A CN96110417A CN1153187C CN 1153187 C CN1153187 C CN 1153187C CN B961104171 A CNB961104171 A CN B961104171A CN 96110417 A CN96110417 A CN 96110417A CN 1153187 C CN1153187 C CN 1153187C
Authority
CN
China
Prior art keywords
waveform
waveform generator
musical sound
generator
performance information
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
CNB961104171A
Other languages
English (en)
Other versions
CN1164727A (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.)
Yamaha Corp
Original Assignee
Yamaha 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 Yamaha Corp filed Critical Yamaha Corp
Publication of CN1164727A publication Critical patent/CN1164727A/zh
Application granted granted Critical
Publication of CN1153187C publication Critical patent/CN1153187C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/002Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
    • G10H7/004Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof with one or more auxiliary processor in addition to the main processing unit
    • 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/002Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
    • G10H7/006Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof using two or more algorithms of different types to generate tones, e.g. according to tone color or to processor workload
    • 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
    • G10H2230/00General physical, ergonomic or hardware implementation of electrophonic musical tools or instruments, e.g. shape or architecture
    • G10H2230/025Computing or signal processing architecture features
    • G10H2230/041Processor load management, i.e. adaptation or optimization of computational load or data throughput in computationally intensive musical processes to avoid overload artifacts, e.g. by deliberately suppressing less audible or less relevant tones or decreasing their complexity
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/201Physical layer or hardware aspects of transmission to or from an electrophonic musical instrument, e.g. voltage levels, bit streams, code words or symbols over a physical link connecting network nodes or instruments
    • G10H2240/241Telephone transmission, i.e. using twisted pair telephone lines or any type of telephone network
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/201Physical layer or hardware aspects of transmission to or from an electrophonic musical instrument, e.g. voltage levels, bit streams, code words or symbols over a physical link connecting network nodes or instruments
    • G10H2240/271Serial transmission according to any one of RS-232 standards for serial binary single-ended data and control signals between a DTE and a DCE
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/291SCSI, i.e. Small Computer System Interface
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/295Packet switched network, e.g. token ring
    • G10H2240/305Internet or TCP/IP protocol use for any electrophonic musical instrument data or musical parameter transmission purposes
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/311MIDI transmission
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/315Firewire, i.e. transmission according to IEEE1394
    • 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/471General musical sound synthesis principles, i.e. sound category-independent synthesis methods
    • G10H2250/511Physical modelling or real-time simulation of the acoustomechanical behaviour of acoustic musical instruments using, e.g. waveguides or looped delay lines

Abstract

一种音乐声发生装置,按照性能信息产生一个波形以发生音乐声。在该装置中,第1波形发生器能操作产生一个波形。第2波形发生器能独立于第1波形发生器并操作产生一个波形,一个输入器件提供性能信息。一个选定组件,选定第1波形发生器和第2波形发生器中的至少一个响应所提供的性能信息。一个控制器按照所提供的性能信息选择地操作,第1波形发生器和第2波形发生器中所选定的一个。一个输出器件,基于产生的波形发生音乐声。

Description

具有软件和硬件声源的计算机化的音乐系统
技术领域
本发明涉及在采用(CPU)的计算机应用系统,例如电子游戏机,卡拉OK装置,个人计算机等中所使用的一种音乐声发生器,更具体地讲涉及能够按照性能信息产生各种音乐声的音乐声发生器。
背景技术
通常,在一种装置例如个人计算机中,可以用一个专用硬件模块例如声源CSI和声源卡,并通过驱动程序来控制所安装的声源器件,来再现音乐声。最近在个人计算机中CPU的性能显著地改进,从而通过CPU代替特定的硬件模块能够产生音乐声。与通过特定硬件产生音乐声的″硬件声源″相对照此种音乐声发生称为″软件声源″。CPU按照特定程序计算音乐声波形数据。通过软件声源产生的声品质依赖于执行该程序的CPU性能。如果CPU的性能高,那么能够在高速率下计算波形数据,从而能够提高波形数据的取样频率而实现高品质的音乐声发生。然而,如果CPU性能差,难于在高速率下计算数据,结果必须降低取样频率。上述情况必然导致再现音乐声品质较差。
关于安装可选组件,在应用系统的结构中例如个人计算机的不同系统之间存在很大的差别。一般从广义上说,可选器件包括硬盘,视频卡等。然而,在本发明中可选组件表示涉及音乐声发生中能连接的器件。值得注意,在不同的系统配置中CPU的处理能力可能是不同的。再说,在产生声音的应用程序和执行其它工作的其他应用程序同时并行调用时,CPU的负载可以随着程序运行状况和当前系统中执行任务的状况而变化。在上述方式中,在相同的系统中CPU有效处理能力可以改变。因此,每当系统环境改变时,用户必须重新安排用于声产生的基本设置,这是非常劳累的。在这样的系统中用户不能识别在现行结构设置中声是否正确地产生,直到在实际再现声音时发生乐音任何丢失和跳越时才能识别。换句话说,就是直到声音被实际再现出来,是无法评介系统设置是否合理的。此外不论CPU的性能多么高,在许多情况中按照用户的希望能够利用一种外部声发生硬件,实际使用硬件资源。在这样情况中,全部使用硬件声源可能发生问题,也就是,不可能产生超过该声产生硬件设备的限制的声音。许多乐音不能再现。即使在CPU中有足够的处理能力,也不能增加众多音品种类。
发明内容
本发明的目的是解决上述问题,并提供一种能产生具有优良品质的各种音乐声的音乐声发生器。
按照本发明,一种音乐声产生装置,按照性能信息产生波形以发生音乐声。该装置包括能用于产生一种波形的第1波形发生器,能独立于第1波形发生器用于产生波形的第2波形发生器,用于提供性能信息的输入装置用于在第1波形发生器和第2波形发生器中至少选定一个来响应所提供的性能信息的选定装置,用于选择地操作在第1波形发生器和第2波形发生器中选定的一个,以根据所提供的性能信息产生波形的控制装置,以及用于基于产生的波形发生音乐声的输出装置。
具体地讲,输入装置包括用于提供性能信息的装置,所说性能信息包含有效地选定音乐声的音品的音品信息,并包含有效地选定音乐声产生的定时的定时信息。此外,选定装置包括用于在第1波形发生器和第2波形发生器之中选定一个来响应音品信息,从而输出装置在选定的定时产生具有选定音品的音乐声的装置。  选定装置可以包括用于一致地既选定第1波形发生器又选定第2波形发生器,从而控制装置既操作第1波形发生器又操作第2波形发生器,以并列方式并发产生波形的可操作装置。
输入装置可以包括用于提供性能信息有效地命令并发产生许多音乐声的装置。此外选定装置可以包括用于按照由性能信息选定的并发音乐声的数目选定第1波形发生器和第2波形发生器中的一个,结果选定的一个具有足以产生相应于音乐声数目的许多波形容量的装置。
选定装置还可以包括操作装置,当并发音乐声的数目超过第1波形发生器和第2波形发生器中的任一个容量时用于既选定第1波形发生器又选定第2波形发生器,以保证完全产生并发音乐声。
第1波形发生器包括可选择地连接到控制装置的一个外部波形发生器,同时第2波形发生器可以包括一个与控制器成一体的内部波形发生器,结果当外部波形发生器没连接到控制装置时,既使外部波形发生器应该主要相应于提供的性能信息,该选定装置还是选定内部波形发生器代替外部波形发生器。
第2波形发生器、输入装置、选定装置和控制装置可以互相成为一体,以构成组成计算机的主要部件,同时第1波形发生器单独构成一个与主要部分分离的辅助部分、其可选择地安装到计算机上。
第1波形发生器可以由控制装置驱动的硬件组件组成,同时第2波形发生器可以由安装在控制装置中的软件组件构成。
第2波形发生器包括许多数字波形发生器,其基于不同算法运算产生具有不同品质的数字波形。进一步,控制装置可以包括装置用于按照提供的性能信息,选择地操作最佳的一个数字波形发生器。
第2波形发生器可以包括波形存储型式的数字波形发生器,其能基于相对简单的算法产生具有相对低品质的数字波形,而另一个数字波形发生器能基于相对复杂的算法产生具有相对高品质的另一个数字波形。
第2波形发生器可以包括一个计算机化的波形发生器,其能够按照给定算法在可变操作速率下通过连续计算数字波形样值,产生一个数字波形。进一步,控制装置可以包括用于予先操作计算机化的波形发生器,以在测量在进行测试产生时的操作速率的同时,进行测试产生模型数字波形装置,用于最佳测定一个可与测量操作速率比较的取样频率的测定装置,以及用于实际上操作计算机化的波形发生器,能够同样地按照所提供的性能信息在测定的取样频率下,连续地计算一个实际数字波形的样值的装置。
测定装置可以包括用于将取样频率固定到一个步进预定水平的装置,所说预定速率低于和最接近测量的操作速率。
控制装置还可以包括变换装置,当测定取样频率下落低于所限定的保证数字波形最低品质的一个临界水平时,操作变换装置用于改变算法以提高计算机化波形发生器的操作速率,从而能再测定取样频率以超过该临界水平。
变换装置可以包括用于将复杂的算法改变成简单的算法,从而计算机化的波形发生器基于简单的算法操作以连续地读出予储存的一个样值以再现产生数字波形的装置。
按照本发明的另一方面,一个声产生装置,按照性能信息产生一个数字波形以发生一个音乐声,该装置包括用于提供性能信息的输入装置,计算机化的波形发生器能基于给定算法,通过连续计算数字波形样值,在变化操作速率下产生一个数字波形,测试装置用于予先操作计算机化的波形发生器,对模型数字波形的产生进行测试,同时测量进行测试产生时的操作速率,测定装置用于最佳测定一个与测量操作速率可比较的取样频率,控制装置用于实际操作计算机化的波形发生器,在测定的取样频率下能够同样连续地计算实际数字波形样值,以及输出装置用于按照所提供的性能信息基于实际数字波形以发生音乐声。
在本发明装置中,输入装置提供性能信息,选定装置选定哪一个波形产生器应该产生相关于性能信息的音乐声波形。由选定装置选定的波形发生器控制产生相关性能信息的音乐声波形。因此,性能信息本身能选定第1和第2波形发生器的哪一个应该产生具有性能信息的音乐声波形。第1和第2波形发生器在结构上彼此不同,结果在第1和第2波形发生器之间,它们处理的负载和产生的声可以使得在波形产生方面不同。所以,通过选择第1波形发生器用于产生相关于性能信息的一个确定事件的音乐声波形,而通过选择第2波形发生器用于产生相关于性能信息的另一个确定事件的音乐声波形,有可能产生各种音乐声。再说,通过控制波形发生器分配到的性能信息,有可能调节处理负载。
最好确定哪一个波形发生器、按照产生音乐声的音品产生音乐声波形,因为一定型式的波形发生器应得到一个最佳确定的音品。按照本发明中性能信息选定的音品确定最佳波形发生器以产生相关于性能信息的音乐声波形。在本发明中,音品信息可以包括在性能信息中。如上所述,既使提供相同性能信息,由于第1和第2波形发生器之间的差别,音乐声的特征还是可以不同。换句话说,能够再现音乐声各种波形。按照相同性能信息通过第1和第2波形发生器与产生音乐声波形的同时,对于共同音品通过使用不同波形发生器能够实现音乐声的变化。
由于音乐声音产生条件的原因,即使按照性能信息主要波形发生器应该产生波形,还有可能应该通过替代的波形发生器产生音乐声波形。例如,上述替代可能发生在主要波形发生器的声发生容量几乎达到其能力的最大值的时候。在本发明中附加了性能信息,考虑了音乐声波形产生的数目用于测定哪一个波形发生器应该产生音乐声,以便防止波形计算溢出。
顺便说,第1和第2波形发生器在波形产生功能上是相同的,因此用户可以不用两个都使用,而只用一个。例如,第1波形发生器是可拆卸的,而第2个波形发生器是永久安装的。在本发明中,如果装有第1波形发生器,那么通过第1波形发生器应该产生相关于性能信息的音乐声波形,因而选定第1波形发生器产生相关于性能信息的音乐声波形。否则,如果第1波形发生器突然由装置上卸去的话,那么第2波形发生器可以选定为产生相关于性能信息的音乐声波形。起始由第1波形发生器产生的音乐声波形可以改换由第2个波形发生器产生。因此,既使第1波形发生器不存在,还是安全地产生音乐声波形。
在本发明中,第1和第2波形发生器能分别计算音乐声波形的样值。测试装置测量第2波形发生器产生音乐声波形所需的时间。按照测试装置测量的时间,测定了取样频率。因此,对于该系统结构在最佳取样频率下能产生音乐声。一般来说,如果取样频率连续变化,那么处理频率测定的安排变得复杂。然而,在本发明一种特定形式中,由预定步进水平中选择由测定装置测定的取样频率。
如果由测定装置测定的取样频率低于临界水平的话,那么改变波形的计算处理,因为在测定的取样频率下,通过起始波形产生不能保持产生声的品质。在此种情况中,最好改变计算处理,例如简单读出音乐声波形的样值以便提高取样频率。
根据本发明的一种音乐声发生方法,按照性能信息产生波形以发生音乐声,其特征在于包括步骤:准备一个第1波形发生器,能操作用于产生一个波形,准备一个第2波形发生器,能独立于第1波形发生器操作用于产生一个波形,提供性能信息,选定第1波形发生器和第2波形发生器中至少一个,响应所提供的性能信息,用控制器选择操作选定的第1波形发生器和第2波形发生器中的一个,按照所提供的性能信息产生波形,以及基于产生的波形发生音乐声。
这种音乐声发生方法,其特征还在于,所提供的步骤包括提供性能信息,其包含音品信息有效地选定音乐声的音品,和定时信息,有效地选定发生音乐声的定时,以及选定步骤包括,选定第1波形发生器和第2波形发生器中的一个,响应该音品信息,从而在选定的定时发生具有选定音品的音乐声。
这种音乐声发生方法,其特征还在于,所述选定步骤包括一致选定第1波形发生器和第2波形发生器两个波形发生器,从而控制器操作第1波形发生器和第2波形发生器两个波形发生器,以并列方式同时产生波形。
这种音乐声发生方法,其特征还在于,所述提供的步骤包括提供性能信息以有效地命令同时发生许多音乐声,和选定步骤包括按照由性能信息选定许多并发音乐声,选定第1波形发生器和第2波形发生器中的一个,使得选定的一个具有的容量足以产生相应于音乐声数目的许多波形。
这种音乐声发生方法,其特征还在于,所述选定步骤还包括选定第1波形发生器和第2波形发生器两个波形发生器以保证当并发音乐声的数目超过第1波形发生器和第2波形发生器中的任一个容量时,完全发生并发音乐声。
这种音乐声发生方法,其特征还在于,所述准备步骤包括准备能可选择地连接到控制器上的一个外部波形发生器组成的第1波形发生器,和与控制器成一体的一个内部波形发生器所构成的第2波形发生器,从而当外部波形发生器没连接到控制器上时,既使外部波形发生器应主要相应于所提供的性能信息,还是选定内部波形发生器代替外部波形发生器。
这种音乐声发生方法,其特征还在于,所述准备步骤包括准备,由控制器驱动的硬件组件构成的第1波形发生器,和由安装在控制器中的软件组件构成的第2波形发生器。
这种音乐声发生方法,其特征还在于,所述准备步骤包括准备,许多数字波形发生器所构成的第2波形发生器,这些数字波形发生器基于不同算法,可操作运算产生具有不同品质的数字波形,并且所述操作步骤包括按照所提供的性能信息,选择操作数字波形发生器中的最佳的一个。
这种音乐声发生方法,其特征还在于,所述准备步骤包括准备第2波形发生器,它包含一个波形存储型式的数字波形发生器,能基于相对简单的算法操作产生具有相对低品质的数字波形,和另一个数字波形发生器,能基于相对复杂的算法操作产生具有相对高品质的另一个数字波形。
这种音乐声发生方法,其特征还在于,所述准备步骤包括准备由计算机化的波形发生器组成的第2波形发生器,能按照给定算法在可变操作速率下操作,通过连续计算数字波形的样值,产生数字波形,并且所述操作步骤包括先前操作计算机化的波形发生器的步骤,以进行试用产生模型数字波形,同时测量在进行试用产生时的操作速率,最佳测定一个可和测量的操作速率比较的取样频率,和实际上操作所述计算机化的波形发生器,使其按照所提供的性能信息在测定的取样频率下,连续地计算一个实际数字波形的样值。
这种音乐声发生方法,其特征还在于,所述测定步骤包括将取样频率固定到一个步进预定水平,所述预定水平低于和最接近测量的操作速率。
这种音乐声发生方法,其特征还在于,所述操作步骤进一步包括改变算法以提高计算机化波形发生器操作速率,从而当测定取样频率下落低于所限定的保证数字波形最低品质的一个临界水平时,能再测定取样频率以超过该临界水平。
这种音乐声发生方法,其特征还在于,所述改变步骤包括将复杂的算法改变成简单的算法,从而计算机化的波形发生器基于简单的算法操作,连续地读出预先储存的一些样值,以再现产生数字波形。
这种音乐声发生方法,其特征还在于,所述准备步骤包括准备计算机化的波形发生器,其连续地读出预先储存的一些样值,在将复杂算法改变成简单算法之前,该样值是按照复杂算法预先计算的。
根据本发明的一种音乐声发生方法,按照性能信息产生数字波形以发生音乐声,其特征在于包括步骤:提供性能信息,准备计算机化波形发生器,能基于给定算法操作,在可变操作速率下通过连续计算数字波形样值,产生数字波形,预先操作计算机化的波形发生器,以进行试用产生模型数字波形,同时测量在进行试用产生时的操作速率,最佳地测定一个可和测量操作速率比较的取样频率,实际操作计算机化的波形发生器,使其在测定的取样频率下,连续计算实际数字波形样值,以及按照所提供的性能信息,基于实际数字波形发生音乐声。
附图说明
图1表示本发明音乐声发生器第1个实施例的方块略图。
图2表示图1所示实施例一种改型的方块略图。
图3表示图1所示实施例另一种改型的方块略图。
图4A表示声源设备及其外部设备相互成一体安装的方块略图。
图4B表示DSP及其外部设备相互成一体安装的方块略图。
图5表示按照本发明在第1个实施例中的操作方式。
图6是在第1个实施例中所提供的随机存取存储器(RAM)的存储器映象。
图7表示在第1个实施例中所执行的全部程序流程图。
图8表示在第1个实施例中所执行的波形合成程序的流程图。
图9表示在第1个实施例中所执行的波形合成程序的流程图。
图10表示在第1个实施例中所执行的波形合成程序的流程图。
图11表示在第1个实施例中所执行的波形合成程序的流程图。
图12表示在波形合成程序中所执行的波形样值加载处理的流程图。
图13表示在波形合成程序中所执行的波形样值计算处理的流程图。
图14表示在波形合成程序中由CPU所执行的波形样值计算的流程图。
图15表示在波形合成程序中由所选择的硬件进行合成处理的流程图。
图16表示在波形合成程序中由所选择的硬件进行合成处理的流程图。
图17表示在波形合成程序中定时器处理的流程图。
图18表示在第2个实施例中由所选择的硬件进行合成处理的流程图。
图19表示在第3个实施例中由所选择的硬件进行合成处理的流程图。
图20表示在第4个实施例中由选择的硬件进行合成处理的流程图。
图21表示采用了本发明的一种改型的方块略图。
图22表示采用了本发明的另一种改型的方块略图。
图23表示本采用了发明的进一步改型的方块略图。
图24表示采用了本发明更进一步改型的方块略图。
图25表示本发明音乐声音发生装置另一个实施例的方块略图。
具体实施方式
以下参照附图将详细描述本发明的实施例。图1表示按照本发明一种音乐声发生器的第1个实施例的方块略图。在图1中标号10表示一个CPU,其按照储存在只读存储器(ROM)11的基本程序经由数据总线12来控制构成计算机系统的各个单元。标号13表示暂时存储各种寄存器、标记和数据的RAM。标号14表示接收和传送MIDI信息,在键盘上键操作所提供的信息以及经由各个接口I/F(未示出)的其它各种信息多种型式的输入/输出(I/O)端口。该多种型式I/O端口14接收以MIDI信息或键信息KBD形式的性能信息。在本实施例中,通过自动性能程序可以产生性能信息。在上述情况中,该自动性能程序意味着通过一定自动顺序程序以时间次序产生性能信息。所以,图1所示的设置不仅作为音乐声发生器工作,而且也作为一个定序器工作。该型式的I/F接口可以是串联或并联端口,RS-232C,RS-422等等。尤其是在RS-232C的情况中,计算机系统通过用调制解调器的公共电话网络与主键连通。因此,性能信息的输入源,在提供键盘操作信息的情况中可以是键盘,或者在提供MIDI信息的情况中,可以是通过I/F连接的外部设备,或者在提供自动性能信息的情况中可以是由CPU所执行的序列程序。标号15表示包括FD(软盘)或HD(硬盘)的储存单元。储存单元15还储存应用程序和数据。标号16表示由CRT或LCD(液晶显示)组成的显示器。显示器16在CPU10控制下显示各种数据。标号17表示代替CPU10执行浮点计算的一个选定共处理器。由CPU10进行剩余部分数据处理。标号18表示在以后描述的定时器处理中计算时间的一个定时器。标号19表示不受CPU控制而直接传送数据到和来自RAM20的一个DMAC(直接存储器存取控制器)。尽管在本实施例中这些是分立器件,可是现在共处理器17、定时器18和DMAC19可与CPU10一起容纳在一块芯片内。标号20表示一个RAM,其具有类似于前述RAM的硬件结构。然而,RAM13用作由CPU执行程序的工作区,而RAM20是一个波形存储器,其暂时存储由波形数据所表示的波形。标号21表示用于音乐声合成所需要的数字信号处理的一个DSP(数字信号处理器)。标号22表示一个选定的声源其构成一块LSI的第1波形产生器用于产生按照性能信息的音乐声音波形。标号23表示一个D/A转换器,当标记DACENBL置于″1″时其启动。在D/A转换器23之前,通常提供一个FIFD数据缓冲器(未示出)。在取样频率fs下读出储存在FIFO的波形数据。在D/A转换器23之后,通常提供一个LPF(低通滤波器)(未示出)。将一个LDF的截止频率设置成取样频率fs的一半左右。该LDF是音乐声音发生器的输出器件。通过放大器和播音器再现了音乐声音。标号24表示一个RAM,其结构类似于RAM13或20的硬件结构。将RAM 24用作DSP 21的运算操作工作存储器。标号25表示波形存储器,在按照波形存储器读出方法声源22发生一个音乐声音的情况中,该存储器存储基本或典型音品的波形数据。波形存储器25和RAM 20的作用稍微有点不同,波形存储器25主要是声源22使用且以ROM或子插件形式提供,而RAM20由CPU10使用作为波形存储器。
一般来说在以上的安排中,经常按照用户的选择,选定安装一些组件例如共处理器17、声源22、RAM24和波形存储器25。如果不安装RAM24,那么将RAM13的一定区分配给DSP21。如果声源22是一种调频(FM)合成信件其由纯计算波形数据产生一种音乐声音的话,那么波形存储器25可以不安装。CPU 10识别这些选定组件是否安装。在本实施例中,CPU10按照下列方法之一识别选定组件。
(1)将端口地址保留用于相应组件连接。在电源接通或系统复位之后,CPU 10立即存取端口地址。如果CPU 10探测一个来自端口地址的预定符号,那么它识别相应组件的存在。
(2)提供一个跳动开关用于表明组件安装。用户接通开关当时安装相应组件。
(3)如果以专用计算机实现该系统的话,那么将选定组件用相应组件驱动器记录在配置文件中,或批处理文件中。该系统软件通过这些文件识别该组件。
在本实施例中,将所有这些选定的组件完全安装并连接到数据总线12上。然而,连接端口不限于数据总线12。可以将选定组件经由串联/并联接口连接,通过接口每一个组件实现了数据与CPU10相互传送。换句话说,有可能将任何种类的接口提供给选定组件,而通过接口该组件能与CPU连接。例如,如图2所示,实际上可以提供声源22作为一个声源卡41或一个处置卡。在上述情况中,把声卡41插入主板或母板上的一个槽中。声卡41通过总线12、I/F控制器26以及外置接口27与CPU10连通。在上述设置中,通过声卡41上的插座,可以安装波形存储器25。此外,外置接口27可以提供另一个D/A转换器28。另外,声源22可以以分立LSI芯片的形式提供,或安装在子板上。在上述设置中通过在主板上或扩展槽上的插座,安装该芯片或子插件。同样地,可以以DSP插件42的形式提供DSP21。在上述情况中,该DSP21经由扩展接口27与CPU10连通。另外,DSP21可以以分立LSI块类似于声源22的形式提供。在图1中输入数据通过总线12传送到D/A转换器23上。然而,如果通过插座或扩展接口安装DSP21或声源22的话,那么可以直接或通过扩展接口分配数据。
如图3所示,可以将由声源22或DSP21组成的第1波形发生器或声源系统,连接到一个局部总线33上,通过该局部总线33将数据传送到CPU系统30和从CPU系统30中传出,而不使用数据总线12。由标准配置组成的CPU系统30包括CPU10,ROM11,和RAM13,同时外部设备31包括多种型式I/O端口14,存储单元15以及其它接口和操作器。在本实施例中,声源系统32专门由分立声源22或DSP21组成。然而,一般来说,任何音乐声音发生功能元件包括在声源系统32中。声源系统32可以与CPU系统30成一体或者分离。进一步,要么在CPU这边、要么在声源器件那边可以提供连接接口。也就是,按照本发明建立的系统,可以使用任何连接接口。附加到局部总线上,可以使用任意种类的接口/协议联合例如MIDI,RS-232C/422,IEEEP-1394,或SCSI。同时,通信网络如公共电话网可用作数据通信媒体。
在图4A所示的设置中,声源器件22可以与波形存储器和D/A变换器23一起整体地构成在单一芯片中或印刷电路板组件中。同样,如图4B所示,DSP21,RAM24和D/A变换器23可以整体地、一起构成在单一半导体集成电路块中。
图1到3所示的设置仅仅是作为一个实例。而组件连接的形式取决于单个系统的建立。进一步,图1所示两个或更多功能元件可以整体地构成在单一芯片中。
按照本发明,上述构造的音乐声发生装置,给出了一种按照性能信息发生音乐声的波形。第1波形发生器例如声源22或DSP21能操作产生一种波形。由CPU10组成的第2波形发生器,能独立于第1波形发生器操作产生一种波形。I/O14提供性能信息。相应于所提供的性能信息选定第1波形发生器和第2波形发生器中的一个。该装置选择地操作第1波形发生器和第2波形发生器中选定的一个,按照所提供性能的信息产生波形。基于产生的波形,DAC 23发生音乐声音。第1波形发生器包括选定能连接到该装置上的外部波形发生器,同时,第2波形发生器包括与CPU 10一体的内部波形发生器。有时,在外部波形发生器设有连接到该装置时,即使外部波形发生器应该主要地相应于所提供的性能信息,还是指定内部波形发生器代替外部波形发生器。与CPU10成一体的第2波形发生器构成计算机组成的主要部分,而第1波形发生器单独地构成与主部分分离的辅助部件,并且其可选择安装在计算机上。第1波形发生器是由通过CPU10驱动的硬件组件组成,而第2波形发生器是由能安装在计算机上的软件组件组成。
以下将描述在本实施例中各种操作方式。如图5所示,本发明音乐声发生器操作方式可分类成两个主组,其一涉及称为合成方法,而另一个涉及将音品分配到不同波形发生器。将两个主组分成更为具体的方式。首先,以下将说明称为合成方法的方式。
在本实施例中,通过按照性能信息合成音乐声音的波形或波形数据,来实现发生声音,并且将它转换成模拟信号。能够用各种方法产生波形数据。按照选定的合成方法操作方式,确定了所用的方法。在本实施例中,通过选择采取由第2波形发生器的CPU合成方式和由第1波形发生器的声源合成方式。
在CPU合成方式中,仅仅通过CPU10,或通过CPU10和共处理器17的联合来合成音乐声音。进一步,能够将CPU合成方式粗略地分成以下四个子方式。为了再现声音通过D/A转换器23将产生的波形转换成模似信号。
调频方式:为了合成声音,上述调频方式使用一种调频声源的一个软件模块。通过使用CPU10在主正弦波上实时调频调制,来产生波形数据。
谐波合成方式:谐波合成方式是将基波及其谐波合成在一起。用CPU10实时操作,计算基波及其谐波来合成波形。
波形存储读出方式:在此种方式中,通过在存储器中存取波形来合成声音。在进行合成之前,CPU10将许多基本波形装入RAM20。当合成命令进入时,CPU通过读出波形产生一个指定音调和音量的选定音品的波形数据。在波形存储读出方式中,既使用一个低性能的CPU也能合成声音,因为通过存取RAM或ROM来读出波形数据从而实现合成声音。所以,在此种方式中,CPU的工作负载小于FM方式和谐波合成方式中的工作负载。然而,应该分配RAM波形数据区,结果有时会引起RAM13或20的自由区短缺。因此,在某些情况下,取决于全部RAM的容量和CPU地址卷,最好不使用波形存储读出方式。
物理模型合成方式:在物理模型合成方式中,为了合成声音通过电子模型模拟一个实际乐器声音发生机制,例如在管乐器中空气的流动。以包括CPU10的器件的实时操作计算了波形数据。在JP-A-63-40199中公开了物理模型合成的算法实例。
如上所述,借助软件声源或第2波形发生器的CPU包括许多能基于不同算法操作的数字波形发生器,经运算产生有不同品质的数字波形。本发明装置按照所提供的性能信息,选择操作一种最佳的数字波形发生器。具体地讲,第2波形发生器包括一种能基于相对简单算法操作的波形存储读出型式的数字波形发生器,产生一种相对低品质的数字波形,和另一种能基于相对复杂算法操作的数字波形发生器,产生另一种相对高品质的数字波形。
另一方面,在硬件声源合成方式中,使用一种具体的硬件如LSI声源22合成音乐声音。当然,在此种方式中,硬件组件如LSI声源22必须安装在该系统中。用调频方式或波形存储读出方式(类似于软件声源),LSI声源22合成该波形数据。通过硬件本身确定合成方法。CPU10不控制声源22本身合成处理。在本实施例中,提供了多声道。要么在CPU合成方式中,要么在声源合成方式中,一个声道分配给一种乐音。在多声道中产生了多种音乐声音从而实现多种声音的同时发生声音。由于在本实施例中通过CPU10和声源器件22都能合成波形数据,所以所利用的波形发生器的选择是一个重要的问题。在本实施例中,当接受一个音符-命令时,按照声音分配,选定一种最佳的波形发生器。以下列出声音分配方式:CPU选择方式:在CPU选择方式中,最优先考虑是通过CPU合成方式完成波形合成。然而,如果包括CPU10在内的计算器件的计算能力不够的话,那么限制了能用于合成的声道的数目。在这样情况中,通过硬件声源完成了超过包括CPU10在内的计算器件能力的波形合成工作的部分。
声源选择方式:在声源选择方式中,最优先考虑的是通过硬件声源完成波形合成。然而,如果硬件声源器件22的能力不够的话,那么限制了能用于合成声道的数目。在这样情况中,通过CPU软件声源完成了超过声源器件22能力的波形合成工作的部分。
手动方式:在手动方式中,用户手动指定要么软件,要么硬件声源。进一步,如果选定借助软件声源的CPU,那么就要选定一种具体的合成方式。
强迫方式:在强迫方式中,按照除了无关于用户意图的声音产生程序之外的应用程序的运行状态,强制确定所用的声源。
以下将描述RAM13或20的存储器映象。本发明音乐声音发生器的安排是那么不同于一般个人计算机。进一步,能用作音乐声发生器的一般个人计算机,提供执行涉及波形合成的操作。因此,RAM13或20的内容是那么不同于个人计算机。如图6所示,将RAM13或20的存储器空间分成许多区。在图6中,一个OS区,像一般个人计算机一样由操作系统占据。应用程序区(1)到(n)适应除了波形合成程序以外的各种应用程序。将这些区一个一个地分配给调用的应用程序。把声音数据和其它各种数据储存在数据区中,而在通过波形存储读出方法实现了合成时,该波形数据装入波形数据区″波形″中。最后,将选定的一种波形合成程序储存在波形合成程序区。
以下将描述按照本发明音乐声音发生器的操作。通过执行个人计算机一个具体的应用程序、即波形合成程序,产生音乐声音。换句话说,以在引导系统的当时,自动安装过渡程序的形式作为OS的一种设备,可以实现波形合成程序。尽管存储器地址和执行波形合成许可程序,取决于OS环境的配置、用户操作、应用程序数目、工作条件等等,可是作为应用程序(1)到(n)中的一个,执行了波形合成程序。如图7所示,在起始步骤S1中,当电源接通或音乐声音发生器复位时,各种寄存器和标记设置/复位,在步骤S2中,执行OS的系统管理处理。在步骤S3到S5中分别执行了应用程序(1)、波形合成程序,以及应用程序(n)。在程序启用的一个循环中,执行波形合成程序产生一个波形数据的样值。而应用程序(1)到(n)不包括波形合成程序。这些应用程序可涉及音乐性能,或涉及完全不同的事务。在步骤5以后,不返回到步骤2。
如果应用程序的执行状况设有改变的话,那么由S2到S5的循环反复执行。换句话说,如果应用程序执行状况有改变,而在步骤2中系统管理处理时,探测到这样的改变。如果状况的改变是程序的终端,那么跳越相应执行应用程序的步骤。如果状况的改变是在程序启用时,那么把执行一个新的应用程序的步骤加在循环中,并反复地执行整个循环。因此,执行循环的周期依赖于应用程序的运行状况和系统负载变化。然而,无关于应用程序的运行状况,每一个循环永远产生音乐声音的一个样值波形数据。通过重复循环连续地产生一系列样值,以产生一个所希望的波形。因此,如果将产生的波形数据简单地转换成模拟信号的话,那么取样周期发生变化,结果在再现音乐声音时可以发生跳动。为了暂时存储产生的声音波形,在D/A转换器23之前,装有数据缓冲器。在固定的取样频率fs,该数据缓冲器存取读出的波形数据。如果在该系统不是个人计算机而是单独电子乐器、声源组件、或任何其它具有产生声音设备的系统的情况中、音乐声音产生是通过固定程序进行的话,那么能够固定循环处理的执行周期。换句话说,在一个固定间隔执行该循环程序。在此种情况中,使循环间隔和取样频率fs的倒数相符是非常实用的,从而能够消除数据缓冲器。
参照图8到11,以下描述在步骤S4中所执行的波形合成程序。按照预定操作,由存储单元15进行装载之后,执行该程序。在步骤Sa1中,检验了合成模式和硬件建立。在硬件建立的检验中,通过以下描述的检验方法,识别选定器件。至于操作方式,合成方式和声音分配方式也都检验了。关于操作方式的建立,如果在调用波形合成程序之前,执行其它应用程序,声音分配方式可以转向强迫方式。换句话说,按照用户选择经由显示菜单输入所希望的设置,可以建立合成方式和声音分配方式。进一步,如果在硬件检验中识别了各种声源器件,那么就有可能设置要么CPU选择方式,要么声源选择方式。因此,在步骤Sa1中,在执行波形合成程序之前,建立并识别操作方式。
在步骤Sa2中,执行了波形装入处理。在波形装入处理中,在用于波形存储读出方式中的基本波形的情况中,将典型或基本波形装入分配在RAM13或20中的波形区。在步骤Sa3中,检验标记SETFLG是否是″1″。该标记SETFLG初始设置成″O″,但是如果在步骤Sa21中,建立取样频率fs的话,或者如果选定波形存储读出方式为后备波形计算方式的话,那么可以转到″1″。如果标记SETFLG是″1″的话,该过程进到步骤Sa4。换句话说,如果标记SETFLG是″0″,该过程跳到步骤Sa5。首先在图7所示环路中。执行波形合成程序的情况中,该标记SETFLG是″0″,而过程无条件进入到步骤Sa5。然而,为了描述方便起见,在此也描述步骤Sa4的程序。在步骤Sa4中,检验是否完全通过CPU合成方式实现声音合成。有可能使用在步骤Sa1中硬件检验的结果,以检测是否识别了任何外部声源。如果对于波形合成,除了CPU之外使用任何声源有可能性,那么Sa4步骤分支到″不″方向。在步骤Sa5中,检验标记ENBLFLG是否是″1″,以便检测非操作状态。非操状态意味着取样频率fs既不建立在波形产生过程,也不能是后备波形计算方式。所以,在非操作状态中,CPU合成方式还没有准备好。
首先在图7所示的主循环中,在执行波形合成程序时,标记ENBLFLG是″0″ ,结果过程进到步骤Sa11。然而,恰恰为了描述方便起见,在标记ENBLFLG是″1″的情况中,在可操作状况下在此描述了该程序。可操作状态意味着对于CPU合成已经完成所有的准备。在此种状况中,过程进入步骤Sa6,在此进行性能信息处理。在步骤Sa7中,检验有否CPU波形产生命令。响应包含在键盘信息KBD,MIDI信息或在CPU合成方式下由I/F所给出的性能信息的接通,产生CPU波形产生命令。在步骤Sa7中,如果检测到CPU波形产生命令,那么在步骤Sa8中,执行响应命令的过程。在步骤Sa8的过程中,通过可用的CPU合成方式中选出的一个具体的合成方式,产生波形数据。然后,经由总线12,将波形数据分给D/A转换器23。因此,按照合成波数据或波形,实现声音产生。
在更宽的限定中,CPU波形产生命令可以包括断开命令音符休止,尽管在此省略了相应于断开过程的解释。这些音符休止过程是非常简单的处理,例如波形产生断开和波形产生终止。在步骤Sa7中,如果没有检测到CPU波形产生命令的话,那么跳越了步骤8中波形合成计算,因为没有工作要执行。在步骤Sa9中,检查用户是否要终止波形合成程序。如果没有指明终止该程序,那么过程立即转到准备下一个CPU波形产生命令。另一方面,在输入终止命令的情况中,在步骤Sa10中,通过设置标记SETFLG到″0″终止波形合成程序。
如果首先在图7主循环中,执行了波形合成程序,那么标记ENBLFLG是″0″。然后,在步骤Sa11中,检查是否分配方式是CPU选择方式和声源选择方式两者之一。如果分配方式是手动方式或强迫方式,那么探测结果是″不″从而程序进到步骤Sa12,在此标记ENBLFLG,DACENBL和SETFLG全置于″1″。然后,该程序返回。标记DACENBL置于″1″,启动D/A转换器23。因此,如果下一次执行了波形合成程序并且使用了外部声源,检查步骤Sa3结果是″是″,检查步骤Sa4结果是″不″,从而执行表示在图11的程序。换句话说,如果波形合成只由CPU完成的话,那么执行步骤Sa6到Sa10。另一方面,在步骤Sa11中,在检查分配方式要么是CPU要么是声源选择方式时,该程序进入步骤Sa13。如果首先调用了波形产生程序,即么可以进行图9和10所示步骤Sa13到Sa27中的程序。在上述程序中,对于只通过CPU合成确定了取样频率fs。在步骤Sa13中,标记ENBLFLG开关到″0″,标记BUSY置于″1″,以及标记DACENBL置于″0″。标记BUSY置于1,在以后所述定时器处理中,启动计数。设置标记DACENBL到″0″,以便禁止D/A转换器23的输出工作,在以后所述测试波形计算期间阻止声音产生。在步骤Sa13之后,将寄存器SCOUNT和TCOUNT置于″0″。寄存器SCOUNT的存数表明跟随测试波形计算的回路循环数。寄存器TCOUNT增加计数,而标记开关到″1″。因此,上述寄存器表明通过m次合成计算循环产生一个波形所需经过的时间。在步骤Sa15中,通过执行予定波形数据产生算法,对于一个取样周期产生一个样值。以下将描述在步骤15中详细的过程。在步骤Sa16中,执行样值计算一次时,寄存器增加″1″。在步骤Sa17中,检查是否寄存器SCOUNT达到循环″m″次,如果探测到不,那么过程返回到步骤Sa15。换句话说,检查结果是是,过程进到图10中的步骤Sa18。因此,反复步骤Sa15和Sa16直到样值计算环路循环达到″m″次。
在图10的Sa18步骤中,标记BUSY开关到″0″禁止定时器计数。然后、在步骤Sa19中,由下列公式(1)计算了频率Fs。
Fs=(m·容限)/(TCOUNT·Tt)    ...(1)
在上述公式中,″容限″是设置小于值1的常数,提供给包括具有一些容限的CPU在内的计算器,作为该计算器的处理能力。如前所述,TCOUNT表明当执行样值计算″m″次循环所需周期时定时启用时间,而Tt表示定时器的间隔。因此,TCOUNT和Tt的乘积相应于完成样值计算处理产生一个波形所需的周期。
因此,由公式(1)计算的频率Fs是波形取样的频率,而常数″容限″表示硬件的处理能力。
在步骤Sa20中检测计算的频率Fs是否大于32千赫。使用此临界频率″34千赫″是考虑到发生音乐声的最低品质。如果此检测结果是肯定的,其意味着CPU处理能力对于保持声音的最低品质是足够的,过程进到步骤Sa21。在步骤Sa21中,选出小于和接近计算频率Fs的足够的取样频率fs,32千赫,44.1千赫,48千赫和50千赫。如果计算频率Fs是47千赫的话,那么取样频率fs是置于44.1千赫,其是接近并小于47千赫,选择小于计算频率Fs的值是因为如果设置取样频率超过CPU处理能力的话、那么常数容限就没有意义。在步骤Sa21之后,在步骤Sa22中标记DACENBL,ENBLFLG和SETFLAG全都置于″1″,而程序返回。上述标记操作启动D/A转换器23从而输出音乐声音。进一步,上述标记操作表明建立了取样频率fs。因此,非工作状况改变到可工作状况。
在可工作状况下,当下一个执行波形合成程序时,检查步骤Sa4结果″不″从而通过表示在图11的程序进行合成,应该通过外部声源器件实现波形合成。换句话说,如果仅仅CPU用于波形合成的话,检查步骤Sa4结果处在″是″而检查步骤Sa5结果处在″不″,从而通过步骤Sa6到Sa8实现合成。
另一方面,在图10中如果在步骤Sa20中检验关于计算频率Fs的结果是″不″,其意味着不能保持声音的最低品质,该过程进到步骤Sa23。在步骤Sa23中,警告用户不能达到声音最低品质,而调用后备波形计算方式。后备波形计算方式是波形存储读出方式,当声音最低品质用所选出的可用CPU合成方式的第1合成方式不能得到时,作在第2选择,选择了波形存储读出方式。在步骤Sa24中,检验是否选定后备波形计算方式。如果是,该程序进到步骤Sa25,在此通过第1计算方式产生了初始波形,进而存储在RAM13或20中。在取样频率32千赫,其自动确定的读出储存的波形时,实际上再现了声音。因此,事实上用波形存储读出方式完成了波形合成,结果即使在系统中装备低性能的CPU,可是还能得到最低品质的再现声音。此后,在步骤Sa22中执行程序将非工作状态开关到工作状态,该程序返回。另一方面,如果在步骤24中设有指定后备波形计算方式,那么程序进到步骤Sa26,其中检测到声音合成程序的终止命令。如果命令声音合成程序终止,操作完成,在步骤Sa27中清除标记SETFLG到″0″。在计算频率Fs小于32千赫情况中,并且后备波形计算方式既设指定又设有命令程序终止,警告警报连续不断。因此,用计算器如CPU10进行波形合成。相对于CPU性能将取样频率最佳化。进一步,如果CPU的性能是低下的,通过开关到波形存储读出方式执行合成,其能减小CPU的负载。
小结,借助第2波形发生器的CPU包括一个计算机化的波形发生器,其能按照给定的算法在可变工作速率下通过连续计算数字波形样值,产生数字波形。规则地操作计算机化的波形发生器,实现了试用的模型数字波形并且测量了操作速率。在比较测量的操作速率中,最佳地确定了取样频率。实际上操作计算机化的波形发生器,允许按照所提供性能信息,在确定的取样频率下,同样连续计算一个实际数字波形的样值。将取样频率固定到一个步进的予定水平,其低于和最接近测量的操作速率。当确定取样频率下落低于一个临界水平时,限定该临界水平保证数字波形的最低品质,改变初始算法提高计算机化的波形发生器的操作速率,从而能够重新确定取样频率超过该临界水平。将算法由复杂的改变成简单的,从而基于简单的算法计算机化的波形发生器工作连续地读出予先储存的样值以再现数字波形。通过复杂的算法可以初始计算样值。然后,将样值储存在波形存储器中以便在波形存储读出方式的简单算法下实际使用。因此,本发明声音发生装置,按照性能信息给出数字波形以产生音乐声音,其包括输入装置用于提供性能信息,计算机化的波形发生器能基于给定的算法在可变操作速率下、通过连续计算数字波形样值,产生数字波形,测试装置用于规则地操作计算机化的波形发生器实现试用的模型数字波形,同时测量在此进行试用模型的操作速率,测定装置用于最佳地测定与测量操作速率可比较的取样频率,控制装置用于实际上操作计算机化的波形发生器,在测定取样频率下能够同样连续计算一个实际数字波形的样值,以及输出装置用于产生音乐声音,其是按照提供的性能信息基于实际的数字波形而产生音乐声音的。
顺便说,如果在图8中在步骤Sa4,对于波形合成检测到有可能使用硬件声源的话,那么该过程分支到图11中步骤Sa28。在步骤Sa28中,将标记DACENBL开关到″1″启动D/A转换器23输出声音。在步骤29中,检测到对于声音合成程序的任何终止命令。如果命令了声音合成程序终止的话,经过步骤30在步骤31中,将标记SETFLG清除到″0″、合成程序完成。另一方面,如果没有命令终止声音合成程序,在步骤Sa29检测结果是否定的,那么在步骤32中检查操作模型是否声源合成模型。在步骤32中检测到声源合成模型时,在步骤33中检测到对于指定方式所需的硬件,在步骤Sa1中用硬件检查识别时选定上述方式。如果有相应硬件、在步骤34中通过相应硬件执行合成过程。换句话说,在步骤Sa35中表示缺少相应硬件,且如果相应硬件不存在、那么使用当前建立的硬件,继续合成处理。在步骤Sa34和Sa35之后,过程返回。以后将描述,用选择的硬件进行合成处理。
参照图12以下将描述在步骤Sa2(图8)中所执行的波形装入程序。在波形装入过程中,在步骤Sb1中,检测通过多个I/O端口14是否接收到MIDI样值转储命令。该MIDI样值转储包含按照MIDI标准的波形数据、且用于波形存储读出方式。如果接收了MIDI样值转储,处理了样值接收过程,结果将接收的数据在步骤Sb2中传送到RAM13或20的波形区。重复步骤Sb2样值转储接收直到完成了所有的数据接收为止。在步骤Sb3中检测到该完成。如果完成所有数据接收,那么在步骤Sb3中检测结果″是″,且该过程返回。另一方面,如果步骤Sb1,检查结果″不″、那么在步骤Sb4中检查是否经由接口I/F传送波形数据。如果接收了波形数据,那么像MIDI样值转储情况中一样,在步骤Sb2和Sb3中将接收的数据传送到RAM13或20中的波形区。如果在步骤Sb1和Sb4中结果都是″不″,那么在步骤Sb5中检测对于存储单元15进行存取读出,即请求由存储单元15中读出某些数据。如果请求设有结果、那么波形装入立即终止且过程返回,因为没有更多的工作要作。另一方面,当存取发生,在步骤Sb6中检查由存储单元15中读出数据。进一步,在步骤Sb7中、检验是否读出数据是波形数据。如果读出数据不是波形数据的话,波形装入立即终止,且过程返回,因为没有更多的工作要作。换句话说,如果读出波形数据,那么将波形数据传送到RAM13或20中的波形区。在步骤Sb8中,重复数据传送直到在步骤Sb9中检测到数据传送结束。当完成数据传送时,步骤Sb9检查结果″是″且过程返回。因此,在波形装入中,在波形存储读出方式中接收和读出所用的波形数据。然后,将波形数据传送到RAM13或20中的波形区。为了合成实际波形按照简单算法用波形存储读出方式,计算器如CPU10处理该波形数据。为了再现用声源22装入RAM13或20的波形数据,所装入的基波数据又可以传送到装在声源22中的波形存储器25中。在有具体硬件声源常规音乐声音发生器中,该硬件声源必须具有暂时波形存储器以接收装入的波形数据。CPU必须执行将波形数据由RAM传送到波形存储器。然而,在本实施例中,在CPU10的控制下,将基波数据装入RAM13或20。所以在硬件中不需要提供暂时存储器以保存波形数据。进一步,不需要执行重装入程序,其中已装入的波形数据进一步传送到外部硬件器件中。能够减少系统硬件或软件的费用和缩短由波形数据装入结束到声音复制的时间。
参照图13以下将解释在步骤15中(图9)所执行的样值计算操作。在图13的步骤Sc1中,检验了是否有共处理器17。在本实施例中,安装了共处理器17。然而,在某些硬件建立时,此器件是选定的且可能缺少。如果CPU10适应一个运算操作单元相当于共处理器17的话,那么检测共-处理器是不须要的。关于该系统有可能恰像已安装了共-处理器一样。如果检测了共处理器17,在步骤Sc2中,用CPU10以及共-处理器17进行样值的计算。换句话说,在步骤Sc3中,仅用CPU10进行了样值计算,如果没有共-处理器17的话。在步骤Sc2或Sc3之后,该过程返回。除了用或不用共-处理器17之外,在步骤Sc2和Sc3中样值计算是相同的。因此,关于步骤Sc3将解释详细的样值计算。
在图14的步骤Sd1中,检验在各种CPU合成方式中是否现行操作方式置于调频方式。如果置于调频(FM)方式,那么在步骤Sd2中,按照FM合成方法在一个取样点计算了相应于许多道的一组样值。例如,如果选择了多声合成,那么计算了用于合成一个所希望的声数所需要的一组多样值。在此种情况中,CPU10的负载是高的,因为或许并发产生具有不同音调的不同声音。既使失败,其它处理如图象处理可以同时去作。如果在步骤Sd1中,没有探测到FM方式,那么在步骤Sd3中,检测是否现行操作方式是置于CPU合成方式之中的波形存储读出方式。如果在这里检测到波形存储读出方式的话,那么从波形存储器中读出对于一个取样点所需的一组样值。在多声合成中,读出了用了合成所希望的声数所须要的多个样值。没有用CPU10,而是用DMAC19进行上述数据读出和数据传送。将该波形数据装入RAM13或20中的波形区,或者规则地储存在ROM11中。如果在步骤Sd3中没有检测到波形存储读出方式,那么在步骤Sd5中,在各种CPU合成方式中检测是否现行操作方式置于谐波合成方式。如检测到谐波合成方式的话,那么在步骤Sd6中按照谐波合成方法用CPU10计算了用于一个取样处理所需的一组样值。在多声方式中,用谐波合成方法计算了用于合成希望声数所须许多样值。在上述情况中,CPU10的负载是高的,因为可以并发产生具有各种音调的各种声音。既使失败,可以同时进行其它处理,类似于FM方式的状况。如果在步骤Sd5中没有检测到谐波合成方法,即么在步骤Sd7中、在许多CPU合成方式中,检验是否现行操作方式置于物理模型合成方式上。如果探测到物理模型合成方式,那么在步骤Sd8中按照物理模型合成方法,通过CPU10计算了用于一个取样点所须的样值。在多声方式中,用物理模型合成方法计算了用于合成希望声数所须的许多样值。如果在步骤Sd7中没有检测到物理模型合成方式,那么现行操作模型处于本实施例之外,从而在步骤Sd9中,执行对错误设置方式警报以及其它处理。在步骤Sd2、Sd4、Sd6、Sd8或Sd9之后,程序返回,然后,执行随后的步骤Sa16(图9)。
至于在步骤Sc2中所执行的用CPU10和共-处理器17计算的波形样值,在用CPU10和共-处理器17合作执行了图14中所示的程序从而使计算操作能更快的进行。在此省略了关于操作的详细解释,因为该过程基本上和只用CPU计算相同。
因此,在步骤Sa15中波形样值计算时,通过CPU合成方式之一完成了合成声品质上最有影响的处理。在FM,谐波合成,或物理模型合成方式中,波形数据计算所须的时间,准备同时复制的声数是声音合成的关键。为了审查处理能力实际上计算了每一个取样点波形数据。在步骤Sa15到Sa17中重复进行计算m次循环,而在步骤Sa21中通过定时器工作设置适于CPu处理能力的取样频率fs,测量了m个样值计算所须时间。类似地在波形存储读出方式中,波形数据读出操作是声音合成的关键,从而读出每一样点的波形数据以考查存取速率。在步骤Sa15到Sa17中,对m个样值作了读出处理,而在步骤Sa21中、通过定时器操作设置适合于CPU处理能力的取样频率fs、测量了m次样值计算所须时间。
以下说明在上述Sa34(图11)中所执行的选择硬件合成。上述合成过程是通过CPU单独合成方式来合成所有声道。按照分配方式,控制用于合成波形的声源器件来执行上述处理。在上述过程中首先在图15步骤Se1中进行事件检测。该事件包括响应键盘信息KBD或MIDI信息所发出的接通事件,而且包括其它事件,不仅CPU合成方式伴随的而且声源器件方式也伴随的事件。在检测接通事件时,该装置开始合成程序。在步骤Sa2中检验是否现行操作方式选定声源合成方式。如果检测结果是″不″,该过程分支到步骤Se11。否则,如果检测结果是″是″,该程序向前进入步骤Se30在步骤Se3中,检验是否声源器件现行合成操作状况和相应于该事件的性能信息遵守用声源器件合成波形的″条件″。在本实施例中,一个条件是现行合成声数(音品)是否在最大声数范围内,其通过在声源合成方式中选定的硬件能够同时合成。更具体地讲,在步骤Se3中,现在处在有效状况下并且分配用于声源器件的声道数目是小于或等于通过该器件能用于同时合成声音的声道总数。该″条件″可以包括以下列出的其它因素:(1)由检测事件选定的″音调″或″音质″是否高于予定值。(2)由检测事件选定的相当于″音品″的值是否高于(或低于)一个子定值。(3)由检测事件选定的相当于性能信息中许多″要素″的值,是否高于(或低于)一个予定值。(4)相当于检测事件的一个检测到的MIDI-CH值(声道数)是否高于(或低于)一个预定值。如上所示,对于″条件″的判定可以一般化为由性能信息选定的某一值是否高于(或低于)一个予定值。如果在FM方式或谐波合成方式中使用声源器件合成选定的某些唯一的音品的话,有可能执行一个特殊″条件″给出一个否定的结果。上述情况的实现以后将描述在另外的实施例中。如果满足该″条件″,在步骤Se4中进行道赋值处理,结果对于接通事件将合成一个声音的声道分配给声源器件中,至今没有用于合成声音的空道。在步骤Se5中,使用选定的声源硬件执行声音产生,其中对于给出的事件在分配的声道中进行了波形的实际合成。
如果在步骤Se3中该″条件″没有满足、那么在步骤Se6中检验标记ENBLFLG是否是″1″。在上述阶段中,标记ENBLFLG的值″1″表明已经执行了步骤Sa13到Sa25,并表明对于CPU合成方式已经建立了取样频率fa。因此,CPU合成方式是可用的。所以,如果步骤Se6检验结果是″是″,因为标记ENBLFLG值是″1″,在步骤Se7中执行了CPU合成方式的声音分配过程,结果通过CPU合成方式实现了相当于由声源器件不遵守合成条件的事件的波形合成。具体地讲,发出了分配命令来计算相当于在上述CPU合成分配过程中事件的波形样值。该命令包括指定由CPU10所执行的计算方式(CPU合成方式中任何方式),和指定音品,音调、音质、音量和声道赋值。进一步,该命令包括音符命令如接通或断开。当分配命令有效时,在步骤Se10中,包括CPU10的计算器执行波形合成计算处理,以便产生相当于该事件的样值。如果用中断处理产生波形,该分配命令也包括关于中断起始和终止的信息。另一方面,如果在步骤Se6中检测到标记ENBLGLG的″0″值,那么该CPU合成方式是不可用的。在上述情况中,在步骤Se8中进行截断处理切断最早的声道声音再现操作,强迫构成一个空道。上述截断处理可以包括在步骤Se4中所执行的分配处理。在步骤Se4中,将相关事件分配到通过强迫音符-断开形成的空道中,且通过在步骤Se4中分配的声道实现了相关事件的波形合成。如果将多声源器件安装到系统上,那么不同声源器件的声道可以分配来合成单个音品。
顺便说,如果在步骤Se2中没有检测到声源器件选择方式或进行方式,那么可能是CPU选择进行方式或手动方式、其中CPU合成方式与声源合成方式一起设置。因此,该过程分支到图16中的步骤Se11。在上述步骤Se11中,检验CPU合成方式现形状况和相关发出事件性能信息,是否遵守通过包括CPU的器件进行合成的″条件″。各种因素可以设想为用CPU合成的″条件″,像用声源器件(步骤Se3)合成的″条件″情况一样。在上述实施例中,该条件是现行合成的许多声音是否在能用CPU合成方式同时合成的最大数目的声音范围之内。更具体地说,在步骤Se11中,检验现行保持在音符接通状况中和分配给包括CPU的计算器件的道数(CH)是否小于或等于用CPU合成方式同时合成波形所能使用的道数。如果满足″条件″,那么在步骤Se12中检验标记ENBLFLG是否是″1″。如上所述,标记ENBLFLG的值″1″在此表明用CPU合成方式波形合成准备开始。所以,在步骤Se13中,通过包括CPU10器件为了波形合成执行该分配过程,且该过程进入步骤Se9。在步骤13中详细的分配过程在此又没说明,由于该过程实际上和在步骤Se7中相同。另一方面,如果在步骤Se11中不遵守用CPU合成波形的″条件″,或者在步骤12中包括CPU10在内的器件没有准备好,那么在步骤Se14中和在步骤Se4中一样执行分配过程,从而通过外部声源器件做相关事件处理。在步骤Se15和在步骤Se5中一样使用选定的硬件进行合成。在执行步骤Se13,步骤Se9和步骤Se10之后。在步骤Se9中检测分配命令是否有,通过CPU来产生波形数据。如果没有检测到该命令,该程序立即返回。否则,在步骤Se10中,按照分配命令,通过CPU计算波形以产生声音。
因此,在外部声源选择进行方式中,在步骤Se5中通过声源执行遵守由硬件合成″条件″的合成处理,而在步骤Se10中,通过CPU执行不遵守″条件″的合成处理。另一方面,如果选定的方式不是声源进行选择方式,那么在步骤Se10中,通过软件组件执行遵守由CPU10合成″条件″的程序,而在步骤Se15中通过硬件声源器件执行不遵守由CPU10合成″条件″的合成程序。因此,在使用选择硬件合成中,如果合成程序超过在声源合成方式中选定的硬件处理本领的话,那么通过CPU合成方式执行超过部分的程序,从而有可能合成许多声音多于在硬件中能同时再现全部声音数目,而设有增加硬件的设置。一般来说,当输入器件如I/O14提供有效的信息,命令并发产生许多音乐声音,本发明装置按照由性能信息选定的许多并发音乐声音,选定第一波形发生器和第2波形发生器中的一个,结果所选定的一个具有容量足以产生相应于音乐声音数目的许多波形。当并发音乐声音的数目超过第1波形发生器和第2波形发生器中的任一个的容量时,把第1波形发生器和第2波形发生器两个都选定,以保证完全产生并发音乐声。
以下将描述定时器程序。定时器程序是当以前所述测试波形合成程序期间、在一个预定间隔Tt所执行的中断处理。图17是表示详细的定时程序的流程图。在步骤Sf1中,检验如果标记BUSY是″1″,其意味着启始定时器计数。如果上述检测结果是否定的,该过程跳到Sf3。否则,例行程序进到步骤Sf2,如果检测结果是肯定的,此处寄存器TCOUNT增加″1″。在步骤Sf3中执行其它各种定时器处理、完成定时器例行程序。因此,如果标记BUSY是″1″,那么定时期处理增加该寄存器TCOUNT″1″。只在步骤Sa9到Sa11的环路中,标记BUSY开关到″1″,从而寄存器TCOUNT的内容表明在计算或读出一个波形所须时间内启用定时器处理循环。通过将TCOUNT乘以Tt得到经过时间。
在图1所示的配置中,将所有选定的组件如共处理器17,DSP21和外部声源22全部安装。因此,在上述配置中,关于合成方式和分配方式能指定所有的操作方式。首先优先将操作方式置于声源选择方式,超过外部声源处理能力的一部分处理分配给CPU,且CPU控制处理结果超过外部声源器件的限制能够产生音乐声,并能产生各种音品。再说,在最优先给定的CPU选择方式中,也能产生各种音品。由于在步骤Sa21中将取样频率fs永远置于最佳值上,所以产生声可以保持在高品质。
在上述实施例中,如图1所示将选定组件全部安装。然而,个人计算机硬件的设置或电子乐器,随着选定安装的组件改变。音乐声合成程序的可用操作方式随着硬件设置而不同。以下将说明不同于图1的在其它硬件配置中音乐声合成程序的操作。
在图21中所示硬件设置缺少包括共处理器17、DSP21和CSI声源22在内的所有选定组件。当然,在上述配置中,声源合成方式不可用,因为在步骤Sa4(图8)中,检测成为″是″,只有CPU合成方式能用。然而,如果CPU10的处理能力不是足够高,那么实时波形数据计算是不可能,因为共处理器17和DSP21两个都没安装。所以,可能有波形存储读出方式只能在CPU合成方式中得到的情况。在图22所示硬件设置只有共-处理器17作为选定组件。在上述配置中,没有给出硬件声源合成方式,因为在步骤Sa4中(图8)检测成为″是″。只可用CPU合成方式。然而,所有CPU合成方式是可能的,因为用共-处理器17,高速实时运算操作是可能的。在上述设置中,通过CPU10和共-处理器17执行实际波形计算(步骤Sa9),以及试用波形计算(步骤Sa15),因为共-处理器17是可用的。
在图23所示的硬件设置中包括共-处理器17和DSP21作为选定器件。设置DSP21的目的是保证波形的高速率计算。如果DSP21作为外部声源对侍,在第2次启用合成程序或此后用DSP,该声源合成方式是可用的,因为在步骤Sa4中(图8),检测成为″不″。设置DSP21的目的是简化数据计算,从而通过波形存储读出方法不产生波形数据,但是通过各种纯运算方式如FM方式,谐波合成方式以及物理模型方式产生波形数据。再说,CPU合成方式是可用的,这取决于分配方式。波形数据计算是可能的,但是波形存储读出方式是不可用的,因为检测到DMAC19和RAM20。有可能只利用FM方式,谐波合成方式,以及物理换型合成方式,执行实时高速波数据计算。在上述设置中,通过CPU10和共处理器17执行实际波形计算(步骤Sa8),以及试用波形计算(步骤Sa15)。
在图24所示硬件设置中,只包括LSI声源22作为选定组件。在上述设置中,在第2次启用合成程序或此后时,声源合成方式是可用的,因为在步骤Sa4中(图8)检测成为″不″。再说,CPU合成方式是可用的,这决定于分配方式。然而,可能有不能利用波形存储读出方式的情况,因为缺少DMAC19和RAM20。进一步,如果CPU10的处理能力不够高,实时波数据计算是不可能的,因为缺少共-处理器17。所以,可能有所有CPU合成方式都不可用的情况。
以下将说明第2个实施例。一般来说,按照FM方式或谐波合成方法通过波数据计算,再现敲击乐音如节奏或鼓乐的实际声音是很困难的。因此,如果安装了LSI声源22并且通过除了波形存储读出方式外的纯计算方法如FM方式,用此声源22计算了音乐声波数据,那么通过LSI声源22再现音乐声是不够的。再说,如果安装了上述种类的LSI声源22的话,不需要通过除了用CPU10的波形存储读出方式以外的运算计算方式来计算波数据。进一步,CPU10应该执行除了波形合成以外的工作,结果应该尽可能多地减少执行波形合成程序所须的系统负载,尤其是在CPU10的处理能力不高的情况中,更应如此。因此,在上述情况中,CPU10用波形存储读出方式产生适合于LSI声源22的敲击波数据是方便的同时,LSI声源22产生其它音品的波数据。因此,对于CPU10,能减少计算负载,而LSI声源22不具有合成任何波数据的能力,对此,声源22能力很差。再现声的品质能保持尽可能的高。第2实施例的目的正是针对此点。第2个实施例假定如图1或24中所示安装了声源22。关于波形合成程序,用表示在图18中的处理代替使用选择硬件(图15和16)进行合成处理。更具体地讲,用在图18所示的处理代替了在步骤Sa34中(图11)用选择的硬件进行合成处理。以下将说明代替的处理,同时为了避免繁杂的描述,省略了其它处理的解释。
在第2个实施例中,在进到步骤Sa34时,该程序进行到执行合成处理,使用如图18所示的选定硬件。在步骤Sg1中,像在步骤Se1一样,进行事件检测。在步骤Sg2中,执行对于声音分配的系统检查。更具体地讲,对于CPU和LSI声源的每个声音(音品)确定操纵合成的器件。以下将描述对于上述分配的判定。一般来说,声源具有唯一配置的可用音品,从而通过唯一的音品编码能够选定一个单个音品。因此,有可能予先实现一个包含敲击乐音的音品编码目录表,以便在表中发现对于相关事件检测到的音品编码的情况中,由CPU10处理的乐音,和由LSI声源22处理的其它乐音之间进行识别。然而,在本实施例中,分配判定不限于音品编码。有可能设置手动方式下的音品处理装置,某些音品由CPU处理,而另外的音品由声源处理。也能分配每一个乐音,这依赖于能用于同时合成的道数。再说,在强迫方式下,通过具它运行程序可强迫分配每一个乐音。
对于LSI声源分配的乐音,在步骤Sg3中像在步骤Se4中(图15)一样,通过声音分配处理产生空声道。在步骤Sg4中,通过空声道合成了相关于接通事件的波形。对于上述操作,进行合成的方法不限于FM方式,谐波合成方式,或物理模型方式,但是有可能使用,例如,PCM方式由波形存储器25中读出波数据,这取决于所安装的声源22的特征。另一方面,在步骤Sg5中像在步骤Se7中一样(图15),对于分配到CPU的音品,为了产生一个分配命令,完成了CPU合成分配过程以产生相关于检测事件的波数据。如果分配命令可用,在步骤S6中检测结果″是″,而在步骤7中执行合成计算产生一个相关于分配命令的波形。如前所述,为了减少CPU的负载、通过波形存储读出方式完成波形合成。另一方面,当分配命令不可用时,在步骤S6中检测结果″不″,该过程返回。
在上述第2实施例中,音乐声按照它们的音品能够有选择地分配到CPU和声源,从而,对于CPU和声源处理负载的最佳分布有可能得到,并能够产生各种音品同时保持复制声的品质。概括地说,输入器件提供性能信息,其包括音品信息有效地选定音乐声的音品,和定时信息有效地选定产生音乐声的定时。相应音品信息选定第1波形发生器和第2波形发生器中的一个结果输出器件在选定定时产生具有选定音品的音乐声。
在第1和第2实施例中,在CPU提供的声道中或在声源提供的另一个声道中,对一个乐音执行了合成处理。然而,通过CPU和声源,对一个乐音能执行合成处理。在上述安排中,在CPU中有可能使用谐波合成方式,而在声源中有可能使用除了谐波合成之外的一种方式,例如,FM方式,从而能够产生变化的乐音,因为通过不同计算方式合成同一个乐音。第3个实施例的目的瞄准的正是此点。在第3个实施例中,如图1和24所示在系统中安装了LSI声源。关于波形合成程序,用图19中所示的处理代替使用选定硬件的合成处理(图15和16)。更具体地讲,用表示在图19中的处理代替在步骤Sa34中使用选定的硬件的合成处理。以下将说明代替的处理,而省略其它处理的解释以便避免繁杂的描述。在上述实施例中,进到步骤Sa34时,该合成程序进行到,如图19所示使用选定硬件执行合成处理。在步骤Sh1中,像在步骤Se1和Sg1中一样进行事件检测。在步骤Sh2中,对于声音分配执行系统检测。更具体地讲,对于CPU和LSI声源之外的每一个声音(乐音)确定处理合成器件。像在第2个实施例中一样,对于上述分配的判定可以是音品编码,对于同时进行合成可用声道的数目,或者用手动或强迫方式结构的设置。在步骤Sh3像在步骤Se4中一样(图15),对于分配到LSI声源的乐音,通过声音分配处理产生了空声道。在步骤Sh4中,通过空声道合成了相关于音符接通事件的波形。对于上述操作的合成方法不限于FM方式或谐波合成方法,但是有可能使用,例如,物理模型方式和PCM方式,从波形存储器25中读出波数据,这取决于所安装的声源22的特征。另一方面,对于分配到CPU的乐音,在步骤5中像在步骤Se7中一样(图15),为了产生相关于检测音符-接通事件的一个分配命令,进行了CPU合成分配过程。在分配命令中包括关于计算方法的信息。在步骤Sh3和步骤Sh4中,通过LSI声源处理了分配到CPU和声源的声音,同时在步骤Sh5中通过CPU处理了同样声音。这些处理同时执行。如果分配命令是可用的,在步骤Sh6中检测结果″是″,并且执行在步骤Sh7中的合成计算以产生相关于分配命令的波形。和第2个实施例不同,通过各种方式包括FM、谐波合成,物理模型等等进行了合成计算。另一方面,如果分配命令不可用,在步骤Sh6中检测结果″不″,该过程返回。
在第3个实施例中,将一个声音(乐音)分配到CPU和LSI声源,从而对于实际上相同的乐音能够复制不同波数据。由于上述特征,第3个实施例也能使系统的乐音变化。概括地说,将第1波形发生器和第2波形发生器都选定,结果控制器既操作第1波形发生器又操作第2波形发生器,对于单个音品以并行方式并发产生波形。以下将说明第4实施例。尽管声音分配方式引入上述实施例中,然而更简单的实现是可能的。能分配到某个声源器件的事件,在安装在系统中的器件提供的事件检测时,简单地分配到相关器件上。在上述第4个实施例中,提供了非常好的实现。第4个实施例表明如图1或24所示安装声源22,像在第2和第3个实施例中一样。关于波形合成程序,用表示在图20中的处理代替使用选定硬件的合成处理。更具体地讲,用表示在图20中的处理代替在步骤Sa34中(图11)使用选定硬件的合成处理。以下将说明代替处理,同时省略了其它处理的解释,以避免的描述。
在上述实施例中,进行到步骤Sa34时,如图20所示,该合成程序进行到使用选定硬件,执行合成处理。首先,通过没有图示的处理,进行事件的检测。在步骤Si 1中,执行声音分配在LSI声源中产生一个空声道。在步骤Si 2中,使用空声道实际上合成了相关于检测事件的波形。对于上述操作的合成方法不限于FM方式或谐波合成方式,而且有可能使用,例如,物理模型方式和PCM方式,由波形存储器25中读出波数据,这取决于安装声源22的特征。在合成之后,过程返回。所以,在第4个实施例中,能分配到某个声源器件的事件,在将上述器件安装在系统中所提供的事件检测时,简单地分配到上述器件中。
图25表示本发明音乐声发生装置的另一个实施例。此实施例基本具有和表示在图1中的第1实施例相同的结构。与第1实施例相同的器件用同样的标号表示,以使本实施例容易明白。储存单元15能够储存包括波形数据的各种数据,和包括系统控制程序或基本程序,波形合成程序和其它应用程序的各种程序。通常,ROM11予先储存这些程序。然而,如果没有储存,那么在储存单元15中,可以将任何程序装入硬盘或其它处。将装入的程序传送到RAM13、启动CPU10来操作本发明音乐声发生装置系统。照此方式,新的或改型程序能够很容易地装在系统中。为此目的,一种可读介质机器例如CD-ROM(小型盘只读存储器)51用于安装程序。将CD-ROM51并入CD-ROM驱动器52来读出和通过总线12将来自CD-ROM51的程序向下装入储存单元15中。机器可读媒体除了CD-ROM51之外,可以由磁盘或光盘组成。
将通信接口53通过通信网络55例如LAN(地方区域网),公共电话网和INTERNET,连接到外部服务员计算机54。如果储存单元15不保留须要的数据或程序,那么通信接口53启动以接收来自服务员计算机54的数据或程序。CPU10通过接口53和网络55将一个请求传送到服务员计算机54上。响应该请求服务员计算机54将请求的数据或程序传送到该装置上。将传送的数据或程序储存在该储存单元15的硬盘中,由此完成向下装入。
通过装有需要的数据和程序的个人计算机,能够实现本发明音乐声发生装置。在此种情况中,用机器可读媒体例如CD-ROM51或软盘将数据和程序提供给用户。该机器可读媒体包含指令用于使个人计算机执行结合以前实施例所描述的本发明音乐声发生方法。换句话说,个人计算机,通过通信网络55可以接收数据和程序。
在上述实施例中,作为实例选定器件包括共处理器17,DSP21、声源22,然而选定器件不限于这些器件。能够将本发明用于应用系统,例如,个人计算机、电子乐器、游戏机等等其中产生音乐声。
如前所述,按照本发明能得到各种有益的效果。有可能产生各种音乐声并减少产生音乐声所须的处理负载。对于该装置的结构、在最佳取样频率下能产生音乐声。能够显著减化用于产生音乐声波数据的结构。即使在低性能硬件中,也能够保持产生音乐声的品质。即使性能信息卷变得很大,按照性能信息也能产生音乐声。
在第2个实施例中,在进到步骤Sa34时,该程序进行到执行合成处理,使用如图18所示的选定硬件。在步骤Sg1中,像在步骤Se1一样,进行事件检测。在步骤Sg2中,执行对于声音分配的系统检查。更具体地讲,对于CPU和LSI声源的每个声音(音品)确定操纵合成的器件。以下将描述对于上述分配的判定。一般来说,声源具有唯一配置的可用音品,从而通过唯一的音品编码能够选定一个单个音品。因此,有可能予先实现一个包含敲击乐音的音品编码目录表,以便在表中发现对于相关事件检测到的音品编码的情况中,由CPU10处理的乐音,和由LSI声源22处理的其它乐音之间进行识别。然而,在本实施例中,分配判定不限于音品编码。有可能设置手动方式下的音品处理装置,某些音品由CPU处理,而另外的音品由声源处理。也能分配每一个乐音,这依赖于能用于同时合成的道数。再说,在强迫方式下,通过具它运行程序可强迫分配每一个乐音。
对于LSI声源分配的乐音,在步骤Sg3中像在步骤Se4中(图15)一样,通过声音分配处理产生空声道。在步骤Sg4中,通过空声道合成了相关于接通事件的波形。对于上述操作,进行合成的方法不限于FM方式,谐波合成方式,或物理模型方式,但是有可能使用,例如,PCM方式由波形存储器25中读出波数据,这取决于所安装的声源22的特征。另一方面,在步骤Sg5中像在步骤Se7中一样(图15),对于分配到CPU的音品,为了产生一个分配命令,完成了CPU合成分配过程以产生相关于检测事件的波数据。如果分配命令可用,在步骤S6中检测结果″是″,而在步骤7中执行合成计算产生一个相关于分配命令的波形。如前所述,为了减少CPU的负载、通过波形存储读出方式完成波形合成。另一方面,当分配命令不可用时,在步骤S6中检测结果″不″,该过程返回。
在上述第2实施例中,音乐声按照它们的音品能够有选择地分配到CPU和声源,从而,对于CPU和声源处理负载的最佳分布有可能得到,并能够产生各种音品同时保持复制声的品质。概括地说,输入器件提供性能信息,其包括音品信息有效地选定音乐声的音品,和定时信息有效地选定产生音乐声的定时。相应音品信息选定第1波形发生器和第2波形发生器中的一个结果输出器件在选定定时产生具有选定音品的音乐声。
在第1和第2实施例中,在CPU提供的声道中或在声源提供的另一个声道中,对一个乐音执行了合成处理。然而,通过CPU和声源,对一个乐音能执行合成处理。在上述安排中,在CPU中有可能使用谐波合成方式,而在声源中有可能使用除了谐波合成之外的一种方式,例如,FM方式,从而能够产生变化的乐音,因为通过不同计算方式合成同一个乐音。第3个实施例的目的瞄准的正是此点。  在第3个实施例中,如图1和24所示在系统中安装了LSI声源。关于波形合成程序,用图19中所示的处理代替使用选定硬件的合成处理(图15和16)。更具体地讲,用表示在图19中的处理代替在步骤Sa34中使用选定的硬件的合成处理。以下将说明代替的处理,而省略其它处理的解释以便避免繁杂的描述。
在上述实施例中,进到步骤Sa34时,该合成程序进行到,如图19所示使用选定硬件执行合成处理。在步骤Sh1中,像在步骤Se1和Sg1中一样进行事件检测。在步骤Sh2中,对于声音分配执行系统检测。更具体地讲,对于CPU和LSI声源之外的每一个声音(乐音)确定处理合成器件。像在第2个实施例中一样,对于上述分配的判定可以是音品编码,对于同时进行合成可用声道的数目,或者用手动或强迫方式结构的设置。在步骤Sh3像在步骤Se4中一样(图15),对于分配到LSI声源的乐音,通过声音分配处理产生了空声道。在步骤Sh4中,通过空声道合成了相关于音符接通事件的波形。对于上述操作的合成方法不限于FM方式或谐波合成方法,但是有可能使用,例如,物理模型方式和PCM方式,从波形存储器25中读出波数据,这取决于所安装的声源22的特征。另一方面,对于分配到CPU的乐音,在步骤5中像在步骤Se7中一样(图15),为了产生相关于检测音符-接通事件的一个分配命令,进行了CPU合成分配过程。在分配命令中包括关于计算方法的信息。在步骤Sh3和步骤Sh4中,通过LSI声源处理了分配到CPU和声源的声音,同时在步骤Sh5中通过CPU处理了同样声音。这些处理同时执行。如果分配命令是可用的,在步骤Sh6中检测结果″是″,并且执行在步骤Sh7中的合成计算以产生相关于分配命令的波形。和第2个实施例不同,通过各种方式包括FM、谐波合成,物理模型等等进行了合成计算。另一方面,如果分配命令不可用,在步骤Sh6中检测结果″不″,该过程返回。
在第3个实施例中,将一个声音(乐音)分配到CPU和LSI声源,从而对于实际上相同的乐音能够复制不同波数据。由于上述特征,第3个实施例也能使系统的乐音变化。概括地说,将第1波形发生器和第2波形发生器都选定,结果控制器既操作第1波形发生器又操作第2波形发生器,对于单个音品以并行方式同向产生波形。
以下将说明第4实施例。尽管声音分配方式引入上述实施例中,然而更简单的实现是可能的。能分配到某个声源器件的事件,在安装在系统中的器件提供的事件检测时,简单地分配到相关器件上。在上述第4个实施例中,提供了非常好的实现。第4个实施例表明如图1或24所示安装声源22,像在第2和第3个实施例中一样。关于波形合成程序,用表示在图20中的处理代替使用选定硬件的合成处理。更具体地讲,用表示在图20中的处理代替在步骤Sa34中(图11)使用选定硬件的合成处理。以下将说明代替处理,同时省略了其它处理的解释,以避免的描述。
在上述实施例中,进行到步骤Sa34时,如图20所示,该合成程序进行到使用选定硬件,执行合成处理。首先,通过没有图示的处理,进行事件的检测。在步骤Si 1中,执行声音分配在LSI声源中产生一个空声道。在步骤Si 2中,使用空声道实际上合成了相关于检测事件的波形。对于上述操作的合成方法不限于FM方式或谐波合成方式,而且有可能使用,例如,物理模型方式和PCM方式,由波形存储器25中读出波数据,这取决于安装声源22的特征。在合成之后,过程返回。所以,在第4个实施例中,能分配到某个声源器件的事件,在将上述器件安装在系统中所提供的事件检测时,简单地分配到上述器件中。
图25表示本发明音乐声发生装置的另一个实施例。此实施例基本具有和表示在图1中的第1实施例相同的结构。与第1实施例相同的器件用同样的标号表示,以使本实施例容易明白。储存单元15能够储存包括波形数据的各种数据,和包括系统控制程序或基本程序,波形合成程序和其它应用程序的各种程序。通常,ROM11予先储存这些程序。然而,如果没有储存,那么在储存单元15中,可以将任何程序装入硬盘或其它处。将装入的程序传送到RAM13、启动CPU10来操作本发明音乐声发生装置系统。照此方式,新的或改型程序能够很容易地装在系统中。为此目的,一种可读介质机器例如CD-ROM(小型盘只读存储器)51用于安装程序。将CD-ROM51并入CD-ROM驱动器52来读出和通过总线12将来自CD-ROM51的程序向下装入储存单元15中。机器可读媒体除了CD-ROM51之外,可以由磁盘或光盘组成。
将通信接口53通过通信网络55例如LAN(地方区域网),公共电话网和INTERNET,连接到外部服务员计算机54。如果储存单元15不保留须要的数据或程序,那么通信接口53启动以接收来自服务员计算机54的数据或程序。CPU10通过接口53和网络55将一个请求传送到服务员计算机54上。响应该请求服务员计算机54将请求的数据或程序传送到该装置上。将传送的数据或程序储存在该储存单元15的硬盘中,由此完成向下装入。
通过装有需要的数据和程序的个人计算机,能够实现本发明音乐声发生装置。在此种情况中,用机器可读媒体例如CD-ROM51或软盘将数据和程序提供给用户。该机器可读媒体包含指令用于使个人计算机执行结合以前实施例所描述的本发明音乐声发生方法。换句话说,个人计算机,通过通信网络55可以接收数据和程序。
在上述实施例中,作为实例选定器件包括共处理器17,DSP21、声源22,然而选定器件不限于这些器件。能够将本发明用于应用系统,例如,个人计算机、电子乐器、游戏机等等其中产生音乐声。
如前所述,按照本发明能得到各种有益的效果。有可能产生各种音乐声并减少产生音乐声所须的处理负载。对于该装置的结构、在最佳取样频率下能产生音乐声。能够显著减化用于产生音乐声波数据的结构。即使在低性能硬件中,也能够保持产生音乐声的品质。即使性能信息卷变得很大,按照性能信息也能产生音乐声。

Claims (31)

1.一种音乐声发生装置,其用于按照性能信息产生一个波形以发生音乐声,其特征在于包括:
第1波形发生器,该装置可用于产生一个波形,
第2波形发生器,该装置能独立于第1波形发生器可操作地产生一个波形,
输入装置,该装置用于提供性能信息,
选定装置,该装置用于相应于所提供的性能信息选定第1波形发生器和第2波形发生器之中至少一个,
控制装置,该装置用于选择地操作第1波形发生器和第2波形发生器中选定的一个,按照所提供的性能信息产生波形,和
输出装置,该装置用于基于产生的波形发生音乐声。
2.按照权利要求1所述的一种音乐声发生装置,其特征在于,所述输入装置提供性能信息,所说性能信息包括有效地选定音乐声的音品的音品信息,和有效地选定音乐声产生的定时的定时信息,并且选定装置包括相应于音品信息在第1波形发生器和第2波形发生器之中选定一个,从而所述输出装置在选定的定时产生具有选定音品的音乐声。
3.按照权利要求1所述的一种音乐声发生装置,其特征在于,所述选定装置包括用于一致地选定第1波形发生器和选定第2波形发生器,从而所述控制装置操作第1波形发生器和操作第2波形发生器,以并列方式同时产生波形的可操作装置。
4.按照权利要求1所述的一种音乐声发生装置,其特征在于,所述输入装置包括用于提供有效地命令同时产生许多音乐声性能信息的装置,并且所述选定装置包括用于按照由性能信息选定的许多并发的音乐声选定第1波形发生器和第2波形发生器中的一个,从而使选定的一个具有容量足以产生相应于音乐声数目的许多波形的装置。
5.按照权利要求4所述的一种音乐声发生装置,其特征在于,所述选定装置还包括操作装置,当并发音乐声的数目超过第1波形发生器和第2波形发生器中的任一个容量时用于选定第1波形发生器和选定第2波形发生器,以保证完全产生并发音乐声。
6.按照权利要求1所述的一种音乐声发生装置,其特征在于,所述第1波形发生器包括可选择地连接到控制装置的一个外部波形发生器,同时第2波形发生器可以包括一个与控制器成一体的内部波形发生器,结果当外部波形发生器没连接到控制装置时,即使外部波形发生器应该主要相应于提供的性能信息,该选定装置还是选定内部波形发生器代替外部波形发生器。
7.按照权利要求1所述的一种音乐声发生装置,其特征在于,所述第2波形发生器、输入装置、选定装置和控制装置可以互相成为一体,以构成组成计算机的主要部件,同时第1波形发生器单独构成一个与主要部分分离的辅助部分,其可选择地安装到计算机上。
8.按照权利要求1所述的一种音乐声发生装置,其特征在于,所述第1波形发生器由控制装置驱动的硬件组件组成,同时第2波形发生器由安装在控制装置中的软件组件构成。
9.按装权利要求1所述的一种音乐声发生装置,其特征在于,所述第2波形发生器包括许多数字波形发生器,这些数字波形发生器基于不同算法,可操作运算产生具有不同品质的数字波形,并且所述控制装置用于按照提供的性能信息、选择地操作最佳的一个数字波形发生器。
10.按照权利要求9所述的一种音乐声发生装置,其特征在于,所述第2波形发生器包括波形存储型式的数字波形发生器,该数字波形发生器能基于相对简单的算法产生具有相对低品质的数字波形,而另一个第2波形发生器能基于相对复杂的算法产生具有相对高品质的另一个数字波形。
11.按照权利要求1所述的一种音乐声发生装置,其特征在于,所述第2波形发生器包括一个计算机化的波形发生器,其能够按照给定算法在可变操作速率下通过连续计算数字波形样值,产生一个数字波形,并且所述控制装置包括用于预先操作计算机化的波形发生器,在测量进行试用产生的操作速率的同时对产生模型数字波形进行测试的装置,测定装置用于最佳测定一个可和测量操作速率比较的取样频率,以及用于实际上操作计算机化的波形发生器,能够同样地按照所提供的性能信息在测定的取样频率下、连续地计算一个实际数字波形的样值的装置。
12.按照权利要求11所述的一种音乐声发生装置,其特征在于,所述测定装置包括用于将取样频率固定到一个步进预定水平的装置,所说预定水平低于和最接近测量的操作速率。
13.按照权利要求11所述的一种音乐声发生装置,其特征在于,所述控制装置还包括变换装置,当测定取样频率下落低于所限定的保证数字波形最低品质的一个临界水平时,操作变换装置用于改变算法以提高计算机化波形发生器的操作速率,从而能再测定取样频率以超过该临界水平。
14.按照权利要求13所述的一种音乐声发生装置,其特征在于,所述变换装置将复杂的算法改变成简单的算法,从而计算机化的波形发生器基于简化的算法操作以连续地读出预先储存的一个样值,以再现产生数字波形。
15.按照权利要求14所述的一种音乐声发生装置,其特征在于,所述计算机化的波形发生器连续读出预先储存的一个样值,该样值是在复杂算法改变成简单算法之前按照复杂算法临时计算的。
16.一种音乐声发生装置,按照性能信息用于产生数字波形以发生音乐声,其特征在于包括:
输入装置,该装置用于提供性能信息,
计算机化的波形发生器,该装置能基于给定的算法,通过连续计算数字波形样值,在变化操作速率下产生一个数字波形,
测试装置,该装置用于预先操作计算机化的波形发生器,测试模型数字波形的产生,同时测量进行试用产生时的操作速率,
测定装置,该装置用于最佳测定一个与测量操作速率可比较的取样频率,
控制装置,该装置用于实际操作计算机化的波形发生器,在测定的取样频率下能够同样连续计算实际数字波形样值,以及
输出装置,该装置用于按照所提供的性能信息基于实际数字波形以发生音乐声。
17.一种音乐声发生方法,按照性能信息产生波形以发生音乐声,其特征在于包括以下步骤:
准备一个第1波形发生器,能操作用于产生一个波形,
准备一个第2波形发生器,能独立于第1波形发生器操作用于产生一个波形,
提供性能信息,
选定第1波形发生器和第2波形发生器中至少一个,响应所提供的性能信息,用控制器选择操作选定的第1波形发生器和第2波形发生器中的一个,按照所提供的性能信息产生波形,以及
基于产生的波形发生音乐声。
18.按照权利要求17所述的一种音乐声发生方法,其特征在于,所提供的步骤包括提供性能信息,其包含音品信息有效地选定音乐声的音品,和定时信息,有效地选定发生音乐声的定时,以及选定步骤包括,选定第1波形发生器和第2波形发生器中的一个,响应该音品信息,从而在选定的定时发生具有选定音品的音乐声。
19.按照权利要求17所述的一种音乐声发生方法,其特征在于,所述选定步骤包括一致选定第1波形发生器和第2波形发生器两个波形发生器,从而控制器操作第1波形发生器和第2波形发生器两个波形发生器,以并列方式同时产生波形。
20.按照权利要求17所述的一种音乐声发生方法,其特征在于,所述提供的步骤包括提供性能信息以有效地命令同时发生许多音乐声,和选定步骤包括按照由性能信息选定许多并发音乐声,选定第1波形发生器和第2波形发生器中的一个,使得选定的一个具有的容量足以产生相应于音乐声数目的许多波形。
21.按照权利要求20所述的一种音乐声发生方法,其特征在于,所述选定步骤还包括选定第1波形发生器和第2波形发生器两个波形发生器以保证当并发音乐声的数目超过第1波形发生器和第2波形发生器中的任一个容量时,完全发生并发音乐声。
22.按照权利要求17所述的一种音乐声发生方法,其特征在于,所述准备步骤包括准备能可选择地连接到控制器上的一个外部波形发生器组成的第1波形发生器,和与控制器成一体的一个内部波形发生器所构成的第2波形发生器,从而当外部波形发生器没连接到控制器上时,即使外部波形发生器应主要相应于所提供的性能信息,还是选定内部波形发生器代替外部波形发生器。
23.按照权利要求17所述的一种音乐声发生方法,其特征在于,所述准备步骤包括准备,由控制器驱动的硬件组件构成的第1波形发生器,和由安装在控制器中的软件组件构成的第2波形发生器。
24.按照权利要求17所述的一种音乐声发生方法,其特征在于,所述准备步骤包括准备,许多数字波形发生器所构成的第2波形发生器,这些数字波形发生器基于不同算法,可操作运算产生具有不同品质的数字波形,并且所述操作步骤包括按照所提供的性能信息,选择操作数字波形发生器中的最佳的一个。
25.按照权利要求24所述的一种音乐声发生方法,其特征在于,所述准备步骤包括准备第2波形发生器,它包含一个波形存储型式的数字波形发生器,能基于相对简单的算法操作产生具有相对低品质的数字波形,和另一个数字波形发生器,能基于相对复杂的算法操作产生具有相对高品质的另一个数字波形。
26.按照权利要求17所述的一种音乐声发生方法,其特征在于,所述准备步骤包括准备由计算机化的波形发生器组成的第2波形发生器,能按照给定算法在可变操作速率下操作,通过连续计算数字波形的样值,产生数字波形,并且所述操作步骤包括先前操作计算机化的波形发生器的步骤,以进行试用产生模型数字波形,同时测量在进行试用产生时的操作速率,最佳测定一个可和测量的操作速率比较的取样频率,和实际上操作所述计算机化的波形发生器,使其按照所提供的性能信息在测定的取样频率下,连续地计算一个实际数字波形的样值。
27.按照权利要求26所述的一种音乐声发生方法,其特征在于,所述测定步骤包括将取样频率固定到一个步进预定水平,所述预定水平低于和最接近测量的操作速率。
28.按照权利要求26所述的一种音乐声发生方法,其特征在于,所述操作步骤进一步包括改变算法以提高计算机化波形发生器操作速率,从而当测定取样频率下落低于所限定的保证数字波形最低品质的一个临界水平时,能再测定取样频率以超过该临界水平。
29.按照权利要求28所述的一种音乐声发生方法,其特征在于,所述改变步骤包括将复杂的算法改变成简单的算法,从而计算机化的波形发生器基于简单的算法操作,连续地读出预先储存的一些样值,以再现产生数字波形。
30.按照权利要求29所述的一种音乐声发生方法,其特征在于,所述准备步骤包括准备计算机化的波形发生器,其连续地读出预先储存的一些样值,在将复杂算法改变成简单算法之前,该样值是按照复杂算法预先计算的。
31.一种音乐声发生方法,按照性能信息产生数字波形以发生音乐声,其特征在于包括以下步骤:
提供性能信息,
准备计算机化波形发生器,能基于给定算法操作,在可变操作速率下通过连续计算数字波形样值,产生数字波形,
预先操作计算机化的波形发生器,以进行试用产生模型数字波形,同时测量在进行试用产生时的操作速率,
最佳地测定一个可和测量操作速率比较的取样频率,
实际操作计算机化的波形发生器,使其在测定的取样频率下,连续计算实际数字波形样值,以及
按照所提供的性能信息,基于实际数字波形发生音乐声。
CNB961104171A 1995-06-06 1996-06-06 具有软件和硬件声源的计算机化的音乐系统 Expired - Fee Related CN1153187C (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP13952695 1995-06-06
JP139526/95 1995-06-06
JP139526/1995 1995-06-06
JP253493/1995 1995-09-29
JP7253493A JP2998612B2 (ja) 1995-06-06 1995-09-29 楽音発生装置
JP253493/95 1995-09-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CNB991089685A Division CN1192350C (zh) 1995-06-06 1999-06-30 乐器以及依演奏信息生成乐音的方法

Publications (2)

Publication Number Publication Date
CN1164727A CN1164727A (zh) 1997-11-12
CN1153187C true CN1153187C (zh) 2004-06-09

Family

ID=26472312

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB961104171A Expired - Fee Related CN1153187C (zh) 1995-06-06 1996-06-06 具有软件和硬件声源的计算机化的音乐系统

Country Status (8)

Country Link
US (2) US5714703A (zh)
EP (3) EP0978821B1 (zh)
JP (1) JP2998612B2 (zh)
KR (1) KR100306032B1 (zh)
CN (1) CN1153187C (zh)
DE (3) DE69632273T2 (zh)
HK (1) HK1004441A1 (zh)
SG (3) SG45482A1 (zh)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6362409B1 (en) 1998-12-02 2002-03-26 Imms, Inc. Customizable software-based digital wavetable synthesizer
JP3293434B2 (ja) * 1995-10-23 2002-06-17 ヤマハ株式会社 楽音発生方法
SG67993A1 (en) * 1996-08-30 1999-10-19 Yamaha Corp Sound source system based on computer software and method of generating acoustic waveform data
JP3152156B2 (ja) * 1996-09-20 2001-04-03 ヤマハ株式会社 楽音発生システム、楽音発生装置および楽音発生方法
US6758755B2 (en) 1996-11-14 2004-07-06 Arcade Planet, Inc. Prize redemption system for games executed over a wide area network
JP3196681B2 (ja) * 1997-03-13 2001-08-06 ヤマハ株式会社 通信データ一時記憶装置
JP2922509B2 (ja) * 1997-09-17 1999-07-26 コナミ株式会社 音楽演出ゲーム機、音楽演出ゲーム用の演出操作指示システムおよびゲーム用のプログラムが記録されたコンピュータ読み取り可能な記憶媒体
US6357039B1 (en) * 1998-03-03 2002-03-12 Twelve Tone Systems, Inc Automatic code generation
JP3031676B1 (ja) 1998-07-14 2000-04-10 コナミ株式会社 ゲ―ムシステムおよびコンピュ―タ読み取り可能な記憶媒体
FR2785711B1 (fr) * 1998-11-06 2001-03-16 Jean Philippe Chevreau Dispositif qui compose de maniere automatique une piece musicale en y incorporant des echantillons sonores
JP2000237455A (ja) 1999-02-16 2000-09-05 Konami Co Ltd 音楽演出ゲーム装置、音楽演出ゲーム方法および可読記録媒体
JP3707300B2 (ja) * 1999-06-02 2005-10-19 ヤマハ株式会社 楽音発生装置用拡張ボード
US9818386B2 (en) 1999-10-19 2017-11-14 Medialab Solutions Corp. Interactive digital music recorder and player
US6392133B1 (en) 2000-10-17 2002-05-21 Dbtech Sarl Automatic soundtrack generator
US7176372B2 (en) 1999-10-19 2007-02-13 Medialab Solutions Llc Interactive digital music recorder and player
US7078609B2 (en) 1999-10-19 2006-07-18 Medialab Solutions Llc Interactive digital music recorder and player
AU5584101A (en) * 2000-04-14 2001-10-30 Realnetworks, Inc. A system and method of providing music items to music renderers
US7237198B1 (en) 2000-05-22 2007-06-26 Realnetworks, Inc. System and method of providing for the control of a music player to a device driver
US7526349B2 (en) * 2000-12-01 2009-04-28 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7522966B2 (en) 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7890741B2 (en) 2000-12-01 2011-02-15 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7522964B2 (en) * 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7818443B2 (en) * 2000-12-01 2010-10-19 O2Micro International Ltd. Low power digital audio decoding/playing system for computing devices
US7522965B2 (en) * 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
EP1326228B1 (en) 2002-01-04 2016-03-23 MediaLab Solutions LLC Systems and methods for creating, modifying, interacting with and playing musical compositions
US7076035B2 (en) 2002-01-04 2006-07-11 Medialab Solutions Llc Methods for providing on-hold music using auto-composition
US7015389B2 (en) 2002-11-12 2006-03-21 Medialab Solutions Llc Systems and methods for creating, modifying, interacting with and playing musical compositions
US7928310B2 (en) 2002-11-12 2011-04-19 MediaLab Solutions Inc. Systems and methods for portable audio synthesis
US7169996B2 (en) 2002-11-12 2007-01-30 Medialab Solutions Llc Systems and methods for generating music using data/music data file transmitted/received via a network
US7045700B2 (en) * 2003-06-30 2006-05-16 Nokia Corporation Method and apparatus for playing a digital music file based on resource availability
US7038119B2 (en) 2003-07-18 2006-05-02 Telefonaktiebolaget L M Ericsson (Publ) Dynamic control of processing load in a wavetable synthesizer
DE10339032A1 (de) * 2003-08-25 2005-05-25 Infineon Technologies Ag Software-Synthesizer und Verfahren zum Erzeugen von Audiosignalen mit einer variablen Anzahl von Stimmen in Abhängigkeit vom Betriebszustand einer Prozessoreinheit
JP4134963B2 (ja) * 2003-09-16 2008-08-20 ヤマハ株式会社 音響装置
JP4400363B2 (ja) * 2004-08-05 2010-01-20 ヤマハ株式会社 音源システム、楽曲ファイルを記録したコンピュータ読み取り可能な記録媒体及び楽曲ファイル作成ツール
EP1846916A4 (en) 2004-10-12 2011-01-19 Medialab Solutions Llc SYSTEMS AND METHODS FOR REMOVE MUSIC
US20060155543A1 (en) * 2005-01-13 2006-07-13 Korg, Inc. Dynamic voice allocation in a vector processor based audio processor
US8180063B2 (en) * 2007-03-30 2012-05-15 Audiofile Engineering Llc Audio signal processing system for live music performance
JP4475323B2 (ja) * 2007-12-14 2010-06-09 カシオ計算機株式会社 楽音発生装置、及びプログラム
JP2009169862A (ja) * 2008-01-18 2009-07-30 Panasonic Corp プログラム変換装置、方法、プログラムおよび記録媒体
JP2011242560A (ja) * 2010-05-18 2011-12-01 Yamaha Corp セッション端末及びネットワークセッションシステム
JP5375869B2 (ja) * 2011-04-04 2013-12-25 ブラザー工業株式会社 楽曲再生装置、楽曲再生方法及びプログラム
JP6388048B1 (ja) 2017-03-23 2018-09-12 カシオ計算機株式会社 楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器
JP6443772B2 (ja) * 2017-03-23 2018-12-26 カシオ計算機株式会社 楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器
CN107436618B (zh) * 2017-08-08 2019-12-27 电子科技大学 一种基于指令架构的任意波形发生器

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4373416A (en) * 1976-12-29 1983-02-15 Nippon Gakki Seizo Kabushiki Kaisha Wave generator for electronic musical instrument
JPS604994B2 (ja) * 1977-09-05 1985-02-07 ヤマハ株式会社 電子楽器
JPS55500959A (zh) * 1978-12-11 1980-11-13
JPS5792399A (en) * 1980-11-29 1982-06-08 Nippon Musical Instruments Mfg Electronic musical instrument
JPS5792398A (en) * 1980-12-01 1982-06-08 Nippon Musical Instruments Mfg Electronic musical instrument
US4641564A (en) * 1983-06-17 1987-02-10 Nippon Gakki Seizo Kabushiki Kaisha Musical tone producing device of waveform memory readout type
US5119710A (en) * 1986-03-09 1992-06-09 Nippon Gakki Seizo Kabushiki Kaisha Musical tone generator
JPS6384190A (ja) 1986-09-29 1988-04-14 株式会社東芝 チツプ部品搭載基板
US5086685A (en) * 1986-11-10 1992-02-11 Casio Computer Co., Ltd. Musical tone generating apparatus for electronic musical instrument
JP2651600B2 (ja) 1988-07-06 1997-09-10 株式会社アイジー技術研究所 化粧面形成装置
US5020410A (en) * 1988-11-24 1991-06-04 Casio Computer Co., Ltd. Sound generation package and an electronic musical instrument connectable thereto
US5319151A (en) * 1988-12-29 1994-06-07 Casio Computer Co., Ltd. Data processing apparatus outputting waveform data in a certain interval
US5094136A (en) * 1989-01-06 1992-03-10 Yamaha Corporation Electronic musical instrument having plural different tone generators employing different tone generation techniques
JP2643405B2 (ja) 1989-01-18 1997-08-20 カシオ計算機株式会社 電子楽器
US5451710A (en) * 1989-06-02 1995-09-19 Yamaha Corporation Waveform synthesizing apparatus
JPH0383136A (ja) 1989-08-25 1991-04-09 Seiko Epson Corp 電子計算機
JPH04152393A (ja) 1990-10-16 1992-05-26 Casio Comput Co Ltd 楽音発生装置
JP2900082B2 (ja) 1990-10-25 1999-06-02 カシオ計算機株式会社 楽音発生装置
JP2680483B2 (ja) * 1991-05-02 1997-11-19 株式会社東芝 デジタル信号処理装置
JP2705395B2 (ja) * 1991-10-07 1998-01-28 ヤマハ株式会社 電子楽器
JP2743726B2 (ja) 1992-07-07 1998-04-22 ヤマハ株式会社 電子楽器
US5345035A (en) * 1992-07-10 1994-09-06 Yamaha Corporation Musical tone generating apparatus
JPH07146679A (ja) * 1992-11-13 1995-06-06 Internatl Business Mach Corp <Ibm> 音声データを変換する方法及びシステム
US5376752A (en) * 1993-02-10 1994-12-27 Korg, Inc. Open architecture music synthesizer with dynamic voice allocation
JP2678974B2 (ja) 1994-12-27 1997-11-19 カシオ計算機株式会社 楽音波形発生装置
JP2666762B2 (ja) 1995-03-11 1997-10-22 ヤマハ株式会社 電子楽器

Also Published As

Publication number Publication date
DE69632273T2 (de) 2005-04-21
CN1164727A (zh) 1997-11-12
EP0747877A2 (en) 1996-12-11
EP0747877A3 (de) 1997-01-22
EP0951009A1 (en) 1999-10-20
KR970002733A (ko) 1997-01-28
DE69614765D1 (de) 2001-10-04
DE69634271T2 (de) 2006-04-13
HK1004441A1 (en) 1998-11-27
JPH0954586A (ja) 1997-02-25
EP0747877B1 (en) 2001-08-29
EP0978821A1 (en) 2000-02-09
SG92777A1 (en) 2002-11-19
JP2998612B2 (ja) 2000-01-11
KR100306032B1 (ko) 2001-11-30
DE69632273D1 (de) 2004-05-27
USRE37367E1 (en) 2001-09-18
EP0978821B1 (en) 2004-04-21
SG45482A1 (en) 1998-01-16
US5714703A (en) 1998-02-03
DE69614765T2 (de) 2002-06-20
EP0951009B1 (en) 2005-01-26
DE69634271D1 (de) 2005-03-03
SG74104A1 (en) 2000-07-18

Similar Documents

Publication Publication Date Title
CN1153187C (zh) 具有软件和硬件声源的计算机化的音乐系统
CN1129110C (zh) 乐音发生方法与设备
CN1147797C (zh) 音乐信息处理系统和方法
CN1133150C (zh) 自动演奏装置
CN1202508C (zh) 利用被授权修改的保护内容的电子音乐设备
CN1591564A (zh) 形成乐音波形的方法和装置
CN1192350C (zh) 乐器以及依演奏信息生成乐音的方法
CN1460989A (zh) 自动演奏装置及自动演奏处理程序
JP4513625B2 (ja) 楽音発生装置および楽音発生処理のプログラム
CN1133465A (zh) 带效果数据转换功能的电子乐器
US6919502B1 (en) Musical tone generation apparatus installing extension board for expansion of tone colors and effects
CN1164726A (zh) 利用计算机软件的乐音发生器系统
CN1496065A (zh) 带有通用数据总线的波形数据处理设备
JPH05173576A (ja) 電子楽器
JP3716710B2 (ja) 楽音発生装置
JP4443658B2 (ja) 楽音発生装置、電子楽器、及び記録媒体
JP3169003B2 (ja) 楽音発生装置
JPH11249659A (ja) 楽音発生装置および楽音発生方法
CN1763838A (zh) 乐音发生方法与设备
JP3141796B2 (ja) カラオケ装置
JP2004279750A (ja) 楽音発生装置および楽音発生プログラム
JP2008097022A (ja) 楽音発生装置
JP2004361482A (ja) 波形変調装置および波形変調プログラム
JPH05265458A (ja) 電子楽器
JP2008052305A (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
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040609

Termination date: 20140606