(57)【要約】【課題】指示されたタイミングで音声合成する場合の諸問題を解決する。【解決手段】歌唱合成装置１は、発声を指示する指示部２０と、音符に対応付けられた歌詞データを演奏の進行よりも先んじてバッファ１２４に格納するバッファ格納部１２２と、発生の指示がある毎にバッファ１２４から歌詞データを時系列順に読み出すバッファ読出部１２６と、読み出された歌詞データに基づく音声信号を指定された音高で合成する音声合成部１２８と、を具備する。【選択図】図２
2014062969.tif 000002
【特許請求の範囲】
【請求項１】
発声を指示する指示部と、
音符に対応付けられた歌詞データを演奏の進行よりも先んじてバッファに格納するバッファ格納部と、
前記指示部による指示がある毎に前記バッファから前記歌詞データを時系列順に読み出すバッファ読出部と、
前記バッファ読出部により読み出された歌詞データに基づく音声信号を指定された音高で合成する音声合成部と、
を具備することを特徴とする歌唱合成装置。
【請求項２】
前記演奏が予め定められた地点に到達する前に、当該地点よりも後の歌詞データが読み出しの対象になっているとき、
前記バッファ読出部は、前記演奏が前記地点に到達するまで、当該地点よりも後の歌詞データの読み出しを禁止する
ことを特徴とする請求項１に記載の歌唱合成装置。
【請求項３】
前記演奏が前記地点に到達する前に、当該地点よりも後の歌詞データが読み出しの対象になっている場合に、前記指示部による指示があったとき、
前記音声合成部は、前記バッファ読出部によって最後に読み出された歌詞データに基づく音声信号を、指定された音高で再度合成する
ことを特徴とする請求項２に記載の歌唱合成装置。
【請求項４】
前記指示部は、前記発声の指示とともに、合成する音声信号の音高を指定するものであり、
前記演奏の進行にしたがった楽音信号を合成する楽音合成部と、
前記楽音信号と、前記指示部により指定された音高で合成された音声信号とを混合するミキシング部と、
を有することを特徴とする請求項１乃至３のいずれかに記載の歌唱合成装置。
【請求項５】
コンピューターを、
音符に対応付けられた歌詞データを演奏の進行よりも先んじてバッファに格納するバッファ格納部と、
発声の指示がある毎に前記バッファから前記歌詞データを時系列順に読み出すバッファ読出部、および、
前記バッファ読出部により読み出された歌詞データに基づく音声信号を指定された音高で合成する音声合成部、
として機能させることを特徴とする歌唱合成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、歌唱音声を合成する歌唱合成装置および歌唱合成プログラムに関する。
【背景技術】
【０００２】
従来より、歌唱音声を次のようにして合成する技術が提案されている。すなわち、歌詞等の目的の発音文字に応じて選択された複数の音声素片を相互に接続することによって、音声信号を生成する素片接続型の技術が提案されている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２４０５６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、近年では、このような音声を、リアルタイムで、すなわちプレイヤーの操作による指示に応じたタイミングで合成しようとする試みもなされつつある。
本発明は、上述した事情に鑑みてなされたもので、その目的の一つは、指示されたタイミングで音声合成する場合の問題を解決する技術を提供することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するために本発明に係る歌唱合成装置は、発声を指示する指示部と、音符に対応付けられた歌詞データを演奏の進行よりも先んじてバッファに格納するバッファ格納部と、前記指示部による指示がある毎に前記バッファから前記歌詞データを時系列順に読み出すバッファ読出部と、前記バッファ読出部により読み出された歌詞データに基づく音声信号を指定された音高で合成する音声合成部と、を具備することを特徴とする。
本発明では、音符に対応付けられた歌詞データが演奏の進行よりも先行してバッファに格納される一方、指示部による発声が指示される毎に時系列順、すなわち音符の順に読み出されて、読み出された歌詞データに基づく音声信号が指定された音高で合成される。したがって、本発明によれば、バッファに歌詞データの１曲分を格納する構成と比較して、バッファに要求される容量を少なく済ませることができるとともに、演奏の進行に応じて指示したタイミングにて、音声合成による歌唱が可能になる。
【０００６】
本発明において、前記演奏が予め定められた地点に到達する前に、当該地点よりも後の歌詞データが読み出しの対象になっているとき、前記バッファ読出部は、前記演奏が前記地点に到達するまで、当該地点よりも後の歌詞データの読み出しを禁止する構成としても良い。この構成によれば、演奏の進行に対し、音声合成による歌唱が先行してしまうのを防止することができる。
【０００７】
この構成において、前記演奏が前記地点に到達する前に当該地点よりも後の歌詞データが読み出しの対象になっている場合に、前記指示部による指示があったとき、前記音声合成部は、前記バッファ読出部によって最後に読み出された歌詞データに基づく音声信号を、指定された音高で再度合成しても良い。これによれば、指示部による指示によって音声合成による歌唱をアレンジさせることが可能になる。
【０００８】
なお、本発明において、前記指示部は、前記発声の指示とともに、合成する音声信号の音高を指定するものであり、前記演奏の進行にしたがった楽音信号を合成する楽音合成部と、前記楽音信号と、前記指示部により指定された音高で合成された音声信号とを混合するミキシング部と、を有する構成としても良い。この構成によれば、楽音信号に基づく演奏と音声合成した歌唱とが混合される。
また、本発明は、歌唱合成装置のみならず、コンピューターを当該歌唱合成装置として機能させるプログラムでも概念することが可能である。
【図面の簡単な説明】
【０００９】
【図１】第１実施形態に係る歌唱合成装置のシステム構成を示す図である。
【図２】同歌唱合成装置で構築される機能ブロック図である。
【図３】同歌唱合成装置における歌詞データ等を示す図である。
【図４】同歌唱合成装置における格納処理を示すフローチャートである。
【図５】同歌唱合成装置における読出処理を示すフローチャートである。
【図６】同歌唱合成装置における動作例を示す図である。
【図７】第２実施形態に係る歌唱合成装置で構築される機能ブロック図である。
【図８】同歌唱合成装置で定められる設定地点を示す図である。
【図９】同歌唱合成装置における読出処理を示すフローチャートである。
【図１０】同歌唱合成装置における動作例を示す図である。
【図１１】第３実施形態における読出処理を示すフローチャートである。
【図１２】同歌唱合成装置における動作例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面を参照して説明する。
【００１１】
＜第１実施形態＞
図１は、実施形態に係る歌唱合成装置１のシステム構成例を示す図である。
この図に示されるように、歌唱合成装置１は、コンピューター１０に指示部２０とスピーカー３０とを接続した構成となっている。このうち、コンピューター１０には、音声合成用のアプリケーションプログラムがインストールされるとともに、音声合成用データや、楽曲データなどが予め格納されている。
指示部２０は、８８鍵からなる鍵盤２２を含み、鍵の操作に応じた情報を例えばＭＩＤＩ（Musical Instrument Digital Interface）規格に準拠して出力する。鍵の操作に応じた情報には、例えば押鍵が発生したことを示す情報（キーオンデータ）や、当該鍵の音高（ノートデータ）などが含まれる。なお、本実施形態において歌詞に基づく音声合成（歌唱）の指示は、プレイヤーが演奏の進行に合わせて歌詞パートの旋律にしたがって鍵を操作することに行われる。
【００１２】
図２は、歌唱合成装置１の構成を示すブロック図である。コンピューター１０では、上記アプリケーションプログラムをＣＰＵが実行することによって、シーケンサー１１０、楽音合成部１１８、バッファ格納部１２２、バッファ読出部１２６、音声合成部１２８およびミキサー１４０の機能ブロックが構築される。
この歌唱合成装置１では、複数の楽曲データがディスクドライブなどの記憶部１０２に格納されている。楽曲データは、楽曲の伴奏音を１以上のトラックで規定する伴奏データと、歌詞を示す歌詞データとの組から構成される。ここで、プレイヤーが所望の楽曲を選択すると、当該楽曲の伴奏データがシーケンサー１１０にセットされる一方、当該楽曲の歌詞データがバッファ格納部１２２にセットされる構成となっている。
【００１３】
シーケンサー１１０は、セットされた楽曲の伴奏データを解釈して、発生すべき楽音を規定する楽音情報を、演奏の開始時から演奏の進行に合わせて時系列の順で出力する。ここで、伴奏データとして例えばＭＩＤＩ規格に準拠したものが用いられる場合、当該伴奏データはイベントと、イベント同士の時間間隔を示すデュレーションとの組み合わせで規定される。このため、シーケンサー１１０は、デュレーションで示される時間が経過する毎にイベントを示すデータを楽音情報として出力することになる。つまり、シーケンサー１１０が楽曲の伴奏データを解釈することで当該楽曲の自動演奏が行われる。
また、シーケンサー１１０は、楽音情報を出力するとともに、演奏開始からのデュレーションの積算値を出力する。この積算値によって、演奏の進行状態、すなわち楽曲のどの部分が演奏されているか把握することができる。
楽音合成部１１８は、いわゆる音源であり、シーケンサー１１０から供給される楽音情報にしたがって伴奏音の波形を示す楽音信号を合成する。
なお、本実施形態においては必ずしも伴奏演奏を音として出力する必要はないので、楽音合成部１１８は必須ではない。また、シーケンサー１１０もデュレーションの積算値を出力できれば良いので、楽音情報を出力することは必須ではない。
【００１４】
バッファ格納部１２２は、セットされた楽曲の歌詞データをデュレーションの積算値、すなわち演奏の進行に合わせて記憶部１０２から読み出してバッファ１２４に格納する。バッファ１２４は、コンピューター１０のメモリーに割り当てられた一時記憶領域である。バッファ読出部１２６は、指示部２０から押鍵されたことを示すキーオンデータが供給されたときにバッファ１２４から歌詞データを１音符分読み出す。
ライブラリ１３０には、単一の音素や音素から音素への遷移部分など、歌唱音声の素材となる各種の音声素片の波形を定義した音声素片データが予めデータベース化して登録されている。
音声合成部１２８は、読み出された歌詞データの１音符分の文字を指示部２０から供給されたノートデータの音高で、ライブラリ１３０に登録された音声素片データを用いて音声合成して、歌唱音声の波形を示す音声信号として出力する。
【００１５】
ミキサー１４０は、楽音合成部１１８による楽音信号と歌唱合成部１２８による音声信号とをミキシングする。このため、ミキサー１４０がミキシング部として機能する。Ｄ／Ａ変換部１４２は、ミキシングされた信号をアナログ変換して出力し、外部スピーカー３０は、アナログ変換された信号を内蔵アンプにより適宜増幅した後、音響変換して放音する。
【００１６】
図３は、歌詞データの一例を示す図である。この図の例では、楽曲として「さくら」の歌詞データが旋律（歌詞の上に表示された楽譜）とともに示されている。
歌詞データは、歌詞を示す文字情報であり、歌唱に対応した文字（文字列を含む。以下同じ）が図において破線で区切られて旋律の音符に対応付けられている。また、この例では、１つの音符に１つ文字が割り当てられているが、曲（歌詞）によっては、１つの音符に対して複数の文字が割り当てられる場合もある。
この例において、歌詞データは、１〜４小節分が第１ブロック、５〜８小節分が第２ブロック、９〜１２小節分が第３ブロック、１３および１４小節分が第４ブロックとして、それぞれ分割されている。このブロックは、バッファ格納部１２２によってバッファ１２４に格納される単位である。
なお、「さくら」の著作権の保護期間は、我が国の著作権法第５１条及び第５７条の規定によりすでに満了している。
【００１７】
次に、本実施形態に係る歌唱合成装置１における動作について説明する。この実施形態では、プレイヤーの操作などに応じて、コンピューター１０又は指示部２０から演奏開始が指示されると、第１に、演奏の進行に合わせて楽音信号を合成する楽音信号合成処理と、第２に、バッファ１２４に歌詞データをブロック単位で格納する格納処理と、第３に、指示部２０の鍵操作に応じて歌詞データの文字を読み出す読出処理と、が互いに独立して実行される。
このうち、楽音信号合成処理は、シーケンサー１１０が演奏の進行に合わせて楽音情報を供給する一方、楽音合成部１１８が当該楽音情報に基づいて楽音信号を合成する処理であって、この処理自体は周知である（例えば特開平７−１９９９７５号公報等参照）。このため、楽音信号合成処理の詳細については説明を省略し、以下においては、格納処理と読出処理とについて説明する。
【００１８】
図４は、格納処理を示すフローチャートである。
演奏開始が指示されると、バッファ格納部１２２は、歌詞データのうちの第１ブロックをバッファ１２４に格納する（ステップＳａ１１）。次に、バッファ格納部１２２は、変数ｎに初期値の「２」をセットし（ステップＳａ１２）、現時点において進行している演奏箇所が第ｎ番目のセット地点に達しているか否か、つまり、演奏が当該セット地点の歌唱位置に対応する位置に達しているか否かを判別する（ステップＳａ１３）。ここで、第ｎ番目のセット地点とは、歌詞データにおける第ｎブロックの終了点よりも時間軸において手前となるように楽曲毎に予め定められた地点である。
図３の例でいえば、第２ブロックのセット地点Ｐ２は４小節目の開始点に設定され、第３ブロックのセット地点Ｐ３は８小節目の開始点に設定され、第４ブロックのセット地点Ｐ４は１２小節目の開始点に設定される。
なお、第１ブロックのセット地点Ｐ１は、楽曲の開始地点であり、すでにステップＳａ１１で処理済であるので、変数ｎに応じて次のステップＳａ１３〜Ｓａ１６の処理を実行するにあたってｎの初期値は「１」ではなく「２」としている。
【００１９】
演奏が進行している地点が第ｎブロックのセット地点に達していない場合（ステップＳａ１３の判別結果が「Ｎｏ」である場合）、処理手順がステップＳａ１３に戻る。一方、演奏進行地点が第ｎブロックのセット地点に達したとき（ステップＳａ１３の判別結果が「Ｙｅｓ」になるとき）、バッファ格納部１２２は、歌詞データのうち第ｎのブロックをバッファ１２４に格納する（ステップＳａ１４）。
この後、バッファ格納部１２２は現時点における変数ｎが最大値であるか否かを判別する（ステップＳａ１５）。ここで、変数ｎの最大値とは、歌詞データのブロック個数であり、図３の例でいえば「４」である。 変数ｎが最大値であれば（ステップＳａ１５の判別結果が「Ｙｅｓ」であれば）、この楽曲についての格納処理は終了する。
一方、変数ｎが最大値でなければ（ステップＳａ１５の判別結果が「Ｎｏ」であれば）、バッファ格納部１２２は、変数を「１」だけインクリメントして（ステップＳａ１６）、処理手順をステップＳａ１３に戻す。
【００２０】
このような格納処理によれば、歌詞データの各ブロックのそれぞれは演奏の進行に対して先んじたタイミングでバッファ１２４に格納される。バッファ１２４に格納された歌詞データを、指示部２０による指示にしたがって読み出して音声信号を合成するための処理が、次の読出処理である。
【００２１】
図５は、読出処理を示すフローチャートである。
まず、演奏開始が指示されると、バッファ読出部１２６は、バッファ１２４に対する歌詞データの読出ポインタを先頭の音符にセットする（ステップＳｂ１１）。図３の例でいえば、符号Ｓｔが付された音符である。
次に、バッファ読出部１２６は、鍵盤２２で押鍵が発生したか否か、具体的には指示部２０からキーオンデータが供給されたか否かを判別する（ステップＳｂ１２）。
押鍵が発生していなければ（ステップＳｂ１２の判別結果が「Ｎｏ」であれば）、処理手順が再びステップＳｂ１２に戻る。一方、押鍵が発生したとき（ステップＳｂ１２の判別結果が「Ｙｅｓ」となったとき）、バッファ読出部１２６は、現時点においてセットされている読出ポインタの音符に対応した文字をバッファ１２４から読み出して歌唱合成部１２８に供給する（ステップＳｂ１３）。図３の例において読出ポインタが音符Ｓｔにセットされている場合に、「さ」の文字がバッファ１２４から読み出されて歌唱合成部１２８に供給される。
【００２２】
続いて、バッファ読出部１２６は、読出ポインタが歌詞データの最終音符、図３の例でいえば符号Ｅｎｄが付された音符であるか否かを判別する（ステップＳｂ１４）。この判別結果が「Ｙｅｓ」であれば、歌唱パートが終了してバッファ１２４から読み出すべき歌詞データが存在しないことを示すので、この楽曲についての読出処理は終了する。
一方、この判別結果が「Ｎｏ」であれば、バッファ読出部１２６は、歌詞データの読出ポインタを次の音符にセットして（ステップＳｂ１５）、処理手順をステップＳｂ１２に戻す。これにより、押鍵が発生すると、読出ポインタの音符に対応した文字がバッファ１２４から読み出されて歌唱合成部１２８に供給された後、次の押鍵に備えて読出ポインタが例えば図３に示されるように次の音符に移動させられる。
なお、バッファ１２４の記憶領域はリングバッファとして使用され、ステップＳｂ１３で読み出された文字の記憶領域は、次のブロックの格納（図４のステップＳａ１４）に利用される。したがって、バッファ１２４には、最大で１ブロックのセット地点以降の歌詞データと次の１ブロックの歌詞データとが格納されることになるので、それに相当するデータ量が十分格納可能な容量があれば良い。また、バッファ１２４はリングバッファ形式である必要はなく、ＦＩＦＯ形式等他の形式であっても良い。
【００２３】
音声合成部１２８は、押鍵によって供給された歌詞データの文字で示される音素列を音声素片の列に変換し、これらの音声素片に対応する音声素片データをライブラリ１３０から選択して接続するとともに、接続した音声素片データに対して各々のピッチを指示部２０から供給されたノートデータに合わせて変換して、歌唱音声の波形を示す音声信号を合成する。このため、押鍵されたときに、当該押鍵によって読み出された文字が指定された音高で音声合成されることになる。
なお、図３の例において、スラーのように複数の音符列にまたがって文字が対応付けられている箇所では、当該音符列における最初の音符に対応した押鍵の操作によって当該文字が読み出され、当該音符列における２番目以降の音符に対応した押鍵の操作では当該文字に対応して合成した音声（当該文字の母音）の音高を当該鍵のノートに応じて変更する処理となる。
【００２４】
図６は、本実施形態における具体的な動作を示す図である。
この図では、「さくら」（図３参照）が楽曲として選択された場合において、プレイヤーが、伴奏音を聞きながら演奏の進行に合わせて旋律における「ラ」の鍵を矩形状の枠５１において横方向の長さで示される時間分押下したときに、「さ」が当該期間分、音声合成されることを示している。同様にして縦方向で音高が規定される鍵を、プレイヤーが枠５２〜５７で示されるように押下したときに、「く」、「ら」、「さ」、「く」、「ら」、「や」が順番に音声合成されることを示している。
なお、例えば、枠５３ではなく、旋律の「シ」とは異なる「ファ」の鍵が押下されたとき、音声合成部１２８には、歌詞データの文字である「ら」とともに、当該鍵のノートデータとして「ファ」が供給されるので、「ら」の歌詞は「ファ」の音高で合成される。
【００２５】
本実施形態によれば、歌詞データの各ブロックのそれぞれが演奏の進行に対し先行したタイミングでバッファ１２４に順次格納されるので、バッファ１２４に歌詞データの１曲分を格納する構成と比較して、バッファ１２４に要求される容量は少なくて済む。また、バッファ１２４に格納された歌詞データは、指示部２０による発声が指示される毎に音符の順で読み出されて音声信号が合成される。このため、プレイヤーが演奏の進行に合わせて鍵操作することによって、音声合成による歌唱することが可能になる。
【００２６】
＜第２実施形態＞
第１実施形態では、音声合成による歌唱の指示が、プレイヤーが伴奏音に合わせて鍵盤２２を操作することによって行われるので、適切なタイミングで鍵盤２２が操作されないと、伴奏音に対しずれて歌唱されてしまう。そこで、この点を考慮した第２実施形態について説明する。
【００２７】
図７は、第２実施形態において構築される機能ブロックを示す図である。
この図において、第１実施形態（図２参照）と相違する点は、第１に、シーケンサー１１０から出力されるデュレーションの積算値がバッファ読出部１２６にも供給される点である。このため、第２実施形態ではバッファ読出部１２６が、バッファ格納部１２２と同様に演奏の進行状態を把握することができる構成となっている。第２実施形態では、第２に、バッファ読出部１２６が、バッファ１２４に格納された歌詞データをスキャニングして、当該歌詞データに予め定められた設定地点を特定する構成となっている。
【００２８】
図８は、設定地点の一例を示す図である。この図の例では、図３で示された「さくら」の歌詞データに対して設定地点Ｑが３小節目の開始点に１つ定められている状態を示している。
第２実施形態に係る歌唱合成装置１の動作にあっては、楽音信号合成処理および格納処理については第１実施形態と同様であるが、読出処理が第１実施形態と相違している。そこで、第２実施形態の動作については、読出処理を中心に説明する。
【００２９】
図９は、第２実施形態における読出処理を示すフローチャートである。
まず、演奏開始が指示されると、バッファ読出部１２６は、バッファ１２４に格納された第１ブロックの歌詞データをスキャニングして、当該歌詞データに予め定められた設定地点を特定する（ステップＳｂ１０１）。この後、バッファ読出部１２６は、読出ポインタを先頭の音符にセットし（ステップＳｂ１１）、鍵盤２２で押鍵が発生したか否かを判別する（ステップＳｂ１２）。
【００３０】
押鍵が発生したとき、バッファ読出部１２６は、現在の演奏箇所が設定地点よりも時間軸において前であるか否かを判別する（ステップＳｂ２０１）。演奏箇所が設定地点よりも前である場合、すなわち、演奏が設定地点に到達していない場合（ステップＳｂ２０１の判別結果が「Ｙｅｓ」である場合）、バッファ読出部１２６は、さらに現在の読出ポインタが設定地点よりも時間軸において後であるか否かを判別する（ステップＳｂ２０２）。ここで、読出ポインタは、第１実施形態と同様に歌詞の旋律における音符単位で移動し、当該音符には歌詞データ文字が対応付けられているので、歌詞データのうち、押鍵があったときに読み出しの対象を示すことになる。
読出ポインタが設定地点よりも後である場合、すなわち設定地点よりも後の歌詞データが読み出しの対象になっている場合（ステップＳｂ２０２の判別結果が「Ｙｅｓ」である場合）、バッファ読出部１２６は、当該設定地点よりも後に位置する読出ポインタの音符に対応した文字の読み出しを禁止する（ステップＳｂ２０３）。
【００３１】
したがって、現在の演奏箇所が設定地点よりも時間的に手前であって、読出ポインタが設定地点よりも時間的に過ぎているときには、押鍵が発生しても、当該押鍵に対応して歌詞データが読み出されないことになる。
この後、バッファ読出部１２６は、音声合成部１２８に対して音声合成の禁止を指示する（ステップＳｂ２０４）。このため、指示部２０で押鍵操作されても、発声しないことになる。
この後、処理手順がステップＳｂ１２に戻る。
【００３２】
一方、演奏箇所が設定地点よりも前でない場合（ステップＳｂ２０１の判別結果が「Ｎｏ」である場合）、または、読出ポインタが設定地点よりも後でない場合（ステップＳｂ２０２の判別結果が「Ｎｏ」である場合）、バッファ読出部１２６は、読出ポインタの音符に対応した文字の読み出しを解禁し（ステップＳｂ２１１）、音声合成部１２８に対して音声合成の禁止を指示していれば、音声合成についても解禁を指示する（ステップＳｂ２１２、Ｓｂ２１３）。
この後、バッファ読出部１２６は、現時点においてセットされている読出ポインタの音符に対応した文字をバッファ１２４から読み出して歌唱合成部１２８に供給し（ステップＳｂ１３）、読出ポイントが歌詞データの最終音符であるか否かを判別し（ステップＳｂ１４）。判別結果が「Ｙｅｓ」であれば、この楽曲についての読出処理が終了する一方、この判別結果が「Ｎｏ」であれば、バッファ読出部１２６は、歌詞データの読出ポインタを次の音符にセットして（ステップＳｂ１５）、処理手順をステップＳｂ１２に戻す。
【００３３】
図１０は、第２実施形態における具体的な動作を示す図である。
この図において、「さくら」（図８参照）が楽曲として選択された場合に、（ａ）は、演奏の進行に合致したタイミングで鍵盤を操作したときの動作を示しており、図６とは同一である。これに対して（ｂ）は、演奏の進行に対してやや早めて鍵を操作したときの動作を示している。
ここで、演奏箇所が設定地点Ｑよりも前であって、読出ポインタが設定地点Ｑよりも後である場合に、音符５７ｐに対応して「ラ」の音高の鍵がプレイヤーによって枠６１のようなタイミングで操作されても、音符５７ｐに対応した歌詞データは読み出されず（ステップＳｂ２０３）、発声も禁止されるので（ステップＳｂ２０４）、結果的に当該鍵の操作が無視される。このため、枠６１の×印で示されるように音声合成されない。再度、同一の鍵が枠６２のように操作されても、読出ポインタが設定地点Ｑよりも後であるので、当該鍵の操作が無視されて、音声合成されない。
やがて演奏が進行して設定地点Ｑより前でなくなった場合、音符５７ｐに対応した鍵が枠５７のように操作されると、禁止されていた歌詞データの読み出しが解禁されるとともに（ステップＳｂ２１１）、発声も解禁されるので（ステップＳｂ２１３）、当該鍵の操作によって「や」の歌詞が音声合成される。
なお、読出ポインタが設定地点Ｑよりも後でない場合に、第１実施形態と同様な処理となる。
【００３４】
このように第２実施形態によれば、演奏が設定地点Ｑに到達する前であって読出ポインタが設定地点Ｑよりも後である場合に、読出対象となっている歌詞データは、演奏が設定地点Ｑに到達するまで読み出されず、発声も禁止される一方、演奏が設定地点Ｑに到達すれば、再び鍵操作に応じて発声が可能になる。したがって、第２実施形態によれば、不適切な鍵操作によって演奏に対して歌唱がずれてしまっても、設定地点において再び一致させた状態から再開させることができる。
【００３５】
なお、第２実施形態では、設定地点を１箇所としたが複数箇所に設けても良い。また、設定地点を歌詞データに設けたが、演奏の進行に応じた地点を特定できれば良いので、伴奏データに設けても良い。伴奏データに設けるとき、バッファ読出部１２６は、シーケンサー１１０にセットされた設定地点が設けられた伴奏データをスキャニングして、設定地点を特定することになる（ステップＳｂ１０１）。
【００３６】
＜第３実施形態＞
第１実施形態では、音符に対応付けられた歌詞データが、鍵盤２２に対する操作の順に読み出されるので、図６において枠５３ｂのような鍵の操作により音高を異ならせる程度でしか、歌唱をアレンジすることができない。そこで、この点を考慮した第３実施形態について説明する。
この第３実施形態において構築される機能ブロックについては、図７に示した第２実施形態と同様であり、歌詞データについても、設定地点が定められている点において第２実施形態と同様である。第３実施形態に係る歌唱合成装置１では、第２実施形態と比較して読出処理が相違している。
【００３７】
図１１は、第３実施形態における読出処理を示すフローチャートである。
この図１１が、図９と相違する点は、第１に図９におけるステップＳｂ２０３の後のＳｂ２０４がステップＳｂ２０５に置き換わった点、および、第２に図９におけるステップＳｂ２１２、Ｓｂ２１３がなくなった点にある。
詳細には、押鍵が発生して、現在の演奏箇所が設定地点よりも時間的に手前であって、読出ポインタが設定地点よりも時間的に過ぎているとき、バッファ読出部１２６は、当該設定地点よりも後に位置する読出ポインタの音符に対応した文字の読み出しを禁止する（ステップＳｂ２０３）までは第２実施形態と同様であるが、この後、バッファ読出部１２６は、音声合成部１２８に対して最後に合成されていた音声の母音部分を押鍵で指示された音高に変更または継続するように指示する（ステップＳｂ２０５）。
このため、現在の演奏箇所が設定地点よりも時間的に手前であって、読出ポインタが設定地点よりも時間的に過ぎているときに、押鍵が発生すると、読出ポインタに対応した音符に関連付けられた歌詞データは読み出されないが、最後に合成されていた音声の伸ばし部分である母音が押鍵で指示された音高に変更される。
なお、第２実施形態におけるステップＳｂ２１２、Ｓｂ２１３が第３実施形態でなくなった理由は、ステップＳｂ２０４における発声の禁止がなくなったことに伴って、当該禁止を解除するための処理が不要となったためである。
【００３８】
図１２は、第３実施形態における具体的な動作を示す図である。
この図に示されるように、読出ポインタが設定地点Ｑよりも前の音符５６ｐであるとき、当該音符５６ｐにしたがって「シ」の鍵が枠５６ａに示されるように押下されたとき、「ら」の歌詞データが読み出されて音声合成されるとともに、読出ポインタが次の音符５７ｐに移動する（ステップＳｂ１５）。
この状態において、例えば「ラ」の鍵が枠５６ｂに示されるように押下されたとき、演奏箇所が設定地点Ｑよりも前であって、読出ポインタが設定地点Ｑよりも後であるので、音符５７ｐに対応した歌詞データは読み出されないが（ステップＳｂ２０３）、音声合成部１２８によって、最後に合成されていた「ら」の母音「あ」が、押下された鍵の「ラ」の音高に変更される（ステップＳｂ２０５）。
引き続き「ソ」の鍵が枠５６ｃで、「ラ」の鍵が枠５６ｄで、「シ」の鍵が枠５６ｅで、それぞれ順番に押下されたとき、演奏箇所が設定地点Ｑよりも前であって、読出ポインタが設定地点Ｑよりも後であるので、母音「あ」が、押下された鍵の「ソ」、「ラ」、「シ」の音高に順番に変更される（ステップＳｂ２０５）。
なお、演奏が進行して設定地点Ｑより前でなくなった場合、音符５７ｐに対応した鍵が枠５７のように操作されると、禁止されていた歌詞データの読み出しが解禁されるので（ステップＳｂ２１１）、当該鍵の操作によって「や」の歌詞が音声合成される。
【００３９】
このように第３実施形態によれば、演奏が設定地点に到達する前であって読出ポインタが設定地点よりも後であるときに次々と押鍵されると、読出ポインタに対応した音符に関連付けられた歌詞データは読み出されないが、最後に合成されていた音声の伸ばし部分である母音が押鍵で指示された音高に次々と変更される。このため、設定地点の直前音符についての歌詞をアレンジして歌唱させることが可能になる。
【００４０】
なお、第３実施形態においても、第２実施形態と同様に、設定地点を１箇所だけではなく、複数箇所に設けても良いし、設定地点を歌詞データ以外の例えば伴奏データに設けても良い。
【００４１】
＜応用・変形例＞
本発明は、上述した第１乃至第３実施形態に限定されるものではなく、例えば次に述べるような各種の応用・変形が可能である。なお、次に述べる応用・変形の態様は、任意に選択された一または複数を適宜に組み合わせることもできる。
例えば、ある歌詞データのブロックの代替となるブロックを１ないし複数予め用意しておき、次にセットする歌詞データのブロックとして、その代替となるブロックを含めてプレイヤーに選択させるようにしても良い。
【００４２】
各実施形態において伴奏データとしてＭＩＤＩデータを用いたが、本発明はこれに限られない。例えばコンパクトディスクを再生させることによって楽音信号を得る構成としても良い。この構成において演奏の進行状態を把握するための情報としては、経過時間情報や残り時間情報を用いることができる。
【００４３】
また、音声合成部１２８は、指示部２０から供給される打鍵速度（ベロシティデータ）を、合成する音声の強弱（音声信号の振幅）に反映させても良い。
指示部２０としては、鍵盤２２を有するものを例に挙げて説明したが、キーオンやノートなどを出力することができる演奏機器であればなんでも良い。例えばドラムパッドのようなものを用いても良い。
なお、コンピューター１０は、携帯電話機や、タブレット型であっても良いし、外部スピーカー３０に頼らずにこれらの機器に内蔵されたスピーカーを用いても良いのはもちろん、指示部２０とコンピューター１０とが一体となっている構成など、歌唱合成装置１はあらゆる形態であっても良い。
【符号の説明】
【００４４】
１…歌唱合成装置、１０…コンピューター、２０…指示部、３０…外部スピーカー、１１０…シーケンサー、１１８…楽音合成部、１２２…バッファ格納部、１２４…バッファ、１２６…バッファ読出部、１２８…音声合成部、１４０…ミキサー。
【図１】
2014062969.tif 000003
【図２】
2014062969.tif 000004
【図３】
2014062969.tif 000005
【図４】
2014062969.tif 000006
【図５】
2014062969.tif 000007
【図６】
2014062969.tif 000008
【図７】
2014062969.tif 000009
【図８】
2014062969.tif 000010
【図９】
2014062969.tif 000011
【図１０】
2014062969.tif 000012
【図１１】
2014062969.tif 000013
【図１２】
2014062969.tif 000014