(57)【要約】    【課題】  鍵盤装置の演奏操作子を声で駆動してアコースティック演奏できるようにする。    【解決手段】  コントローラ１０において、音高検出部２４は、マイク２１を介して入力された音声信号の実音高から、検出音高Ｎを決定する。再生情報生成・出力部２６は、上記音声信号の音量及び検出音高Ｎに基づいて、音声に基づく再生情報Ｊを生成し、ピアノ制御部５０に出力すると共に、これと並行して、演奏データ２７に基づく再生情報Ｊを生成し、ピアノ制御部５０に出力する。ピアノ制御部５０において、目標値生成・出力部６２は、再生情報Ｊに基づいて、押操作または離操作のための再生目標値を生成し、この再生目標値に従って、対応する鍵駆動部５９が鍵３１を駆動することで、ハンマ３２が弦３４を打撃する。【選択図】      図１
2006243537.tif 000002
【特許請求の範囲】
【請求項１】
アコースティック演奏を行える鍵盤楽器であって、
アコースティック演奏を行うために押離操作される複数の演奏操作子と、
前記複数の演奏操作子を個別に駆動する駆動手段と、
音声を入力する音声入力手段と、
前記音声入力手段により入力された音声の音高を検出する音高検出手段と、
前記音高検出手段により検出された音高に基づいて駆動用情報を生成する駆動用情報生成手段と、
前記駆動用情報生成手段により生成された駆動用情報に基づいて前記駆動手段を制御する制御手段とを有することを特徴とする鍵盤楽器。
【請求項２】
演奏情報を供給する演奏情報供給手段を有し、前記制御手段は、前記駆動用情報に基づく前記駆動手段の制御と並行して、前記演奏情報供給手段により供給される演奏情報に基づいて前記駆動手段の制御を行うことが可能であり、前記演奏情報に基づいて前記制御手段により前記駆動手段が制御される場合にのみ、前記駆動手段による前記演奏操作子の駆動のタイミングを前記演奏情報に基づいて調整するタイミング調整手段を有することを特徴とする請求項１記載の鍵盤楽器。
【請求項３】
前記駆動用情報に基づき前記演奏操作子が押操作方向に駆動されるように前記制御手段が前記駆動手段を制御しようとするとき、前記駆動用情報に基づき前記駆動手段により駆動されるべき演奏操作子が、前記演奏情報に基づき押操作方向に駆動されている状態であるか否かを判断する判断手段を有し、前記判断手段により、前記駆動用情報に基づき前記駆動手段により駆動されるべき演奏操作子が、前記演奏情報に基づき押操作方向に駆動されている状態であると判断された場合は、前記制御手段は、前記駆動用情報に基づき前記駆動手段により駆動されるべき演奏操作子が離操作方向に移動するように前記駆動手段を一旦制御した後、前記駆動用情報に基づき前記演奏操作子が押操作方向に駆動されるように前記駆動手段を制御することを特徴とする請求項１または２記載の鍵盤楽器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アコースティック演奏を行える鍵盤楽器に関する。
【背景技術】
【０００２】
従来、音声に基づき楽音を発生させる演奏装置が知られている。例えば、下記特許文献１のカラオケ装置では、歌唱用マイクから音声を入力し、該入力音声に対して、演奏情報に基づくピッチ変換を施したハーモニー音声を生成し、該ハーモニー音声を上記入力音声と合成して出力するようにしている。
【０００３】
一方、鍵やペダル等の複数の演奏操作子をソレノイド等を備えた駆動装置で個別に駆動できるように構成し、演奏情報に基づいて演奏操作子を駆動することで、アコースティックな楽曲演奏を自動で行えるようにした自動演奏ピアノ等の鍵盤楽器も知られている。
【特許文献１】特開平８−２３４７７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１では、歌唱者の声に基づくハーモニー音声は、あくまで電子音として発音され、音源やスピーカ等の電子的な楽音発生装置が必須であった。また、適用範囲がカラオケ装置等に限られ、例えば、アコースティックな発音をする鍵盤楽器を用いて、ステージさながらにオペラを練習したり楽しんだりする等の用途に向くものではなかった。一方、上記自動演奏ピアノ等の鍵盤楽器では、アコースティック演奏を行うためには、演奏情報に基づき自動駆動する他は、奏者は、指または足で演奏操作子を操作する以外に手段がない。従って、アコースティックな鍵盤楽器の用途を拡大する観点から改善の余地があった。
【０００５】
本発明は上記従来技術の問題を解決するためになされたものであり、その目的は、演奏操作子を声で駆動してアコースティック演奏をすることができる鍵盤楽器を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために本発明の請求項１の鍵盤楽器は、アコースティック演奏を行える鍵盤楽器であって、アコースティック演奏を行うために押離操作される複数の演奏操作子（３１、ＰＤ）と、前記複数の演奏操作子を個別に駆動する駆動手段（５９、６０）と、音声を入力する音声入力手段（２１）と、前記音声入力手段により入力された音声の音高を検出する音高検出手段（２４）と、前記音高検出手段により検出された音高に基づいて駆動用情報（Ｊ（ｖ））を生成する駆動用情報生成手段（２６）と、前記駆動用情報生成手段により生成された駆動用情報に基づいて前記駆動手段を制御する制御手段（５０）とを有することを特徴とする。
【０００７】
好ましくは、演奏情報（２７）を供給する演奏情報供給手段（１８）を有し、前記制御手段は、前記駆動用情報に基づく前記駆動手段の制御と並行して、前記演奏情報供給手段により供給される演奏情報に基づいて前記駆動手段の制御を行うことが可能であり、前記演奏情報に基づいて前記制御手段により前記駆動手段が制御される場合にのみ、前記駆動手段による前記演奏操作子の駆動のタイミングを前記演奏情報に基づいて調整するタイミング調整手段（６３）を有する（請求項２）。この構成によれば、演奏情報、駆動用情報の両情報に基づいて並行して演奏する場合において、演奏情報に基づく演奏では、発音タイミングを揃えることを確保しつつ、声による演奏では、リアルタイムで発音することができる。
【０００８】
さらに好ましくは、前記駆動用情報に基づき前記演奏操作子が押操作方向に駆動されるように前記制御手段が前記駆動手段を制御しようとするとき、前記駆動用情報に基づき前記駆動手段により駆動されるべき演奏操作子が、前記演奏情報に基づき押操作方向に駆動されている状態である（ｆＳｅＫｅｙ［ｋｎ］＝１）か否かを判断する判断手段を有し、前記判断手段により、前記駆動用情報に基づき前記駆動手段により駆動されるべき演奏操作子が、前記演奏情報に基づき押操作方向に駆動されている状態であると判断された場合は、前記制御手段は、前記駆動用情報に基づき前記駆動手段により駆動されるべき演奏操作子が離操作方向に移動するように前記駆動手段を一旦制御（ステップＳ５０９、Ｓ６０９）した後、前記駆動用情報に基づき前記演奏操作子が押操作方向に駆動されるように前記駆動手段を制御する（ステップＳ５０９に対応するステップＳ５１１〜Ｓ５１２、ステップＳ６０９に対応するステップＳ６１１〜Ｓ６１２）（請求項３）。この構成によれば、演奏情報、駆動用情報の両情報に基づいて並行して演奏する場合において、演奏情報に基づき操作されている演奏操作子であっても、声によるリアルタイム操作を優先的且つ確実に確保することができる。
【０００９】
さらに好ましくは、前記演奏情報に基づき前記演奏操作子が駆動されるように前記制御手段が前記駆動手段を制御しようとするとき、前記演奏情報に基づき前記駆動手段により駆動されるべき演奏操作子が、前記駆動用情報に基づき押操作方向に駆動されている状態であるか否かを判断する判断手段を有し、前記判断手段により、前記演奏情報に基づき前記駆動手段により駆動されるべき演奏操作子が、前記駆動用情報に基づき押操作方向に駆動されている状態であると判断された場合は、前記制御手段は、前記演奏情報に基づき前記駆動手段により駆動されるべき演奏操作子が前記演奏情報に基づき駆動されないように前記駆動手段を制御する。この構成によれば、演奏情報、駆動用情報の両情報に基づいて並行して演奏する場合において、演奏情報に基づく演奏に妨げられることなく、声によるリアルタイム演奏を行うことができる。
【００１０】
なお、上記括弧内の符号は例示である。
【発明の効果】
【００１１】
本発明の鍵盤楽器によれば、演奏操作子を声で駆動してアコースティック演奏をすることができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態を図面を参照して説明する。
【００１３】
（第１の実施の形態）
図１は、本発明の第１の実施の形態に係る鍵盤楽器の構成を、ある１つの鍵に着目して示した部分断面図である。本鍵盤楽器３０は、後述するように、肉声によって鍵を駆動し、アコースティック演奏を行えるように構成されたものである。
【００１４】
鍵盤楽器３０は、アコースティックピアノであって且つ自動演奏ピアノでもある。鍵盤楽器３０は、押離操作される複数（例えば、８８鍵）の鍵３１からなる鍵盤ＫＢを備える。鍵盤楽器３０は、通常のアコースティックピアノと同様、鍵３１の運動を対応するハンマ３２に伝達するアクションメカニズム３３と、ハンマ３２により打撃される弦３４と、弦３４の振動を止めるためのダンパ３６と、サイレントモード時に全ハンマ３２の動きを止めて弦３４の打撃を回避するためのシャンクストッパ３５とを備えている。以降、鍵３１の奏者側（同図右側）を「前方」と称する。
【００１５】
鍵盤楽器３０はまた、コントローラ１０、ピアノ制御部５０を備える。鍵盤楽器３０にはまた、鍵３１の後端部側の下部を上方に駆動するための鍵駆動部５９が、各鍵３１ごとに設けられる。また、ダンパ３６を駆動するためのペダルＰＤと、ペダルＰＤを下方に駆動するためのペダル駆動部６０が設けられる。鍵駆動部５９、ペダル駆動部６０は、それぞれ、対応する鍵３１、ペダルＰＤをそれぞれ駆動するアクチュエータと、それらの位置を検出する位置センサとを含んでいる。鍵駆動部５９、ペダル駆動部６０の各位置センサの検出信号ｘｋ、ｘｐが、ピアノ制御部５０に供給される。
【００１６】
上記アクチュエータは、ソレノイドコイル、プランジャ等を有し（いずれも図示せず）、駆動信号が供給されると、上記プランジャが移動して対応する鍵３１、ペダルＰＤが押操作方向に駆動されるようになっている。駆動信号が停止すると、対応する鍵３１、ペダルＰＤが離操作方向に移動する。これら離操作方向への移動は、積極的な駆動によるものではなく、ペダルＰＤの場合は、不図示の復帰スプリングによる移動、鍵３１の場合は、アクションメカニズム３３の自重による移動である。しかしながら、後述する図５の再生処理においては、鍵３１を離操作方向に移動させることも、概念的に、「離操作方向への駆動」と表現する。
【００１７】
図２は、コントローラ１０及びピアノ制御部５０の構成を示すブロック図である。
【００１８】
コントローラ１０は、ＣＰＵ１１に、タイマ１２、ＲＯＭ１３、ＲＡＭ１４、操作部１５、Ａ／Ｄ変換器１６、通信インターフェイス（Ｉ／Ｆ）１７、記憶装置１８及び音源１９がバス２０を介して接続されて構成される。Ａ／Ｄ変換器１６には、不図示のアンプを介してマイク２１が接続される。音源１９にはサウンドシステム２２が接続されている。
【００１９】
ＣＰＵ１１は、コントローラ１０全体の制御を司る。ＲＯＭ１３は、ＣＰＵ１１が実行する制御プログラムやテーブルデータ等の各種データを記憶する。ＲＡＭ１４は、演奏データ、テキストデータ等の各種入力情報、各種フラグやバッファデータ及び演算結果等を一時的に記憶する。通信Ｉ／Ｆ１７は、ＭＩＤＩ信号や所定フォーマットの複数種類の信号を送受信可能である。
【００２０】
タイマ１４は、タイマ割り込み処理における割り込み時間や各種時間を計時する。操作部１５は、不図示の各種操作子を有し、自動演奏のスタート／ストップの指示、曲選択等の指示、各種設定等を行う。記憶装置１８は、フラッシュメモリ、ハードディスク等で構成され、上記制御プログラムを含む各種アプリケーションプログラムや演奏データ等の各種データを記憶する。音源１９は、演奏データを楽音信号に変換し、サウンドシステム２２が、この楽音信号等を音響に変換する。マイク２１から入力される歌唱者の肉声は、不図示のアンプ、Ａ／Ｄ変換器１６を介してデジタルの音声信号として入力される。
【００２１】
ピアノ制御部５０は、ＣＰＵ５２に、タイマ５３、ＲＯＭ５４、ＲＡＭ５５、通信インターフェイス（Ｉ／Ｆ）５１、ＰＷＭ発生器５６、５７及びシャンクストッパ駆動指示部５８がバス６４を介して接続されて構成される。ＣＰＵ５２は、ピアノ制御部５０全体の制御を司る。タイマ５３、ＲＯＭ５４、ＲＡＭ５５、通信Ｉ／Ｆ５１は、コントローラ１０のタイマ１２、ＲＯＭ１３、ＲＡＭ１４、通信Ｉ／Ｆ１７と同様に構成される。通信Ｉ／Ｆ５１が通信Ｉ／Ｆ１７と通信することで、ピアノ制御部５０はコントローラ１０と通信することができる。
【００２２】
シャンクストッパ駆動指示部５８は、サイレントモード時において、シャンクストッパ駆動部６１に指示信号を送り、これにより、シャンクストッパ３５が、全ハンマ３２の動きを止める位置に駆動される。
【００２３】
ＰＷＭ発生器５６、５７は、ＣＰＵ５２の制御により、それぞれ後述する再生目標値である電流指示値ｕｋ（ｔ）、ｕｐ（ｔ）を発生させ、それらを鍵駆動部５９、ペダル駆動部６０に供給する。
【００２４】
図１に示すように、コントローラ１０は、制御機構として音量検出部２３、音高検出部２４、音高変換部２５及び再生情報生成・出力部２６を有し、これらの機能は、実際には、ＣＰＵ１１、タイマ１２、ＲＯＭ１３、ＲＡＭ１４、記憶装置１８、通信Ｉ／Ｆ１７等の協働作用によって実現される。コントローラ１０はまた、ＭＩＤＩのシーケンスデータである演奏データ２７を有し、この演奏データ２７は、例えば記憶装置１８に格納されている。
【００２５】
音量検出部２３は、マイク２１を介して入力された音声信号の音量を検出する（後述する図４のステップＳ４０１参照）。音高検出部２４は、上記音声信号の実音高を検出し（図４のステップＳ４０３参照）、音高変換部２５は、鍵盤ＫＢの鍵域内において、１２平均律による音高のうち上記検出された実音高に最も近いものに該実音高を変換し、これを検出音高Ｎとして決定する（図４のステップＳ４０４参照）。再生情報生成・出力部２６は、上記検出された音量及び決定された検出音高Ｎに基づいて、音声に基づく再生情報Ｊを生成し、ピアノ制御部５０に出力する（図４のステップＳ４０７、Ｓ４０８、Ｓ４１２参照）。再生情報生成・出力部２６はまた、これと並行して、逐次供給される演奏データ２７に基づいて再生情報Ｊを生成し、ピアノ制御部５０に出力する（図４のステップＳ４１０参照）。従って、再生情報Ｊには、音声に基づくもの（以下、「ボーカルイベントＪ（ｖ）」と称する）と演奏データ２７に基づくもの（以下、「シーケンスイベントＪ（ｓ）」と称する）とがあり、これらはピアノ制御部５０に独立して出力され、同時に出力される場合もある。
【００２６】
ピアノ制御部５０は、目標値生成・出力部６２及びディレイバッファ６３を有する。目標値生成・出力部６２の機能は、実際には、ＣＰＵ５２、タイマ５３、ＲＯＭ５４、ＲＡＭ５５、ＰＷＭ発生器５６、５７、通信Ｉ／Ｆ５１等の協働作用によって実現される。
【００２７】
目標値生成・出力部６２は、コントローラ１０から入力される再生情報Ｊに基づいて、押操作または離操作のための再生目標値を生成する。目標値生成・出力部６２で生成された再生目標値のうち、ボーカルイベントＪ（ｖ）である再生情報Ｊに基づく再生目標値については、鍵駆動部５９、ペダル駆動部６０に直接出力される。一方、シーケンスイベントＪ（ｓ）である再生情報Ｊに基づく再生目標値については、ディレイバッファ６３を介して出力される。
【００２８】
ここで、図１、図２に示す、再生目標値である電流指示値ｕｋ（ｔ）、ｕｐ（ｔ）は、鍵３１、ペダルＰＤの軌道を規定する信号であり、鍵駆動部５９、ペダル駆動部６０のそれぞれのソレノイドコイルに流すべき平均電流の目標値に応じたデューティ比となるようにパルス幅変調を施したＰＷＭ信号である。なお、目標値生成・出力部６２が再生情報Ｊに基づき再生目標値を生成する際、検出信号ｘｋ、ｘｐに基づいて再生目標値を随時補正することで、鍵３１及びペダルＰＤのフィードバック駆動制御を行うようにしてもよい。
【００２９】
図３は、再生情報Ｊのデータ構成を示す概念図である。再生情報Ｊにおいて、「認識コード」は、当該再生情報ＪがボーカルイベントＪ（ｖ）であるかまたはシーケンスイベントＪ（ｓ）であるかを示すデータである。「ノートオン／ノートオフ」は、押操作駆動／離操作駆動を示すデータである。「ノートナンバｋｎ」は、音高を規定する値であり、これによって、駆動されるべき鍵３１が規定される。「ベロシティｖｅｌ」は、ノートナンバｋｎに対応する鍵３１の駆動の速さを規定する値であり、押操作駆動の場合は、これによって音量が規定される。このような再生情報Ｊが、音声入力、あるいは演奏データ２７に従ったイベント発生に応じたタイミングで、目標値生成・出力部６２により随時生成、出力される。
【００３０】
本実施の形態では、再生情報Ｊが、専ら８８個の鍵３１を個々に駆動（押鍵または離鍵）するための情報であるとして説明する。本実施の形態では、鍵盤楽器３０は、演奏モードとして「並行駆動モード」を有し、この「並行駆動モード」では、入力音声による鍵３１のリアルタイム駆動と演奏データ２７による鍵３１のシーケンス駆動とが並行して実行可能とされる。本実施の形態では特に、１つのマイク２１から入力される単音の音声に基づいて、単音の発音をするための再生情報Ｊが生成される。従って、音声によって同時に押操作状態となり得る鍵３１は１つである。
【００３１】
具体的には、ボーカルイベントＪ（ｖ）である再生情報Ｊ中の「ノートナンバｋｎ」は、検出音高Ｎと操作部１５の操作とに応じて設定され、例えば、検出音高Ｎと同じ音高の値とされる。あるいは、検出音高Ｎに対して所定オクターブ異なる音高、例えば、３度、５度の関係にある音高であってもよく、歌唱者乃至操作者の任意で指定することができる。また、ノートオンの場合の「ベロシティｖｅｌ」は、検出した入力音声の音量に従って設定される。ノートオフの場合の「ベロシティｖｅｌ」は、所定値とするが、これも入力音声のオフベロシティを検出してこれに応じて設定するようにしてもよい。
【００３２】
なお、シーケンスイベントＪ（ｓ）である再生情報Ｊ中の「ノートオン／ノートオフ」、「ノートナンバｋｎ」、「ベロシティｖｅｌ」は、演奏データ２７のＭＩＤＩイベントに従って設定される。
【００３３】
演奏データ２７に基づき例えば鍵３１を駆動する自動演奏時においては、演奏データ２７に従ったイベント発生のタイミングでリアルタイムに鍵３１を駆動しようとすると、各鍵３１の質量の違い、あるいは演奏データ２７で規定される音量（強押鍵／弱押鍵）の違い等によって、複数の鍵３１間で実際の駆動タイミングがずれ、発音タイミングが揃わない。そこで、従来から行われているように、ディレイバッファ６３によりディレイ時間を設けて、発音タイミングのずれが生じないような演奏を行えるようにしている。ディレイ時間は、各鍵３１の音高と発音すべき音量（ベロシティ）とに応じて時間が設定された不図示のディレイ時間テーブルを参照することによって、各鍵３１毎に設定される。
【００３４】
一方、入力音声による鍵３１の駆動は、自身の声で鍵３１を駆動制御しているという歌唱者の感覚に合致させるためには、音声が入力されるタイミングに対してリアルタイムで行うのが望ましい。そこで、本実施の形態において、並行駆動モード時には、演奏データ２７に基づく駆動時にのみ、ディレイバッファ６３を用いるようにしている。以下、この処理の詳細を説明する。
【００３５】
図４は、コントローラ１０のＣＰＵ１１で実行される再生情報生成・出力処理のフローチャートである。本処理は、並行駆動モード時において常に実行されている。
【００３６】
まず、歌唱者の発声によりマイク２１を通じて入力された音声信号の音量を検出し（ステップＳ４０１）、その検出した音量が所定値以上か否かを判別し（ステップＳ４０２）、所定値以上である場合は、入力音声に基づく鍵３１の押操作駆動を行う意思があると判断されるので、上記入力された音声信号の実音高を検出し（ステップＳ４０３）、鍵盤楽器３０が発音可能な音高のうち上記検出した実音高に最も近いものに上記実音高を変換し、これを検出音高Ｎとして決定する（ステップＳ４０４）。すなわち、検出音高Ｎは、鍵３１の数である８８種類の値（例えば、低音側から１〜８８）のいずれか１つをとる。
【００３７】
次に、検出音高Ｎが、音高レジスタ値Ｖと一致するか否かを判別する（ステップＳ４０５）。ここで、音高レジスタ値Ｖは、鍵盤楽器３０の電源起動時に、初期値である「−１」にリセットされ、本処理においては、後述するステップＳ４０９で今回の検出音高Ｎの値に設定される。従って、ステップＳ４０５の実行前には、本処理の前回ループにおける検出音高Ｎまたは初期値が設定されている。なお、音高レジスタ値Ｖは、その初期値を「−１」とするが、検出音高Ｎがとり得るいずれの値とも異なる値であれば、初期値は「−１」以外の値であってもよい。
【００３８】
前記ステップＳ４０５の判別の結果、検出音高Ｎが音高レジスタ値Ｖと一致しない場合は、ステップＳ４０６に進み、音高レジスタ値Ｖが「−１」であるか否かを判別する。その判別の結果、Ｖ＝−１である場合は、入力音声に基づく押操作がされていない状態（音声入力がない状態）で音声が入力された場合であるので、今回の検出音高Ｎに対応する鍵３１の押操作を行わせるべく、前記ステップＳ４０１で検出した入力音声の音量、及び前記ステップＳ４０４で決定した検出音高Ｎに基づいて、ノートオンの再生情報Ｊ（「ノートオン／ノートオフ」のデータがノートオン、「ノートナンバｋｎ」がＮ値、「ベロシティｖｅｌ」が上記検出した音量の値であるもの）を生成し、ピアノ制御部５０に出力する（ステップＳ４０８）。
【００３９】
一方、Ｖ＝−１でないならば、入力音声に基づく押操作がされている状態（音声入力がある状態）で、入力音声の音高が変化した場合であるので、現在、音高レジスタ値Ｖに対応して押操作駆動されている鍵３１の離操作を行わせるべく、音高レジスタ値Ｖに基づくノートオフ（「ノートオン／ノートオフ」のデータがノートオフ、「ノートナンバｋｎ」がＶ値、「ベロシティｖｅｌ」が所定値であるもの）の再生情報Ｊを生成し、ピアノ制御部５０に出力する（ステップＳ４０７）。
【００４０】
前記ステップＳ４０８の処理後は、音高レジスタ値Ｖに今回の検出音高Ｎの値を設定して更新し（ステップＳ４０９）、ステップＳ４１０に進む。また、前記ステップＳ４０５の判別の結果、検出音高Ｎが音高レジスタ値Ｖと一致する場合は、入力音声に基づく押操作がされている状態（音声入力がある状態）で、入力音声が途絶えることなく、その音高も変化せず継続して維持されている場合であるので、再生情報Ｊを生成することなくステップＳ４１０に進む。
【００４１】
前記ステップＳ４０２の判別の結果、入力された音声信号の音量が所定値未満である場合は、音高レジスタ値Ｖが「−１」であるか否かを判別する（ステップＳ４１１）。その判別の結果、Ｖ＝−１でない場合は、入力音声に基づく押操作がされている状態（音声入力がある状態）で、音声の入力が途絶え、消音する意思があると判断されるので、前記ステップＳ４０７と同様に、現在、音高レジスタ値Ｖに対応して押操作駆動されている鍵３１の離操作を行わせるべく、音高レジスタ値Ｖに基づくノートオフの再生情報Ｊを生成し、ピアノ制御部５０に出力して（ステップＳ４１２）、音高レジスタ値Ｖを「−１」にリセットし（ステップＳ４１３）、前記ステップＳ４１０に進む。
【００４２】
一方、Ｖ＝−１である場合は、入力音声に基づく押操作がされていない状態（音声入力がない状態）で、依然として入力音声に基づく鍵３１の押操作駆動を行う意思がない場合であるので、再生情報Ｊを生成することなく前記ステップＳ４１０に進む。
【００４３】
ステップＳ４１０では、演奏データ２７を順次読み出し、読み出した演奏データ２７に基づく再生情報Ｊを順次生成し、ピアノ制御部５０に出力する。その後、前記ステップＳ４０１に戻る。
【００４４】
図５は、ピアノ制御部５０のＣＰＵ５２で実行される再生処理のフローチャートである。本処理は、並行駆動モード時において常に実行されている。
【００４５】
まず、コントローラ１０から入力された再生情報ＪがボーカルイベントＪ（ｖ）であるか否かを判別し（ステップＳ５０１）、再生情報ＪがボーカルイベントＪ（ｖ）でない場合は、シーケンスイベントＪ（ｓ）であるので、当該シーケンスイベントＪ（ｓ）に基づいて、再生目標値を生成する（ステップＳ５０２）。この再生目標値は、押鍵用、離鍵用のいずれかである。次に、上記生成した再生目標値を、ディレイバッファ６３に出力する（ステップＳ５０３）。これにより、後述するステップＳ５１２においては、鍵駆動指示が、上記不図示のディレイ時間テーブルで設定されるディレイ時間だけ遅延されてなされることになる。
【００４６】
次に、シーケンスイベントＪ（ｓ）中のノートナンバｋｎが、現在、ボーカルイベントＪ（ｖ）に基づき再生中のノートであるか否かを判別する（ステップＳ５０４）。この判別は、レジスタ値ＶｏＫｅｙとノートナンバｋｎとの比較によってなされ、ＶｏＫｅｙ＝ｋｎであるとき、「ＹＥＳ」と判別される。ここで、レジスタ値ＶｏＫｅｙは、ボーカルイベントＪ（ｖ）中のノートナンバｋｎの値（１〜８８）または「−１」のいずれかをとり、ｋｎ値であるときは、ボーカルイベントＪ（ｖ）に基づき押操作方向（押鍵方向）に駆動されている（駆動状態となっていて未だ離鍵指示がされていない）鍵３１の音高を示し、「−１」であるときは、そのような鍵３１が存在しないことを示す。レジスタ値ＶｏＫｅｙは、鍵盤楽器３０の電源起動時に、初期値である「−１」にリセットされ、本処理においては、後述するステップＳ５０７でボーカルイベントＪ（ｖ）中のノートナンバｋｎの値に設定され、後述するステップＳ５１４で「−１」にリセットされる。
【００４７】
上記判別の結果、シーケンスイベントＪ（ｓ）中のノートナンバｋｎが、現在、ボーカルイベントＪ（ｖ）に基づき再生中のノートでない場合は、当該ノートナンバｋｎに関する押離鍵状態を設定する（ステップＳ５０５）。すなわち、シーケンスイベントＪ（ｓ）がノートオンのイベントであればシーケンスイベントＪ（ｓ）中のノートナンバｋｎに対応するフラグｆＳｅＫｅｙ［ｋｎ］に「１」を設定する一方、ノートオフのイベントであれば「０」を設定する。
【００４８】
ここで、フラグｆＳｅＫｅｙは、各鍵３１毎（各８８個分）に設けられ、ノートナンバｋｎ（ｋｎは１〜８８のいずれかの値をとる）に対応するものを示すために、「ｆＳｅＫｅｙ［ｋｎ］」と表記する。ｆＳｅＫｅｙ［ｋｎ］は、「１」であるとき、ｋｎ値が示す鍵３１が、シーケンスイベントＪ（ｓ）に基づき押鍵方向に駆動されている状態であることを示し、「０」であるとき、そうでないことを示す。すべてのフラグｆＳｅＫｅｙは、鍵盤楽器３０の電源起動時に、初期値である「０」にリセットされる。
【００４９】
次に、ステップＳ５１２で、鍵駆動指示を行う。ここで、本処理とは別個に、鍵駆動ルーチンがタイマ処理で実行されており、ステップＳ５１２での鍵駆動指示が、上記鍵駆動ルーチンに駆動指示されることで、鍵駆動部５９が鍵３１を実際に駆動する。
【００５０】
ステップＳ５０５からステップＳ５１２に移行した場合は、シーケンスイベントＪ（ｓ）中のノートナンバｋｎに対応する鍵３１の押鍵駆動または離鍵駆動の指示が行われる。これにより、シーケンスイベントＪ（ｓ）の再生時には、シーケンスイベントＪ（ｓ）中のノートナンバｋｎに対応する鍵３１が、ディレイ時間だけ遅延されて、ベロシティｖｅｌで規定される速さで駆動される。
【００５１】
一方、前記ステップＳ５０４の判別の結果、シーケンスイベントＪ（ｓ）中のノートナンバｋｎが、現在、ボーカルイベントＪ（ｖ）に基づき再生中のノートである場合は、押離鍵状態の設定及び鍵駆動指示を行うことなく本処理を終了する。これにより、シーケンスイベントＪ（ｓ）に基づく再生によってボーカルイベントＪ（ｖ）に基づく再生が阻害されることが回避される。
【００５２】
前記ステップＳ５０１の判別の結果、再生情報ＪがボーカルイベントＪ（ｖ）である場合は、当該ボーカルイベントＪ（ｖ）がノートオンのイベントであるか否かを判別し（ステップＳ５０６）、ノートオンのイベントである場合は、レジスタ値ＶｏＫｅｙにボーカルイベントＪ（ｖ）中のノートナンバｋｎの値を設定する（ステップＳ５０７）。
【００５３】
次に、ボーカルイベントＪ（ｖ）中のノートナンバｋｎ（本実施の形態では１つである）が、現在、シーケンスイベントＪ（ｓ）に基づき再生中のノートであるか否かを判別する（ステップＳ５０８）。この判別は、フラグｆＳｅＫｅｙ［ｋｎ］が「１」であるか否かによってなされ、ｆＳｅＫｅｙ［ｋｎ］＝１であるとき、「ＹＥＳ」と判別される。その判別の結果、ボーカルイベントＪ（ｖ）中のノートナンバｋｎが、現在、シーケンスイベントＪ（ｓ）に基づき再生中のノートでない場合は、ステップＳ５１１に進み、当該ボーカルイベントＪ（ｖ）に基づいて、押鍵用の再生目標値を生成する。
【００５４】
一方、ボーカルイベントＪ（ｖ）中のノートナンバｋｎが、現在、シーケンスイベントＪ（ｓ）に基づき再生中のノートである場合は、当該ノートナンバｋｎに対応する鍵３１の離鍵駆動を上記鍵駆動ルーチンに指示し（ステップＳ５０９）、所定時間の経過を待ってから（ステップＳ５１０）、前記ステップＳ５１１を実行する。すなわち、シーケンスイベントＪ（ｓ）に基づき押鍵駆動されている鍵３１を一旦離鍵させて押鍵可能な状態としてから押鍵駆動する。上記所定時間は、押鍵状態にある鍵３１が物理的に押鍵可能となる位置まで復帰するのに十分な時間に設定されている。
【００５５】
そして、ステップＳ５１１から前記ステップＳ５１２に移行した場合は、ボーカルイベントＪ（ｖ）中のノートナンバｋｎに対応する鍵３１の押鍵駆動指示が行われる。これにより、ボーカルイベントＪ（ｖ）のノートオンの再生時には、ボーカルイベントＪ（ｖ）中のノートナンバｋｎに対応する鍵３１が、リアルタイムで、ベロシティｖｅｌで規定される速さで押鍵駆動される。歌唱者は、操作部１５による設定の下、発声音高で所望の鍵３１を押鍵駆動することができる。
【００５６】
一方、前記ステップＳ５０６の判別の結果、ボーカルイベントＪ（ｖ）がノートオフのイベントである場合は、当該ボーカルイベントＪ（ｖ）に基づいて、離鍵用の再生目標値を生成し（ステップＳ５１３）、レジスタ値ＶｏＫｅｙを「−１」にリセットして（ステップＳ５１４）、前記ステップＳ５１２に進む。
【００５７】
そして、ステップＳ５１４から前記ステップＳ５１２に移行した場合は、ボーカルイベントＪ（ｖ）中のノートナンバｋｎに対応する鍵３１の離鍵駆動指示が行われる。ステップＳ５１２の処理後、本処理を終了する。前記ステップＳ５０１、Ｓ５０６〜Ｓ５１４の処理により、歌唱者からみれば、演奏データ２７に基づく自動演奏を聴きながら、発声または発声の停止、及び、発声音高を変化させることで、鍵３１を自由にコントロールすることができる。
【００５８】
本実施の形態によれば、マイク２１を介して入力された音声信号の音高に基づいて再生情報Ｊを生成し、この再生情報Ｊに基づいて鍵３１を個別に駆動するので、指を使うことなく鍵３１を声で駆動してアコースティック演奏をすることができる。
【００５９】
また、シーケンスイベントＪ（ｓ）とボーカルイベントＪ（ｖ）とを並行して再生する際、ボーカルイベントＪ（ｖ）については、遅延させることなくリアルタイムで再生する一方、シーケンスイベントＪ（ｓ）については、ディレイバッファ６３により遅延させて再生するので、声によるリアルタイム演奏を維持しつつ、演奏データ２７に基づく再生では発音タイミングを揃えることができる。
【００６０】
また、シーケンスイベントＪ（ｓ）とボーカルイベントＪ（ｖ）との並行再生時において、シーケンスイベントＪ（ｓ）を再生する際、ボーカルイベントＪ（ｖ）に基づく駆動がなされている鍵３１については、シーケンスイベントＪ（ｓ）に基づく駆動がキャンセルされるので、歌唱者の声による鍵３１の演奏が妨げられることながない。しかも、並行再生時において、ボーカルイベントＪ（ｖ）を再生する際、駆動されるべき鍵３１が、シーケンスイベントＪ（ｓ）に基づき押鍵方向に駆動されている状態にある場合は、当該鍵３１を一旦離鍵させた後に押鍵駆動するので、声によるリアルタイム演奏を確実に行い、且つシーケンスイベントＪ（ｓ）に対して優先することができる。従って、歌唱者は、常に鍵３１を自身の声で自由にコントロールしているという感覚が得られる。
【００６１】
（第２の実施の形態）
第１の実施の形態では、１人の歌唱者の声により同時に１つの鍵３１を駆動する、単音の発音を行う構成を例示したが、本発明の第２の実施の形態では、複数の歌唱者の声により、複数音同時（多重）発音を行う構成を示す。従って、第２の実施の形態では、第１の実施の形態に比し、再生処理が異なり、図５に代えて図６を用いる。また、マイク２１は複数（例えば３個）設けられ、その他の構成は第１の実施の形態と同様である。
【００６２】
本第２の実施の形態では、図４の再生情報生成・出力処理は、複数のマイク２１から同時に入力されることがある音声の個々について、独立に並行してなされる。従って、それぞれの入力音声に基づいてコントローラ１０が再生情報Ｊを生成し、ピアノ制御部５０に出力する。
【００６３】
図６は、第２の実施の形態においてピアノ制御部５０のＣＰＵ５２で実行される再生処理のフローチャートである。
【００６４】
第１の実施の形態では、ボーカルイベントＪ（ｖ）に基づき押鍵方向に駆動されている鍵３１の有無及びその音高を示すレジスタ値として、レジスタ値ＶｏＫｅｙを用いたが、第２の実施の形態では、これに代えて、フラグｆＶｏＫｅｙを用いる。フラグｆＶｏＫｅｙは、各鍵３１毎（各８８個分）に設けられ、ノートナンバｋｎ（ｋｎは１〜８８のいずれかの値をとる）に対応するものを示すために、「ｆＶｏＫｅｙ［ｋｎ］」と表記する。ｆＶｏＫｅｙ［ｋｎ］は、「１」であるとき、ｋｎ値が示す鍵３１が、ボーカルイベントＪ（ｖ）に基づき押鍵方向に駆動されている状態であることを示し、「０」であるとき、そうでないことを示す。すべてのフラグｆＶｏＫｅｙは、鍵盤楽器３０の電源起動時に、初期値である「０」にリセットされる。
【００６５】
ピアノ制御部５０に入力される再生情報Ｊは、シーケンスイベントＪ（ｓ）であるか、またはいずれかのマイク２１で入力された音声に基づくボーカルイベントＪ（ｖ）であり、特にボーカルイベントＪ（ｖ）は複数が同時に入力される場合もある。図６の各ステップの処理は、シーケンスイベントＪ（ｓ）及び複数のボーカルイベントＪ（ｖ）の各々に関して並行してなされる。
【００６６】
まず、図６のステップＳ６０１〜Ｓ６０３、Ｓ６０６、Ｓ６０９〜Ｓ６１３の処理は、図５のＳ５０１〜Ｓ５０３、Ｓ５０６、Ｓ５０９〜Ｓ５１３の処理と同様である。
【００６７】
ステップＳ６０４では、シーケンスイベントＪ（ｓ）中のノートナンバｋｎが、現在、ボーカルイベントＪ（ｖ）に基づき再生中のノートのいずれかであるか否かを、各鍵３１毎に、フラグｆＶｏＫｅｙ［ｋｎ］が「１」であるか否かによって判別する。ステップＳ６０５における押離鍵状態の設定においては、シーケンスイベントＪ（ｓ）がノートオンのイベントであればシーケンスイベントＪ（ｓ）中のノートナンバｋｎに対応するフラグｆＳｅＫｅｙ［ｋｎ］に「１」を設定する一方、ノートオフのイベントであれば「０」を設定する。
【００６８】
ステップＳ６０７では、ボーカルイベントＪ（ｖ）中のノートナンバｋｎに対応するフラグｆＶｏＫｅｙ［ｋｎ］に「１」を設定する。ステップＳ６０８では、ボーカルイベントＪ（ｖ）中のノートナンバｋｎが、現在、シーケンスイベントＪ（ｓ）に基づき再生中のノートであるか否かを、フラグｆＳｅＫｅｙ［ｋｎ］が「１」であるか否かによって判別する。ステップＳ６１４では、フラグｆＶｏＫｅｙ［ｋｎ］に「０」を設定する。
【００６９】
本実施の形態によれば、声によるアコースティック演奏に関し、第１の実施の形態と同様の効果を奏するだけでなく、鍵３１を複数人の歌唱者の声で同時に駆動することができ、声による和音演奏も可能となる。
【００７０】
なお、第１の実施の形態において、１つのマイク２１から入力した単音の音声に基づいて、同時に複数の鍵３１を駆動できるようにしてもよい。その場合は、例えば、再生情報生成・出力部２６が再生情報Ｊを生成する際、検出音高Ｎに基づいて、ノートナンバｋｎを異にする複数の再生情報Ｊを生成するようにする。検出音高Ｎに基づくノートナンバｋｎの設定は、例えば、並行して再生される演奏データ２７中の和音情報に基づき行うようにしてもよいし、操作部１５による設定に従って、例えば、検出音高Ｎに対して協和する所定の関係にあるもの（３度、５度高い音高等）としてもよい。
【００７１】
なお、第１、第２の実施の形態において、シーケンスイベントＪ（ｓ）に対してボーカルイベントＪ（ｖ）に基づく再生が常に優先するとしたが、後着優先、すなわち、シーケンスイベントＪ（ｓ）及びボーカルイベントＪ（ｖ）のうち新たに入力されたものを優先的に再生するようにしてもよい。その場合、例えば、第１の実施の形態において、図５のステップＳ５０４で「ＹＥＳ」と判別されたら、ステップＳ５０９、Ｓ５１０と同様の処理を実行してから図５の処理を終了するように制御すればよい。第２の実施の形態においても同様である。
【００７２】
なお、第１、第２の実施の形態において、サイレントモードは並行駆動モードにおいても設定可能である。この場合、サイレントモード時には、打弦をさせないために、シャンクストッパ３５を、全ハンマ３２の動きを止める位置に駆動する。それと共に、生成した再生情報Ｊに基づいて、コントローラ１０内の音源１９で電子発音する。あるいは、ピアノ制御部５０に音源を設け、ピアノ制御部５０内で電子発音を行うようにしてもよい。
【００７３】
なお、第１、第２の実施の形態において、演奏データ２７は、記憶装置１８から供給されるとしたが、演奏データを供給するものであれば、ＣＤ−ＲＯＭ等の可搬の外部メディアであってもよく、または、外部から通信により演奏データを入力し、これを供給するものであってもよい。
【００７４】
なお、第１、第２の実施の形態においては、鍵３１を駆動する構成を示したが、駆動制御する対象は、アコースティック演奏を行うために押離操作される複数の演奏操作子であればよく、上記鍵３１に限定されない。例えば、同様の制御をペダルＰＤの駆動に関し行うようにしてもよい。ペダルＰＤが１つしかない場合は、音声の音高は関係なく、音量のみでオンオフ制御することになる。また、ペダルＰＤを複数設けた場合は、どのペダルＰＤを駆動するかは、１つの入力音声の音高で決まるようにしてもよいし、ペダルＰＤ毎に対応するマイクを設け、複数の入力音声によって各ペダルＰＤを独立に駆動制御するようにしてもよい。
【００７５】
なお、本発明が適用される鍵盤楽器は、例示したようなグランドピアノ型の自動演奏ピアノに限られず、アップライト型の自動演奏ピアノであってもよい。また、鍵盤やペダルを声で駆動操作するという目的に限って言えば、演奏データ２７等のシーケンスデータに基づく自動演奏機能は必須ではない。
【図面の簡単な説明】
【００７６】
【図１】本発明の第１の実施の形態に係る鍵盤楽器の構成を、ある１つの鍵に着目して示した部分断面図である。
【図２】コントローラ及びピアノ制御部の構成を示すブロック図である。
【図３】再生情報のデータ構成を示す概念図である。
【図４】コントローラのＣＰＵで実行される再生情報生成・出力処理のフローチャートである。
【図５】ピアノ制御部のＣＰＵで実行される再生処理のフローチャートである。
【図６】第２の実施の形態においてピアノ制御部のＣＰＵで実行される再生処理のフローチャートである。
【符号の説明】
【００７７】
１０  コントローラ、  １１  ＣＰＵ、  １８  記憶装置（演奏情報供給手段）、  ２１  マイク（音声入力手段）、  ２３  音量検出部、  ２４  音高検出部（音高検出手段）、  ２５  音高変換部、  ２６  再生情報生成・出力部（駆動用情報生成手段）、  ２７  演奏データ（演奏情報）、  ３０  鍵盤楽器、  ３１  鍵（演奏操作子）、  ５０  ピアノ制御部（制御手段）、  ５２  ＣＰＵ、  ５９  鍵駆動部（駆動手段）、  ６０  ペダル駆動部（駆動手段）、  ６２  目標値生成・出力部、  ６３  ディレイバッファ（タイミング調整手段）、  Ｊ  再生情報、Ｊ（ｖ）  ボーカルイベント（駆動用情報）、  Ｊ（ｓ）  シーケンスイベント、  ＰＤ  ペダル（演奏操作子）
【図１】
2006243537.tif 000003
【図２】
2006243537.tif 000004
【図３】
2006243537.tif 000005
【図４】
2006243537.tif 000006
【図５】
2006243537.tif 000007
【図６】
2006243537.tif 000008