Automatic performance device and automatic performance program

The automatic performance device and program address the monotony issue in fixed rhythm patterns by dynamically determining note probabilities, ensuring varied and expressive musical outputs that align with the performer's style.

JP7778562B2Active Publication Date: 2025-12-02ROLAND CORP
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2021214552
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-12-28
Publication Date
2025-12-02
Estimated Expiration
2041-12-28

AI Technical Summary

Technical Problem

Existing automatic accompaniment data systems produce monotonous performances due to fixed rhythm patterns, leading to a lack of expressiveness in musical output.

Method used

An automatic performance device and program that dynamically determine the probability of sounding notes at each timing based on set probabilities, allowing for varied and expressive performances by incorporating input patterns and adjusting sound generation probabilities.

Benefits of technology

The solution provides a rich and expressive musical performance by varying note sounds and chords, matching the performer's style, and preventing monotony in automatic performances.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007778562000005
    Figure 0007778562000005
  • Figure 0007778562000006
    Figure 0007778562000006
  • Figure 0007778562000007
    Figure 0007778562000007
Patent Text Reader

Abstract

To provide an automatic musical performance device and automatic musical performance program that can realize expressive performances with reduced monotony, even when performance patterns are played automatically.SOLUTION: In a performance pattern Pa, notes to be pronounced are stored in chronological order for each beat position that is timing for pronunciation. In addition, in a pronunciation probability pattern Pb, probability of pronouncing at each beat position is stored. It is determined whether to be pronounced or not for each beat position of the performance pattern Pa, according to the probability stored in the pronunciation probability pattern Pb. In this way, it is possible to vary whether or not to pronounce a note in a performance pattern Pa according to the probability of the pronunciation probability pattern Pb. This prevents an automatic performance from becoming monotonous even when the same performance pattern Pa is repeatedly played automatically, thereby allowing the automatic performance to be rich in expression.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an automatic performance device and an automatic performance program. [Background technology]

[0002] Patent Document 1 discloses a device for searching for automatic accompaniment data. In this device, when a user presses a key on the keyboard of a rhythm input device 10, trigger data indicating that the key has been pressed, i.e., that a performance operation has been performed, and velocity data indicating the strength of the key press, i.e., the strength of the performance operation, are input to an information processing device 20 as an input rhythm pattern in units of one measure.

[0003] The information processing device 20 has a database containing multiple pieces of automatic accompaniment data. The automatic accompaniment data is made up of multiple parts, each with its own unique rhythm pattern. When an input rhythm pattern is input from the rhythm input device 10, the information processing device 20 searches for automatic accompaniment data that has a rhythm pattern that is the same as or similar to the input rhythm pattern, and displays a list of the names, etc., of the found automatic accompaniment data. The information processing device 20 outputs sounds based on the automatic accompaniment data selected by the user from the list display. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2012-234167 Summary of the Invention [Problem to be solved by the invention]

[0005] However, the rhythm patterns included in the automatic accompaniment data used for output are fixed, so once automatic accompaniment data is selected, the same rhythm pattern continues to be output repeatedly, resulting in the problem that the sound based on the output automatic accompaniment data becomes monotonous.

[0006] The present invention has been made to solve the above problems, and aims to provide an automatic performance device and an automatic performance program that can realize expressive performances with reduced monotony even when automatically performing performance patterns. [Means for solving the problem]

[0007] In order to achieve this object, the automatic performance device of the present invention automatically performs a performance pattern in which the sounding timing of notes to be sounded is set, and comprises: sounding probability pattern acquisition means for acquiring a sounding probability pattern in which the probability of sounding a note is set for each sounding timing of the performance pattern; and automatic performance means for determining whether to sound a note for each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired by the sounding probability pattern acquisition means, and performing automatic performance. When a predetermined sounding timing in the performance pattern is composed of a chord of a plurality of notes, the automatic performance means determines whether to sound each note constituting the chord based on the probability of the sounding timing set in the sounding probability pattern acquired by the sounding probability pattern acquisition means, and performs automatic performance according to the performance pattern. do. Another automatic musical performance device of the present invention automatically performs a performance pattern in which the sounding timing of notes to be sounded is set, and comprises: input means for inputting performance information; input pattern storage means for storing a plurality of input patterns; input pattern selection means for selecting a maximum likelihood estimated input pattern from the plurality of input patterns stored in the input pattern storage means based on the performance information input by the input means; probability acquisition means for acquiring a probability corresponding to the input pattern selected by the input pattern selection means; sounding probability pattern acquisition means for acquiring a sounding probability pattern in which the probability acquired by the probability acquisition means is set as the probability of sounding a note for each sounding timing of the performance pattern; and automatic performance means for determining whether to sound a note for each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired by the sounding probability pattern acquisition means, and performing an automatic performance. and automatic performance means for determining whether to sound a note at each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired by the sounding probability pattern acquisition means.

[0008] The automatic performance program of the present invention is a program for causing a computer to perform automatic performance, and is executed by the computer, comprising: a sounding probability pattern acquisition step for acquiring a sounding probability pattern in which a probability of sounding a note is set for each sounding timing of a performance pattern in which the sounding timing of a note to be sounded is set; and an automatic performance step for determining whether to sound a note for each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired in the sounding probability pattern acquisition step, and performing automatic performance. and when a predetermined sounding timing in the performance pattern is composed of a chord of a plurality of notes, the automatic performance step determines whether to sound each note constituting the chord based on the probability of the sounding timing set in the sounding probability pattern acquired in the sounding probability pattern acquisition step, and performs automatic performance according to the performance pattern. It is something. Another automatic performance program of the present invention is a program for causing a computer having a memory unit to execute an automatic performance, and causes the memory unit to operate as input pattern storage means in which a plurality of input patterns are stored, and causes the computer to execute the following steps: an input step for inputting performance information; an input pattern selection step for selecting, based on the performance information input in the input step, an input pattern that is most likely estimated from the plurality of input patterns stored in the input pattern storage means; a probability acquisition step for acquiring a probability corresponding to the input pattern selected in the input pattern selection step; a sounding probability pattern acquisition step for acquiring, for each sounding timing of a performance pattern in which the sounding timing of a note to be sounded is set, a sounding probability pattern in which the probability acquired in the probability acquisition step is set as the probability of sounding a note; and an automatic performance step for determining whether to sound a note for each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired in the sounding probability pattern acquisition step, and performing an automatic performance. Yet another automatic performance program of the present invention is a program for causing a computer having a storage unit to execute an automatic performance, the program causing the storage unit to operate as input pattern storage means for storing a plurality of input patterns, and as sounding probability pattern storage means for storing a plurality of sounding probability patterns in which the probability of sounding a note is set for each sounding timing of a performance pattern in which the sounding timing of a note to be sounded is set, and causing the computer to execute the following steps: an input step for inputting performance information; an input pattern selection step for selecting, based on the performance information input in the input step, an input pattern that is most likely estimated from the plurality of input patterns stored in the input pattern storage means; a sounding probability pattern acquisition step for acquiring, from the sounding probability patterns stored in the sounding probability pattern storage means, a sounding probability pattern that corresponds to the input pattern selected in the input pattern selection step; and an automatic performance step for determining whether to sound a note for each sounding timing of the performance pattern, based on the probability for each sounding timing set in the sounding probability pattern acquired in the sounding probability pattern acquisition step, and performing an automatic performance. [Brief explanation of the drawings]

[0009] [Figure 1] 1 is an external view of a synthesizer according to an embodiment of the present invention; [Figure 2](a) is a diagram showing a schematic representation of a performance pattern, (b) is a diagram showing a schematic representation of a sound generation probability pattern, (c) is a diagram showing a schematic representation of a performance pattern when the sound generation probability pattern of (b) is applied to the performance pattern of (a), (d) is a diagram showing a schematic representation of a variable sound generation probability pattern when the operating mode is mode 1, and (e) is a diagram showing a schematic representation of a sound generation probability pattern when the operating mode is mode 2. [Figure 3] (a) is a diagram showing a schematic representation of a performance pattern including chords, (b) is a diagram showing a schematic representation of a sounding probability pattern applied to the performance pattern of (a), and (c) and (d) are diagrams showing a schematic representation of a performance pattern when the sounding probability pattern of (b) is applied to the performance pattern of (a). [Figure 4] FIG. 2 is a block diagram showing the electrical configuration of a synthesizer. [Figure 5] FIG. 10(a) is a diagram for explaining beat positions, and FIG. 10(b) is a diagram schematically showing an input pattern table. [Figure 6] 1A is a table for explaining the states of an input pattern, and FIG. 1B is a diagram schematically illustrating a state pattern table. [Figure 7] (a) is a diagram showing a schematic diagram of a variable pronunciation probability table, (b) is a diagram showing a schematic diagram of a pronunciation probability comparison table, and (c) is a diagram showing a schematic diagram of a fixed pronunciation probability table. [Figure 8] FIG. 1A is a diagram for explaining transition routes, and FIG. 1B is a diagram schematically illustrating an inter-transition route likelihood table. [Figure 9] 1A is a diagram schematically illustrating a pitch likelihood table, and FIG. 1B is a diagram schematically illustrating a synchronization likelihood table. [Figure 10] 10A is a diagram schematically illustrating an IOI likelihood table, FIG. 10B is a diagram schematically illustrating a likelihood table, and FIG. 10C is a diagram schematically illustrating a previous likelihood table. [Figure 11] 10 is a flowchart of a main process. [Figure 12]10 is a flowchart of a maximum likelihood pattern search process. [Figure 13] 10A is a flowchart of a likelihood calculation process, and FIG. 10B is a flowchart of an inter-state likelihood integration process. [Figure 14] 10 is a flowchart of an inter-transition likelihood integration process. DETAILED DESCRIPTION OF THE INVENTION

