JP2006201439A - 自動演奏装置及び自動演奏プログラム - Google Patents
自動演奏装置及び自動演奏プログラム Download PDFInfo
- Publication number
- JP2006201439A JP2006201439A JP2005012547A JP2005012547A JP2006201439A JP 2006201439 A JP2006201439 A JP 2006201439A JP 2005012547 A JP2005012547 A JP 2005012547A JP 2005012547 A JP2005012547 A JP 2005012547A JP 2006201439 A JP2006201439 A JP 2006201439A
- Authority
- JP
- Japan
- Prior art keywords
- pattern
- performance
- tempo
- automatic performance
- song data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
【課題】 従来から自動演奏中に前回と今回に亘って同じ種類のコードが演奏されると、予めメモリに記憶されていた別のテンポデータを読み出す自動演奏装置がある。しかし、演奏者は前回演奏したコードの種類を記憶しておく必要があり、次に同じ種類のコードを演奏することを意識しなければならないという問題があった。更に、演奏者の演奏テンポが自動演奏のテンポに反映されることはなく、単にメモリから読み出された別のテンポに更新するものであった。
【解決手段】 本発明は、曲に応じた特定のパターンを自動演奏中に演奏入力すると、これによって入力されたテンポを自動演奏中の曲のテンポに変更する構成としたので、自動演奏中にスイッチ操作などを要することなく、当該自動演奏される曲と鍵盤より演奏入力されるパターンを自然に調和させて所望のテンポに変更することができる。
【選択図】 図7
【解決手段】 本発明は、曲に応じた特定のパターンを自動演奏中に演奏入力すると、これによって入力されたテンポを自動演奏中の曲のテンポに変更する構成としたので、自動演奏中にスイッチ操作などを要することなく、当該自動演奏される曲と鍵盤より演奏入力されるパターンを自然に調和させて所望のテンポに変更することができる。
【選択図】 図7
Description
本発明は、自動演奏装置及び自動演奏プログラムに関するものである。
近年、自動演奏の曲を再生して、この自動演奏の楽音を聞きながら演奏者自身による楽器演奏をすることで、1人でいながらオーケストラなどのアンサンブル演奏を楽しむことができる自動演奏装置がある。
このような自動演奏によるアンサンブル演奏をしていると、演奏者は曲の進行に応じてオリジナルな演奏表現をするため、自動演奏曲のテンポを途中で変更したいという欲求に駆り立てられる場合がある。
しかし、演奏者自身も楽器演奏の操作のために手や足がふさがっているので、自動演奏装置に設けられているテンポ設定スイッチを操作して自動演奏曲のテンポを変更することができなかった。
このようなことに鑑みて、自動演奏によるアンサンブル演奏時に専用のテンポ設定スイッチを操作することなく、演奏操作によってテンポ切り替えを可能とする装置として、例えば、演奏者によって前回演奏されたコードが、再度このコードと同一の種類のコードが演奏されたことが判別されると、今まで演奏されていた自動演奏のテンポを別のテンポに切り替える装置がある。(特許文献参照)
このような自動演奏によるアンサンブル演奏をしていると、演奏者は曲の進行に応じてオリジナルな演奏表現をするため、自動演奏曲のテンポを途中で変更したいという欲求に駆り立てられる場合がある。
しかし、演奏者自身も楽器演奏の操作のために手や足がふさがっているので、自動演奏装置に設けられているテンポ設定スイッチを操作して自動演奏曲のテンポを変更することができなかった。
このようなことに鑑みて、自動演奏によるアンサンブル演奏時に専用のテンポ設定スイッチを操作することなく、演奏操作によってテンポ切り替えを可能とする装置として、例えば、演奏者によって前回演奏されたコードが、再度このコードと同一の種類のコードが演奏されたことが判別されると、今まで演奏されていた自動演奏のテンポを別のテンポに切り替える装置がある。(特許文献参照)
従来からある自動演奏装置において、演奏者は前回演奏したコードの種類を記憶しておく必要があり、テンポを変更するタイミングとして次に同じ種類のコードを演奏することを意識しなければならないという演奏者に負担がかかる問題があった。
さらに、この特許文献の自動演奏装置は、演奏者によって演奏されるテンポが自動演奏のテンポに反映されることはなく、前回演奏したときのコードと同じ種類のコードが演奏されると単にメモリから新たなテンポ値を読み出して自動演奏のテンポに切り替えるに過ぎないものであった。
さらに、この特許文献の自動演奏装置は、演奏者によって演奏されるテンポが自動演奏のテンポに反映されることはなく、前回演奏したときのコードと同じ種類のコードが演奏されると単にメモリから新たなテンポ値を読み出して自動演奏のテンポに切り替えるに過ぎないものであった。
請求項1に係る発明においては、自動演奏の曲データを記憶する曲データ記憶手段と、前記曲データ記憶手段に記憶された曲データを読み出す読出し手段と、演奏パターンを入力する演奏パターン入力手段と、前記演奏パターン入力手段より入力された演奏パターンが特定のパターンを示すものであるか否かを判別するパターン判別手段と、前記パターン判別手段によって特定のパターンが判別されると、前記読出し手段によって読み出される曲データのテンポを設定するテンポ設定手段と、を有することを特徴とする。
このような構成にすることによって、自動演奏中に演奏者がこの曲に定められた特定のパターンを演奏入力すると当該読み出されている曲データのテンポを変更することができる。
このような構成にすることによって、自動演奏中に演奏者がこの曲に定められた特定のパターンを演奏入力すると当該読み出されている曲データのテンポを変更することができる。
請求項2記載の上記自動演奏装置において、前記演奏パターン入力手段は複数の鍵からなる鍵盤であり、前記パターン判別手段は前記鍵盤の定められた鍵域内に含まれる鍵により演奏入力された演奏パターンが特定のパターンであるか否かを判別するようにしてもよい。
請求項3記載の上記自動演奏装置において、前記曲データ記憶手段は複数の曲データを記憶するとともに、これらの曲データ夫々に対応した特定のパターンデータを記憶させておいてもよい。
請求項4記載の上記自動演奏装置において、前記曲データ毎に記憶されているパターンデータは複数の音高列からなり、このパターンデータは、前後に配列する音高間の高低の傾向を示すようにしてもよい。
請求項5記載の上記自動演奏装置において、前記パターン判別手段は前記入力された演奏パターンが特定のパターンを示すものであるか否かを判別するとともに、当該入力された演奏パターンのテンポを測定するようにしてもよい。
請求項6記載の上記自動演奏装置において、前記テンポ設定手段は前記パターン判別手段によって判別された特定のパターンと当該測定された演奏パターンのテンポに基づいて、前記読出し手段によって読み出される曲データのテンポを設定するようにしてもよい。
本発明は、請求項7に記載のように、上記各手段の動作手順をプログラム化し、コンピュータに実行させることにより実施できる。その際、コンピュータプログラムはハードディスク等のディスク型記録媒体、半導体メモリやカード型メモリ等の各種メモリ、或いは通信ネットワーク等の各種プログラム記録媒体を通じてコンピュータに供給することができる。
本発明の自動演奏装置は、このような構成にすることによって、自動演奏中に当該曲に定められた特定のパターンを演奏者の好みのテンポで演奏するだけで、専用のテンポ設定スイッチを用いることなく当該自動演奏中の曲のテンポを、演奏者による演奏テンポに変更できる。
自動演奏中に演奏者によって演奏される特定のパターンのテンポに基づいて、当該自動演奏曲のテンポを変更する。
図1は、本発明の実施形態における自動演奏装置の全体構成のブロック図を示す。
CPU101は、バスライン104を介してこの自動演奏装置を構成する後述の各回路、装置に接続され、各種データを授受して全体の機能を統制する。
CPU101は、バスライン104を介してこの自動演奏装置を構成する後述の各回路、装置に接続され、各種データを授受して全体の機能を統制する。
ROM102は、CPU101において、定められた手順に従い各種機能の処理を実行するためのプログラムを記憶している。
RAM103は、自動演奏の複数の曲データと、これらの各曲データに対応する特定のパターンデータを記憶しているエリアと、一時的に各種データをストアする複数のデータエリア、及び各種レジスタのエリアが設けられている。
SW部105は、複数のスイッチから成り、電源スイッチ、RAM103にストアされている自動演奏の楽曲番号を選択する曲選択スイッチ、この選曲された曲データの自動演奏の開始を指示するスタートスイッチ等、が設けられている。以下、SW部105と記載されている「SW」はスイッチと呼称する。
本自動演奏装置には複数の鍵からなる鍵盤106が接続されている。
そして、この鍵盤106は予め左手で演奏される鍵域と右手で演奏される鍵域が設定されている。
本自動演奏装置には複数の鍵からなる鍵盤106が接続されている。
そして、この鍵盤106は予め左手で演奏される鍵域と右手で演奏される鍵域が設定されている。
また、本自動演奏装置には発音装置107が接続されており、この発音装置107は楽音を生成する音源と、この楽音を発音する装置からなる。
図2はRAM103に記憶されている自動演奏用のデータ構成を示す。
このRAM103に記憶されている各楽曲には曲番号(1)〜(M)が付されている。
これらの各楽曲のデータには、曲データとこの曲を特定するパターンデータが記憶されている。
このパターンデータは、自動演奏中に当該曲のテンポを演奏者の演奏テンポに対応して変更するときに用いられるもので、配列する音高相互間の高低傾向を示す複数のデータからなる。
このRAM103に記憶されている各楽曲には曲番号(1)〜(M)が付されている。
これらの各楽曲のデータには、曲データとこの曲を特定するパターンデータが記憶されている。
このパターンデータは、自動演奏中に当該曲のテンポを演奏者の演奏テンポに対応して変更するときに用いられるもので、配列する音高相互間の高低傾向を示す複数のデータからなる。
これらの曲データには、当該自動演奏曲のテンポの基準となるクロック周期「Tタイム」と、楽音を構成するイベント(1)〜(n)と、各イベント処理の時間を刻む「タイムクロック数(1)〜(n)」がストアされている。
そして、
そして、
次に、パターンデータをストアするエリアには先頭のアドレス位置にあって、何のデータも入っていない「NULL」と、配列された音高相互間の高低傾向を示す複数のパターンからなるデータがストアされている。
因みに、このパターンデータは音高列の前の音高とこの後の音高を比べて前の音高が高い傾向を示す「+」、前の音高より後ろの音高の方が低い傾向を示す「−」、前後の音高差が同じあることを示す「0」、の3種類からなる。
因みに、このパターンデータは音高列の前の音高とこの後の音高を比べて前の音高が高い傾向を示す「+」、前の音高より後ろの音高の方が低い傾向を示す「−」、前後の音高差が同じあることを示す「0」、の3種類からなる。
図3は本発明の基本処理を示す。
先ず、CPU101は本自動演奏装置全体を初期設定するためイニシャライズしてから(S301)、SW処理(S302)、鍵盤処理(S303)、自動演奏処理(S304)、その他の処理(S305)を実行して本処理を終了する。
先ず、CPU101は本自動演奏装置全体を初期設定するためイニシャライズしてから(S301)、SW処理(S302)、鍵盤処理(S303)、自動演奏処理(S304)、その他の処理(S305)を実行して本処理を終了する。
SW処理について
図3中、SW処理S302の詳細な動作について図6を参照して説明する。
先ず、SW部105内に設けられている楽曲番号を選択するスイッチがオンされたか否かを判別する(S601)。
ここで、楽曲番号を選択するスイッチのオンが判別されなければ、S603の処理に進むが、楽曲番号を選択するスイッチのオンが判別されると、この選択された楽曲番号をレジスタMにストアする(S602)。
そして、自動演奏を開始させるスタートスイッチがオンされたか否かを判別する(S603)。
図3中、SW処理S302の詳細な動作について図6を参照して説明する。
先ず、SW部105内に設けられている楽曲番号を選択するスイッチがオンされたか否かを判別する(S601)。
ここで、楽曲番号を選択するスイッチのオンが判別されなければ、S603の処理に進むが、楽曲番号を選択するスイッチのオンが判別されると、この選択された楽曲番号をレジスタMにストアする(S602)。
そして、自動演奏を開始させるスタートスイッチがオンされたか否かを判別する(S603)。
このスタートスイッチのオンが判別されなければ本処理を終了するが、スタートスイッチがオンされたことが判別されると、スタートフラグSTFを反転させる(S604)。
次に、このスタートフラグSTFが楽曲の自動演奏状態を示す「1」になっているか否かを判別する(S605)。
ここで、スタートフラグSTFが「1」を示すものでなければ、発音中の楽音を消音指示する(S612)。
そして、図4中S401に示すタイマインタラプト(1)により自動演奏のテンポ時間Tの進行をカウントしている間、割り込み処理を禁止して本処理を終了する(S613)。
次に、このスタートフラグSTFが楽曲の自動演奏状態を示す「1」になっているか否かを判別する(S605)。
ここで、スタートフラグSTFが「1」を示すものでなければ、発音中の楽音を消音指示する(S612)。
そして、図4中S401に示すタイマインタラプト(1)により自動演奏のテンポ時間Tの進行をカウントしている間、割り込み処理を禁止して本処理を終了する(S613)。
一方、スタートフラグSTFが「1」を示すものであれば、楽曲番号(M)に対応する曲データのRAM103にストアされているスタートアドレスをレジスタADにストアする(S606)。
そして、RAM103より曲データのアドレスADに対応する最初のタイムクロック数を読み出して(S607)、このタイムクロック数をレジスタTにストアする。(S608)。
次に、この選択された楽曲番号(M)に対応するパターンデータのスタートアドレスをレジスタPADにストアしてから(S609)、タイマインタラプト(1)によって割り込み禁止されていた状態を解除する(S610)。
そして、テンポフラグTFに「0」をセットしてから本処理を終了する(S611)。
そして、RAM103より曲データのアドレスADに対応する最初のタイムクロック数を読み出して(S607)、このタイムクロック数をレジスタTにストアする。(S608)。
次に、この選択された楽曲番号(M)に対応するパターンデータのスタートアドレスをレジスタPADにストアしてから(S609)、タイマインタラプト(1)によって割り込み禁止されていた状態を解除する(S610)。
そして、テンポフラグTFに「0」をセットしてから本処理を終了する(S611)。
このように、本スイッチ処理では自動演奏される楽曲の番号を選択して、この選択された楽曲の曲データの先頭アドレスから当該曲データの読出し開始タイミングを決めるタイムクロック数を読み出すとともにパターンデータのスタートアドレスをレジスタPADにセットして、演奏者の演奏によって入力されるパターンとRAM103内にストアされている当該楽曲に対応するに対応するパターンデータとの照合に向けて、次の鍵盤処理に備えている。
鍵盤処理について
図3中、鍵盤処理S303の詳細な動作説明について図7を参照して説明する。
先ず、予め設定されている鍵盤106の左手の演奏鍵域を走査して(S701)、この鍵域内で何れかの鍵に変化があったか否かを判別する(S702)。
図3中、鍵盤処理S303の詳細な動作説明について図7を参照して説明する。
先ず、予め設定されている鍵盤106の左手の演奏鍵域を走査して(S701)、この鍵域内で何れかの鍵に変化があったか否かを判別する(S702)。
ここで、何れの鍵も押鍵/離鍵の変化がなければ、右手の演奏鍵域の走査処理に移行する(図8中、S801)。
一方、何れかの鍵が離鍵したことが判別されると、この離鍵された鍵の鍵番号をレジスタNOTEにストアして(S714)から、このNOTEのデータに基づいて発音中の楽音を消音指示するためのオフイベントを作成する(S715)。
そして、このオフイベントに基づいて、発音装置107内の音源に対して発音中の楽音を消音するよう指示してから(S716)、右手の演奏鍵域の走査処理(図8中、S801)に移行する。
一方、何れかの鍵が離鍵したことが判別されると、この離鍵された鍵の鍵番号をレジスタNOTEにストアして(S714)から、このNOTEのデータに基づいて発音中の楽音を消音指示するためのオフイベントを作成する(S715)。
そして、このオフイベントに基づいて、発音装置107内の音源に対して発音中の楽音を消音するよう指示してから(S716)、右手の演奏鍵域の走査処理(図8中、S801)に移行する。
一方、何れかの押鍵が判別されると、この押鍵された鍵の鍵番号をレジスタNOTEにストアするとともに(S703)、当該楽音を生成して発音するよう指示するためのオンイベントを作成して(S704)このオンイベントを発音装置107内の音源に送付する(S705)。
次に、パターンアドレスのレジスタPADにストアされているアドレスに基づいて、RAM103からパターンデータを読み出す(S706)。
そして、この読み出されたパターンデータが何もデータが存在しないことを示す「NULL」であるか否かを判別する(S707)。
そして、この読み出されたパターンデータが何もデータが存在しないことを示す「NULL」であるか否かを判別する(S707)。
パターンデータの先頭アドレスには「NULL」がストアされており、この読み出されたパターンデータが「NULL」であることが判別されると、先ず、今回押鍵された音高を示すレジスタ「NOTE」の示す値を前回押鍵された音高を記録するレジスタFPNOTEにストアする(S708)。
次に、パターンデータの読出しアドレスPADをインクリメントして(S709)、テンポフラグTFがテンポの測定状態を示す「1」であるか否かを判別する(S710)。
一方S707の処理で、読み出されたパターンデータが「NULL」ではないことが判別されると、図9中、S901の処理に進む。
次に、パターンデータの読出しアドレスPADをインクリメントして(S709)、テンポフラグTFがテンポの測定状態を示す「1」であるか否かを判別する(S710)。
一方S707の処理で、読み出されたパターンデータが「NULL」ではないことが判別されると、図9中、S901の処理に進む。
図9中、S901の処理において、この読み出されたパターンデータが「NULL」ではない場合、今回読み出されたパターンデータの音高が一つ前に読み出されたパターンデータの音高より高いことを意味する「+」か、或いは今回読み出されたパターンデータの音高が前回読み出されたパターンデータの音高より低いことを意味する「−」か、また或いは前回と今回読み出された双方のパターンデータの音高が同じであることを示す「0」か、を判別する。
この読み出されたパターンデータが「+」を示すものであれば、今回押鍵された音高を示すレジスタNOTEが前回押鍵された音高を示すレジスタFPNOTEより高い音高か否かを判別する(S902)。
S902の判別で、今回押鍵された音高の方が前回押鍵された音高より高ければ今回押鍵された音高を示すレジスタNOTEの値を前回押鍵された音高を示すレジスタFPNOTEにストアする(S903)。
S902の判別で、今回押鍵された音高の方が前回押鍵された音高より高ければ今回押鍵された音高を示すレジスタNOTEの値を前回押鍵された音高を示すレジスタFPNOTEにストアする(S903)。
一方、S901の処理において、読み出されたパターンデータの前回の音高より、今回の音高が低いことを示す「−」であることが判別された場合、今回押鍵された音高を示すレジスタNOTEが前回押鍵された音高を示すレジスタFPNOTEより低いか否かを判別する(S910)。
ここで、FPNOTE>NOTEであるならばS903の処理に進んで、以後、前述のFPNOTE<NOTEの処理と同様の処理を行う。
ここで、FPNOTE>NOTEであるならばS903の処理に進んで、以後、前述のFPNOTE<NOTEの処理と同様の処理を行う。
また、S901の処理において、読み出されたパターンデータが前回の音高と今回の音高が同じことを示す「0」であることが判別された場合は、今回押鍵された音高を示すレジスタNOTEと前回押鍵された音高を示すレジスタFPNOTEが等しいか否かを判別する(S909)。
ここで、FPNOTE=NOTEであるならばS903の処理に進んで、以後、前述のFPNOTE<NOTEの処理と同様の処理を行う。
ここで、FPNOTE=NOTEであるならばS903の処理に進んで、以後、前述のFPNOTE<NOTEの処理と同様の処理を行う。
次に、S903の処理に続いてパターンアドレスがストアされたPADの値をインクリメントする(S904)。
そして、このPADの示す値が最終アドレスに相当するか否かを判別する(S905)。
ここで、パターンアドレスが最終アドレスであることが判別されると、演奏者の演奏によって入力されるパターンのテンポをカウントするため、タイマPTをゼロにセットする(S906)。
それから、タイマインタラプト(2)による割り込み禁止の処理を解除する(S907)。
そして、このPADの示す値が最終アドレスに相当するか否かを判別する(S905)。
ここで、パターンアドレスが最終アドレスであることが判別されると、演奏者の演奏によって入力されるパターンのテンポをカウントするため、タイマPTをゼロにセットする(S906)。
それから、タイマインタラプト(2)による割り込み禁止の処理を解除する(S907)。
そして、テンポフラグTFにテンポ設定状態であることを示す「1」をセットしてから(S908)、レジスタPADに曲番号(M)に対応するパターンデータの先頭に位置するスタートアドレスを再セットする(S911)。
それから、次に右鍵域走査の処理に移行する(図8中S801)。
それから、次に右鍵域走査の処理に移行する(図8中S801)。
一方、RAM103から読み出されたパターンデータの内容が「0」を示すものであるにもかかわらず、前回押鍵された音高と今回押鍵された音高の差が同じでない場合、或いは読み出されたパターンデータの内容が「−」を示すものであるにもかかわらず、演奏者によって今回押鍵された音高の方が前回押鍵された音高より高い場合は、読み出されたパターンデータの示す音高の高低傾向と、連続して押鍵された音高傾向を示すパターンが違うので、ここでS911の処理に進んで次に演奏入力されるパターンと当該パターンデータとの照合に備える。
ここで再び、図7中のS710の処理に戻る。
S710の処理でテンポフラグTFがテンポ設定である「1」を示すものでなければ、右手の演奏鍵域の走査処理(図8中、S801)に進む。
S710の処理でテンポフラグTFがテンポ設定である「1」を示すものでなければ、右手の演奏鍵域の走査処理(図8中、S801)に進む。
一方、演奏者によって演奏入力された音高の高低傾向を示すパターンとRAM103にストアされているパターンデータを照合した結果、全て一致していることが判別されて、再び呼び出されたパターンデータが「NULL」であって、更にテンポ設定を示すテンポフラグTFが「1」を示していることが判別されると、演奏者によって演奏入力されたテンポをカウントするタイマPTの示す値に基づき、曲データから読み出されるタイムクロック数を減算カウントするタイマインタラプト(1)のインタラプト周期を設定する(S711)。
それから、図5中S501に示す演奏入力のテンポを測定するタイマインタラプト(2)の処理を禁止して(S712)、テンポフラグTFにテンポ設定終了を示す「0」をセットする(S713)。
そして、次に右手による演奏の鍵域の走査処理(図8中、S801)に進む。
そして、次に右手による演奏の鍵域の走査処理(図8中、S801)に進む。
このように、鍵盤処理では自動演奏されている途中において、左手の演奏鍵域内で演奏者によって演奏入力された一連の音高の高低傾向を示すパターンが、RAM103から読み出されたパターンデータが示す音高列の高低傾向と一致することが判別されると、当該パターンが演奏されたときのテンポに基づいてタイマインタラプト(1)の割り込み周期がセットされ、当該曲データのイベントの読出しテンポが変更される。
次に、図8を参照して右手の演奏鍵域が走査された場合に処理される動作について説明する。
先ず、右手の演奏鍵域内を走査して(S801)、この鍵域内の何れかの鍵が押鍵されたか、離鍵されたか、変化がなかったかを判別する(S802)。
ここで、何れの鍵も変化がなければ本処理を終了し、何れかの鍵が離鍵したことが判別されると、この離鍵された鍵の鍵番号をレジスタNOTEにストアしてから(S806)、発音中の楽音を消音するよう指示するオフイベントを作成し(S807)、発音装置107内の音源に送付する(S805)。
先ず、右手の演奏鍵域内を走査して(S801)、この鍵域内の何れかの鍵が押鍵されたか、離鍵されたか、変化がなかったかを判別する(S802)。
ここで、何れの鍵も変化がなければ本処理を終了し、何れかの鍵が離鍵したことが判別されると、この離鍵された鍵の鍵番号をレジスタNOTEにストアしてから(S806)、発音中の楽音を消音するよう指示するオフイベントを作成し(S807)、発音装置107内の音源に送付する(S805)。
一方、鍵盤106上の右手の鍵域内で何れかの鍵が押鍵されたことが判別されると、この押鍵された鍵の鍵番号をレジスタNOTEにストアしてから(S803)、当該楽音を発音するよう指示するオンイベントを作成して(S804)、発音装置107内の音源に送付する(S805)。
このように、右手の演奏鍵域内で押鍵/離鍵の操作が判別されると当該鍵番号に対応する音高のオンイベント/オフイベントを生成して発音/消音の処理がなされる。
このように、右手の演奏鍵域内で押鍵/離鍵の操作が判別されると当該鍵番号に対応する音高のオンイベント/オフイベントを生成して発音/消音の処理がなされる。
自動演奏処理について
図3中、自動演奏処理S304の詳細な動作について図10を参照して説明する。
先ず、スタートフラグSTFが自動演奏の開始状態を示す「1」であるか否かを判別し(S1001)、このSTFが「1」を示すものであれば曲データの次のイベントを読み出すタイミングに到達したことを示す「0」以下であるか否かを判別する(S1002)。
図3中、自動演奏処理S304の詳細な動作について図10を参照して説明する。
先ず、スタートフラグSTFが自動演奏の開始状態を示す「1」であるか否かを判別し(S1001)、このSTFが「1」を示すものであれば曲データの次のイベントを読み出すタイミングに到達したことを示す「0」以下であるか否かを判別する(S1002)。
ここで、スタートフラグSTFが「1」を示す状態になっていない場合、或いはイベント時間のレジスタTに「0」以上のデータが入っていることが判別された場合は本処理を終了するが、このレジスタTのデータが「0」以下であることが判別されると、曲データの読出しアドレスをインクリメントして(S1003)、この読出しアドレスが曲データの最終アドレスに到達したか否かを判別する(S1004)。
この曲データの読出しアドレスが最終アドレスに到達しなければ、S1006の処理に進む。
一方、この曲データのアドレスが最終アドレスに到達したことが判別された場合、曲番号(M)に対応する曲データの先頭位置を指示するスタートアドレスをレジスタADに書き込む(S1005)。
次に、このレジスタADのアドレスで指定される曲データを読み出す(S1006)。
一方、この曲データのアドレスが最終アドレスに到達したことが判別された場合、曲番号(M)に対応する曲データの先頭位置を指示するスタートアドレスをレジスタADに書き込む(S1005)。
次に、このレジスタADのアドレスで指定される曲データを読み出す(S1006)。
そして、この読み出された曲データが「イベント」であるか、或いは「タイムクロック数」であるかを判別する(S1007)。
この読み出された曲データが「イベント」であることが判別された場合、この「イベント」を発音装置107の音源に送って当該楽音の発音/消音処理を行い(S1008)、読み出された曲データが「タイムクロック数」であることが判別されると、この「タイムクロック数」のデータをレジスタTに書き込んでから本処理を終了する(S1009)。
この読み出された曲データが「イベント」であることが判別された場合、この「イベント」を発音装置107の音源に送って当該楽音の発音/消音処理を行い(S1008)、読み出された曲データが「タイムクロック数」であることが判別されると、この「タイムクロック数」のデータをレジスタTに書き込んでから本処理を終了する(S1009)。
以上、本発明は自動演奏される曲のテンポを変更するときのために、曲データ毎に夫々特定のパターンデータを付加しておき、この曲データの自動演奏中に、当該楽曲を特定するパターンを左手の鍵域内で所望のテンポで演奏すると、この演奏入力された音高列の高低傾向を示すパターンと当該曲を特定するパターンデータを照合して、この音高列の高低傾向を示すパターンが全て一致していれば、ここで演奏入力されたテンポを当該自動演奏中の曲のテンポとして設定されるので、演奏者は自動演奏の途中で専用のテンポ指定スイッチなどの操作をすることなく違和感のない自然な演奏を楽しむことができる。
本発明において、例えば、これらのパターンデータを当該自動演奏される曲の進行に適正なフレーズ、或いは分散和音などにすることによって、当該自動演奏の曲と鍵盤演奏によるパターンを自然に調和させながらテンポを変更することができる。
尚、本発明の自動演奏装置に、演奏操作子、或いは他の操作子などを用いてパターンデータの入力処理、及びパターンデータを記録する処理を可能とする構成を設けたり、更に記録されている既存のパターンデータの内容を修正・変更する構成を設けてもよい。
また、本発明の自動演奏装置は、左手の鍵域内で演奏入力された音高列の高低傾向を示すパターンと、自動演奏の曲を特定するパターンデータが全て一致していれば、演奏者によって演奏入力されたパターンのテンポに変更するようにしたが、この演奏パターンの入力に用いる楽器の種類は鍵盤に限定されることなく弦楽器、管楽器など音高列を入力できるものであれば何でも良い。
また、演奏パターンの入力条件として特に演奏される鍵域、或いは音域などを定めなくても良い。
また、演奏パターンの入力条件として特に演奏される鍵域、或いは音域などを定めなくても良い。
また、上記実施の形態で説明した動作手順をプログラム化し、コンピュータに実行させることにより実施できる。その際、コンピュータプログラムはハードディスク等のディスク型記録媒体、半導体メモリやカード型メモリ等の各種メモリ、或いは通信ネットワーク等の各種プログラム記録媒体を通じてコンピュータに供給することができる。
101 CPU
102 ROM
103 RAM
104 バスライン
105 SW部
106 鍵盤
107 発音装置
102 ROM
103 RAM
104 バスライン
105 SW部
106 鍵盤
107 発音装置
Claims (7)
- 自動演奏の曲データを記憶する曲データ記憶手段と、
前記曲データ記憶手段に記憶された曲データを読み出す読出し手段と、
演奏パターンを入力する演奏パターン入力手段と、
前記演奏パターン入力手段より入力された演奏パターンが特定のパターンを示すものであるか否かを判別するパターン判別手段と、
前記パターン判別手段によって特定のパターンが判別されると、前記読出し手段によって読み出される曲データのテンポを設定するテンポ設定手段と、
を具備することを特徴とする自動演奏装置。 - 前記演奏パターン入力手段は複数の鍵からなる鍵盤であり、
前記パターン判別手段は前記鍵盤の定められた鍵域内に含まれる鍵により演奏入力された演奏パターンが特定のパターンであるか否かを判別することを特徴とする請求項1記載の自動演奏装置。 - 前記曲データ記憶手段は複数の曲データを記憶するとともに、
これらの曲データ夫々に対応した特定のパターンデータが記憶されていることを特徴とする請求項1に記載の自動演奏装置。 - 前記曲データ毎に記憶されているパターンデータは複数の音高列からなり、
このパターンデータは、前後に配列する音高間の高低の傾向を示すことを特徴とする請求項1記載の自動演奏装置。 - 前記パターン判別手段は前記入力された演奏パターンが特定のパターンを示すものであるか否かを判別するとともに、当該入力された演奏パターンのテンポを測定することを特徴とする請求項1記載の自動演奏装置。
- 前記テンポ設定手段は前記パターン判別手段によって判別された特定のパターンと当該測定された演奏パターンのテンポに基づいて、前記読出し手段によって読み出される曲データのテンポを設定することを特徴とする請求項1記載の自動演奏装置。
- 曲データ記憶手段に記憶されている曲データを読み出す読出しステップと、
演奏パターンを入力する演奏パターン入力ステップと、
前記入力された演奏パターンが特定のパターンを示すものであるか否かを判別するパターン判別ステップと、
前記入力された演奏パターンが特定のパターンを示すものであることが判別されると、前記曲データ記憶手段より読出される曲データの再生テンポを設定するステップと、
からなる自動演奏プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005012547A JP2006201439A (ja) | 2005-01-20 | 2005-01-20 | 自動演奏装置及び自動演奏プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005012547A JP2006201439A (ja) | 2005-01-20 | 2005-01-20 | 自動演奏装置及び自動演奏プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006201439A true JP2006201439A (ja) | 2006-08-03 |
Family
ID=36959493
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005012547A Pending JP2006201439A (ja) | 2005-01-20 | 2005-01-20 | 自動演奏装置及び自動演奏プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006201439A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008013191A1 (fr) | 2006-07-25 | 2008-01-31 | Panasonic Electric Works Co., Ltd. | Pompe à membrane |
-
2005
- 2005-01-20 JP JP2005012547A patent/JP2006201439A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008013191A1 (fr) | 2006-07-25 | 2008-01-31 | Panasonic Electric Works Co., Ltd. | Pompe à membrane |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Rothstein | MIDI: A comprehensive introduction | |
JP6040809B2 (ja) | コード選択装置、自動伴奏装置、自動伴奏方法および自動伴奏プログラム | |
JP2576700B2 (ja) | 自動伴奏装置 | |
US9012756B1 (en) | Apparatus and method for producing vocal sounds for accompaniment with musical instruments | |
JP2007078751A (ja) | 合奏システム | |
JP6860077B2 (ja) | 楽音データ再生装置および楽音データ再生方法 | |
JP2006201439A (ja) | 自動演奏装置及び自動演奏プログラム | |
JP2005208154A (ja) | 楽曲検索装置及び楽曲検索プログラム | |
JP2021113895A (ja) | 伴奏音生成装置、電子楽器、伴奏音生成方法および伴奏音生成プログラム | |
JP6421811B2 (ja) | コード選択方法およびコード選択装置 | |
WO2018159063A1 (ja) | 電子音響装置および音色設定方法 | |
JP2940449B2 (ja) | 自動演奏装置 | |
JP4305315B2 (ja) | 自動演奏データ特性変更装置及びそのプログラム | |
JP7425558B2 (ja) | コード検出装置及びコード検出プログラム | |
WO2022201945A1 (ja) | 自動演奏装置、電子楽器、演奏システム、自動演奏方法、及びプログラム | |
JP4735969B2 (ja) | 伴奏表示装置及びプログラム | |
JP3752940B2 (ja) | 自動作曲方法、自動作曲装置及び記録媒体 | |
JP6597533B2 (ja) | 波形データ選択装置および波形データ選択方法 | |
JP3752956B2 (ja) | 演奏ガイド装置および演奏ガイド方法並びに演奏ガイドプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JPH0527762A (ja) | 電子楽器 | |
JP3517898B2 (ja) | 電子楽器 | |
JP3669301B2 (ja) | 自動作曲装置及び方法並びに記憶媒体 | |
CN105023563B (zh) | 采样装置、电子乐器以及方法 | |
JPH0535268A (ja) | 自動演奏装置 | |
JP2023043297A (ja) | 情報処理装置、電子楽器、音列生成方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070823 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081224 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090127 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090623 |