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

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

Info

Publication number
JP5228315B2
JP5228315B2 JP2006324171A JP2006324171A JP5228315B2 JP 5228315 B2 JP5228315 B2 JP 5228315B2 JP 2006324171 A JP2006324171 A JP 2006324171A JP 2006324171 A JP2006324171 A JP 2006324171A JP 5228315 B2 JP5228315 B2 JP 5228315B2
Authority
JP
Japan
Prior art keywords
arpeggio
data
pattern 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
JP2006324171A
Other languages
English (en)
Other versions
JP2008139450A (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 JP2006324171A priority Critical patent/JP5228315B2/ja
Priority to US11/946,200 priority patent/US7915513B2/en
Publication of JP2008139450A publication Critical patent/JP2008139450A/ja
Application granted granted Critical
Publication of JP5228315B2 publication Critical patent/JP5228315B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/18Selecting circuits
    • G10H1/26Selecting circuits for automatically producing a series of tones
    • G10H1/28Selecting circuits for automatically producing a series of tones to produce arpeggios

Description

本発明は、供給された自動伴奏パターンデータおよび入力された音符情報に基づいて自動伴奏データを生成する自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラムに関する。
供給された自動伴奏パターンデータおよび入力された音符情報に基づいて自動伴奏データを生成する自動伴奏生成装置は、従来から知られている。
このような自動伴奏生成装置に含まれる一装置として、押鍵に応じてアルペジオ(分散和音)を生成する、いわゆるアルペジエータと呼ばれるものがある。アルペジエータは、複数のキー番号(音高に対応したノートナンバではなく、単純な番号)とその発音タイミングからなるアルペジオパターンデータを記憶し、同時に押鍵されて入力された複数の音の各音高に、所定のルール(たとえば、音高の低い順)に従って番号を割り振り、アルペジオパターンデータ中のキー番号に対応した番号が割り振られた音高を、その発音タイミングで発生させるようにして、押鍵音を基にアルペジオを生成している。このように、アルペジエータは、ユーザによる押鍵があると、その押鍵音およびアルペジオパターンデータに応じて、順次発音データを生成して出力し、アルペジオパターンデータの最後のデータに対応する発音データが生成されて出力されると、再びアルペジオパターンデータの先頭のデータに戻って、そのデータに対応する発音データの生成および出力を繰り返す。これにより、ユーザの押鍵が続く限り、その押鍵音およびアルペジオパターンデータに応じた発音データの生成および出力が継続する。なお、アルペジエータには、パターン内の一部に固定音高を指定するタイプ(フィックスド・ノート)のアルペジオパターンデータを用いてアルペジオを生成するものもある(たとえば、特許文献1参照)。
特開2001−22354号公報
ところで、上記従来のアルペジエータは、押鍵によって複数の音、たとえば和音が入力されると、入力された和音を発音するとともに、その和音に基づいてアルペジオを生成して発音する。そして、アルペジオの生成および発音は、上述のように押鍵が続く限り続くので、押鍵が続いている間、その和音も継続して発音するようにした場合には、押鍵が続いている間、常に和音にアルペジオが重なって発音される。したがって上記従来のアルペジエータでは、ユーザが和音の発音を継続させながら、そのアルペジオを装飾的に(具体的には、アルペジオの発音回数を制限して)付加した音作りをしようとしても、和音の押鍵が続いている間、常にその和音にアルペジオが重なって発音される(つまり、アルペジオの発音回数を制限できない)ので、このユーザの要求に応えることはできなかった。
また、ユーザは、アルペジオパターンデータを、たとえば1回使って、押鍵に応じたアルペジオを1回だけ生成したいことがある。これを上記従来のアルペジエータによって実現しようとすると、ユーザは、使用するアルペジオパターンデータの全体の長さを正確に把握し、このアルペジオパターンデータが1回だけ使われるように、和音の押鍵時間を正確に調整する必要があった。つまり、ユーザが和音の押鍵時間をうまく調整できなかった場合には、アルペジオパターンデータの使用が1回で終わらずに、2回目の途中で終わり、アルペジオの生成が不自然な状態で切れてしまうことがあった。
本発明は、この点に着目してなされたものであり、ユーザの意図通りに自動伴奏を生成することが可能となる自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラムを提供することを目的とする。
上記目的を達成するため、請求項1に記載の自動伴奏生成装置は、アルペジオパターンデータを供給する供給手段と、音高情報を含む音符情報を1つ以上入力する入力手段と、該入力手段によって入力された音符情報および前記供給手段によって供給されたアルペジオパターンデータに基づいて、アルペジオ発音データを生成する生成手段と、該生成手段がアルペジオ発音データを生成するときに、前記供給されたアルペジオパターンデータを繰り返して使用する回数を示す回数情報を取得する取得手段と、前記入力手段によって音符情報が入力されたことに応じて、当該入力された音符情報に基づいて楽音を発生させ、その楽音に重ねて、前記生成手段によって生成されたアルペジオ発音データに基づいてアルペジオを発生させる発音手段とを有し、前記生成手段は、前記取得手段によって取得された回数情報が示す回数、前記供給されたアルペジオパターンデータを繰り返し使用することにより、当該アルペジオパターンデータおよび前記入力された音符情報に基づいてアルペジオ発音データを生成し、前記発音手段は、前記回数情報が示す回数、前記アルペジオパターンデータを繰り返し使用して生成されたアルペジオ発音データに基づくアルペジオの発生を終了したときに、前記音符情報の入力が続いている場合には、当該入力中の音符情報に基づいた楽音の発生を継続させることを特徴とする。
上記目的を達成するため、請求項3に記載の自動伴奏発生装置は、アルペジオパターンデータを供給する供給手段と、音高情報を含む音符情報を1つ以上入力する入力手段と、該入力手段によって入力された音符情報および前記供給手段によって供給されたアルペジオパターンデータに基づいて、アルペジオ発音データを出力する出力手段と、該出力手段がアルペジオ発音データを出力するときに、前記供給されたアルペジオパターンデータを繰り返して使用する回数を示す回数情報を取得する取得手段と、前記入力手段によって音符情報が入力されたことに応じて、当該入力された音符情報に基づいて楽音を発生させ、その楽音に重ねて、前記出力手段によって出力されたアルペジオ発音データに基づいてアルペジオを発生させる発音手段とを有し、前記出力手段は、前記取得手段によって取得された回数情報が示す回数、前記供給されたアルペジオパターンデータを繰り返し使用することにより、当該アルペジオパターンデータおよび前記入力された音符情報に基づいてアルペジオ発音データを出力し、前記発音手段は、前記回数情報が示す回数、前記アルペジオパターンデータを繰り返し使用して出力されたアルペジオ発音データに基づくアルペジオの発生を終了したときに、前記音符情報の入力が続いている場合には、当該入力中の音符情報に基づいた楽音の発生を継続させることを特徴とする。
上記目的を達成するため、請求項2に記載のプログラムは、請求項1と同様の技術的思想によって実現できる。
請求項1または2に記載の発明によれば、音高情報を含む音符情報を1つ以上入力する入力手段によって入力された音符情報および供給されたアルペジオパターンデータに基づいて、アルペジオ発音データを生成するときに、取得された回数情報が示す回数、前記供給されたアルペジオパターンデータを繰り返し使用することにより、アルペジオ発音データが生成されるので、つまり、アルペジオパターンデータの使用回数をユーザの意図通りに制限して、アルペジオ発音データが生成されるので、ユーザの意図通りにアルペジオを生成することが可能となる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
図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および図6を参照して詳細に説明する。
本実施の形態のアルペジエータは、主として
(A)ユーザの押鍵操作によって入力された演奏情報(本実施の形態では、音高)およびユーザによって選択されたアルペジオパターンデータに基づいて発音データリストを生成する発音データリスト生成処理
(B)上記(A)の発音データリスト生成処理によって生成された発音データリストを再生する発音データリスト再生処理
(C)ユーザの押鍵/離鍵操作に応じてノートオン/ノートオフイベントを生成して前記音源回路9に出力することで、押鍵音の発音/離鍵音の消音を行う発音/消音処理
を行う。
図2は、本実施の形態のアルペジエータが実行する制御処理、すなわち上記(A)〜(C)の処理の制御構成を示すブロック図であり、図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小節を超えて生成される。したがって、押鍵音が変更されないまま、発音データリストが1小節を超えて生成されたときには、2小節目以降のノートナンバは、1小節目で生成されたノートナンバが繰り返し生成される。ここで、発音パターンデータとしては、どのような長さのものを採用してもよく、上記1小節長に限らないことは言うまでもない。
図2に戻り、ユーザの指示に応じてアルペジオ発音データ生成モードに移行し、ユーザが、アルペジオパターンデータを選択するとともにループ回数を設定し(ブロック1b)、アルペジオ発音データの生成開始を指示した後、押鍵操作によって、少なくとも1つ以上の押鍵音を入力する(ブロック1a)と、入力された押鍵音(少なくともキーコードおよびベロシティを含む)は、前記RAM5の所定位置に確保されたキーオンバッファ(図示せず)に格納される。前記CPU3は、キーオンバッファの状態を常にチェックし、キーオンバッファに押鍵音が格納されると、その押鍵音に対応するノートオンイベントを生成して、前記音源回路9に出力する。これに応じて、音源回路9は、入力されたノートオンイベントに対応する楽音信号を生成して、前記効果回路10に出力する。これにより、サウンドシステム11から押鍵音が発音される。
次にCPU3は、前述のようにして、選択されたアルペジオパターンデータおよびキーオンバッファに格納された押鍵音の音高(キーコード)に基づいて発音データリストを生成する(ブロック3a)。ここで、アルペジオパターンデータは、発音データリストを生成する際に、上記設定されたループ回数に応じた回数使用される。本実施の形態では、ループ回数として、自然数(1,2,…)と「指定なし」を設定することができるように構成されている。ループ回数として、たとえば“2”が設定された場合には、CPU3は、アルペジオパターンデータを2回繰り返し使って、押鍵音から発音データリストを生成する。また、ループ回数として、たとえば「指定なし」が設定された場合には、CPU3は、押鍵音の入力が離鍵によってなくなるまで、アルペジオパターンデータを繰り返し使って、押鍵音から発音データリストを生成する。
このようにして生成された(あるいは生成中の)発音データリストは、図示しないタイマ割り込み処理内に埋め込まれた前記(B)の発音データリスト再生処理によって再生される。この(B)発音データリスト再生処理は、具体的には、次のようにして実現される。すなわち、タイマ割り込み処理は、たとえば前記クロックの1周期毎に起動されるとして、
(i)RAM5の所定位置に設けたフリーランカウンタ(図示せず)を、タイマ割り込み処理が起動される度にカウントアップする
(ii)フリーランカウンタのカウント値と発音データリスト中の発音タイミングとを比較し、その結果、両者が一致すると、発音データリストから、その発音タイミングのノートナンバおよびベロシティを読み出し、このノートナンバおよびベロシティを含むノートオンイベントを生成して、音源回路9へ出力する
(iii)上記(ii)でノートオンイベントを生成した場合、フリーランカウンタが、その生成時点を起点として現時点までカウントした値を検出し、その検出値と、生成したノートオンイベントに対応するゲートタイムとを比較し、その結果、両者が一致すると、生成したノートオンイベントに対応するノートオフイベントを生成して、音源回路9に出力する。
なお、フリーランカウンタは、押鍵が開始されたタイミングなどの所定のタイミングでリセットする必要があることは言うまでもない。そして、リセットは、通常、フリーランカウンタの値を“0”に設定することによって行うが、本実施の形態では、フリーランカウンタの値を“−1”に設定することによって行う。これは、本実施の形態では上述のように、フリーランカウンタがカウントアップされてから、そのカウント値と発音タイミングとが比較されるため、フリーランカウンタを“0”でリセットすると、発音タイミングが“0000”の位置にあるイベントを検出できないからである。
図4は、本実施の形態のアルペジエータが実行する制御処理を説明するための図であり、同図(a)は、ループ回数として“1”が設定されたときの制御処理の一例を示し、同図(b)は、ループ回数として「指定なし」が設定されたときの制御処理の一例を示している。
図4(a)に示すように、ユーザの指示に応じてアルペジオ発音データ生成モードに移行し、ユーザが、アルペジオパターンデータを選択するとともにループ回数を“1”に設定し、アルペジオ発音データの生成開始を指示した後、押鍵操作によって、時刻t0で、押鍵音“C3”,“E3”および“G3”が入力されると、CPU3は、この押鍵音に対応するノートオンイベントを生成して音源回路9に出力することで、この押鍵音の発音を開始するとともに、この押鍵音の音高と上記選択されたアルペジオパターンデータに含まれる発音パターンデータに基づいたアルペジオ発音データ(発音データリスト)の生成を開始する。生成された発音データリストは、前述のように、タイマ割り込み処理内の(B)発音データリスト再生処理によって再生される。図示例では、生成された発音データリストの長さは1小節長であるので、ユーザの押鍵が1小節長より長く続くときには、発音データリストの再生は1小節長で終了し、それ以降は押鍵音のみが発音される。そして時刻t1で、ユーザの離鍵操作によって、押鍵音“C3”,“E3”および“G3”の入力がなくなると、CPU3は、この押鍵音に対応するノートオフイベントを生成して音源回路9に出力することで、この押鍵音の発音を消音させる。
一方、図4(a)の場合に対して、ループ回数の設定のみを「指定なし」に変更した場合が、図4(b)である。図4(b)の場合には、発音データリストの再生は、ユーザの押鍵から開始され、ユーザの離鍵まで継続する。これは、前記従来のアルペジエータが行う処理と同様である。つまり、本実施の形態のアルペジエータは、従来のアルペジエータで行うことができない処理(図4(a)の処理)と従来のアルペジエータで行うことができる処理(図4(b)の処理)とを、ユーザの意向に応じて選択して行うことができるように構成されている。
このように、本実施の形態のアルペジエータでは、ユーザが、和音の発音を継続させながら、そのアルペジオを装飾的に(具体的には、アルペジオの発音回数を制限して)付加した音作りをしようとしたときに、ループ回数を設定することで、アルペジオの発音回数を設定できるので、和音の押鍵が続いたとしても、その和音に、設定された回数だけアルペジオを重ねて発音させることができる。つまり、本実施の形態のアルペジエータでは、和音の発音継続時間の一部のみに、アルペジオを重ねて発音できるので、上記ユーザの要求、すなわち和音の発音を継続させながら、そのアルペジオを装飾的に付加した音作りをしたいという要求に応えることができ、これにより、ユーザのイメージに合った、アルペジオを使った演奏または音作りを行うことができる。
また、本実施の形態のアルペジエータでは、アルペジオの発音回数を、たとえば“1”に設定しておけば、和音の押鍵時間が、アルペジオの発音に使用するアルペジオパターンデータの長さ(厳密には、このアルペジオパターンデータを使用して生成された発音データリストの再生時間)より長くなったとしても、アルペジオパターンデータは1回のみ使用されて、アルペジオは1回発音されるだけなので、ユーザは、押鍵和音に対する離鍵を、アルペジオパターンデータの長さを考慮せずに行うことができ、これにより、ユーザは自分の演奏に集中することができる。
次に、この制御処理を詳細に説明する。
図5および図6は、本実施の形態のアルペジエータ、特にCPU3が実行する制御処理および発音データリスト生成処理の各手順をそれぞれ示すフローチャートである。なお、本制御処理は、ユーザが前記アルペジオ発音データ生成モードを選択したときに起動される。また、本発音データリスト生成処理は、前記クロックの1周期毎に起動されるタイマ割り込み処理内に埋め込まれた処理である。
本制御処理では、主として、
(1)初期設定処理(ステップS1,S2)
(2)前記(C)の発音/消音処理(ステップS3,S4,S9,S10)
(3)アルペジオ生成のスタート/ストップ処理(ステップS5〜S8,S11,S12)
の各処理がなされる。
上記(1)の初期化処理では、まずCPU3は、前記外部記憶装置6に記憶されているアルペジオパターンデータ群の一覧を、たとえば前記表示装置7上に表示することでユーザに提示し、ユーザがその中からいずれかのアルペジオパターンデータを選択すると、選択されたアルペジオパターンデータを外部記憶装置6から前記アルペジオパターンデータ格納領域に読み込む(ステップS1)。次にCPU3は、ループ回数として設定可能な候補の一覧を表示装置7上に表示することでユーザに提示し、ユーザがその中からいずれかを選択すると、選択された回数あるいは「指定なし」が、RAM5の所定位置に確保されたループ回数格納領域(図示せず)に格納される(ステップS2)。ここで、ユーザがループ回数を選択しなかったときには、デフォルト値である「指定なし」がループ回数格納領域に格納される。
前記(2)の発音/消音処理では、まずCPU3は、ユーザの押鍵操作に応じて前記検出回路2から出力された演奏情報(押鍵音)を取得し、前記キーオンバッファに格納する(ステップS3)。次にCPU3は、キーオンバッファに格納された押鍵情報に基づいてノートオンイベントを生成し、音源回路9に出力する(ステップS4)。なお、ユーザの押鍵操作は、必ずしも複数の鍵に対するもののみである必要はなく、1つの鍵に対するものでもよい。そして、CPU3は、ユーザの離鍵操作に応じて検出回路2から出力された離鍵情報(離鍵音)を取得すると、その取得された離鍵情報に基づいてノートオフイベントを生成し、音源回路9に出力する(ステップS9→S10)。これにより、図4に示したように、ユーザの押鍵から離鍵に至るまで、その押鍵音が継続して発音される。
前記(3)のアルペジオ生成のスタート/ストップ処理では、CPU3は、前記ステップS3で検出された押鍵がニューキーオン(何も押鍵されていない状態から最初の押鍵がなされること)であるか否かを判別し(ステップS5),ニューキーオンであれば、ループ回数をカウントするためにRAM5の所定位置に設けられたループカウンタ(図示せず)をリセット(“0”)するとともに、前記選択されたアルペジオパターンデータ内の発音パターンデータから読み出すべき1組のデータの位置を示すためにRAM5の所定位置に設けられた読み出しポインタ(図示せず)をリセット(“0”)し(ステップS6)、発音データリストを初期化(クリア)する(ステップS7)。なお、発音データリストも、RAM5の所定位置に確保された領域上に形成される。そして、アルペジオ生成をスタートさせて、アルペジオを動作状態とする(ステップS8)。
一方、アルペジオ動作中に、前記ステップS9で検出された離鍵がオールキーオフ(押鍵されていた状態からすべての鍵が離鍵された状態になること)であれば、アルペジオ生成をストップさせて、アルペジオを非動作状態とする(ステップS11→S12)。このとき、CPU3は、発音データリスト内で、ユーザの離鍵タイミング以降に消音される発音データについて、必要があればその消音タイミングを調整する。ここで、消音タイミングを調整する必要がある場合とは、たとえば、設定されたループ回数分、アルペジオパターンデータが使われずに離鍵操作がされた場合である。この場合には、離鍵操作が検出された後、最初に到来する切りのよい位置(小節や拍の終了位置やパターンの末尾など)までアルペジオ生成を続けた方が望ましい。もちろん、これに限らず、消音タイミングの調整を行わずに、離鍵操作が検出された時点で、アルペジオ生成も即座に停止するようにしてもよいし、設定されたループ回数だけ、アルペジオ生成を続けるようにしてもよい。
前記図6の発音データリスト生成処理(前記(A)の発音データリスト生成処理に相当する)では、CPU3は、アルペジオが動作している間、選択されたアルペジオパターンデータ内の発音パターンデータから、読み出しポインタが示す位置の1組のデータを読み出し(ステップS21→S22)、読み出した1組のデータと押鍵音の音高に基づいて、前述した方法により発音データを生成し、発音データリストに書き込んだ(ステップS23)後、読み出しポインタの値を“1”だけ進める(ステップS24)。そして、読み出した1組のデータが発音パターンデータの末尾のデータでないときには、本発音データリスト生成処理を終了する(ステップS25→終了)一方、読み出した1組のデータが発音パターンデータの末尾のデータであるときには、ループカウンタを“1”だけカウントアップするとともに、読み出しポインタをリセットした(ステップS25→S26)後、ループ回数として自然数が設定された場合には、ループカウンタのカウント値が設定された自然数より小さい限り、あるいはループ回数として「指定なし」が設定された場合には無条件で、アルペジオ生成をストップせずに、本発音データリスト生成処理を終了する(ステップS27→終了)。一方、ループカウンタのカウント値が設定されたループ回数と等しいときには、アルペジオ生成をストップさせた(ステップS27→S28)後、本発音データリスト生成処理を終了する。
このようにして生成された発音データリストを再生して、アルペジオを発音させる処理については、既に説明したので、繰り返さない。
なお、本実施の形態は、本発明の自動伴奏生成装置をアルペジエータに適用し、これを例に挙げて説明したので、生成されるデータはアルペジオデータであり、通常の自動伴奏装置が生成する種類の自動伴奏データではない。このようにしたのは、専ら説明を簡単化するためであり、本発明は、アルペジオデータの生成と同様に、通常の自動伴奏装置が生成する種類の自動伴奏データの生成にも適用できる。
また、本実施の形態では、(B)発音データリスト再生処理をタイマ割り込み処理内で行うようにしたが、これに限らず、図5の制御処理内で行うようにしてもよい。
さらに、本実施の形態では、アルペジオパターンデータは、外部記憶装置6に予め複数種類記憶されているとしたが、これに限らず、前記ROM4に予め複数種類記憶されていてもよいし、ネットワーク上にあるものを、前記通信I/F8を介して取得するようにしてもよい。
また、本実施の形態では、ループ回数として、任意の自然数を設定できるように構成したが、これに限らず、所定回数(たとえば、1回)を固定的に設定するようにしてもよい。あるいは、この所定回数と「指定なし」のいずれかを選択できるようにしてもよい。所定回数は、常に変更できないようにしてもよいし、アルペジオパターンデータ毎にループ回数を決めておき、アルペジオパターンデータが選択されると、それに対応するループ回数が自動的に所定回数として設定されるようにしてもよい。
さらに、本実施の形態では、アルペジオパターンデータが参照する音符情報として、ユーザがリアルタイム演奏することによって入力したもの(つまり、押鍵音)を用いるようにしたが、これに限らず、ユーザが事前に作成した演奏情報ファイルや既製の演奏情報ファイルを再生して得られたものを用いてもよい。
なお、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記憶媒体から読出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、たとえば、フレキシブルディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。また、通信ネットワークを介してサーバコンピュータからプログラムコードが供給されるようにしてもよい。
また、コンピュータが読出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOSなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
本発明の一実施の形態に係る自動伴奏生成装置を適用したアルペジエータの概略構成を示すブロック図である。 図1のアルペジエータが実行する制御処理の制御構成を示すブロック図である。 アルペジオパターンデータに含まれる発音パターンデータのフォーマットの一例と、その発音パターンデータとユーザの押鍵操作によって入力された押鍵音の音高に基づいて生成した発音データリストを示す図である。 図1のアルペジエータが実行する制御処理を説明するための図である。 図1のアルペジエータ、特にCPUが実行する制御処理の手順を示すフローチャートである。 図1のアルペジエータ、特にCPUが実行する発音データリスト生成処理の手順を示すフローチャートである。
符号の説明
1…操作子群(入力手段),3…CPU(供給手段、生成手段、取得手段、発音手段、出力手段),4…ROM(供給手段),6…外部記憶装置(供給手段),8…通信I/F(供給手段),9…音源回路(発音手段)

Claims (3)

  1. アルペジオパターンデータを供給する供給手段と、
    音高情報を含む音符情報を1つ以上入力する入力手段と、
    該入力手段によって入力された音符情報および前記供給手段によって供給されたアルペジオパターンデータに基づいて、アルペジオ発音データを生成する生成手段と、
    該生成手段がアルペジオ発音データを生成するときに、前記供給されたアルペジオパターンデータを繰り返して使用する回数を示す回数情報を取得する取得手段と、
    前記入力手段によって音符情報が入力されたことに応じて、当該入力された音符情報に基づいて楽音を発生させ、その楽音に重ねて、前記生成手段によって生成されたアルペジオ発音データに基づいてアルペジオを発生させる発音手段と
    を有し、
    前記生成手段は、前記取得手段によって取得された回数情報が示す回数、前記供給されたアルペジオパターンデータを繰り返し使用することにより、当該アルペジオパターンデータおよび前記入力された音符情報に基づいてアルペジオ発音データを生成し、
    前記発音手段は、前記回数情報が示す回数、前記アルペジオパターンデータを繰り返し使用して生成されたアルペジオ発音データに基づくアルペジオの発生を終了したときに、前記音符情報の入力が続いている場合には、当該入力中の音符情報に基づいた楽音の発生を継続させる
    ことを特徴とする自動伴奏生成装置。
  2. アルペジオパターンデータを供給する供給手順と、
    音高情報を含む音符情報を1つ以上入力する入力手段によって入力された音符情報および前記供給手順によって供給されたアルペジオパターンデータに基づいて、アルペジオ発音データを生成する生成手順と、
    該生成手順アルペジオ発音データを生成するときに、前記供給されたアルペジオパターンデータを繰り返して使用する回数を示す回数情報を取得する取得手順と、
    前記入力された音符情報に基づいて楽音を発生させ、その楽音に重ねて、前記生成手順によって生成されたアルペジオ発音データに基づいてアルペジオを発生させる発音手順とをコンピュータに実行させるためのプログラムであって、
    前記生成手順では、前記取得手順によって取得された回数情報が示す回数、前記供給されたアルペジオパターンデータを繰り返し使用することにより、当該アルペジオパターンデータおよび前記入力された音符情報に基づいてアルペジオ発音データを生成し、
    前記発音手順では、前記回数情報が示す回数、前記アルペジオパターンデータを繰り返し使用して生成されたアルペジオ発音データに基づくアルペジオの発生を終了したときに、前記音符情報の入力が続いている場合には、当該入力中の音符情報に基づいた楽音の発生を継続させる
    ことを特徴とするプログラム。
  3. アルペジオパターンデータを供給する供給手段と、
    音高情報を含む音符情報を1つ以上入力する入力手段と、
    該入力手段によって入力された音符情報および前記供給手段によって供給されたアルペジオパターンデータに基づいて、アルペジオ発音データを出力する出力手段と、
    該出力手段がアルペジオ発音データを出力するときに、前記供給されたアルペジオパターンデータを繰り返して使用する回数を示す回数情報を取得する取得手段と、
    前記入力手段によって音符情報が入力されたことに応じて、当該入力された音符情報に基づいて楽音を発生させ、その楽音に重ねて、前記出力手段によって出力されたアルペジオ発音データに基づいてアルペジオを発生させる発音手段と
    を有し、
    前記出力手段は、前記取得手段によって取得された回数情報が示す回数、前記供給されたアルペジオパターンデータを繰り返し使用することにより、当該アルペジオパターンデータおよび前記入力された音符情報に基づいてアルペジオ発音データを出力し、
    前記発音手段は、前記回数情報が示す回数、前記アルペジオパターンデータを繰り返し使用して出力されたアルペジオ発音データに基づくアルペジオの発生を終了したときに、前記音符情報の入力が続いている場合には、当該入力中の音符情報に基づいた楽音の発生を継続させる
    ことを特徴とする自動伴奏発生装置。
JP2006324171A 2006-11-30 2006-11-30 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム Expired - Fee Related JP5228315B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006324171A JP5228315B2 (ja) 2006-11-30 2006-11-30 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム
US11/946,200 US7915513B2 (en) 2006-11-30 2007-11-28 Automatic accompaniment generating apparatus and method

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
JP2008139450A JP2008139450A (ja) 2008-06-19
JP5228315B2 true JP5228315B2 (ja) 2013-07-03

Family

ID=39474246

Family Applications (1)

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

Country Status (2)

Country Link
US (1) US7915513B2 (ja)
JP (1) JP5228315B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5402167B2 (ja) * 2009-03-31 2014-01-29 ヤマハ株式会社 アルペジオ生成装置およびアルペジオ生成方法を実現するためのプログラム
JP5168297B2 (ja) * 2010-02-04 2013-03-21 カシオ計算機株式会社 自動伴奏装置および自動伴奏プログラム
US9384719B2 (en) * 2013-07-15 2016-07-05 Apple Inc. Generating customized arpeggios in a virtual musical instrument
US10262643B1 (en) * 2017-08-09 2019-04-16 Zachary Charles Kinter MIDI mapping system and process for multiple chord and arpeggio triggering
EP4027331A4 (en) * 2019-09-04 2023-06-14 Roland Corporation ARPEGGIATOR AND PROGRAM HAVING A FUNCTION FOR IT

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5565994A (en) * 1978-11-10 1980-05-17 Nippon Musical Instruments Mfg Electronic musical instrument
JPS62103696A (ja) * 1985-10-30 1987-05-14 ヤマハ株式会社 電子楽器
JPS6355595A (ja) * 1987-05-21 1988-03-10 ヤマハ株式会社 電子楽器の自動伴奏装置
JP2516085B2 (ja) * 1990-04-02 1996-07-10 株式会社河合楽器製作所 自動演奏装置
JP3322275B2 (ja) * 1992-10-09 2002-09-09 ヤマハ株式会社 カラオケ装置
JP3324158B2 (ja) * 1992-10-09 2002-09-17 ヤマハ株式会社 カラオケ装置
US5478967A (en) * 1993-03-30 1995-12-26 Kabushiki Kaisha Kawai Gakki Seisakusho Automatic performing system for repeating and performing an accompaniment pattern
US5973253A (en) * 1996-10-08 1999-10-26 Roland Kabushiki Kaisha Electronic musical instrument for conducting an arpeggio performance of a stringed instrument
JP3744190B2 (ja) * 1998-03-13 2006-02-08 カシオ計算機株式会社 自動伴奏装置
JP3562333B2 (ja) * 1998-08-11 2004-09-08 ヤマハ株式会社 演奏情報変換装置および演奏情報変換方法並びに演奏情報変換制御プログラムを記録した記録媒体
JP2000066675A (ja) * 1998-08-19 2000-03-03 Yamaha Corp 自動演奏装置及びそのための記憶媒体
JP3551842B2 (ja) 1999-07-05 2004-08-11 ヤマハ株式会社 アルペジオ生成装置及びその記録媒体
JP4318194B2 (ja) * 2001-01-18 2009-08-19 株式会社河合楽器製作所 電子楽器の自動伴奏装置及び自動伴奏方法
JP3844286B2 (ja) * 2001-10-30 2006-11-08 株式会社河合楽器製作所 電子楽器の自動伴奏装置
JP4179063B2 (ja) * 2003-06-13 2008-11-12 ヤマハ株式会社 演奏設定データ選択装置及びプログラム
JP3938104B2 (ja) * 2003-06-19 2007-06-27 ヤマハ株式会社 アルペジオパターン設定装置およびプログラム
JP4821532B2 (ja) * 2006-09-21 2011-11-24 ヤマハ株式会社 アルペジオ演奏装置及びプログラム
JP4821533B2 (ja) * 2006-09-21 2011-11-24 ヤマハ株式会社 アルペジオ演奏装置及びプログラム

Also Published As

Publication number Publication date
JP2008139450A (ja) 2008-06-19
US7915513B2 (en) 2011-03-29
US20080127813A1 (en) 2008-06-05

Similar Documents

Publication Publication Date Title
JP4321476B2 (ja) 電子楽器
JP5228315B2 (ja) 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム
JP2009156914A (ja) 自動伴奏装置及びプログラム
JP3116937B2 (ja) カラオケ装置
JP5200368B2 (ja) アルペジオ生成装置およびアルペジオ生成方法を実現するためのプログラム
JP4853054B2 (ja) 演奏データ編集装置及びプログラム
JP6790362B2 (ja) 電子音響装置
JP3620396B2 (ja) 情報修正装置及び情報修正プログラムを記録した媒体
JP4172335B2 (ja) 自動伴奏生成装置及びプログラム
JP5402167B2 (ja) アルペジオ生成装置およびアルペジオ生成方法を実現するためのプログラム
JP4449370B2 (ja) 自動伴奏生成装置及びプログラム
JP3885791B2 (ja) 自動伴奏装置および自動伴奏方法を実現するためのプログラム
JP3873880B2 (ja) 演奏補助装置および演奏補助用プログラム
JP3173310B2 (ja) ハーモニー生成装置
JP4548365B2 (ja) 楽譜表示装置及びプログラム
JP2007178890A (ja) 自動演奏装置
JP4873307B2 (ja) 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム
US6548748B2 (en) Electronic musical instrument with mute control
JP4835433B2 (ja) 演奏パターン再生装置及びそのコンピュータプログラム
JP5747974B2 (ja) 情報処理装置及びプログラム
JP3791784B2 (ja) 演奏装置
JP3870948B2 (ja) 表情付け処理装置および表情付け用コンピュータプログラム
JP2006267535A (ja) 電子音楽装置
JP2008164969A (ja) 演奏パターン再生装置及びそのコンピュータプログラム
JPH10116074A (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: 20110520

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: 20120529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120720

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: 20130219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130304

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

Free format text: PAYMENT UNTIL: 20160329

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5228315

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