[0010] Preferred embodiments will now be described with reference to the accompanying drawings. Fig. 1 is an external view of a synthesizer 1 according to one embodiment. Synthesizer 1 is an electronic musical instrument (automatic performance device) that outputs (emits sounds) by mixing musical sounds generated by a performer (user) with predetermined accompaniment sounds. Synthesizer 1 can apply effects such as reverb, chorus, and delay by performing arithmetic processing on waveform data that combines musical sounds generated by a performer and accompaniment sounds.

[0011] As shown in Fig. 1, synthesizer 1 is mainly equipped with a keyboard 2 and setting buttons 3 through which the performer inputs various settings. Keyboard 2 has a plurality of keys 2a, and is an input device for acquiring performance information from the performer's performance. Performance information conforming to the MIDI (Musical Instrument Digital Interface) standard in response to the performer's key press / release of keys 2a is output to CPU 10 (see Fig. 4).

[0012] In this embodiment, the synthesizer 1 stores a performance pattern Pa in which a note to be sounded at each sounding timing is set, and automatic performance is performed by performing a performance based on this performance pattern Pa. Whether or not a note is to be sounded at each sounding timing of the performance pattern is determined according to a sounding probability pattern Pb in which a probability is set for each sounding timing. The probability set for each sounding timing in the sounding probability pattern Pb is determined according to performance information from the performer using the keys 2a. Hereinafter, automatic performance based on the performance pattern Pa will be simply referred to as "automatic performance."

[0013] Next, the performance pattern Pa and the sound generation probability pattern Pb will be explained with reference to Figures 2 and 3. Figure 2(a) is a diagram that schematically shows the performance pattern Pa, Figure 2(b) is a diagram that schematically shows the sound generation probability pattern Pb, and Figure 2(c) is a diagram that schematically shows the performance pattern Pa' when the sound generation probability pattern Pb of Figure 2(b) is applied to the performance pattern Pa of Figure 2(a).

[0014] As shown in Figure 2(a), the performance pattern Pa stores notes to be sounded in chronological order for each beat position, which is the sounding timing. By playing the notes corresponding to the order of the beat positions stored in the performance pattern Pa, automatic performance can be performed using the performance pattern Pa.

[0015] 2(b), the sounding probability pattern Pb stores the probability (0 to 100%) of sounding a note at each beat position. Whether or not a note is sounded at each beat position is determined according to the probability stored in the sounding probability pattern Pb.

[0016] By applying the sound production probability pattern shown in Fig. 2(b) to the performance pattern Pa shown in Fig. 2(a), a performance pattern Pa' that is actually used for automatic performance is created. This performance pattern Pa' is shown in Fig. 2(c).

[0017] In performance pattern Pa' in Figure 2(c), beat positions B2, B5, B12, and B14, which were sounding positions in Figure 2(a), are set to "-", indicating that no sound will be produced, and no sound will be produced at these beat positions in the automatic performance. On the other hand, in performance pattern Pa' in Figure 2(c), beat positions such as B2, which were determined to be "no sound," are set to a probability greater than 0% in sound production probability pattern Pb, so there is a possibility that they will be determined to be "sounding" the next time the automatic performance is run.

[0018] In this way, by determining whether or not to sound a note in the performance pattern Pa based on the probability set for each beat position in the sounding probability pattern Pb, it is possible to vary the beat position at which a note is sounded each time the performance pattern Pa is automatically played. This prevents the automatic performance from becoming monotonous, even when the same performance pattern Pa is repeatedly played automatically, and enables the automatic performance to be rich in expressiveness.

[0019] In this embodiment, two methods (hereinafter referred to as "operation modes") for setting the probability for each beat position of the sounding probability pattern Pb are provided: Mode 1 and Mode 2. In Mode 1 of the operation modes, "100%" is set for predetermined beat positions that are guaranteed to produce a sound in the sounding probability pattern Pb, and for other beat positions, a probability is set according to an input pattern Pi that is most likely estimated based on the input of performance information to the keys 2a, which will be described later. Hereinafter, this type of sounding probability pattern Pb will be referred to as a "variable sounding probability pattern."

[0020] Fig. 2(d) is a diagram showing a schematic diagram of a variable sound generation probability pattern in mode 1. As shown in Fig. 2(d), 100% is set at beat positions where sound is generated in the variable sound generation probability pattern, and "*" representing a so-called wild card at which any probability can be set is set at other beat positions. At beat positions where "*" is set in the variable sound generation probability pattern, a probability according to the input pattern Pi that is most likely estimated based on the input of performance information to the key 2a is set.

[0021] For example, in Figure 2(d), "*" is set at beat positions B2, B3, B5, B6, B8, B9, B11, B12, B14, and B15, so if the probability according to the input pattern Pi that is most likely estimated based on the input of performance information to key 2a is "50%," then "50%" is set at each of these beat positions.

[0022] Thus, when the operating mode is mode 1, the sounding probability pattern Pb is set to a probability corresponding to the input pattern Pi that is most likely estimated based on the performance information input to the keys 2a, i.e., a probability corresponding to the performer's performance. This makes it possible to switch between sounding and not sounding the performance pattern Pa depending on the performer's performance, thereby outputting an automatic performance that matches the performer's performance. Furthermore, since there is no need to set a probability for every beat position in the sounding probability pattern Pb, the sounding probability pattern Pb can be easily created.

[0023] In addition, in the variable sound generation probability pattern, the beat positions where a sound is always generated are preset to "100%." ​​For example, by setting "100%" to a musically significant beat position, such as the beginning of a measure, the melody and rhythm of the automatic performance can be maintained appropriately.

[0024] The variable sound generation probability pattern is not limited to one that is preset to "100%," but may be set to a probability of less than 100%, such as "50%" or "75%."Furthermore, the variable sound generation probability pattern is not limited to one that is set to all beat positions where "*" is set to a probability corresponding to the input pattern Pi that is most likely estimated based on the input of performance information to the key 2a, but may be set to some beat positions where "*" is set in the variable sound generation probability pattern.

[0025] Next, the operation mode 2 will be described. In mode 2, a plurality of sound production probability patterns Pb (e.g., FIG. 2(e)) corresponding to the most likely estimated performance pattern Pa are stored in advance. Then, from among the stored sound production probability patterns Pb, the sound production probability pattern Pb corresponding to the most likely estimated input pattern Pi based on the input of performance information to the keys 2a is obtained and used for automatic performance.

[0026] In this way, when the operating mode is mode 2, the sound generation probability pattern Pb corresponding to the input pattern Pi that is most likely estimated based on the performance information input to the keys 2a is acquired from the pre-stored sound generation probability patterns Pb. This also makes it possible to switch between sound generation and non-generation of the performance pattern Pa according to the performer's performance, and to output an automatic performance that matches the performer's performance.

[0027] Furthermore, the probability of each beat position of the sounding probability pattern Pb is stored in advance. By setting the probability set for each beat position of the sounding probability pattern Pb in detail according to the corresponding (maximum likelihood estimated) input pattern Pi, the sounding probability pattern Pb can be made to match the intentions and preferences of the performer.

[0028] In this embodiment, the performance pattern Pa is configured so that not only one note is set per beat position, but also multiple notes can be set as a chord per beat position. The application of the sound production probability pattern Pb when a chord is set will be described with reference to FIG.

[0029] Figure 3(a) is a diagram schematically showing a performance pattern Pa that includes chords, Figure 3(b) is a diagram schematically showing a sounding probability pattern Pb that is applied to the performance pattern Pa of Figure 3(a), and Figures 3(c) and (d) are diagrams schematically showing a performance pattern Pa' in which the sounding probability pattern Pb of Figure 3(b) is applied to the performance pattern Pa of Figure 3(a).

