(57)【要約】【課題】  ユーザが歌詞データを迅速に入力するための動作をコンピュータに実行させる歌データ入力プログラムを提供すること。【解決手段】  このプログラムは、単語の音節の区切りを表す区切り記号を含む文字列を表す音節毎分割文字列データを多数格納した音節毎分割データベースＯＢＤＢを記憶した記憶装置を備えるコンピュータ装置により実行される。このプログラムを実行するコンピュータ装置は、音節毎分割文字列取得手順２２ｂに従って、入力された文字列データが表す入力文字列の音節の区切りを音節毎分割データベースから取得し、文字列割付け手順２２ｃに従って同取得された音節の区切りに基づいて入力文字列を音節毎に分割することにより１つの音節からなる一音節文字列を表す一音節文字列データを生成し、同生成された一音節文字列データと音符データとを１つずつ関連付けて記憶する。【選択図】  図２
2006258846.tif 000002
【特許請求の範囲】
【請求項１】
文字列と、同文字列の音節の区切りを表す音節毎分割位置と、の文字列音節毎分割位置関係を記憶した記憶装置を備え、音の高さ及び音の長さを表す音符が複数連なることにより表現される旋律を同複数の音符のそれぞれを表す音符データを複数個用いて表す旋律データと、文字列を表す文字列データと、を入力可能とするコンピュータに、
入力された文字列データが表す文字列である入力文字列と、前記記憶された文字列音節毎分割位置関係と、から同入力文字列の音節毎分割位置を取得する音節毎分割位置取得動作を実行させる手順と、
前記取得された音節毎分割位置に基づいて前記入力文字列を音節毎に分割することにより１つの音節からなる一音節文字列を表す一音節文字列データを同入力文字列の音節の数である入力文字列音節数だけ生成するとともに、同入力文字列音節数が１つである場合、同生成された一音節文字列データを入力された旋律データを表す音符データのうちの所定の音符データに関連付けて記憶し、一方、同入力文字列音節数が複数である場合、同生成された入力文字列音節数の一音節文字列データの各々を、同入力文字列における同各一音節文字列データが表す一音節文字列の発音順序を維持しながら、同入力文字列音節数の同所定の音符データが表す音符及び同音符の後に連続する後続音符から構成される割付け予定音符をそれぞれ表す音符データである割付け予定音符データの各々に１つずつ関連付けて記憶する文字列割付け動作を実行させる手順と、
を含む歌データ入力プログラム。
【請求項２】
請求項１に記載の歌データ入力プログラムにおいて、
前記文字列割付け動作を実行させる手順は、
前記音節毎分割位置が取得されない場合、前記文字列割付け動作を実行させないように構成されている手順である歌データ入力プログラム。
【請求項３】
請求項１又は請求項２に記載の歌データ入力プログラムにおいて、
前記文字列割付け動作を実行させる手順は、
前記所定の音符データが表す音符と、同音符の後に連続する後続音符と、から構成される所定以降音符の数が、前記入力文字列音節数より少ないか否かを判定する所定以降音符数判定動作を実行させる手順を含み、
前記所定以降音符の数が、前記入力文字列音節数より少ないと判定されたとき、前記文字列割付け動作を実行させないように構成されている手順である歌データ入力プログラム。
【請求項４】
請求項１乃至請求項３に記載の歌データ入力プログラムにおいて、
前記文字列割付け動作を実行させる手順は、
前記割付け予定音符のうちの連続する２つの音符間に所定の期間より長い発音停止期間が存在するか否かを判定する発音停止期間判定動作を実行させる手順を含み、
前記２つの音符間に前記発音停止期間が存在すると判定されたとき、前記文字列割付け動作を実行させないように構成されている手順である歌データ入力プログラム。
【請求項５】
請求項１乃至請求項４に記載の歌データ入力プログラムであって、
前記コンピュータに、前記文字列割付け動作において関連付けて記憶された前記一音節文字列データと、前記音符データと、の関連付けの変更を禁止する関連付け変更禁止動作を実行させる手順を含み、
前記文字列割付け動作を実行させる手順は、
前記割付け予定音符が、前記関連付けの変更を禁止された音符データが表す音符である関連付け変更禁止音符を含むか否かを判定する関連付け変更禁止判定動作を実行させる手順を含み、
前記割付け予定音符が前記関連付け変更禁止音符を含むと判定されたとき、前記文字列割付け動作を実行させないように構成されている手順である歌データ入力プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音符を表す音符データを複数個用いることにより旋律を表す旋律データに歌詞データを関連付けて記憶する動作をコンピュータに実行させる歌データ入力プログラムに関する。
【背景技術】
【０００２】
従来から、音の高さ及び音の長さを表す音符が複数連なることにより表現される旋律を同複数の音符のそれぞれを表す音符データを複数個用いて表す旋律データと、同複数の音符の各々に対して割り付けられた歌詞を表す歌詞データと、からなる歌を表す歌データに基づいてコンピュータが歌声を模擬した音を合成し同合成された音を出力する歌唱合成装置が知られている。
【０００３】
このような歌唱合成装置の１つにおいては、ユーザは、歌詞に含まれる複数の音節からなる単語を音符に割り付けようとする場合、その単語を一音節毎に分割した一音節文字列を表す一音節文字列データのそれぞれを、音符を表す音符データのそれぞれに対応付けて入力する。このとき、この歌唱合成装置は、プログラムに従って、入力された複数の一音節文字列データが表す単語の真の音節の数及び同単語の発音を表す発音記号を同装置が備える辞書データ（データベース）を参照することにより取得する。
【０００４】
次いで、歌唱合成装置は、ユーザにより１つの単語を表す文字列データとして入力された一音節文字列データの数が、取得された真の音節の数と等しければ、取得された発音記号を一音節毎に分割した一音節発音記号を表す一音節発音記号データのそれぞれを、同ユーザが入力した一音節文字列データが対応付けられた音符データにそれぞれ関連付けて記憶する。これによれば、ユーザが音節の区切りを間違えて一音節文字列データを入力しても、入力した一音節文字列データの数と真の音節の数とが等しい限り、真の音節の区切りにて分割された一音節発音記号が対応する音符に割り付けられる（特許文献１を参照。）。
【特許文献１】特開２００４−２５８５６１号公報
【０００５】
しかしながら、上記従来の装置によれば、ユーザは、歌詞に含まれる複数の音節からなる単語を音符に割り付けようとする場合、１つの一音節文字列データを１つの音符データに対応付けて入力する操作を、同単語の音節の数だけ繰り返して行う必要があった。更に、上記従来の装置によれば、ユーザは、歌詞に含まれる単語の音節の数を知らない場合、辞書等により同単語の音節の数を調べる必要があった。このようなことから、上記従来の装置においては、ユーザは歌詞データを迅速に入力することが困難であるという問題があった。
【発明の開示】
【０００６】
本発明は上述した課題に対処するためになされたものであって、その目的は、ユーザが歌詞データを迅速に入力するための動作をコンピュータに実行させる歌データ入力プログラムを提供することにある。
【０００７】
かかる目的を達成するため本発明の歌データ入力プログラムは、文字列と、同文字列の音節の区切りを表す音節毎分割位置と、の文字列音節毎分割位置関係を記憶した記憶装置を備え、音の高さ及び音の長さを表す音符が複数連なることにより表現される旋律を同複数の音符のそれぞれを表す音符データを複数個用いて表す旋律データと、文字列を表す文字列データと、を入力可能とするコンピュータに、音節毎分割位置取得動作及び文字列割付け動作をそれぞれ実行させる手順を含む。
【０００８】
音節毎分割位置取得動作は、入力された文字列データが表す文字列である入力文字列と、前記記憶された文字列音節毎分割位置関係と、から同入力文字列の音節毎分割位置を取得する。
【０００９】
文字列割付け動作は、前記取得された音節毎分割位置に基づいて前記入力文字列を音節毎に分割することにより１つの音節からなる一音節文字列を表す一音節文字列データを同入力文字列の音節の数である入力文字列音節数だけ生成するとともに、同入力文字列音節数が１つである場合、同生成された一音節文字列データを入力された旋律データを表す音符データのうちの所定の音符データに関連付けて記憶し、一方、同入力文字列音節数が複数である場合、同生成された入力文字列音節数の一音節文字列データの各々を、同入力文字列における同各一音節文字列データが表す一音節文字列の発音順序を維持しながら、同入力文字列音節数の同所定の音符データが表す音符及び同音符の後に連続する後続音符から構成される割付け予定音符をそれぞれ表す音符データである割付け予定音符データの各々に１つずつ関連付けて記憶する。
【００１０】
このプログラムを実行するコンピュータによれば、ユーザが入力する歌詞としての文字列を表す文字列データを１つの音節からなる一音節文字列を表す一音節文字列データに分割して入力しなくとも、同入力された文字列データが表す文字列である入力文字列が音節毎に分割されることにより一音節文字列データが生成される。更に、複数の音節からなる文字列を表す文字列データが入力された場合、生成された複数の一音節文字列データが、入力文字列の音節の数（入力文字列音節数）の所定の音符データが表す音符及び同音符の後に連続する後続音符から構成される割付け予定音符をそれぞれ表す音符データに、それぞれ１つずつ関連付けて記憶される。
【００１１】
従って、ユーザは、文字列の音節の区切りを意識することなく歌詞データとしての文字列データの入力を行うことができる。また、ユーザは、複数の音節からなる文字列を表す文字列データを入力するだけで、複数の音符データと、複数の一音節文字列データと、をそれぞれ１つずつ互いに関連付けて記憶させることができる。これらの結果、ユーザは歌詞データを迅速に入力することができる。
【００１２】
この場合、前記文字列割付け動作を実行させる手順は、
前記音節毎分割位置が取得されない場合、前記文字列割付け動作を実行させないように構成されている手順であることが好適である。
【００１３】
入力文字列の音節の区切りを表す音節毎分割位置が取得されないと、入力文字列を正しい音節の区切りにて分割できない恐れがある。従って、上記構成のように、音節毎分割位置が取得されない場合、文字列割付け動作を実行させないことにより、同文字列割付け動作が不適切に実行されることを防止することができる。
【００１４】
この場合、前記文字列割付け動作を実行させる手順は、
前記所定の音符データが表す音符と、同音符の後に連続する後続音符と、から構成される所定以降音符の数が、前記入力文字列音節数より少ないか否かを判定する所定以降音符数判定動作を実行させる手順を含み、
前記所定以降音符の数が、前記入力文字列音節数より少ないと判定されたとき、前記文字列割付け動作を実行させないように構成されている手順であることが好適である。
【００１５】
所定の音符データが表す音符と、同音符の後に連続する後続音符と、から構成される所定以降音符の数が、入力文字列音節数より少ないと、入力文字列を音節毎に分割することにより生成される一音節文字列データのすべてを１つずつ音符データに関連付けて記憶させることができない。
【００１６】
従って、上記構成のように、所定以降音符の数が、入力文字列音節数より少ないとき、文字列割付け動作を実行させないことにより、同文字列割付け動作が不適切に実行されることを防止することができる。
【００１７】
この場合、前記文字列割付け動作を実行させる手順は、
前記割付け予定音符のうちの連続する２つの音符間に所定の期間より長い発音停止期間が存在するか否かを判定する発音停止期間判定動作を実行させる手順を含み、
前記２つの音符間に前記発音停止期間が存在すると判定されたとき、前記文字列割付け動作を実行させないように構成されている手順であることが好適である。
【００１８】
一般に、複数の音節からなる単語を構成する複数の一音節文字列が連続して発音される際に、同複数の一音節文字列のうちの連続する２つの一音節文字列が所定の時間的な間隔を置いて発音されると、人間が同発音された複数の一音節文字列を同単語として認識することは困難となる。
【００１９】
このため、連続する２つの音符間に所定の期間より長い発音停止期間が存在する場合、同２つの音符をそれぞれ表す音符データに複数の音節からなる単語を構成する一音節文字列を表す一音節文字列データをそれぞれ関連付けて記憶させることは適切ではない。
【００２０】
従って、上記構成のように、割付け予定音符のうちの連続する２つの音符間に所定の期間より長い発音停止期間が存在するとき、文字列割付け動作を実行させないことにより、同文字列割付け動作が不適切に実行されることを防止することができる。
【００２１】
この場合、前記コンピュータに、前記文字列割付け動作において関連付けて記憶された前記一音節文字列データと、前記音符データと、の関連付けの変更を禁止する関連付け変更禁止動作を実行させる手順を含み、
前記文字列割付け動作を実行させる手順は、
前記割付け予定音符が、前記関連付けの変更を禁止された音符データが表す音符である関連付け変更禁止音符を含むか否かを判定する関連付け変更禁止判定動作を実行させる手順を含み、
前記割付け予定音符が前記関連付け変更禁止音符を含むと判定されたとき、前記文字列割付け動作を実行させないように構成されている手順であることが好適である。
【００２２】
上述したように、本発明に係る歌データ入力プログラムを実行するコンピュータは、複数の音節からなる文字列を表す文字列データが入力されると、生成された複数の一音節文字列データを、割付け予定音符をそれぞれ表す音符データに、それぞれ１つずつ関連付けて記憶する。このとき、上記割付け予定音符を表す音符データに既に文字列データが関連付けて記憶されていた場合、同記憶されていた関連付けは変更される恐れがある。
【００２３】
これに対し、上記構成によれば、ユーザが、既に記憶されている関連付けの変更を希望しないとき、文字列割付け動作により同関連付けが変更されることを防止することができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明による歌データ入力プログラムの実施形態について図面を参照しながら説明する。図１は、本発明の実施形態に係る歌データ入力プログラムを含むプログラムを実行するコンピュータ装置（歌唱合成装置）をブロック図により示している。
【００２５】
コンピュータ装置は、互いにバス１０で接続されたＣＰＵ１１、フラッシュ・メモリ１２、ＲＡＭ１３、補助記憶装置１４、音源回路１５、入出力インターフェース１６及び表示制御回路１７を備えている。
【００２６】
ＣＰＵ１１は、所定のプログラムを実行することにより、コンピュータ装置に種々の動作を実行させるようになっている。
【００２７】
フラッシュ・メモリ１２は、電源が投入されている間だけでなく遮断されている間も、記憶されたプログラム及びデータを保持するようになっていて、コンピュータ装置の各構成部が有する基本的な機能（例えば、キーボードの操作によるデータの入力やディスプレイによるデータの出力等）を実現するためのシステムプログラム等を予め記憶している。
【００２８】
ＲＡＭ１３は、プログラム及び同プログラムの実行時に使用されるデータを一時的に記憶するようになっている。
【００２９】
補助記憶装置１４は、図示しないハード・ディスク・ドライブ（ＨＤＤ）及び記憶媒体ドライブを備える。
ＨＤＤは、ハード・ディスク（ＨＤ）を内蔵していて、同ＨＤにプログラム及びデータを記憶させるとともに、同記憶させたプログラム及びデータを読み取ることができるようになっている。
【００３０】
記憶媒体ドライブは、着脱可能な記憶媒体を装着していて、同装着された記憶媒体にプログラム及びデータを記憶させるとともに、同記憶させたプログラム及びデータを読み取ることができるようになっている。着脱可能な記憶媒体は、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）、コンパクト・ディスク（ＣＤ）又はフレキシブル・ディスク（ＦＤ）等である。
【００３１】
このように構成された補助記憶装置１４は、音節毎分割データベースＯＢＤＢ、音声素片データベースＯＳＤＢ及び図２に示すプログラムを含む種々のプログラム等を記憶している。ここで、音節毎分割データベースＯＢＤＢ及び音声素片データベースＯＳＤＢについて説明を加える。
【００３２】
音節毎分割データベースＯＢＤＢは、音節毎分割文字列データと、音節毎分割発音記号データと、からなる音節毎分割データの集合体である。
【００３３】
音節毎分割文字列データは、文字列（本例では、英語の単語）の音節の区切りを表す区切り記号（本例では、「−」）を含む文字列である音節毎分割文字列を表すデータである。例えば、文字列が３音節からなる「ｓｅｐｔｅｍｂｅｒ」であるとき、音節毎分割文字列データは「ｓｅｐ−ｔｅｍ−ｂｅｒ」を表すデータ（「ｓｅｐ−ｔｅｍ−ｂｅｒ」に対応したデータ）であり、文字列が２音節からなる「ｂａｂｙ」であるとき、音節毎分割文字列データは「ｂａ−ｂｙ」を表すデータであり、文字列が１音節（単音節）からなる「ｌｏｖｅ」であるとき、音節毎分割文字列データは「ｌｏｖｅ」を表すデータである。
【００３４】
音節毎分割発音記号データは、文字列の発音を表す発音記号（本例では、ＳＡＭＰＡ（Speech  Assessment  Methods  Phonetic  Alphabet））と前述した区切り記号とを含む音節毎分割発音記号を表すデータである。
【００３５】
例えば、文字列が３音節からなる「ｓｅｐｔｅｍｂｅｒ」であるとき、その発音記号は「ｓｅｐｔｅｍｂ＠ｒ」であり、従って、音節毎分割発音記号データは「ｓｅｐ−ｔｅｍ−ｂ＠ｒ」を表すデータとなる。文字列が２音節からなる「ｂａｂｙ」であるとき、その発音記号は「ｂｈ  ｅＩｂ  ｉ：」であり、従って、音節毎分割発音記号データは「ｂｈ  ｅＩ−ｂ  ｉ：」を表すデータとなる。更に、文字列が１音節からなる「ｌｏｖｅ」であるとき、その発音記号は「ｌ０  Ｖ」であり、従って、音節毎分割発音記号データは「ｌ０  Ｖ」を表すデータとなる。
【００３６】
この音節毎分割データベースＯＢＤＢは、文字列（即ち、音節毎分割文字列データが表す音節毎分割文字列（例えば、「ｓｅｐ−ｔｅｍ−ｂｅｒ」）から区切り記号を除去することにより取得される文字列（「ｓｅｐｔｅｍｂｅｒ」））を表す文字列データにより検索可能に構築されている。以上のことから、補助記憶装置１４は、文字列と、同文字列の音節の区切りを表す音節毎分割位置と、の文字列音節毎分割位置関係を記憶した記憶装置を構成していると言うことができる。
【００３７】
音声素片データベースＯＳＤＢは、発音された音声の音素又は音素の連なりである音素連鎖（音声素片）に対応する部分の音声を表す音声素片データの集合体である。
【００３８】
本例では、音声素片データは、歌声の各音声素片に対応する部分をそれぞれ表すデータであって、所定の微小な時間における歌声の周波数成分を表すデータを時系列的に複数含んだデータである。この音声素片データは、ある特定の人間の歌声から同歌声の各音声素片に対応する部分をそれぞれ抽出し、同抽出された歌声の各部分をそれぞれ所定の微小な時間毎の音に分割し、同分割された音のそれぞれをフーリエ変換することにより生成される。この音声素片データの基となった歌声は、ある特定の音の高さ、音の長さ及び音の大きさ（音の強さ又は音量）等の発音状態において発音されている。即ち、音声素片データは、音の高さ、音の長さ及び音の大きさ等の発音状態に起因するデータを含むデータである。
【００３９】
音声素片データベースＯＳＤＢは、音声素片の発音を表す音声素片発音記号（例えば、「ｓ」、「ｓｅ」又は「ｂ＠ｒ」等）を表す音声素片発音記号データにより検索可能に構築されている。
【００４０】
音源回路１５は、音を表す音データに基づいて音信号を生成するようになっている。音源回路１５には、サウンドシステム１５ａが接続されている。サウンドシステム１５ａは、図示しない増幅器及びスピーカを備えていて、音源回路１５にて生成された音信号に対応する音を出力するようになっている。
【００４１】
入出力インターフェース１６は、信号を入力又は出力することが可能なインターフェースであり、例えば、ユニバーサル・シリアル・バス・インターフェース（ＵＳＢインターフェース）である。入出力インターフェース１６には、キーボード１６ａ及びマウス１６ｂが接続されている。キーボード１６ａは、改行を表す記号に対応するボタン式スイッチ（エンターキー）及び所定の空白を表す記号に対応するボタン式スイッチ（タブキー）を含む複数の文字又は記号にそれぞれ対応するボタン式スイッチ（キー）を備えている。キーボード１６ａは、ユーザの操作によりこれらのボタン式スイッチが押し込まれると、それぞれのボタン式スイッチに対応する信号を出力するようになっている。
【００４２】
マウス１６ｂは、２つのボタン式スイッチ及び位置センサを備えている。マウス１６ｂは、ユーザの操作によりこれらのボタン式スイッチが押し込まれると、それぞれのボタン式スイッチに対応する信号を出力するようになっている。マウス１６ｂは、ユーザの操作により同マウス１６ｂが置かれている平面上にて移動させられると、位置センサにより移動した方向及び距離を検出し、同検出された方向及び距離を表す信号を出力するようになっている。
【００４３】
入出力インターフェース１６は、キーボード１６ａ及びマウス１６ｂから各種の信号を入力すると、同入力された信号をＣＰＵ１１に供給するようになっている。ＣＰＵ１１は、供給された信号に基づいて、文字、符号及び図形等からなる画像を表す画像データを生成するようになっている。
【００４４】
このような構成により、例えば、ユーザがキーボード１６ａのボタン式スイッチを押し込む操作を行うと、同操作が行われる直前の時点にて生成されていた画像データが表す画像に、同押し込まれたボタン式スイッチに対応する文字又は記号が追加された画像を表す画像データがＣＰＵ１１により生成される。また、ユーザがマウス１６ｂを移動させる操作を行うと、同操作が行われる直前の時点にて生成されていた画像データが表す画像における位置を表し同マウス１６ｂの実際の位置に対応する図形（マウスカーソル）が、同マウス１６ｂが移動した方向及び距離に基づいて移動した画像を表す画像データがＣＰＵ１１により生成される。
【００４５】
表示制御回路１７は、ＣＰＵ１１により生成された画像データに基づいて画像信号を生成するようになっている。表示制御回路１７には、液晶ディスプレイ、プラズマ・ディスプレイ又はブラウン管ディスプレイ等の表示器１７ａが接続されている。表示器１７ａは、表示制御回路１７にて生成された画像信号に対応する画像を表示するようになっている。
【００４６】
次に、上記のように構成されたコンピュータ装置が実行する歌唱合成プログラムの手順について説明する。この歌唱合成プログラムの手順は、本発明による歌データ入力プログラムの手順を含んでいて、図２の機能ブロック図に示したように、歌データ入力部２０及び歌声合成部３０からなる手順である。
【００４７】
歌データ入力部２０は、旋律データと、歌詞データと、ビブラート・データと、からなる歌データをユーザの操作に従って生成する動作をコンピュータ装置に実行させる手順である。
【００４８】
旋律データは、音の高さ及び音の長さを表す音符が複数連なることにより表現される旋律を同複数の音符のそれぞれを表す音符データを複数個用いて表すデータである。
歌詞データは、上記複数の音符データのそれぞれに関連付けられた１つの音節からなる文字列（一音節文字列）をそれぞれ表す一音節文字列データ及び同一音節文字列にそれぞれ対応する発音記号（一音節発音記号）を表す一音節発音記号データからなるデータである。
【００４９】
ビブラート・データは、音の高さ又は音の大きさを周期的に変化させる際の音の高さ又は音の大きさの変化のパターンを表すビブラート・パターンと、ビブラートを開始する時期（ビブラート開始時期）と、ビブラートを終了する時期（ビブラート終了時期）と、からなるビブラート情報を表すデータである。
【００５０】
歌データ入力部２０は、旋律データ入力部２１、歌詞データ入力部２２、ビブラート設定部２３及び関連付け変更禁止手順２４からなる。歌詞データ入力部２２は、文字列音符関係付け手順２２ａ、音節毎分割文字列取得手順２２ｂ及び文字列割付け手順２２ｃからなる。
【００５１】
以下、ユーザが、所望の旋律と、文字列「ｓｅｐｔｅｍｂｅｒ」を含む所望の歌詞と、からなる歌の歌声を模擬した音を聴きたいと希望する例を用いて説明を続ける。
【００５２】
先ず、ユーザは、所望の旋律データを入力するために、キーボード１６ａ又はマウス１６ｂを操作する。これにより、上記コンピュータ装置のＣＰＵ１１は、上記歌唱合成プログラムの実行を開始し、図示しない画像制御プログラムに基づいて図３に模式的に示した画像を表示器１７ａに表示させる。
【００５３】
この画像は、同画像の左部に模式的に示されたピアノの鍵盤と、同鍵盤の右側に配置され同鍵盤に対応する左右方向の点線により区画された音階領域と、同画像の上部に示された拍の区切りを表す目盛りである拍目盛りと、同拍目盛りのうちの長い目盛りであって小節の区切りを表す目盛りである小節目盛りと、同拍目盛り及び同小節目盛りの下側に配置され同拍及び小節を表す上下方向の実線により区画された拍領域と、により構成されている。この画像は、ユーザが旋律データを構成する複数の音符データと、歌詞データを構成する複数の文字列データと、を含む歌データを入力するための入力インターフェースを構成している。
【００５４】
次いで、ユーザは、この入力インターフェースを使用して、旋律データを構成する複数の音符データを上記コンピュータ装置に入力する。この入力手順について、以下、ユーザが複数の音符データの１つとして、音の高さがミ（ｅ２）であり、音の発音開始時期が第１小節の２拍目の最初であり、音の発音終了時期が第１小節の３拍目の最後である音符を表す音符データを入力するときを一例として、より具体的に説明する。
【００５５】
このとき、ユーザは、マウス１６ｂを移動させることにより、同マウス１６ｂの実際の位置に対応し表示器１７ａに表示されている画像における位置を表す図形（マウスカーソル）を図３の符号Ａが付された点に移動させる。そして、ユーザは、マウス１６ｂのボタン式スイッチを押し込んだ後、同ボタン式スイッチが押し込まれた状態でマウスカーソルを図３の符号Ｂが付された点に移動させる。その後、ユーザは、同押し込まれたボタン式スイッチを離すことにより同ボタン式スイッチが押し込まれていない状態にする。
【００５６】
これにより、ＣＰＵ１１は、旋律データ入力部２１の手順に従って、音の高さがミ（ｅ２）であり、音の発音開始時期が第１小節の２拍目の最初であり、音の発音終了時期が第１小節の３拍目の最後である音を表す音符データをＲＡＭ１３に記憶させる。更に、ＣＰＵ１１は、旋律データ入力部２１の手順に従って、図４に示したように、同音符データが表す音の高さ、音の発音開始時期及び音の発音終了時期を示す音符を表す図形である音符図形Ｎ１を含む画像を表示器１７ａに表示させる。
このようにして、ユーザは、１つの音符データをコンピュータ装置に入力する。
【００５７】
ユーザは、このマウス１６ｂの操作と同様の操作を繰り返し行うことにより、所望の旋律データを構成する他の複数の音符データをコンピュータ装置に入力する。これにより、所望の旋律データを構成する複数の音符データがＲＡＭ１３に記憶されるとともに、図５に示したように、同複数の音符データの一部に対応する音符図形Ｎ１〜Ｎ４が表示器１７ａに表示される。
【００５８】
このように、旋律データ入力部２１は、ユーザにより入力された複数の音符データを含む旋律データをＲＡＭ１３に記憶させるとともに、同記憶された旋律データに基づいた画像を表示器１７ａに表示させる手順である。
【００５９】
次に、ユーザは、所望の歌詞データを構成する文字列データをコンピュータ装置に入力する。この例においては、ユーザは、音符図形Ｎ１〜Ｎ３が表す音符がそれぞれ表す音に合わせて文字列「ｓｅｐｔｅｍｂｅｒ」を発音させる歌声を合成させるための操作を行う。即ち、ユーザは、マウス１６ｂを移動させることによりマウスカーソルを音符図形Ｎ１上の位置に移動させ、マウス１６ｂのボタン式スイッチを所定の短い時間（本例では、５００ｍｓ）内に２回押し込む。
【００６０】
これにより、ＣＰＵ１１は、文字列音符関係付け手順２２ａに従って、音符図形Ｎ１の上部に配置された文字列データを入力するための入力カーソルを含む画像を表示器１７ａに表示させる。この状態において、ユーザは、キーボード１６ａにより文字列「ｓｅｐｔｅｍｂｅｒ」を表す文字列データを入力する。これにより、ＣＰＵ１１は、文字列音符関係付け手順２２ａに従って、音符図形Ｎ１の上部に配置された文字列「ｓｅｐｔｅｍｂｅｒ」を含む画像を表示器１７ａに表示させる（図６を参照。）。
【００６１】
そして、ユーザは、表示器１７ａに表示された画像により入力された文字列データが表す文字列が所望の文字列「ｓｅｐｔｅｍｂｅｒ」であることを確認すると、キーボード１６ａのエンターキーを押し込む。これにより、ＣＰＵ１１は、文字列音符関係付け手順２２ａに従って、ユーザにより選択された所定の音符データとしての選択音符データである音符図形Ｎ１に対応する音符データと、同ユーザにより入力された文字列（入力文字列）「ｓｅｐｔｅｍｂｅｒ」を表す文字列データと、を互いに関係付けてＲＡＭ１３に記憶させる。
【００６２】
このように、文字列音符関係付け手順２２ａは、ＲＡＭ１３により記憶された旋律データが含む複数の音符データの中からユーザにより選択された所定の音符データとしての選択音符データ（上記例における音符図形Ｎ１に対応する音符データ）に対応付けて入力された文字列データと、同選択音符データと、を互いに関係付けてＲＡＭ１３に記憶させる手順である。即ち、文字列音符関係付け手順２２ａは、文字列音符関係付け動作をコンピュータ装置に実行させる手順を構成している。
【００６３】
その後、ＣＰＵ１１は、音節毎分割文字列取得手順２２ｂに従って、補助記憶装置１４により予め記憶された音節毎分割データベースＯＢＤＢから、文字列「ｓｅｐｔｅｍｂｅｒ」を表す文字列データに対応する音節毎分割データを検索し、検索して取得された音節毎分割データ（「ｓｅｐ−ｔｅｍ−ｂｅｒ」を表す音節毎分割文字列データ及び「ｓｅｐ−ｔｅｍ−ｂ＠ｒ」を表す音節毎分割発音記号データ）をＲＡＭ１３に記憶させる。
【００６４】
このように、音節毎分割文字列取得手順２２ｂは、補助記憶装置１４により予め記憶された音節毎分割データベースＯＢＤＢから、上記文字列音符関係付け手順２２ａによりＲＡＭ１３に記憶された文字列データに対応する音節毎分割データを検索し、検索して取得された音節毎分割データをＲＡＭ１３に記憶させる手順である。即ち、音節毎分割文字列取得手順２２ｂは、音節毎分割位置取得動作をコンピュータ装置に実行させる手順を構成している。
【００６５】
次に、ＣＰＵ１１は、文字列割付け手順２２ｃに従って、４つの関連付け中止条件のいずれかが満たされるか否かを判定する。
【００６６】
この関連付け中止条件が満たされる場合とは、第１に、入力された文字列データに対応する音節毎分割データが音節毎分割データベースＯＢＤＢから取得されていない場合である。第２に、選択音符データが表す音符と、同音符の後に連続する後続音符と、から構成される所定以降音符としての選択以降音符の数が入力文字列の音節の数である入力文字列音節数より少ない場合である。
【００６７】
第３に、割付け予定音符のうちの連続する２つの音符間に所定の期間より長い発音停止期間が存在する場合である。割付け予定音符は、入力文字列音節数の選択音符データが表す音符及び同音符の後に連続する後続音符から構成される。
【００６８】
第４に、割付け予定音符が関連付け変更禁止音符を含む場合である。関連付け変更禁止音符は、後述する関連付け変更禁止手順２４により、一音節文字列データ及び一音節発音記号データと音符データとの関連付けの変更を禁止する関連付け変更禁止フラグと関連付けてＲＡＭ１３に記憶されている音符データが表す音符である。
【００６９】
そこで、ＣＰＵ１１は、先ず、ユーザにより入力された文字列「ｓｅｐｔｅｍｂｅｒ」を表す文字列データに対応する音節毎分割データが音節毎分割データベースＯＢＤＢから取得されていないか否かを判定する第１判定ステップの処理を行う。
【００７０】
この例において、音節毎分割データベースＯＢＤＢは、文字列「ｓｅｐｔｅｍｂｅｒ」を表す文字列データに対応する音節毎分割データを含んでいるので、上記音節毎分割文字列取得手順２２ｂにより同音節毎分割データが取得されている。
【００７１】
従って、ＣＰＵ１１は、上記第１判定ステップにて「Ｎｏ」と判定し、続いて、選択以降音符の数が、入力文字列音節数より少ないか否かを判定する第２判定ステップの処理を行う。なお、ＣＰＵ１１によるこの動作は、所定以降音符数判定動作を構成している。
【００７２】
この例において、文字列「ｓｅｐｔｅｍｂｅｒ」の音節の数は、３つである。一方、選択以降音符は、音符図形Ｎ１〜Ｎ４がそれぞれ表す４つの音符を含んでいる。
【００７３】
従って、ＣＰＵ１１は、上記第２判定ステップにて「Ｎｏ」と判定し、続いて、割付け予定音符のうちの連続する２つの音符間に所定の期間（本例では、２拍）より長い発音停止期間が存在するか否かを判定する第３判定ステップの処理を行う。なお、ＣＰＵ１１によるこの動作は、発音停止期間判定動作を構成している。
【００７４】
この例において、文字列「ｓｅｐｔｅｍｂｅｒ」の音節の数は、３つである。従って、割付け予定音符は、音符図形Ｎ１〜Ｎ３にそれぞれ対応する音符である。更に、これらの音符は、発音停止期間を含んでいない。
【００７５】
従って、ＣＰＵ１１は、上記第３判定ステップにて「Ｎｏ」と判定し、続いて、割付け予定音符が、関連付け変更禁止音符を含むか否かを判定する第４判定ステップの処理を行う。なお、ＣＰＵ１１によるこの動作は、関連付け変更禁止判定動作を構成している。
【００７６】
この例において、割付け予定音符を表す音符データとしての音符図形Ｎ１〜Ｎ３にそれぞれ対応する音符データは、いずれも関連付け変更禁止フラグと関連付けてＲＡＭ１３に記憶されていない。従って、ＣＰＵ１１は、上記第４判定ステップにて「Ｎｏ」と判定する。
【００７７】
以上のように、所定の関連付け中止条件のいずれもが満たされない場合、ＣＰＵ１１は、文字列割付け手順２２ｃに従って、ＲＡＭ１３により記憶された音節毎分割データに基づいて、一音節文字列「ｓｅｐ−」、「ｔｅｍ−」及び「ｂｅｒ」をそれぞれ表す一音節文字列データと、同一音節文字列にそれぞれ対応する一音節発音記号「ｓｅｐ−」、「ｔｅｍ−」及び「ｂ＠ｒ」をそれぞれ表す一音節発音記号データと、を生成する。
【００７８】
このように、文字列割付け手順２２ｃは、ＲＡＭ１３により記憶された音節毎分割文字列データが表す音節毎分割文字列を区切り記号に従って分割することにより一音節文字列データを生成する手順を含んでいる。従って、生成された一音節文字列データの数は、ユーザにより入力された文字列データが表す文字列の音節の数である入力文字列音節数と等しい。更に、文字列割付け手順２２ｃは、音節毎分割発音記号データが表す音節毎分割発音記号を区切り記号に従って分割することにより一音節発音記号データを生成する手順を含んでいる。
【００７９】
次に、ＣＰＵ１１は、文字列割付け手順２２ｃに従って、音符図形Ｎ１に対応する音符データと、一音節文字列「ｓｅｐ−」を表す一音節文字列データ及び一音節発音記号「ｓｅｐ−」を表す一音節発音記号データと、を関連付けてＲＡＭ１３に記憶させ、音符図形Ｎ２に対応する音符データと、一音節文字列「ｔｅｍ−」を表す一音節文字列データ及び一音節発音記号「ｔｅｍ−」を表す一音節発音記号データと、を関連付けてＲＡＭ１３に記憶させ、音符図形Ｎ３に対応する音符データと、一音節文字列「ｂｅｒ」を表す一音節文字列データ及び一音節発音記号「ｂ＠ｒ」を表す一音節発音記号データと、を関連付けてＲＡＭ１３に記憶させる。
【００８０】
これにより、ユーザが文字列「ｓｅｐｔｅｍｂｅｒ」を表す文字列データを、同ユーザが選択した１つの音符データ（音符図形Ｎ１に対応する音符データ）に対応付けて入力するだけで、同入力された文字列データが表す文字列「ｓｅｐｔｅｍｂｅｒ」を音節毎に分割することにより生成される一音節文字列「ｓｅｐ−」、「ｔｅｍ−」及び「ｂｅｒ」をそれぞれ表す一音節文字列データが、音符図形Ｎ１〜Ｎ３にそれぞれ対応する音符データに、順に１つずつ関連付けられてＲＡＭ１３に記憶される。
【００８１】
このように、文字列割付け手順２２ｃは、入力文字列音節数が複数であるとき、生成された入力文字列音節数の一音節文字列データの各々を、同一音節文字列データに対応する一音節発音記号データとともに、入力文字列における同各一音節文字列データが表す一音節文字列の発音順序を維持しながら、入力文字列音節数の上記選択音符データが表す音符及び同音符の後に連続する後続音符から構成される割付け予定音符をそれぞれ表す音符データである割付け予定音符データの各々に１つずつ関連付けて歌詞データの一部としてＲＡＭ１３に記憶させる手順を含んでいる。
【００８２】
なお、文字列割付け手順２２ｃは、入力文字列が、例えば、「ｌｏｖｅ」のように１音節からなるとき、即ち、入力文字列音節数が１つであるとき、生成された一音節文字列データ及び一音節発音記号データと、ユーザにより入力された文字列データと関係付けてＲＡＭ１３により記憶された選択音符データと、を関連付けて歌詞データの一部としてＲＡＭ１３に記憶させる手順を含んでいる。
【００８３】
従って、ユーザは、文字列の音節の区切りを意識することなく歌詞データとしての文字列データの入力を行うことができる。この結果、ユーザは歌詞データを迅速に入力することができる。
【００８４】
更に、ＣＰＵ１１は、文字列割付け手順２２ｃに従って、音符図形Ｎ１〜Ｎ３にそれぞれ対応する音符データと関連付けてＲＡＭ１３に記憶された上記一音節文字列データ及び一音節発音記号データがそれぞれ表す一音節文字列Ｃ１〜Ｃ３及び一音節発音記号Ｐ１〜Ｐ３が、同一音節文字列データ及び一音節発音記号データがそれぞれ関連付けられた音符データに対応する音符図形の近傍に配置された画像を表示器１７ａに表示させる（図７を参照。）。
【００８５】
このように、文字列割付け手順２２ｃは、ＲＡＭ１３に記憶された一音節文字列データ及び一音節発音記号データがそれぞれ表す一音節文字列及び一音節発音記号を同一音節文字列データ及び一音節発音記号データがそれぞれ関連付けられた音符データに対応付けて表示器１７ａに表示させる手順を含んでいる。
【００８６】
加えて、ＣＰＵ１１は、音符図形Ｎ３の上部に配置された文字列「ｂｅｒ」の末尾に配置された入力カーソルを含む画像を表示器１７ａに表示させる。なお、ユーザが文字列データを入力した後、エンターキーの代わりにタブキーを押し込んだとき、この画像の代わりに音符図形Ｎ４の上部に配置された入力カーソルを含む画像が表示器１７ａに表示されるように上記歌唱合成プログラムを構成してもよい。
このようにして、ユーザは、１つの文字列データをコンピュータ装置に入力する。
【００８７】
ユーザは、このキーボード１６ａ及びマウス１６ｂの操作と同様の操作を繰り返し行うことにより、所望の歌詞データを構成する他の複数の文字列データをコンピュータ装置に入力する。これにより、所望の歌詞データを構成する複数の一音節文字列データ及び同複数の一音節文字列データにそれぞれ対応する一音節発音記号データが、音符データと１つずつ関連付けられてＲＡＭ１３に記憶される。
【００８８】
以上、説明したように、文字列割付け手順２２ｃは、所定の関連付け中止条件のいずれもが満足されない場合、一音節文字列データ及び一音節発音記号データと、音符データと、を関連付けてＲＡＭ１３に記憶させる手順を含んでいる。
【００８９】
一方、文字列割付け手順２２ｃは、所定の関連付け中止条件のいずれかが満足される場合、入力された文字列データを音符データに関連付けて歌詞データの一部としてＲＡＭ１３に記憶させることなく、入力された文字列データと、音符データと、が関連付けられなかったことをユーザに通知する画像を表示器１７ａに表示させる。
【００９０】
このように、文字列割付け手順２２ｃは、文字列割付け動作をコンピュータ装置に実行させる手順を構成していると言うことができる。
【００９１】
次に、ユーザは、所望の音符データが表す音符に対応する歌の部分をビブラートをかけて歌う（音の高さ又は音の大きさを周期的に変化させて歌う）歌声を合成させるために、ビブラート・データをコンピュータ装置に入力する。
【００９２】
この例においては、ユーザは、音符図形Ｎ３が表す音符が表す音の発音期間の後半においてこの音の高さを振幅が半音である正弦波状に変化させるパターンに従ってビブラートをかけて歌う歌声を合成させるための操作を行う。即ち、ユーザは、キーボード１６ａ及びマウス１６ｂを操作することにより、音符図形Ｎ３を選択状態にする。更に、ユーザは、図示しない入力インターフェースを介して、所望のビブラート情報を表すビブラート・データを入力する。
【００９３】
これにより、ＣＰＵ１１は、ビブラート設定部２３の手順に従って、選択状態にされた音符図形Ｎ３に対応する音符データと、同入力されたビブラート・データと、を関連付けてＲＡＭ１３に記憶させる。
【００９４】
このように、ビブラート設定部２３は、ユーザの操作に従って、音符データが表す音符に対応する歌の部分をビブラートをかけて歌う歌声を合成させるためのビブラート・データを同音符データに関連付けてＲＡＭ１３に記憶させる手順を含んでいる。
【００９５】
そして、ＣＰＵ１１は、ビブラート設定部２３の手順に従って、ビブラート・データが表すビブラート情報を示し音符図形Ｎ３の下方に配置された図形であるビブラート図形Ｖ１を含む画像を表示器１７ａに表示させる（図８を参照。）。
【００９６】
このように、ビブラート設定部２３は、ビブラート・データと関連付けて記憶された音符データが表す音符を示す音符図形の下方に配置されたビブラート情報を表す図形であるビブラート図形を含む画像を表示器１７ａに表示させる手順を含んでいる。
【００９７】
以上説明したように、ユーザが所望する旋律データ、歌詞データ及びビブラート・データからなる歌データが同ユーザによりコンピュータ装置に入力される。
【００９８】
次に、ユーザは、所望の歌データがコンピュータ装置に入力されたことを表示器１７ａに表示されている画像等により確認すると、入力した歌データに基づいて歌声を模擬した音を出力させるために、キーボード１６ａ及びマウス１６ｂを操作する。これにより、ＣＰＵ１１は、以下に述べる歌声合成部３０の手順に従って、ＲＡＭ１３に記憶された歌データに基づいて歌声を模擬した音を表す歌声データを生成し、生成された歌声データが表す音をサウンドシステム１５ａに出力させる。これにより、ユーザは、所望の歌データに基づく歌声を模擬した音を聴くことができる。
【００９９】
ここで、再び図２を参照しながら、歌声合成部３０の手順について説明する。歌声合成部３０の手順の詳細はよく知られていて、例えば、特開２００２−２０２７９０号公報又は特開２００４−２５８５６３号公報に記載されている。従って、本明細書においては歌声合成部３０の手順の詳細な説明を省略し、概要についてのみ述べる。
【０１００】
歌声合成部３０は、上記歌データ入力部２０により生成されＲＡＭ１３に記憶された歌データに基づいて歌声を模擬した音を表す歌声データを生成し、生成された歌声データが表す音をサウンドシステム１５ａに出力させる手順である。歌声合成部３０は、補助記憶装置１４により予め記憶された音声素片データベースＯＳＤＢを参照する。歌声合成部３０は、音声素片データ取得手順３１、音高調整手順３２、発音期間調整手順３３、音量調整手順３４、音声素片接続手順３５及びビブラート付与手順３６からなる。
【０１０１】
音声素片データ取得手順３１は、上記歌データ入力部２０により生成されＲＡＭ１３に記憶された歌詞データの一部である一音節発音記号データに基づいて音声素片発音記号データを生成し、同生成された音声素片発音記号データに対応する音声素片データを、補助記憶装置１４により予め記憶された音声素片データベースＯＳＤＢから検索して取得する動作をコンピュータ装置に実行させる手順である。
【０１０２】
音高調整手順３２は、上記音声素片データ取得手順３１により検索して取得された音声素片データと、上記歌データ入力部２０によりＲＡＭ１３に記憶され同音声素片データの基となった一音節発音記号データが関連付けられた音符データと、に基づいて同音声素片データが表す音の高さが同音符データが表す音の高さと一致するように同音声素片データを調整する動作をコンピュータ装置に実行させる手順である。
【０１０３】
発音期間調整手順３３は、上記音高調整手順３２により調整された音声素片データと、上記歌データ入力部２０によりＲＡＭ１３に記憶され同音声素片データの基となった一音節発音記号データが関連付けられた音符データと、に基づいて各音声素片データが表す音声素片の発音が開始する時期（発音開始時期）と、同発音が終了する時期（発音終了時期）と、を決定する動作をコンピュータ装置に実行させる手順である。
【０１０４】
発音期間調整手順３３は、音声素片データの基となった一音節発音記号データが含む母音である音声素片の発音開始時期と、この一音節発音記号データが関連付けられた音符データが表す音の発音開始時期と、が一致するように、各音声素片データが表す音声素片が発音される期間をそれぞれ調整する。
【０１０５】
上述したように、音声素片データは、歌声の各音声素片に対応する部分をそれぞれ表すデータであって、所定の微小な時間における歌声の周波数成分を表すデータを時系列的に複数含んだデータである。従って、発音期間調整手順３３は、音声素片データの一部を、適宜、削除したり複製したりすることにより、同音声素片データを調整し、以って、同音声素片データが表す音声素片が発音される期間を変更する。
【０１０６】
音量調整手順３４は、上記発音期間調整手順３３により調整された音声素片データと、上記歌データ入力部２０によりＲＡＭ１３に記憶され同音声素片データの基となった一音節発音記号データが関連付けられた音符データと、に基づいて同音声素片データが表す音の大きさが所定の大きさと一致するように同音声素片データを調整する動作をコンピュータ装置に実行させる手順である。
【０１０７】
音声素片接続手順３５は、上記音量調整手順３４により調整された複数の音声素片データを接続することにより、基本歌声データを生成する動作をコンピュータ装置に実行させる手順である。
【０１０８】
ビブラート付与手順３６は、上記ビブラート設定部２３により音符データに関連付けてＲＡＭ１３に記憶されたビブラート・データに従って、上記音声素片接続手順３５により生成された基本歌声データが表す音の高さ又は音の大きさを周期的に変化させることにより歌声データを生成する動作をコンピュータ装置に実行させる手順である。ビブラート付与手順３６は、生成された歌声データが表す音をサウンドシステム１５ａに出力させる。
【０１０９】
以上説明したように、歌唱合成プログラムは、上記コンピュータ装置に実行されることにより、ユーザが所望する歌データに基づいて合成された歌声を模擬した音を同ユーザに聴かせることができるようになっている。
【０１１０】
（第１の関連付け中止条件が満足される場合）
一方、ユーザが、文字列データの入力を誤り、文字列「ｓｅｐｔｅｎｂｅｒ」を表す文字列データを入力した後、エンターキーを押し込んだ場合について説明する。この場合、音節毎分割データベースＯＢＤＢが、文字列「ｓｅｐｔｅｎｂｅｒ」を表す文字列データに対応する音節毎分割データを含んでいないので、ＣＰＵ１１は、上記音節毎分割文字列取得手順２２ｂにより同音節毎分割データを取得することができない。
【０１１１】
従って、ＣＰＵ１１が、上記第１判定ステップの処理を行うと、ＣＰＵ１１は、同第１判定ステップにて「Ｙｅｓ」と判定する。
【０１１２】
そして、ＣＰＵ１１は、文字列割付け手順２２ｃに従って、入力された文字列データを音符データに関連付けて歌詞データの一部としてＲＡＭ１３に記憶させることなく、入力された文字列データと、音符データと、が関連付けられなかったことをユーザに通知する図示しない画像を表示器１７ａに表示させる。これにより、入力文字列が誤った音節の区切りにて分割されることを防止することができる。
【０１１３】
（第２の関連付け中止条件が満足される場合）
また、ユーザが、図９に示したように、音符図形Ｎ１及び音符図形Ｎ２にそれぞれ対応する音符データを入力し、同音符データが表す音符の後に連続する音符を表す音符データを入力せずに、音符図形Ｎ１に対応する音符データ（選択音符データ）に対応付けて文字列「ｓｅｐｔｅｍｂｅｒ」を表す文字列データを入力した後、エンターキーを押し込んだ場合について説明する。
【０１１４】
この場合、文字列「ｓｅｐｔｅｍｂｅｒ」の音節の数は３つであり、一方、所定以降音符としての選択以降音符は、音符図形Ｎ１及び音符図形Ｎ２がそれぞれ表す２つの音符のみである。従って、ＣＰＵ１１が、上記第２判定ステップの処理を行うと、ＣＰＵ１１は、同第２判定ステップにて「Ｙｅｓ」と判定する。
【０１１５】
そして、ＣＰＵ１１は、入力された文字列データを音符データに関連付けて歌詞データの一部としてＲＡＭ１３に記憶させることなく、入力された文字列データと、音符データと、が関連付けられなかったことをユーザに通知する図示しない画像を表示器１７ａに表示させる。これにより、選択以降音符の数が、入力文字列音節数より少ないとき、入力された文字列データと音符データとが不適切に関連付けられることを防止することができる。
【０１１６】
（第３の関連付け中止条件が満足される場合）
一方、ユーザが、図１０に示したように、音符図形Ｎ１〜Ｎ３にそれぞれ対応する音符データを入力し、音符図形Ｎ１に対応する音符データ（選択音符データ）に対応付けて文字列「ｓｅｐｔｅｍｂｅｒ」を表す文字列データを入力した後、エンターキーを押し込んだ場合について説明する。
【０１１７】
この場合、文字列「ｓｅｐｔｅｍｂｅｒ」の音節数は、３つである。従って、割付け予定音符は、音符図形Ｎ１〜Ｎ３がそれぞれ表す音符である。これらの割付け予定音符のうち、音符図形Ｎ２が表す音符と音符図形Ｎ３が表す音符との間（連続する２つの音符の間）には、所定の期間である２拍より長い３拍の発音停止期間が存在している。従って、ＣＰＵ１１が、上記第３判定ステップの処理を行うと、ＣＰＵ１１は、同第３判定ステップにて「Ｙｅｓ」と判定する。
【０１１８】
そして、ＣＰＵ１１は、入力された文字列データを音符データに関連付けて歌詞データの一部としてＲＡＭ１３に記憶させることなく、入力された文字列データと、音符データと、が関連付けられなかったことをユーザに通知する図示しない画像を表示器１７ａに表示させる。これにより、割付け予定音符のうちの連続する２つの音符間に所定の期間より長い発音停止期間が存在するとき、入力された文字列データと音符データとが不適切に関連付けられることを防止することができる。
【０１１９】
（関連付け変更禁止操作）
一方、ユーザが、図１１に示したように、音符図形Ｎ１〜Ｎ４にそれぞれ対応する音符データを入力するとともに、音符図形Ｎ３及び音符図形Ｎ４にそれぞれ対応する音に合わせて文字列「ｂａｂｙ」を発音させる歌声を合成させるために音符図形Ｎ３に対応する音符データに対応付けて文字列「ｂａｂｙ」を表す文字列データを入力し、その結果、一音節文字列Ｃ３及び一音節文字列Ｃ４をそれぞれ表す一音節文字列データ並びに一音節発音記号Ｐ３及び一音節発音記号Ｐ４をそれぞれ表す一音節発音記号データが、音符図形Ｎ３及び音符図形Ｎ４にそれぞれ対応する音符データと関連付けてＲＡＭ１３に記憶されている場合において、同ユーザが、同関連付けが変更されることを希望しない場合について説明する。
【０１２０】
この場合、ユーザは、キーボード１６ａ及びマウス１６ｂを操作することにより、音符図形Ｎ３及び音符図形Ｎ４を選択状態にする。更に、ユーザは、関連付け変更禁止フラグを、選択状態にされた音符図形Ｎ３及び音符図形Ｎ４にそれぞれ対応する音符データに関連付けるための所定の操作を行う。関連付け変更禁止フラグは、音符データと同音符データに関連付けて記憶された一音節文字列データ及び一音節発音記号データとの関連付けの変更を禁止することを表すフラグである。
【０１２１】
これにより、ＣＰＵ１１は、関連付け変更禁止手順２４に従って、選択状態にされた音符図形Ｎ３及び音符図形Ｎ４にそれぞれ対応する音符データと、関連付け変更禁止フラグと、を関連付けてＲＡＭ１３に記憶させる。
【０１２２】
このように、関連付け変更禁止手順２４は、ユーザの操作に従って、上記文字列割付け手順２２ｃにより関連付けてＲＡＭ１３に記憶された一音節文字列データ及び一音節発音記号データと音符データとの関連付けの変更を禁止する関連付け変更禁止フラグを、同音符データに関連付けてＲＡＭ１３に記憶させる手順を含んでいる。即ち、関連付け変更禁止手順２４は、関連付け変更禁止動作をコンピュータ装置に実行させる手順を構成している。
【０１２３】
そして、ＣＰＵ１１は、関連付け変更禁止手順２４に従って、関連付け変更禁止フラグと関連付けて記憶されていない音符データに対応する音符図形（音符図形Ｎ１及び音符図形Ｎ２）と、同音符図形を描く線より太い線にて描かれた関連付け変更禁止フラグと関連付けて記憶された音符データに対応する音符図形（音符図形Ｎ３及び音符図形Ｎ４）と、を含む画像を表示器１７ａに表示させる（図１２を参照。）。
【０１２４】
このように、関連付け変更禁止手順２４は、関連付け変更禁止フラグと関連付けて記憶された音符データ（関連付け変更禁止音符データ）が表す音符を、「関連付け変更禁止フラグと関連付けて記憶されていない音符データ（通常音符データ）が表す音符を示す通常音符図形とは異なる態様の図形（関連付け変更禁止音符図形）」にて表現した画像を表示器１７ａに表示させる手順を含んでいる。本例では、関連付け変更禁止音符図形は、通常音符図形の外郭線をより太い線にて描いた図形である。
【０１２５】
（第４の関連付け中止条件が満足される場合）
この状態において、ユーザが、図１２に示したように、音符図形Ｎ１に対応する音符データ（選択音符データ）に対応付けて文字列「ｓｅｐｔｅｍｂｅｒ」を表す文字列データを入力した後、エンターキーを押し込んだ場合について説明する。
【０１２６】
この場合、割付け予定音符を表す音符データとしての音符図形Ｎ１〜Ｎ３にそれぞれ対応する音符データのうち、音符図形Ｎ３に対応する音符データは、関連付け変更禁止フラグと関連付けてＲＡＭ１３に記憶されている。従って、ＣＰＵ１１が、上記第４判定ステップ（割付け予定音符が、関連付け変更禁止音符を含むか否かを判定するステップ）の処理を行うと、ＣＰＵ１１は、同第４判定ステップにて「Ｙｅｓ」と判定する。
【０１２７】
その結果、ＣＰＵ１１は、入力された文字列データを音符データに関連付けて歌詞データの一部としてＲＡＭ１３に記憶させることなく、入力された文字列データと、音符データと、が関連付けられなかったことをユーザに通知する図示しない画像を表示器１７ａに表示させる。これにより、ユーザが、既に記憶されている関連付けの変更を希望しないとき、上記文字列割付け手順２２ｃの手順により、同関連付けが変更されることを防止することができる。
【０１２８】
以上説明したように、本発明による歌データ入力プログラムの実施形態によれば、ユーザが入力する歌詞としての文字列を表す文字列データを１つの音節からなる一音節文字列を表す一音節文字列データに分割して入力しなくとも、同入力された文字列データが表す文字列である入力文字列が音節毎に分割されることにより一音節文字列データが自動的に生成される。従って、ユーザは、文字列の音節の区切りを意識することなく歌詞データとしての文字列データの入力を行うことができる。
【０１２９】
更に、上記実施形態によれば、前記生成された複数の一音節文字列データが、選択された所定の音符データとしての選択音符データ及び同選択音符データが表す音符の後に連続する後続音符を表す音符データに、それぞれ１つずつ自動的に関連付けて記憶される。これにより、ユーザは、１つの音符データに対応付けて複数の音節からなる文字列を表す文字列データを入力するだけで、複数の音符データと、複数の一音節文字列データと、をそれぞれ１つずつ互いに関連付けて記憶させることができる。これらの結果、ユーザは歌詞データを迅速に入力することができる。
【０１３０】
なお、本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記実施形態においては、所定の音符データは、ユーザにより選択された選択音符データであったが、入力された旋律データを表す音符データのうちの最初に発音される音符に対応する音符データ等の予め定められた音符データであってもよい。
【０１３１】
また、上記実施形態においては、音節毎分割データベースＯＢＤＢは、英語の単語に関する音節毎分割データを格納していたが、英語の他、フランス語又はスペイン語等のヨーロッパ系諸言語や、日本語或いは韓国語等の他の言語の単語に関する音節毎分割データを格納していてもよい。
【０１３２】
また、音節毎分割データベースＯＢＤＢは、複数の言語の単語に関する音節毎分割データを言語毎にそれぞれ格納する複数のデータベースを備えていてもよい。この場合、歌唱合成プログラムは、音節毎分割データベースＯＢＤＢが備える複数のデータベースのうち、ユーザにより選択された言語に対応するデータベースを検索する動作をコンピュータ装置に実行させるように構成されていることが好適である。
【０１３３】
更に、上記実施形態においては、音節毎分割データは、音節毎分割文字列データと音節毎分割発音記号データとからなっていたが、更に、音節毎分割文字列データが表す音節毎分割文字列から区切り記号を除去することにより取得されるデータベース検索用文字列を表す検索文字列データを含んでいてもよい。これにより、所望の文字列データに対応する音節毎分割データを音節毎分割データベースＯＢＤＢから迅速に検索することができる。
【０１３４】
また、音節毎分割文字列においては、音節の区切りは、区切り記号により表されていたが、文字列の先頭から音節の区切りまでの文字数により表されていてもよい。即ち、音節毎分割データは、音節毎分割文字列「ｓｅｐ−ｔｅｍ−ｂｅｒ」を表す音節毎分割文字列データに代えて、文字列「ｓｅｐｔｅｍｂｅｒ」を表す文字列データと音節区切り情報「３、６」を表す音節区切りデータとを含んでいてもよい。
【０１３５】
加えて、歌唱合成プログラムは、複数の単語が単語毎に空白により区切られた文字列を表す文字列データがコンピュータ装置に入力されたとき、入力された文字列データが表す文字列を空白により分割することにより、１つの単語からなる一単語文字列を表す一単語文字列データを複数生成し、上記音節毎分割文字列取得手順２２ｂ及び上記文字列割付け手順２２ｃに従って、同生成された複数の一単語文字列データのそれぞれに基づいて得られる一音節文字列データと音符データとを１つずつ関連付けて記憶する動作をコンピュータ装置に実行させるように構成されていてもよい。これにより、ユーザは、複数の単語からなる文字列を表す文字列データを一括してコンピュータ装置に入力することができるので、歌詞データを極めて迅速に入力することができる。
【０１３６】
また、上記実施形態においては、コンピュータ装置は、ユーザがマウス１６ｂを操作することにより音符データが入力されるように構成されていたが、相互に通信可能に接続された電子楽器を備え、ユーザが同電子楽器を演奏することにより音符データが入力されるように構成されていてもよい。また、コンピュータ装置は、相互に通信可能に接続されたサーバにより音符データ又は文字列データが配信されることにより、同配信された音符データ又は文字列データが入力されるように構成されていてもよい。
【図面の簡単な説明】
【０１３７】
【図１】本発明の実施形態に係る歌唱合成プログラムを実行するコンピュータ装置の概略構成を表すブロック図である。
【図２】本発明の実施形態に係る歌唱合成プログラムの手順を示した機能ブロック図である。
【図３】本発明の実施形態に係る歌唱合成プログラムの実行が開始されたときに、図１の表示器に表示される画像を説明するための図である。
【図４】ユーザにより音符データが入力されたときに、図１の表示器に表示される画像を説明するための図である。
【図５】ユーザにより音符データが入力されたときに、図１の表示器に表示される画像を説明するための図である。
【図６】ユーザにより文字列データが入力されたときに、図１の表示器に表示される画像を説明するための図である。
【図７】一音節文字列データ及び一音節発音記号データが音符データと関連付けて記憶されたときに、図１の表示器に表示される画像を説明するための図である。
【図８】ユーザの操作により音符データとビブラート・データとが互いに関連付けて記憶されたときに、図１の表示器に表示される画像を説明するための図である。
【図９】ユーザにより文字列データが入力されたときに、図１の表示器に表示される画像を説明するための図である。
【図１０】ユーザにより文字列データが入力されたときに、図１の表示器に表示される画像を説明するための図である。
【図１１】一音節文字列データ及び一音節発音記号データが音符データと関連付けて記憶されたときに、図１の表示器に表示される画像を説明するための図である。
【図１２】ユーザの操作により音符データと関連付け変更禁止フラグとが互いに関連付けて記憶されたときに、図１の表示器に表示される画像を説明するための図である。
【符号の説明】
【０１３８】
１０…バス、１１…ＣＰＵ、１２…フラッシュ・メモリ、１３…ＲＡＭ、１４…補助記憶装置、１５…音源回路、１５ａ…サウンドシステム、１６…入出力インターフェース、１６ａ…キーボード、１６ｂ…マウス、１７…表示制御回路、１７ａ…表示器、２０…歌データ入力部、２１…旋律データ入力部、２２…歌詞データ入力部、２２ａ…文字列音符関係付け手順、２２ｂ…音節毎分割文字列取得手順、２２ｃ…文字列割付け手順、２３…ビブラート設定部、２４…関連付け変更禁止手順、３０…歌声合成部、３１…音声素片データ取得手順、３２…音高調整手順、３３…発音期間調整手順、３４…音量調整手順、３５…音声素片接続手順、３６…ビブラート付与手順、ＯＢＤＢ…音節毎分割データベース、ＯＳＤＢ…音声素片データベース。
【図１】
2006258846.tif 000003
【図２】
2006258846.tif 000004
【図３】
2006258846.tif 000005
【図４】
2006258846.tif 000006
【図５】
2006258846.tif 000007
【図６】
2006258846.tif 000008
【図７】
2006258846.tif 000009
【図８】
2006258846.tif 000010
【図９】
2006258846.tif 000011
【図１０】
2006258846.tif 000012
【図１１】
2006258846.tif 000013
【図１２】
2006258846.tif 000014