The present invention relates to a tone color selection apparatus and method which can take in or load, from any desired external sources, loadable tone color data, such as data of DLS (DownLoadable Sounds) or Sound Font, to thereby add the loaded tone color data to a group of tone color data of a predetermined tone color standard, such as that of the MIDI, in such a manner that the added tone color data can be selected from among the group of tone color data whenever necessary. The present invention also relates to a storage medium to be used for the tone color selection.
MIDI, which is an acronym for Musical Instrument Digital Interface and a registered trademark, is one of the known digital signal interface standards for connecting an electronic musical instrument to another electronic musical instrument or computer. Tone generation apparatus, such as communication karaoke apparatus and DTM (Desk Top Music) apparatus, synthesize waveform data for generation of tones on the basis of music piece data of the standard format prescribed for the MIDI. In such tone generation apparatus, there are prestored, in memory, waveform data necessary for producing tones colors of standard musical instruments such as a piano and guitar. Generally, a tone color is selected in such MIDI tone generators using a program change message. In a case where each program change message is in the form of 7-bit data, only 128 (seventh power of 2) different kinds of tone colors are selectable by program change messages in principle. However, today""s sophisticated MIDI tone generators are constructed to permit selection of more than 128 different kinds of tone colors, and they employ the co-called xe2x80x9cbank approachxe2x80x9d in order to control the selection of more than 128 different kinds of tone colors. In such MIDI tone generators, a given bank is selected from among a plurality of banks, each capable of storing up to 128 kinds of tone colors, in accordance with control change data, and then a given tone color is designated from among the tone colors stored in the selected bank in accordance with a program change number. Typical example of the bank selection scheme uses a combination of bank MSB and LSB. The use of the bank MSB data permits selection of 128 (seventh power of 2) banks and the use of the bank LSB data permits selection of another 128 (seventh power of 2) banks, in which case the selectable tone colors total to the second power of 128.
Tone color selection information for selecting tone color data stored in memory comprises mapping information so as to select a location of desired tone color data in a virtual tone color selecting space called a tone color map. Given tone color selecting space is mapped in accordance with a given tone color standard, so that any tone color selection information (mapping information) compliant with the given tone color standard can accurately select a desired tone color in the given tone color selecting space. Although pieces of tone-related information are unified or standardized today with respect to their fundamental aspects just as in the case of the MIDI standard, details and various extended functions of the tone-related information differ variously among musical instrument makers. Particularly, regarding the tone color selecting space, the musical instrument makers have been building systems on the basis of their own specifications while the specifications are fundamentally based on the data format of the MIDI standard. Accordingly, in some cases, tone color data in a tone color selecting space compliant with a given tone color standard can not be accurately selected with tone color selection information compliant with another standard different from the given tone color standard.
Typically, the MIDI tone generator systems are based on the scheme of prestoring a multiplicity of tone color data (waveform data) in a ROM (Read-Only Memory) and reading out desired ones of the prestored tone color data for desired use. In recent years, some of the MIDI tone generator systems are designed to receive desired tone color data (waveform data) from external sources and store the received tone color data in a writable memory, such as a RAM (Random Access Memory) or hard disk. For example, in the above-mentioned type of tone color selecting space where the selectable banks amount to as many as the xe2x80x9csecond power of 128xe2x80x9d, all of the banks are not used for the tone color data prestored in the ROM, so that a considerable number of the banks would remain vacant or unused.
Today, as loadable sound color data sets, there are used the DLS (which is a registered trademark and an acronym for DownLoadable Sounds) and Sound Font (also a registered trademark). However, according to the conventional way of using such loadable tone color sets, a desired tone color set is installed exclusively in a user""s electronic musical instrument, and it has never been considered to allocate a separate loadable tone color set to a part of a tone color selecting space storing tone color sets of the MIDI or other standard.
In the case where loadable tone color data, such as DLS, are loaded from an external source and used for tone generation, the conventional tone generation apparatus, in principle, allocate (or map) the loadable tone color data to predetermined addressable locations of a tone color selecting space (i.e., tone color map) compliant with the standard of the loadable tone color data; the predetermined addressable locations are specified by mapping information included in the tone color data to be loaded from the external source. In case other tone color data are already present in the predetermined addressable locations of the tone color selecting space specified by the mapping information of the loadable tone color data, the conventional tone generation apparatus allocate, by way of an exception, the loadable tone color data to other vacant addressable locations of the tone color selecting space. Namely, no particular consideration has heretofore been paid to the standard of the tone color selecting space in the tone generator apparatus receiving the loadable tone color data.
Further, depending on a predetermined tone color standard (e.g., MIDI-GM standard or MIDI-XG standard; these MIDI-based GM standard and XG standard are each a registered trademark) used in the tone color selecting space of a data-receiving tone generator system, even when the tone color selecting space has vacant addressable locations, such vacant addressable locations are sometimes predetermined to be dedicated to allocation thereto of substitute tone color data of a predetermined tone color. Therefore, if tone color data received from an external source is allocated (mapped) to such a dedicated addressable location set aside for the predetermined substitute tone color, and if the externally-received tone color data has no relation to the predetermined substitute tone color, using the externally-received tone color data for tone reproduction would undesirably result in generation of a tone having an inconvenient tone color. In other words, the loadable tone color data would be loaded and allocated to an addressable location deviating from the predetermined tone color standard of the tone color selecting space in the data-receiving tone generator system, with the result that there would be encountered extreme inconveniences when the tone color is reproduced in accordance with tone color selection information compliant with the predetermined tone color standard, e.g. when an automatic performance is executed in accordance with performance data including tone color selection information compliant with the predetermined tone color standard.
If, on the other hand, particular loadable tone color data is loaded and allocated to a vacant addressable location of the tone color selecting space in the data-receiving tone generator system which does not agree with mapping information compliant with the standard of the loadable tone color data, and when the tone color is reproduced in accordance with the tone color selection information compliant with the standard of the loadable tone color data (e.g. when an automatic performance is executed in accordance with performance data including tone color selection information compliant with the standard of the loadable tone color data), there would also be encountered inconveniences.
In view of the foregoing, it is an object of the present invention to provide a tone color selection apparatus and method which, where tone color data loadable from an external source are allocated to addressable locations in a tone color selecting space compliant with a predetermined tone color standard, allow appropriate tone color selection to be made in accordance with the predetermined tone color standard without causing any inconveniences.
It is another object of the present invention to provide a tone color selection apparatus and method which, where tone color data loadable from an external source are allocated to addressable locations in a tone color selecting space compliant with a predetermined tone color standard, can also permit tone color selection in accordance with original tone color selection information of the externally-loadable tone color data.
According to an aspect of the present invention, there is provided a tone color selection apparatus including a tone color selecting space where tone color data are allocated to addressable locations thereof in association with tone color selection information in accordance with a predetermined tone color standard, to allow desired tone color data to be selected from the tone color selecting space in response to given tone color selection information. The tone color selection apparatus comprises: a memory; a loading device adapted to load tone color data externally loadable from outside the tone color selection apparatus, tone color data externally loaded from outside the tone color selection apparatus via the loading device being stored in the memory; and a processor coupled with the loading device and the memory. In the invention, the processor is adapted to set, in the tone color selecting space compliant with the predetermined tone color standard, a dedicated area for allocation thereto of the externally loaded tone color data, and allocating the externally loaded tone color data, stored in the memory, to the dedicated area in such a manner that the tone color data can be selected in response to tone color selection information designating the dedicated area.
With such inventive arrangements, mapping is performed such that tone color data externally loaded from outside the tone color selection apparatus are allocated to a dedicated area of the tone color selecting space and then selection of the externally loaded tone color data is made in accordance with tone color selection information designating the dedicated area pursuant to a predetermined tone color standard. Thus, the externally loaded tone color data can be selected without disturbing mapping rules compliant with the predetermined tone color standard. For example, even when an area where a substitute tone color compliant with the predetermined tone color standard should be allocated is vacant or empty in the tone color selecting space compliant with the predetermined tone color standard, the externally tone color data can be prevented from being indiscriminately allocated to that vacant area, so that it is possible to avoid any inconvenience in the tone color selection pursuant to the predetermined tone color standard. The allocation, to such a dedicated area, of tone color data loaded externally from outside the tone color selection apparatus will be set forth in the following description of embodiments in relation to xe2x80x9ctone color selecting table unit Axe2x80x9d.
As noted earlier, the tone color selecting space may be a virtual space for mapping tone color data. Locations for actually physically storing the individual tone color data in the invention are desired or appropriately selected storage locations of the memory. In such a case, an appropriate tone color selecting table intervenes between tone color selection information entered for selectively reading out desired tone color data and the tone color data. This arrangement constitutes a general form of memory management in the present invention. Of course, the present invention is not limited to such a form of memory management; for example, the physical memory itself may provide the tone color selecting space, in which case the intervention of the tone color selecting table may be dispensed with.
As an example, the above-mentioned memory also store other tone color data compliant with the predetermined tone color standard and the processor has a tone color selecting table defining correspondency between the tone color selection information and stored locations, in the memory, of the tone color data, so that the tone color selecting table is addressable by the tone color selection information. In this case, the above-mentioned dedicated area is set in the tone color selecting table, and information indicative of the stored location, in the memory, of the externally loaded tone color data is stored in the dedicated area of the memory. The substance of the tone color selecting space, which is a virtual space for mapping tone color data, may be defined by both the tone color selecting table and the memory.
In an embodiment of the present invention, the tone color data externally loadable from outside the tone color selection apparatus includes original tone color selection information indicative of an original allocated addressable location specific thereto. The processor is further adapted to replace the original tone color selection information with tone color selection information designating the dedicated area in accordance with the predetermined tone color standard, and the processor is also adapted to select the tone color data from the dedicated area in accordance with the original tone color selection information. By thus replacing the original tone color selection information with tone color selection information designating the dedicated area, the xe2x80x9cexternally loaded tone color dataxe2x80x9d mapped in the tone color selecting space, compliant with the predetermined tone color standard, in accordance with the predetermined tone color standard can be selected using the original tone color selection information specific to the tone color data. For example, in a tone generation apparatus including a tone color selecting space compliant with a predetermined tone color standard, even when an automatic performance is to be executed in accordance with performance data including original tone color selection information of loadable tone color data, the performance can be carried out appropriately, without causing inconveniences, through the replacement of the original tone color selection information and taking advantage of the allocation, to an addressable location of the tone color selecting space, of the original tone color selection information.
In another embodiment, a plurality of tone color data can be allocated to the dedicated area of the tone color selecting space, and the loadable tone color data include original tone color selection information indicative of an original allocated addressable location specific thereto. When the externally loaded tone color data are to be allocated to the dedicated area, the externally loaded tone color data are allocated to a particular location, in the dedicated area, specified by the original tone color selection information if the original tone color selection information of the externally loaded tone color data specifies the dedicated area, but, if the original tone color selection information of the externally loaded tone color data does not specify the dedicated area, the externally loaded tone color data are allocated to another available location in the dedicated area. Thus, when the xe2x80x9cexternally loaded tone color dataxe2x80x9d are to be allocated (mapped) to the tone color selecting space compliant with the predetermined tone color standard, and if the original tone color selection information of the xe2x80x9cexternally loaded tone color dataxe2x80x9d can be used, the allocation (mapping) of the tone color data can be performed taking the original tone color selection information into consideration as much as possible. In this case too, even when an automatic performance is to be executed, in a tone generation apparatus including a tone color selecting space compliant with a predetermined tone color standard, in accordance with performance data including original tone color selection information of loadable tone color data, the performance can be carried out appropriately, without causing inconveniences, through the replacement of the original tone color selection information and taking advantage of the allocation, to an addressable location of the tone color selecting space, of the original tone color selection information.
According to another aspect of the present invention, there is provided a tone color selection apparatus including a tone color selecting space where tone color data are allocated to addressable locations thereof in association with tone color selection information in accordance with a predetermined tone color standard, to allow desired tone color data to be selected from the tone color selecting space in response to given tone color selection information, which apparatus comprises: a memory; a loading device adapted to load tone color data externally loadable from outside the tone color selection apparatus, the tone color data externally loadable from outside the tone color selection apparatus via the loading device being stored in the memory, the externally loadable tone color data including original tone color selection information indicative of an original allocated addressable location specific thereto; and a processor coupled with the loading device and the memory. The processor is adapted to allocate the externally loaded tone color data, stored in the memory, to a given addressable location in the tone color selecting space such that the externally loaded tone color data can be selected in response to the original tone color selection information of the externally loaded tone color data. In this case, when other tone color data are already allocated to the given addressable location, the processor makes the externally loaded tone color data selectable with priority and makes the other tone color data non-selectable, so that the externally loaded tone color data can be selected in response to the original tone color selection information.
In this invention, when the xe2x80x9cexternally loaded tone color dataxe2x80x9d are to be allocated (mapped) to the tone color selecting space compliant with the predetermined tone color standard, the externally loaded tone color data are allocated, with priority over other data, to a given addressable location, of the tone color selecting space, according to the original tone color selection information of the externally loaded tone color data. When other tone color data are already allocated to the given addressable location of the tone color selecting space, and even if the other tone color data are compliant with the predetermined tone color standard, the processor makes the other tone color data non-selectable, and allocates (maps) the externally loaded tone color data in accordance with the original tone color selection information. Thus, even when an automatic performance is to be executed, in a tone generation apparatus including a tone color selecting space compliant with a predetermined tone color standard, in accordance with performance data including original tone color selection information of loadable tone color data, the performance can be carried out appropriately taking advantage of the allocation, to an addressable location of the tone color selecting space, of the original tone color selection information. Such a feature of allocating the externally loaded tone color data to an addressable location of the tone color selecting space in accordance with the original tone color selection information is set forth in the following description of embodiments in relation to xe2x80x9ctone color selecting table unit Bxe2x80x9d.
As an example, the memory also stores other tone color data compliant with the predetermined tone color standard, the processor has a tone color selecting table defining correspondency between the tone color selection information and stored locations, in the memory, of the tone color data, and the tone color selecting table is addressable by the tone color selection information. In this case, information indicative of the stored location, in the memory, of the externally loaded tone color data is stored in an area of the tone color selecting table addressable by the original tone color selection information.
In an embodiment, the tone color selection apparatus further comprises an operator operable to cancel the externally loaded tone color data allocated to a particular addressable location in the tone color selecting space. When, the externally loaded tone color data are canceled by canceling operation via the operator, the processor resets the particular addressable location in the tone color selecting space, where the externally loaded tone color data have been stored so far, to an initial addressable location compliant with the predetermined tone color standard. Thus, even in the case where the externally loaded tone color data were allocated, with priority, to the particular addressable location, of the tone color selecting space, according to the original tone color selection information, the particular addressable location can be reset to the initial addressable location compliant with the predetermined tone color standard after the externally loaded tone color data are canceled via the canceling operator, with the result that tone color selection can be made without causing any inconveniences.
According to still another aspect of the present invention, there is provided a tone color selection apparatus including a tone color selecting space where tone color data are allocated to addressable locations thereof in association with tone color selection information in accordance with a predetermined tone color standard, to allow desired tone color data to be selected from the tone color selecting space in response to given tone color selection information, which comprises: a memory; a loading device adapted to load tone color data externally loadable from outside the tone color selection apparatus, tone color data externally loaded from outside the tone color selection apparatus via the loading device being stored in the memory; a processor coupled with the loading device and the memory and adapted to set, in the tone color selecting space compliant with the predetermined tone color standard, a dedicated area for allocation thereto of tone color data externally loadable from outside the tone color selection apparatus, and allocate the externally loaded tone color data, stored in the memory, to the dedicated area in such a manner that the externally loaded tone color data can be selected in response to tone color selection information designating the dedicated area. The processor is also adapted to: execute a first process for making the externally loaded tone color data selectable in response to the tone color selection information designating the dedicated area; and execute a second process for replacing original tone color selection information specific to the externally loaded tone color data with the tone color selection information designating the dedicated area where the externally loaded tone color data are allocated, and for making the externally loaded tone color data selectable in response to the replaced tone color selection information so that the externally loaded tone color data can be selected with the addressable location specified by the original tone color selection information. The tone color selection apparatus further comprises a mode selector coupled with the processor and adapted to select one of a first mode for causing the processor to select the tone color data through the first process and a second mode for causing the processor to select the tone color data through the second process.
Thus, in a tone generation apparatus including a tone color selecting space compliant with a predetermined tone color standard, when an automatic performance is to be executed, for example, in accordance with performance data including tone color selection information compliant with a predetermined tone color standard, the first mode using the first process is selected, while when an automatic performance is to be executed in accordance with performance data including original tone color selection information of loadable tone color data, the second mode using the second process is selected. By thus properly using the mode selection, it is possible to execute, without causing inconveniences, not only the performance based on the tone color selection information compliant with the predetermined tone color standard but also the performance based on the original tone color selection information of loadable tone color data.
According to still another aspect of the present invention, there is provided atone color selection apparatus including a tone color selecting space where tone color data are allocated to addressable locations thereof in association with tone color selection information in accordance with a predetermined tone color standard, to allow desired tone color data to be selected from the tone color selecting space in response to given tone color selection information, which apparatus comprises: a memory; a loading device adapted to load tone color data externally loadable from outside the tone color selection apparatus, tone color data externally loaded from outside the tone color selection apparatus via the loading device being stored in the memory; a processor coupled with the loading device and the memory and adapted to: execute a first process for setting, in the tone color selecting space compliant with the predetermined tone color standard, a dedicated area for allocation thereto of tone color data externally loadable from outside the tone color selection apparatus, allocating the externally loaded tone color data, stored in the memory, to the dedicated area in such a manner that the externally loaded tone color data can be selected in response to tone color selection information designating the dedicated area, and making the externally loaded tone color data selectable in response to the tone color selection information designating the dedicated area; and execute a second process for allocating the externally loaded tone color data, stored in the memory, to a given addressable location in the tone color selecting space such that the externally loaded tone color data can be selected in response to original tone color selection information specific to the externally loaded tone color data, and for, when other tone color data are already allocated to the given addressable location, making the externally loaded tone color data selectable with priority and making the other tone color data non-selectable, to thereby allow the externally loaded tone color data to be selected in response to the original tone color selection information; and a mode selector coupled with the processor and adapted to select one of a first mode for causing the processor to select the tone color data through the first process and a second mode for causing the processor to select the tone color data through the second process.
In the following description of the embodiments, a process corresponding to the above-mentioned first process will be explained in relation to xe2x80x9ctone color selecting table unit Axe2x80x9d, while a process corresponding to the above-mentioned second process will be explained in relation to xe2x80x9ctone color selecting table unit Bxe2x80x9d. In this case too, by properly using the mode selection in a tone generation apparatus including a tone color selecting space compliant with a predetermined tone color standard, it is possible to execute, without causing inconveniences, not only the performance based on the tone color selection information compliant with the predetermined tone color standard but also the performance making use of the original tone color selection information of loadable tone color data.
In an embodiment, the mode selector makes a determines, in accordance with information indicative of a tone color standard included in performance data, whether tone color data compliant with the predetermined tone color standard should be used or the externally loaded tone color data should be used, and automatically selects one of the first mode and the second mode on the basis of a result of the determination. By automatically using the mode selection properly in accordance with a standard of automatic performance data of a music piece in a tone generation apparatus including a tone color selecting space compliant with a predetermined tone color standard, it is possible to execute the performance without causing inconveniences.
The present invention may be constructed and implemented not only as the apparatus invention as discussed above but also as a method invention. Also, the present invention may be arranged and implemented as a software program for execution by a processor such as a computer or DSP, as well as a storage medium storing such a program. Further, the processor used in the present invention may comprise a dedicated processor with dedicated logic built in hardware, not to mention a computer or other general-purpose type processor capable of running a desired software program.
While the embodiments to be described herein represent the preferred form of the present invention, it is to be understood that various modifications will occur to those skilled in the art without departing from the spirit of the invention. The scope of the present invention is therefore to be determined solely by the appended claims.