[0030] When the sounding probability pattern Pb shown in Figure 3(b) is applied to a performance pattern Pa that includes the chord shown in Figure 3(a), the probability of the sounding probability pattern Pb at the beat position corresponding to each of the notes that make up the chord is applied. For example, at beat position B3 of the performance pattern Pa in Figure 3(a), a three-note chord consisting of C, E, and G is set. The probability of "30%" at beat position B3 of the sounding probability pattern Pb in Figure 3(b) is applied to each of these three notes, and whether or not each of these three notes will sound is determined independently.

[0031] In this way, the performance pattern Pa' obtained when the sounding probability pattern Pb in Fig. 3(b) is applied to the performance pattern Pa in Fig. 3(a) is shown in Fig. 3(c) and (d). In the performance pattern Pa in Fig. 3(a), a three-note chord consisting of C, E, and G is set in succession, whereas in the performance pattern Pa' in Fig. 3(c) and (d), the three notes consisting of C, E, and G are set to be sounded or not according to the probability of the sounding probability pattern Pb for each beat position.

[0032] This allows the notes that make up a chord to vary, preventing the automatic performance of the performance pattern Pa from becoming monotonous and adding variety to the chord. Furthermore, because it is determined whether or not each note that makes up a chord is to be sounded, it is possible to prevent situations in which not all of the notes that make up a chord are sounded. This reduces the sense of incongruity felt when a chord is sounded by an automatic performance.

[0033] Note that the probabilities of the sounding probability pattern Pb at the corresponding beat position do not necessarily have to be applied to all of the notes that make up the chord, but for example, the probabilities of the sounding probability pattern Pb may be applied to specific notes (for example, the highest or lowest pitch note) among the notes that make up the chord. Also, a probability may be set for each note that makes up the chord in the sounding probability pattern Pb, and the probabilities corresponding to each of the notes that make up the chord may be applied.

[0034] Next, the electrical configuration of synthesizer 1 will be described with reference to Figures 4 to 8. Figure 4 is a block diagram showing the electrical configuration of synthesizer 1. Synthesizer 1 has CPU 10, flash ROM 11, RAM 12, keyboard 2, setting buttons 3 described above, sound source 13, and digital signal processor 14 (hereinafter referred to as "DSP 14"), all of which are connected via bus line 15. DSP 14 is connected to digital-to-analog converter (DAC) 16, which is connected to amplifier 17, which is connected to speaker 18.

[0035] The CPU 10 is a computing device that controls each unit connected via a bus line 15. The flash ROM 11 is a rewritable nonvolatile memory that stores a control program 11a, an input pattern table 11b, a state pattern table 11c, a variable sound generation probability table 11d, a sound generation probability comparison table 11e, a fixed sound generation probability table 11f, and a transition route likelihood table 11g. When the CPU 10 executes the control program 11a, the main processing of FIG. 11 is performed.

[0036] The input pattern table 11b is a data table that stores performance information and input patterns Pi that match the performance information. The beat positions in the input patterns Pi and the input pattern table 11b will now be described with reference to FIG.

[0037] FIG. 5(a) is a diagram for explaining beat positions. In this embodiment, as shown in FIG. 5(a), the performance time of each input pattern Pi is two measures in 4 / 4 time. This two-measure length is divided equally by the length of a sixteenth note (i.e., divided equally into 32 parts), and beat positions B1 to B32 are used as one unit of time position. Note that time ΔT in FIG. 5(a) represents the length of a sixteenth note. Input patterns Pi and the arrangement of pitches for each beat position corresponding to each input pattern Pi are stored in the input pattern table 11b in association with each other. This input pattern table 11b is shown in FIG. 5(b).

[0038] FIG. 5(b) is a diagram schematically illustrating the input pattern table 11b. As shown in FIG. 5(b), pitches (C, D, E, ...) are set for each of the beat positions B1 to B32 in the input pattern Pi. Furthermore, in the input pattern Pi, not only a single pitch is set for a certain beat position B1 to B32, but a combination of two or more pitches can also be specified. In this embodiment, when specifying that two or more pitches are to be input simultaneously, the corresponding pitch names are connected with "&" for the beat positions B1 to B32. For example, at beat position B5 of the input pattern P3 in FIG. 5(b), the pitch "C & E" is specified, which specifies that "C" and "E" are to be input simultaneously.

[0039] In the input pattern Pi, pitches are defined for the beat positions B1 to B32 for which input of performance information is specified, while pitches are not defined for the beat positions B1 to B32 for which input of performance information is not specified. In this embodiment, the input pattern table 11b sets input patterns P1, P2, P3, etc. in descending order of the time interval between the beat positions for which performance information is set.

[0040] In this embodiment, in order to manage combinations of beat positions B1 to B32 and pitches, these combinations are defined as “states.” The states for such an input pattern Pi will be described with reference to FIG.

[0041] 6(a) is a table for explaining the states of an input pattern. As shown in FIG. 6, states J1, J2, ... are defined for beat positions B1 to B32, where pitches are specified, starting from beat position B1 of input pattern P1. Specifically, beat position B1 of input pattern P1 is defined as state J1, beat position B5 of input pattern P1 as state J2, ..., beat position B32 of input pattern P1 as state J8, and beat position B1 of input pattern P2 is defined as state J9 following state J8. Hereinafter, states J1, J2, ... will be abbreviated as "state Jn" unless a distinction is made between them.

[0042] The state pattern table 11c stores, for each state Jn, the name of the corresponding input pattern Pi, the beat positions B1 to B32, and the pitch. The state pattern table 11c will be described with reference to FIG.

[0043] 6(b) is a diagram schematically illustrating state pattern table 11c. State pattern table 11c is a data table that stores, for each state Jn, the name of the corresponding input pattern Pi, beat positions B1 to B32, and pitch for each music genre (rock, pop, jazz, etc.) that can be specified by synthesizer 1. In this embodiment, input patterns for each music genre are stored in state pattern table 11c, and an input pattern Pi corresponding to the selected music genre is referenced from state pattern table 11c.

[0044] Specifically, the input pattern Pi corresponding to the music genre "rock" is stored as state pattern table 11cr, the input pattern Pi corresponding to the music genre "pop" is stored as state pattern table 11cp, the input pattern Pi corresponding to the music genre "jazz" is stored as state pattern table 11cj, and similar input patterns Pi are stored for other music genres. Hereinafter, when no particular distinction is required, the state pattern tables 11cp, 11cr, 11cj, etc. in the state pattern table 11c will be referred to as "state pattern table 11cx."

[0045] When performance information is input from key 2a, a "likely" state Jn is estimated from the beat position and pitch of the performance information and the beat position and pitch of the state pattern table 11cx corresponding to the selected music genre, and an input pattern Pi is obtained from the state Jn.

[0046] Returning to Fig. 4, the variable sound generation probability table 11d is a data table in which variable sound generation probability patterns are stored when the above-mentioned operation mode is mode 1, the sound generation probability comparison table 11e is a data table in which probabilities corresponding to the maximum likelihood estimated input pattern Pi are stored, and the fixed sound generation probability table 11f is a data table in which sound generation probability patterns Pb are stored when the above-mentioned operation mode is mode 1. The variable sound generation probability table 11d, the sound generation probability comparison table 11e, and the fixed sound generation probability table 11f will be described with reference to Fig. 7.

[0047] 7(a) is a diagram schematically illustrating the variable sound generation probability table 11d. As shown in FIG. 7(a), the variable sound generation probability table 11d stores a plurality of variable sound generation probability patterns. When the operating mode is mode 1, the performer selects one variable sound generation probability pattern from the variable sound generation probability table 11d, and the selected variable sound generation probability pattern is used for automatic performance.

[0048] In this embodiment, the variable sound generation probability table 11d stores variable sound generation probability patterns for each music genre, and the variable sound generation probability pattern corresponding to the selected music genre is referenced from the variable sound generation probability table 11d. Specifically, the variable sound generation probability patterns corresponding to the music genres "rock," "pop," and "jazz" are set as variable sound generation probability tables 11dr, 11dp, and 11dj, respectively, and similar variable sound generation probability patterns are stored for other music genres. Hereinafter, the variable sound generation probability tables 11dr, 11dp, 11dj, etc. will be referred to as the "variable sound generation probability table 11dx" unless otherwise specified.

[0049] 7(b) is a diagram showing a schematic diagram of the sound generation probability comparison table 11e. As shown in FIG. 7(b), the sound generation probability comparison table 11e stores a corresponding probability for each maximum likelihood estimated input pattern Pi. A sound generation probability pattern Pb used in automatic performance is created by setting the probability obtained from the sound generation probability comparison table 11e according to the input pattern Pi to the variable sound generation probability pattern obtained from the variable sound generation probability table 11d of FIG. 7(a).

[0050] The sound generation probability comparison table 11e stores the values ​​of the larger probability in the same order as the input pattern table 11b, that is, in the order of the input patterns Pi with the larger time intervals between the beat positions for which the performance information is set. As a result, the longer the intervals between the performance information input by the performer, the smaller the probability that is obtained, and the shorter the intervals between the performance information input by the performer, the larger the probability that is obtained.

[0051] Therefore, the longer the intervals between the performance information input by the performer, the lower the probability that the automatically performed performance pattern Pa will sound, and the sparser the beat positions at which sounds will be generated in the automatically performed performance pattern Pa. This allows automatic performance using a performance pattern Pa that matches the performance of a performer with long intervals between the performance information input by the performer, i.e., a slow tempo.

[0052] On the other hand, the shorter the intervals between notes input by the performer, the higher the probability that the automatically performed performance pattern Pa will sound, and the more frequently the beat positions will sound in the automatically performed performance pattern Pa. This allows automatic performance to be performed using a performance pattern Pa that matches the short intervals between notes input by the performer, i.e., the fast-tempo performance of a performer.

[0053] Note that the sounding probability comparison table 11e is not limited to storing increasing probability values ​​in the order of input patterns Pi having larger temporal intervals between beat positions for which performance information is set. For example, the sounding probability comparison table 11e may store decreasing probability values ​​in the order of input patterns Pi having larger temporal intervals between beat positions for which performance information is set, or random probability values ​​unrelated to the corresponding input patterns Pi may be stored in the sounding probability comparison table 11e.

[0054] 7(c) is a diagram showing a schematic diagram of the fixed sounding probability table 11f. As shown in FIG. 7(c), the fixed sounding probability table 11f stores a sounding probability pattern Pb corresponding to an input pattern Pi. When the operating mode is mode 2, the sounding probability pattern Pb corresponding to the maximum-likelihood estimated input pattern Pi is obtained from the fixed sounding probability table 11f and used for automatic performance.

[0055] In this embodiment, the fixed sound generation probability table 11f stores sound generation probability patterns Pb for each music genre, and the sound generation probability pattern Pb corresponding to the selected music genre is referenced from the fixed sound generation probability table 11f. Specifically, the sound generation probability patterns Pb corresponding to the music genres "rock," "pop," and "jazz" are set as fixed sound generation probability tables 11fr, 11fp, and 11fj, respectively, and sound generation probability patterns Pb are similarly stored for other music genres. Hereinafter, the fixed sound generation probability tables 11fr, 11fp, 11fj, etc. will be referred to as the "fixed sound generation probability table 11fx" unless otherwise specified.

[0056] Returning to Fig. 4, the inter-transition route likelihood table 11g is a data table that stores the transition route Rm between states Jn, the beat distance between beat positions B1 to B32 of the transition route Rm, and the pattern transition likelihood and miss-beat likelihood for the transition route Rm. Here, the transition route Rm and the inter-transition route likelihood table 11g will be described with reference to Fig. 8.

[0057] FIG. 8(a) is a diagram for explaining the transition route Rm, and FIG. 8(b) is a diagram schematically illustrating the inter-transition route likelihood table 11g. The horizontal axis in FIG. 8(a) represents beat positions B1 to B32. As shown in FIG. 8(a), as time passes, the beat position progresses from beat position B1 to beat position B32, and the state Jn in each input pattern Pi also changes. In this embodiment, for such transitions between states Jn, expected paths between states Jn are set in advance. Hereinafter, the paths for transitions between states Jn that are set in advance will be referred to as "transition routes R1, R2, R3, ...," and when no particular distinction is needed, they will be referred to as "transition route Rm."

[0058] 8(a) shows the transition route to state J3. The transition route to state J3 can be roughly divided into two types: a transition from state Jn with the same input pattern Pi as state J3 (i.e., input pattern P1), and a transition from state Jn with an input pattern Pi different from state J3.

[0059] As transitions from state Jn in the same input pattern P1 as state J3, a transition route R3 from state J2, which is the immediately preceding state, to state J3, and a transition route R2 from state J1, which is the state two states before state J3, are set. That is, in this embodiment, as transition routes to state Jn between the same patterns, at most two transition routes are set: a transition route from the immediately preceding state Jn, and a "skipping" transition route from the state two states before.

[0060] On the other hand, examples of transition routes from state Jn of a pattern different from state J3 include transition route R8 from state J11 to state J3 of input pattern P2, transition route R15 from state J21 to state J3 of input pattern P3, and transition route R66 from state J74 to state J3 of input pattern P10. That is, as a transition route to state Jn between different input patterns Pi, a transition route is set in which state Jn of another input pattern Pi, which is the transition source, is the beat position immediately before the transition destination state Jn.

[0061] 8A, multiple transition routes Rm to state J3 are set. As with state J3, one or multiple transition routes Rm are set for each state Jn.

[0062] A "likely" state Jn is estimated based on the performance information from the key 2a, and the input pattern Pi corresponding to that state Jn is referenced. In this embodiment, the state Jn is estimated based on a likelihood, which is a numerical value set for each state Jn and represents the "likelihood" of the relationship between the performance information from the key 2a and the state Jn. In this embodiment, the likelihood for the state Jn is calculated by combining the likelihood based on the state Jn itself, the likelihood based on the transition route Rm, or the likelihood based on the input pattern Pi.

[0063] The pattern transition likelihood and miss likelihood stored in the inter-transition route likelihood table 11g are likelihoods based on the transition route Rm. Specifically, the pattern transition likelihood is a likelihood that indicates whether the source state Jn and the destination state Jn for the transition route Rm are the same input pattern Pi. In this embodiment, if the source and destination states Jn for the transition route Rm are the same input pattern Pi, the pattern transition likelihood is set to "1." If the source and destination states Jn for the transition route Rm are different input patterns Pi, the pattern transition likelihood is set to "0.5."

[0064] For example, in Figure 8(b), the transition route R3 has a transition source of state J2 of input pattern P1 and a transition destination of state J3 of the same input pattern P1, so the pattern transition likelihood of transition route R3 is set to "1." On the other hand, the transition route R8 has a transition source of state J11 of input pattern P2 and a transition destination of state J3 of input pattern P1, so transition route R8 is a transition route between different patterns. Therefore, the pattern transition likelihood of transition route R8 is set to "0.5."

[0065] The miss likelihood stored in the inter-transition route likelihood table 11g indicates whether the source state Jn and the destination state Jn for a transition route Rm have the same input pattern Pi, and whether the source state Jn is the state Jn two states before the destination state Jn, i.e., whether the source state Jn and the destination state Jn for a transition route Rm are transition routes caused by a skip. In this embodiment, if the source and destination states Jn of the transition route Rm are transition routes caused by a skip, the miss likelihood is set to "0.45", and if the transition route Rm is not caused by a skip, the miss likelihood is set to "1".

[0066] 8(b), transition route R1 is a transition route between adjacent states J1 and J2 in the same input pattern P1, and is not a transition route caused by a skip, so the likelihood of miss-play is set to 1. On the other hand, transition route R2, whose transition destination state J3 is two states ahead of the transition source state J1, has the likelihood of miss-play set to 0.45.

[0067] As described above, for the same input pattern Pi, a transition route Rm due to a skip is also set, with the state Jn two states before the transition destination state Jn being the transition source state Jn. In an actual performance, the probability of a transition due to a skip occurring is lower than the probability of a normal transition occurring. Therefore, by setting a smaller value for the likelihood of a miss on the transition route Rm due to a skip than for the normal transition route Rm without a skip, it is possible to estimate the transition destination state Jn of the normal transition route Rm with priority over the transition destination state Jn of the transition route Rm due to a skip, just like in an actual performance.

[0068] 8(b), the inter-transition route likelihood table 11g stores, for each transition route Rm, the transition source state Jn of the transition route Rm, the transition destination state Jn, the pattern transition likelihood, and the miss likelihood, in association with each other, for each music genre specified for the synthesizer 1. In this embodiment, the inter-transition route likelihood table 11g also stores an inter-transition route likelihood table for each music genre, with the inter-transition route likelihood table corresponding to the music genre "rock" being the inter-transition route likelihood table 11gr, the inter-transition route likelihood table corresponding to the music genre "pop" being the inter-transition route likelihood table 11gp, and the inter-transition route likelihood table corresponding to the music genre "jazz" being the inter-transition route likelihood table 11gj. Inter-transition route likelihood tables are also defined for other music genres. Hereinafter, the inter-transition route likelihood tables 11gp, 11gr, 11gj, . . . in the inter-transition route likelihood table 11g will be referred to as "inter-transition route likelihood table 11gx" unless otherwise distinguished.

