JP4873307B2 - 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム - Google Patents

自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム Download PDF

Info

Publication number
JP4873307B2
JP4873307B2 JP2006309049A JP2006309049A JP4873307B2 JP 4873307 B2 JP4873307 B2 JP 4873307B2 JP 2006309049 A JP2006309049 A JP 2006309049A JP 2006309049 A JP2006309049 A JP 2006309049A JP 4873307 B2 JP4873307 B2 JP 4873307B2
Authority
JP
Japan
Prior art keywords
automatic accompaniment
performance information
accompaniment data
input
generation
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.)
Expired - Fee Related
Application number
JP2006309049A
Other languages
English (en)
Other versions
JP2008122841A (ja
Inventor
義久 伊藤
恭浩 河野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2006309049A priority Critical patent/JP4873307B2/ja
Publication of JP2008122841A publication Critical patent/JP2008122841A/ja
Application granted granted Critical
Publication of JP4873307B2 publication Critical patent/JP4873307B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

本発明は、供給された自動伴奏パターンデータおよび入力された演奏音に基づいて自動伴奏データを生成する自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラムに関する。
供給された自動伴奏パターンデータおよび入力された演奏音に基づいて自動伴奏データを生成する自動伴奏生成装置は、従来から知られている。
このような自動伴奏装置として、たとえば、各伴奏スタイルに対応付けて自動伴奏パターンデータを記憶しておき、ユーザがある1つの伴奏スタイルを選択すると、その伴奏スタイルに対応した自動伴奏パターンデータを読み出し、読み出した自動伴奏パターンデータを、ユーザが鍵盤などを用いて入力した和音に合うように変換することで、自動伴奏データを生成するものがある。ここで、自動伴奏パターンデータは、個々の伴奏音に対応した音高データとタイミングデータをセットにしたものであり、この自動伴奏パターンデータを用いた自動伴奏データの生成は、たとえば、自動伴奏パターンデータ内の音高を所定のルールで変換した後、変換後の全音高を入力和音の根音に応じてシフトすることによってなされる。これにより、入力和音に合った音高の自動伴奏データが生成される(たとえば、特許文献1参照)。
一方、押鍵に応じてアルペジオ(分散和音)を生成する、いわゆるアルペジエータと呼ばれるものがある。アルペジエータは、複数のキー番号(音高に対応したノートナンバではなく、単純な番号)とその発音タイミングからなるアルペジオパターンデータを記憶し、同時に押鍵された複数の音の音高に所定のルール(たとえば、音高の低い順)に従って番号を割り振り、アルペジオパターンデータ中のキー番号に対応した番号が割り振られた音高を、その発音タイミングで発生させるようにして、押鍵音を基にアルペジオを生成している。そして、パターン内の一部に固定音高を指定するタイプ(フィックスド・ノート)のアルペジオパターンデータを用いてアルペジオを生成するものもある(たとえば、特許文献2参照)。
特許3319390号公報 特開2001−22354号公報
しかし、上記従来の自動伴奏装置では、ユーザが自動伴奏データを生成する基になる音高の音を押鍵している間、自動伴奏データが生成され、離鍵すると自動伴奏データの生成が停止するので、自動伴奏音を生成している間、少なくとも片手が自動伴奏のための押鍵に占有されてしまう。
また、上記従来のアルペジエータは、通常、ユーザがアルペジオ生成のための押鍵を行った後にその離鍵を行ったとしても、アルペジオ生成が継続する、ホールド機能を備えており、このホールド機能が有効にされた後、ユーザがアルペジオ生成のための押鍵を1度でも行うと、ホールド機能が無効にされない限り、ユーザが離鍵を行ったとしても、アルペジオ生成は途切れない(後述する図4(b)参照)。したがってこの場合、アルペジオ生成に従って発生する楽音は、鳴りっぱなしの状態になる。
本発明は、この点に着目してなされたものであり、自動伴奏データ生成の開始/停止をユーザの思い通り制御しながら、自動伴奏データの生成中に、ユーザの両手を自動伴奏のための操作子操作から開放することが可能となる自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラムを提供することを目的とする。
上記目的を達成するため、請求項1に記載の自動伴奏生成装置は、自動伴奏パターンデータを供給する供給手段と、ユーザの演奏操作に応じて演奏情報を入力する入力手段と、該入力手段によって入力された演奏情報および前記供給手段によって供給された自動伴奏パターンデータに基づいて、自動伴奏データを生成する生成手段と、演奏情報を記憶する記憶手段と、前記入力手段によって演奏情報が入力されたときに、前記自動伴奏データが生成中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第1の書込条件、または前記自動伴奏データの生成が停止中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第2の書込条件のいずれかが成立している場合には、当該入力された演奏情報を前記記憶手段に書き込む書込手段と、前記入力手段による演奏情報の入力が停止されたときに、当該入力の停止された演奏情報が前記記憶手段に記憶されている場合には、当該入力の停止された演奏情報を前記記憶手段から削除する削除手段と、前記第1の書込条件が成立している場合に、前記書込手段により新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの生成を停止すると決定する一方、前記第2の書込条件が成立している場合に、前記書込手段により新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの生成を開始すると決定する決定手段と、該決定手段によって、前記自動伴奏データの生成を開始すると決定されたときには、当該自動伴奏データの生成を開始させるように前記生成手段を制御する一方、前記自動伴奏データの生成を停止すると決定されたときには、当該自動伴奏データの生成を停止させるように前記生成手段を制御する制御手段とを有することを特徴とする。
上記目的を達成するため、請求項に記載の自動伴奏発生装置は、自動伴奏パターンデータを供給する供給手段と、ユーザの演奏操作に応じて演奏情報を入力する入力手段と、該入力手段によって入力された演奏情報および前記供給手段によって供給された自動伴奏パターンデータに基づいて、自動伴奏データを出力する出力手段と、演奏情報を記憶する記憶手段と、前記入力手段によって演奏情報が入力されたときに、前記自動伴奏データが出力中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第1の書込条件、または前記自動伴奏データの出力が停止中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第2の書込条件のいずれかが成立している場合には、当該入力された演奏情報を前記記憶手段に書き込む書込手段と、前記入力手段による演奏情報の入力が停止されたときに、当該入力の停止された演奏情報が前記記憶手段に記憶されている場合には、当該入力の停止された演奏情報を前記記憶手段から削除する削除手段と、前記第1の書込条件が成立している場合に、前記書込手段により新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの出力を停止すると決定する一方、前記第2の書込条件が成立している場合に、前記書込手段により新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの出力を開始すると決定する決定手段と、該決定手段によって、前記自動伴奏データの出力を開始すると決定されたときには、当該自動伴奏データの出力を開始させるように前記出力手段を制御する一方、前記自動伴奏データの出力を停止すると決定されたときには、当該自動伴奏データの出力を停止させるように前記出力手段を制御する制御手段とを有することを特徴とする。
上記目的を達成するため、請求項に記載のプログラムは、請求項1と同様の技術的思想によって実現できる。
請求項1乃至3に記載の発明によれば、ユーザは演奏操作を行うだけで、次に行うべき自動伴奏データの生成状態又は出力状態が自動的に決定され、その決定結果に応じた状態に制御されるので、ユーザは入力手段から目を離さずに、入力手段から演奏情報を入力/停止するだけで、簡単に自動伴奏データの生成又は出力を開始/停止させることができる。
請求項2に記載の発明によれば、自動伴奏データを生成中に、その自動伴奏データを生成するための演奏音の入力を止めたとしても、自動伴奏データの生成は継続するので、自動伴奏データの生成中に、ユーザの両手を自動伴奏のための操作子操作から開放することができる。
請求項3に記載の発明によれば、自動伴奏データを生成中に、その自動伴奏データを生成するための演奏音の入力を止めた後、新たな押離鍵が検出されたときに、その自動伴奏データの生成が停止され、さらに新たな押鍵が検出されると、自動伴奏データの生成が再開されるので、自動伴奏データ生成の開始/停止をユーザの思い通り制御することができる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
図1は、本発明の一実施の形態に係る自動伴奏生成装置の概略構成を示すブロック図である。
同図に示すように、本実施の形態の自動伴奏生成装置は、鍵盤等の演奏操作子および各種スイッチ等の設定操作子からなる操作子群1と、該操作子群1の各操作子の操作状態を検出する検出回路2と、装置全体の制御を司るCPU3と、該CPU3が実行する制御プログラムや各種テーブルデータ等を記憶するROM4と、前記演奏操作子から入力された演奏情報、自動伴奏パターンデータ、各種入力情報および演算結果等を一時的に記憶するRAM5と、前記制御プログラムを含む各種アプリケーションプログラムや各種自動伴奏パターンデータ、各種データ等を記憶する外部記憶装置6と、各種情報等を表示する、たとえば液晶ディスプレイ(LCD)および発光ダイオード(LED)等を備えた表示装置7と、外部MIDI(Musical Instrument Digital Interface)機器等の外部機器100を接続し、この外部機器100とデータの送受信を行う通信インターフェース(I/F)8と、前記演奏操作子から入力された演奏音および前記RAM5に記憶された自動伴奏パターンデータに基づいて生成した自動伴奏データ等を楽音信号に変換する音源回路9と、該音源回路9からの楽音信号に各種効果を付与するための効果回路10と、該効果回路10からの楽音信号を音響に変換する、たとえば、DAC(Digital-to-Analog Converter)やアンプ、スピーカ等のサウンドシステム11とにより構成されている。
上記構成要素2〜10は、バス12を介して相互に接続され、通信I/F8には外部機器100が接続され、音源回路9には効果回路10が接続され、効果回路10にはサウンドシステム11が接続されている。
外部記憶装置6としては、たとえば、フレキシブルディスクドライブ(FDD)、ハードディスクドライブ(HDD)、CD−ROMドライブおよび光磁気ディスク(MO)ドライブ等を挙げることができる。そして、外部記憶装置6には、前述のように、CPU3が実行する制御プログラムも記憶でき、ROM4に制御プログラムが記憶されていない場合には、この外部記憶装置6に制御プログラムを記憶させておき、それをRAM5に読み込むことにより、ROM4に制御プログラムを記憶している場合と同様の動作をCPU3にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。
通信I/F8には、図示例では、外部機器100が接続されているが、これに限られず、たとえばLAN(Local Area Network)やインターネット、電話回線等の通信ネットワークを介して、サーバコンピュータが接続されるようにしてもよい。この場合、外部記憶装置6に上記各プログラムや各種パラメータが記憶されていなければ、通信I/F8は、サーバコンピュータからプログラムやパラメータをダウンロードするために用いられる。クライアントとなる自動伴奏生成装置は、通信I/F8および通信ネットワークを介してサーバコンピュータへとプログラムやパラメータのダウンロードを要求するコマンドを送信する。サーバコンピュータは、このコマンドを受け、要求されたプログラムやパラメータを、通信ネットワークを介して自動伴奏生成装置へと配信し、自動伴奏生成装置が通信I/F8を介して、これらプログラムやパラメータを受信して外部記憶装置6に蓄積することにより、ダウンロードが完了する。
なお、本実施の形態の自動伴奏生成装置は、上述の構成から分かるように、電子鍵盤楽器上に構築されたものであるが、これに限らず、鍵盤を外部接続した汎用的なパーソナルコンピュータ上に構築してもよい。また、鍵盤楽器の実施形態に限らず、弦楽器タイプ、管楽器タイプ、打楽器タイプ等の他の実施形態でもよい。
以上のように構成された自動伴奏生成装置が実行する制御処理を、まず図2〜図4を参照してその概要を説明し、次に図5を参照して詳細に説明する。
本実施の形態の自動伴奏生成装置は、主として
(A)ユーザの押鍵操作によって入力された演奏情報(本実施の形態では、音高)およびユーザによって選択された自動伴奏パターンデータに基づいて自動伴奏データを生成する自動伴奏データ生成処理
(B)ユーザの押鍵操作に応じて、上記(A)の自動伴奏データ生成処理を開始あるいは停止させる自動伴奏データ生成開始/停止処理
を行う。
図2は、上記(A)の自動伴奏データ生成処理の制御構成を示すブロック図であり、図3は、自動伴奏パターンデータに含まれる発音パターンデータのフォーマットの一例と、その発音パターンデータとユーザの押鍵操作によって入力された押鍵音の音高に基づいて生成した発音データリストを示す図である。
自動伴奏パターンデータは、たとえば前記外部記憶装置6内に予め複数種類記憶され、その中からユーザがいずれかを選択すると、選択された自動伴奏パターンデータが、外部記憶装置6から読み出されて、前記RAM5の所定位置に確保された自動伴奏パターンデータ格納領域(図示せず)に格納される。図2には、ユーザが自動伴奏パターンデータ群から選択した自動伴奏パターンデータNに基づいて自動伴奏データを生成する様子が示されている。
各自動伴奏パターンデータにはそれぞれ、発音パターンデータが含まれている。発音パターンデータは、図3に示すように、発音タイミング(Timing)、ゲートタイム(Gate)、キーナンバ(Key)、オクターブ(Oct)およびベロシティ(Vel)を1組のデータとする複数組のデータによって構成されている。ここで、発音タイミングは、対応する(つまり、同じ組に属する)キーナンバの押鍵音を発音するタイミングをクロック数で表したものであり、本実施の形態では、1拍分の時間を480クロックで表している。ゲートタイムは、上記発音タイミングで発音が開始された押鍵音の発音継続時間(つまり音長)をクロック数で表したものである。キーナンバは、ユーザが複数の鍵を同時に押したとき(押鍵開始タイミングは、同時でもよいし、ずれていてもよく、要は複数鍵が同時に押されている期間があればよい。以下、同様)に入力される押鍵音に対して、音高の低い順に番号付けしたものである。オクターブは、対応するキーナンバの押鍵音をどれだけオクターブシフトするかを示したものである。ベロシティは、対応するキーナンバの押鍵音を発音する際のベロシティの値を示したものである。
図3には、ユーザの押鍵により3つの音高“C3”,“E3”および“G3”が同時に入力されたときに、発音パターンデータを用いて生成した発音データリストが記載されている。押鍵音“C3”,“E3”および“G3”には、前記ルールに従って、“1”,“2”および“3”のキーナンバが付与されるので、発音データリストの先頭(“0000”)から1拍半分(“0719”まで)のノートナンバ(Note)は、次のように生成される。すなわち、
タイミング“0000”:C4(キーナンバが“1”の押鍵音の音高(“C3”)を“1”オクターブシフトしたもの)
タイミング“0240”:G3(キーナンバが“3”の押鍵音の音高(“G3”)を“0”オクターブシフトしたもの)
タイミング“0480”:E3(キーナンバが“2”の押鍵音の音高(“E3”)を“0”オクターブシフトしたもの)
他の拍の各タイミングのノートナンバも、同様にして生成される。
なお、発音パターンデータは、本実施の形態では、1小節長(図3の例では、4/4拍子)のものを採用しているが、発音データリストの生成は、ユーザによる停止の指示があるまで停止されないので、発音データリストは、1小節を超えて生成される。押鍵音が変更されないまま、発音データリストの生成が1小節を超えたときには、2小節目以降のノートナンバは、1小節目で生成されたノートナンバが繰り返し生成される。ここで、発音パターンデータとしては、どのような長さのものを採用してもよく、上記1小節長に限らないのは言うまでもない。
図4は、前記(B)の自動伴奏データ生成開始/停止処理を説明するための図であり、同図には、説明の都合上、従来の自動伴奏生成装置の自動伴奏データ生成処理による制御例も記載されている。具体的には、図4(a)は、この(B)自動伴奏データ生成開始/停止処理による制御例を示し、図4(b)は、図4(a)の制御例と同様の押鍵操作がなされた場合の、従来の自動伴奏生成装置による制御例を示している。
この(B)自動伴奏データ生成開始/停止処理は、前述のように、(A)自動伴奏データ生成処理を開始あるいは停止させる処理であり、ユーザの押離鍵時に、その押離鍵がどのような状況下での押離鍵であるかを判別し、その判別結果に基づいて、(A)自動伴奏データ生成処理が制御される。つまり、(B)自動伴奏データ生成開始/停止処理は、主として、ユーザの押離鍵時(図4では、時刻t0〜t6の各時点およびその近傍)の処理を規定している。
図4(a)に示すように、自動伴奏データ生成モードに移行し、自動伴奏パターンデータが選択されて、自動伴奏データの生成開始が指示された後、まず時刻t0で、押鍵音“C3”,“E3”および“G3”が入力されると、CPU3は、この押鍵音の音高と上記選択された自動伴奏パターンデータに含まれる発音パターンデータに基づいた自動伴奏データ(発音データリスト)の生成を開始する。次に時刻t1で、押鍵音“C3”,“E3”および“G3”の入力がなくなったとしても、CPU3は、その自動伴奏データの生成を継続させる。
次に時刻t2で、ユーザが新たな押鍵(たとえば“C3”)を行った後、直ぐにその離鍵を行うと、CPU3は、自動伴奏データの生成を停止させる。その後、時刻t3で、ユーザが新たな押鍵(たとえば“C3”,“E3”および“G3”)を行うと、CPU3は、この押鍵音の音高と前記発音パターンデータに基づいた自動伴奏データの生成を再開し、続く時刻t4で、ユーザが押鍵を、たとえば“C3”,“F3”および“A3”の鍵に変更する(つまり、“E3”および“G3”を離鍵し、その後直ぐに“F3”および“A3”を押鍵する)と、CPU3は、この押鍵音の音高を基準とした自動伴奏データの生成に変更し、時刻t5で、押鍵音“C3”,“F3”および“A3”の入力がなくなったとしても、その自動伴奏データの生成を継続させる。そして時刻t6で、ユーザが新たな押鍵(たとえば“C3”)を行った後、直ぐにその離鍵を行うと、CPU3は、自動伴奏データの生成を停止させる。
これに対して、従来の自動伴奏生成装置では、図4(b)に示すように、時刻t2またはt6で、ユーザが新たな押鍵(“C3”)を行った後、直ぐにその離鍵を行った場合、この押鍵音の音高を基準とした自動伴奏データの生成に変更され、自動伴奏データの生成は停止しない。
このように、本実施の形態の自動伴奏生成装置では、ユーザは鍵盤から目を離さずに、鍵盤に対する押離鍵だけで、自動伴奏データ生成の開始/停止を簡単に制御することができる。また、自動伴奏データの生成中に、その自動伴奏データを生成するための押鍵を止めた(離鍵した)としても、自動伴奏データの生成は継続するので、自動伴奏データの生成中に、ユーザの両手を自動伴奏のための操作子操作から開放することができる。その後、新たな押離鍵が検出されたときに、その自動伴奏データの生成を停止し、さらに新たな押鍵が検出されると、自動伴奏データの生成を再開するようにしたので、自動伴奏データ生成の開始/停止をユーザの思い通り制御することができる。
次に、この制御処理を詳細に説明する。
図5は、本実施の形態の自動伴奏生成装置、特にCPU3が実行する自動伴奏データ生成制御処理の手順を示すフローチャートである。なお、本自動伴奏データ生成制御処理は、ユーザが前記自動伴奏データ生成モードを選択したときに起動される。
本自動伴奏データ生成制御処理では、主として、
(1)初期化処理(ステップS1〜S3)
(2)前記(B)自動伴奏データ生成開始/停止処理(ステップS5〜S23)
(3)自動伴奏データ生成制御処理の終了処理(ステップS4)
の各処理がなされる。
上記(1)の初期化処理では、まずCPU3は、前記外部記憶装置6に記憶されている自動伴奏パターンデータ群の一覧を、たとえば前記表示装置7上に表示することでユーザに提示し、ユーザがその中からいずれかの自動伴奏パターンデータを選択すると、選択された自動伴奏パターンデータを外部記憶装置6から前記RAM5の自動伴奏パターンデータ格納領域に読み込む(ステップS1)。次にCPU3は、押鍵音の音高(キーコード)を格納するためにRAM5の所定位置に確保されたキーオンバッファ(図示せず)をクリアし(ステップS2)、さらに、RAM5の所定位置に設けられ、ユーザの押鍵によって自動伴奏データの生成停止が指示されたときにセット(“1”)され、当該押鍵が離鍵されたときにリセット(“0”)されるストップフラグをリセットする(ステップS3)。
前記(2)の自動伴奏データ生成開始/停止処理では、CPU3は、ユーザの押離鍵操作を検出し、その検出時の自動伴奏生成装置の動作状況に基づいて、次のようにして自動伴奏データの開始または停止を制御する。すなわち、
(21)自動伴奏データの生成が停止中に、押鍵操作があった場合:自動伴奏データの生成を開始する
(22)自動伴奏データの生成中に、押鍵鍵のすべてについての離鍵操作があった(押されていた1乃至複数の鍵をほぼ同時に離鍵した)場合:何もしない
(23)自動伴奏データの生成中に、押鍵鍵の一部についての離鍵操作があった場合:変更後のキーオンバッファの内容に従って、自動伴奏データの生成を開始する
(24)自動伴奏データの生成中に、キーオンバッファが空の状態で、押鍵操作があった場合:自動伴奏データの生成を停止する
上記(21)の場合は、前記図4(a)の時刻t0または時刻t3の状態に相当する。このとき、押鍵操作が検出され、自動伴奏データの生成はなされておらず、ストップフラグはリセット(“0”)状態であるので、CPU3は、キーオンバッファに押鍵音の音高を書き込む(ステップS5→S6→S7→S8)とともに、キーオンバッファの内容に基づいて自動伴奏データの生成を開始する(ステップS9)。たとえば、前記ステップS1の処理により、前記図3の発音パターンデータを含む自動伴奏パターンデータが読み込まれ、ユーザの押鍵操作により、“C3”,“E3”および“G3”の音高がキーオンバッファに格納されたとすると、ステップS9では、CPU3は、前記RAM5の所定位置に設けられ、自動伴奏データの生成中にセットされ、自動伴奏データの停止中にリセットされる自動伴奏データ生成中フラグをセットする。実際の自動伴奏データ生成処理、つまり、前記(A)自動伴奏データ生成処理は、本実施の形態では、図示しないタイマ割り込み処理中で行われる。タイマ割り込み処理では、自動伴奏データ生成中フラグの状態を常時チェックし、自動伴奏データ生成中フラグがセット状態のときには、前記図3を用いて説明した(A)自動伴奏データ生成処理を行う一方、自動伴奏データ生成中フラグがリセット状態のときには、何もしない。ただし本実施の形態では、自動伴奏データを生成しているとき、つまり、発音データリストを生成しているときには、生成したノートナンバの発音データリストへの登録だけでなく、そのノートナンバに対応するキーオンイベントも同時に生成して音源回路9に供給することで、そのノートナンバに対応する楽音を発生させるようにしている。なお、キーオンイベントの生成処理と、生成したキーオンイベントの音源回路9への供給処理は、タイマ割り込み処理内の自動伴奏データ生成処理の直後に行うようにすればよい。この場合、自動伴奏データの生成が停止されると、発音中の楽音を消音する処理が必要である。たとえば、タイマ割り込み処理に、自動伴奏データ生成中フラグがセット状態からリセット状態に変化した時点を検知する処理を追加しておき、この変化時点が検知されたときに、上記消音処理を行うようにすればよい。ここで、消音処理は、具体的には、現在発音中の楽音に対するキーオフイベントを生成して音源回路9に供給する処理である。
前記(22)の場合は、前記図4(a)の時刻t1または時刻t5の状態に相当する。このとき、離鍵操作が検出され、自動伴奏データの生成中であるので、CPU3は、キーオンバッファから離鍵音の音高を削除する(ステップS16→S17→S18)。ここで、離鍵は、押鍵音のすべてに対してなされているので、CPU3は結局、キーオンバッファを空にする。このように、キーオンバッファは空になるので、CPU3は、処理をステップS19からステップS4に戻す。つまり、CPU3は、自動伴奏データの生成に関する実質的な制御(本実施の形態では、前記自動伴奏データ生成中フラグのリセット)を行わないので、自動伴奏データの生成は、タイマ割り込み処理中の(A)自動伴奏データ生成処理によって継続することになる。
前記(23)の場合は、前記図4(a)の時刻t4の状態の一部に相当する。このとき、まず離鍵操作が検出され、自動伴奏データの生成中であるので、CPU3は、キーオンバッファから離鍵音の音高を削除する(ステップS16→S17→S18)。ここで、離鍵は、押鍵音の一部に対してなされているので、CPU3は、キーオンバッファの変更された内容に基づいて自動伴奏データの生成を続ける(ステップS20)。ここまでの処理が、前記(23)の場合に対応する処理である。時刻t4の状態は、“C3”,“E3”および“G3”の3つの押鍵音のうち、後の2つの音が離鍵された後、新たに“F3”および“A3”の2つの音が押鍵された状態を示しているので、時刻t4の状態の制御を行おうとすると、CPU3は、(23)の場合に対応する上記処理に加えて、次の処理を行う。すなわちCPU3は、処理をステップS20→S4→S5→S6→S10→S11と進め、キーオンバッファに新たな押鍵音の音高“F3”および“A3”を追加書き込みし(ステップS11)、その後、キーオンバッファの変更された内容に基づいて自動伴奏データの生成を続ける(ステップS12)。この時刻t4の状態の場合、後の2つの音の離鍵から押鍵までの時間が短いので、ステップS20の処理が実行される間もなく、処理はステップS12に至る。つまり、“C3”だけ格納されたキーオンバッファに基づいた自動伴奏データの生成は行われず、“C3”,“E3”および“G3”が格納されたキーオンバッファに基づいた自動伴奏データの生成から直ちに、“C3”,“F3”および“A3”が格納されたキーオンバッファに基づいた自動伴奏データの生成に移行する。
前記(24)の場合は、前記図4(a)の時刻t2または時刻t6の状態に相当する。このとき、まず押鍵操作が検出され、自動伴奏データの生成中であり、キーオンバッファは空であるので、CPU3は、前記自動伴奏データ生成中フラグをリセットすることで、自動伴奏データの生成を停止し(ステップS5→S6→S10→S13)、キーオンバッファに押鍵音の音高(図4(a)では“C3”)を書き込み(ステップS14)、ストップフラグをセット(“1”)する(ステップS15)。次に離鍵操作が検出され、自動伴奏データの生成は停止中であり、ストップフラグはセット状態であるので、CPU3は、キーオンバッファから離鍵音の音高(図4(a)では“C3”)を削除し(ステップS16→S17→S21→S22)、ストップフラグをリセットする(ステップS23)。時刻t2および時刻t6での押離鍵操作は、1つの鍵を用いてなされているが、複数の鍵を用いて、そのすべてを同時に押離鍵せずに、たとえば、そのうちの一部を押鍵しながら、残りを押鍵した後、一部を押鍵しながら、残りを離鍵し、その後その一部を離鍵するという押離鍵操作でもよい。この場合、最初に一部を押鍵したときに、自動伴奏データの生成が停止する(ステップS13)。そして、キーオンバッファには押鍵音の音高が書き込まれる(ステップS14)ものの、ストップフラグがセットされる(ステップS15)ので、残りが押鍵されたとしても、ステップS7の判別処理で、ステップS8およびS9の処理はスキップされて、ステップS16に処理が進む。つまり、キーオンバッファの内容は書き換わらず、停止中の自動伴奏データの生成も再開されない。その後、キーオンバッファに格納された音高に対する離鍵がなされると、CPU3は、キーオンバッファを空にし(ステップS22)、ストップフラグをリセットする(ステップS23)。このように、複数の鍵を用いて、そのすべてを同時に押離鍵しない場合にも、本自動伴奏データ生成制御処理は対処することができる。
なお、前記ステップS6およびS17の判別処理、つまり、自動伴奏データが生成中かどうかの判別処理は、発音データリストを生成中かどうか、あるいは発音データリストに登録されたノートナンバに対応するキーオンイベントを生成して音源回路9に供給中かどうかなど、自動伴奏データの生成を直接的に判別するようにしてもよいし、自動伴奏データ生成中フラグの状態をチェックすることで、自動伴奏データの生成を間接的に判別するようにしてもよい。
前記(3)の自動伴奏データ生成制御処理の終了処理では、CPU3は、ユーザが終了操作(たとえば、図示しないモードスイッチを操作することで、自動伴奏データ生成モードを他のモードに変更する操作)を行ったかどうかを常時チェックし(ステップS4)、ユーザが終了操作を行うと、CPU3は、本自動伴奏データ生成制御処理を終了する(ステップS4→終了)。
なお、本実施の形態では、自動伴奏パターンデータとして、アルペジオパターンデータを例に挙げたので、それを用いて生成される自動伴奏データは、実際にはアルペジオデータであり、前記従来の自動伴奏装置が生成する種類の自動伴奏データではない。このようにしたのは、専ら説明を簡単化するためであり、本発明は、アルペジオデータの生成と同様に、前記従来の自動伴奏装置が生成する種類の自動伴奏データの生成にも適用できる。
また、本実施の形態では、(A)自動伴奏データ生成処理をタイマ割り込み処理中で行うようにしたが、これに限らず、図5の自動伴奏データ生成制御処理中で行うようにしてもよい。
さらに、本実施の形態では、図5の自動伴奏データ生成制御処理を実行することにより、ユーザの意思に拘わらず、図4(a)のような制御処理を実行するようにしたが、これに限らず、図4(a)のような制御処理と図4(b)のような従来の制御処理とをユーザが自由に選択できるようにし、ユーザが選択した方の制御処理を実行するようにしてもよい。
また、本実施の形態では、鍵盤のいずれの鍵の押離鍵操作でも、本自動伴奏データ生成制御処理に適用できるが、鍵盤を複数の鍵領域に分割し、分割後の複数の鍵域の一部の鍵域内の鍵についての押鍵操作のみに、その適用を制限するようにしてもよい。
さらに、自動伴奏データの生成を停止させるための鍵を、鍵盤中の所定の鍵(たとえば、鍵盤の最端部の鍵)に固定的に決めておいてもよい。この場合、その所定鍵が押鍵されると、生成中の自動伴奏データの生成が停止される。その後の自動伴奏データの生成再開は、停止直前の押鍵音の音高に基づいて生成した自動伴奏データで始まるようにしてもよいし、再開のトリガとなった押鍵音の音高に基づいて生成した自動伴奏データで始まるようにしてもよい。なお、上記所定鍵は、工場設定などによって、その位置が予め設定されたものを、その後ユーザが自由に変更できるように構成した方が好ましい。
また、本実施の形態では、自動伴奏データの生成を停止させるための押鍵音の音高を、自動伴奏データの基になる押鍵音の音高に近いもの(前者の音高が“C3”であるのに対して、後者の音高が“C3”,“E3”および“G3”)としたが、これに限らず、自動伴奏データの生成を停止させるための押鍵音として、自動伴奏データの基になる押鍵音と無関係な音高のものを用いてもよい。
また、本実施の形態では、自動伴奏パターンデータは、外部記憶装置6に予め複数種類記憶されているとしたが、これに限らず、前記ROM4に予め複数種類記憶されていてもよいし、ネットワーク上にあるものを、前記通信I/F8を介して取得するようにしてもよい。
なお、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記憶媒体から読出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、たとえば、フレキシブルディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。また、通信ネットワークを介してサーバコンピュータからプログラムコードが供給されるようにしてもよい。
また、コンピュータが読出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOSなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
本発明の一実施の形態に係る自動伴奏生成装置の概略構成を示すブロック図である。 自動伴奏データ生成処理の制御構成を示すブロック図である。 自動伴奏パターンデータに含まれる発音パターンデータのフォーマットの一例と、その発音パターンデータとユーザの押鍵操作によって入力された押鍵音の音高に基づいて生成した発音データリストを示す図である。 自動伴奏データ生成開始/停止処理を説明するための図である。 図1の自動伴奏生成装置、特にCPUが実行する自動伴奏データ生成制御処理の手順を示すフローチャートである。
符号の説明
1…操作子群(入力手段),3…CPU(供給手段、生成手段、書込手段、削除手段、決定手段、制御手段),4…ROM(供給手段),5…RAM(記憶手段),6…外部記憶装置(供給手段),8…通信I/F(供給手段)

Claims (3)

  1. 自動伴奏パターンデータを供給する供給手段と、
    ユーザの演奏操作に応じて演奏情報を入力する入力手段と、
    該入力手段によって入力された演奏情報および前記供給手段によって供給された自動伴奏パターンデータに基づいて、自動伴奏データを生成する生成手段と、
    演奏情報を記憶する記憶手段と、
    前記入力手段によって演奏情報が入力されたときに、前記自動伴奏データが生成中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第1の書込条件、または前記自動伴奏データの生成が停止中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第2の書込条件のいずれかが成立している場合には、当該入力された演奏情報を前記記憶手段に書き込む書込手段と、
    前記入力手段による演奏情報の入力が停止されたときに、当該入力の停止された演奏情報が前記記憶手段に記憶されている場合には、当該入力の停止された演奏情報を前記記憶手段から削除する削除手段と、
    前記第1の書込条件が成立している場合に、前記書込手段により新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの生成を停止すると決定する一方、前記第2の書込条件が成立している場合に、前記書込手段により新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの生成を開始すると決定する決定手段と、
    該決定手段によって、前記自動伴奏データの生成を開始すると決定されたときには、当該自動伴奏データの生成を開始させるように前記生成手段を制御する一方、前記自動伴奏データの生成を停止すると決定されたときには、当該自動伴奏データの生成を停止させるように前記生成手段を制御する制御手段と
    を有することを特徴とする自動伴奏生成装置。
  2. 自動伴奏パターンデータを供給する供給手段と、
    ユーザの演奏操作に応じて演奏情報を入力する入力手段と、
    該入力手段によって入力された演奏情報および前記供給手段によって供給された自動伴奏パターンデータに基づいて、自動伴奏データを出力する出力手段と、
    演奏情報を記憶する記憶手段と、
    前記入力手段によって演奏情報が入力されたときに、前記自動伴奏データが出力中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第1の書込条件、または前記自動伴奏データの出力が停止中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第2の書込条件のいずれかが成立している場合には、当該入力された演奏情報を前記記憶手段に書き込む書込手段と、
    前記入力手段による演奏情報の入力が停止されたときに、当該入力の停止された演奏情報が前記記憶手段に記憶されている場合には、当該入力の停止された演奏情報を前記記憶手段から削除する削除手段と、
    前記第1の書込条件が成立している場合に、前記書込手段により新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの出力を停止すると決定する一方、前記第2の書込条件が成立している場合に、前記書込手段により新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの出力を開始すると決定する決定手段と、
    該決定手段によって、前記自動伴奏データの出力を開始すると決定されたときには、当該自動伴奏データの出力を開始させるように前記出力手段を制御する一方、前記自動伴奏データの出力を停止すると決定されたときには、当該自動伴奏データの出力を停止させるように前記出力手段を制御する制御手段と
    を有することを特徴とする自動伴奏発生装置。
  3. 自動伴奏パターンデータを供給する供給モジュールと、
    ユーザの演奏操作に応じて演奏情報を入力する入力手段によって入力された演奏情報および前記供給モジュールによって供給された自動伴奏パターンデータに基づいて、自動伴奏データを生成する生成モジュールと、
    前記入力手段によって演奏情報が入力されたときに、前記自動伴奏データが生成中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第1の書込条件、または前記自動伴奏データの生成が停止中であり、かつ前記記憶手段内に演奏情報が1つも記憶されていない状態であるという第2の書込条件のいずれかが成立している場合には、当該入力された演奏情報を記憶手段に書き込む書込モジュールと、
    前記入力手段による演奏情報の入力が停止されたときに、当該入力の停止された演奏情報が前記記憶手段に記憶されている場合には、当該入力の停止された演奏情報を前記記憶手段から削除する削除モジュールと、
    前記第1の書込条件が成立している場合に、前記書込モジュールにより新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの生成を停止すると決定する一方、前記第2の書込条件が成立している場合に、前記書込モジュールにより新たな演奏情報が前記記憶手段に書き込まれると、当該自動伴奏データの生成を開始すると決定する決定モジュールと、
    該決定モジュールによって、前記自動伴奏データの生成を開始すると決定されたときには、当該自動伴奏データの生成を開始させるように前記生成モジュールを制御する一方、前記自動伴奏データの生成を停止すると決定されたときには、当該自動伴奏データの生成を停止させるように前記生成モジュールを制御する制御モジュールと
    をコンピュータに実行させるためのプログラム
JP2006309049A 2006-11-15 2006-11-15 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム Expired - Fee Related JP4873307B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006309049A JP4873307B2 (ja) 2006-11-15 2006-11-15 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006309049A JP4873307B2 (ja) 2006-11-15 2006-11-15 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム

Publications (2)

Publication Number Publication Date
JP2008122841A JP2008122841A (ja) 2008-05-29
JP4873307B2 true JP4873307B2 (ja) 2012-02-08

Family

ID=39507628

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006309049A Expired - Fee Related JP4873307B2 (ja) 2006-11-15 2006-11-15 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム

Country Status (1)

Country Link
JP (1) JP4873307B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5246816A (en) * 1975-10-13 1977-04-14 Konishiroku Photo Ind Co Ltd Method for adding photographic additive
JPS56147186A (en) * 1980-04-17 1981-11-14 Nippon Musical Instruments Mfg Automatic accompaning device for electronic music instrument
JPS60146295A (ja) * 1984-01-10 1985-08-01 ブラザー工業株式会社 電子楽器
JPH0580767A (ja) * 1991-09-20 1993-04-02 Kawai Musical Instr Mfg Co Ltd 電子楽器のスタート/ストツプ制御装置

Also Published As

Publication number Publication date
JP2008122841A (ja) 2008-05-29

Similar Documents

Publication Publication Date Title
JP5228315B2 (ja) 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム
JP4379291B2 (ja) 電子音楽装置及びプログラム
JP2007322683A (ja) 楽音制御装置およびプログラム
JP4501590B2 (ja) 音楽情報表示装置および音楽情報表示方法を実現するためのプログラム
JP4873307B2 (ja) 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム
JP3546739B2 (ja) 自動演奏装置と記録媒体
JP4501417B2 (ja) 楽譜表示装置および楽譜表示方法を実現するためのプログラム
JP3649014B2 (ja) 演奏データファイルの再生設定制御装置
JP5200368B2 (ja) アルペジオ生成装置およびアルペジオ生成方法を実現するためのプログラム
JP3885791B2 (ja) 自動伴奏装置および自動伴奏方法を実現するためのプログラム
JP4214845B2 (ja) 自動アルペジオ装置および同装置に適用されるコンピュータプログラム
JP4172335B2 (ja) 自動伴奏生成装置及びプログラム
JP4648177B2 (ja) 電子楽器及びコンピュータプログラム
JP5402167B2 (ja) アルペジオ生成装置およびアルペジオ生成方法を実現するためのプログラム
JP3903864B2 (ja) 自動作曲装置および自動作曲方法を実現するためのプログラム
JP5076979B2 (ja) 演奏データ作成装置および演奏データ作成方法を実現するためのプログラム
JP4148184B2 (ja) 自動伴奏データ生成方法を実現するためのプログラムおよび自動伴奏データ生成装置
JP2000172267A (ja) 演奏補助装置及びそのための記録媒体
JP3692811B2 (ja) 自動演奏装置及び方法
JP3399333B2 (ja) 楽音制御装置
JP4075756B2 (ja) 自動伴奏装置および自動伴奏方法を実現するためのプログラム
JP2005284076A (ja) 電子楽器
JP4159439B2 (ja) 電子楽器、楽音発生方法及びコンピュータプログラム
JP5200384B2 (ja) 電子楽器及びプログラム
JP4835433B2 (ja) 演奏パターン再生装置及びそのコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090918

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110621

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110812

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110913

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111005

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111028

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111110

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141202

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4873307

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees