(57)【特許請求の範囲】
【請求項１】
楽音を再生するための複数のトラックの演奏データとファイルタイプを表わすファイルタイプデータとを含む演奏データファイルを複数記憶する演奏データ記憶手段と、
前記演奏データの各トラックそれぞれが割り当てられる演奏パートを規定したテーブルを前記ファイルタイプに対応付けて記憶したテーブル記憶手段と、
再生すべき演奏データを記録した演奏データファイルを選択する選択手段と、
前記テーブルを一時的に記憶する一時記憶手段と、
前記選択された演奏データファイルのファイルタイプに対応したテーブルを前記テーブル記憶手段から読み出して前記一時記憶手段に記憶させるテーブル読出手段と、
前記一時記憶手段に記憶されたテーブルに基づいて前記演奏データの各トラックをそれぞれ演奏パートに割り当てる再生設定手段と
を具えた演奏データファイルの再生設定制御装置において、
前記一時記憶手段に記憶されたテーブルにおける任意の前記トラックと演奏パートとの対応関係をユーザの操作に応じて変更する変更手段と、
再生すべき演奏データとして新たな演奏データファイルが選択されたときに、当該選択された演奏データファイルのファイルタイプと前回選択された演奏データファイルのファイルタイプとの一致を判定する判定手段と、
前記判定手段によりファイルタイプが不一致であると判定された場合は、前記テーブル読出手段により、前記新たに選択された演奏データファイルのファイルタイプに対応したテーブルで前記一時記憶手段に記憶されたテーブルを上書き更新するよう制御する一方、前記判定手段によりファイルタイプが一致していると判定された場合は、前記一時記憶手段に記憶されているテーブルをそのまま維持するよう制御する制御手段と
を具えたことを特徴とする演奏データファイルの再生設定制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、いわゆる押鍵ガイドなどの演奏支援機能を所望の演奏パートについて実行させることのできる電子楽器あるいは楽音発生機器に係り、特に複数の演奏パートのそれぞれに対して適切な演奏データ（トラック単位の演奏データ列）を効率的に割り当てることのできる電子楽器あるいは楽音発生機器における設定制御装置に関する。
【０００２】
【従来の技術】
近年、電子楽器の付加機能として、用意された自動演奏データに従って自動演奏を行わせる機能だけでなく、初心者でも所望の曲を演奏できるように、押鍵すべき鍵を演奏にあわせて順次指示してくれるといった演奏支援のための機能（以下、押鍵ガイド機能と呼ぶことにする）などが広く知られている。例えば、ピアノ型の電子楽器における押鍵ガイド機能の典型例として、各鍵に対応して設けられた発光ダイオード（ＬＥＤ）を演奏の進行にあわせて順次点灯・消灯することにより押鍵すべき鍵を順次に指示してくれる機能や、あるいは操作すべき鍵、その鍵の操作開始タイミング（押鍵タイミング）および操作終了タイミング（離鍵タイミング）を電子楽器上に設けられた液晶表示画面を用いて指示してくれる機能をあげることができる。
【０００３】
上述のような電子楽器では、右手で行う演奏（メロディ演奏に相当し、以下、右手パート演奏と呼ぶことにする）と左手で行う演奏（和音演奏に相当し、以下、左手パート演奏と呼ぶことにする）とのいずれか一方、あるいはその両方に対応する押鍵ガイド機能を選択的に動作させることができ、演奏練習時（押鍵ガイド機能動作時）には、押鍵ガイド対象として選択されたパートはミュート設定、つまり、押鍵ガイドによる押鍵指示が行われるのみで自動演奏による楽音の発音はされない状態に設定され、選択されていないパートおよびその他の伴奏パートについては自動演奏による楽音の発音が行われるようになる。これにより、演奏者は練習したいパート以外のパートの演奏を聞きながら練習したいパートの演奏練習を行えるようになっている。
【０００４】
【発明が解決しようとする課題】
また、上述の機能で使用される自動演奏データは、楽音の発音や消音等を表すイベントデータと各イベントの発生タイミングを表すタイミングデータとを楽音の進行順に複数の演奏パート分だけ記録したものであり、前記イベントデータには、各イベントデータがいずれの演奏パートに属するかを表すトラック番号なるデータが付加されている。そして、例えばトラック番号データとして「１」が付加されているイベントデータを右手パート演奏のデータとみなす等のような対応をとることにより（この対応を以下、トラックアサインと呼ぶ）、上述した押鍵ガイド機能を適切に動作させている。しかし、このトラック番号と演奏パートとの対応関係には統一された規格がなく各メーカ毎にまちまちであって、同じトラック番号データが付されたイベントデータであっても、あるメーカの電子楽器では右手パート演奏用のデータとして解釈され、他のメーカの電子楽器では左手パート演奏用のデータとして解釈されてしまうという問題が生じていた。従来の電子楽器ではこの問題を解決するために、各メーカ毎の前記対応関係の情報（この情報を以下、トラックアサインテーブルと呼ぶ）を予め用意しておき、新たな自動演奏データの読み出しが指示されるたびに、その自動演奏データがいずれのメーカのものであるか（いずれのメーカの電子楽器で作成されたか）に従って前記トラックアサインテーブルを参照することにより、各トラックと演奏パートとの対応をとるようにしていた。
【０００５】
ところが、１つのメーカでもいく通りかのトラックアサイン設定が存在し、必ずしも予め用意されているトラックアサインテーブルによって全ての自動演奏データに対して適切なトラックアサイン設定を行えるとは限らず、その場合には、演奏者が手動設定により適宜トラックアサイン設定を行う必要があった。そして、前記のように手動設定したトラックアサイン設定は、次の自動演奏データが読み出されると、トラックアサインテーブルのいずれかのトラックアサイン状態に必ず変更されていた（トラックアサインテーブルの中には、該当メーカがない場合のトラックアサイン設定の情報も記録されているため、読み出した自動演奏データに対して必ずなんらかのトラックアサイン設定が行われていた）。したがって、トラックアサインテーブルに適切なトラックアサイン設定の情報が記録されていない自動演奏データを読み出すたびに手動でのトラックアサイン設定を行わなければならず、例えば、同じ記録形式で記録された自動演奏データを連続して読み出す場合でも、その記録形式に対応したトラックアサイン設定の情報がトラックアサインテーブに記録されていなければ、その都度、手動でトラックアサイン設定しなければならなく、この設定作業が非常に煩わしいものであった。
【０００６】
本発明は、演奏者が簡単な操作により、複数の演奏パートに対して適切な演奏データ（あるいはトラック番号）を割り当てることができるようにした演奏データファイルの再生設定制御装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明に係る演奏データファイルの再生設定制御装置は、楽音を再生するための複数のトラックの演奏データとファイルタイプを表わすファイルタイプデータとを含む演奏データファイルを複数記憶する演奏データ記憶手段と、前記演奏データの各トラックそれぞれが割り当てられる演奏パートを規定したテーブルを前記ファイルタイプに対応付けて記憶したテーブル記憶手段と、再生すべき演奏データを記録した演奏データファイルを選択する選択手段と、前記テーブルを一時的に記憶する一時記憶手段と、前記選択された演奏データファイルのファイルタイプに対応したテーブルを前記テーブル記憶手段から読み出して前記一時記憶手段に記憶させるテーブル読出手段と、前記一時記憶手段に記憶されたテーブルに基づいて前記演奏データの各トラックをそれぞれ演奏パートに割り当てる再生設定手段とを具えた演奏データファイルの再生設定制御装置において、前記一時記憶手段に記憶されたテーブルにおける任意の前記トラックと演奏パートとの対応関係をユーザの操作に応じて変更する変更手段と、再生すべき演奏データとして新たな演奏データファイルが選択されたときに、当該選択された演奏データファイルのファイルタイプと前回選択された演奏データファイルのファイルタイプとの一致を判定する判定手段と、前記判定手段によりファイルタイプが不一致であると判定された場合は、前記テーブル読出手段により、前記新たに選択された演奏データファイルのファイルタイプに対応したテーブルで前記一時記憶手段に記憶されたテーブルを上書き更新するよう制御する一方、前記判定手段によりファイルタイプが一致していると判定された場合は、前記一時記憶手段に記憶されているテーブルをそのまま維持するよう制御する制御手段とを具えたことを特徴とするものである。
【０００８】
この発明では、再生すべき演奏データを記録した演奏データファイルを選択し、選択された演奏データファイルのファイルタイプに対応したテーブルをテーブル記憶手段から読み出して一時記憶手段に記憶させ、この一時記憶手段に記憶されたテーブルに基づいて演奏データの各トラックをそれぞれ演奏パートに割り当てるようにしており、その場合に、変更手段により、一時記憶手段に記憶されたテーブルにおける任意のトラックと演奏パートとの対応関係をユーザの操作に応じて変更することができるものであり、かつ、再生すべき演奏データとして新たな演奏データファイルが選択されたときに、当該選択された演奏データファイルのファイルタイプと前回選択された演奏データファイルのファイルタイプとの一致を判定し、不一致であると判定された場合は新たに選択された演奏データファイルのファイルタイプに対応したテーブルで一時記憶手段に記憶されたテーブルを上書き更新するよう制御する一方、一致していると判定された場合は一時記憶手段に記憶されているテーブルをそのまま維持するよう制御することを特徴としている。このように、一時記憶手段に記憶されたテーブルにおける任意のトラックと演奏パートとの対応関係をユーザの操作に応じて変更することができ、また、次に再生すべき演奏データとして新たな演奏データファイルが選択されたときに、そのファイルタイプが前回選択された演奏データファイルのファイルタイプと一致している場合は、一時記憶手段に記憶されているテーブルをそのまま維持するよう制御するので、演奏者（ユーザ）は同じファイルタイプの演奏データファイルを相次いで演奏する場合に、その自動演奏を開始する毎にその都度同じ変更操作を繰り返し行う必要がないので、操作を簡単にすることができる、という効果が得られる。
【００１０】
本発明は、装置発明として構成し、実施することができるのみならず、コンピュータプログラムの形態で実施することができるし、そのようなコンピュータプログラムを記憶した記憶媒体の形態で実施することもできる。
【００１１】
【発明の実施の形態】
以下、添付図面を参照してこの発明の実施の形態を詳細に説明する。
【００１２】
図２は、この発明に係る電子楽器の設定制御装置に従って動作する電子楽器全体の構成を示すハードブロック図である。電子楽器は、ＣＰＵ２１によって制御される。ＣＰＵ２１にはデータ及びアドレスバス２Ｐを介してリードオンリメモリ（ＲＯＭ）２２、ランダムアクセスメモリ（ＲＡＭ）２３、外部記憶装置２４、操作子検出回路２５、通信インターフェイス２７、ＭＩＤＩインターフェイス２Ａ、鍵盤検出回路２Ｆ、ガイドＬＥＤ検出回路２Ｇ、表示回路２Ｈ、音源装置２Ｊが接続されている。電子楽器はこれら以外のハードウェアを有する場合もあるが、ここでは必要最小限の資源を用いた場合について説明する。
【００１３】
ＣＰＵ２１はＲＯＭ２２及びＲＡＭ２３内の各種プログラムや各種データ、及び外部記憶装置２４から取り込んだ自動演奏データ（以下、ソングデータと呼ぶことにする）に基づいた処理を行う。この実施の形態では、外部記憶装置２４としては、ハードディスクドライブ、フロッピーディスクドライブ、ＣＤ−ＲＯＭドライブ、光磁気ディスク（ＭＯ）ドライブ、ＺＩＰドライブ、ＰＤドライブ、ＤＶＤなどが適宜用いられる。また、ＭＩＤＩインターフェイス２Ａを介して他のＭＩＤＩ機器２Ｂなどから「ソングデータ」などを取り込んでもよい。ＣＰＵ２１は、このような外部記憶装置２４から取り込まれた「ソングデータ」を音源装置２Ｊに供給し、外部のサウンドシステム２Ｌを用いて発音する。
【００１４】
ＲＯＭ２２はＣＰＵ２１のシステム関連のプログラム、各種のパラメータやデータなどを記憶している。なお、この実施の形態では、自動演奏処理等の動作プログラムの他に基本の「トラックアサインテーブル」等がＲＯＭ２２に記憶されている。
ＲＡＭ２３はＣＰＵ２１がプログラムを実行する際に発生する各種のデータ等を一時的に記憶するワーキングメモリ機能と各種のデータを記憶するデータメモリ機能を有し、メモリの所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグあるいはバッファ等として利用される。この実施の形態では、変更された「トラックアサインテーブル」がＲＡＭ２３に記憶される。なお、前記ＲＯＭ２２に動作プログラム、各種データなどを記憶させる代わりに、ＣＤ−ＲＯＭドライブ等の外部記憶装置２４に各種データ及び任意の動作プログラムを記憶していてもよい。外部記憶装置２４に記憶されている動作プログラムや各種データは、ＲＡＭ２３等に転送記憶させることができる。これにより、動作プログラムの新規のインストールやバージョンアップを容易に行うことができる。
【００１５】
なお、通信インターフェイス２７を介してＬＡＮ（ローカルエリアネットワーク）やインターネット、電話回線などの種々の通信ネットワーク２８上に接続可能とし、他のサーバコンピュータ２９との間で動作プログラムや各種データ等のやりとりを行うようにしてもよい。これにより、サーバコンピュータ２９から動作プログラムや各種データをダウンロードすることもできる。この場合、クライアントとなる当該電子楽器装置から、通信インターフェイス２７及び通信ネットワーク２８を介してサーバコンピュータ２９に動作プログラムや各種データのダウンロードを要求するコマンドを送信する。サーバコンピュータ２９は、このコマンドに応じて、所定の動作プログラムや各種データなどを、通信ネットワーク２８を介して当該電子楽器装置に送信する。当該電子楽器装置では、通信インターフェイス２７を介してこれらの動作プログラムや各種データなどを受信して、ハードディスク２４やワーキングメモリ２３等に格納する。これによって、動作プログラム及び各種データなどのダウンロードが完了する。
【００１６】
なお、本発明は、専用の電子楽器に限らず、本発明に対応する動作プログラムやソングデータをインストールした汎用のパーソナルコンピュータ等によって、実施させるようにしてもよい。その場合には、本発明に対応する動作プログラムやソングデータなどを、ＣＤ−ＲＯＭやフロッピーディスク等の、電子楽器が読み込むことができる記憶媒体に記憶させた状態で、ユーザーに提供してもよい。
【００１７】
ここで、上述した「ソングデータ」と「トラックアサインテーブル」について詳細に説明する。図３は、ソングデータの内容の一例を示す図である。ソングデータは、ファイルタイプデータと、各演奏パート毎の音色やテンポあるいは効果等に関する各種設定データと、タイミングデータと、各種のイベントデータと、トラック番号と、曲の終了を示すエンドデータとにより主に構成される。勿論、ソングデータには上述のデータ以外のデータも含まれているが、本発明を説明する上では必須のものではないため、その説明を省略する。
ファイルタイプデータとは、当該ソングデータ毎に付与され、後述のトラックアサインテーブルを参照する際にインデックスとなるデータであり、当該ソングデータの記録形式、つまりいずれのメーカのソングデータであるかを表す。各種設定データとは、自動演奏を行うにあたって予め設定しておく必要のある各種パラメータに関するデータであり、例えば、曲のテンポや各演奏パート毎の音色及び効果の設定等に係るデータである。イベントデータは、楽音の発音を指示するキーオンデータや楽音の消音を指示するキーオフデータ等の演奏イベントに関するデータである。このイベントデータは、タイミングデータと組み合わされて使用される。本実施例でのタイミングデータとは、イベントデータから次のイベントデータまでの時間間隔を示す時間データ（すなわち、デュレーションデータ）であるが、これに限らず相対時間あるいは絶対時間等どのようなフォーマットでもよい。すなわち、イベントの発生時刻を曲や小節内における絶対時間で表した『イベント＋絶対時間』形式のもの、イベントの発生時刻を１つ前のイベントからの時間で表した『イベント＋相対時間』形式のもの、音符の音高と符長あるいは休符と休符長で演奏データを表した『音高（休符）＋符長』形式のもの、演奏の最小分解能毎にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域にイベントを記憶した『ベタ方式』形式のものなど、どのような形式のものでもよい。トラック番号は、各イベントデータに付加されたデータであり、当該イベントデータがいずれのトラック（演奏パート）に属するものであるかを表す。この実施の形態では、ソングデータは複数トラック分のイベントデータが混在して記録されているもの、すなわち、イベントデータをその割り当てられたトラックにかかわらず、出力順に１列に並べて記憶しているもの例に説明している。しかし、これに限らず、各イベントデータを各トラック毎に独立して記憶するようにソングデータを構成してもよい。
【００１８】
次に、複数の演奏パートとトラック番号との対応関係を記録した「トラックアサインテーブル」の内容の一例を、図４を用いて説明する。
「トラックアサインテーブル」はファイルタイプ毎に設けられ、各ファイルタイプにおいて左手演奏パート、右手演奏パート、伴奏パートあるいは打楽器パートといった各演奏パートがどのトラックに対応づけされるかを関連付けているものである。ファイルタイプとは、上述した「ソングデータ」のファイルタイプデータと同一のインデックスデータである。図４の左側のテーブル、すなわち「ファイルタイプ１」のものについて説明すると、左手演奏パートはトラック番号「１」で示されるトラックに、右手演奏パートはトラック番号「２」で示されるトラックに、伴奏パートはトラック番号「３」及び「４」で示されるトラックに各々関連付けられる。なお、各ファイルタイプ毎にトラックの数が異なるように各テーブルが形成されてよいことは言うまでもない。
【００１９】
図２に戻り、音源装置２Ｊは複数チャンネルで楽音信号の同時発生が可能であり、データ及びアドレスバス２Ｐを経由して与えられた各種のイベントデータを入力し、この情報に基づき楽音信号を発生する。音源装置２Ｊにおいて複数チャンネルで楽音信号を同時に発音させる構成としては、１つの回路を時分割で使用することによって複数の発音チャンネルを形成するようなものや、１つの発音チャンネルが１つの回路で構成されるような形式のものであってもよい。自動演奏の実行の際には、複数の各演奏トラックに対応する演奏音の発生のために、各々いずれかのチャンネルが割り当てられる。また、音源装置２Ｊにおける楽音信号発生方式はいかなるものを用いてもよい。音源装置２Ｊから出力される楽音信号はアンプ及びスピーカからなるサウンドシステム２Ｌによって発音される。なお、この実施例では音源装置２Ｊ自体にサウンドシステム２Ｌとの間において楽音信号に種々の効果を付与するための効果回路（図示せず）を含んでいる。勿論、効果回路を当該音源装置とは別個に設けてもよい。タイマ２Ｔは時間間隔を計数したり、楽曲情報の再生時のテンポを設定したりするためのテンポクロックパルスを発生するものである。このテンポクロックパルスの周波数はテンポスイッチ（図示せず）によって調整される。タイマ２ＴからのテンポクロックパルスはＣＰＵ２１に対してインタラプト命令として与えられ、ＣＰＵ２１はインタラプト処理により自動演奏時における自動演奏処理の割り込み等を実行する。
【００２０】
ガイドＬＥＤ２Ｍは鍵演奏ガイド用の例えば発光ダイオードからなるものであり、電子楽器本体の鍵盤２Ｎの各鍵毎に設けられる。ガイドＬＥＤ検出回路２ＧはガイドＬＥＤ２Ｍの表示、すなわち、発光ダイオードを点灯／消灯することにより演奏者に対して押鍵すべき鍵盤２Ｎ及び押鍵タイミングを指示したり、さらには押鍵指示と演奏者の押鍵とを一致判別したりする等の制御を行うものである。
【００２１】
操作子手段２６は、各種パラメータ設定用のキーやスイッチを備えたものである。この実施の形態では、便宜上、自動演奏スイッチ、ミュートスイッチなどの具体的スイッチが設けられている場合について説明する。操作子検出回路２５は、この操作子手段２６上の各スイッチの操作状態及び操作状況を検出し、それをデータ及びアドレスバス２Ｐ上に出力する。表示回路２Ｈは表示器２Ｋの表示内容を制御するものである。表示器２Ｋは液晶画面（ＬＣＤ）等から構成され、表示回路２Ｈによってその表示動作を制御される。
【００２２】
図５は、上述の液晶画面と自動演奏スイッチ、ミュートスイッチなどの具体的スイッチとを一体的に構成したパネルの一例を示したものである。
当該パネルは、パネルの左半分側に液晶画面が構成され、例えば、自動演奏を行う曲の番号（ソング番号）や曲の名前（ソング名）といった曲の情報と共に、トラックアサイン状態を表示できるようになっている。トラックアサイン状態には、右手パート、左手パート、伴奏パートといった各パート別に、各パートがどのトラックに関連付けられているかが表示される。勿論、液晶画面にはこれ以外にも演奏情報（例えば、歌詞あるいは楽譜）等が表示されてよいことは言うまでもない。一方、パネルの右半分側には自動演奏関係の操作子が構成される。「再生」及び「停止」スイッチは、自動演奏の開始／停止を指示するための自動演奏スイッチである。「ミュートＯＮ／ＯＦＦ」スイッチは、所望のパートをミュート指示する（すなわち、発音させないようにする）ためのミュートスイッチである。数字キーは自動演奏するソングデータを指定するための「ソング番号」を入力したり、あるいは「トラックアサイン状態」のトラック番号の変更入力を行ったりするためのものである。また、方向キーはソングデータの指定あるいはトラック番号の変更入力等を行う際に、液晶画面上のカーソルを所定の位置に移動させるためのものである。「確定」スイッチは、カーソル位置や入力したトラック番号を確定するためのものである。
【００２３】
図１は、電子楽器を動作させる場合におけるメイン処理のフローチャートの一例を示す図である。図２のＣＰＵ２１は、このメイン処理に従って動作する。メイン処理は、電子楽器の主電源のオン操作と同時に開始され、主電源のオフ操作によって終了される。以下、図１のフローチャートに従って、当該メイン処理の動作例を説明する。ただし、説明を理解しやすくするために、ソングデータのファイルタイプデータが「ファイルタイプ１」である場合を例に説明する。
まず、最初のステップＳ１では、初期設定を行う。初期設定では、図２のＲＡＭ２３内の各レジスタ及びフラグなどに対して所定の初期値を設定したり、各バッファ内容のリセット（つまり、クリア）を行う。具体的には、ＲＵＮフラグに“０”をセットし、ＭＵＴＥバッファ、Ｌ−ＰＡＲＴバッファ、Ｒ−ＰＡＲＴバッファ及びＯＲＣＨＥ−ＰＡＲＴバッファの内容をリセットする。これらのフラグ及びバッファの内容については各ステップの対応する処理の中で説明する。さらに、パネルの液晶画面上に初期画面を表示する。
【００２４】
初期設定が終了すると、次は自動演奏の開始指示操作があるかないかを判定する（ステップＳ２）。すなわち、パネル上の「再生」スイッチ（図５参照）がオンされたか否かを判定する。自動演奏の開始指示操作（「再生」スイッチのオン操作）がある場合には（ＹＥＳ）、ＲＵＮフラグに“１”がセットされる。自動演奏の開始指示操作（「再生」スイッチのオン操作）がない場合には（ＮＯ）、ステップＳ４の処理へジャンプする。ここで、ＲＵＮフラグとは現在電子楽器が自動演奏中であるか否かを表すためのフラグであり、この実施形態では“１”が自動演奏中であり、“０”が自動演奏中でないことを示す。電子楽器では、メイン処理を行っているＣＰＵ２１に対して自動演奏処理を割り込み的に実行させることによって自動演奏を行っている。そこで、このＲＵＮフラグにより、自動演奏を行うことが許可されているか否かを判定している（後述する自動演奏処理参照）。
【００２５】
ステップＳ４では、自動演奏の終了指示操作があるかないかの判定を行う。すなわち、パネル上の「停止」スイッチ（図５参照）がオンされたか否かを判定する。終了指示（「停止」スイッチのオン操作）がある場合には（ＹＥＳ）、現在発音中の音をすべて消去し、かつ、ＲＵＮフラグに“０”をセットする（ステップＳ５）。つまり、当該電子楽器は自動演奏を停止し、かつ自動演奏を行うことができない状態になる。終了指示（「停止」スイッチのオン操作）がない場合には（ＮＯ）、ステップＳ６の処理へジャンプする。ステップＳ６では、ＲＵＮフラグが“０”であるか否かの判定がなされる。ＲＵＮフラグが“０”である場合には（ＹＥＳ）、後述のソング設定処理（ステップＳ７）を行う。ＲＵＮフラグが“０”でない場合には（ＮＯ）、後述のソング設定処理（ステップＳ７）を行わずに次のステップＳ８の処理を行う。この処理は、自動演奏中の誤操作等によるソングあるいはトラックアサイン状態の変更を防止するためのもので、ステップＳ７のソング設定処理を自動演奏中には動作させないようにしている。
【００２６】
図６は、図１のメイン処理で行われるソング設定処理（ステップＳ７）のフローチャートの一例を示す図である。ソング設定処理は、「ソング番号」に入力された数値に基づいて選択されたソングデータ内の各トラックを、トラックアサインテーブルを参照して各パートへ割り当てる処理を行うものである。
まず、ソングデータの選択操作有りか、又は選択操作無しかの判定が行われ、それぞれの判定に従った処理が行われる（ステップＳ３１）。すなわち、数値キーを用いて「ソング番号」が入力されているかを判定する。ソング選択操作がなされている場合（ＹＥＳ）は、外部記憶装置２４に記憶されている多数のソングデータから当該「ソング番号」に対応した１つのソングデータが選択され、パネル上に表示される。このように、ソングデータは外部記憶装置２４内に予め多数記憶されており、例えば演奏者が「ソング番号」を入力（ソングデータの選択操作）することにより、多数のソングデータの中から「ソング番号」に対応するソングデータが所定のワークエリアに読み出されて、自動演奏するためのデータとして電子楽器に設定されるようになっている。勿論、ソングデータの決定方法は上述のものだけに限られるものではなく、曲名等を入力することにより選択できるようにしてもよい。
【００２７】
次に、選択されたソングデータ内のファイルタイプデータを読み出し（ステップＳ３２）、この読み出されたファイルタイプデータに対応するトラックアサインテーブルがＲＯＭ２２に記憶されているかどうかを検索する。検索の結果、該当するトラックアサインテーブルがない場合には（ステップＳ３３のＮＯ）、ステップＳ３７の処理へジャンプする。
該当するトラックアサインテーブルがＲＯＭ２２にあり（ステップＳ３３のＹＥＳ）、かつ、今回読み出したファイルタイプデータと前回読み出したファイルタイプデータとが異なっているならば（ステップＳ３４のＹＥＳ）、当該トラックアサインテーブルをＲＯＭ２２からＲＡＭ２３のワークエリアに読み出す（ステップＳ３５）。すなわち、選択されたソングデータ内のファイルタイプデータに対応するトラックアサインテーブル内から左手演奏に対応するトラックのトラック番号、右手演奏に対応するトラックのトラック番号、及び伴奏に対応するトラックのトラック番号を読み出して、各々をＬ―ＰＡＲＴ、Ｒ−ＰＡＲＴ及びＯＲＣＨＥ−ＰＡＲＴバッファに格納する。そして、前記Ｌ―ＰＡＲＴ、Ｒ−ＰＡＲＴ及びＯＲＣＨＥ−ＰＡＲＴバッファを参照して、各パート別のトラックアサイン状態をパネル上に表示する（ステップＳ３６）。ファイルタイプデータが「ファイルタイプ１」である場合、左手パートにトラック番号「１」、右手パートにトラック番号「２」、伴奏パートにトラック番号「３」及び「４」が各々割り当てられることから、パネル上には図５のようにトラックアサイン状態が表示される。このようにして、トラックが各パートに割り当てされる。一方、ステップＳ３４において、今回読み出したファイルタイプデータと前回読み出したファイルタイプデータとが同じであると判定すれば（ステップＳ３４のＮＯ）、ステップＳ３７の処理へジャンプする。
なお、主電源投入後の２回目以降のソング選択時に、ステップＳ３３あるいはステップＳ３４がＮＯと判定された場合は、ＲＡＭ２３にすでに記憶されているトラックアサインテーブルをそのまま利用する。これにより、トラックアサインテーブル内に記載されていないファイルタイプのソングが選択された場合、あるいは前回と同じファイルタイプのソングが選択された場合には前回のトラックアサイン状態をそのまま利用することができ、簡単な操作により適切なトラックアサインを行うことができるようになる。これに対して、主電源投入後、最初のソングデータを読み出した際に、当該ソングデータのファイルタイプデータに該当するトラックアサインテーブルがない場合（ステップＳ３３のＮＯ）には、トラックが各パートに所定のデフォルト設定により割り当てされて、トラックアサインテーブルが作成されてＲＡＭ２３に記憶され、かつパネル上にトラックアサイン状態が表示される。あるいは、後述のアサイントラック変更操作により、ユーザが任意にトラックを各パートに割り当てできるようになっている。また、本実施例において、該当するトラックアサインテーブルがない場合とは、ファイルタイプデータに該当するトラックアサインテーブルが存在しないことは勿論のこと、さらにソングデータにファイルタイプデータの記録がなされていない場合を含む。
【００２８】
パネル上にトラックアサイン状態を表示後（つまり、トラックの割り当て終了後）、アサイントラック変更操作がなされたか否かの判定を行う（ステップＳ３７）。すなわち、ユーザがパネル上の方向キーや数字キーを操作して、各パートに割り当てられたトラック番号に対して変更入力を行ったか否かのチェックを行う。ユーザによりトラック番号の変更入力がなされていない場合には（ステップＳ３７のＮＯ）、当該ソング設定処理を終了する。変更入力された場合であり（ステップＳ３７のＹＥＳ）、かつ、選択されたトラックアサインテーブルが内容変更の可能なものである場合には（ステップＳ３８のＹＥＳ）、変更入力に基づきＲＡＭ２３内のワークエリアに保持されているＬ―ＰＡＲＴ、Ｒ−ＰＡＲＴ及びＯＲＣＨＥ−ＰＡＲＴバッファの内容を書き換え（ステップＳ３９）、さらに変更入力されたパートに対してミュート操作がなされていた場合にはＭＵＴＥバッファの内容を書き換える（ステップＳ４０）。
ここで、トラックアサインテーブルが内容変更の可能なものとは、一般的な基準で作成されていないトラックアサインテーブルであり、例えば、各電子楽器メーカ毎に作成され頒布されるようなものがある。このようなものは、各メーカ毎に独自の基準で各パートにトラックを割り当てて使用していることが多いので、ユーザは使用する電子楽器メーカにあわせてパート毎に割り当てるトラックを変更することができるようになっている。
【００２９】
図１に戻り、ミュートパート設定操作が行われたか否かを判定する（ステップＳ８）。ここで述べているミュートパートとは、例えば、押鍵ガイド機能を動作させたいパートのことであり、ユーザは予めパネル上の「右手パート」あるいは「左手パート」のいずれか、あるいは両方を選択してミュート指示操作することにより演奏練習したいパートをトラック番号ではなく、パート名により選択することができるようになっている。
ミュートパート設定操作が行われた場合（ステップＳ８のＹＥＳ）、ミュート設定されたパートに対応するトラック番号をＭＵＴＥバッファに格納する（ステップＳ９）。例えば、「ファイルタイプ１」（図４参照）の場合に左手演奏パートがミュートされたならば、ＭＵＴＥバッファにトラック番号「１」が格納される。ミュートパート設定操作が行われていない場合（ステップＳ８のＮＯ）には、ステップＳ９をジャンプして、その他の処理を行う（ステップＳ１０）。すなわち、ＭＵＴＥバッファにトラック番号は格納されない。
【００３０】
その他の処理とは、例えば、ソングデータへの各種データの追加や削除といった編集処理や、電子楽器全体の音色設定あるいは自動演奏のテンポ設定等、スイッチ操作による各種の手動設定処理のことである。
その他の処理が終了したら、当該メイン処理を終了するための指示操作、すなわち、電子楽器本体の主電源がオフされたかどうかを検出し、主電源がオフされた場合（ステップＳ１１のＹＥＳ）にはメイン処理を終了する。そうでない、主電源オン（すなわち、主電源オフ操作がない）の場合（ステップＳ１１のＮＯ）にはステップＳ２へ戻り、当該メイン処理を繰り返し実行し、電子楽器を待機状態にする。この場合には、自動演奏スイッチがオフされるまで、あるいはソングデータ内のエンドデータを読み込むまで、当該自動演奏が続けられる。
【００３１】
図７は、メイン処理に対して、所定のクロックタイミング毎に割り込み的に起動される自動演奏処理のフローチャートの一例を示した図である。本実施例においては、４分音符長あたり９６回の割り込みが行われるものとする。
ＲＵＮフラグが“１”、すなわち、メイン処理において、自動演奏のための割り込み処理が許可されている場合（ステップＳ２１のＹＥＳ）、当該自動演奏処理はＣＰＵ２１により行われる。ソングデータ内のイベントが処理タイミングにある場合（ステップＳ２２のＹＥＳ）、今回タイミングに対応するイベントデータを読み出して（ステップＳ２３）、読み出したイベントデータがミュートパートのイベントデータでないならば（ステップＳ２４のＹＥＳ）、読み出したイベントデータを音源へ送信する（ステップＳ２５）。すなわち、自動演奏のための発音がなされる。イベント処理タイミングにない場合（ステップＳ２２のＮＯ）、あるいは読み出されたイベントデータがミュートパートのイベントデータである場合（ステップＳ２４のＮＯ）には、ステップＳ２５の処理を行わずに自動演奏処理を終了することから、自動演奏のための発音がなされない。ここでミュートパートのイベントデータとして判断されたデータは、つまりは押鍵ガイド機能を動作させるべきパートのイベントデータであるので、当該読み出されたイベントデータに基づいた押鍵ガイド処理がなされる（ＬＥＤランプの点灯／点滅／消灯等）。なお、通常演奏処理においては、各イベントデータに対応して読み出されたトラック番号と、各演奏パート毎のバッファ（Ｌ−ＰＡＲＴ、Ｒ−ＰＡＲＴ、ＯＲＣＨＥ−ＰＡＲＴバッファ等）とを参照して、該トラック番号に対応する演奏パートの音色で該イベントにかかる楽音を発生する。
【００３２】
以上のように、図１、図６〜図７のフローチャートに示す一連の処理によって、トラックアサイン状態が変更されると、ファイルタイプデータが同一である限り、その変更されたトラックアサイン状態をＲＡＭ２３で保持しつづけることになるので、ユーザはソングデータを読み出すたびに手動操作でトラックアサイン状態の設定を修正しなくてもよいことになる。すなわち、この実施の形態に係る電子楽器では、演奏者が簡単な操作により、複数の演奏パートに対して適切なトラックを割り当てることができるようになる。また、この実施の形態に係る電子楽器では面倒な操作を一々行う必要がないという利点がある。
【００３３】
なお、上述したようにトラックアサインテーブルの内容が変更された場合には（ステップＳ３８参照）、その変更されたトラックアサインテーブルをＲＡＭ２３で複数保持できるようにしておき、その後、トラックアサインテーブルを読み出す際に（ステップＳ３２、Ｓ３３等参照）、そのトラックアサインテーブルをＲＯＭ２２から読み出さずに、変更されたトラックアサインテーブルをＲＡＭ２３から読み出すようにしてよい。あるいは、変更されたトラックアサインテーブルを読み出すか、ＲＯＭ２２に予め記憶されたトラックアサインテーブルを読み出すかを演奏者が任意に選択できるようにしてもよい。また、変更されたトラックアサインテーブルを不揮発性メモリに記憶するようにしてもよい。
【００３４】
なお、トラックアサインテーブルをユーザが新たに作成できるようにしてもよい。また、その内容をユーザが修正できないようなトラックアサインテーブルを設けておき、保持されているトラックアサインテーブル情報をデフォルトにリセットできるようにしてもよい。さらに、デフォルトにリセットしたときに、リセット前のトラックアサインテーブル状態を所定領域に保持しておき、該所定領域に保持しておいたトラックアサインテーブルをユーザが任意に読み出して使用できるようにしてもよい。
また、トラックアサインテーブルを参照するために、ソングデータ内のファイルタイプデータを利用しているが、これに限らず、ソングファイル名の拡張子の文字（例えば、ソングファイル名．ＵＳＲのＵＳＲの部分）を利用するようにしてもよい。ただし、この場合には拡張子の種類毎にトラックアサインテーブルを用意しておく。このように、ユーザ毎に独自のトラックアサインテーブルを用意することにより、ユーザ特有の設定をすぐに行うことができる。
【００３５】
電子楽器は鍵盤楽器の形態に限らず、弦楽器や管楽器、あるいは打楽器等どのようなタイプの形態でもよい。また、上述の実施の形態では、音源装置、自動演奏装置等を１つの電子楽器本体に内臓したものについて説明したが、これに限らず、それぞれが別々に構成され、ＭＩＤＩインタフェースや各種ネットワーク等の通信手段を用いて各装置を接続するように構成されたものにも同様に適用できることはいうまでもない。また、パソコンとアプリケーションソフトウェアという構成であってもよく、この場合処理プログラムを磁気ディスク、光ディスクあるいは半導体メモリ等の記憶メディアから供給したり、ネットワークを介して供給するものであってもよい。
【００３６】
【発明の効果】
この発明によれば、テーブルの設定内容を変更することにより、その変更されたテーブルの設定内容により複数トラックと各演奏パートとの対応づけがなされることになるので、自動演奏を開始する毎にその都度同じ変更操作を繰り返し行う必要がなくなる、という効果がある。また、演奏ガイド機能あるいは特定演奏パートのミュート機能など複数の機能を具えた電子楽器において、演奏者が簡単な操作により、複数の演奏パートに対して適切なトラックを割り当てることができるので、演奏者は所望の演奏パートのミュート設定／解除等を簡単に行うことができるようになる。
【図面の簡単な説明】
【図１】  図２の電子楽器を自動演奏装置として動作させる場合のメイン処理の一例を示すフロー図である。
【図２】  この発明に係る設定制御装置を内蔵した電子楽器の構成を示すハードブロック図である。
【図３】  図２に示した電子楽器において用いられるソングデータの一実施例を示した構成概念図である。
【図４】  図２に示した電子楽器において用いられるトラックアサインテーブルの一実施例を示した構成概念図である。
【図５】  パネルの一例を示す全体構成概要図である。
【図６】  図１のメイン処理時に実行されるソング設定処理の一例を示すフロー図である。
【図７】  図１のメイン処理に対して、所定の時間間隔毎に実行される割り込み処理である自動演奏処理の一例を示すフロー図である。
【符号の説明】
２１…ＣＰＵ、２２…ＲＯＭ、２３…ＲＡＭ、２４…外部記憶装置、２５…操作子検出回路、２６…操作子、２７…通信インターフェイス、２８…通信ネットワーク、２９…サーバコンピュータ、２Ａ…ＭＩＤＩインターフェイス、２Ｂ…他のＭＩＤＩ機器、２Ｆ…鍵盤検出回路、２Ｇ…ガイドＬＥＤ検出回路、２Ｈ…表示回路、２Ｊ…音源装置、２Ｋ…表示器、２Ｌ…サウンドシステム、２Ｍ…ガイドＬＥＤ、２Ｎ…鍵盤、２Ｐ…データ及びアドレスバス、２Ｔ…タイマ
【図１】
0003649014.tif 000002
【図２】
0003649014.tif 000003
【図３】
0003649014.tif 000004
【図４】
0003649014.tif 000005
【図５】
0003649014.tif 000006
【図６】
0003649014.tif 000007
【図７】
0003649014.tif 000008