[0069] Returning to Figure 4, the RAM 12 is a rewritable memory for storing various work data, flags, and the like when the CPU 10 executes programs such as the control program 11a. The RAM 12 includes a performance pattern memory 12a for storing performance patterns Pa used in automatic performance, a sounding probability pattern memory 12b for storing sounding probability patterns Pb used in automatic performance, a maximum likelihood pattern memory 12c for storing the most likely estimated input pattern Pi, a transition route memory 12d for storing the estimated transition route Rm, an IOI memory 12e for storing the time from the previous key 2a press to the current key 2a press (i.e., the keystroke interval), a pitch likelihood table 12f, a synchronization likelihood table 12g, an IOI likelihood table 12h, a likelihood table 12i, and a previous likelihood table 12j. The pitch likelihood table 12f will be described with reference to Figure 9(a).

[0070] 9(a) is a diagram showing a schematic diagram of the pitch likelihood table 12f. The pitch likelihood table 12f is a data table that stores pitch likelihoods, which are likelihoods that represent the relationship between the pitch of the performance information from the key 2a and the pitch of the state Jn. In this embodiment, the pitch likelihood is set to "1" if the pitch of the performance information from the key 2a completely matches the pitch of the state Jn in the state pattern table 11cx (FIG. 6(b)). If there is a partial match, the pitch likelihood is set to "0.54." If there is a mismatch, the pitch likelihood is set to "0.4." When performance information from the key 2a is input, the pitch likelihood is set for all states Jn.

[0071] 9(a) illustrates the pitch likelihood table 12f when "C" is input as the pitch of performance information from key 2a in the state pattern table 11cr for the music genre "rock" in FIG. 6(b). Since the pitch between state J1 and state J74 in the state pattern table 11cr is "C," the pitch likelihood between state J1 and state J74 in the pitch likelihood table 12f is set to "1." Furthermore, since the pitch of state J11 in the state pattern table 11cr is a wildcard pitch, any pitch input is considered to be a perfect match. Therefore, the pitch likelihood between state J11 and state J74 in the pitch likelihood table 12f is also set to "1."

[0072] The pitch of state J2 in state pattern table 11cr is "D," which does not match the pitch of "C" in the performance information from key 2a, so "0.4" is set for state J2 in pitch likelihood table 12f. Also, the pitch of state J21 in state pattern table 11cr is "C&E," which partially matches the pitch of "C" in the performance information from key 2a, so "0.54" is set for state J21 in pitch likelihood table 12f. Based on the pitch likelihood table 12f set in this way, it is possible to estimate state Jn with a pitch closest to the pitch of the performance information from key 2a.

[0073] Returning to Fig. 4, the synchronization likelihood table 12g is a data table that stores synchronization likelihoods, which are likelihoods that represent the relationship between the timing of input performance information from the key 2a in two measures and the beat positions B1 to B32 in the state Jn. The synchronization likelihood table 12g will be described with reference to Fig. 9(b).

[0074] 9(b) is a diagram schematically illustrating the synchronization likelihood table 12g. As shown in FIG. 9(b), the synchronization likelihood table 12g stores a synchronization likelihood for each state Jn. In this embodiment, the synchronization likelihood is calculated based on the Gaussian distribution of Equation 2, which will be described later, from the difference between the timing of two measures in which performance information from the key 2a is input and the beat positions B1 to B32 of the state Jn stored in the state pattern table 11cx.

[0075] Specifically, a large synchronization likelihood value is set for the state Jn at the beat positions B1 to B32 that are close to the timing at which the performance information from the key 2a is input, while a small synchronization likelihood value is set for the state Jn at the beat positions B1 to B32 that are close to the timing at which the performance information from the key 2a is input. By estimating the state Jn for the performance information from the key 2a based on the synchronization likelihoods in the synchronization likelihood table 12g set in this way, it is possible to estimate the state Jn at the beat position closest to the timing at which the performance information from the key 2a is input.

[0076] Returning to Figure 4, the IOI likelihood table 12h is a data table that stores IOI likelihoods that represent the relationship between the keystroke intervals stored in the IOI memory 12e and the beat distances of the transition route Rm stored in the transition route likelihood table 11gx. The IOI likelihood table 12h will be described with reference to Figure 10(a).

[0077] 10(a) is a diagram schematically illustrating the IOI likelihood table 12h. As shown in FIG. 10(a), the IOI likelihood table 12h stores the IOI likelihood for each transition route Rm. In this embodiment, the IOI likelihood is calculated using Equation 1, which will be described later, from the keystroke interval stored in the IOI memory 12e and the beat distance of the transition route Rm stored in the transition route likelihood table 11gx.

[0078] Specifically, a large IOI likelihood value is set for a transition route Rm whose beat distance is small compared to the keystroke interval stored in the IOI memory 12e, while a small IOI likelihood value is set for a transition route Rm whose beat distance is large compared to the keystroke interval stored in the IOI memory 12e. By estimating the state Jn to be the transition destination of the transition route Rm based on the IOI likelihood of the transition route Rm set in this way, it is possible to estimate the state Jn based on the transition route Rm whose beat distance is closest to the keystroke interval stored in the IOI memory 12e.

[0079] Returning to Figure 4, the likelihood table 12i is a data table that stores the likelihood obtained by integrating the above-mentioned pattern transition likelihood, miss-hit likelihood, pitch likelihood, synchronization likelihood, and IOI likelihood for each state Jn, and the previous likelihood table 12j is a data table that stores the previous value of the likelihood for each state Jn stored in the likelihood table 12i. The likelihood table 12i and the previous likelihood table 12j will be described with reference to Figures 10(b) and 10(c).

[0080] 10(b) is a diagram schematically illustrating the likelihood table 12i, and FIG. 10(c) is a diagram schematically illustrating the previous likelihood table 12j. As shown in FIG. 10(b), the likelihood table 12i stores, for each state Jn, the results of integrating the pattern transition likelihood, miss-hit likelihood, pitch likelihood, synchronization likelihood, and IOI likelihood. Of these likelihoods, the pattern transition likelihood, miss-hit likelihood, and IOI likelihood are integrated with the likelihoods of the transition route Rm corresponding to the destination state Jn. Furthermore, the previous likelihood table 12j shown in FIG. 10(c) stores the likelihoods of each state Jn integrated in the previous processing and stored in the likelihood table 12i.

[0081] Returning to Figure 4, the sound source 13 is a device that outputs waveform data corresponding to the performance information input from the CPU 10. The DSP 14 is a calculation device that processes the waveform data input from the sound source 13. The DSP 14 applies effects to the waveform data input from the sound source 13.

[0082] The DAC 16 is a converter that converts the waveform data input from the DSP 14 into analog waveform data. The amplifier 17 is an amplifier that amplifies the analog waveform data output from the DAC 16 with a predetermined gain, and the speaker 18 is an output device that emits (outputs) the analog waveform data amplified by the amplifier 17 as musical tones.

[0083] Next, the main processing executed by the CPU 10 will be described with reference to Figures 11 to 14. Figure 11 is a flowchart of the main processing. The main processing is executed when the synthesizer 1 is powered on.

[0084] The main processing begins with obtaining a performance pattern Pa selected by the performer via the setting button 3 (see FIG. 1) and storing it in the performance pattern memory 12a (S1). The performance pattern Pa obtained in the processing of S1 is selected from performance patterns Pa stored in advance in the flash ROM 11, but it is also possible to select an input pattern Pi stored in the input pattern table 11b (see FIG. 5(b)) and store the selected input pattern Pi in the performance pattern memory 12a as the performance pattern Pa.

[0085] Along with obtaining the performance pattern Pa selected by the performer, the music genre selected by the performer is also obtained via the setting button 3. The state pattern table 11cx, variable sounding probability table 11dx, fixed sounding probability table 11fx, or transition route likelihood table 11gx corresponding to the obtained music genre is referenced from the state pattern table 11c, variable sounding probability table 11d, fixed sounding probability table 11f, or transition route likelihood table 11g stored for each music genre. Hereinafter, the "music genre obtained in the processing of S1" will be referred to as the "corresponding music genre."

[0086] After the process of S1, the operation mode selected by the performer via the setting button 3 is obtained (S2), and it is confirmed whether the obtained operation mode is mode 1 (S3). In the process of S3, if the operation mode is mode 1 (S3: Yes), the variable sound production probability pattern selected by the performer via the setting button 3 is obtained from the variable sound production probability table 11d and saved in the sound production probability pattern memory 12b (S4). On the other hand, in the process of S3, if the operation mode is mode 2 (S3: No), the process of S4 is skipped.

[0087] After the processes of S3 and S4, it is checked whether key input, i.e., performance information from the key 2a, has been input (S5). If performance information from the key 2a has not been input in the process of S5 (S5: No), the process of S5 is repeated.

[0088] On the other hand, if performance information is input from the key 2a in the process of S5 (S5: Yes), automatic performance begins based on the performance pattern Pa stored in the performance pattern memory 12a (S6). At this time, the tempo specified for the performance pattern Pa stored in the performance pattern memory 12a is acquired, and the performance pattern Pa is automatically performed based on this tempo. Hereinafter, this tempo will be referred to as the "automatic performance tempo."

