<第1実施形態>
本発明の第1実施形態を以下に説明する。図1は、第1実施形態に係る歌唱音声出力制御装置100のブロック図である。歌唱音声出力制御装置100は、ユーザによって指定された歌詞の歌唱音声を示す音声信号を素片接続型の音声合成によって生成して出力する。
例えば、歌唱音声出力制御装置100は電子楽器(例えば電子オルガン又は電子ピアノ等)によって実現される。なお、歌唱音声出力制御装置100は、電子楽器とインタフェースを介して接続される情報処理装置によって実現することも可能である。または、歌唱音声出力制御装置100は情報処理装置単体によって実現することも可能である。すなわち、歌唱音声出力制御装置100は、据置型の情報処理装置(例えばデスクトップ型コンピュータ又は据置型ゲーム機等)又は携帯型の情報処理装置(例えばラップトップ型コンピュータ、タブレット型コンピュータ、携帯電話、又は携帯ゲーム機等)によって実現することも可能である。
以下では、図1に示すように、演算処理部10と記憶部12と操作部14と放音部16と表示部18とを備える電子楽器によって歌唱音声出力制御装置100を実現する場合について説明する。より具体的には、電子オルガンによって歌唱音声出力制御装置100を実現する場合を例として主に説明する。
演算処理部10は1又は複数のマイクロプロセッサを含んで構成され、記憶部12に記憶されるプログラムPGMや各種データに基づいて演算処理を実行する。記憶部12は1又は複数の記録媒体(例えば半導体記録媒体や磁気記録媒体等)を含んで構成される。例えば、演算処理部10によって実行されるプログラムPGMや、演算処理部10によって使用される各種データが記憶部12に記憶される。
操作部14はユーザの操作を受け付けるためのものであり、ユーザが操作する1又は複数の操作子を含んで構成される。例えば、操作部14はユーザの演奏操作を受け付けるためのであり、複数の演奏操作子(例えば鍵や弦等)を含んで構成される。図1に示すように、操作部14は第1操作部30と第2操作部32とを含む。例えば、第1鍵盤及び第2鍵盤を備えた電子オルガンによって歌唱音声出力制御装置100が実現される場合であれば、第1鍵盤が第1操作部30に相当し、第2鍵盤が第2操作部32に相当する。
放音部16は例えばスピーカ又はヘッドホン等であり、演算処理部10から供給される音声信号に応じた音波を放射する。表示部18は例えば液晶表示ディスプレイ又は有機ELディスプレイ等であり、演算処理部10の制御に基づいて画面を表示する。
歌唱音声出力制御装置100では、ユーザが指定した歌詞の歌唱音声が合成されて出力されるようになっており、特に、ユーザが和音(音高が異なる3つ以上の音から構成される音)を演奏することによって歌詞を指定できるようになっている。以下、このような機能について説明する。
記憶部12には、上記機能を実現するためのデータとして、図1に示すように音声素片群Gや対応関係データDが記憶されている。
音声素片群Gは、音声信号を生成するための素材として用いられる複数の音声素片の集合(音声合成ライブラリ)である。音声素片は、言語的な意味を区別可能な最小単位である音素(例えば母音や子音)や、複数の音素を連結した音素連鎖(例えばダイフォンやトライフォン)である。
対応関係データDは、和音情報と、発音内容を示す発音内容情報と、を対応付けてなるデータである。図2は対応関係データDの一例を示す。図2に示す対応関係データDでは、1つの発音文字(発音記号)に対して1つの和音が対応付けられており、発音文字(発音記号)と和音とが1対1に対応付けられている。図2に示す対応関係データDでは、発音文字(発音記号)が発音内容情報に相当している。
図2に示す例では、和音の根音(例えばC,C#,D等)が日本語の50音の各行にそれぞれ対応付けられており、5種類のコード(メジャーコード、マイナーコード、セブンスコード、マイナーセブンスコード、メジャーセブンスコード)が各行における各文字にそれぞれ対応付けられている。言い換えれば、和音の根音が子音(k,s,t,n,h,m,y,r,w)に対応付けられており、上記5種類のコードが母音(a,i,u,e,o)にそれぞれ対応付けられている。例えば図2に示す例では、あ行に属する発音文字「あ」,「い」,「う」,「え」,「お」にそれぞれ和音「C」,「Cm」,「C7」,「Cm7」,「CM7」が対応付けられている。また図2に示す例では、か行に属する発音文字「か」,「き」,「く」,「け」,「こ」にそれぞれ和音「C#」,「C#m」,「C#7」,「C#m7」,「C#M7」が対応付けられている。先述したように、図2に示す例では、これらの発音文字「あ」,「い」,「う」,「え」,「お」,「か」,「き」,「く」,「け」,「こ」等がそれぞれ発音内容情報の一例に相当している。なお、以上のように、図2に示す例では、和音の根音が日本語の50音の各行にそれぞれ対応付けられ、かつ、5種類のコードが各行における各文字にそれぞれ対応付けられていることによって、ユーザが和音と発音文字との対応関係を把握し易くなっている。
また図2に示す例では、アドナインス(add9)、アドイレブンス(add11)、及びアドフラットナインス(add♭9)等のテンションコードがそれぞれ濁音、半濁音、及び拗音に対応付けられている。例えば、「さ」には和音「D」が対応付けられており、「さ」の濁音である「ざ」には和音「D7(add9)」が対応付けられている。また例えば、「は」には和音「F」が対応付けられており、「は」の半濁音である「ぱ」には和音「F(add11)」が対応付けられている。また例えば、た行に属する拗音である「ちゃ」には和音「D#(add♭9)」が対応付けられ、「ちゅ」には和音「D#m(add♭9)」が対応付けられ、「ちょ」には和音「D#7(add♭9)」が対応付けられる。図2に示す例では、これらの発音文字「ざ」,「ぱ」,「ちゃ」,「ちゅ」,「ちょ」等もそれぞれ発音内容情報の一例に相当している。
歌唱音声出力制御装置100では、上記の対応関係データDを用いることによって、ユーザが和音を演奏することによって歌詞を指定できるようになっている。ここで、ユーザが歌詞を指定するために行う演奏操作について図3及び図4を参照しながら説明する。図3は、ユーザが歌詞を指定するために行う演奏操作の一例を示す楽譜である。図3では、日本語で「明日は晴れるのかしら」を意味する歌詞「あすわはれるのかしら」を指定する場合を想定している。なお、図3に記載された和音は、歌詞を構成する各文字に対応付けられた和音を示しており(図2参照)、伴奏のための和音ではない。図4は、ユーザが上記歌詞を指定するために行う演奏操作の一例について説明するための図である。図4では、上記歌詞中の日本語で「明日」を意味する部分「あす」を指定する場合を想定している。また図4においてt軸は時間軸を示している。
歌詞を指定する際、ユーザは一方の手(例えば左手)で第1鍵盤(第1操作部30)を演奏し、他方の手(例えば右手)で第2鍵盤(第2操作部32)を演奏する。まず、ユーザは第1鍵盤を用いて、歌詞の第1番目の文字として「あ」を指定する。図2に示すように、発音文字「あ」には和音「C」が対応付けられている。このため、図4に示すように、ユーザは第1鍵盤において和音「C」に対応する鍵を押鍵する。さらに、その状態でユーザは「あ」の音声を放音する際の音高を第2鍵盤を用いて指定する。図3に示す例では、「あ」の音声を放音する際の音高として「ファ」が指定されている。この場合、図4に示すように、ユーザは第2鍵盤において「ファ」の鍵を押鍵する。この場合、「ファ」の音高を有する「あ」の歌唱音声が合成されて放音部16から放音される。
次に、ユーザは第1鍵盤を用いて、歌詞の第2番目の文字として「す」を指定する。図2に示すように、発音文字「す」には和音「D7」が対応付けられている。このため、図4に示すように、ユーザは第1鍵盤において和音「D7」に対応する鍵を押鍵する。さらに、その状態でユーザは「す」の音声を放音する際の音高を第2鍵盤を用いて指定する。図3に示す例では、「す」の音声を放音する際の音高として「ラ」が指定されている。この場合、図4に示すように、ユーザは第2鍵盤において「ラ」の鍵を押鍵する。この場合、「ラ」の音高を有する「す」の歌唱音声が合成されて放音部16から放音される。その後、ユーザは上記と同様にして歌詞の第3番目以降の文字を指定していく。
なお、図2に示した対応関係データDでは促音に関して和音が対応付けられていないが、促音に関しては下記に説明するようにして放音させることが可能である。例えば、「た」の促音である「たっ」の歌唱音声を放音させる場合であれば、ユーザは、発音文字「た」に対応付けられた和音「D#」に対応する鍵を第1鍵盤において押鍵し、かつ、「た」の音声を放音する際の音高に対応する鍵を第2鍵盤において押鍵した直後、第1鍵盤及び第2鍵盤から指を離すことによって、「たっ」の歌唱音声を放音させることが可能である。
以上のように、歌唱音声出力制御装置100では、ユーザが和音を演奏することによって歌詞を指定できるようになっている。このような歌詞指定機能は、演算処理部10が記憶部12に記憶されるプログラムPGMや対応関係データDに基づいて処理を実行することによって実現される。すなわち、図1に示すように、和音情報取得部20と音高情報取得部22と発音内容情報取得部24と歌唱音声出力制御部26と歌唱音声合成部28とが演算処理部10によって実現されることによって、上記のような歌詞指定機能が実現される。なお、和音情報取得部20、音高情報取得部22、発音内容情報取得部24、歌唱音声出力制御部26、及び歌唱音声合成部28は複数の集積回路に分散して実現することも可能であるし、これらの一部又は全部を専用の電子回路(DSP)によって実現することも可能である。
和音情報取得部20は、第1操作部30を用いて入力された和音を示す和音情報を取得する。例えば、和音情報取得部20は第1鍵盤(第1操作部30)を用いて演奏された和音を示す和音情報を取得する。例えば、歌唱音声出力制御装置100では、第1鍵盤で行われている演奏内容(例えば各鍵の押鍵状態)を示す第1演奏操作データが演算処理部10に供給される。和音情報取得部20は第1演奏操作データに基づいて、第1鍵盤で和音が演奏されているか否かを判定したり、第1鍵盤で演奏されている和音の種類を特定したりする。
音高情報取得部22は、第2操作部32を用いて入力された音高を示す音高情報を取得する。例えば、音高情報取得部22は第2鍵盤(第2操作部32)を用いて演奏された音高を示す音高情報を取得する。例えば、歌唱音声出力制御装置100では、第2鍵盤で行われている演奏内容(例えば各鍵の押鍵状態)を示す第2演奏操作データが演算処理部10に供給される。音高情報取得部22は第2演奏操作データに基づいて、第2鍵盤のうちのユーザによって押鍵されている鍵を特定し、かつ、当該鍵に対応する音高を特定する。
発音内容情報取得部24は、記憶部12に記憶された対応関係データDに基づいて、和音情報取得部20によって取得された和音情報に対応付けられた発音内容情報を取得する。例えば、発音内容情報取得部24は図2に示す対応関係データDを参照し、和音情報取得部20によって特定された和音に対応付けられた発音文字(発音内容情報)を取得する。
歌唱音声出力制御部26は、発音内容情報取得部24によって取得される発音内容情報と、音高情報取得部22によって取得される音高情報とに基づいて、歌唱音声を放音部16(出力手段)から放音させる。すなわち、歌唱音声出力制御部26は、上記発音内容情報が示す発音文字の歌唱音声を上記音高情報に対応する音高で放音部16から放音させる。
例えば、歌唱音声出力制御部26は発音内容情報及び音高情報を歌唱音声合成部28に供給することによって、発音内容情報が示す発音文字の歌唱音声であって、かつ、音高情報に対応する音高を有する歌唱音声を歌唱音声合成部28に生成させて、放音部16から放音させる。
この場合、歌唱音声合成部28は、発音文字に対応する音声素片の波形データを音声素片群Gから読み出す。また歌唱音声合成部28は、音高情報に対応する音高となるように、読み出した音声素片の波形データにピッチ変換を施す。そして歌唱音声合成部28は、ピッチ変換後の波形データに基づいて、歌唱音声を放音部16から放音させる。
なお、図1では歌唱音声出力制御部26と歌唱音声合成部28とが別個の機能として実現されているが、歌唱音声出力制御部26と歌唱音声合成部28とが一個の機能として実現されるようにしてもよい。すなわち、歌唱音声合成部28の機能は歌唱音声出力制御部26に含まれていてもよい。
次に、演算処理部10が記憶部12に記憶されるプログラムPGMに従って実行する処理の一例について説明する。図5は演算処理部10が実行する処理の一例を示すフロー図である。演算処理部10が図5に示す処理をプログラムPGMに従って実行することによって、和音情報取得部20、音高情報取得部22、発音内容情報取得部24、歌唱音声出力制御部26、及び歌唱音声合成部28が実現される。
図5に示すように、演算処理部10は、第2鍵盤における演奏内容を示す第2演奏操作データに基づいて、第2鍵盤のいずれかの鍵が押鍵されているか否かを判定する(S100)。第2鍵盤のいずれかの鍵が押鍵されていると判定された場合、演算処理部10は、押鍵されている鍵に対応する音高を取得する(S102)。また、演算処理部10は、第1鍵盤における演奏内容を示す第1演奏操作データに基づいて、第1鍵盤においていずれかの和音が演奏されているか否かを判定する(S104)。すなわち、演算処理部10は、和音を構成する複数の音にそれぞれ対応する複数の鍵が押鍵されているか否かを判定する。なお、演算処理部10は、対応関係データDで用いられている和音(言い換えれば、いずれかの発音文字に関連付けられている和音)が演奏されているか否かを判定し、対応関係データDで用いられていない和音については無視する。
第1鍵盤で和音が演奏されていると判定された場合、演算処理部10は対応関係データDを参照し、当該和音に対応付けられた発音文字を取得する(S106)。そして、演算処理部10は、ステップS108で取得された発音文字の歌唱音声をステップS104で取得された音高で放音部16から放音させる(S108)。例えば、演算処理部10は、ステップS108で取得された発音文字に対応する音声素片の波形データを音声素片群Gから読み出し、ステップS104で取得された音高となるように、読み出した音声素片の波形データにピッチ変換を施す。そして演算処理部10は、ピッチ変換後の波形データに基づいて、歌唱音声を放音部16から放音を開始させる。
ステップS108が実行された後、演算処理部10は、第2鍵盤で押鍵されていた鍵が離鍵されたか否かを監視する(S110)。第2鍵盤で押鍵されていた鍵が離鍵されたと判定された場合、演算処理部10はステップS108で開始された放音を停止する(S112)。そして、演算処理部10はステップS100から再び処理を実行する。なお、ステップS100において第2鍵盤のいずれかの鍵が押鍵されていると判定されなかった場合や、ステップS104において第1鍵盤においていずれかの和音が演奏されていると判定されなかった場合にも、ステップS100から再び処理が実行される。
なお、図5に示す例では、第2鍵盤のいずれかの鍵が押鍵されたと判定された後で、第1鍵盤でいずれかの和音が演奏されているか否かの判定(S104)や、第1鍵盤で演奏されている和音に対応する発音文字の取得(S106)を実行するようになっていたが、これらの判定や取得は、第2鍵盤のいずれかの鍵が押鍵されたと判定される前に予め実行しておくようにしてもよい。
以上に説明した第1実施形態に係る歌唱音声出力制御装置100によれば、ユーザが和音を演奏することによって歌詞を指定できるようになる。歌唱音声出力制御装置100によれば、歌詞を指定するための運指が和音を演奏するための運指となり、通常の演奏で行われる運指となるため、演奏に慣れたユーザにとって歌詞を指定し易くなる。歌唱音声出力制御装置100によれば、ユーザは歌詞と音高との両方を指定し易くなり、任意の歌詞及び音高の歌唱音声を生成し易くなる。なお、歌唱音声出力制御装置100によれば、演奏に慣れていないユーザにとっても、歌詞の指定を通じて、和音を演奏するための運指を身につけることができるという利点がある。
なお、以上では、日本語の歌詞を指定する場合について説明したが、歌唱音声出力制御装置100では、日本語以外の言語の歌詞を指定できるようにすることも可能である。例えば、日本語以外の言語の歌詞を指定できるようにする場合には、和音と、日本語以外の言語の発音文字(発音記号)と、を対応付けてなる対応関係データDを用いるようにすればよい。なお、この場合の対応関係データDでは発音文字(発音記号)を音節単位で和音に対応付けるようにしてもよい。すなわち、1つの音節を1つの和音に対応付けるようにしてもよい。例えば、「september」の英単語の場合であれば、「sep」,「tem」,「ber」の音節をそれぞれ和音に対応付けるようにしてもよい。
<第2実施形態>
本発明の第2実施形態を以下に説明する。第1実施形態の対応関係データDでは和音と発音文字とが1対1に対応付けられていた。第2実施形態の対応関係データDでは、和音と発音文字列とが1対1に対応付けられている。なお、第2実施形態に係る歌唱音声出力制御装置100のブロック図は第1実施形態と同様である。以下では、機能や作用が第1実施形態と異なる構成要素に関して主に説明し、機能や作用が第1実施形態と同じ構成要素に関しては詳細な説明を省略する。
図6は、第2実施形態の記憶部12に記憶される対応関係データDの一例を示す。図6に示す例では、1つの発音文字列(発音記号列)に対して1つの和音が対応付けられており、発音文字列(発音記号列)と和音とが1対1に対応付けられている。なお、第1実施形態の対応関係データDと同様、第2実施形態の対応関係データDも、和音情報と、発音内容を示す発音内容情報と、を対応付けてなるデータである。図6に示す例では、発音文字列(発音記号列)が発音内容情報に相当している。例えば、図6に示す例では、日本語で「眩しい」を意味する発音文字列「まぶしい」が和音「Cm7」に対応付けられており、この発音文字列「まぶしい」は発音内容情報の一例に相当している。
また、図6に示す例では、日本語で「綺麗な空」を意味する発音文字列「きれいなそら」が和音「C#」に対応付けられており、日本語で「暗い空」を意味する発音文字列「くらいそら」が和音「C#m」に対応付けられている。
すなわち、図6に示す例では、和音の有する特徴と、発音文字列の内容と、が対応するようにして、和音と発音文字列とが対応付けられている。具体的には、和音が聞き手に与える印象と、発音文字列の内容が聞き手に与える印象と、が対応するようにして、和音と発音文字列とが対応付けられている。例えば、明るい印象を聞き手に与える内容を有する発音文字列が、明るい印象を聞き手に与える和音(例えばメジャーコードの和音)に対応付けられており、暗い印象を聞き手に与える内容を有する発音文字列が、暗い印象を聞き手に与える和音(例えばマイナーコードの和音)に対応付けられている。このようにして和音と発音文字列とが対応付けられていることによって、ユーザが和音に対応付けられた発音文字列の内容を推測できるようになっている。
なお、図6に示す例では日本語の発音文字列が和音と対応付けられているが、例えば図7や図8に示すように、日本語以外の言語の発音文字列が和音と対応付けられていてもよい。図7は、英語の発音文字列(発音内容情報)が和音と対応付けられた対応関係データDの一例を示しており、図8は、ドイツ語の発音文字列(発音内容情報)が和音と対応付けられた対応関係データDの一例を示している。なお、英語やドイツ語を用いた歌唱音声合成では、単語を発音記号に変換して歌唱音声を合成するのが一般的であるため、図7や図8でに示す対応関係データDでは発音記号列を和音と対応付けるようにしてもよい。この場合、発音記号列が発音内容情報に相当する。
例えば、図6に示す例の場合、ユーザが第1鍵盤(第1操作部30)を用いて「C7」,「C#」,「E」,「D#m7」のような順序で和音を演奏すると、これらの和音にそれぞれ対応付けられた発音文字列が、和音の演奏順に従って、歌詞として指定されたことになり、それらの発音文字列の歌唱音声が放音部16から順に放音される。すなわち、この場合、「まぶしい きれいなそら ひとりでも やってみよう」の歌唱音声が放音部16から放音される。
ここで、第2実施形態においてユーザが歌詞を指定するために行う演奏操作について図9を参照しながら説明する。図9は、ユーザが歌詞を指定するために行う演奏操作の一例について説明するための図である。図9では、日本語で「眩しい」を意味する発音文字列「まぶしい」を歌詞として指定する場合を想定している。また図9においてt軸は時間軸を示している。
図9に示すように、まず、ユーザは第1鍵盤(第1操作部30)を用いて、発音文字列「まぶしい」が対応付けられた和音「C7」を演奏する。また、ユーザは第2鍵盤(第2操作部32)を用いて、発音文字列の第1番目の文字「ま」の音声を放音する際の音高を指定する。図9に示す例では「ファ」の鍵が押鍵されており、「ファ」が指定されている。
この場合、和音「C7」に対応付けられた発音文字列「まぶしい」が歌詞として選択され、第1番目の文字「ま」の歌唱音声であって、かつ、「ファ」の音高を有する歌唱音声が合成されて放音部16から放音される。なお、ユーザが「ファ」の鍵を離鍵するまで、上記音声が放音され続ける。
第2鍵盤の「ファ」の鍵を離鍵した後、ユーザは第2鍵盤のいずれかの鍵を押鍵することによって、第2番目の文字「ぶ」の音声を放音する際の音高を指定する。図9に示す例では「ソ」の鍵が押鍵されているため、第2番目の文字「ぶ」の歌唱音声であって、かつ、「ソ」の音高を有する歌唱音声が合成されて放音部16から放音される。
第2鍵盤の「ソ」の鍵を離鍵した後、ユーザは第2鍵盤のいずれかの鍵を押鍵することによって、第3番目の文字「し」の音声を出力する際の音高を指定する。図9に示す例では「ラ」の鍵が押鍵されているため、第3番目の文字「し」の歌唱音声であって、かつ、「ラ」の音高を有する歌唱音声が合成されて放音部16から放音される。
第2鍵盤の「ラ」の鍵を離鍵した後、ユーザは第2鍵盤のいずれかの鍵を押鍵することによって、第4番目の文字「い」の音声を出力する際の音高を指定する。図9に示す例では「シ」の鍵が押鍵されているため、第4番目の文字「い」の歌唱音声であって、かつ、「シ」の音高を有する歌唱音声が合成されて放音部16から放音される。
次に、第2実施形態の和音情報取得部20、音高情報取得部22、発音内容情報取得部24、歌唱音声出力制御部26、及び歌唱音声合成部28について説明する。ただし、和音情報取得部20及び音高情報取得部22は第1実施形態と同様であるため、ここでは詳細な説明を省略する。
発音内容情報取得部24は、例えば図6(又は図7,8)に示すような対応関係データDを参照し、和音情報取得部20によって取得された和音情報に対応付けられた発音文字列(発音内容情報)を取得する。
歌唱音声出力制御部26は、発音内容情報取得部24によって取得された発音文字列の歌唱音声を、音高情報取得部22によって取得される音高情報に対応する音高に従って放音部16から放音させる。例えば、歌唱音声出力制御部26は、発音文字列に含まれる各発音文字の歌唱音声を、各発音文字ごとにユーザによって指定された音高で放音部16から放音させる。歌唱音声出力制御部26は上記のような歌唱音声を歌唱音声合成部28に生成させて、放音部16から放音させる。
次に、第2実施形態の演算処理部10が実行する処理の一例について説明する。図10は第2実施形態の演算処理部10が実行する処理の一例を示すフロー図である。演算処理部10が図10に示す処理をプログラムPGMに従って実行することによって、第2実施形態の和音情報取得部20、音高情報取得部22、発音内容情報取得部24、歌唱音声出力制御部26、及び歌唱音声合成部28が実現される。
図10に示すように、演算処理部10は、第2鍵盤における演奏内容を示す第2演奏操作データに基づいて、第2鍵盤のいずれかの鍵が押鍵されているか否かを判定する(S200)。第2鍵盤のいずれかの鍵が押鍵されていると判定された場合、演算処理部10は、押鍵されている鍵に対応する音高を取得する(S202)。また、演算処理部10は、第1鍵盤における演奏内容を示す第1演奏操作データに基づいて、第1鍵盤においていずれかの和音が演奏されているか否かを判定する(S204)。ステップS200〜S204の処理は図5のステップS100〜S104と同様である。
第1鍵盤において和音が演奏されていると判定された場合、演算処理部10は対応関係データDを参照し、当該和音に対応付けられた発音文字列を取得する(S206)。そして、演算処理部10は、ステップS206で取得された発音文字列の文字数Nを取得する(S208)。また、演算処理部10は変数iを1に初期化する(S210)。
次に、演算処理部10は、ステップS206で取得された発音文字列の第i番目の文字の歌唱音声の放音を開始させる(S212)。すなわち、演算処理部10は、ステップS206で取得された発音文字列の第i番目の文字の歌唱音声をステップS202で取得された音高で放音部16から放音させる。例えば、演算処理部10は、ステップS206で取得された発音文字列の第i番目の文字に対応する音声素片の波形データを音声素片群Gから読み出し、ステップS202で取得された音高となるように、読み出した音声素片の波形データにピッチ変換を施す。そして演算処理部10は、ピッチ変換後の波形データに基づいて、歌唱音声を放音部16から放音させる。
ステップS212が実行された後、演算処理部10は、第2鍵盤で押鍵されていた鍵が離鍵されたか否かを監視する(S214)。第2鍵盤で押鍵されていた鍵が離鍵されたと判定された場合、演算処理部10はステップS212で開始された放音を停止する(S216)。
ステップS216が実行された後、演算処理部10は変数iがN未満であるか否かを判定する(S218)。変数iがN未満であると判定された場合、演算処理部10は、第2鍵盤における演奏内容を示す第2演奏操作データに基づいて、第2鍵盤のいずれかの鍵が押鍵されているか否かを判定する(S220)。第2鍵盤のいずれかの鍵が押鍵されていると判定された場合、演算処理部10は、押鍵されている鍵に対応する音高を取得する(S222)。そして、演算処理部10は変数iに1を加算し(S224)、ステップS212を実行する。すなわち、演算処理部10は、ステップS206で取得された発音文字列の第i番目の文字の歌唱音声の放音を開始させる(S212)。この場合、演算処理部10は、ステップS206で取得された発音文字列の第i番目の文字の歌唱音声をステップS222で取得された音高で放音部16から放音させる。その後、演算処理部10はステップS214以降の処理を実行する。
ステップS218において変数iがN未満でないと判定される場合とは、ステップS206で取得された発音文字列の歌唱音声の放音が終了した場合である。この場合、演算処理部10はステップS200から処理を再び実行する。なお、ステップS200において第2鍵盤のいずれかの鍵が押鍵されていると判定されなかった場合や、ステップS204において第1鍵盤でいずれかの和音が演奏されていると判定されなかった場合にも、演算処理部10はステップS200から処理を再び実行する。
なお、図10に示す例では、第2鍵盤のいずれかの鍵が押鍵されたと判定された後で、第1鍵盤でいずれかの和音が演奏されているか否かの判定(S204)や、第1鍵盤で演奏されている和音に対応する発音文字列の取得(S206)を実行するようになっていたが、これらの判定や取得は、第2鍵盤のいずれかの鍵が押鍵されたと判定される前に予め実行しておくようにしてもよい。
以上に説明した第2実施形態に係る歌唱音声出力制御装置100によれば、第1実施形態と同様、ユーザが和音を演奏することによって歌詞を指定できるようになる。また、歌唱音声出力制御装置100によれば、歌詞を指定するための運指が和音を演奏するための運指となり、通常の演奏で行われる運指となるため、演奏に慣れたユーザにとって歌詞を指定し易くなる。なお、第2実施形態では和音と発音文字列とが対応付けられているため、歌詞を1文字ずつ指定する第1実施形態に比べて、歌詞を指定し易くなる。
<第3実施形態>
本発明の第3実施形態を以下に説明する。第3実施形態では、同一の和音情報に対して発音内容情報取得部24が取得する発音内容情報が変わるようになっている。
図11は、第3実施形態に係る歌唱音声出力制御装置100のブロック図である。図11に示すように、第3実施形態は、対応関係変更部40が演算処理部10に含まれる点で第1実施形態や第2実施形態と相違する。なお、機能や作用が第1実施形態や第2実施形態と異なる構成要素に関して主に説明し、機能や作用が第1実施形態や第2実施形態と同じ構成要素に関しては詳細な説明を省略する。
対応関係変更部40は、和音情報と発音内容情報との対応関係を時間経過に応じて変更する。すなわち、対応関係変更部40は、和音情報に対応付けられる発音内容情報を時間経過に応じて変更する。
例えば、第3実施形態の記憶部12には対応関係データDが複数記憶される。対応関係変更部40は、時間経過に応じて、発音内容情報取得部24によって参照される対応関係データDを記憶部12に記憶された複数の対応関係データDのうちで切り替える。
例えば、所定時間(所定小節)ごとに、対応関係変更部40は、記憶部12に記憶された複数の対応関係データDのうちのいずれかを選択する。この選択はランダムに実行されてもよいし、予め定められた順序に従って実行されてもよい。また、この場合、発音内容情報取得部24は、対応関係変更部40によって選択された対応関係データDを参照して発音内容情報を取得する。このようにして、第3実施形態では、発音内容情報取得部24が参照する対応関係データDが時間経過に応じて変化する。
以上に説明した第3実施形態に係る歌唱音声出力制御装置100によれば、和音と発音内容情報との対応関係を時間経過に応じて変更することによって、歌唱音声の歌詞を変化に富んだものにすることが可能になる。
なお、ユーザが入力すべき発音内容情報の時系列データと、ユーザが演奏すべき和音の時系列データとが記憶部12に記憶されるようにしてもよい。例えば、模範歌詞データ(言い換えれば、ユーザが入力すべき発音文字列(発音内容情報)の時系列データ)と、ユーザが演奏すべき和音の時系列データとが記憶部12に記憶されるようにしてもよい。そして、対応関係変更部40は、これらの時系列データに基づいて、対応関係データDを変更するようにしてもよい。
例えば、上記の時系列データにおいて、あるタイミングTxでユーザが入力すべき発音文字列(発音内容情報)として発音文字列Sxが定められ、かつ、タイミングTxでユーザが演奏すべき和音として和音Cxが定められている場合、対応関係変更部40は、上記タイミングTxが到来する少し前に、和音Cxに対応付けられた発音文字列(発音内容情報)を発音文字列Sxに変更する。例えば、対応関係変更部40は、上記タイミングTxが到来する少し前に、発音内容情報取得部24によって参照される対応関係データDを、和音Cxに発音文字列Sxが対応付けられた対応関係データDに変更する。
なお、模範歌詞データとして、複数の対応関係データDを切替順序又は切替タイミングを特定可能な形式で記憶しておくようにしてもよい。また、対応関係変更部40は、発音内容情報取得部24によって参照される対応関係データDを、複数の対応関係データDのうちで、切替順序又は切替タイミングに従って切り替えるようにしてもよい。
この態様では、例えば、ユーザが演奏すべき和音の名称を表示部18に表示することによってユーザに案内する。または例えば、ユーザが押鍵すべき鍵(すなわち、ユーザが演奏すべき和音に対応する鍵)をユーザに案内する。このようにすれば、ユーザは案内に従って第1鍵盤で和音を演奏することによって、模範的な歌詞を指定できるようになる。
<第4実施形態>
本発明の第4実施形態を以下に説明する。第3実施形態と同様に、第4実施形態でも、同一の和音情報に対して発音内容情報取得部24が取得する発音内容情報が変わるようになっている。ただし、第4実施形態に係る歌唱音声出力制御装置100のブロック図は第1実施形態や第2実施形態と同様である。以下では、機能や作用が第1実施形態や第2実施形態と異なる構成要素に関して主に説明し、機能や作用が第1実施形態や第2実施形態と同じ構成要素に関しては詳細な説明を省略する。
第4実施形態の対応関係データDでは和音と発音内容情報とが1対多で対応付けられる。図12は第4実施形態の対応関係データDの一例を示す。図12に示す対応関係データDでは1つの和音に対して複数の発音文字列(発音内容情報)が対応付けられている。具体的には、図12に示す例では1つの和音に対して3つ発音文字列が対応付けられている。なお、図12に示す例では、日本語の複数の発音文字列が1つの和音に対応付けられているが、図7及び図8に示した例と同様に、日本語以外の言語の複数の発音文字列(発音内容情報)が1つの和音に対応付けられるようにしてもよい。あるいは、日本語以外の言語の複数の発音記号列(発音内容情報)が1つの和音に対応付けられるようにしてもよい。
第4実施形態の発音内容情報取得部24は、和音情報取得部20によって取得された和音情報に複数の発音内容情報が対応付けられている場合に、それら複数の発音内容情報のうちいずれかを選択する。
例えば、図12に示す対応関係データDでは、1つの和音に対して複数の発音文字列が対応付けられているため、和音情報取得部20によって取得された和音情報には複数の発音文字列が対応付けられていることになる。このような場合、発音内容情報取得部24は、それら複数の発音文字列のうちいずれかを選択する。例えば、発音内容情報取得部24は複数の発音文字列のうちのいずれかをランダムに選択する。または、発音内容情報取得部24は、複数の発音文字列のうちのいずれかを、予め定められた順序に従って選択するようにしてもよい。例えば、発音内容情報取得部24は、第1鍵盤で和音「C」の第1回目の演奏が行われた場合に、和音「C」に対応付けられた複数の発音文字列のうちの第1番目の発音文字列を選択し、第1鍵盤で和音「C」の第2回目の演奏が行われた場合に、和音「C」に対応付けられた複数の発音文字列のうちの第2番目の発音文字列を選択するようにしてもよい。このようにして、第1鍵盤で和音「C」が演奏されるごとに、発音内容情報取得部24は、和音「C」に対応付けられた複数の発音文字列のいずれかを予め定められた順序に従って順番に選択するようにしてもよい。
第4実施形態においても図10に示すような処理が実行される。ただし、第4実施形態では、ステップS206において、演算処理部10は対応関係データDを参照し、当該和音に対応付けられた複数の発音文字列のいずれかを選択して取得する。
以上に説明した第4実施形態に係る歌唱音声出力制御装置100によれば、第3実施形態と同様、歌唱音声の歌詞を変化に富んだものにすることが可能になる。
なお、第4実施形態では、発音内容情報の選択履歴を示す選択履歴データが記憶部12に記憶されるようにしてもよい。また、発音内容情報取得部24は、和音情報取得部20によって取得された和音情報に複数の発音内容情報が対応付けられている場合に、それら複数の発音内容情報のうちいずれかを、選択履歴データに基づいて選択するようにしてもよい。
図13は選択履歴データの一例を示す。図13に示す例では和音ごとに発音文字列(発音内容情報)の選択履歴が記憶されている。例えば、和音「C」に関連付けて、和音「C」に対応付けられた発音文字列の選択履歴が記憶されている。図13に示す例において、例えば、選択履歴「1,3」は、第1番目の発音文字列が選択され、その後、第3番目の発音文字列が選択されたことを示している。
この場合、発音内容情報取得部24は、和音情報取得部20によって取得された和音情報に複数の発音文字列(発音内容情報)が対応付けられている場合に、それら複数の発音文字列のうちいずれかを、図13に示す選択履歴データに基づいて選択するようにしてもよい。
例えば、発音内容情報取得部24は、前回選択されていない発音文字列を、前回選択された発音文字列よりも優先的に選択するようにしてもよい。具体的には、発音内容情報取得部24は、前回選択されていない発音文字列を選択し、前回選択された発音文字列を選択しないようにしてもよい。または、発音内容情報取得部24は、前回選択されていない発音文字列が選択される確率が、前回選択された発音文字列が選択される確率よりも高くなるようにして確率情報を設定した上で、複数の発音文字列のうちのいずれかを確率情報に基づいて選択するようにしてもよい。
また例えば、発音内容情報取得部24は、選択回数が少ない発音文字列を、選択回数が多い発音文字列よりも優先的に選択するようにしてもよい。具体的には、発音内容情報取得部24は、選択回数が最も少ない発音文字列を選択するようにしてもよい。または、発音内容情報取得部24は、選択回数が少ない発音文字列ほど、選択される確率が高くなるようにして確率情報を設定した上で、複数の発音文字列のうちのいずれかを確率情報に基づいて選択するようにしてもよい。
このようにすれば、同じ発音文字列(発音内容情報)が繰り返し選択され難くなるため、歌唱音声の歌詞をより変化に富んだものにすることが可能になる。
<第5実施形態>
本発明の第5実施形態を以下に説明する。第5実施形態ではユーザが任意の歌詞(発音内容情報)を対応関係データDに登録できるようになっている。
図14は、第5実施形態に係る歌唱音声出力制御装置100のブロック図である。図14に示すように、第5実施形態は、登録受付部50及び発音内容情報登録部52が演算処理部10に含まれる点で第1実施形態〜第4実施形態と相違する。以下、機能や作用が第1実施形態〜第4実施形態と異なる構成要素に関して主に説明し、機能や作用が第1実施形態〜第4実施形態と同じ構成要素に関しては詳細な説明を省略する。
登録受付部50は新たな発音内容情報の登録を受け付ける。例えば、登録受付部50は、発音文字列(発音内容情報)の入力を受け付けるための画面を表示部18に表示する。また、登録受付部50は当該画面で入力された発音文字列を取得する。
発音内容情報登録部52は新たな発音内容情報を対応関係データDに登録する。発音内容情報登録部52は新たな発音内容情報をどの和音情報に対応付けるかを決定する。発音内容情報登録部52は、新たな発音内容情報を対応付ける和音情報を、当該新たな発音内容情報が示す発音内容に基づいて決定する。
例えば、新たな発音文字列(発音内容情報)が明るい内容を有している場合(言い換えれば、新たな発音文字列の内容が明るい印象を聞き手に与えるような内容である場合)、発音内容情報登録部52は、明るい印象を聞き手に与えるような和音(例えばメジャーコードの和音)を、当該新たな発音文字列を対応付ける和音として決定する。
例えば、第5実施形態の記憶部12には、明るい印象を聞き手に与えるキーワード群が記憶される。発音内容情報登録部52は上記キーワードが新たな発音文字列に含まれているか否かを判定する。そして、上記キーワードが新たな発音文字列に含まれていれば、発音内容情報登録部52は、当該キーワードに対応する和音に、当該新たな発音文字列を対応付ける。すなわち、発音内容情報登録部52は新たな発音文字列が明るい内容を有していると判定して、明るい印象を聞き手に与えるような和音(例えばメジャーコードの和音)に当該新たな発音文字列を対応付ける。
一方、新たな発音文字列(発音内容情報)が暗い内容を有している場合(言い換えれば、新たな発音文字列の内容が暗い印象を聞き手に与えるような内容である場合)、発音内容情報登録部52は、暗い印象を聞き手に与えるような和音(例えばマイナーコードの和音)を、当該新たな発音文字列を対応付ける和音として決定する。
例えば、第5実施形態の記憶部12には、暗い印象を聞き手に与えるキーワード群が記憶される。発音内容情報登録部52は上記キーワードが新たな発音文字列に含まれているか否かを判定する。そして、上記キーワードが新たな発音文字列に含まれていれば、発音内容情報登録部52は、当該キーワードに対応する和音に、当該新たな発音文字列を対応付ける。すなわち、発音内容情報登録部52は新たな発音文字列が暗い内容を有していると判定して、暗い印象を聞き手に与えるような和音(例えばマイナーコードの和音)に当該新たな発音文字列を対応付ける。
以上に説明した第5実施形態に係る歌唱音声出力制御装置100によれば、ユーザが任意の歌詞(発音内容情報)を対応関係データDに登録できるようになる。さらに、第5実施形態に係る歌唱音声出力制御装置100によれば、ユーザが入力した歌詞が内容が聞き手に与える印象と、和音が聞き手に与える印象と、が対応するようにして、歌詞が和音が対応付けられるため、ユーザは自らの入力した歌詞のうちの所望の内容の歌詞(例えば明るい内容の歌詞又は暗い内容の歌詞)を指定し易くなる。
<変形例>
本発明は以上説明した第1実施形態〜第5実施形態に限定されるものではない。
(1)対応関係データDは図2,6〜8,12に示した例に限られない。例えば、図2に示す対応関係データDでは、日本語における文字や文字連鎖(音素連鎖)の出現頻度等を考慮して、発音文字と和音とを対応付けるようにしてもよい。具体的には、使用頻度の高い発音文字を、演奏し易い和音に対応付けるようにしてもよい。
また例えば、和音の転回形を別の発音文字又は発音文字列に対応付けるようにしてもよい。例えば、図2に示す対応関係データDでは和音「C」が発音文字「あ」に対応付けられているが、和音「C」の第1転回形を別の発音文字(例えば「か」)に対応付け、和音「C」の第2転回形をさらに別の発音文字(例えば「さ」)に対応付けるようにしてもよい。
また例えば、図2,6〜8,12に示した例では用いていない和音を用いるようにしてもよい。例えば、和音「Cm」と「Cm7」はユーザによっては区別し難い場合があるため、他の和音「Csus4」,「C−5」,又は「Comit3」等を用いるようにしてもよい。例えば、図2に示す対応関係データDでは発音文字「あ」,「い」,「う」,「え」,「お」に和音「C」,「Cm」,「Comit3」,「Csus4」,「C−5」をそれぞれ対応付けるようにしてもよい。
(2)以上では、歌唱音声出力制御装置100を電子オルガンによって実現する場合について主に説明したが、歌唱音声出力制御装置100は電子オルガン以外の電子楽器によって実現することも可能である。
(2−1)例えば、歌唱音声出力制御装置100は電子ピアノ等の鍵盤楽器によって実現することが可能である。
なお、鍵盤楽器が一つの鍵盤のみを有している場合には、発音文字又は発音文字列を指定するための和音の演奏操作と、発音文字又は発音文字列を放音する際の音高を指定するための演奏操作との両方を一つの鍵盤を用いて行うことになる。この場合、例えば図15に示すように、一つの鍵盤を音域によって分けるようにしてもよい。図15に示す例では、所定の音高(例えばC3)未満の音域に対応する鍵群(操作子群)が前者の演奏操作を行うための領域として設定されている。一方、所定の音高(例えばC3)以上の音域に対応する鍵群(操作子群)が後者の演奏操作を行うための領域として設定されている。この場合、所定の音高(例えばC3)未満の音域に対応する鍵群が図1等に示す第1操作部30に相当し、所定の音高(例えばC3)以上の音域に対応する鍵群が図1等に示す第2操作部32に相当する。
(2−2)また例えば、歌唱音声出力制御装置100は電子ギター等の弦楽器によって実現することも可能である。例えば、MIDI形式に対応した電子ギターによって実現することも可能である。
なお、この場合、例えば、一部の弦(操作子群)を、発音文字又は発音文字列を指定するための和音の演奏操作に用い、残りの弦(操作子群)を、発音文字又は発音文字列を放音する際の音高を指定するための演奏操作に用いるようにすればよい。具体的には、例えば、第1弦〜第5弦を前者の演奏操作に用い、第6弦を後者の演奏操作に用いるようにしてもよい。この場合、第1弦〜第5弦が図1等に示す第1操作部30に相当し、第6弦が図1等に示す第2操作部32に相当する。
あるいは、例えば、ネック部分の第1弦〜第6弦を前者の演奏操作に用い、ボディ部分の第1弦〜第6弦を後者の演奏操作に用いるようにしてもよい。この場合、ネック部分の第1弦〜第6弦が図1等に示す第1操作部30に相当し、ボディ部分の第1弦〜第6弦が図1等に示す第2操作部32に相当する。なお、この場合、第1弦〜第6弦を弾く強さによって、発音文字又は発音文字列を放音する際の音高が指定されるようにしてもよい。
(2−3)なお例えば、歌唱音声出力制御装置100はグロッケン、マリンバ、又は木琴等の打楽器によって実現するようにしてもよい。この場合、例えば、センサを設置することによって演奏内容を取得するようにしてもよい。
(3)歌唱音声出力制御装置100は、電子楽器とインタフェースを介して接続された情報処理装置によって実現することも可能である。すなわち、以上では、演算処理部10と記憶部12と放音部16と表示部18が電子楽器に内蔵されている場合について説明したが、演算処理部10と記憶部12と放音部16と表示部18は、電子楽器とインタフェースを介して接続された情報処理装置に備えられるようにしてもよい。この場合、電子楽器で行われた演奏操作を示す演奏操作データがインタフェースを介して情報処理装置に供給され、情報処理装置では当該演奏操作データに基づいて処理が実行される。
(4)歌唱音声出力制御装置100は情報処理装置単体によって実現することも可能である。すなわち、演算処理部10と記憶部12と操作部14と放音部16と表示部18は情報処理装置に備えられるようにしてもよい。
例えば、歌唱音声出力制御装置100は、タッチパネルを備えた情報処理装置(パーソナルコンピュータ、携帯電話、携帯情報端末、又はゲーム機等)によって実現することも可能である。この場合、仮想的な演奏操作子群をタッチパネルに表示することによって、演奏操作を受け付けるようにしてもよい。
例えば、仮想的な2つの鍵盤をタッチパネルに表示するようにしてもよい。この場合、電子オルガンの場合と同様に、一方の鍵盤を、発音文字又は発音文字列を指定するための和音の演奏操作に用い、他方の鍵盤を、発音文字又は発音文字列を放音する際の音高を指定するための演奏操作に用いるようにしてもよい。なお、この場合、タッチパネルが図1等に示す操作部14に相当し、タッチパネルに表示された一方の鍵盤(言い換えれば、タッチパネル内の一方の鍵盤が表示されている部分)が図1等に示す第1操作部30に相当し、タッチパネルに表示された他方の鍵盤(言い換えれば、タッチパネル内の他方の鍵盤が表示されている部分)が図1等に示す第2操作部32に相当する。
なお、例えば、仮想的な1つの鍵盤をタッチパネルに表示するようにしてもよいし、仮想的な複数の弦をタッチパネルに表示するようにしてもよい。
(5)記憶部12に記憶されるデータ(音声素片群Gや対応関係データD)の全部又は一部は、歌唱音声出力制御装置100と通信ネットワークを介して通信可能な他の装置に記憶されていてもよい。
(6)歌唱音声合成部28及び放音部16は、和音情報取得部20、音高情報取得部22、発音内容情報取得部24、及び歌唱音声出力制御部26を備える装置と通信ネットワークを介して通信可能な他の装置において備えられてもよい。すなわち、歌唱音声出力制御部26は、通信ネットワークを介して、歌唱音声合成部28に歌唱音声を生成させて放音部16から放音させるようにしてもよい。
(7)歌唱音声合成部28によって生成された歌唱音声を示すデータを記憶部12に保存するようにしてもよい。例えば、ユーザによって指定された歌詞及び音高を示すデータを記憶部12に保存するようにしてもよい。このようにすることによって、ユーザが後で歌唱音声を任意に再生できるようにしてもよい。
(8)以上では、主に日本語の歌詞を入力する場合について説明したが、先述した通り、本発明は日本語以外の歌詞を入力する場合にも適用することができる。