(57)【特許請求の範囲】
【請求項１】
発音する音の１つの音節を示す音節情報を取得する音節取得部であって、順序付けられた複数の前記音節情報を記憶する記憶部から、順番に前記音節情報を取得する音節取得部と、
それぞれ１つの音高に対応する複数の操作受付部であって、空間的に並べて配置された複数の操作受付部を備える入力部と、
所定期間内に複数の前記操作受付部が操作された場合に、誤操作があったと判定し、前記誤操作があったと判定した場合に、前記所定期間内に操作された複数の前記操作受付部に対応する複数の音高の中から、本来操作が望まれている前記操作受付部に対応する１つの音高を選択する選択部と、
前記操作受付部の操作に応じて前記音節取得部が取得した前記音節情報が示す１つの音節の音を、操作された前記操作受付部に対応する音高で出力部から出力させ、前記誤操作があったと判定された場合に、出力中の音高を前記選択部が選択した音高に変更するとともに、前記所定期間内に操作された２つ目以降の操作に対して前記音節取得部に前記音節情報を取得させない制御を行う出力制御部と、
を備える発音制御装置。
【請求項２】
前記出力制御部は、前記誤操作があったと判定された場合に、前記音節取得部が取得した前記音節情報が示す１つの音節の音を、前記複数の音高のうちの第１の音高で前記出力部から出力させた後、前記選択部が選択した第２の音高と前記第１の音高とが一致しない場合に、前記第２の音高に変更して出力させる
請求項１に記載の発音制御装置。
【請求項３】
前記選択部は、前記所定期間内に、空間的に隣接する複数の前記操作受付部が操作された場合に、前記誤操作があったと判定する
請求項１又は請求項２に記載の発音制御装置。
【請求項４】
前記選択部は、前記所定期間内に操作された複数の前記操作受付部に対応する複数の音高の中から、前記所定期間の最後まで操作が継続された１つの前記操作受付部に対応する音高を、前記本来操作が望まれている前記操作受付部に対応する１つの音高として選択する
請求項１から請求項３のいずれか一項に記載の発音制御装置。
【請求項５】
前記選択部は、前記操作受付部の操作によって演奏される曲のテンポに応じて、前記所定期間を変更する
請求項１から請求項４のいずれか一項に記載の発音制御装置。
【請求項６】
それぞれ１つの音高に対応する複数の操作受付部であって、空間的に並べて配置された複数の操作受付部を備える入力部と、音を出力する出力部と、を備える電子楽器における発音制御方法であって、
発音する音の１つの音節を示す音節情報を取得する第１ステップであって、順序付けられた複数の前記音節情報を記憶する記憶部から、順番に前記音節情報を取得する第１ステップと、
所定期間内に複数の前記操作受付部が操作された場合に、誤操作があったと判定し、前記誤操作があったと判定した場合に、前記所定期間内に操作された複数の前記操作受付部に対応する複数の音高の中から、本来操作が望まれている前記操作受付部に対応する１つの音高を選択する第２ステップと、
前記操作受付部の操作に応じて前記第１ステップにおいて取得された前記音節情報が示す１つの音節の音を、操作された前記操作受付部に対応する音高で前記出力部から出力させ、前記誤操作があったと判定された場合に、出力中の音高を前記第２ステップにおいて選択された音高に変更するとともに、前記所定期間内に操作された２つ目以降の操作に対して前記第１ステップにおいて前記音節情報を取得させない制御を行う第３ステップと、
を含む発音制御方法。
【請求項７】
それぞれ１つの音高に対応する複数の操作受付部であって、空間的に並べて配置された複数の操作受付部を備える入力部と、音を出力する出力部と、通信可能に接続されたコンピュータに、
発音する音の１つの音節を示す音節情報を取得する第１ステップであって、順序付けられた複数の前記音節情報を記憶する記憶部から、順番に前記音節情報を取得する第１ステップと、
所定期間内に複数の前記操作受付部が操作された場合に、誤操作があったと判定し、前記誤操作があったと判定した場合に、前記所定期間内に操作された複数の前記操作受付部に対応する複数の音高の中から、本来操作が望まれている前記操作受付部に対応する１つの音高を選択する第２ステップと、
前記操作受付部の操作に応じて前記第１ステップにおいて取得された前記音節情報が示す１つの音節の音を、操作された前記操作受付部に対応する音高で前記出力部から出力させ、前記誤操作があったと判定された場合に、出力中の音高を前記第２ステップにおいて選択された音高に変更するとともに、前記所定期間内に操作された２つ目以降の操作に対して前記第１ステップにおいて前記音節情報を取得させない制御を行う第３ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、発音制御装置、発音制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、ユーザの演奏操作に応じて、歌唱音を合成して発音する装置がある。例えば、特許文献１には、演奏データ発生装置と、歌唱合成装置とを具備し、前記演奏データ発生装置は、操作部と、前記操作部の操作に応じて、演奏データを発生する演奏データ発生手段と、…とを具備し、前記歌唱合成装置は、…前記歌詞データを記憶する歌詞データ記憶手段と、…前記歌詞データが示す歌詞において前記歌唱位置更新手段により歌唱位置とされた部分を構成する１または複数の音声素片に対応した音声素片データを前記音声素片データベースから読み出し、読み出した音声素片データを用いて、前記演奏データにより指定されるピッチおよび発音期間を持った歌唱音声データを合成する歌唱音声データ合成手段と、前記歌唱音声データ合成手段により合成された歌唱音声データを音声として出力する音声出力手段とを具備することを特徴とする歌唱合成システムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４７３５５４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、従来は、ユーザが演奏操作を誤ってしまうと、適切な音高で歌唱音を出力することができない場合があった。例えば、鍵盤演奏において、ユーザのミスタッチに起因して複数の鍵が操作され、複数の音高が指定される場合がある。この場合、操作された複数の鍵の各々の音高で、歌唱音が出力されてしまうため、聴衆にミスタッチが明確に認識されてしまう可能性がある。そのため、演奏操作で複数の音高が指定された場合であっても、適切な音高で歌唱音を出力することが望まれている。
また、例えば、特許文献１に記載の技術のように、予め歌詞データが定められていると、１つ１つの操作に応じて歌詞が順次読み出される。そのため、ユーザのミスタッチに起因して複数の鍵が操作された場合に、意図せずに、歌詞が余分に読み出されてしまうことがあった。
【０００５】
本発明のいくつかの態様は、複数の音高を指定する入力に対して、特定の音節の音を適切な音高で出力することができる発音制御装置、発音制御方法、及びプログラムを提供することを目的の一つとする。
【０００６】
また、本発明の他の態様は、後述する実施形態に記載した作用効果を奏することを可能にする発音制御装置、発音制御方法、及びプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【０００７】
上述した課題を解決するために、本発明の一態様は、発音する音の１つの音節を示す音節情報を取得する音節取得部であって、順序付けられた複数の前記音節情報を記憶する記憶部から、順番に前記音節情報を取得する音節取得部と、それぞれ１つの音高に対応する複数の操作受付部であって、空間的に並べて配置された複数の操作受付部を備える入力部と、所定期間内に複数の前記操作受付部が操作された場合に、誤操作があったと判定し、前記誤操作があったと判定した場合に、前記所定期間内に操作された複数の前記操作受付部に対応する複数の音高の中から、本来操作が望まれている前記操作受付部に対応する１つの音高を選択する選択部と、前記操作受付部の操作に応じて前記音節取得部が取得した前記音節情報が示す１つの音節の音を、操作された前記操作受付部に対応する音高で出力部から出力させ、前記誤操作があったと判定された場合に、出力中の音高を前記選択部が選択した音高に変更するとともに、前記所定期間内に操作された２つ目以降の操作に対して前記音節取得部に前記音節情報を取得させない制御を行う出力制御部と、を備える発音制御装置である。
【発明の効果】
【０００８】
本発明の実施形態によれば、複数の音高を指定する入力に対して、特定の音節の音を適切な音高で出力することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態に係る電子楽器が備える演奏操作子の一例を示す図である。
【図２】同実施形態に係る電子楽器の構成の一例を示すブロック図である。
【図３】同実施形態に係る電子楽器による演奏が行われる場合の処理の流れの一例を示すフローチャートである。
【図４】同実施形態に係る歌詞テキストデータの一例を示す図である。
【図５】同実施形態に係る音声素片データの種類の一例を示す図である。
【図６】同実施形態に係る電子楽器による演奏を行う場合の処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の一実施形態について、図面を参照して説明する。
[第１の実施形態]
本発明の第１の実施形態について説明する。まず、本実施形態の概要について説明する。
本実施形態に係る発音制御装置は、演奏操作子への操作に応じて歌唱模擬を行う電子楽器１である。ここで、歌唱模擬とは、人間の声を模擬した音声を出力することにより、歌唱を模擬することをいう。図１は、電子楽器１が備える演奏操作子１５の一例を示す図である。図１には、演奏操作子１５として、鍵盤を適用した場合を示す。この鍵盤には複数の白鍵と黒鍵とが並べて配置されており、各鍵は、それぞれ異なる音高に対応付けられている。電子楽器１を演奏する場合、ユーザは、鍵盤の所望の鍵を押鍵する。電子楽器１は、ユーザにより操作された鍵を検出し、操作された鍵に応じた音高の歌唱音を発音する。なお、発音される歌唱音の音節の順序は、予め定められている。
【００１１】
ここで、鍵盤には、複数の鍵が空間的に並べて配置されている。そのため、ユーザは、演奏時に操作位置を誤り、所望する鍵と同時に又は単独で、所望する鍵に隣接する鍵を押鍵してしまう場合がある。例えば、図１に示す白鍵１５１を押鍵しようとして、その隣の黒鍵１５２や白鍵１５３を誤って押鍵してしまう場合がある。このような誤操作（ミスタッチ）の場合、概してユーザは、所望の白鍵１５１を改めて押鍵したり、誤って操作した鍵から指をずらして白鍵１５１のみが押鍵された状態にしたりして、操作を訂正しようとする。そこで、電子楽器１は、このような誤操作の発生と、ユーザが本来操作を所望した鍵（以下、「所望鍵」と称する。）とを判定して、所望鍵に対応する音高で歌唱音を出力する。これにより、電子楽器１は、ユーザが当初所望した適切な音高で歌唱音を出力することができる。
以上が、本実施形態の概要についての説明である。
【００１２】
次に、電子楽器１の構成について説明する。図２は、電子楽器１の構成の一例を示すブロック図である。電子楽器１は、ＣＰＵ（Central Processing Unit）１０と、タイマ１１と、ＲＯＭ（Read Only Memory）１２と、ＲＡＭ（Random Access Memory）１３と、データ記憶部１４と、演奏操作子１５と、パラメータ値設定操作子１７と、表示部（表示器）１８と、音源１９と、効果回路２０と、サウンドシステム２１と、通信Ｉ／Ｆ（Interface）と、バス２３と、を備える。
【００１３】
ＣＰＵ１０は、電子楽器１全体の制御を行う中央処理装置である。タイマ１１は、時間を計測するモジュールである。ＲＯＭ１２は制御プログラムや各種のデータなどを格納する不揮発性のメモリである。ＲＡＭ１３はＣＰＵ１０のワーク領域及び各種のバッファなどとして使用される揮発性のメモリである。データ記憶部１４は、歌詞テキストデータ、音韻情報データベースなどが格納されている。歌詞テキストデータとは、歌詞を記述するデータである。歌詞テキストデータには、曲ごとの歌詞が音節単位で区切られて記述されている。音節とは、１回の演奏操作に応じて出力する音のまとまりである。音韻情報データベースとは、音声素片データを格納するデータベースである。音声素片データとは、音声の波形を示すデータであり、例えば、音声素片のサンプル列のスペクトルデータを波形データとして含む。また、音声素片データには、音声素片の波形のピッチを示す素片ピッチデータが含まれる。歌詞テキストデータ、音声素片データは、それぞれ、データベースにより管理されてよい。表示部１８は、液晶ディスプレイパネル、有機ＥＬ（Electro-Luminescence）パネルなどの表示モジュールである。表示部１８は、電子楽器１の動作状態、各種設定画面、ユーザに対するメッセージなどを表示する。
【００１４】
演奏操作子１５は、音高を指定する演奏操作を受け付けるモジュールである。本実施形態では、一例として、演奏操作子１５が鍵盤である場合について説明する。演奏操作子１５は、各鍵に対応するセンサのオン／オフに基づくノートオン／ノートオフ、押鍵の強さ（速さ、ベロシティ）などの演奏情報を出力する。この演奏情報は、ＭＩＤＩ（musical instrument digital interface）メッセージ形式であってもよい。他操作子１６は、例えば、電子楽器１に関する設定など、演奏以外の設定を行うための操作ボタン、操作つまみなどの操作モジュールである。パラメータ値設定操作子１７は、歌唱音の属性についてのパラメータを設定するための操作ボタン、操作つまみなどの操作モジュールである。パラメータとしては、例えば、和声（Harmonics）、明るさ（Brightness）、共鳴（Resonance）、性別要素（Gender Factor）等がある。和声とは、声に含まれる倍音成分のバランスを設定するパラメータである。明るさとは、声の明暗を設定するパラメータであり、トーン変化を与える。共鳴とは、有色音の音色や強弱を設定するパラメータである。性別要素とは、フォルマントを設定するパラメータであり、声の太さ、質感を女性的、或いは、男性的に変化させる。
【００１５】
音源１９は、複数の発音チャンネルを有するモジュールである。音源１９には、ＣＰＵ１０の制御の基で、ユーザの演奏に応じて１つの発音チャンネルが割り当てられる。音源１９は、割り当てられた発音チャンネルにおいて、データ記憶部１４から演奏に対応する音声素片データを読み出して歌唱音データを生成する。効果回路２０は、音源１９が生成した歌唱音データに対して、パラメータ値設定操作子１７により指定された音響効果を適用する。サウンドシステム２１は、効果回路２０による処理後の歌唱音データを、デジタル／アナログ変換器によりアナログ信号に変換する。そして、サウンドシステム２１は、アナログ信号に変換された歌唱音を増幅してスピーカなどから出力する。通信Ｉ／Ｆ２２は、電子楽器１の外部機器と通信する通信モジュールである。外部記憶装置３は、例えば、電子楽器１の外部機器であり、例えば、音声データを記憶する装置である。バス２３は電子楽器１における各部の間のデータ転送を行うバスである。
以上が、電子楽器１の構成についての説明である。
【００１６】
次に、電子楽器１の動作について説明する。
図３は、電子楽器１による演奏が行われる場合の処理の流れの一例を示すフローチャートである。
ここでは、ユーザにより、演奏曲の選択と、選択した曲の演奏とが行われる場合の処理について説明する。また、ここでは、説明を簡単にするため、複数の鍵が同時に操作された場合であっても、単音のみを出力する場合について説明する。この場合、同時に操作された鍵の音高のうち、最も高い音高のみについて処理してもよいし、最も低い音高のみについて処理してもよい。なお、以下に説明する処理は、例えば、ＣＰＵ１０がＲＯＭ１２やＲＡＭ１３に記憶されたプログラムを実行し、電子楽器１が備える各種構成を制御する制御部として機能することにより実現される。
【００１７】
始めに、電子楽器１は、ユーザから演奏する曲を選択する操作を受け付ける（ステップＳ１０）。電子楽器１は、曲の選択を受け付けると、選択された曲の歌詞テキストデータを読み出す。そして、電子楽器１は、歌詞テキストデータに記述された先頭の音節にカーソル位置に設定する（ステップＳ１２）。ここで、カーソルとは、次に発音する音節の位置を示す仮想的な指標である。
【００１８】
次に、電子楽器１は、ノートオンを検出したか否かを判定する（ステップＳ１４）。ノートオンが検出されない場合（ステップＳ１４：ＮＯ）、電子楽器１は、ノートオフを検出したか否かを判定する（ステップＳ２２）。また、ステップＳ１４においてノートオンを検出した場合（ステップＳ１４：ＹＥＳ）、すなわち新たな押鍵を検出した場合、電子楽器１は、音を出力している場合には、音の出力を停止する（ステップＳ１６）。次に、電子楽器１は、ノートオンに応じた歌唱音を発音する出力音生成処理を実行する（ステップＳ１８）。出力音生成処理については、後述する。次に、電子楽器１は、カーソル位置（読出し位置）を更新し（ステップＳ２０）、ノートオフを検出したか否かを判定する（ステップＳ２２）。
【００１９】
ここで、ステップＳ１８、Ｓ２０の処理に係るカーソル位置の決定と歌唱音の発音について、具体例を用いて説明する。まず、カーソル位置の更新について説明する。図４は、歌詞テキストデータの一例を示す図である。図４の例では、歌詞テキストデータには、５つの音節ｃ１〜ｃ５の歌詞が記述されている。各字「は」、「る」、「よ」、「こ」、「い」は、日本語のひらがなの１字を示し、各字が１音節に対応する。電子楽器１は、音節単位で、カーソル位置を更新する。例えば、カーソルが音節ｃ３に位置している場合、「よ」に対応する音声素片データをデータ記憶部１４から読み出し、「よ」の歌唱音を発音する。電子楽器１は、「よ」の発音を終了すると、次の音節ｃ４にカーソル位置を移動させる。このように、電子楽器１は、ノートオンに応じて次の音節にカーソル位置を順次移動させる。
【００２０】
次に、歌唱音の発音について説明する。図５は、音声素片データの種類の一例を示す図である。電子楽器１は、カーソル位置に対応する音節を発音させるために、音韻情報データベースから、音節に対応する音声素片データを抽出する。音声素片データには、音素連鎖データと、定常部分データとの２種類が存在する。音素連鎖データとは、「無音（＃）から子音」、「子音から母音」、「母音から（次の音節の）子音又は母音」など、発音が変化する際の音声素片を示すデータである。定常部分データは、母音の発音が継続する際の音声素片を示すデータである。例えば、カーソル位置が音節ｃ１の「は（ｈａ）」に設定されている場合、音源１９は、「無音→子音ｈ」に対応する音声連鎖データ「＃−ｈ」と、「子音ｈ→母音ａ」に対応する音声連鎖データ「ｈ−ａ」と、「母音ａ」に対応する定常部分データ「ａ」と、を選択する。そして、電子楽器１は、演奏が開始されて押鍵を検出すると、音声連鎖データ「＃−ｈ」、音声連鎖データ「ｈ−ａ」、定常部分データ「ａ」に基づく歌唱音を、操作された鍵に応じた音高、操作に応じたベロシティで出力する。
以上が、カーソル位置の決定と歌唱音の発音についての説明である。
【００２１】
図３に戻り、説明を続ける。ステップＳ２２において、ノートオフが検出されない場合（ステップＳ２２：ＮＯ）、電子楽器１は、演奏が終了したか否かを判定する（ステップＳ２６）。また、ステップＳ２２において、ノートオフを検出した場合（ステップＳ２２：ＹＥＳ）、電子楽器１は、音を出力している場合には、音の出力を停止する（ステップＳ２４）。そして、電子楽器１は、演奏を終了したか否かを判定する（ステップＳ２６）。
ステップＳ２６において、演奏を終了したと判定した場合（ステップＳ２６：ＹＥＳ）、電子楽器１は、音を出力している場合には、音の出力を停止する（ステップＳ２８）。そして、電子楽器１は、図３に示す処理を終了する。また、ステップＳ２６において、演奏を終了していないと判定した場合（ステップＳ２６：ＮＯ）、電子楽器１は、ステップＳ１４に処理を戻す。なお、演奏を終了したか否かの判定は、例えば、カーソル位置が最後尾の音節まで移動したか否か、他操作子１６により演奏を終了する操作が行われた否か、などを判定することにより行うことができる。
なお、図３に示す例では、ノートオフ時に出力中の音を停止する場合について説明したが、電子楽器１は、ノートオフ時に追加で出力中の音節とは異なる音節を読み出して出力してもよい。
以上が、電子楽器１による演奏が行われる場合の処理の流れについての説明である。
【００２２】
次に、上記ステップ１８における電子楽器１の動作について説明する。図６は、出力音生成処理の流れの一例を示すフローチャートである。
まず、電子楽器１は、ノートオンの検出タイミングに基づいて、ミスタッチ判定タイミングを算出する（ステップＳ３０）。つまり、電子楽器１は、ミスタッチ判定期間を設定する。ミスタッチ判定期間とは、誤操作の判定のために設けられる期間であり、ノートオンの検出タイミングからミスタッチ判定タイミングまでの期間である。ミスタッチ判定期間内に、音高を複数指定する操作が行われた場合、電子楽器１は、ミスタッチがあったと判定する。ミスタッチ判定期間は、ノートオンの検出から、所定時間長経過後までの期間として設定される。この所定時間長は、１００ミリ秒などのタイマ１１の時間軸で計時される絶対的な時間で記述されてもよいし、１６分音符長、３２分音符長などの曲のテンポに応じた相対的な時間で記述されてもよい。
【００２３】
次に、電子楽器１は、カーソル位置に対応する音節の音声素片データ（波形データ）を読み出す（ステップＳ３２）。次に、電子楽器１は、操作された鍵に対応する音高で、読み出した音声素片データが示す波形の音を出力する（ステップＳ３４）。具体的には、音声素片データに含まれる素片ピッチデータが示す音高と、操作された鍵に対応する音高との差分を求め、この差分に相当する周波数だけ波形データが示すスペクトル分布を周波数軸方向に移動させる。これにより、電子楽器１は、操作された鍵に対応する音高で歌唱音を出力することができる。次に、電子楽器１は、演奏情報用記憶領域を、ＲＡＭ１３又はデータ記憶部１４に確保する（ステップＳ３６）。演奏情報用記憶領域とは、ミスタッチ判定期間に行われる演奏情報を蓄積するための記憶領域である。次に、電子楽器１は、演奏情報用記憶領域に、ステップＳ１４の処理で検出したノートオンに係る演奏情報を記憶する（ステップＳ３８）。次に、電子楽器１は、ミスタッチ判定タイミングが到来したか否かを判定する（ステップＳ４０）。ミスタッチ判定タイミングが到来していない場合（ステップＳ４０：ＮＯ）、電子楽器１は、ノートオン又はノートオフが新たに検出されたか否かを判定する（ステップＳ４２）。ノートオン又はノートオフが新たに検出された場合（ステップＳ４２：ＹＥＳ）、電子楽器１は、検出したノートオン又はノートオフに係る演奏情報を、演奏情報用記憶領域に記憶する（ステップＳ４４）。ステップＳ４２の処理で、ノートオン又はノートオフが新たに検出されていない場合（ステップＳ４２：ＮＯ）、電子楽器１は、ステップＳ４０に処理を戻す。
【００２４】
また、ステップＳ４０の処理において、ミスタッチ判定タイミングが到来した場合（ステップＳ４０：ＹＥＳ）、電子楽器１は、演奏情報用記憶領域に蓄積した演奏情報に基づいて、音の出力を直ちに停止すべきか否かを判定する（ステップＳ４６）。具体的には、電子楽器１は、ノートオンされた状態の鍵が存在していない場合に、音の出力を直ちに停止すべきと判定する。音の出力を直ちに停止すべきと判定した場合（ステップＳ４８：ＹＥＳ）、電子楽器１は、音の出力を停止する（ステップＳ５０）。その後、電子楽器１は、図６に示す処理を終了し、上述したステップＳ２０に処理を進める。また、ステップＳ４８の処理で、音の出力を直ちに停止すべきと判定されなかった場合（ステップＳ４８：ＮＯ）、電子楽器１は、演奏情報用記憶領域に記憶された演奏情報に基づいて、出力すべき音高を検出、選択する（ステップＳ５２）。
【００２５】
ここで、電子楽器１による出力すべき音高の選択について、具体的に説明する。一般に、演奏時のミスタッチの訂正には、複数のパターンが想定される。ここでは、一例として、第１パターン、第２パターンについて、説明する。
第１パターンは、所望鍵（例えば、Ｃ３）を操作しようとして、別の鍵（例えば、Ｄ３）を操作してしまった場合、又は、所望鍵を操作しようとして、隣接する鍵と所望鍵を同時に操作してしまう場合の訂正方法である。ユーザは、ミスタッチを訂正するために、最初に行った操作（ノートオン）を短い時間で取り止めて（ノートオフ）、改めて所望鍵を操作（ノートオン）することが想定される。そして、ユーザは、所望鍵を操作した後は、その操作を所望の時間長維持するはずである。そこで、電子楽器１は、演奏情報用記憶領域に記憶された演奏情報を参照し、最初のノートオンから短時間でノートオフが検出されている場合には、最後にノートオンが検出された鍵を、所望鍵であると判定する。そして、電子楽器１は、所望鍵に対応する音高（例えば、Ｃ３）を、出力すべき音高として選択する。
【００２６】
第２パターンは、所望鍵（例えば、Ｃ３）を操作しようとして、隣接する鍵（例えば、Ｄ３）と所望鍵を同時に操作してしまう場合の訂正方法の別例である。ユーザは、ミスタッチを訂正するために、最初に行った２つの鍵に対する操作（ノートオン）のうち、所望鍵に対する操作を維持したまま、誤操作のみを取り止める（ノートオフ）ことが想定される。そこで、電子楽器１は、演奏情報用記憶領域に記憶された演奏情報を参照し、複数鍵について最初のノートオンが同時に検出されている場合には、最後までノートオンが維持された鍵を所望鍵であると判定する。そして、電子楽器１は、所望鍵に対応する音高（例えば、Ｃ３）を、出力すべき音高として選択する。
なお、ミスタッチにおいて、所望鍵から空間的に離間した鍵を操作してしまうことは稀であることが想定される。そのため、ミスタッチの判定対象とする操作を、隣接する鍵の操作に限定してもよい。この場合、隣接しない鍵の操作は、新たに行われた正常な操作として扱ってよい。つまり、離間した鍵の操作は、ステップＳ１４の処理で検出された操作として扱ってよい。また、上述の所望鍵の判定方法は、一例であり、電子楽器１は、演奏情報に含まれるノートオン、ノートオフ、ベロシティなど任意の情報を参照して、所望鍵を判定してよい。
以上が、電子楽器１による出力すべき音高の選択についての説明である。
【００２７】
図６に戻り、説明を続ける。ステップＳ５２の処理の後、電子楽器１は、出力中の音高を調整すべきか否かを判定する（ステップＳ５４）。具体的には、ステップＳ３４の処理で出力した音高と、ステップＳ５４の処理で選択した音高とが一致するか否かを判定する。出力中の音高を修正すべきでないと判定した場合（ステップＳ５４：ＮＯ）、電子楽器１は、図６に示す処理を終了し、上述したステップＳ２０に処理を進める。また、出力中の音の音高を修正すべきと判定した場合（ステップＳ５４：ＹＥＳ）、電子楽器１は、出力中の音の音高を、ステップＳ５２の処理で検出した音高に変更する（ステップＳ５６）。このとき、電子楽器１は、ピッチシフトにより音高を変更する。ピッチシフトでは、シフトする音高の差分に相当する周波数だけ、波形データが示すスペクトル分布を周波数軸方向に移動させる。電子楽器１は、例えば、２０セント単位など、段階的に音高を変更してもよい。
以上が、出力音生成処理の説明である。
【００２８】
従来の歌唱音を出力する電子楽器には、単音の歌唱音のみを出力する楽器がある。このような楽器において、複数の鍵が同時に押下された状態では、最初に押下された鍵の音高で歌唱音が出力される場合と、最後に押下された鍵の音高で歌唱音が出力される場合がある。前者の場合、最初に行った押鍵が解除されない間は、以降の操作が無効とされる。従って、例えば上記の第２パターンの場合には、一度、誤操作した鍵の方が有効にされてしまうと、その操作を取り止めても、所望鍵の操作が無効とされているので、適切な音高で歌唱音を出力することができない。また、後者の場合、操作が常に有効にされているため、誤操作の訂正のための操作が全て歌唱音に反映されてしまう。また、予め定められた歌詞を演奏に応じて読み出す場合には、誤操作の訂正操作の全てが歌詞の読み出しに反映されてしまう。つまり、誤操作が発生した場合には、本来ユーザが意図していた歌詞よりも先の歌詞までが読み出されてしまうため、演奏が破綻してしまう。
【００２９】
これに対して、本実施形態に係る電子楽器１は、発音する音の１つの音節を示す音節情報（例えば、歌詞テキストデータにおけるカーソル位置の音節の情報）を取得する音節取得部（例えば、ＣＰＵ１０）と、それぞれ１つの音高に対応する複数の操作受付部（例えば、鍵）であって、空間的に並べて配置された複数の操作受付部を備える演奏操作子１５と、操作された複数の前記操作受付部に対応する複数の音高の中から、１つの音高を選択する選択部（例えば、ＣＰＵ１０）と、前記音節取得部が取得した前記音節情報が示す１つの音節の音を、前記選択部が選択した音高で、出力部（例えば、サウンドシステム２１）から出力させる出力制御部（例えば、ＣＰＵ１０）と、の機能を備える。
【００３０】
これにより、電子楽器１は、複数の音高が指定された場合であっても、その中からいずれか１つを選択し、選択した音高で歌唱音を出力する。つまり、電子楽器１は、複数の音高を指定する入力に対して、特定の音節の音を適切な音高で出力する。従って、例えば、ユーザが演奏中にミスタッチをしても、ミスタッチのノートオン、ノートオフに応じて歌唱音の音高が変動することがない。そして、電子楽器１は、歌唱音が自然に繋がるように演出することができる。
【００３１】
また、前記出力制御部は、前記音節取得部が取得した前記音節情報が示す１つの音節の音を、第１の音高で前記出力部から出力させた後、前記選択部が選択した第２の音高に変更して出力させる。
これにより、電子楽器１は、例えば、最初の操作が行われたタイミング、すなわち、ミスタッチが行われ、所望鍵の判定が確定するよりも前のタイミングで、歌唱音の出力を開始する。そして、所望鍵の判定が確定した時点で、歌唱音の音高を所望鍵に対応した音高に変更する。これにより、電子楽器１は、操作からタイムラグを生じずに歌唱音を出力することができる。また、電子楽器１は、ミスタッチに対して、発音する音節（すなわち歌詞）を変えないまま、消音せずに短時間で音高を修正する。そのため、電子楽器１は、聴感上、ミスタッチがあったことを感じさせにくい。
【００３２】
また、前記出力制御部は、空間的に隣接する複数の前記操作受付部が操作された場合に、１つの音高を選択する。
これにより、電子楽器１は、例えば、空間的に隣接する鍵が操作された場合に、ミスタッチの判定対象とする。ミスタッチは、隣接する鍵に対して発生する確率が高い。従って、電子楽器１は、ミスタッチの判定精度を向上させ、音高の調整が要否を適切に判定することができる。
【００３３】
前記出力制御部は、第１の操作受付部が操作されてから所定期間（例えば、ミスタッチ判定期間）内に、第２の操作受付部が操作された場合に、１つの音高を選択する。
これにより、電子楽器１は、例えば、所定期間内に複数の操作が行われた場合にのみ、ミスタッチの判定対象とする。ミスタッチの訂正操作は、短い時間内に行われる可能性が高い。従って、電子楽器１は、ミスタッチの判定精度を向上させ、音高の調整が要否を適切に判定することができる。
例えば、ミスタッチ判定期間の期間を３２分音符長程度の短い期間とし、ミスタッチの判定対象を、隣接する鍵に限定すれば、電子楽器１は、１００セント又は２００セントの音高を短い期間で調整することになる。そのため、この場合は、音が安定的に出力される時点では、ほぼ所望鍵のみの音高の音として、人の耳には認識される。従って、電子楽器１は、演奏時にミスタッチが発生したことを、聴衆が認識することを防ぐことができる。
【００３４】
前記音節取得部は、順序付けられた複数の前記音節情報を記憶する記憶部から、前記選択部が複数の音高の中から１つの音高を選択することに応じて順番に前記音節情報を取得する。
これにより、電子楽器１は、予め定められた歌詞を、音高の選択に応じて順次読み出し、歌唱音を発音する。そのため、電子楽器１は、例えば、ユーザがミスタッチの訂正のために複数の操作を行った場合であっても、これら複数の操作に応じてカーソル位置を１つしか進めない。つまり、電子楽器１は、ミスタッチの都度の訂正操作が、それぞれ歌詞の読み出しに反映され、歌詞が余分に読み出されてしまうことを防ぐことができる。
【００３５】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、上述の実施形態において説明した各構成は、特定の機能を発揮するのに不要である場合には、省略することができる。また、上述の実施形態において説明した各構成は、分離して別々の装置に備えられてもよい。
【００３６】
なお、上述した実施形態では、一例として、演奏操作子１５が鍵盤である場合について説明したが、演奏操作子１５は、ギターのように弦が並べて配置された形状であってもよい。また、演奏操作子１５は、鍵盤や弦、或いは、音高指定用の複数のボタンをタッチパネルに表示したものであってもよい。つまり、演奏操作子１５は、複数の異なる音高を入力するための操作受付部が空間的に並べて配置されたものであればよい。なお、タッチパネルとは、表示モジュールとタッチセンサとを一体に構成して、表示モジュールの表示面に対する操作を検出するようにしたものである。
【００３７】
また、上述した実施形態では、歌詞テキストデータから音節を順次読み出す態様について説明したが、音節は、他操作子１６などを介して、演奏時に別途指定されてもよい。
また、上述した実施形態では、単音の歌唱音を出力する態様について説明したが、電子楽器１は、和音の歌唱音を出力してもよい。
また、上述した実施形態では、ＭＩＤＩ形式のデータを扱う場合について説明したが、これには限られない。例えば、電子楽器１は、マイク入力などの音声データを解析し、発音のタイミングや音高を抽出してもよい。
また、上述した実施形態では、日本語の歌詞を例示したがこれには限られない。日本語では、ほぼ１文字１音節であるが、他の言語では、１文字が１音節にならない場合が多い。例えば、英語の歌詞が「september」の場合は、「sep」「tem」「ber」の３音節となる。この場合、電子楽器１は、演奏操作子１５をユーザが操作する度に、各音節を操作された鍵の音高で順次発音する。このように、歌詞は、日本語に限らず他言語であってもよい。
【００３８】
また、上述の電子楽器１の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより電子楽器１としての処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやＷＡＮ、ＬＡＮ、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、ＣＤ−ＲＯＭ等の非一過性の記録媒体であってもよい。また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部又は外部に設けられた記録媒体も含まれる。配信サーバの記録媒体に記憶されるプログラムのコードは、端末装置で実行可能な形式のプログラムのコードと異なるものでもよい。すなわち、配信サーバからダウンロードされて端末装置で実行可能な形でインストールができるものであれば、配信サーバで記憶される形式は問わない。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に端末装置で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００３９】
また、上述した電子楽器１の機能の一部又は全部を、ＬＳＩ（Large Scale Integration）等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、又は全部を集積してプロセッサ化してもよい。また、集積回路化の手法はＬＳＩに限らず専用回路、又は汎用プロセッサで実現してもよい。また、半導体技術の進歩によりＬＳＩに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【符号の説明】
【００４０】
１…電子楽器、１０…ＣＰＵ、１１…タイマ、１２…ＲＯＭ、１３…ＲＡＭ、１４…データ記憶部、１５…演奏操作子、１６…他操作子、１７…パラメータ値設定操作子、１８…表示部、１９…音源、２０…効果回路、２１…サウンドシステム、２２…通信Ｉ／Ｆ、３…外部記憶装置
【図１】
0006705272.tif 000002
【図２】
0006705272.tif 000003
【図３】
0006705272.tif 000004
【図４】
0006705272.tif 000005
【図５】
0006705272.tif 000006
【図６】
0006705272.tif 000007