[0089] After the process of S6, a maximum likelihood pattern search process is executed (S7). The maximum likelihood pattern search process will now be described with reference to FIGS.

[0090] 12 is a flowchart of the maximum likelihood pattern search process. In the maximum likelihood pattern search process, first, a likelihood calculation process is performed (S30). The likelihood calculation process will be described with reference to FIG. 13(a).

[0091] 13(a) is a flowchart of the likelihood calculation process. In the likelihood calculation process, the time difference between the input of performance information from the key 2a, i.e., the keystroke interval, is calculated from the difference between the time when performance information from the previous key 2a was input and the time when performance information from the current key 2a is input, and the calculated time difference is stored in the IOI memory 12e (S50).

[0092] After the process of S50, the IOI likelihood is calculated from the keystroke interval in the IOI memory 12e, the tempo of the automatic performance, and the beat distance of each transition route Rm in the transition route likelihood table 11gx of the corresponding music genre, and is stored in the IOI likelihood table 12h (S51). Specifically, if the keystroke interval in the IOI memory 12e is x, the tempo of the automatic performance is Vm, and the beat distance of a certain transition route Rm stored in the transition route likelihood table 11gx is Δτ, the IOI likelihood G is calculated using the Gaussian distribution of Equation 1.

[0093]

number

[0094] After the process of S51, the pitch likelihood is calculated for each state Jn from the pitch of the performance information from the key 2a, and stored in the pitch likelihood table 12f (S52). As described above in Fig. 9(a), the pitch of the performance information from the key 2a is compared with the pitch of each state Jn in the state pattern table 11cx of the corresponding music genre, and for a state Jn that matches completely, the pitch likelihood of the corresponding state Jn in the pitch likelihood table 12f is set to "1." For a state Jn that matches partially, the pitch likelihood of the corresponding state Jn in the pitch likelihood table 12f is set to "0.54." For a state Jn that does not match, the pitch likelihood of the corresponding state Jn in the pitch likelihood table 12f is set to "0.4."

[0095] After the process of S52, a synchronization likelihood is calculated from the beat position corresponding to the time when the performance information from the key 2a was input and the beat position in the state pattern table 11cx of the corresponding music genre, and stored in the synchronization likelihood table 12g (S53). Specifically, if the time when the performance information from the key 2a was input is converted into a beat position in two bars and the beat position in the state pattern table 11cx of the corresponding music genre is tp, the synchronization likelihood B is calculated using the Gaussian distribution of Equation 2.

[0096]

number

[0097] After the process of S53, the likelihood calculation process ends, and the process returns to the maximum likelihood pattern search process of FIG.

[0098] Returning to Fig. 12, after the likelihood calculation process in S30, an inter-state likelihood integration process is executed (S31). Here, the inter-state likelihood integration process will be described with reference to Fig. 13(b).

[0099] Figure 13(b) is a flowchart of the inter-state likelihood integration process. This inter-state likelihood integration process is a process for calculating a likelihood for each state Jn from the likelihoods calculated in the likelihood calculation process of Figure 13(a). The inter-state likelihood integration process first sets a counter variable n to 1 (S60). Hereinafter, the "n" in "state Jn" in the inter-state likelihood integration process represents the counter variable n, and for example, the state Jn when the counter variable n is 1 represents "state J1".

[0100] After the process of S60, the likelihood for state Jn is calculated from the maximum likelihood value stored in the previous likelihood table 12j, the pitch likelihood for state Jn in the pitch likelihood table 12f, and the synchronization likelihood for state Jn in the synchronization likelihood table 12g, and stored in the likelihood table 12i (S61). Specifically, the maximum likelihood value stored in the previous likelihood table 12j is Lp_M, the pitch likelihood for state Jn in the pitch likelihood table 12f is Pi_n, and the synchronization likelihood for state Jn in the synchronization likelihood table 12g is B_n. The logarithm of the likelihood L_n for state Jn, that is, log(L_n), is calculated by the Viterbi algorithm of Equation 3.

[0101]

number

[0102] After S61, 1 is added to counter variable n (S62), and it is confirmed whether the added counter variable n is greater than the number of states Jn (S63). In the process of S63, if counter variable n is equal to or less than the number of states Jn, the process from S61 onwards is repeated. On the other hand, if counter variable n is greater than the number of states Jn (S63: Yes), the inter-state likelihood integration process is terminated, and the process returns to the maximum likelihood pattern search process of FIG. 12.

[0103] Returning to Fig. 12, after the inter-state likelihood integration process in S31, an inter-transition likelihood integration process is executed (S32). The inter-transition likelihood integration process will be described with reference to Fig. 14.

[0104] 14 is a flowchart of the inter-transition likelihood integration process, which calculates the likelihood of each transition route Rm for the state Jn, which is the transition destination, from the likelihoods calculated in the likelihood calculation process of FIG. 13(a) and the pattern transition likelihoods and miss likelihoods in a preset inter-transition route likelihood table 11g.

[0105] In the inter-transition likelihood integration process, first, a counter variable m is set to 1 (S70). Hereinafter, in the inter-transition likelihood integration process, "m" in "transition route Rm" represents the counter variable m. For example, when the counter variable m is 1, the transition route Rm represents the "transition route R1."

[0106] After processing S70, likelihood is calculated based on the likelihood of the state Jn that is the source of the transition route Rm in the previous likelihood table 12j, the IOI likelihood of the transition route Rm in the IOI likelihood table 12h, the pattern transition likelihood and miss-hit likelihood in the inter-transition route likelihood table 11gx of the corresponding music genre, the pitch likelihood of the state Jn that is the destination of the transition route Rm in the pitch likelihood table 12f, and the synchronization likelihood of the state Jn that is the destination of the transition route Rm in the synchronization likelihood table 12g (S71).

[0107] Specifically, the previous likelihood of the state Jn that is the source of the transition route Rm in the previous likelihood table 12j is Lp_mb, the IOI likelihood of the transition route Rm in the IOI likelihood table 12h is I_m, the pattern transition likelihood in the inter-transition route likelihood table 11gx of the corresponding music genre is Ps_m, the miss likelihood in the inter-transition route likelihood table 11gx of the corresponding music genre is Ms_m, the pitch likelihood of the state Jn that is the destination of the transition route Rm in the pitch likelihood table 12f is Pi_mf, and the synchronization likelihood of the state Jn that is the destination of the transition route Rm in the synchronization likelihood table 12g is B_mf. The logarithm of the likelihood L, log(L), is calculated using the Viterbi algorithm of Equation 4.

[0108]

number

[0109] After the process of S71, it is confirmed whether the likelihood L calculated in the process of S70 is greater than the likelihood of the state Jn, which is the transition destination of the transition route Rm, in the likelihood table 12i (S72). In the process of S72, if the likelihood L calculated in the process of S70 is greater than the likelihood of the state Jn, which is the transition destination of the transition route Rm, in the likelihood table 12i, the likelihood L calculated in the process of S70 is saved in the memory area corresponding to the state Jn, which is the transition destination of the transition route Rm, in the likelihood table 12i (S73).

[0110] On the other hand, in the process of S72, if the likelihood L calculated in the process of S70 is equal to or less than the likelihood of the state Jn of the transition destination of the transition route Rm in the likelihood table 12i (S72: No), the process of S73 is skipped.

[0111] After the processes of S72 and S73, the counter variable m is incremented by 1 (S74), and then it is confirmed whether the counter variable m is greater than the number of transition routes Rm (S75). In the process of S75, if the counter variable m is equal to or less than the number of transition routes Rm (S75: No), the process from S71 onwards is repeated, and if the counter variable m is greater than the number of transition routes Rm (S75: Yes), the inter-transition likelihood integration process is terminated and the process returns to the maximum likelihood pattern search process of FIG.

[0112] Returning to FIG. 12, after the inter-transition likelihood integration process in S32, the state Jn with the maximum likelihood in the likelihood table 12i is obtained, and the input pattern Pi corresponding to that state Jn is obtained from the state pattern table 11cx of the corresponding music genre and stored in the maximum likelihood pattern memory 12c (S33). That is, the state Jn most likely for the performance information from the key 2a is obtained from the likelihood table 12i, and the input pattern Pi corresponding to that state Jn is obtained. In this way, the most likely input pattern Pi for the performance information from the key 2a can be selected (estimated).

[0113] After the process of S33, it is confirmed whether the maximum likelihood in the likelihood table 12i has been updated by the inter-transition likelihood integration process of S32 (S34). That is, it is confirmed whether the likelihood of the state Jn used to determine the pattern in the process of S33 has been updated by the likelihood based on the previous likelihood Lp_mb by the processes of S71 to S73 in FIG.

