JP6492629B2 - SINGLE GENERATION DEVICE, ELECTRONIC INSTRUMENT, METHOD, AND PROGRAM - Google Patents
SINGLE GENERATION DEVICE, ELECTRONIC INSTRUMENT, METHOD, AND PROGRAM Download PDFInfo
- Publication number
- JP6492629B2 JP6492629B2 JP2014259483A JP2014259483A JP6492629B2 JP 6492629 B2 JP6492629 B2 JP 6492629B2 JP 2014259483 A JP2014259483 A JP 2014259483A JP 2014259483 A JP2014259483 A JP 2014259483A JP 6492629 B2 JP6492629 B2 JP 6492629B2
- Authority
- JP
- Japan
- Prior art keywords
- state
- lyrics
- pitch
- singing
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
本発明は、演奏操作にて歌詞を指定して歌唱生成を行う歌唱生成装置、電子楽器、方法、およびプログラムに関する。 The present invention relates to a singing generation apparatus, an electronic musical instrument, a method, and a program for generating a singing by designating lyrics in a performance operation.
キーボードや操作パネル、鍵盤の鍵等の演奏操作子から楽曲の歌詞を予め入力し、その後モードを切り換えて再び演奏操作子の操作等で決定される音高に基づいて、予め記憶されている人の歌声の波形データの中から予め入力された歌詞に対応する波形データを読み出して歌唱生成を行うようにした電子楽器が知られている(例えば特開平6−324677号公報に記載の技術)。このような電子楽器により、人の歌声を発声させることが可能となる。 A person stored in advance based on the pitches determined in advance by operating the performance operator, etc. after inputting the lyrics of the music from the performance operator such as the keyboard, operation panel, keyboard keys, etc. There is known an electronic musical instrument in which waveform data corresponding to lyrics inputted in advance is read out from waveform data of a singing voice and a song is generated (for example, a technique described in JP-A-6-324677). Such an electronic musical instrument makes it possible to utter a human singing voice.
また、片方の手で発音内容(歌詞)を、もう片方の手で発音音高を入力することにより、歌唱生成を行う電子楽器も知られている。 There is also known an electronic musical instrument that generates a song by inputting pronunciation content (lyrics) with one hand and a pronunciation pitch with the other hand.
しかし、モードを切り換えて歌詞入力と音高入力を行う従来技術では、リアルタイムの歌詞入力を行うことができないという課題があった。 However, the conventional technique for inputting lyrics and inputting pitches by switching modes has a problem that it is impossible to input lyrics in real time.
また、両手を使って歌詞入力と音高入力を行う従来技術では、リアルタイムの歌唱入力は可能であるが、歌唱操作のみで両手が塞がってしまうため、フェーダーなど、手で操作する演奏操作子を歌唱中に操作することが困難であるという課題があった。 Also, with the conventional technology that uses both hands to input lyrics and pitches, real-time singing input is possible, but both hands are blocked only by singing operations, so a performance operator that is operated by hand, such as a fader, is provided. There was a problem that it was difficult to operate during singing.
そこで、本発明は、リアルタイムの歌唱入力を片手で行えるようにすることを目的とする。 Therefore, an object of the present invention is to enable real-time singing input with one hand.
態様の一例では、互いに異なる音高が割り当てられた複数の演奏操作子の操作状態を特定する特定部と、前記操作状態に基づいて、第1及び第2のいずれかの状態に移行する状態移行部と、前記第1の状態に移行した場合に、前記操作状態に基づいて歌詞を決定する歌詞決定部と、前記第2の状態に移行した場合に、前記操作状態に基づいて音高を決定する音高決定部と、前記決定した歌詞を前記決定した音高で発音させる発音データを生成する発音生成部と、を備える。 In an example of the aspect, a specifying unit that specifies an operation state of a plurality of performance operators to which different pitches are assigned , and a state transition that shifts to one of the first and second states based on the operation state And a lyrics determination unit that determines lyrics based on the operation state when the state is shifted to the first state , and a pitch is determined based on the operation state when the state is shifted to the second state. And a sound generation unit for generating sound generation data for generating the determined lyrics at the determined pitch .
本発明によれば、リアルタイムの歌唱入力を片手で行うことが可能となる。 According to the present invention, real-time singing input can be performed with one hand.
以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。まず、本発明の第1の実施形態を説明する。第1の実施形態における歌唱生成処理では、演奏者は、演奏操作子としての鍵盤上の複数(2つ以上)の鍵を、Nミリ秒未満(「同時」と見なせる短い時間内で、例えば4ミリ秒未満)のうちに押鍵する。この鍵の組み合わせにより、歌詞(ここでは、発音内容の単位、たとえば「あ」「か」などのかな一文字や、発音記号などを指す)が指定され、記憶される。この動作を、歌詞決定処理と呼ぶ。その後、演奏者は、複数鍵の押鍵からNミリ秒以上経ってから、単一の鍵を押鍵する。単一鍵の押鍵からNミリ秒経っても他の押鍵が無い場合は、その単一鍵に割り当てられた音高で歌詞の発音が指示される。この動作を、歌唱生成処理と呼ぶ。単一鍵の押鍵からNミリ秒未満の内に他の押鍵があった場合は、これは複数鍵の同時押鍵の扱いになるため、歌詞決定処理の制御となり、記憶されている歌詞が上書きされる。以上の鍵盤の鍵の制御処理を鍵盤処理と呼ぶ。 Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the drawings. First, a first embodiment of the present invention will be described. In the song generation process in the first embodiment, the performer performs a plurality of (two or more) keys on the keyboard as performance operators within a short time that can be regarded as less than N milliseconds ("simultaneous"), for example, 4 Press the key in less than a millisecond). By this key combination, lyrics (here, a unit of pronunciation content, for example, a single character such as “A” or “KA” or a phonetic symbol) are designated and stored. This operation is called lyrics determination processing. Thereafter, the performer presses a single key after N milliseconds or more have elapsed since the key was pressed. If no other key is pressed after N milliseconds have elapsed since the key was pressed, the pronunciation of the lyrics is instructed with the pitch assigned to the key. This operation is called song generation processing. If there is another key press within less than N milliseconds after pressing a single key, this will be handled as a simultaneous key press of multiple keys, so the lyrics determination process will be controlled and the stored lyrics Will be overwritten. The above key control process of the keyboard is called a keyboard process.
図1は、歌唱生成装置の第1の実施形態(後述する第2、第3の実施形態も同じ)のハードウェア構成例を示す図である。図1に示される歌唱合成装置100は、ROM(リードオンリーメモリ:読出し専用メモリ)102、RAM(ランダムアクセスメモリ)103、および鍵盤104が、CPU(中央演算処理装置)101に接続される構成を備える。また、CPU101には、歌唱合成ユニット105が接続され、歌唱合成ユニット105には発音ユニット106が接続される。同図に示される構成は上記歌唱合成装置100を実現できるコンピュータの一例であり、そのようなコンピュータはこの構成に限定されるものではない。 FIG. 1 is a diagram illustrating a hardware configuration example of a first embodiment (the same applies to second and third embodiments described later) of the song generation device. The singing voice synthesizing apparatus 100 shown in FIG. 1 has a configuration in which a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, and a keyboard 104 are connected to a CPU (Central Processing Unit) 101. Prepare. In addition, a singing synthesis unit 105 is connected to the CPU 101, and a sound generation unit 106 is connected to the singing synthesis unit 105. The configuration shown in the figure is an example of a computer that can realize the singing voice synthesizing apparatus 100, and such a computer is not limited to this configuration.
ROM302は、コンピュータを制御する歌唱合成プログラムを含む各プログラムを記憶するメモリである。RAM303は、各プログラムの実行時に、ROM302に記憶されているプログラム又はデータを一時的に格納するメモリである。CPU101は、各プログラムを、ROM302からRAM303に読み出して実行することにより、当該コンピュータ全体の制御を行う。 The ROM 302 is a memory that stores programs including a song synthesis program for controlling the computer. A RAM 303 is a memory that temporarily stores a program or data stored in the ROM 302 when each program is executed. The CPU 101 controls the entire computer by reading each program from the ROM 302 to the RAM 303 and executing it.
鍵盤104は、複数の鍵を備え、演奏者がピアノ式の鍵盤演奏をできるようにする演奏入力装置である。 The keyboard 104 is a performance input device that includes a plurality of keys and enables a performer to perform a piano-type keyboard performance.
歌唱合成ユニット105は、CPU101から指示された歌詞に対応する波形データを内部の波形メモリから選択し、その歌詞の波形データをCPU101から指示された音高に対応する読出し速度(サンプリング間隔)で読み出し、歌唱データを合成し出力する。 The singing synthesis unit 105 selects waveform data corresponding to the lyrics instructed from the CPU 101 from the internal waveform memory, and reads out the waveform data of the lyrics at a reading speed (sampling interval) corresponding to the pitch instructed from the CPU 101. Synthesize and output singing data.
発音ユニット106は、歌唱合成ユニット105が出力するデジタルの歌唱データをアナログの音響信号に変換し、特には図示しないが、内部の増幅器で増幅し、スピーカから放音する。 The sound generation unit 106 converts the digital song data output from the song synthesis unit 105 into an analog sound signal, and amplifies it with an internal amplifier (not shown) and emits the sound from the speaker.
図2は、第1の実施形態(第2、第3、第4の実施形態でも同じ)における歌唱合成処理のメイン処理の例を示すフローチャートである。この処理は、CPU101が、ROM102に記憶されている歌唱合成処理プログラムを実行する動作である。 FIG. 2 is a flowchart showing an example of the main process of the song synthesis process in the first embodiment (the same applies to the second, third, and fourth embodiments). This process is an operation in which the CPU 101 executes a song synthesis processing program stored in the ROM 102.
CPU101はまず、RAM103の内容の初期化を行った後(ステップS201)、演奏者が特には図示しない電源スイッチを操作してステップS202で演奏が終了したと判定するまで、ステップS203の鍵盤処理を繰り返し実行する。 First, the CPU 101 initializes the contents of the RAM 103 (step S201), and then performs the keyboard process in step S203 until the performer operates a power switch (not shown) to determine that the performance is finished in step S202. Run repeatedly.
図3は、第1実施形態(第2の実施形態でも同じ)における鍵盤処理の詳細例を示すフローチャートである。 FIG. 3 is a flowchart showing a detailed example of keyboard processing in the first embodiment (the same applies to the second embodiment).
まず、CPU101は、鍵盤104をスキャンし、押鍵されている鍵の集合をRAM103上の鍵集合変数c_keysに代入する(ステップS301)。 First, the CPU 101 scans the keyboard 104 and substitutes a set of keys that are pressed into a key set variable c_keys on the RAM 103 (step S301).
次に、CPU101は、今回鍵集合変数c_keysと前回処理時の鍵集合変数の内容が保持されているRAM103の前回鍵集合変数p_keysの差集合を演算し、その結果をRAM103上の集合変数kに代入する(ステップS302)。すなわち、前回の鍵盤処理時から今回の鍵盤処理時までに新たに押鍵された分が集合変数kに代入される。 Next, the CPU 101 calculates a difference set between the current key set variable c_keys and the previous key set variable p_keys of the RAM 103 in which the contents of the key set variable at the previous processing are held, and the result is set to the set variable k on the RAM 103. Substitute (step S302). That is, the newly pressed key from the previous keyboard processing to the current keyboard processing is substituted into the set variable k.
次に、CPU101は、RAM103上の状態を示す状態変数stateの値がIDLE(準備完了状態)であるかACTIVE(押鍵動作中状態)であるかを判定する(ステップS303)。 Next, the CPU 101 determines whether the value of the state variable state indicating the state on the RAM 103 is IDLE (preparation complete state) or ACTIVE (key pressing operation in progress state) (step S303).
状態変数stateの初期値は、図2のステップS201においてIDLE状態になっているため、CPU101は、最初は処理をステップS304に進める。ここでは、CPU101は、集合変数kの元の数を判定する。 Since the initial value of the state variable state is in the IDLE state in step S201 in FIG. 2, the CPU 101 first advances the process to step S304. Here, the CPU 101 determines the original number of the set variable k.
集合変数kの元の数が0のときは前回から何も変わっていないので、CPU101は、次のステップS305をスキップし、次回の鍵盤処理のためにステップS301にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納した後に(ステップS313)、そのまま図3のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 When the original number of the set variable k is 0, nothing has changed from the previous time, so the CPU 101 skips the next step S305 and calculates the current key set variable calculated in step S301 for the next keyboard process. After the contents of c_keys are stored in the previous key set variable p_keys (step S313), the current keyboard process in step S203 of FIG. 2 shown in the flowchart of FIG.
集合変数kの元の数が1以上であれば、CPU101は、押鍵開始時の時刻を保持するRAM103上の押鍵開始時刻変数t_startに現在時刻を格納する。また、CPU101は、状態変数stateに押鍵が開始されたことを示す状態値ACTIVEを格納する。さらに、CPU101は、押鍵開始後現在までに押鍵されている鍵の情報を保持する押鍵済集合変数on_keysに、ステップS302で今回新たに押鍵された鍵の集合が格納されている集合変数kの内容を格納する(以上、ステップS205)。その後、CPU101は、次回の鍵盤処理のためにステップS301にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納した後に(ステップS313)、図3のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 If the original number of the set variable k is 1 or more, the CPU 101 stores the current time in a key press start time variable t_start on the RAM 103 that holds the time at the time of key press start. Further, the CPU 101 stores a state value ACTIVE indicating that the key depression has been started in the state variable state. Further, the CPU 101 stores a set of keys newly pressed at this time in step S302 in a key pressed set variable on_keys that holds information on keys that have been pressed up to the present after the start of key pressing. The contents of variable k are stored (step S205). Thereafter, the CPU 101 stores the contents of the current key set variable c_keys calculated in step S301 for the next keyboard process in the previous key set variable p_keys (step S313), and then is shown in the flowchart of FIG. This keyboard processing in step S203 is terminated.
図3のフローチャートで示される図2のステップS203の鍵盤処理は、例えば1ミリ秒ごとに繰り返し実行されている。この結果、次回の鍵盤処理では、状態変数stateの値判定はステップS205によりACTIVEとなっているため、CPU101は、ステップS303からステップS306に処理を進める。ステップS306では、押鍵済集合変数on_keysに、新たに押鍵された鍵の集合変数kの内容が加えられる。 The keyboard process in step S203 of FIG. 2 shown in the flowchart of FIG. 3 is repeatedly executed, for example, every 1 millisecond. As a result, in the next keyboard process, the value determination of the state variable state is ACTIVE in step S205, and thus the CPU 101 advances the process from step S303 to step S306. In step S306, the contents of the newly pressed key set variable k are added to the key pressed set variable on_keys.
続いて、CPU101は、現在時刻から押鍵開始時刻変数t_startの値を減算し、その結果が前述したNミリ秒以上であるかNミリ秒未満であるかを判定する(ステップS307)。 Subsequently, the CPU 101 subtracts the value of the key press start time variable t_start from the current time, and determines whether the result is equal to or longer than the above-described N milliseconds or less than N milliseconds (step S307).
ステップS307の判定がNミリ秒未満を示していれば、同時押鍵とみなされる。この場合、次回の鍵盤処理のためにステップS301にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納した後に(ステップS313)、そのまま図3のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。押鍵開始時刻変数t_startが示す押鍵開始時刻から現在時刻までがNミリ秒未満であればこの処理が繰り返し実行され、押鍵済集合変数on_keysに押鍵開始後現在までに押鍵されている鍵の情報が蓄積されてゆく。 If the determination in step S307 indicates less than N milliseconds, it is regarded as simultaneous key pressing. In this case, after the contents of the current key set variable c_keys calculated in step S301 for the next keyboard process are stored in the previous key set variable p_keys (step S313), they are directly shown in the flowchart of FIG. The current keyboard process in step S203 is terminated. If the time from the key press start time indicated by the key press start time variable t_start to the current time is less than N milliseconds, this process is repeatedly executed, and the key is pressed by the key press completed set variable on_keys until the present after the key press is started. Key information is accumulated.
やがて、押鍵開始時刻から時間が経過して、ステップS307の判定がNミリ秒以上を示すと、CPU101は、ステップS307からS308に処理を進める。ステップS308において、CPU101は、押鍵済集合変数on_keysの元の数が1であるか2以上であるかを判定する。 Eventually, when time elapses from the key pressing start time and the determination in step S307 indicates N milliseconds or more, the CPU 101 advances the process from step S307 to S308. In step S308, the CPU 101 determines whether the original number of the pressed key set variable on_keys is 1 or 2 or more.
押鍵済集合変数on_keysの元の数が2以上であれば、同時に押鍵された複数の鍵によって歌詞を決定する歌詞決定処理が実行される(ステップS309)。この処理の後、CPU101は、状態変数stateの内容をIDLE状態に戻し、押鍵済集合変数on_keysの内容を空集合φとする(ステップS312)。そして、CPU101は、次回の鍵盤処理のためにステップS301にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納した後に(ステップS313)、図3のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 If the original number of the pressed key set variable on_keys is 2 or more, lyrics determination processing for determining lyrics by a plurality of keys pressed simultaneously is executed (step S309). After this processing, the CPU 101 returns the contents of the state variable state to the IDLE state, and sets the contents of the keyed set variable on_keys to an empty set φ (step S312). Then, the CPU 101 stores the contents of the current key set variable c_keys calculated in step S301 for the next keyboard processing in the previous key set variable p_keys (step S313), and then is shown in the flowchart of FIG. This keyboard processing in step S203 is terminated.
以上のようにして、演奏者は、複数鍵の押鍵により歌詞決定処理を実行させた後、今度は前述したように単数鍵の押鍵での音高指定による歌唱生成処理を実行させる。この場合には、図3の鍵処理において、まず単数鍵が押鍵された状態でステップS304の判定がYESとなり、ステップS305により押鍵開始時刻変数t_startに現在時刻が格納され、状態変数stateの値が押鍵を示す値ACTIVEにされ、押鍵済集合変数on_keysに今回押鍵された鍵の内容を示す集合変数kの内容が格納される。その後、鍵盤処理が何回か実行される間ステップ307の判定がNミリ秒未満となり、やがてNミリ秒以上となってステップS307からステップS308に移行し、単数鍵の押鍵であるためステップS308の判定が「1」となる。 As described above, the performer performs the lyric determination process by pressing a plurality of keys, and then executes the song generation process by designating the pitch by pressing a single key as described above. In this case, in the key processing of FIG. 3, the determination in step S304 is YES when the single key is pressed first, the current time is stored in the key pressing start time variable t_start in step S305, and the state variable state is set. The value is set to the value ACTIVE indicating the key press, and the contents of the set variable k indicating the contents of the key pressed this time are stored in the key pressed set variable on_keys. After that, while the keyboard process is executed several times, the determination in step 307 is less than N milliseconds, and eventually it becomes N milliseconds or more, and the process proceeds from step S307 to step S308. Is “1”.
この場合、CPU101は、押鍵済集合変数on_keysの内容を再生鍵集合変数play_keysに格納し(ステップS310)、歌唱合成ユニット105に対して歌唱音の発音を指示する(ステップS311)。これにより、歌唱合成ユニット105では、新たに押鍵された単数鍵による音高で、ステップS309で決定された歌詞に対応する歌唱データが生成され発音される。歌唱生成処理の後、単数鍵による押鍵状態をクリアするために、状態を示す変数stateに待ち状態を示すIDLE状態に戻し、押鍵済集合変数on_keysの内容を空集合φとする(ステップS312)。そして、CPU101は、次回の鍵盤処理のためにステップS301にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納した後に(ステップS313)、図3のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 In this case, the CPU 101 stores the content of the key pressed set variable on_keys in the reproduction key set variable play_keys (step S310), and instructs the singing synthesis unit 105 to generate a singing sound (step S311). Thereby, in the singing voice synthesis unit 105, singing data corresponding to the lyrics determined in step S309 is generated and pronounced with the pitch of the newly pressed single key. After the singing generation process, in order to clear the key pressing state by a single key, the variable state indicating the state is returned to the IDLE state indicating the waiting state, and the content of the key pressed set variable on_keys is set to the empty set φ (step S312). ). Then, the CPU 101 stores the contents of the current key set variable c_keys calculated in step S301 for the next keyboard processing in the previous key set variable p_keys (step S313), and then is shown in the flowchart of FIG. This keyboard processing in step S203 is terminated.
図4は、第1の実施形態(第3の実施形態でも同じ)における図3のステップS309の歌詞決定処理の詳細例を示すフローチャートである。ここでは、CPU101は、押鍵済集合変数on_keysの内容に基づいて、ROM102に記憶されている鍵盤・歌詞変換テーブル上の歌詞データを引き(参照し)、RAM103上の歌詞変数lylicに格納する(ステップS401)。鍵盤・歌詞変換テーブルは、例えば2鍵ずつの鍵の組合せごとに、その組合せによって「あ」「い」「う」等のどの歌詞が選択されるかを登録したデータである。 FIG. 4 is a flowchart showing a detailed example of the lyrics determination process in step S309 of FIG. 3 in the first embodiment (the same applies to the third embodiment). Here, the CPU 101 draws (refers to) the lyric data on the keyboard / lyric conversion table stored in the ROM 102 based on the contents of the key pressed aggregate variable on_keys, and stores it in the lyric variable lylic on the RAM 103 ( Step S401). The keyboard / lyric conversion table is data in which, for example, for every two key combinations, which lyrics such as “A”, “I”, “U” are selected by the combination.
図5は、第1の実施形態(第3の実施形態でも同じ)における図3のステップS311の歌唱生成処理の詳細例を示すフローチャートである。ここでは、CPU101は、図4のステップS401で設定された歌詞変数lylicの内容と、図3のステップS310で設定された再生鍵集合変数play_keysの内容とに基づいて、歌唱合成ユニット105に対して歌唱音の発音を指示し、歌唱合成ユニット105においては、歌唱データの出力波形Wを生成する(ステップS501)。
具体的には、CPU101は、歌詞変数lylicが示す歌詞の歌唱データの生成と、再生鍵集合変数play_keysが示す音高での生成を指示する発音指示データを、図1の歌唱合成ユニット105に供給する。
FIG. 5 is a flowchart showing a detailed example of the song generation process in step S311 of FIG. 3 in the first embodiment (the same applies to the third embodiment). Here, the CPU 101 determines the singing composition unit 105 based on the contents of the lyrics variable lylic set in step S401 of FIG. 4 and the contents of the reproduction key set variable play_keys set in step S310 of FIG. The singing sound is instructed to be generated, and the singing synthesis unit 105 generates an output waveform W of singing data (step S501).
Specifically, the CPU 101 supplies the singing synthesis unit 105 in FIG. 1 with pronunciation instruction data instructing generation of singing data of the lyrics indicated by the lyric variable lylic and generation at the pitch indicated by the reproduction key set variable play_keys. To do.
その後、CPU101は、歌唱データの出力波形Wの発音を、歌唱合成ユニット105に対して指示する。この結果、歌唱合成ユニット105は、内部の波形データメモリに記憶している複数の歌唱データのうち、CPU101から指示された歌詞の歌唱データを選択し、その歌唱データを、CPU101から指示された音高に対応する読出し速度で読み出して、必要に応じて波形サンプルデータの補間処理を実行し、最終的な出力波形Wを生成し、それを図1の発音ユニット106に出力する。これにより、出力波形Wの歌唱音声が放音される。 Thereafter, the CPU 101 instructs the singing synthesis unit 105 to pronounce the output waveform W of the singing data. As a result, the singing synthesis unit 105 selects the singing data of the lyrics instructed from the CPU 101 among the plurality of singing data stored in the internal waveform data memory, and the singing data is selected from the sound instructed by the CPU 101. Reading is performed at a reading speed corresponding to high, and interpolation processing of waveform sample data is executed as necessary to generate a final output waveform W, which is output to the sound generation unit 106 of FIG. Thereby, the singing voice of the output waveform W is emitted.
以上説明した第1の実施形態において、歌詞決定処理における鍵の組合せパターンについてであるが、歌詞決定処理のための歌詞指定の押鍵の後、歌唱生成処理のための押鍵を素早く行うために、歌詞指定のための鍵の組合せパターンと、発音したい音高の鍵は近い距離であることが好ましい。その一例として、歌詞指定の鍵の組合せパターンは図1の鍵盤104の1オクターブ内に収まるようにし、鍵盤104のどのオクターブにおいても同じ操作で同じ歌詞が指定できるようにすることが望ましい。 In the first embodiment described above, the key combination pattern in the lyric determination process is described in order to quickly perform the key press for the song generation process after the lyric designation key press for the lyric determination process. It is preferable that the key combination pattern for designating lyrics and the key of the pitch to be pronounced are close to each other. As an example, it is desirable that the key combination pattern for designating lyrics be within one octave of the keyboard 104 in FIG. 1 so that the same lyrics can be designated by the same operation in any octave of the keyboard 104.
上記第1の実施形態において、単一鍵の押鍵からNミリ秒以上経ってから他の鍵の押鍵があった場合については、例えば以下のような制御処理が採用されてよい。
・単一鍵の押鍵からNミリ秒以上経ってから、その単一鍵が離鍵され他の単一鍵の押鍵があった場合は、その新規の押鍵の音で、歌詞を発音する(例えば、「かーかー」と発音する)。
・単一鍵の押鍵からNミリ秒以上経ってから、その単一鍵が離鍵されずに他の単一鍵の押鍵があった場合は、その新規の押鍵の音で、母音を繋げる形で歌唱する(例えば、「かーあー」と発音する)。
上記例は、逆でも良い。また、基本的に鍵盤操作のみでは常に現在の歌詞で発音しなおすようにし、サステインペダルを踏んでいる時のみ母音をつなげる、という制御動作が実行されてもよい。
In the first embodiment, for example, the following control process may be adopted when a key is pressed after another key has been pressed for at least N milliseconds.
・ When a single key is released and another single key is pressed after more than N milliseconds have passed since the key was pressed, the lyrics are pronounced with the new key press. (For example, pronounce “ka-ka”).
・ If a single key is not released and another single key is pressed after more than N milliseconds have elapsed since the single key was pressed, the vowel sound is the new key pressed. Sing in a form that connects the two (for example, pronounced “ka-ah”).
The above example may be reversed. In addition, a control operation may be executed in which the lyric is replayed with the current lyrics basically only by keyboard operation, and the vowels are connected only when the sustain pedal is depressed.
なお、押鍵が歌詞指定か歌唱生成指定かの区別は、あるタイミングでの同時押鍵数が単一か複数かで区別可能である。よって、例えば、歌詞指定のために2つの鍵を同時押鍵した後、離鍵せずに別の鍵を押鍵した場合、上記ではその押鍵は発音と見なされるが、その押鍵も歌詞指定の一部と見なし、3つの鍵の組み合わせによる歌詞に記憶されている歌詞を上書きするという制御動作が実行されてもよい。また、発音後に離鍵せずに別の鍵を押鍵した場合、上記では先の発音から後の発音に独唱として遷移するように発音するが、先の発音を残したまま新たな発音をするという制御動作が実行されてもよい。 It should be noted that whether the key depression is designated as lyrics designation or song generation designation can be distinguished according to whether the number of simultaneous key depressions at a certain timing is single or plural. So, for example, if you press two keys simultaneously to specify the lyrics and then press another key without releasing the key, the key press is regarded as a pronunciation in the above. A control operation may be executed in which the lyrics stored as the lyrics by the combination of the three keys are overwritten as a part of the designation. In addition, when another key is pressed without releasing the key after sounding, the above sound is pronounced so as to make a transition from the previous sounding to the later sounding, but a new sounding is made while leaving the previous sounding. The control operation may be executed.
離鍵動作については、第1の実施形態では特に言及していないが、押鍵後所定時間で自然にリリースさせるか、あるいは演奏者の離鍵動作に対して所定の制御動作を実行させてもよい。 The key release operation is not particularly mentioned in the first embodiment, but may be released naturally at a predetermined time after the key is pressed, or a predetermined control operation may be executed for the player's key release operation. Good.
次に、本発明の第2の実施形態について説明する。図6は、第2の実施形態における歌詞決定処理の詳細例を示すフローチャートである。第2の実施形態では、RAM103上に歌詞のFIFO(ファーストインファーストアウト:先入れ先出し)方式の歌詞キュー変数lylic_queueを持っておく。そして、演奏者が複数鍵の同時押鍵を連続して実行するごとに、CPU101は、第1の実施形態と同様の図3のフローチャートで例示される鍵盤処理におけるステップS309の歌詞決定処理を繰り返し実行し、この処理において、図6のステップS601に示されるように、各押鍵に対応する押鍵済集合変数on_keysの内容でROM102内の鍵盤・歌詞変換テーブルを参照して決定される歌詞データを、第1の実施形態で示したRAM103上の歌詞変数lylicに上書きすることはせずに、歌詞キュー変数lylic_queueに積んでゆく。 Next, a second embodiment of the present invention will be described. FIG. 6 is a flowchart showing a detailed example of the lyrics determination process in the second embodiment. In the second embodiment, the RAM 103 has a lyrics cue variable lylic_queue of a lyrics FIFO (first-in first-out) method. Then, each time the performer continuously executes simultaneous key pressing of a plurality of keys, the CPU 101 repeats the lyrics determination process in step S309 in the keyboard process illustrated by the flowchart of FIG. 3 as in the first embodiment. In this process, as shown in step S601 of FIG. 6, the lyrics data determined by referring to the keyboard / lyric conversion table in the ROM 102 with the content of the key pressed set variable on_keys corresponding to each key pressed. Are overwritten on the lyrics cue variable lylic_queue without overwriting the lyric variable lylic on the RAM 103 shown in the first embodiment.
図7は、第2の実施形態における歌唱生成処理の詳細例を示すフローチャートである。上述の複数鍵の同時押鍵の連続処理の後、今度は演奏者が単数鍵の押鍵を連続して実行するごとに、CPU101は、図3の鍵盤処理におけるステップS311の歌唱生成処理を繰り返し実行する。この処理において、CPU101は、歌詞キュー変数lylic_queueに積まれている先頭の歌詞データをpopし(取り出して先頭を取り去り)、それに対応する歌唱データを歌詞変数lylicに代入する(ステップS701)。その後は、第1の実施形態における図5のステップS501およびS502と同様の、ステップS702およびS703の処理を実行し、歌唱データの出力波形Wを生成して発音する。演奏者が単数鍵の押鍵を行うごとに、図7のフローチャートで例示される歌唱生成処理が実行され、歌詞キュー変数lylic_queue中の歌唱データが1つずつpopされてゆく。このようにして、単数鍵による音高が指定されるごとに、最初に一括して指定された各歌詞に対応する各歌唱データを順次生成し発音させることができる。 FIG. 7 is a flowchart illustrating a detailed example of the song generation process in the second embodiment. After the above-described continuous process of simultaneously pressing a plurality of keys, the CPU 101 repeats the song generation process of step S311 in the keyboard process of FIG. 3 each time the performer continuously executes the pressing of a single key. Run. In this process, the CPU 101 pops (takes out and removes the head) the top lyric data stored in the lyric queue variable lylic_queue, and substitutes the corresponding song data into the lyric variable lylic (step S701). After that, the processing of steps S702 and S703 similar to steps S501 and S502 of FIG. 5 in the first embodiment is executed, and the output waveform W of the song data is generated and pronounced. Each time the performer presses a single key, the song generation process illustrated in the flowchart of FIG. 7 is executed, and the song data in the lyrics cue variable lylic_queue is popped one by one. In this way, each time a pitch by a single key is designated, each song data corresponding to each lyrics designated in a lump can be generated and pronounced sequentially.
なお、歌詞キュー変数lylic_queueが空の場合は、発音しない、最後の歌詞で発音する、最後の歌詞の母音で発音する、というような制御動作を実行してよい。また、歌詞キュー変数lylic_queueがあふれる場合は、キューの先頭の歌詞データを捨て最後に追加、キューの最後の歌詞データを上書き、というような制御動作を実行してよい。第1の実施形態は、第2の実施形態において、歌詞キュー変数lylic_queueの最大長が1である場合に相当する。 When the lyrics cue variable “lylic_queue” is empty, control operations such as not sounding, sounding with the last lyrics, and sounding with the vowels of the last lyrics may be executed. When the lyrics cue variable lylic_queue overflows, a control operation such as discarding the top lyric data of the cue and adding it to the end and overwriting the last lyric data of the cue may be executed. The first embodiment corresponds to the case where the maximum length of the lyrics cue variable lylic_queue is 1 in the second embodiment.
次に、本発明の第3の実施形態について説明する。第3の実施形態は、前述した第1の実施形態に対して、歌詞決定処理と歌唱生成処理が必ず交互に実行されるようにしたものである。第3の実施形態では、複数鍵による音高指定が可能となるため、歌唱は独唱に限らず、合唱演奏が可能になる。 Next, a third embodiment of the present invention will be described. In the third embodiment, the lyrics determination process and the song generation process are always executed alternately with respect to the first embodiment described above. In the third embodiment, pitch specification with a plurality of keys is possible, so that the singing is not limited to single singing, and choral performance is possible.
図8は、第3の実施形態における図2のステップS203の鍵盤処理の詳細例を示すフローチャートである。各集合変数については、図3で前述した第1の実施形態の場合と同様である。 FIG. 8 is a flowchart showing a detailed example of the keyboard process in step S203 of FIG. 2 in the third embodiment. Each set variable is the same as in the case of the first embodiment described above with reference to FIG.
まず、CPU101は、鍵盤104をスキャンし、押鍵されている鍵の集合をRAM103上の鍵集合変数c_keysに代入する(ステップS801)。 First, the CPU 101 scans the keyboard 104 and substitutes a set of keys that are pressed into a key set variable c_keys on the RAM 103 (step S801).
次に、CPU101は、前回鍵集合変数p_keysの内容が空集合φではなく、かつ今回鍵集合変数c_keysの内容が空集合φであるか否かを判定する(ステップS802)。ステップ802の判定が真(以下「TRUE」と記載)である場合は、前回までの押鍵の全てが離鍵された状態を示し、偽(以下「FALSE」と記載)である場合、今回いずれかの鍵が押鍵されている状態を示している。 Next, the CPU 101 determines whether or not the content of the previous key set variable p_keys is not the empty set φ and the content of the current key set variable c_keys is the empty set φ (step S802). If the determination in step 802 is true (hereinafter referred to as “TRUE”), it indicates a state where all of the previous key presses have been released, and if it is false (hereinafter referred to as “FALSE”) This shows a state where the key is pressed.
ステップS802の判定がFALSEの場合、CPU101は次に、前回鍵集合変数p_keysの内容と今回鍵集合変数c_keysの内容が異なっているか否かを判定する(ステップS803)。 If the determination in step S802 is FALSE, the CPU 101 next determines whether the content of the previous key set variable p_keys is different from the content of the current key set variable c_keys (step S803).
前回鍵集合変数p_keysの内容と今回鍵集合変数c_keysの内容が同じ(ステップS803の判定がFALSE)である場合には、CPU101は、次回の鍵盤処理のためにステップS801にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納した後に(ステップS813)、そのまま図8のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 When the content of the previous key set variable p_keys is the same as the content of the current key set variable c_keys (the determination in step S803 is FALSE), the CPU 101 calculates the current key calculated in step S801 for the next keyboard process. After the contents of the set variable c_keys are stored in the previous key set variable p_keys (step S813), the current keyboard process in step S203 of FIG. 2 shown in the flowchart of FIG.
前回鍵集合変数p_keysの内容と今回鍵集合変数c_keysの内容が異なっている(ステップS803の判定がTRUEである)場合には、CPU101は、現在の段階が歌詞決定処理を実行する段階LYLICであるか歌唱生成処理を実行する段階PLAYであるかを示すRAM103上の段階変数phaseの内容がチェックされる。 When the content of the previous key set variable p_keys is different from the content of the current key set variable c_keys (determination in step S803 is TRUE), the CPU 101 is a stage LYLIC for executing the lyrics determination process. The contents of the stage variable phase on the RAM 103 indicating whether or not the stage PLAY is to be executed is checked.
この段階変数phaseの初期値は、図2のステップS201で歌詞決定処理を実行する段階LYLICに設定されているため、CPU101は、最初はステップS804からS805に移行する。ここでは、CPU101は、押鍵済集合変数on_keysの内容に、今回鍵集合変数c_keysと前回鍵集合変数p_keysの差分集合の内容を加えた後(ステップS805)、第1の実施形態における図3のステップS309と同様の歌詞決定処理を実行する(ステップS806)。その後、CPU101は、次回の鍵盤処理のためにステップS801にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納し(ステップS813)、図8のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 Since the initial value of the stage variable phase is set to the stage LYLIC in which the lyrics determination process is executed in step S201 of FIG. 2, the CPU 101 first proceeds from step S804 to S805. Here, the CPU 101 adds the contents of the difference set between the current key set variable c_keys and the previous key set variable p_keys to the contents of the pressed key set variable on_keys (step S805), and then in FIG. 3 in the first embodiment. The same lyrics determination process as in step S309 is executed (step S806). Thereafter, the CPU 101 stores the contents of the current key set variable c_keys calculated in step S801 for the next keyboard process in the previous key set variable p_keys (step S813), and is shown in the flowchart of FIG. The current keyboard process in step S203 is terminated.
その後、演奏者が、歌詞決定処理のために押鍵していた鍵を離鍵すると、その直後に図2のステップS203の鍵盤処理が実行されるタイミングで、図8のステップS802の判定がTRUEとなる。この場合、CPU101は、段階変数phaseの内容が歌詞決定処理を実行する段階LYLICであるか歌唱生成処理を実行する段階PLAYであるかを判定する。 Thereafter, when the performer releases the key that was pressed for the lyrics determination process, immediately after that, at the timing when the keyboard process of step S203 of FIG. 2 is executed, the determination of step S802 of FIG. It becomes. In this case, the CPU 101 determines whether the content of the stage variable phase is the stage LYLIC for executing the lyrics determination process or the stage PLAY for executing the song generation process.
歌詞決定処理が実行されたときには段階変数phaseの内容はLYLICであるため(ステップS804→S805)、CPU101は、ステップS809からS810に移行する。ここでは、CPU101は、段階変数phaseの内容を歌唱発音処理を実行する段階PLAYに変更する。その後、CPU101は、次回の鍵盤処理のためにステップS801にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納し(ステップS813)、図8のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 When the lyrics determination process is executed, the content of the stage variable phase is LYLIC (steps S804 → S805), and thus the CPU 101 proceeds from step S809 to S810. Here, the CPU 101 changes the content of the stage variable phase to the stage PLAY for executing the singing pronunciation process. Thereafter, the CPU 101 stores the contents of the current key set variable c_keys calculated in step S801 for the next keyboard process in the previous key set variable p_keys (step S813), and is shown in the flowchart of FIG. The current keyboard process in step S203 is terminated.
この結果、次に演奏者が押鍵をしてから鍵盤処理が実行されるタイミングでは、ステップS802の判定がFALSE、ステップS803の判定がTRUE、ステップS804の判定がPLAYとなる。この結果、CPU101は、第1の実施形態における図3のステップS310およびS311と同様のステップS807およびS808を実行し、歌唱生成処理を実行する。その後、CPU101は、次回の鍵盤処理のためにステップS801にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納し(ステップS813)、図8のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 As a result, at the timing when the keyboard processing is executed after the player presses the key next time, the determination in step S802 is FALSE, the determination in step S803 is TRUE, and the determination in step S804 is PLAY. As a result, the CPU 101 executes steps S807 and S808 similar to steps S310 and S311 of FIG. 3 in the first embodiment, and executes a song generation process. Thereafter, the CPU 101 stores the contents of the current key set variable c_keys calculated in step S801 for the next keyboard process in the previous key set variable p_keys (step S813), and is shown in the flowchart of FIG. The current keyboard process in step S203 is terminated.
その後、演奏者が、歌唱生成処理のために押鍵していた鍵を離鍵すると、その直後に図2のステップS203の鍵盤処理が実行されるタイミングで、図8のステップS802の判定がTRUEとなり、CPU101は、ステップS809で、段階変数phaseの内容を再びチェックする。 Thereafter, when the performer releases the key that was pressed for the song generation process, the determination in step S802 in FIG. 8 is true at the timing immediately after that the keyboard process in step S203 in FIG. 2 is executed. In step S809, the CPU 101 checks the contents of the stage variable phase again.
歌唱生成処理が実行されたときには段階変数phaseの内容はPLAYであるため(ステップS804→S807)、CPU101は、ステップS809からS811に移行する。ここでは、CPU101は、段階変数phaseの内容を歌詞決定処理を実行する段階LYLICに変更する。また、CPU101は、押鍵済集合変数on_keysの内容を空集合φにする(ステップS812)。その後、CPU101は、次回の鍵盤処理のためにステップS801にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納し(ステップS813)、図8のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 Since the content of the stage variable phase is PLAY when the song generation process is executed (step S804 → S807), the CPU 101 proceeds from step S809 to S811. Here, the CPU 101 changes the content of the stage variable phase to the stage LYLIC for executing the lyrics determination process. Further, the CPU 101 sets the contents of the key pressed set variable on_keys to an empty set φ (step S812). Thereafter, the CPU 101 stores the contents of the current key set variable c_keys calculated in step S801 for the next keyboard process in the previous key set variable p_keys (step S813), and is shown in the flowchart of FIG. The current keyboard process in step S203 is terminated.
以上のようにして、第3の実施形態では、演奏者が押鍵と離鍵を繰り返すごとに、歌詞決定処理を実行する段階LYLICと歌唱生成処理を実行する段階PLAYがトグル的に交互に繰り返される。このため、演奏者は、歌唱生成処理を実行させるために押鍵を行う場合、第1の実施形態のように単数鍵の押鍵を行う必要は必ずしもなく、複数鍵での押鍵指定も行うことができ、合唱歌唱が可能となる。 As described above, in the third embodiment, each time the performer repeatedly presses and releases the key, the stage LYLIC for executing the lyrics determination process and the stage PLAY for executing the song generation process are toggled alternately. It is. For this reason, when the performer performs a key press to execute the song generation process, it is not always necessary to perform a single key press as in the first embodiment, and a key press designation with a plurality of keys is also performed. And choral singing is possible.
歌唱発音処理において同時でなく複数鍵を順に押鍵した場合は、押鍵された鍵毎に対応して発音を制御するようにしてもよい。この際も、前述のように、
・単一鍵の押鍵からNミリ秒以上経ってから、その単一鍵が離鍵されずに他の単一鍵の押鍵があった場合は、その新規の押鍵の音で、母音を繋げる形で歌唱する(例えば、「かーあー」と発音する)。
としてもよい。また、後から押鍵した分の発音は、母音だけでなく、子音を含んでもよい。なお、第3の実施形態では、歌唱生成処理を実行する段階PLAYから歌詞決定処理を実行する段階LYLICに戻るのは全て離鍵したタイミングであるが、最終的に全て離鍵する直前まで押鍵されていた鍵の組み合わせで歌詞を決定して、歌唱生成処理を実行する段階PLAYに移るようにしてもよい。
また、歌詞決定処理を実行する段階LYLICにおいて、最初の押鍵時において、そのときに同時に押した鍵の組み合わせで歌詞を決定して、その後の押鍵では歌詞は変化しないようにし、全鍵の離鍵後に、歌唱生成処理を実行する段階PLAYに移る(実際の発音は再押鍵後)ようにしてもよい。
さらに、歌詞決定処理を実行する段階LYLICで、最初に離鍵が為された場合にその離鍵した鍵の組み合わせで歌詞を決定、その後に歌唱生成処理を実行する段階PLAYに移行してもよい。
When a plurality of keys are pressed sequentially instead of simultaneously in the singing sound generation process, the sound generation may be controlled corresponding to each key pressed. Again, as mentioned above,
・ If a single key is not released and another single key is pressed after more than N milliseconds have elapsed since the single key was pressed, the vowel sound is the new key pressed. Sing in a form that connects the two (for example, pronounced “ka-ah”).
It is good. Moreover, the pronunciation of the key pressed later may include consonants as well as vowels. In the third embodiment, the timing of returning to the stage LYLIC for executing the lyrics determination process from the stage PLAY for executing the song generation process is the timing when all keys are released, but the key is pressed until immediately before all the keys are released. The lyrics may be determined by the combination of keys that have been used, and the process may be shifted to the stage PLAY where the song generation process is executed.
In the LYLIC stage of lyric determination processing, at the time of the first key press, the lyrics are determined by the combination of keys pressed at the same time, and the lyrics are not changed by the subsequent key press. After the key is released, the process may be shifted to the stage PLAY for executing the singing generation process (actual pronunciation is after the key is pressed again).
Further, in the stage LYLIC for executing the lyrics determination process, when the key is released for the first time, the lyrics may be determined by the combination of the keys released, and then the process may be shifted to the stage PLAY for executing the song generation process. .
図9は、歌唱合成装置の第4の実施形態のハードウェア構成例を示す図である。この構成が、第1、第2、第3の実施形態の図1に示される構成と異なるのは、フットペダル107が備えられている点である。第4の実施形態では、歌詞決定処理を実行する段階と歌唱生成処理を実行する段階の切替えが、フットペダル107によって行われる。例えば、フットペダル107を踏んでいる時は歌詞決定処理が実行される段階、離しているときは歌唱生成処理が実行される段階とする(トグルによる切替えでもよい)。 FIG. 9 is a diagram illustrating a hardware configuration example of the fourth embodiment of the singing voice synthesizing apparatus. This configuration differs from the configuration shown in FIG. 1 of the first, second, and third embodiments in that a foot pedal 107 is provided. In the fourth embodiment, the foot pedal 107 switches between the stage of executing the lyrics determination process and the stage of executing the song generation process. For example, when the foot pedal 107 is depressed, the lyric determination process is performed, and when the foot pedal 107 is released, the singing generation process is performed (switching by toggle may be used).
図10は、第4の実施形態における図2のステップS203の鍵盤処理の詳細例を示すフローチャートである。 FIG. 10 is a flowchart showing a detailed example of the keyboard process in step S203 of FIG. 2 in the fourth embodiment.
まず、CPU101は、鍵盤104をスキャンし、押鍵されている鍵の集合をRAM103上の鍵集合変数c_keysに代入する(ステップS1001)。 First, the CPU 101 scans the keyboard 104 and substitutes a set of keys that are pressed into a key set variable c_keys on the RAM 103 (step S1001).
次に、CPU101は、今回鍵集合変数c_keysの内容から前回鍵集合変数p_keysの内容を差し引いた結果が空集合φでるか否か、すなわち、前回鍵集合変数p_keysの内容と今回鍵集合変数c_keysの内容が同じであるか否かを判定する(ステップS1002)。 Next, the CPU 101 determines whether or not the result of subtracting the contents of the previous key set variable p_keys from the contents of the current key set variable c_keys is an empty set φ, that is, the contents of the previous key set variable p_keys and the current key set variable c_keys. It is determined whether or not the contents are the same (step S1002).
ステップS1002の判定がTRUEである場合には、CPU101は、そのまま図10のフローチャートで示される図2のステップS203の鍵盤処理を終了する。 If the determination in step S1002 is TRUE, the CPU 101 ends the keyboard process in step S203 of FIG. 2 shown in the flowchart of FIG. 10 as it is.
ステップS1002の判定がFALSEである場合には、CPU101は、図9のフットペダル107の状態を確認する(ステップS1003)。 If the determination in step S1002 is FALSE, the CPU 101 checks the state of the foot pedal 107 in FIG. 9 (step S1003).
フットペダル107が踏まれている状態である場合には、CPU101は、第3の実施形態におけるステップS805およびS806と同様のステップS1004およびS1005の処理で示される歌詞決定処理を実行する。その後、CPU101は、次回の鍵盤処理のためにステップS1001にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納し(ステップS1008)、図10のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 When the foot pedal 107 is stepped on, the CPU 101 executes the lyrics determination process indicated by the processes in steps S1004 and S1005 similar to steps S805 and S806 in the third embodiment. Thereafter, the CPU 101 stores the contents of the current key set variable c_keys calculated in step S1001 for the next keyboard process in the previous key set variable p_keys (step S1008), and is shown in the flowchart of FIG. The current keyboard process in step S203 is terminated.
フットペダル107が踏まれていない状態である場合には、CPU101は、第3の実施形態におけるステップS807およびS808と同様のステップS1006およびS1007の処理で示される歌唱生成処理を実行する。その後、CPU101は、次回の鍵盤処理のためにステップS1001にて算出された今回鍵集合変数c_keysの内容を前回鍵集合変数p_keysに格納し(ステップS1008)、図10のフローチャートで示される図2のステップS203の今回の鍵盤処理を終了する。 When the foot pedal 107 is not stepped on, the CPU 101 executes a song generation process indicated by the processes of steps S1006 and S1007 similar to steps S807 and S808 in the third embodiment. Thereafter, the CPU 101 stores the contents of the current key set variable c_keys calculated in step S1001 for the next keyboard process in the previous key set variable p_keys (step S1008), and is shown in the flowchart of FIG. The current keyboard process in step S203 is terminated.
従来技術では、リアルタイムの歌詞の指定ができなかったり、歌唱演奏のみで両手が塞がってしまっていたりしたが、以上説明した第1、第2、第3、および第4の実施形態により、片手のみで歌唱演奏が可能になるため、もう片方の手で他の演奏操作子を操作することが可能になり、演奏の幅を広げることができる。また、例えば鍵盤を上半分と下半分に分け、それぞれの鍵域で別個の歌手データを使用し、異なる歌詞で同時に歌唱させるといったことができるようになる。
第1〜第4実施形態においては、演奏操作子として鍵盤の鍵を用いているが、これに限るものでない。例えば打楽器音を発音させる複数種のパッド、PC等に用いられるキーボードなど、演奏操作子として用いられるものであれば何でもよい。
In the prior art, real-time lyrics cannot be specified, or both hands are blocked only by singing performance. However, according to the first, second, third, and fourth embodiments described above, only one hand is used. Since singing performance becomes possible, it becomes possible to operate other performance controls with the other hand, and the range of performance can be expanded. In addition, for example, the keyboard can be divided into an upper half and a lower half, and separate singer data can be used for each key range so that different lyrics can be sung simultaneously.
In the first to fourth embodiments, a keyboard key is used as a performance operator, but the present invention is not limited to this. For example, any kind of pad can be used as a performance operator, such as a plurality of types of pads for generating percussion instrument sounds, a keyboard used for a PC, and the like.
以上の実施形態に関して、更に以下の付記を開示する。
(付記1)
演奏操作子により行われる演奏操作を判別し、当該判別結果に基づいて第1及び第2のいずれかの状態に移行する状態移行部と、
前記第1の状態に移行した場合に、前記判別された演奏操作に基づいて歌詞を決定する歌詞決定部と、
前記第2の状態に移行した場合に、前記判別された演奏操作に基づいた音高で歌唱させるための歌唱データ生成する歌唱生成部と、
前記歌詞生成部にて生成された歌唱データに基づいて発音させる発音データを生成する発音生成部と、
を備えた歌唱生成装置。
(付記2)
前記歌詞決定部は、予め定められた期間内に前記演奏操作子が複数同時に操作された場合に前記第1の状態に移行し、前記演奏操作子を単数操作した場合に第2の状態に移行する処理を実行する、付記1に記載の歌唱生成装置。
(付記3)
前記歌詞決定部はさらに、前記決定された歌詞を順次メモリに記憶させ、
前記歌唱生成部は、前記音高決定部にて音高が決定される毎に、前記メモリに記憶されている歌詞を予め記憶された順に読み出すとともに、当該読み出された歌詞を前記決定された音高で歌唱させる歌唱データを生成する、付記1又は2に記載の歌唱生成装置。
(付記4)
演奏操作子により行われる演奏操作の内容及び当該演奏操作の終了を判別し、当該演奏操作子の終了を判別する毎に、第1及び第2のいずれか一方の状態から他方の状態に移行する状態移行部と、
前記第1の状態に移行した場合に、前記判別された演奏操作の内容に基づいて歌詞を決定する歌詞決定部と、
前記第2の状態に移行した場合に、前記判別された演奏操作の内容に基づいた音高で歌唱させるための歌唱データ生成する歌唱生成部と、
前記歌詞生成部にて生成された歌唱データに基づいて発音させるための発音データを生成する歌唱生成部と、
を備えた歌唱生成装置。
(付記5)
前記演奏操作子は、フットペダルを含み、前記状態移行部は、前記フットペダルが操作される毎に、前記第1及び第2の状態のいずれか一方の状態から他方の状態に移行させる、付記1に記載の歌唱生成装置。
(付記6)
演奏操作子により行われる演奏操作を判別し、当該判別結果に基づいて第1及び第2のいずれかの状態に移行する処理と、前記第1の状態に移行した場合に、前記判別された演奏操作に基づいて歌詞を決定する処理と、前記第2の状態に移行した場合に、前記判別された演奏操作に基づいた音高で歌唱させるための歌唱データ生成する処理と、を実行する制御部と、
前記歌詞生成部にて生成された歌唱データに基づいて発音させるための発音データを生成する歌唱生成部と、
を備えた歌唱生成装置。
(付記7)
制御部と歌唱生成部とを備えた歌唱生成装置に用いられる歌唱生成方法であって、
前記制御部が、
演奏操作子により行われる演奏操作を判別し、当該判別結果に基づいて第1及び第2のいずれかの状態に移行させ、
前記第1の状態に移行した場合に、前記判別された演奏操作に基づいて歌詞を決定し、
前記第2の状態に移行した場合に、前記判別された演奏操作に基づいた音高で歌唱させるための歌唱データ生成し、
前記歌唱生成部が、
前記生成された歌唱データに基づいて発音させるための発音データを生成する、歌唱生成方法。
(付記8)
生成された歌唱データに基づいて発音させるための発音データを生成する歌唱生成部を有する歌唱生成装置として用いられるコンピュータに、
演奏操作子により行われる演奏操作を判別し、当該判別結果に基づいて第1及び第2のいずれかの状態に移行するステップと、
前記第1の状態に移行した場合に、前記判別された演奏操作に基づいて歌詞を決定するステップと、
前記第2の状態に移行した場合に、前記判別された演奏操作に基づいた音高で歌唱させるための歌唱データ生成するステップと、
を実行させるプログラム。
(付記9)
付記1に記載の歌唱生成装置と、
複数の演奏操作子と、
前記歌唱生成装置からの発音データに基づいて歌唱音を発音する発音部と、
を備えた電子楽器。
Regarding the above embodiment, the following additional notes are disclosed.
(Appendix 1)
A state transition unit that determines a performance operation performed by the performance operator and shifts to one of the first and second states based on the determination result;
A lyric determination unit that determines lyrics based on the determined performance operation when transitioning to the first state;
A singing generation unit that generates singing data for singing at a pitch based on the determined performance operation when the state is shifted to the second state;
A pronunciation generation unit for generating pronunciation data to be generated based on the singing data generated by the lyrics generation unit;
A singing generation device comprising:
(Appendix 2)
The lyrics determining unit shifts to the first state when a plurality of the performance operators are operated at the same time within a predetermined period, and shifts to the second state when the single performance operator is operated. The song production | generation apparatus of Additional remark 1 which performs the process to perform.
(Appendix 3)
The lyrics determining unit further stores the determined lyrics in a memory sequentially,
The singing generation unit reads the lyrics stored in the memory in the order stored in advance each time the pitch determination unit determines the pitch, and the read lyrics are determined The song generator according to appendix 1 or 2, which generates song data for singing at a pitch.
(Appendix 4)
The contents of the performance operation performed by the performance operator and the end of the performance operation are discriminated, and each time the end of the performance operator is discriminated, the state shifts from one of the first and second states to the other state. A state transition part;
A lyrics determining unit that determines lyrics based on the content of the determined performance operation when the first state is entered;
A singing generation unit that generates singing data for singing at a pitch based on the content of the determined performance operation when the state is shifted to the second state;
A singing generation unit for generating pronunciation data for generating sound based on the singing data generated by the lyrics generation unit;
A singing generation device comprising:
(Appendix 5)
The performance operator includes a foot pedal, and the state transition unit shifts from one of the first state and the second state to the other state each time the foot pedal is operated. The song generating device according to 1.
(Appendix 6)
A process of determining a performance operation performed by the performance operator, shifting to one of the first and second states based on the determination result, and the determined performance when shifting to the first state A control unit that executes a process for determining lyrics based on an operation and a process for generating song data for singing at a pitch based on the determined performance operation when the second state is entered. When,
A singing generation unit for generating pronunciation data for generating sound based on the singing data generated by the lyrics generation unit;
A singing generation device comprising:
(Appendix 7)
A singing generation method used in a singing generation device including a control unit and a singing generation unit,
The control unit is
The performance operation performed by the performance operator is determined, and the state is shifted to one of the first and second states based on the determination result,
When transitioning to the first state, the lyrics are determined based on the determined performance operation,
When transitioning to the second state, generating singing data for singing at a pitch based on the determined performance operation,
The song generator is
A singing generation method for generating pronunciation data for generating sound based on the generated singing data.
(Appendix 8)
To a computer used as a singing generation device having a singing generation unit for generating pronunciation data for generating sound based on the generated singing data,
Determining a performance operation performed by the performance operator, and shifting to one of the first and second states based on the determination result;
Determining lyrics based on the determined performance operation when transitioning to the first state;
Generating singing data for singing at a pitch based on the determined performance operation when transitioning to the second state;
A program that executes
(Appendix 9)
The song generation device according to attachment 1,
Multiple performance controls,
A pronunciation unit that produces a singing sound based on the pronunciation data from the song generation device;
Electronic musical instrument with
100 歌唱生成装置
101 CPU
102 ROM
103 RAM
104 鍵盤
105 歌唱合成ユニット
106 発音ユニット
107 フットペダル107
100 song generation apparatus 101 CPU
102 ROM
103 RAM
104 Keyboard 105 Singing synthesis unit 106 Sound generation unit 107 Foot pedal 107
Claims (11)
前記操作状態に基づいて、第1及び第2のいずれかの状態に移行する状態移行部と、
前記第1の状態に移行した場合に、前記操作状態に基づいて歌詞を決定する歌詞決定部と、
前記第2の状態に移行した場合に、前記操作状態に基づいて音高を決定する音高決定部と、
前記決定した歌詞を前記決定した音高で発音させる発音データを生成する発音生成部と、
を備えた歌唱生成装置。 A specifying unit for specifying an operation state of a plurality of performance operators to which different pitches are assigned;
A state transition unit that transitions to one of the first and second states based on the operation state ;
A lyrics determining unit that determines lyrics based on the operation state when transitioning to the first state;
A pitch determination unit that determines a pitch based on the operation state when the second state is entered ;
A pronunciation generation unit for generating pronunciation data for generating the determined lyrics at the determined pitch ; and
A singing generation device comprising:
請求項1に記載の歌唱生成装置。 The operation state includes the combination of a plurality of the performance operators which are operated, the number of engineered the performance operators, the state of one of the of,
The song production | generation apparatus of Claim 1.
前記音高決定部は、前記第2の状態に移行した場合に、前記移行の判定に用いた前記操作状態に基づいて音高を決定する、The pitch determination unit determines a pitch based on the operation state used for the determination of the transition when the transition is made to the second state.
請求項1または2に記載の歌唱生成装置。The song production | generation apparatus of Claim 1 or 2.
前記発音生成部は、前記歌唱生成部にて生成された歌唱データに基づいて発音させる発音データを生成する、The pronunciation generation unit generates the pronunciation data to be generated based on the song data generated by the song generation unit;
請求項3に記載の歌唱生成装置。The song production | generation apparatus of Claim 3.
前記歌唱生成部は、前記音高決定部にて音高が決定される毎に、前記メモリに記憶されている歌詞を予め記憶された順に読み出すとともに、前記読み出された歌詞を前記決定された音高で歌唱させる歌唱データを生成する、請求項4に記載の歌唱生成装置。 The lyrics determining unit further stores the determined lyrics in a memory sequentially,
The singing generator, every time pitch by the pitch determination unit is determined, reads the order previously stored lyrics stored in the memory, which is the determining the read lyric The song production | generation apparatus of Claim 4 which produces | generates the song data made to sing with a pitch.
請求項1乃至5のいずれかに記載の歌唱生成装置。The song production | generation apparatus in any one of Claims 1 thru | or 5.
前記状態移行部は、前記操作の終了を判別する毎に、第1及び第2のいずれか一方の状態から他方の状態に移行する、The state transition unit transitions from one of the first and second states to the other state every time the end of the operation is determined.
請求項1乃至5のいずれかに記載の歌唱生成装置。The song production | generation apparatus in any one of Claims 1 thru | or 5.
複数の演奏操作子と、
前記歌唱生成装置からの発音データに基づいて歌唱音を発音する発音部と、
を備えた電子楽器。 A singing generation device according to any one of claims 1 to 8 ,
Multiple performance controls,
A pronunciation unit that produces a singing sound based on the pronunciation data from the song generation device;
Electronic musical instrument with
互いに異なる音高が割り当てられた複数の演奏操作子の操作状態を特定する特定処理と、Specific processing for specifying the operation state of a plurality of performance operators assigned different pitches;
前記操作状態に基づいて、第1及び第2のいずれかの状態に移行する状態移行処理と、A state transition process for transitioning to either the first or second state based on the operation state;
前記第1の状態に移行した場合に、前記操作状態に基づいて歌詞を決定する歌詞決定処理と、Lyrics determination processing for determining lyrics based on the operation state when transitioning to the first state;
前記第2の状態に移行した場合に、前記操作状態に基づいて音高を決定する音高決定処理と、A pitch determination process for determining a pitch based on the operation state when transitioning to the second state;
前記決定した歌詞を前記決定した音高で発音させる発音データを生成する発音生成処理と、Pronunciation generation processing for generating pronunciation data for generating the determined lyrics at the determined pitch; and
を実行する歌唱生成方法。Singing generation method to execute.
互いに異なる音高が割り当てられた複数の演奏操作子の操作状態を特定する特定処理と、Specific processing for specifying the operation state of a plurality of performance operators assigned different pitches;
前記操作状態に基づいて、第1及び第2のいずれかの状態に移行する状態移行処理と、A state transition process for transitioning to either the first or second state based on the operation state;
前記第1の状態に移行した場合に、前記操作状態に基づいて歌詞を決定する歌詞決定処理と、Lyrics determination processing for determining lyrics based on the operation state when transitioning to the first state;
前記第2の状態に移行した場合に、前記操作状態に基づいて音高を決定する音高決定処理と、A pitch determination process for determining a pitch based on the operation state when transitioning to the second state;
前記決定した歌詞を前記決定した音高で発音させる発音データを生成する発音生成処理と、Pronunciation generation processing for generating pronunciation data for generating the determined lyrics at the determined pitch; and
を実行させるプログラム。A program that executes
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014259483A JP6492629B2 (en) | 2014-12-22 | 2014-12-22 | SINGLE GENERATION DEVICE, ELECTRONIC INSTRUMENT, METHOD, AND PROGRAM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014259483A JP6492629B2 (en) | 2014-12-22 | 2014-12-22 | SINGLE GENERATION DEVICE, ELECTRONIC INSTRUMENT, METHOD, AND PROGRAM |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016118721A JP2016118721A (en) | 2016-06-30 |
JP2016118721A5 JP2016118721A5 (en) | 2018-02-08 |
JP6492629B2 true JP6492629B2 (en) | 2019-04-03 |
Family
ID=56244253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014259483A Active JP6492629B2 (en) | 2014-12-22 | 2014-12-22 | SINGLE GENERATION DEVICE, ELECTRONIC INSTRUMENT, METHOD, AND PROGRAM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6492629B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6634897B2 (en) * | 2016-03-09 | 2020-01-22 | ヤマハ株式会社 | Lyric generation apparatus and lyrics generation method |
JP7468495B2 (en) * | 2021-03-18 | 2024-04-16 | カシオ計算機株式会社 | Information processing device, electronic musical instrument, information processing system, information processing method, and program |
JP7544076B2 (en) | 2022-01-19 | 2024-09-03 | カシオ計算機株式会社 | Information processing device, electronic musical instrument, electronic musical instrument system, method, and program |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0590593U (en) * | 1992-05-18 | 1993-12-10 | ヤマハ株式会社 | Electronic musical instrument |
JPH06324677A (en) * | 1993-05-13 | 1994-11-25 | Kawai Musical Instr Mfg Co Ltd | Text input device of electronic musical instrument |
JP5555912B2 (en) * | 2009-07-23 | 2014-07-23 | 株式会社コルグ | Electronic keyboard instrument |
-
2014
- 2014-12-22 JP JP2014259483A patent/JP6492629B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016118721A (en) | 2016-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4735544B2 (en) | Apparatus and program for singing synthesis | |
JP6465136B2 (en) | Electronic musical instrument, method, and program | |
US10354629B2 (en) | Sound control device, sound control method, and sound control program | |
US20220238088A1 (en) | Electronic musical instrument, control method for electronic musical instrument, and storage medium | |
CN105529024A (en) | Phoneme information synthesis device, voice synthesis device, and phoneme information synthesis method | |
JP4650182B2 (en) | Automatic accompaniment apparatus and program | |
JP6492629B2 (en) | SINGLE GENERATION DEVICE, ELECTRONIC INSTRUMENT, METHOD, AND PROGRAM | |
JP2010139592A (en) | Musical tone generating apparatus and musical tone generating program | |
US20220044662A1 (en) | Audio Information Playback Method, Audio Information Playback Device, Audio Information Generation Method and Audio Information Generation Device | |
JP5995343B2 (en) | Electronic musical instruments | |
JP6402477B2 (en) | Sampling apparatus, electronic musical instrument, method, and program | |
JP4259532B2 (en) | Performance control device and program | |
JP2007086571A (en) | Music information display device and program | |
JP2014098800A (en) | Voice synthesizing apparatus | |
JP2010160523A (en) | Electronic musical instrument and computer program applied to electronic musical instrument | |
TW202101421A (en) | Assisting apparatus for empty beat epenthesis of electronic organ and generation method for timbre switching signal being electrically connected to a pedal apparatus and an electronic organ | |
JP4449370B2 (en) | Automatic accompaniment generator and program | |
US20230035440A1 (en) | Electronic device, electronic musical instrument, and method therefor | |
JP4978176B2 (en) | Performance device, performance realization method and program | |
JP3873880B2 (en) | Performance assist device and performance assist program | |
JP2018151548A (en) | Pronunciation device and loop section setting method | |
JP2007086572A (en) | Image display device and program | |
JP3620321B2 (en) | Automatic accompaniment device | |
JP2016057389A (en) | Chord determination device and chord determination program | |
JP5949859B2 (en) | Electronic musical instruments and programs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171214 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171214 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180914 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181002 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181127 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190218 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6492629 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |