(57)【要約】【課題】複数パートのうち、いずれかのパートがミュートするように設定された場合でも適切に自動演奏を行うことができる自動演奏装置および自動演奏プログラムを提供する。【解決手段】ノートイベントのパートが、ミュートするように設定されているかリズムパートであれば（Ｓ２３：Ｙｅｓ）、演奏ポインタを次のイベントに進め（Ｓ２４）、Ｓ２１の処理に戻る。演奏ポインタが示すノートイベントのパートがミュートするように設定されていないかリズムパートでなければ（Ｓ２３：Ｎｏ）、そのノートイベントが最も早いノートイベントであり、演奏ティックを演奏ポインタが示すイベントの時刻とし、演奏フラグを１として（Ｓ２７）、タイマ割込を許可し（Ｓ２８）、このノート検索処理を終了する。【選択図】図６
2008225423.tif 000002
【特許請求の範囲】
【請求項１】
複数のパートにより構成される演奏情報を記憶する記憶手段を備え、その記憶手段に記憶された複数のパートの演奏情報に基づいて自動演奏を行う自動演奏装置において、
前記複数のパートのいずれかのパートを指定するミュートパート指定手段と、
自動演奏の開始を指示する演奏開始指示手段と、
前記記憶手段に記憶された演奏情報の演奏位置を示す演奏位置指示手段と、
前記演奏開始指示手段により自動演奏の開始が指示された場合に、前記演奏位置指示手段により指示される演奏位置以降であって、前記ミュートパート指定手段により指定されたパート以外のパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索する検索手段と、
前記ミュートパート指定手段により指定されたパートをミュートし、その検索手段により検索された記憶位置に基づいて自動演奏を開始する自動演奏開始手段とを備えていることを特徴とする自動演奏装置。
【請求項２】
前記複数パートは、打楽器音を演奏するリズムパートを含むものであり、
前記検索手段は、前記リズムパートと前記ミュートパート指定手段により指定されたパートとを除くパートにおいて時間的に最も早く発音の開始を指示するイベント演奏情報が記憶された記憶位置を検索するものであることを特徴とする請求項１記載の自動演奏装置。
【請求項３】
複数のパートにより構成される演奏情報を記憶する記憶手段を備え、その記憶手段に記憶された複数パートの演奏情報に基づいて自動演奏を行う自動演奏装置において、
前記複数のパートのいずれかのパートを指定するマイナスワンパート指定手段と、
自動演奏の開始を指示する演奏開始指示手段と、
前記記憶手段に記憶された演奏情報の演奏位置を示す演奏位置指示手段と、
前記演奏開始指示手段により自動演奏の開始が指示された場合に、前記演奏位置指示手段により指示される演奏位置以降であって、前記マイナスワンパート指定手段により指定されたパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索する検索手段と、
前記マイナスワンパート指定手段により指定されたパートをミュートし、その検索手段により検索された記憶位置に基づいて自動演奏を開始する自動演奏開始手段とを備えていることを特徴とする自動演奏装置。
【請求項４】
前記自動演奏開始手段は、前記検索手段により検索された位置より前の所定の位置から自動演奏を開始するものであることを特徴とする請求項１から３のいずれかに記載の自動演奏装置。
【請求項５】
複数のパートにより構成される演奏情報を記憶する記憶手段を備え、その記憶手段に記憶された複数のパートの演奏情報に基づいて自動演奏を行う自動演奏装置において実行される自動演奏プログラムであって、
前記複数のパートのいずれかのパートを指定するミュートパート指定ステップと、
自動演奏の開始を指示する演奏開始指示ステップと、
前記記憶手段に記憶された演奏情報の演奏位置を示す演奏位置指示ステップと、
前記演奏開始指示ステップにより自動演奏の開始が指示された場合に、前記演奏位置指示ステップにより指示される演奏位置以降であって、前記ミュートパート指定ステップにより指定されたパート以外のパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索する検索ステップと、
前記ミュートパート指定ステップにより指定されたパートをミュートし、その検索ステップにより検索された記憶位置に基づいて自動演奏を開始する自動演奏開始ステップとを備えていることを特徴とする自動演奏プログラム。
【請求項６】
複数のパートにより構成される演奏情報を記憶する記憶手段を備え、その記憶手段に記憶された複数パートの演奏情報に基づいて自動演奏を行う自動演奏装置において実行される自動演奏プログラムであって、
前記複数のパートのいずれかのパートを指定するマイナスワンパート指定ステップと、
自動演奏の開始を指示する演奏開始指示ステップと、
前記記憶手段に記憶された演奏情報の演奏位置を示す演奏位置指示ステップと、
前記演奏開始指示ステップにより自動演奏の開始が指示された場合に、前記演奏位置指示ステップにより指示される演奏位置以降であって、前記マイナスワンパート指定ステップにより指定されたパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索する検索ステップと、
前記マイナスワンパート指定ステップにより指定されたパートをミュートし、その検索ステップにより検索された記憶位置に基づいて自動演奏を開始する自動演奏開始ステップとを備えていることを特徴とする自動演奏プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動演奏装置および自動演奏プログラムに関し、特に複数パートのうちいずれかのパートがミュートするように設定された場合にも適切に演奏を行うことができる自動演奏装置および自動演奏プログラムに関する。
【背景技術】
【０００２】
従来、自動演奏装置において、曲の先頭に無音区間がある場合には、その無音区間を読み飛ばし、楽音を発生するように指示する最初のノートオン情報から演奏を開始するものが開示されている。このことにより、使用者が演奏の開始を指示した場合に、直ぐに発音が開始され、無音となることがないので、使用者は、安心して演奏を聴くことができる。
【０００３】
特許３２１３０８１号公報（特許文献１）には、小節単位で無音区間を読み飛ばし、最初のノートオン情報の小節の先頭から自動演奏を開始する自動演奏装置が開示されている。
【特許文献１】特許３２１３０８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、複数のパートにより構成される演奏情報を自動演奏する場合に、使用者により、いずれかのパートが発音しないように設定されて演奏を行う場合があり、その場合には、使用者が所望するように演奏が開始されない場合があった。
【０００５】
ところで、あるパートが発音しないように設定されて自動演奏を行う場合、２つのモードがある。一つは、あるパート（複数のパートでもよい）をミュート（無音とする、または音量レベルを下げる）することにより、ミュートされないパートの演奏だけを聞くというミュートモードであり、他の一つは、あるパート（複数のパートでもよい）の演奏練習を行うために、そのパートをミュートするというマイナスワンモードである。
【０００６】
ミュートモードでは、例えば、あるパートが、他のパートより早く演奏を開始するように演奏情報が設定されていて、そのパートがミュートするように指定された場合には、演奏の開始を指示されても、その指定されたパートの演奏が発音されないため、他のパートの演奏が始まるまで無音になり、使用者に不安を与えるという問題点があった。
【０００７】
また、マイナスワンモードでは、あるパートがミュートするように指定され、他のパートに遅れてそのミュートされたパートが始まるように演奏情報が設定されている場合には、そのミュートされたパートが始まるまで使用者は、待たされ、演奏を開始するタイミングを取るのが困難になるという問題点があった。
【０００８】
本発明は、上述した問題点を解決するためになされたものであり、複数のパートのうち、いずれかのパートがミュートするように設定された場合でも適切に自動演奏を行うことができる自動演奏装置および自動演奏プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、請求項１記載の自動演奏装置は、複数のパートにより構成される演奏情報を記憶する記憶手段を備え、その記憶手段に記憶された複数パートの演奏情報に基づいて自動演奏を行うものであり、前記複数のパートのいずれかのパートを指定するミュートパート指定手段と、自動演奏の開始を指示する演奏開始指示手段と、前記記憶手段に記憶された演奏情報の演奏位置を示す演奏位置指示手段と、前記演奏開始指示手段により自動演奏の開始が指示された場合に、前記演奏位置指示手段により指示される演奏位置以降であって、前記ミュートパート指定手段により指定されたパート以外のパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索する検索手段と、前記ミュートパート指定手段により指定されたパートをミュートし、その検索手段により検索された記憶位置に基づいて自動演奏を開始する自動演奏開始手段とを備えている。なお、ミュートするとは、全く楽音が発生されないようにする場合と、音量レベルを小さくして発音する場合とを含むものである。
【００１０】
請求項２記載の自動演奏装置は、請求項１記載の自動演奏装置において、前記複数パートは、打楽器音を演奏するリズムパートを含むものであり、前記検索手段は、前記リズムパートと、前記ミュートパート指定手段により指定されたパートとを除くパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索するものである。
【００１１】
請求項３記載の自動演奏装置は、複数のパートにより構成される演奏情報を記憶する記憶手段を備え、その記憶手段に記憶された複数パートの演奏情報に基づいて自動演奏を行うものであり、前記複数のパートのいずれかのパートを指定するマイナスワンパート指定手段と、自動演奏の開始を指示する演奏開始指示手段と、前記記憶手段に記憶された演奏情報の演奏位置を示す演奏位置指示手段と、前記演奏開始指示手段により自動演奏の開始が指示された場合に、前記演奏位置指示手段により指示される演奏位置以降であって、前記マイナスワンパート指定手段により指定されたパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索する検索手段と、前記マイナスワンパート指定手段により指定されたパートをミュートし、その検索手段により検索された記憶位置に基づいて自動演奏を開始する自動演奏開始手段とを備えている。
【００１２】
請求項４記載の自動演奏装置は、請求項１から３のいずれかに記載の自動演奏装置において、前記自動演奏開始手段は、前記検索手段により検索された位置より前の所定の位置から自動演奏を開始するものである。
【００１３】
請求項５記載の自動演奏プログラムは、複数のパートにより構成される演奏情報を記憶する記憶手段を備え、その記憶手段に記憶された複数のパートの演奏情報に基づいて自動演奏を行う自動演奏装置において実行されるものであって、前記複数のパートのいずれかのパートを指定するミュートパート指定ステップと、自動演奏の開始を指示する演奏開始指示ステップと、前記記憶手段に記憶された演奏情報の演奏位置を示す演奏位置指示ステップと、前記演奏開始指示ステップにより自動演奏の開始が指示された場合に、前記演奏位置指示ステップにより指示される演奏位置以降であって、前記ミュートパート指定ステップにより指定されたパート以外のパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索する検索ステップと、前記ミュートパート指定ステップにより指定されたパートをミュートし、その検索ステップにより検索された記憶位置に基づいて自動演奏を開始する自動演奏開始ステップとを備えている。
【００１４】
請求項６記載の自動演奏プログラムは、複数のパートにより構成される演奏情報を記憶する記憶手段を備え、その記憶手段に記憶された複数パートの演奏情報に基づいて自動演奏を行う自動演奏装置において実行されるものであって、前記複数のパートのいずれかのパートを指定するマイナスワンパート指定ステップと、自動演奏の開始を指示する演奏開始指示ステップと、前記記憶手段に記憶された演奏情報の演奏位置を示す演奏位置指示ステップと、前記演奏開始指示ステップにより自動演奏の開始が指示された場合に、前記演奏位置指示ステップにより指示される演奏位置以降であって、前記マイナスワンパート指定ステップにより指定されたパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索する検索ステップと、前記マイナスワンパート指定ステップにより指定されたパートをミュートし、その検索ステップにより検索された記憶位置に基づいて自動演奏を開始する自動演奏開始ステップとを備えている。
【発明の効果】
【００１５】
請求項１記載の自動演奏装置によれば、複数のパートのいずれかのパートがミュートパート指定手段により指定され、演奏開始指示手段により自動演奏の開始が指示される。記憶手段に記憶された演奏情報の演奏位置が演奏位置指示手段により示され、演奏開始指示手段により自動演奏の開始が指示された場合は、演奏位置指示手段により指示される演奏位置以降であって、ミュートパート指定手段により指定されたパート以外のパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置が検索手段により検索される。即ち、発音されるパートにおいて、最も早く発音を開始するように指示する演奏情報が検索される。そして、ミュートパート指定手段により指定されたパートがミュートされ、その検索手段により検索された記憶位置に基づいて自動演奏が自動演奏開始手段により開始されるので、ミュートパート指定手段により指定されたパートが、最初に発音を開始するパートであったとしても、演奏の開始が指示された後、無音または小さい音量となることが防止され、適切に自動演奏を行うことができるという効果がある。なお、ミュートされるとは、全く楽音が発生されない場合と、音量レベルを小さくして発音される場合とを含むものである。
【００１６】
請求項２記載の自動演奏装置によれば、請求項１記載の自動演奏装置の奏する効果に加え、複数パートは、打楽器音を演奏するリズムパートを含むものであり、検索手段は、リズムパートと、ミュートパート指定手段により指定されたパートとを除くパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置を検索するものであるので、リズムパート以外で発音されるパートにおいて最も早く発音を開始するように指示する演奏情報が記憶された記憶位置から発音が開始される。通常、鍵盤の演奏練習を行うことが多いので、リズムパートを除き発音されるパートの演奏を早く聴くことができるという効果がある。
【００１７】
請求項３記載の自動演奏装置によれば、複数のパートのいずれかのパートがマイナスワンパート指定手段により指定され、自動演奏の開始が演奏開始指示手段により指示される。記憶手段に記憶された演奏情報の演奏位置が演奏位置指示手段により指示され、演奏開始指示手段により自動演奏の開始が指示された場合に、演奏位置指示手段により指示される演奏位置以降であって、マイナスワンパート指定手段により指定されたパートの発音の開始を指示する演奏情報が時間的に最も早く記憶された記憶位置が検索手段により検索される。即ち、指定されたパートの最も早く発音を開始するように指示する演奏情報が検索される。そして、マイナスワンパート指定手段により指定されたパートがミュートされ、その検索手段により検索された記憶位置に基づいて自動演奏が自動演奏開始手段により開始される。指定されたパートは、演奏練習を行うパートであるので、演奏開始の指示の後、早く演奏を開始することができ、演奏に入るタイミングを取りやすいという効果がある。特に、曲の初めなどで、指定されたパート以外のパートが早く演奏を開始する場合には、演奏を開始するまで、待たされることになり、演奏を開始するタイミングを取りにくいが、請求項３によれば、待たされることがなく、演奏を開始するタイミングを取りやすくすることができる。
【００１８】
請求項４記載の自動演奏装置によれば、請求項１から３のいずれかに記載の自動演奏装置の奏する効果に加え、自動演奏開始手段は、検索手段により検索された位置より前の所定の位置から自動演奏を開始するものであるので、練習演奏を開始する位置から演奏が開始される場合に比べ、演奏に入るタイミングを取りやすいという効果がある。
【００１９】
請求項５記載の自動演奏プログラムによれば、複数のパートのいずれかのパートがミュートパート指定ステップにより指定され、演奏開始指示ステップにより自動演奏の開始が指示される。記憶手段に記憶された演奏情報の演奏位置が演奏位置指示ステップにより示され、演奏開始指示ステップにより自動演奏の開始が指示された場合は、演奏位置指示ステップにより指示される演奏位置以降であって、ミュートパート指定ステップにより指定されたパート以外のパートにおいて時間的に最も早く発音の開始を指示する演奏情報が記憶された記憶位置が検索ステップにより検索される。即ち、発音されるパートにおいて、最も早く発音を開始するように指示する演奏情報が検索される。そして、ミュートパート指定ステップにより指定されたパートがミュートされ、その検索手段により検索された記憶位置に基づいて自動演奏が自動演奏開始ステップにより開始されるので、ミュートパート指定ステップにより指定されたパートが、最初に発音を開始するパートであったとしても、演奏の開始が指示された後、無音または小さい音量となることが防止され、適切に自動演奏を行うことができるという効果がある。
【００２０】
請求項６記載の自動演奏プログラムによれば、複数のパートのいずれかのパートがマイナスワンパート指定ステップにより指定され、自動演奏の開始が演奏開始指示ステップにより指示される。記憶手段に記憶された演奏情報の演奏位置が演奏位置指示ステップにより指示され、演奏開始指示ステップにより自動演奏の開始が指示された場合に、演奏位置指示ステップにより指示される演奏位置以降であって、マイナスワンパート指定ステップにより指定されたパートの発音の開始を指示する演奏情報が時間的に最も早く記憶された記憶位置が検索ステップにより検索される。即ち、指定されたパートの最も早く発音を開始するように指示する演奏情報が検索される。そして、マイナスワンパート指定ステップにより指定されたパートがミュートされ、その検索ステップにより検索された記憶位置に基づいて自動演奏が自動演奏開始ステップにより開始される。指定されたパートは、演奏練習を行うパートであるので、演奏開始の指示の後、早く演奏を開始することができ、演奏に入るタイミングを取りやすいという効果がある。特に、曲の初めなどで、指定されたパート以外のパートが早く演奏を開始する場合には、演奏を開始するまで、待たされることになり、演奏を開始するタイミングを取りにくいが、請求項６によれば、待たされることがなく、演奏を開始するタイミングを取りやすくすることができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図１は、自動演奏装置１の電気的構成を示すブロック図である。自動演奏装置１は、ＣＰＵ２と、ＲＯＭ３と、ＲＡＭ４と、鍵盤５と、操作パネル６と、メモリカード部７と、音源９と、Ｄ／Ａ変換器１０と、アンプ１１と、スピーカ１２とを主に設けている。
【００２２】
ＣＰＵ２は、ＲＯＭ３に記憶された制御プログラムを実行することにより、鍵盤５による演奏を検出して音源９に楽音の発生または停止を指示したり、自動演奏等を行う。また、ＣＰＵ２は、タイマ２ａを内蔵し自動演奏の開始が指示された場合は、テンポに対応する時間間隔（ティック）でＣＰＵ２にタイマ割込が発生され、設定されたテンポで自動演奏が行なわれる。
【００２３】
ＲＯＭ３は、制御プログラムの一つとして自動演奏を行う自動演奏プログラム３ａを記憶している。この自動演奏プログラム３ａにより実行される処理については、図５〜図７に示すフローチャートを参照して後述する。
【００２４】
ＲＡＭ４は、ＣＰＵ２がＲＯＭ３に記憶された制御プログラムを実行する際に変数などを一時記憶する書き換え可能なランダムにアクセスできるメモリであり、フラグを記憶するフラグメモリ４ａとノートオフイベントを記憶するノートオフバッファ４ｂとを備えている。フラグメモリ４ａに記憶されるフラグは、演奏フラグと、マイナスワンフラグと、パートフラグとである。演奏フラグは、自動演奏が行われているか否かを示すフラグであり、０であれば、自動演奏が停止している状態を示し、１であれば、自動演奏が実行されている状態を示す。
【００２５】
マイナスワンフラグは、自動演奏を行うモードがミュートかマイナスワンかを示すフラグであり、０であれば、ミュートモードを、１であれば、マイナスワンモードである。なお、ミュートモードでは、複数のパートのうち指定されたパートがミュート（消音）され、演奏が開始された場合に、ミュートするように指定されたパート（以下、「ミュートパート」と称す）とリズムパート以外のパートにおいて最初に楽音の発生を開始するように指示する演奏情報（以下、発音の開始または停止する演奏情報を「ノートイベント」と称す）が検索され、その検索されたノートイベントの記憶位置に基づいて自動演奏が開始される。
【００２６】
一方、マイナスワンモードでは、演奏練習を行うパートがミュートパートとして指定されるが、演奏が開始された場合に、そのミュートパートの最初のノートイベントが検索され、その検索されたノートイベントの記憶位置に基づいて自動演奏が開始される。
【００２７】
複数のパートには、左手パート、右手パート、伴奏パート、リズムパートの４つがあり、各パート毎にミュートするか否かが設定される。各パート毎に、パートフラグが設けられ、パートフラグが、０であれば、そのパートの楽音を出力し、パートフラグが１であれば、そのパートの楽音を出力しないものとする。
【００２８】
ノートオフバッファ４ｂには、ノートイベントが処理される場合に、ノートオフイベントとそのノートオフイベントを音源９に出力する時刻とが記憶される。詳細は、後述するが、本実施形態では、ノートイベントは、ノートオンイベント（発音の開始を指示するイベント）を音源９に出力する時刻と、そのノートオンイベントを音源９に出力した時刻からノートオフイベント（発音の停止を指示するイベント）を出力するまでの時間であるデュレーションとからなり、ノートイベントを処理する際に、このノートオフバッファ４ｂに、ノートオフイベントとそのノートオフイベントを音源９に出力する時刻とが記憶される。ノートオフイベントを音源９に出力する時刻に至った場合には、そのノートオフイベントが音源９に出力され、このノートオフバッファ４ｂからノートオフイベントとその時刻とが消去される。
【００２９】
メモリカード部７は、フラッシュメモリにより構成されるメモリカード８を着脱自在に装着するカードスロットを備えている。メモリカード８には、演奏データを記憶する演奏データメモリ８ａが設けられ、メモリカード部７を介してその演奏データを読み込んだり、鍵盤５により演奏されて形成された演奏データを書込むことができる。なお、演奏データについては、図３および図４を参照して後述する。
【００３０】
音源９は、所定のサンプリング周期で所定のビット数のデジタル信号により形成される楽音信号を発生し、音源９から出力されたデジタル信号は、Ｄ／Ａ変換器１０によりアナログ信号に変換され、アンプ１１に供給される。アンプ１１は、供給されたアナログ信号を増幅し、スピーカ１２を駆動し、スピーカ１２は、楽音を出力する。
【００３１】
次に、図２を参照して自動演奏装置１の操作パネル６について説明する。図２は、操作パネル６を示す平面図である。操作パネル６には、ＬＣＤにより構成される表示器２１と、リズムボタン２２と、伴奏ボタン２３と、左手ボタン２４と、右手ボタン２５と、リセットボタン２６と、再生／停止ボタン２７と、巻き戻しボタン２８と、早送りボタン２９と、ミュート／マイナスワンボタン３０とが設けられている。
【００３２】
表示器２１には、各種設定状態や、設定されたパラメータなどが表示される。自動演奏が行われる場合には、自動演奏に関する情報が表示される。図２に示すように、現在演奏されるように設定された曲名、その演奏テンポ、拍子、現在演奏されている小節を示す小節番号などが表示される。
【００３３】
９個のボタンは、いずれも自己復帰型のスイッチであり、指などで押下することよりオンされ、離すとオフされる。これらのボタンのうち、リズムボタン２２と、伴奏ボタン２３と、左手ボタン２４と、右手ボタン２５と、再生／停止ボタン２７と、ミュート／マイナスワンボタン３０には、それぞれ、ＬＥＤ２２ａ、２３ａ、２４ａ、２５ａ、２７ａ、３０ａが設けられる。これらのボタンにより操作されるスイッチはトグル動作を行うものである。
【００３４】
リズムボタン２２と、伴奏ボタン２３と、左手ボタン２４と、右手ボタン２５とは、それぞれ、リズムパート、伴奏パート、左手パート、右手パートに対応し、そのパートをミュートするか否かを設定する。なお、これら４つのボタンを、パートボタン２２〜２５と総称する。
【００３５】
いずれかのパートがミュートするように設定された場合は、そのパートに対応するボタンに設けられたＬＥＤが点灯され、ミュートしないように設定されたパートに対応するＬＥＤは、消灯される。したがって、パートフラグが１であるパートに対応するパートボタン２２〜２５のＬＥＤは点灯され、パートフラグが０であるパートボタン２２〜２５のＬＥＤは消灯される。
【００３６】
リセットボタン２６が、押下された場合は、自動演奏が行われていれば、自動演奏を停止し、演奏ポインタが、曲の先頭に移動される。演奏ポインタは、演奏データにおいて現在の演奏位置を指示するポインタである。従って、リセットボタン２６を押下した後、演奏の開始が指示されると、曲の先頭から演奏が開始される。なお、計時される演奏ティックが演奏ポインタが示すイベントの時刻に達すると、そのイベントが処理され、演奏ポインタは、そのイベントの次に記憶されているイベントに進められる。
【００３７】
再生／停止ボタン２７が操作された場合は、自動演奏が行われていれば、自動演奏が停止され、自動演奏が停止されていれば、自動演奏が開始される。このボタン２７により演奏の停止が指示された場合は、演奏ポインタが移動されない。従って、曲の途中で再生／停止ボタン２７が押下されると、一時演奏が停止され、再度再生／停止ボタン２７が押下されると、その停止された途中の位置から演奏が再開される。また、自動演奏の再生が行われている場合は、ＬＥＤ２７ａが点灯され、自動演奏が停止されている場合は、ＬＥＤ２７ａが消灯される。
【００３８】
巻き戻しボタン２８が操作された場合は、現在演奏ポインタが示している演奏位置が直前の小節線の位置に戻される。演奏ポインタが小節線を示している場合は、１小節前の小節線の位置に戻される。一方、早送りボタン２９が操作された場合は、現在演奏ポインタが示している演奏位置を次の小節線の位置に進められる。演奏ポインタが小節線を示している場合は、１小節次の小節線の位置に進められる。
【００３９】
ミュート／マイナスワンボタン３０が操作された場合は、自動演奏のモードがミュートモードかマイナスワンモードかに切り替えられ、ボタン３０に設けられたＬＥＤ３０ａは、ミュートモードが設定された場合に消灯され、マイナスワンモードが設定された場合に点灯される。なお、音量を設定するボリュームや音色を選択するスイッチなどは、本発明とは関係がないので、図示および説明を省略する。
【００４０】
次に図３および図４を参照して演奏データについて説明する。図３は、演奏データを示すテーブルであり、図４は、図３に示す演奏データに対応する楽譜である。演奏データは、演奏ティック４１と、パート４２と、イベント４３とにより構成される。
【００４１】
演奏データは、図３に示すように、演奏ティック４１に対応して、パート４２と、イベント４３とが記憶される。なお、図３では、説明を分かりやすくするために、各イベントを行毎に表示し、その行に番号を付して示す。
【００４２】
演奏ティック４１は、イベント４３を音源に出力する時刻を示す。ティックは、時間の単位であって、１拍の時間長さを所定の数で除した時間の単位である。この実施形態では、この所定の数を１２０としている。従って、１２０ティックが１拍に相当し、４拍子の場合は、１小節が４８０ティックに相当する。
【００４３】
パート４２は、上述したリズムパート、伴奏パート、左手パート、右手パートのいずれかを指定する情報であり、その指定されたパート４２に対する情報として、イベント４３が出力される。パート４２は、ＭＩＤＩ規格により規定されるＭＩＤＩチャネルにより指定され、音源９に出力される。
【００４４】
イベント４３は、音源９を制御するデータであって、第１行から第８行までのイベント４３は、音色や音量を指示するものである。例えば、１行目に記載された「プログラム  トランペット」は、伴奏パートにより形成される楽音の音色をトランペットにするよう指示し、３行目は、左手パートをピアノ１の音色、５行目は、右手パートの音色をピアノ１の音色に、７行目は、リズムパートをジャズセットという音色にするよう指示するものである。また、２行目、４行目、６行目、８行目に記載された「ボリューム  数値」は、それぞれのパート４２の音量をその数値に応じて設定するように指示するものである。
【００４５】
音源９に出力されるイベント４３は、ＭＩＤＩ規格により規定されたフォーマットで出力され、「プログラム」は、ＭＩＤＩ規格のプログラムチェンジ、「ボリューム」は、ＭＩＤＩ規格のコントロールチェンジがそれぞれ用いられる。
【００４６】
９行目以降には、楽音の発生および消音を指示するイベント４３が記憶されている。これらのイベント４３を以下、ノートイベントと称す。ノートイベントは、ノート４４とベロシティ４５とデュレーション４６とから成る。ノート４４は、音名を示し、リズムパート以外のパートでは、この音名に対応する音高が指示される。また、リズムパートの場合には、音名により特定されるリズム楽器（スネアドラムやシンバルなど）が指示される。ベロシティ４５は、押鍵速度であり１から１２７の値をとる。この値が大きいほど音量が大きい楽音が発生される。デュレーション４６は、鍵を押下している時間であって、ティックを単位とする数値で表される。従って、演奏ティック４１により示される時刻に楽音の発生の開始を指示するノートオンイベントが音源９に出力され、その時刻からデュレーション４６により示される時間後にノートオフイベントが、音源９に出力される。
【００４７】
例えば、９行目に記載されたノートイベントは、演奏ティックが０である時刻に、伴奏パート（トランペット）の楽音を、音高Ａ＃４で、ベロシティの値を８８として発音を開始し、その時刻から３６ティック後に、発音を停止するように指示するものである。なお、曲の終端には、曲の終わりを示すエンドマーク（図示なし）が記憶される。また、図３に示す演奏データには、小節線を示す情報が記載されていないが、小節線を示すマークを記憶するようにしてもよい。なお、図３に示す演奏データでは、最初に音色や音量を制御するイベントが配列され、その後、ノートイベントが順次配列されているが、実際の演奏データでは、これらの音色や音量を制御するイベントとノートイベントとが混在するのが常である。
【００４８】
図４は、楽譜の例であって、右手パート、左手パート、伴奏パートを示し、リズムパートは、省略している。右手パートの上に小節番号が付されている。図３に示す演奏データは、この楽譜の第１節の前までの、実際に演奏された演奏のデータの例である。よって、図３に示す演奏データの演奏ティックとデュレーションは、図４に示す楽譜とは、一致しない。
【００４９】
図４に示す楽譜によれば、伴奏パートは、第１小節より前の小節から演奏が開始され、右手パートは、第８小節から演奏が開始され、左手パートは、第９小節目から演奏が開始される。上述の通り、各パート毎に、ミュートするか否かの設定を行うことができるので、伴奏パートをミュートするように設定され、曲の最初から演奏が開始された場合は、曲の最初から第７小節まで無音が続くことになり（ここでは、リズムパートは、無視して説明する）、その間、使用者は、故障したのかと不安になる。そこで、本発明では、ミュートパートに指定された以外のパートのうちで、時間的に最も早く演奏を開始する位置を検索し、その位置に基づいて演奏を開始する。上述のように、伴奏パートがミュートパートに指定された場合は、伴奏パートを無視して右手パートと左手パートとから最初に発音するノートイベントが検索される。その結果、右手パートの演奏が開始される第８小節の最初の音符に対応するノートイベントが検出される。演奏を開始する位置は、その検出されたノートイベントに基づいて設定され、そのノートイベントからとしてもよいし、例えば、そのノートイベントの直前の小節線、または更に一つ前の小節線からカウントインを発生して演奏を開始するようにしてもよい。また、そのノートイベントの直前の拍、もしくは複数拍前の位置から演奏を開始するようにしてもよい。
【００５０】
また、マイナスワンパートとして、左手パートが選択された場合は、曲の最初から演奏が開始されると、使用者は、曲の最初から第８小節まで待機し、第９小節から演奏を開始することになる。従って、第１小節の前の小節から第８小節までは、使用者は待たされることになり、時間が無駄になるとともに、演奏に入るタイミングを取るのが難しくなる。そこで、本発明では、マイナスワンパートが指定された場合は、マイナスワンパートの最初の音符に対応するノートイベントが検出される。演奏を開始する位置は、その検出されたノートイベントに基づいて設定され、そのノートイベントからとしてもよいし、例えば、そのノートイベントの直前の小節線、または更に一つ前の小節線からとしてもよい。
【００５１】
次に、図５〜図７を参照して、ＲＯＭ３に記憶される自動演奏プログラム３ａにより実行される自動演奏処理について説明する。図５は、自動演奏処理のうちのメイン処理、図６は、そのメイン処理の一部であるノート検索処理、図７は、自動演奏処理のうちのタイマ割込処理をそれぞれ示すフローチャートである。これらの処理は、いずれもＣＰＵ２により実行される処理である。
【００５２】
まず、図５を参照してメイン処理について説明する。このメイン処理は、自動演奏装置１の電源が投入されてから遮断されるまで繰り返し実行される処理である。このメイン処理では、操作パネル６に設けられたボタンの操作が検出され、その操作に応じた処理が行われる。まず、初期設定を行う（Ｓ１）。この初期設定では、演奏フラグを０、マイナスワンフラグを０、各パートフラグを０に設定し、ノートオフバッファ４ｂをクリア（何も記憶されていない状態に設定）し、タイマ割込を禁止する。
【００５３】
次に、リセットボタン２６が操作されたか否かを判断する（Ｓ２）。リセットボタン２６が操作された場合は（Ｓ２：Ｙｅｓ）、自動演奏が行われていれば、自動演奏を停止し、演奏フラグを０に設定し、演奏ポインタを曲の先頭のイベントに設定する（Ｓ３）。なお、自動演奏が行われていない場合は、単に演奏ポインタを曲の先頭のイベントに設定する。また、自動演奏を停止するとは、具体的には、タイマ割込を禁止することである。なお、このとき、ノートオフバッファ４ｂにノートオフイベントが記憶されている場合は、そのノートオフイベントを音源９へ出力し、そのノートオフイベントをノートオフバッファ４ｂから消去する。
【００５４】
リセットボタン２６が操作されなければ（Ｓ２：Ｎｏ）、次に、再生／停止ボタン２７が操作されたか否かを判断する（Ｓ４）。再生／停止ボタン２７が操作された場合は（Ｓ４：Ｙｅｓ）、演奏フラグが１に設定されているか否かを判断し（Ｓ５）、演奏フラグが１に設定されていれば（Ｓ５；Ｙｅｓ）、現在、自動演奏が行われていることを示し、自動演奏を停止し、演奏フラグを０にするとともに、再生／停止ボタン２７に設けられているＬＥＤを消灯する。
【００５５】
一方、演奏フラグが１に設定されていない場合は、自動演奏が停止中であることを示し、演奏を開始する際の処理であるノート検索処理を行う（Ｓ７）。このノート検索処理については、図６を参照して後述する。
【００５６】
再生／停止ボタン２７が操作されなければ（Ｓ４：Ｎｏ）、ミュート／マイナスワンボタン３０が操作されたか否かを判断する（Ｓ８）。ミュート／マイナスワンボタン３０が操作された場合は（Ｓ８：Ｙｅｓ）、マイナスワンフラグが１であるか否かを判断する（Ｓ９）。マイナスワンフラグが１である場合は、現在演奏モードがマイナスワンモードに設定されており、マイナスワンフラグを０に設定して、ミュートモードに変更するとともに、ミュート／マイナスワンボタン３０に設けられているＬＥＤを消灯する（Ｓ１０）。
【００５７】
マイナスワンフラグが１でなければ、現在演奏モードがミュートモードに設定されており、マイナスワンフラグを１に設定して、マイナスワンモードに変更するとともに、ミュート／マイナスワンボタン３０に設けられているＬＥＤを点灯する（Ｓ１１）。
【００５８】
ミュート／マイナスワンボタン３０が操作されなければ（Ｓ８：Ｎｏ）、次に、巻き戻しボタン２８が操作されたか否かを判断する（Ｓ１２）。巻き戻しボタン２８が操作された場合は（Ｓ１２：Ｙｅｓ）、演奏ポインタを現在の演奏位置の直前の小節線の位置に移動する（Ｓ１３）。巻き戻しボタン２８が操作されなければ（Ｓ１２：Ｎｏ）、次に、早送りボタン２９が操作されたか否かを判断し（Ｓ１４）、早送りボタン２９が操作された場合は（Ｓ１４：Ｙｅｓ）、演奏ポインタを現在の演奏位置の直後の小節線の位置に移動する（Ｓ１５）。
【００５９】
早送りボタン２９が操作されなければ（Ｓ１４：Ｎｏ）、次に、パートボタン２２〜２５のいずれかが操作されたか否かを判断する（Ｓ１６）。パートボタン２２〜２５のいずれかが操作された場合は（Ｓ１６：Ｙｅｓ）、操作されたパートボタンに対応するパートフラグが１であるか否かを判断し（Ｓ１７）、そのパートフラグが１であれば（Ｓ１７：Ｙｅｓ）、そのパートは、ミュートするように設定されており、そのパートフラグを０にして、ミュートを解除するとともに、その操作されたパートボタンのＬＥＤを消灯する。操作されたパートボタンに対応するパートフラグが１でなければ（Ｓ１７：Ｎｏ）、そのパートフラグを１にするとともに、その操作されたパートボタンのＬＥＤを点灯する（Ｓ１９）。パートボタン２２〜２５のいずれかが操作されない場合（Ｓ１６：Ｎｏ）、または、Ｓ３、Ｓ６、Ｓ７、Ｓ１０、Ｓ１１、Ｓ１３、Ｓ１５、Ｓ１８、Ｓ１９のいずれかの処理を終了した場合は、その他の処理を行う（Ｓ２０）。その他の処理としては、図示しない音量を調整するボリュームや音色を選択するスイッチが操作されたか否かを判断し、操作された場合には、その操作に応じた処理がある。その他の処理（Ｓ２０）を終了した場合は、Ｓ２の処理に戻る。
【００６０】
次に、図６を参照して、上記Ｓ７のノート検索処理について説明する。このノート検索処理では、現在演奏ポインタにより示されているイベント以降のイベントで、時間的に最も早いノートイベントが検索される。従って、演奏ポインタが曲の先頭に設定されている場合は、曲の先頭から最も早いノートイベントが検出され、演奏ポインタが曲の途中に設定されている場合は、その位置から最も早いノートイベントが検索される。
【００６１】
自動演奏モードがミュートモードに設定されている場合には、ミュートするように設定されているパートおよびリズムパート以外のパートで最も早いノートイベントが検索される。一方、自動演奏モードがマイナスワンモードに設定されている場合には、ミュートするように指定されたパートのうち最も早いノートイベントが検索される。なお、ミュートモードにおいても、マイナスワンモードにおいても、ミュートするパートは、複数のパートであってもよい。ノートイベントが検索されると、その検索されたノートイベントから演奏が開始される。
【００６２】
図６に示すフローチャートに従って、順次ノート検索処理について説明する。まず、演奏ポインタが示すイベントは、ノートイベントであるか否かを判断する（Ｓ２１）。演奏ポインタが示すイベントがノートイベントである場合は（Ｓ２１：Ｙｅｓ）、次に、フラグメモリ４ａに記憶されているマイナスワンフラグが１か否かを判断する（Ｓ２２）。上述の通り、マイナスワンフラグが１の場合は、自動演奏モードがマイナスワンモードであり、マイナスワンフラグが０の場合は、ミュートモードである。
【００６３】
マイナスワンフラグが１でなければ、そのノートイベントのパートがミュートするように設定されているか、またはリズムパートであるか否かを判断する（Ｓ２３）。パートがミュートするように設定されているか否かは、パートに対応するパートフラグを参照することにより判断される。そのノートイベントのパートが、ミュートするように設定されているかリズムパートであれば（Ｓ２３：Ｙｅｓ）、演奏ポインタを次のイベントに進め（Ｓ２４）、Ｓ２１の処理に戻る。
【００６４】
一方、Ｓ２１の判断処理において、演奏ポインタが示すイベントがノートイベントでなければ（Ｓ２１：Ｎｏ）、演奏ポインタが示すイベントが曲の終わりを示すエンドマークであるか否かを判断する（Ｓ２５）。演奏ポインタが示すイベントが曲の終わりを示すエンドマークでなければ（Ｓ２５：Ｎｏ）、そのイベントは、音色や音量をなどを設定するイベントであると判断し、そのイベントを音源９に出力し（Ｓ２６）、Ｓ２４の処理に移行する。演奏ポインタが示すイベントが曲の終わりを示すエンドマークであれば（Ｓ２５：Ｙｅｓ）、検索の結果、ノートイベントが検出されなかったとして、このノート検索処理を終了する。
【００６５】
Ｓ２３の判断処理において、演奏ポインタが示すノートイベントのパートがミュートするように設定されていないかリズムパートでなければ（Ｓ２３：Ｎｏ）、そのノートイベントが最も早いノートイベントであり、演奏ティックを演奏ポインタが示すイベントの時刻とし、演奏フラグを１として（Ｓ２７）、タイマ割込を許可し（Ｓ２８）、このノート検索処理を終了する。
【００６６】
タイマ２ａは、テンポ値により設定される１拍の時間を１２０で除したティック時間を計時し、その時間を計時する毎にＣＰＵ２にタイマ割込を発生する。そのタイマ割込により起動されるタイマ割込処理については、図７を参照して後述する。
【００６７】
Ｓ２２の判断処理において、マイナスワンフラグが１である場合は（Ｓ２２：Ｙｅｓ）、演奏モードがマイナスワンモードであり、演奏ポインタが示すノートイベントのパートがマイナスワンパート（ミュートされるパート）に指定されているか否かを判断する（Ｓ３１）。ノートイベントのパートがマイナスワンパートに指定されている場合は（Ｓ３１：Ｙｅｓ）、このノートイベントが最も早いノートイベントであり、演奏ティックを演奏ポインタが示すイベントの時刻とし、演奏フラグを１として（Ｓ２７）、タイマ割込を許可し（Ｓ２８）、このノート検索処理を終了する。タイマ割込を許可することにより、タイマ２ａによる計時毎にタイマ割込処理が起動され、自動演奏が開始される。
【００６８】
ノートイベントのパートがマイナスワンパートに指定されていなければ（Ｓ３１：Ｎｏ）、演奏ポインタを次のイベントに進め（Ｓ３２）、Ｓ２１の処理に戻る。
【００６９】
以上、ノート検索処理について説明したように、このノート検索処理では、演奏モードがミュートモードの場合には、ミュートされていないパートのうち、現在設定されている演奏ポインタの位置から最も早いノートイベントが検索され、その検索された位置から演奏が開始されることになる。また、演奏モードがマイナスワンモードの場合には、ミュートするように設定されているパートのうち、現在設定されている演奏ポインタの位置から最も早いノートイベントが検索され、その検索された位置から演奏が開始されることになる。従って、ミュートモードにおいては、ミュートされたパートが最も早く発音を開始するように設定されている場合でも、ミュートされないパートの先頭から自動演奏を開始させることができる。
【００７０】
一方、マイナスワンモードにおいては、ミュートされるパートは、演奏の練習が行われるパートであり、その演奏が行われるパートの最も早く発音を開始する位置が検出され、その位置から自動演奏が開始されるので、使用者は、演奏の開始を待たされることがなく、すぐに演奏に入ることができる。よって、演奏の開始のタイミングを取りやすい。
【００７１】
次に、図７を参照して、タイマ割込処理について説明する。図７は、タイマ割込処理を示すフローチャートである。このタイマ割込処理は、タイマ２ａが１ティックを計時する毎に起動され、その時刻に処理すべきイベントが存在する場合は、そのイベントの処理が行われる。この処理により、自動演奏が実行される。以下、フローチャートに従って、順次説明する。まず、現在時刻を示す演奏ティックは、演奏ポインタが示すイベントの時刻か否かを判断する（Ｓ４１）。演奏ティックが、演奏ポインタが示すイベントの時刻である場合は（Ｓ４１：Ｙｅｓ）、演奏ポインタが示すイベントがノートイベントか否かを判断する（Ｓ４２）。演奏ポインタが示すイベントがノートイベントである場合は（Ｓ４２：Ｙｅｓ）、そのノートイベントのパートがミュートするように設定されているか否かを判断し（Ｓ４３）、ミュートするように設定されていなければ（Ｓ４３：Ｎｏ）、そのノートイベントに対応するノートオンイベントを音源９に出力する（Ｓ４４）とともに、ノートイベントに対応して記憶されているデュレーションの時間と演奏ティックとを加算して、ノートオフイベントを出力する時刻を求め、ノートオフイベントと、その求められた時刻とをＲＡＭ４のノートオフバッファ４ｂに記憶する（Ｓ４５）。Ｓ４５の処理を終了した場合は、演奏ポインタを次のイベントに進め（Ｓ４６）、Ｓ４１の処理に戻る。
【００７２】
Ｓ４３の判断処理において、ノートイベントのパートがミュートするように設定されている場合は（Ｓ４３：Ｙｅｓ）、Ｓ４４およびＳ４５の処理を行わずに、演奏ポインタを次のイベントに進め（Ｓ４６）、Ｓ４１の処理に戻る。
【００７３】
一方、Ｓ４２の判断処理において、演奏ポインタが示すイベントがノートイベントでなければ（Ｓ４２：Ｎｏ）、演奏ポインタが示すイベントが曲の終わりを示すエンドマークであるか否かを判断する（Ｓ４７）。演奏ポインタが示すイベントが曲の終わりを示すエンドマークでなければ（Ｓ４７：Ｎｏ）、そのイベントを、音色や音量を設定するイベントであると判断して音源９に出力し（Ｓ４８）、Ｓ４６の処理に進む。演奏ポインタが示すイベントが曲の終わりを示すエンドマークであれば（Ｓ４７：Ｙｅｓ）、演奏フラグを０に設定し、タイマ割込を禁止して（Ｓ４９）、このタイマ割込処理を終了する。タイマ割込が禁止されることのより自動演奏は、停止される。
【００７４】
一方、Ｓ４１の判断処理において、演奏ティックが演奏ポインタが示すイベントの時刻ではなければ（Ｓ４１：Ｎｏ）、演奏ティックが、ＲＡＭ４のノートオフバッファ４ｂに記憶されたノートオフイベントの時刻のいずれかに一致するか否かを判断し（Ｓ５１）、一致する場合は（Ｓ５１：Ｙｅｓ）、そのノートオフイベントを音源９に出力し、そのノートオフイベントと時刻とをノートオフバッファ４ｂから消去する（Ｓ５２）。
【００７５】
次に、ノートオフバッファ４ｂにノートオフイベントが記憶されているか否かを判断し（Ｓ５３）、ノートオフイベントが記憶されていない場合は（Ｓ５３：Ｎｏ）、次のノートイベント（ただし、ミュートモードの場合は、ミュートされたパートとリズムパートとを除くパートのノートイベントであり、マイナスワンモードの場合は、ミュートされているパートのノートイベントである）を演奏データから検索し、そのノートイベントの時刻から現在の時刻である演奏ティックとの差を算出することにより、次に楽音の発生が開始されるまでの時間を求め、その時間が所定の時間（例えば、１小節）以内であるか否かを判断する（Ｓ５４）。次に楽音の発生が開始されるまでの時間が所定の時間以内ではない場合は（Ｓ５４：Ｎｏ）、演奏ポインタをその検索されたイベントに移動し、演奏ティックをその検索されたイベントの時刻に変更する（Ｓ５６）。なお、Ｓ５４の処理において、曲の終わりまでに次のノートイベントが見つからない場合は、次の楽音の発生が開始されるまでの時間が所定の時間以内ではないとみなし、Ｓ５６の処理において、演奏ティックを曲の終わりの時刻に変更するものとする。Ｓ５６の処理を終了するとＳ４１の処理に戻る。このＳ５３からＳ５６までの処理により所定の時間より長い休符がある場合や、間奏、後奏を飛ばして自動演奏することができる。
【００７６】
Ｓ５１の判断処理において、演奏ティックに一致する時刻のノートオフイベントがノートオフバッファ４ｂに記憶されていない場合（Ｓ５１：Ｎｏ）、または、Ｓ５３の判断処理において、ノートオフバッファ４ｂにノートオフイベントが記憶されている場合（Ｓ５３：Ｙｅｓ）、または、Ｓ５４の判断処理において、次の楽音の発生が開始されるまでの時間が所定の時間以内である場合（Ｓ５４：Ｙｅｓ）は、演奏ティックを１進め（Ｓ５５）、このタイマ割込処理を終了する。
【００７７】
以上説明したように、本発明による自動演奏装置は、自動演奏を開始するように指示された場合に、適切に演奏データの演奏開始位置を設定して演奏を開始することができる。自動演奏モードが、ミュートモードに設定されている場合は、ミュートするように設定されたパートと、リズムパートを除くパートにおいて、最も早く発音の開始を指示するノートイベントが検索され、その検索された位置に基づいて自動演奏が開始される。
【００７８】
自動演奏モードが、マイナスワンモードに設定されている場合は、ミュートするように設定されたパートにおいて、最も早く発音の開始を指示するノートイベントが検索され、その検索された位置に基づいて自動演奏が開始される。
【００７９】
なお、各請求項でいうミュートパート指定手段またはミュートパート指定ステップ、またはマイナスワンパート指定手段またはマイナスワンパート指定ステップは、図５に示すフローチャートのＳ１６〜Ｓ１９の処理が該当し、演奏開始指示手段または演奏開始指示ステップは、図５に示すフローチャートのＳ４〜Ｓ７の処理が該当し、検索手段または検索ステップは、図６に示すフローチャートのＳ２１〜Ｓ２４およびＳ３１、Ｓ３２の処理が該当し、自動演奏開始手段または自動演奏開始ステップは、図６に示すフローチャートのＳ２８の処理と、図７に示すフローチャートの処理とが該当する。
【００８０】
以上、実施形態に基づき本発明を説明したが、本発明は上記実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変形が可能であることは容易に推察できるものである。
【００８１】
例えば、上記実施形態では、ノート検索処理において最も早く発音が開始される演奏位置を検出し、その位置から演奏を開始するものとしたが、いきなりその位置から演奏が開始されると、タイミングを取りにくいので、検索された位置から１小節ほど前の小節線の位置から演奏を開始するようにしてもよい。その場合に、リズムパートなどが演奏されない場合は、カウントインと呼ばれる演奏の開始タイミングを取るためのメトロノームのような発音を行うようにしてもよい。
【００８２】
また、上記実施形態では、ミュートするように設定されているパートのノートイベントについては、音源９に出力しないものとしたが、音源９にノートイベントを出力し、そのパートの音量を０または、小さい値に設定するようにしてもよい。
【００８３】
また、上記実施形態では、自動演奏装置１は、鍵盤５を内蔵するものとしたが、ＭＩＤＩインターフェースを内蔵し、ＭＩＤＩ規格に準拠した演奏情報を外部の鍵盤などの機器から入力するようにしてもよい。
【００８４】
また、上記実施形態では、自動演奏データに基づいて演奏を行うものとしたが、パート毎に記憶されたオーディオデータ（例えば、ＰＣＭ形式で記録されたデータ）を再生するようにしてもよい。その場合には、ノートイベントを検索する代わりに、例えば、オーディオデータのレベルが所定値を超えたか否かを検出ことにより演奏を開始する位置を検出することができる。また、あるパートは、自動演奏データとし、他のパートは、オーディオデータとし、同期して自動演奏するようにしてもよい。なお、演奏データとオーディオデータとの同期をとることは、公知の技術である。このようにすることにより、自動演奏では演奏することが困難な人の歌唱やリアルな楽器演奏を行うことが可能になる
また、上記実施形態では、演奏開始手段は、再生／停止ボタン２７の操作により演奏の開始を指示するものとしたが、これに加えて、演奏データメモリ８ａに複数曲の演奏データを記憶し、一つの曲の演奏を終了したら、所定の順番で指定される別の曲の演奏の開始を指示するようにしてもよい。このとき、曲の前奏、間奏、後奏などのメロディがない部分を飛ばして演奏するようにしてもよい。このようにすることにより、複数曲のメロディ部分だけを連続して聴いたり、練習したりすることができる。また、メロディ部分だけを演奏する場合に、曲の終わまで演奏したら、再度曲の先頭から演奏を開始するようにしてもよい。このようにすると、一つの曲のメロディ部分だけを繰り返し聴いたり、練習したりすることができる。
【００８５】
また、上記実施形態では、自動演奏モードとして、ミュートモードとマイナスワンモードがあるものとしたが、いずれかのパートを指定し、そのパートの現在の演奏ポインタが示す位置から最も早いノートイベントを検索し、その検索された位置から、指定されたパート以外のパートをミュートして、指定されたパートのみが発音されるようにしてもよい。このようにすることにより、聴きたいパートの演奏をすばやく聴くことができる。
【図面の簡単な説明】
【００８６】
【図１】本発明の実施形態による自動演奏装置の電気的構成を示すブロック図である。
【図２】自動演奏装置の操作パネルを示す平面図である。
【図３】演奏データを示す図である。
【図４】演奏データに対応する楽譜である。
【図５】メイン処理を示すフローチャートである。
【図６】ノート検索処理を示すフローチャートである。
【図７】タイマ割込処理を示すフローチャートである。
【符号の説明】
【００８７】
１                          自動演奏装置
２                          ＣＰＵ
２ａ                        タイマ
３                          ＲＯＭ
８                          メモリカード（記憶手段）
９                          音源
２２〜２５                  パートボタン（ミュートパート指定手段またはマイナスパート指定手段）
２７                        再生／停止ボタン（演奏開始指示手段）
３０                        ミュート／マイナスワンボタン        
【図１】
2008225423.tif 000003
【図２】
2008225423.tif 000004
【図３】
2008225423.tif 000005
【図４】
2008225423.tif 000006
【図５】
2008225423.tif 000007
【図６】
2008225423.tif 000008
【図７】
2008225423.tif 000009