[0114] In the process of S34, if the maximum likelihood in likelihood table 12i has been updated by the inter-transition likelihood integration process (S34: Yes), a current transition route Rm is obtained from the state Jn having the maximum likelihood in likelihood table 12i and the state Jn having the maximum likelihood in previous likelihood table 12j, and saved in transition route memory 12d (S35). Specifically, the state Jn having the maximum likelihood in likelihood table 12i and the state Jn having the maximum likelihood in previous likelihood table 12j are searched for using the transition destination state Jn and transition source state Jn in inter-transition route likelihood table 11gx of the corresponding music genre, and a transition route Rm matching these states Jn is obtained from inter-transition route likelihood table 11gx of the corresponding music genre and saved in transition route memory 12d.

[0115] In the process of S34, if the maximum likelihood in the likelihood table 12i has not been updated in the inter-transition likelihood integration process (S34: No), the process of S35 is skipped.

[0116] After the processes of S34 and S35, the value of the likelihood table 12i is set to the previous likelihood table 12j (S36), and after the process of S36, the maximum likelihood pattern search process is terminated and the process returns to the main process of FIG.

[0117] Returning to Fig. 11, after the maximum likelihood pattern search process of S7, the operation mode selected by the performer via the setting button 3 is confirmed (S8). In the process of S8, if the operation mode is mode 1 (S8: "mode 1"), the probability corresponding to the input pattern Pi in the maximum likelihood pattern memory 12c is obtained from the sounding probability comparison table 11e, and the obtained probability is applied to the sounding probability pattern Pb in the sounding probability pattern memory 12b (S9). Specifically, since the sounding probability pattern memory 12b when the operation mode is mode 1 contains beat positions where "*" is set, the probability obtained from the sounding probability comparison table 11e is set to the beat position where "*" is set.

[0118] On the other hand, in the processing of S8, if the operating mode is mode 2 (S8: "mode 2"), the sounding probability pattern Pb corresponding to the input pattern Pi of the maximum likelihood pattern memory 12c is obtained from the fixed sounding probability table 11f and saved as the sounding probability pattern Pb (S10).

[0119] After the processes of S9 and S10, a decision is made as to whether or not to sound a note at the current beat position of the automatic performance based on the sounding probability pattern Pb in the sounding probability pattern memory 12b (S11). Specifically, the probability of the current beat position of the automatic performance is obtained from the sounding probability pattern Pb in the sounding probability pattern memory 12b. A decision is made as to whether or not to sound a note based on that probability. At this time, if the current beat position of the performance pattern Pa in the performance pattern memory 12a is a chord, as described above, a decision is made as to whether or not to sound each note that makes up the chord.

[0120] The method of determining whether or not to pronounce a sound based on probability is a known method, but one example is to generate a pseudo-random integer number in the range of 1 to 100, and if the probability is 40%, decide to "sound" when the generated pseudo-random number is 1 to 40, and decide to "not pronounce" when it is 41 to 100.

[0121] After the process of S11, the musical sound of the note at the current beat position of the performance pattern Pa in the performance pattern memory 12a according to whether or not to sound at the current beat position determined in the process of S11 and the musical sound based on the performance information of the key 2a are output (S12), and the processes from S6 onwards are repeated.

[0122] The above has been explained based on the above embodiment, but it can be easily imagined that various improvements and modifications are possible.

[0123] In the above embodiment, the synthesizer 1 is used as an example of an automatic performance device. However, the present invention is not limited to this and may be applied to electronic musical instruments such as electronic organs, electronic pianos, sequencers, etc. that output automatic performances along with musical sounds played by a performer.

[0124] In the above embodiment, the sounding probability pattern Pb is obtained from the variable sounding probability table 11d or the fixed sounding probability table 11f, but this is not limited to this. For example, the performer may create a sounding probability pattern Pb using the setting button 3 or the like, and the created sounding probability pattern Pb may be used for automatic performance. This makes it possible to realize automatic performance using a sounding probability pattern Pb that takes into account the performer's intentions and preferences.

[0125] In the above embodiment, when the operation mode is mode 1, the probability corresponding to the maximum-likelihood estimated input pattern Pi is set to the beat position of "*" in the sound production probability pattern Pb. However, this is not limiting, and for example, a probability acquired from the performer via the setting button 3 may be set to the beat position of "*" in the sound production probability pattern Pb.

[0126] Alternatively, the probability corresponding to the maximum likelihood estimated input pattern Pi may be set at the beat position of "*" in the sounding probability pattern Pb, and then the probability set at the beat position of "*" may be added to the probability obtained from the performer via the setting button 3, so that the probability at the beat position of "*" can be adjusted using the setting button 3.

[0127] In the above embodiment, when the operating mode is mode 2, the sounding probability pattern Pb corresponding to the maximum likelihood estimated input pattern Pi is obtained from the fixed sounding probability table 11f, but this is not limiting. For example, the sounding probability pattern Pb specified by the performer via the setting button 3 may be obtained from the fixed sounding probability table 11f.

[0128] In the above embodiment, the input pattern Pi is subjected to maximum likelihood estimation based on the input performance information, and the probability and onset probability pattern Pb corresponding to the maximum likelihood estimated input pattern Pi are obtained. However, this is not limited to this. Other properties and characteristics of the input performance information can also be subject to maximum likelihood estimation, and the results of this maximum likelihood estimation can be used to obtain the probability and onset probability pattern. For example, the tempo, melody, and musical genre (rock, pop, etc.) of the song being played by the performer can be maximum likelihood estimated based on the input performance information, and the probability and onset probability pattern Pb corresponding to the maximum likelihood estimated tempo, etc. can be obtained. In this case, the onset probability comparison table 11e (see FIG. 7(b)) can be set with probabilities corresponding to each maximum likelihood estimated tempo, etc., and the fixed onset probability table 11f (see FIG. 7(c)) can be set with onset probability patterns Pb corresponding to each maximum likelihood estimated tempo, etc.

[0129] In the above embodiment, whether or not to produce a sound at each beat position of the performance pattern in the performance pattern memory 12a is determined in accordance with the probability of the sound production probability pattern Pb in the sound production probability pattern memory 12b. However, this is not limited to this, and for example, the volume (velocity) at each beat position of the performance pattern in the performance pattern memory 12a may be determined in accordance with the probability of the sound production probability pattern Pb in the sound production probability pattern memory 12b.

[0130] For example, if the probability of a certain beat position in the sounding probability pattern Pb in the sounding probability pattern memory 12b is "60%," the volume of the beat position in the performance pattern memory 12a corresponding to that beat position can be set to a volume equivalent to 60% of the maximum volume of 100%, and the musical sound of the note at that beat position can be output.In addition to this, the length of the sound to be produced, the stereo position (Pan), the tone parameters (filter, envelope, etc.), the level of sound effects, etc. can also be changed according to the probability of the sounding probability pattern Pb.

[0131] In the above embodiment, the performance patterns Pa used for automatic performance are exemplified by those in which notes are set in chronological order, but this is not limiting. For example, the performance patterns Pa used for automatic performance may be rhythm patterns such as drum patterns or bass patterns, or audio data such as human singing voices.

[0132] In the above embodiment, the playing time of the input pattern Pi is set to the length of two measures in 4 / 4 time. However, this is not necessarily limited to this, and the playing time of the input pattern Pi may be one measure, or three or more measures. Furthermore, the time signature per measure of the input pattern Pi is not limited to 4 / 4 time, and other time signatures such as 3 / 4 time or 6 / 8 time may be used as appropriate.

[0133] In the above embodiment, performance information is input from the keyboard 2. However, instead of this, an external MIDI-standard keyboard may be connected to the synthesizer 1, and performance information may be input from the keyboard. Alternatively, performance information may be input from an external MIDI device, such as an electronic musical instrument such as a sequencer or another synthesizer, or a PC running music production software such as a DAW, connected to the synthesizer 1. Furthermore, performance information may be input from MIDI data stored in the flash ROM 11 or RAM 12.

[0134] In the above embodiment, the musical tones are output from the sound source 13, DSP 14, DAC 16, amplifier 17, and speaker 18 provided in the synthesizer 1. However, instead of this, a MIDI-compliant sound source device may be connected to the synthesizer 1, and the musical tones of the synthesizer 1 may be output from this sound source device.

[0135] In the above embodiment, control program 11a is stored in flash ROM 11 of synthesizer 1 and runs on synthesizer 1. However, this is not necessarily limited to this, and control program 11a may also run on another computer, such as a PC (personal computer), mobile phone, smartphone, or tablet terminal. In this case, instead of keyboard 2 of synthesizer 1, performance information may be input from a MIDI-standard keyboard or a character input keyboard connected to a PC or the like by wire or wirelessly, or from a software keyboard displayed on a display device of the PC or the like.

