(57)【要約】【課題】自動演奏時にキーコントロール操作があったとき、それ以後発音される楽音に加えて現在発音中の楽音も移調することができるようにする。【解決手段】キーコントロールスイッチ１５ａを操作して演奏キーを移調する操作がされたとき、ＣＰＵ１０が音源装置１８に出力するＭＩＤＩメッセージを移調して出力するとともに、音源１８に対してトランスポーズ情報を送信し、音源１８がこのトランスポーズ情報に基づいて発音中の楽音のキーも移調する。【選択図】図１
2007178890.tif 000002
【特許請求の範囲】
【請求項１】
発音する楽音の音高を指示する音高情報を含む発音指示データを発生する発音指示データ発生手段と、該発音指示データを入力して楽音を発生する音源と、音高のシフトを指示するキーコントロール指示手段と、を備え、
前記発音指示データ発生手段は、キーコントロール指示手段で音高のシフトが
指示されたとき、それ以後に発生する発音指示データの音高情報が指示する音高
を指示にしたがってシフトする手段を含み、
前記音源は、キーコントロール指示手段で音高のシフトが指示されたとき、発
音中の楽音の音高を指示にしたがってシフトする手段を含む
自動演奏装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、自動演奏している楽曲の調（キー）を演奏途中で移調することが
できるキーコントロール機能を備えた自動演奏装置に関する。
【背景技術】
【０００２】
カラオケ装置などの自動演奏装置では、演奏のキーを歌唱者の音域に合わせた
り他の楽器の調性に合わせたりするため、演奏のキーをオリジナルから所望のキ
ーに移調するキーコントロール機能を備えたものがあった。
【０００３】
一般的な自動演奏装置は、ＭＩＤＩシーケンスデータをテンポクロック信号に基づいて順次読み出し、これを音源に入力することによって楽音を発生するものであり、従来のキーコントロール機能は、読み出したＭＩＤＩデータの音高を移調する調の音高に書き換えて音源に入力するものであった。この音高が書き換えられたＭＩＤＩデータが音源に入力されることにより、それ以後発生される楽音が所定の調に移調される。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、上記従来の技術では、演奏中にキーコントロール操作をした場合、その操作以後に発音される楽音は上記の処理で移調されるが、既に発音中の楽音は、移調されずそのままであった。このため、キーコントロール操作から暫くの間は移調された楽音と移調されない元の楽音とが混在することになり、響きが濁ってしまうという問題点があった。
【０００５】
この発明は、自動演奏時にキーコントロール操作があったとき、それ以後発音される楽音に加えて現在発音中の楽音も移調することのできる自動演奏装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
この発明は、発音する楽音の音高を指示する音高情報を含む発音指示データを発生する発音指示データ発生手段と、該発音指示データを入力して楽音を発生する音源と、音高のシフトを指示するキーコントロール指示手段と、を備え、
前記発音指示データ発生手段は、キーコントロール指示手段で音高のシフトが
指示されたとき、それ以後に発生する発音指示データの音高情報が指示する音高
を指示にしたがってシフトする手段を含み、
前記音源は、キーコントロール指示手段で音高のシフトが指示されたとき、発
音中の楽音の音高を指示にしたがってシフトする手段を含むことを特徴とする。
【０００７】
この発明では、キーコントロール指示手段によって音高のシフトが指示されると、それ以後発生される（音源に入力される）発音指示データの音高情報が指示する音高を指示に応じてシフトして書き換える。このように以後の音高を全てシフトすることにより演奏のキーが移調される。これに加えて、音源が現在発生している楽音の音高もシフトする。これにより、演奏途中に音高のシフトを指示した場合でも、発音中の楽音を含めて全ての楽音の音高がシフトされるため、リアルタイムのキーコントロールが可能になるとともに、キーコントロール直後の不協音を無くすことができる。
【発明の効果】
【０００８】
この発明によれば、キーコントロール指示手段で音高をシフトする指示がされたとき、発音中の音を含めてそれ以後の楽音の音高が全てシフトされるため、演奏中のリアルタイムの移調が可能になり、キーコントロール直後の不協音を無くすことができる。
【発明を実施するための最良の形態】
【０００９】
図面を参照してこの発明の実施形態であるカラオケ装置について説明する。図１は同カラオケ装置のブロック図である。図２は同カラオケ装置の操作パネルおよび音源装置の構成を示す図である。また、図３は同カラオケ装置で使用される楽曲データの構成を示す図である。
【００１０】
カラオケ曲を演奏するための楽曲データはハードディスク１７やＣＤ−ＲＯＭチェンジャ４にセットされるＣＤ−ＲＯＭに記憶されている。利用者によってカラオケ曲がリクエストされると、カラオケ装置は、カラオケ曲の楽曲データを読み出し、音源装置１８を駆動してカラオケ演奏を実行する。曲の演奏は、楽曲データ毎に予め定められている調（キー）で行われるが、装置前面の操作パネルおよびリモコンにはキーコントロールスイッチが設けられており、利用者がこれを操作することにより、演奏のキーを半音ずつ上昇または下降させることができる。
【００１１】
図１において、このカラオケ装置は、カラオケ装置本体１、コントロールアンプ２、音声信号処理装置３、ＣＤ−ＲＯＭチェンジャ４、スピーカ５、モニタ６、マイク７および赤外線のリモコン装置８で構成されている。カラオケ装置本体１はこのカラオケ装置全体の動作を制御する。該カラオケ装置本体１の制御装置であるＣＰＵ１０には、内部バスを介してＲＯＭ１１、ＲＡＭ１２、ハードディスク記憶装置１７、通信制御部１６、リモコン受信部１３、表示パネル１４、パネルスイッチ１５、音源装置１８、音声データ処理部１９、文字表示部２０、表示制御部２１が接続されるとともに、上記外部装置であるコントロールアンプ２、音声信号処理装置３及びＣＤ−ＲＯＭチェンジャ４がインタフェースを介して接続されている。
【００１２】
ＲＯＭ１１にはこの装置を起動するために必要な起動プログラムが記憶されている、装置の動作を制御するシステムプログラム、カラオケ演奏実行プログラムなどはハードディスク記憶装置１７に記憶されている。カラオケ装置の電源がオンされると上記起動プログラムによってシステムプログラムやカラオケ演奏プログラムがＲＡＭ１２に読み込まれる。
【００１３】
ハードディスク記憶装置１７には、上記プログラムを記憶するプログラム記憶エリアのほか、楽曲データを記憶する楽曲データ記憶エリアなどが設定されている。楽曲データ記憶エリアは、数千曲分の楽曲データを記憶することができ、配信センタ９が定期的にダウンロードしてくる新曲の楽曲データなどが記憶される。通信制御部１６はＩＳＤＮ回線を介して配信センタ９と接続される。配信センタ９は、定期的にカラオケ装置に対して電話を掛け、新曲の楽曲データ、バージョンアップされた制御プログラムなどをダウンロードしてくる。
【００１４】
リモコン操作部８は、テンキー、予約キー、キーコントロールスイッチ８ａ、８ｂなどのキースイッチを備えており、利用者がこれらのスイッチを操作するとその操作に応じたコード信号が赤外線で出力される。利用者はテンキーを操作して所望のカラオケ曲の曲番号を入力し、その曲をリクエストする場合には続いて予約キーをオンする。キーコントロールスイッチ８ａ、８ｂは演奏中のカラオケ曲のキーを半音ずつ上下にシフトするためのキースイッチである。演奏中にスイッチ８ａを１回オンすると演奏キーが半音上昇する。また演奏中にスイッチ８ｂを１回オンすると演奏キーが半音下降する。演奏キーはオリジナルキーから６半音まで上昇または下降させることができる。リモコン受信部１３はリモコン装置８から送られてくる赤外線信号を受信して、そのコード信号を復元しＣＰＵ１０に入力する。ＣＰＵ１０は、リモコン装置８からキーコントロール信号が入力されるとその内容の曲番号をＲＡＭ１２に設定されている予約曲リストに登録する。
【００１５】
表示パネル１４はこのカラオケ装置１に設けられており、現在演奏中の曲番号や予約曲数を表示するマトリクス表示器や、現在設定されているキーを表示するＬＥＤ群などを含んでいる。パネルスイッチ１５は、前記リモコン装置８と同様の曲番号入力用のテンキー、予約キー、キーコントロールスイッチ１５ａなどを備えている。
【００１６】
図２は操作パネル面の一部構成を示す図である。キーコントロールスイッチ１５ａは＋スイッチ３０および−スイッチ３１からなっている。＋スイッチ３０をオンすると演奏中のカラオケ曲のキーが半音上昇する。＋スイッチ３０のオンに対応してＲＡＭ１２に設けられているシフト量レジスタｄに１を加算することにより、後述のシーケンスプログラムがこの処理を実行する。また、−スイッチ３１をオンすると演奏中のカラオケ曲のキーが半音下降する。−スイッチ３１のオンに対応してシフト量レジスタｄから１を減算することにより、シーケンスプログラムがこの処理を実行する。さらに、＋スイッチ３０と−スイッチ３１を同時にオンすると演奏中のカラオケ曲のキーはオリジナル曲にリセットされる。＋スイッチ３０、−スイッチ３１のオンに対応してシフト量レジスタｄを０にリセットすることにより、シーケンスプログラムがこの処理を実行する。
【００１７】
シフト量レジスタｄの数値は半音数に対応しており、この数値で示される半音数だけ楽音の音高がシフトされる。また、音源装置１８などの機能上の音高の上下は＋６半音〜−６半音の範囲に限定される。したがって、シフト量レジスタｄに記憶される値の範囲も＋６〜−６であり、これを外れる範囲のスイッチ操作は無視される。また、スイッチ３０、３１の上に設けられているシフト量インジケータ３２も−６〜０〜＋６の１３個が設けられている。
【００１８】
文字表示部２０はＶＲＡＭを備え、カラオケ曲の歌詞などを文字パターンに展開する。文字パターンは、映像信号として表示制御部２１に入力される。また、カラオケ演奏時はＣＤ−ＲＯＭチェンジャ４は背景映像を再生し、この映像信号も表示制御部２１に入力される。表示制御部２１は、文字パターンを背景映像にスーパーインポーズで合成してモニタ６に表示する。なお、ＣＤ−ＲＯＭチェンジャ４にセットには６枚程度のＣＤ−ＲＯＭをセットすることができ、そのうち数枚には上記背景映像が記録されており、他の数枚には定番となっているカラオケ曲の楽曲データが記録されている。
【００１９】
音源装置１８は、楽曲データの楽曲トラックのイベントデータ（図４（Ｂ）参照）に基づいて楽音信号を形成する。楽音トラックは、複数のトラックを有しており、音源装置１８はこのデータに基づいて複数パートの楽音信号を同時に形成する。音声データ処理部１９は、楽曲データに含まれる音声データに基づき、指定された長さ、指定された音高の音声信号を形成する。音声データは、バックコーラスなどの人声など電子的に形成しにくい信号波形をそのままＰＣＭ信号として記憶したものである。前記音源装置１８が形成した楽音信号及び音声データ処理部１９が再生した音声信号は、コントロールアンプ２に入力される。コントロールアンプ２には、２本のマイク７ａ、７ｂが接続されており、カラオケ歌唱者の歌唱音声信号が入力される。コントロールアンプ２はこれらのオーディオ信号に、それぞれエコー等所定の効果を付与したのち増幅してスピーカ５に出力する。音声信号処理装置３は、コントロールアンプ２から入力された歌唱音声信号をディジタル処理することにより、音程のずれを修正したり、他のパートのハーモニー歌唱を作成したりする。修正された歌唱音声信号及び作成された他のパートのハーモニー歌唱信号は再度コントロールアンプ２に入力される。
【００２０】
図３は、前記音源装置１８の構成図である。楽音の発生（楽音波形の形成）は、複数個（たとえば６４個）の発音スロット４２が行う。各発音スロット４２は、楽音の発生がランダムにアサインされる。このアサイン及び発音中の発音スロットの制御は制御部３１が行う。制御部４１にはＭＩＤＩバッファ４０が接続されている。このＭＩＤＩバッファ４０は前記内部バッファに接続されており、ＣＰＵ１０から入力されるＭＩＤＩメッセージをバッファリングする。制御部４１は数ミリ秒の短い繰り返し周期の周期処理でこのＭＩＤＩバッファ４０の内容を読み出し、対応する処理を実行する。発音スロット４２が形成した楽音波形はエフェクタでありＤＳＰ４３に入力される。ＤＳＰ４３は、楽音波形に対してディストレーションなどの楽音波形形状を変形するようなエフェクトを付与して次段（コントロールアンプ２）に出力する。
【００２１】
図４を参照して前記楽曲データの構成及びこのデータに基づくカラオケ装置の動作を説明する。楽曲データは、ヘッダ、楽曲トラック、歌詞トラック、音声制御トラック、効果制御トラック及び音声データ部からなっている。ヘッダは、この楽曲データに関する種々のデータが書き込まれる部分であり、曲番号、曲名、ジャンル、発売日、曲の演奏時間などのデータを含んでいる。各楽曲データは曲番号で識別される。
【００２２】
楽曲トラック、歌詞トラック、音声制御トラック、効果制御トラックの各トラックは全てＭＩＤＩフォーマットで記述されている。ＭＩＤＩフォーマットは、本来楽音トラックのような楽音制御用のデータを記述するためのフォーマットであるが、全データを統一したフォーマットで記述し、インプリメントを容易にするため、楽音以外のトラックもＭＩＤＩフォーマットで記述している。ＭＤＩフォーマットは、イベントデータと各イベントデータの読み出しタイミングを示すタイミングデータ（Δｔ）を時系列に配列して構成したものである。タイミングデータは、各イベントデータ間の時間的間隔を示している。ＣＰＵ１０は、先頭から順次トラックのデータを読み出してゆき、イベントデータを読み出すとこれを対応する装置に出力する。カラオケ曲の演奏時には、上記複数のトラックが並行して読み出される。
【００２３】
楽音トラックのイベントデータは、ノートオンメッセージ、ノートオフメッセージなどのＭＩＤＩメッセージで構成されており、音源装置１８に出力される。このデータを受け取った音源装置１８は、楽音を発音／消音したり、楽音形成機能を変更したりする。
【００２４】
歌詞トラックは、モニタ６に表示する歌詞の文字コード、表示座標、表示色などを指示するためのトラックであり、イベントデータである文字表示データと各イベントデータの時間的間隔を示すタイミングデータで構成されている。文字表示データは、１行の歌詞の文字データ、この歌詞の表示座標、および、色替えや消去を制御するワイプシーケンスデータからなっている。
【００２５】
音声制御トラックは、音声データ部の音声データの再生を指示するためのトラックである。音声データは、上述したように、音源装置１８で合成しにくいバックコーラスなどの人声をデジタル化したデータであり、音声制御トラックによってその読み出しタイミングが指示される。音声制御トラックのイベントデータが読み出され、音声データの読み出しが指示されると、ＣＰＵ１０がこれを音声データ処理部１９に入力する。音声データ処理部１９はデジタルの音声データをアナログ信号に復調してコントロールアンプ２に入力する。
【００２６】
また、効果制御トラックは、楽音に付与するエフェクトをコントロールアンプ２や音声信号処理部装置３に対して指示するためのトラックである。
【００２７】
図５〜図７は同カラオケ装置の動作を示すフローチャートである。
【００２８】
図５は前記キーコントロールスイッチが操作されると（ｓ１）、この操作内容をキーコントロールレジスタｄに書き込む（ｓ２）、とともに、これをＭＩＤＩメッセージに編集して音源装置１８に送出する（ｓ３）。このＭＩＤＩメッセージは、キーのシフトを指示するトランスポーズメッセージであり、システムエクスクルーシブメッセージで構成されている。
【００２９】
図６はシーケンス動作を示している。シーケンス動作とは、テンポクロックに基づいて上記楽曲データを読み出して音源装置などを駆動する動作である。同図のシーケンス動作はテンポクロックをトリガとして実行される割込処理動作である。この動作がスタートするまえにタイムカウントレジスタｔに１を入力するリセット処理やポインタを上記トラックの先頭に移動させる処理などのイニシャライズ処理が実行される。
【００３０】
テンポクロックのトリガによってこの動作がスタートすると、まずタイムカウントレジスタｔをカウントダウン（ｔ←ｔ−１）する（ｓ１１）。これによってｔ＝０になれば（ｓ１２）、データ読み出しタイミングであるためｓ１３以下の動作を実行する。そうでない場合にはｔをカウントダウンしたのみで動作を終了する。
【００３１】
カウントダウンの結果ｔ＝０になり動作がｓ１３に進んだ場合には、楽音トラック上のポインタが指し示しているデータを読み出す（ｓ１３）。読み出したデータがイベントデータであれば（ｓ１４）、そのイベントに対応する処理を実行する。楽音トラックのデータは音源を制御するためのデータであるため、このデータはＭＩＤＩメッセージとして音源装置に出力されるが、まず、そのＭＩＤＩメッセージがノートメッセージであるかを判断する（ｓ１５）。ノートメッセージとは、楽音の発生を指示するノートオンメッセージ、楽音の消音を支持するノートオフメッセージ、ポリフォニックキープレッシャなどのノートナンバを含むメッセージである。このメッセージの場合には、キーコントロール値ｄだけこのノートナンバをシフトして書き換えたのち（ｓ１６）、これを音源装置１８に送信する（ｓ１７）。ノートメッセージ以外のＭＩＤＩメッセージ（コントロールチェンジなど）の場合にはそのまま音源装置１８に送出する。こののち、ポインタを歩進させて（ｓ１８）、次のデータを読み出すためにｓ３に戻る。また、読み出したデータがデュレーションデータであった場合には（ｓ１９）、これをｔにセットし（ｓ２０）、ポインタを歩進させて（ｓ２１）動作を終了する。
【００３２】
以上の動作によって音源装置１８にノートオンメッセージなどのＭＩＤＩデータが入力され、音源装置１８はこのメッセージの内容で発音スロットに対して楽音の発生を指示する。また、キーコントロールスイッチで演奏キーが上下にシフトされている場合には、ｓ１６の動作でノートメッセージのノートナンバがシフトされ、新たに発音される楽音はこれによってシフトされた音高で発音される。
【００３３】
図７は音源装置１８の周期処理を示すフローチャートである。この動作は、音源装置１８が数ミリ秒毎に繰り返し実行する制御動作である。まずＭＩＤＩバッファをチェックする（ｓ３１）。メッセージがあれば（ｓ３２）、このＭＩＤＩメッセージに対応する処理を実行する。このＭＩＤＩメッセージが上記トランスポーズメッセージであれば（ｓ３３）、現在発音中の発音スロットに対して発音している楽音の周波数をトランスポーズ分上下させるように指示する。これによって発音中の楽音の音高が突然上下するようなことになるが、利用者のキーコントロール操作によるものであるため音高が不連続になっても利用者を驚かせることはない。また受信したＭＩＤＩメッセージがトランスポーズ以外のメッセージでれば、空いている発音スロットを検索してこのノートの発音を指示するなどである。この新たなノートメッセージは上記ｓ１６の処理で既にノートナンバがシフトされているためトランスポーズする必要はない。
【００３４】
こののち、読み出したメッセージをクリアして（ｓ３６）、他の周期処理を実行する（ｓ３７）。他の周期処理とは、各発音スロットに対してレベルを指示してエンベロープを付与するなど、リアルタイムの発音制御動作である。
【００３５】
これによ、キーコントロールスイッチの操作があった瞬間に、現在発音中の楽音もこのキーコントロールに応じてキーがシフトする。
【００３６】
なお、この実施形態はカラオケ装置について示したが、他の自動演奏装置においてもこの発音を適用することができる。
【図面の簡単な説明】
【００３７】
【図１】この発明の実施形態であるカラオケ装置のブロック図
【図２】同カラオケ装置のキーコントロールスイッチの構成を示す図
【図３】同カラオケ装置の音源装置の構成を示す図
【図４】同カラオケ装置において使用される楽音データの構成を示す図
【図５】同カラオケ装置の動作を示すフローチャート
【図６】同カラオケ装置の動作を示すフローチャート
【図７】同カラオケ装置の音源装置の動作を示すフローチャート
【符号の説明】
【００３８】
１…カラオケ装置、８…リモコン、８ａ…キーコントロールスイッチ、１５…パネルスイッチ、１８…音源装置、１５ａ…キーコントロールスイッチ、３０…＋スイッチ、３１…−スイッチ、４０…ＭＩＤＩバッファ、４１…制御部、４２…発音スロット
【図１】
2007178890.tif 000003
【図２】
2007178890.tif 000004
【図３】
2007178890.tif 000005
【図４】
2007178890.tif 000006
【図５】
2007178890.tif 000007
【図６】
2007178890.tif 000008
【図７】
2007178890.tif 000009