[0136] The numerical values ​​given in the above embodiment are merely examples, and it is of course possible to adopt other numerical values. [Explanation of symbols]

[0137] 1. Synthesizer (automatic musical instrument) 2 Keyboard (input means) Part of ) 11 Flash ROM (storage section) 11a Control program (automatic performance program) 11b Input pattern table (input pattern storage means) 11f Fixed sounding probability table (sounding probability pattern storage means) Pa Playing pattern Pb pronunciation probability pattern Pi Input Pattern S4, S10 pronunciation probability pattern acquisition means, pronunciation probability pattern acquisition step S5 Part of the input method, input step S7 Input pattern selection means , input pattern selection step S9 Pronunciation probability pattern acquisition means, probability acquisition means, pronunciation probability pattern acquisition step , probability acquisition step S11, S12 Automatic performance means, automatic performance steps S30 Likelihood calculation means

Claims

1. An automatic musical performance device that automatically performs a performance pattern in which the timing of notes to be sounded is set, a sounding probability pattern acquisition means for acquiring a sounding probability pattern in which a probability of sounding a note is set for each sounding timing of the performance pattern; and automatic performance means for determining whether to sound a note at each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired by the sounding probability pattern acquisition means, and performing automatic performance, an automatic musical performance device characterized in that, when a predetermined sounding timing in the performance pattern is composed of a chord consisting of a plurality of notes, the automatic performance means determines whether to sound each note constituting the chord based on the probability of the sounding timing set in the sounding probability pattern acquired by the sounding probability pattern acquisition means, and performs automatic performance according to the performance pattern.

2. An automatic performance device that automatically performs a performance pattern in which the timing of notes to be sounded is set, an input means for inputting performance information; an input pattern storage means for storing a plurality of input patterns; an input pattern selection means for selecting a maximum likelihood estimated input pattern from among a plurality of input patterns stored in the input pattern storage means, based on performance information input by the input means; a probability acquisition means for acquiring a probability corresponding to the input pattern selected by the input pattern selection means; a sounding probability pattern acquisition means for acquiring a sounding probability pattern in which the probability acquired by the probability acquisition means is set as the probability of sounding a note for each sounding timing of the performance pattern; and automatic performance means for determining whether to sound a note for each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired by the sounding probability pattern acquisition means, and performing automatic performance.

3. An automatic performance device that automatically performs a performance pattern in which the timing of notes to be sounded is set, an input means for inputting performance information; an input pattern storage means for storing a plurality of input patterns; an input pattern selection means for selecting a maximum likelihood estimated input pattern from among a plurality of input patterns stored in the input pattern storage means, based on performance information input by the input means; a sounding probability pattern storage means for storing a plurality of sounding probability patterns in which the probability of sounding a note is set for each sounding timing of the performance pattern; a pronunciation probability pattern acquisition means for acquiring a pronunciation probability pattern corresponding to the input pattern selected by the input pattern selection means from among the pronunciation probability patterns stored in the pronunciation probability pattern storage means; and automatic performance means for determining whether to sound a note for each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired by the sounding probability pattern acquisition means, and performing automatic performance.

4. 4. The automatic musical instrument according to claim 2, wherein when a predetermined sounding timing in the performance pattern is composed of a chord consisting of a plurality of notes, the automatic musical performance means determines whether to sound each note constituting the chord based on the probability of the sounding timing set in the sounding probability pattern acquired by the sounding probability pattern acquisition means, and performs automatic musical performance according to the performance pattern.

5. an input means for inputting performance information; an input pattern storage means for storing a plurality of input patterns; an input pattern selection means for selecting a maximum likelihood estimated input pattern from among a plurality of input patterns stored in the input pattern storage means, based on performance information input by the input means; a probability acquisition means for acquiring a probability corresponding to the input pattern selected by the input pattern selection means, 2. The automatic musical instrument according to claim 1, wherein the sounding probability pattern acquisition means acquires a sounding probability pattern in which the probability acquired by the probability acquisition means is set as the probability of sounding a note at each sounding timing of the performance pattern.

6. 6. The automatic musical instrument according to claim 2, wherein the probability acquisition means acquires a larger probability value the shorter the sounding timing between notes in the input pattern selected by the input pattern selection means.

7. a pronunciation probability pattern storage means for storing a plurality of the pronunciation probability patterns; an input means for inputting performance information; an input pattern storage means for storing a plurality of input patterns; an input pattern selection means for selecting a maximum likelihood estimated input pattern from among a plurality of input patterns stored in said input pattern storage means, based on performance information input by said input means; 2. The automatic musical instrument according to claim 1, wherein the sounding probability pattern acquisition means acquires a sounding probability pattern corresponding to the input pattern selected by the input pattern selection means from the sounding probability patterns stored in the sounding probability pattern storage means.

8. likelihood calculation means for calculating likelihoods of all or some of the notes constituting the plurality of input patterns stored in the input pattern storage means based on performance information input to the input means; 8. An automatic musical instrument according to claim 2, 3 or 5 to 7, wherein said input pattern selection means performs maximum likelihood estimation of one input pattern from among a plurality of input patterns stored in said input pattern storage means, based on the likelihood calculated by said likelihood calculation means.

9. 9. The automatic musical instrument according to claim 8, wherein said likelihood calculation means calculates likelihoods for all or some of the notes constituting the plurality of input patterns stored in said input pattern storage means, based on the pitch of the performance information input to said input means.

10. 10. The automatic musical instrument according to claim 8, wherein said likelihood calculation means calculates likelihoods for all or some of the notes constituting the plurality of input patterns stored in said input pattern storage means, based on beat positions of the performance information input to said input means.

11. 11. The automatic musical instrument according to claim 8, wherein said likelihood calculation means calculates the likelihood of a note being played next to another note for all or some of the notes constituting a plurality of input patterns stored in said input pattern storage means, based on an input interval between the previous performance information input to said input means and the current performance information.

12. 12. An automatic musical instrument according to claim 2, 5, or 6 to 11, wherein said input pattern selection means executes a selection process of said input pattern when performance information is input to said input means.

13. 13. The automatic musical instrument according to claim 1, wherein said sounding probability pattern acquisition means acquires a sounding probability pattern created by a user.

14. An automatic performance program that causes a computer to perform automatic performance, a sounding probability pattern acquisition step of acquiring a sounding probability pattern in which the probability of sounding a note is set for each sounding timing of a performance pattern in which the sounding timing of a note to be sounded is set; an automatic performance step of determining whether to sound a note at each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired in the sounding probability pattern acquisition step, and performing an automatic performance; the automatic performance step, when a predetermined sounding timing in the performance pattern is composed of a chord consisting of a plurality of notes, determines whether to sound each note constituting the chord based on the probability of the sounding timing set in the sounding probability pattern acquisition step, and performs an automatic performance according to the performance pattern.

15. An automatic performance program for causing a computer having a memory unit to perform automatic performance, comprising: operating the storage unit as an input pattern storage means for storing a plurality of input patterns; an input step for inputting performance information; an input pattern selection step of selecting an input pattern that is most likely estimated from among a plurality of input patterns stored in the input pattern storage means based on the performance information input in the input step; a probability acquisition step of acquiring a probability corresponding to the input pattern selected in the input pattern selection step; a sounding probability pattern acquisition step for acquiring a sounding probability pattern in which the probability acquired in the probability acquisition step is set as the probability of sounding a note for each sounding timing of a performance pattern in which the sounding timing of a note to be sounded is set; an automatic performance step of determining whether to sound a note for each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired in the sounding probability pattern acquisition step, and performing an automatic performance.

16. An automatic performance program for causing a computer having a memory unit to perform automatic performance, comprising: the storage unit is operated as an input pattern storage means for storing a plurality of input patterns, and as a sounding probability pattern storage means for storing a plurality of sounding probability patterns in which the probability of sounding a note is set for each sounding timing of a performance pattern in which the sounding timing of a note to be sounded is set, an input step for inputting performance information; an input pattern selection step of selecting an input pattern that is most likely estimated from among a plurality of input patterns stored in the input pattern storage means based on the performance information input in the input step; a pronunciation probability pattern acquisition step of acquiring a pronunciation probability pattern corresponding to the input pattern selected in the input pattern selection step from among the pronunciation probability patterns stored in the pronunciation probability pattern storage means; an automatic performance step of determining whether to sound a note for each sounding timing of the performance pattern based on the probability for each sounding timing set in the sounding probability pattern acquired in the sounding probability pattern acquisition step, and performing an automatic performance.

Citation Information

Patent Citations

  • Rhythm machine

    JP1989238695A

  • Automatic key determining device

    JP1990029788A

  • Rhythm generating device

    JP1990113296A

  • Device and method for automatic accompaniment of electronic musical instrument

    JP1997319372A

  • Music playing data processor and program for realizing music playing data processing method

    JP2004219550A