JP2004294595A - Device and program for automatic accompaniment - Google Patents
Device and program for automatic accompaniment Download PDFInfo
- Publication number
- JP2004294595A JP2004294595A JP2003084361A JP2003084361A JP2004294595A JP 2004294595 A JP2004294595 A JP 2004294595A JP 2003084361 A JP2003084361 A JP 2003084361A JP 2003084361 A JP2003084361 A JP 2003084361A JP 2004294595 A JP2004294595 A JP 2004294595A
- Authority
- JP
- Japan
- Prior art keywords
- chord
- section
- information
- automatic accompaniment
- accompaniment
- 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.)
- Granted
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、伴奏データを自動的に作成する自動伴奏装置に関するものである。
【0002】
【従来の技術】
従来、自動伴奏は、ユーザがメロディを実演奏する際、あるいは、曲データを用いてメロディを自動演奏する際に、伴奏データを自動的に生成し、これをメロディ演奏とともに再生することにより行われる。
このような自動伴奏をする場合、伴奏スタイルを設定するとともに、設定された伴奏スタイルに応じたパターンデータにコード情報を反映させて自動伴奏データを作成している(特許文献1参照)。
例えば、入力和音(コード情報)の種類に応じて、伴奏スタイルに応じて記憶されているソースパターン(パターンデータ)内のキーコード(音高)を変換するとともに、全音高を入力コード情報の根音に応じてシフトし、入力されたコード情報に合った音高の伴奏音を生成している。
なお、所定コード情報で作成したパターンデータを入力コード情報の種類に合ったように音高変換するために、パターンデータの音高についてのシフトデータをコード情報の種類に対応づけてノート変換テーブルとして記憶しておき、入力されるコード情報の種類に応じたシフトデータをノート変換テーブルから読み出し、この読み出したシフトデータをソースパターンの音高と演算することによりコード情報の種類に応じた伴奏音を得ている。
【0003】
ここで、伴奏スタイルは、曲の本体部(メロディ演奏区間)に主として用いる「メインセクション」、メロディ演奏区間の前に主として用いる「イントロセクション」、メロディ演奏区間の終了後に主として用いる「エンディングセクション」など、複数のセクションからなる(特許文献2参照)。
この他、フィルインなどのセクションや、さらに、メインA、メインBなどというバリエーションもある。
伴奏スタイルの各セクションが、パターンデータを持ち、さらに、コード情報に従って、リズム音やコード音、ベース音など各種の具体的な伴奏音に展開される。
【0004】
コード情報とは、本来、メロディのコード進行に合わせて自動伴奏をするために指定されるものである。
コード情報が楽譜上に指示されている場合もある。ユーザの意図を反映したものとするために、コード情報は、ユーザによって入力される。あるいは、曲データ中に元々含まれている場合もある。
ところで、コード情報は、自動伴奏の演奏中に入力されることがある(コードチェンジ)。通常は、コードチェンジのあった時点から新しいコード情報をもとに上述した方法などでパターンデータから伴奏を得る。
従来のパターンデータは、一般に、どのようなコード情報が指定されても問題ないように、コード進行のないパターンデータが設定されていた。例えば、コード情報が(Cmaj)であるとき、「ド,ソ,ミ,ソ」を繰り返すパターンデータが設定されている。
しかし、最近では、コード進行を考慮してパターンデータが作成されている場合がある。特に、「イントロセクション」や「エンディングセクション」では、同時にはメロディ演奏されないので、独自のコード進行が考慮される場合がある。
【0005】
図6は、コード進行を考慮して作成されたパターンデータにコード情報が与えられて生成される自動伴奏データの一例を示す説明図である。自動伴奏中に誤ってコードチェンジされる場合を示す。
図6(a)においては、コード情報(Cmaj)で作成されたパターンデータが、コード情報(Cmaj)の指定で開始されてそのまま続き、パターンデータのコード進行がI→IIm→V7→Iであり、指定されたコード情報(Cmaj)を反映して(Cmaj)→(Dm)→(G7)→(Cmaj)の流れを持つ自動伴奏が出力される。
これに対し、図6(b)では、元のパターンデータは図6(a)と同じであるが、最初、(Cmaj)で指定されたコード情報が、第3小節目から、(Fmaj)にコードチェンジされた場合を示している。
このコードチェンジにより、パターンデータの各音符は、パターンデータ作成時の元のコード情報(Cmaj)と新たなコード情報(Fmaj)のルート(根音)の差に応じて、4度上に移調される。この例では、同じコード種類でのコードチェンジなので、根音に基づく移調のみになる。その結果、パターンデータ中のコード進行は、(Cmaj)→(Dm)→(C7)→(Fmaj)となって、出力される自動伴奏データがセクションの自動伴奏途中で移調されてしまい不自然な聴感になってしまう。
このセクションが、イントロセクションであった場合、自動伴奏途中でコードチェンジがあると、イントロセクションが最初と異なる調で終わることになる。メインセクションの自動伴奏が開始されたとき、イントロセクションの最初のコード情報と同じものが指定されている場合が多い。したがって、今度は、4度下に移調されることになる。その結果、移調が上下して落ち着かない印象を与え、不安定な聴感になってしまう。
【0006】
上述したコードチェンジは、ユーザの操作ミスに限られない。
楽譜に記載されたものを誤って入力してしまう場合もある。すなわち、楽譜によっては、ユーザが弾くためのイントロ演奏楽譜とそのコード情報とが記載されている場合がある。自動伴奏装置では、楽譜に記載されたイントロ演奏楽譜とは無関係に、付与されたイントロセクションより自動伴奏をすることから、ユーザが楽譜に指定されたコードを入力してしまうと、付与されたイントロセクションとは必ずしも関連のないコード指定をしてしまうことになる。
あるいは、曲データの自動演奏において、この曲データ中の、イントロセクションを付与する区間にコード情報が含まれている場合がある。更に、メロディの演奏データとは別のトラックに別の演奏データが入っている場合がある。伴奏スタイルによる自動伴奏を実行する場合は、メロディ以外の演奏データの入ったトラックはミュートさせる。しかし、このミュート操作を行っても曲データのコード情報は残っており、自動伴奏装置で自動作成されるイントロセクションの伴奏データとは必ずしも関連のないコード指定をしてしまうことになる。
【0007】
一方、従来、エンディングセクションに関しては、コード進行が変化すると演奏上好ましくないことに着目して、エンディングセクションが有効な間は、コード変更を受け付けないというコードシーケンサが知られている(特許文献3参照)。
この技術を応用すれば、ユーザが指定したセクションに関しては、コード変更を受け付けないようにする方法が考えられる。
しかし、指定した以外のセクションの中にも、パターンデータがコード進行を考慮して作成されていた場合には対応できない。
逆に、指定したセクションのパターンデータが、元々、コード進行を考慮しておらず、むしろユーザによるコード情報の指定によって、伴奏に変化をつけたい場合もある。このような場合、コードチェンジが受け付けられないので、所望の伴奏データが得られない。
【0008】
【特許文献1】
特開平10−293586号公報
【特許文献2】
特許3327188号
【特許文献3】
特許2536525号
【0009】
【発明が解決しようとする課題】
本発明は、上述した問題点を解決するためになされたもので、セクション演奏の自動伴奏途中で第2番目以降のコード情報が供給されても、自然な自動伴奏データが得られる自動伴奏装置および自動伴奏プログラムを提供することを目的とするものである。
【0010】
【課題を解決するための手段】
本発明は、請求項1に記載の発明においては、伴奏スタイルおよび該伴奏スタイルのセクションを指示する情報を供給する伴奏スタイル・セクション指示情報供給手段と、コード情報を供給するコード情報供給手段と、複数のパターンデータの中から、前記伴奏スタイル・セクション指示情報供給手段により供給された伴奏スタイルおよび該伴奏スタイルのセクションを指示する情報に応じてパターンデータを決定し、決定されたパターンデータに、前記コード情報供給手段により供給されたコード情報を反映させて自動伴奏データを生成する自動伴奏データ生成手段と、該自動伴奏データ生成手段において決定されたパターンデータが、コード進行を考慮されたものでないときは、前記コード情報供給手段から供給されるコード情報を前記自動伴奏データ生成手段に反映させるとともに、前記コード進行を考慮されたものであるときは、前記コード情報供給手段から供給される、前記セクションの自動伴奏開始時に有効な最初のコード情報は、前記自動伴奏データ生成手段に反映させるが、前記コード情報供給手段から供給される前記セクションの自動伴奏途中で指定される第2番目以降のコード情報は、前記自動伴奏データ生成手段に反映させないようにするコードチェンジ制御手段を有するものである。
従って、セクションの自動伴奏途中で第2番目以降のコード情報が供給されても、伴奏スタイルおよび該伴奏スタイルのセクションを指示する情報に応じて決定されたパターンデータがコード進行を考慮したものである場合には、このコード情報が無視されるので、自然な聴感の自動伴奏データが得られる。
上述したコード情報の無視は自動的に行われるので、ユーザは伴奏スタイルおよびセクションの指示やコード情報の入力に気を遣わなくてもよい。
【0011】
請求項2に記載の発明においては、請求項1に記載の自動伴奏装置において、コードチェンジ無効化制御情報供給手段を有し、該コードチェンジ無効化制御情報供給手段は、前記自動伴奏データ生成手段において決定されたパターンデータが、コード進行を考慮されたものであるときに、前記コードチェンジ制御手段が、前記コード情報供給手段から供給される前記セクションの自動伴奏途中で指定される第2番目以降のコード情報を前記自動伴奏データ生成手段に反映させるか否かを切り替える制御情報を前記コードチェンジ制御手段に供給するものである。
従って、コードチェンジを有効にすることもできるので、コード情報の供給を間違えたときでも、直ちに正しいコード情報を供給することにより、自動伴奏データの修復が速やかに行われる。
また、セクションのパターンデータがコード進行を考慮していないときには、コードチェンジが有効であるので、ユーザが適切なコード情報を供給することにより、変化に富んだ自動伴奏データを得ることができる。
【0012】
請求項3に記載の発明においては、上述した請求項1に記載の自動伴奏装置をコンピュータに実行させるプログラムの形態で実現するものである。同様に、請求項2に記載の発明もコンピュータに実行させるプログラムの形態で実現することができる。
【0013】
【発明の実施の形態】
図1は、本発明の実施の一形態を説明するための機能構成図である。
伴奏スタイル・セクション指示情報供給部1は、複数種類ある伴奏スタイルの中から1つを指定する情報を出力する。例えば、16ビート,カントリー,ラテン,スイング&ジャズ等の音楽ジャンルに応じたカテゴリーと、各カテゴリー下における具体的な伴奏スタイル名を指定することにより、例えば、1つのスタイルファイル名を指定する。
各伴奏スタイルにおいては、メイン、イントロ、エンディングなどの、複数のセクション毎に、異なるパターンデータが指定される。
伴奏スタイル・セクション指示情報供給部1は、ユーザが演奏をする際に、操作子操作によりユーザが指定したものを供給したり、曲データを自動演奏する際に、操作子操作によりユーザが指定したり、曲データ中に指定されたものを読み出したりして供給するものである。
【0014】
コード情報供給部2は、従来と同様に、後述する自動伴奏データ生成部4に対し、コード情報を反映した自動伴奏データを出力させるためのものである。
この実施の形態において、コード情報は、コードチェンジ制御部3を通して自動伴奏データ生成部4に出力する。コード情報は、1曲を通しても、各セクションにおいても、何回でも供給できる。
このコード情報供給部2は、例えば、コード情報設定操作子によりユーザがリアルタイムでコード情報を供給するものである。
あるいは、予め、コード情報のシーケンスデータとして用意されて記憶されている記憶装置でもよい。
もしくは、曲データ中の任意のパート(通常は、メロディパート)が指定されて、このパートを自動分析する装置でもよい。自動分析して検出されたコード情報を供給する。この場合、イントロセクションでは、指定されたパートを分析したときの先頭のコード情報を採用する。
【0015】
コードチェンジ制御部3は、後述する条件を満たすか否かを判別し、コード情報供給部2から供給されたコード情報を自動伴奏データ生成部4に反映させるか否かを制御する。
すなわち、伴奏スタイルのセクションを指示する情報に応じて、後述する自動伴奏データ生成部4において決定された各セクションのパターンデータが、コード進行を考慮されたものでないときは、コード情報供給部2から供給されるコード情報を自動伴奏データ生成部4に反映させる。
一方、コード進行を考慮されたものであるときは、コード情報供給部2から供給される、各セクションの自動伴奏開始時に有効な最初のコード情報は自動伴奏データ生成部4に反映させるが、各セクションの自動伴奏途中で指定される第2番目以降のコード情報は反映させないようにする。
ここで、自動伴奏データ生成部4において決定された各セクションのパターンデータがコード進行を考慮されたものか否かの判別は、図2を参照して後述するように、伴奏スタイルの各セクションに含まれる、コード進行考慮の有無を示す「コード進行有無情報」によって判別するか、各セクションのパターンデータを分析することにより、コード進行が考慮されているか否かを判別することなどにより実現できる。
【0016】
また、各セクションの自動伴奏開始時に有効な最初のコード情報とするのは、従来と同様であり、一例として次の2例が考えられる。しかし、製品仕様として、任意の条件を決めることができる。
第1に、セクションの開始と同時かそれ以前に指定される最初のコード情報である。セクションの開始時点から自動伴奏か開始される。
第2に、あるセクションが開始されるまで何もコード情報が指定されていなくても、そのセクション中、最初にコード情報が指定されたときのコード情報である。この場合、最初にコード情報が指定された時点から、このセクションの自動伴奏か開始される。
【0017】
コードチェンジ制御部3は、また、コードチェンジ無効化制御情報供給部6から、コードチェンジ無効化制御情報(フラグ)の供給を受け、コードチェンジ無効化機能のON/OFFを制御する。
すなわち、自動伴奏データ生成部4において決定されたパターンデータがコード進行を考慮されたものであるときに、コードチェンジ制御部3が、コード情報供給部2から供給される、各セクションの自動伴奏途中で指定される第2番目以降のコード情報を反映させるか否かを切り替える。
【0018】
自動伴奏データ生成部4は、従来のものと同様の構成でもよい。
例えば、伴奏スタイルデータ記憶部5に記憶された複数種類の伴奏スタイルデータファイルの各セクションのパターンデータを参照し、これらの中から、伴奏スタイル・セクション指示情報供給部1から供給された伴奏スタイルおよびこの伴奏スタイルのセクション指示情報に応じてパターンデータを決定し、決定されたパターンデータに、コードチェンジ制御部3を介して指定されたコード情報を反映させて自動伴奏データを生成する。
ここで、反映とは、上述したパターンデータを、コード情報に合う、例えば、コード構成音になるように変換して自動伴奏を行うことである。
【0019】
上述した構成により、伴奏スタイルのイントロセクションなどで、コード進行を考慮したパターンデータを持つ場合は、セクションの自動伴奏開始時に有効な最初のコード情報は反映されるが、セクションの自動伴奏途中で指定される第2番目以降のコード情報は無視されることから、自然な伴奏が得られるようになる。
一方、コードチェンジ無効化制御情報供給部6が、コードチェンジ制御部3のコードチェンジ無効化機能をOFFにしたときには、常にコートチェンジが反映されることになり、自動伴奏データ生成部4は、従来と同様の自動伴奏データを出力することになる。
【0020】
図2は、伴奏スタイルデータファイルのデータ構造の一例を示す説明図である。
ある1つの伴奏スタイル11は、ヘッダー部、および、これに続くセクション部を有している。ヘッダー部には、伴奏スタイル名,自動伴奏の拍子,自動伴奏のテンポのデータ等が含まれる。セクション部は、既に説明したように、イントロ,メイン,エンディング等の自動伴奏される区間に応じた、複数のセクションに分かれている。
各セクション12は、さらに、設定情報,パターンデータ,各セクションを構成するパートに関するパート情報が含まれている。設定情報には、セクション名,セクションの小節数等が含まれる。
【0021】
上述したパターンデータは、実際に生成される自動伴奏データの元になるノートデータのパターンデータである。調の主音を基準とした度数形式で記述されたり、ある調のノートデータパターンをMIDI(Musical Instrument Digital Interface)で記述されたりする。
セクションの自動伴奏開始時に、コードチェンジ制御部3により指定されているコード情報を反映するようにこのパターンデータを変換する。
パターンデータは、リズムパート,ベースパート,コードパート,フレーズパート等、1または複数のパートで構成される。各パートに関する情報は、パート情報として記述されている。パート情報は、パート名,出力チャンネル,コード進行有無情報,その他の伴奏データ作成情報を含む。
伴奏データ作成情報としては、例えば、パターンデータにコード情報を反映させる際に、自動伴奏データの音域を指定したり、音高を高い方にシフトさせるのか、低い方にシフトさせるのかを指定したりする。
コード進行有無情報は、既に説明したように、当該セクション12のパターンデータがコード進行を考慮して作成されたものか否かを指示するもので、例えば、考慮して作成されている場合は1、考慮して作成されていない場合は0とする。
【0022】
図示の例では、コード進行有無情報は、パート毎に記述されるものとしている。ただし、例えば、ベースパートおよびコードパートでは、自動伴奏データにコード情報を反映させるが、リズムパートはコード情報に無関係なので、コード進行有無情報は含まれない。
また、コード進行を考慮したパターンデータにおいては、通常、コード情報が反映されるパートの全てにコード進行が考慮されている。
従って、コード進行が考慮されたパターンデータを有するセクションであるか否かは、コード情報が反映される全てのパートのコード進行有無情報に応じて判定する必要はなく、任意の1つのパートのコード進行有無情報に応じて判定することができる。
【0023】
あるいは、伴奏スタイルデータファイルの作成誤り、あるいはコード進行有無情報の検出誤り等を考慮して、コード情報が反映される全てのパートのコード進行有無情報に基づいて、例えば、少なくとも1つが1であるか、あるいは、全てが1であるかなどの判定基準で判定してもよい。
また、コード進行有無情報は、各パートのパート情報内ではなく、各セクション12の設定情報内に、全パートに共通のものとして含めてもよい。
さらにまた、使用される伴奏スタイルの、あるセクション12(例えば、イントロセクション)が全て、コード進行を考慮したパターンデータを持つものであることが、予め、わかっているなどの場合は、このセクションに対し、一律に、セクションの途中のコードチェンジを無効化するように、無効化制御情報を供給すればよい。
【0024】
図3は、本発明の実施の一形態を実現するハードウェア構成図である。
電子楽器等の電子音楽装置において、プログラムを実行させることにより自動伴奏機能を実現する場合を説明する。
図中、21はバス、22はCPU(Central Processing Unit)、23はROM(Read Only Memory)、24はRAM(Random Access Memory)である。RAM24にはCPU22のワーキングエリアが設けられ、ROM23にはCPU22を動作させる制御プログラムのほか、伴奏スタイルデータなど各種のプリセットデータが記憶されている。
25は入力操作部であって、鍵盤を含む各種の操作子である。図1に示した伴奏スタイルを設定する操作子や、コード情報を指定する操作子、コードチェンジ無効化機能をオンオフする操作子がある。
【0025】
これらの操作子は、物理的な切替えボタンやスイッチに限られない。
例えば、設定された伴奏スタイルや使用しているセクションの一覧をディスプレイ27に提示し、各セクションに対し、コードチェンジ無効化機能のオンオフを、カーソルキーやエンターキーを操作してユーザに設定させる形式でもよい。また、上述した各種の設定をメニュー画面の切替えで行えるようになっていてもよい。
この他、自動伴奏の開始あるいは終了を制御したり、曲データの記録再生を制御する操作子や音源パラメータを設定する設定操作子等がある。
伴奏スタイルデータファイルや曲データは、ROM23あるいは外部記憶装置30に記憶され、RAM24にロードされる。
【0026】
26は表示回路であって、液晶等のディスプレイ27に画像データを出力する。ディスプレイ27には、自動伴奏の設定のメニュー画面を表示したり、音源パラメータの設定メニューを表示したり、演奏する曲の楽譜を表示したりする。
28は音源回路、29はサウンドシステムである。音源回路28は、演奏データおよび自動伴奏データに応じた音源制御パラメータ等を入力し、演奏音を波形合成し、この楽音信号は、サウンドシステム29に供給されてスピーカから出力される。音源回路28は、専用のハードウェアや、DSP(Digital Signal Processor)とマイクロプログラムによる構成をとる。あるいは、CPU32に波形合成をさせるソフトウェア音源プログラムによって音源機能を実現するものでもよい。
【0027】
30はフラッシュメモリ(半導体メモリカード),FDD(Flexible Disk Drive)等の外部記憶装置である。HDD(ハードディスクドライブ)、CD−ROM(コンパクトディスク・リード・オンリィ・メモリ),MO(Magneto Optical Disk),DVD(Digital Versatile Disk)等の記録媒体用のドライブでもよい。伴奏スタイルデータファイルは、FDD等の外部記憶媒体で供給されてRAM24に読み込まれてもよい。制御プログラムは、ハードディスクにインストールしておき、それをRAM24に読み込んでもよい。
31は通信インターフェースであって、音源装置、MIDI鍵盤等の外部機器32をバス21に接続する。専用のMIDIインターフェースに限らず、汎用のインターフェースを用いて直結あるいはLAN( Local Area Network)接続されたり、インターネット経由で、パーソナルコンピュータ,サーバ等の外部機器32に接続されたりする。
伴奏スタイルデータファイルや曲データファイルは、外部機器32から外部記憶装置30あるいはRAM24にダウンロードされるほか、曲データは、リアルタイムあるいはストリーミング再生方式でRAM24に供給されて用いられる場合もある。
【0028】
なお、図1の伴奏スタイルデータ記憶部5は、RAM24に対応し、ROM23、外部記憶装置30内の外部記憶媒体、あるいは、外部機器32等から複数種類の伴奏スタイルデータファイル(図2)が入力される。しかし、RAM24には、伴奏スタイルおよびこの伴奏スタイルのセクション指示情報に応じて決定された伴奏スタイル11のデータあるいは各セクション12のデータだけが、決定の都度、ROM23、外部記憶媒体あるいは外部機器32から入力されてもよい。この場合、図1の伴奏スタイルデータ記憶部5は、ROM23,外部記憶媒体あるいは外部機器32等に相当する。
【0029】
CPU22は、ROM23に記憶された自動伴奏プログラムを含む電子音楽装置制御用プログラムをRAM24にロードし、自動伴奏データを生成するなど、各種の制御を行う。
生成された各パートの自動伴奏データは、楽音の音色等の音源制御パラメータ、ノート・オン,ノート・オフデータとして、音源回路28に出力する。
また、曲データあるいは楽譜表示用データに応じて、楽譜のイメージデータを生成し、表示回路26に出力する。
パーソナルコンピュータにおいても、同様の自動伴奏機能を実現することができる。キーボード,マウス等の操作子を入力操作部25とし、鍵盤等は、通信インターフェース31を介して接続される外部機器32としてのMIDI鍵盤を用いることができる。
【0030】
図4は、伴奏スタイルのセクションとコードのシーケンスデータの一例を示す説明図である。
イントロセクションとメインセクションからなる。イントロセクションイベントと、最初の2つのコードイベントにより生成される自動伴奏データは、図6(b)に示した具体例に対応している。
図中、時間(時刻)は、小節,拍,クロックで示し、各時刻における伴奏スタイルのセクションイベントおよびコードイベントのみを示している。
【0031】
第1小節の第1拍において、(Cmaj)を指定するコードイベント[Chord(Cmaj)]と、スタイルAのイントロセクションを小節幅4で指定するセクションイベント[StyleA・Section(Intro) 4Measure]が発生している。従って、第1小節目から4小節目の終わりまでイントロセクションが有効となる。
第3小節の第1拍において、(Fmaj)を指定するコードイベント[Chord(Fmaj)]がある。このコードイベントは、イントロセクションの途中のタイミングで発生している。
第5小節の第1拍において、(Cmaj)を指定するコードイベント[Chord(Cmaj)]と、スタイルAのメインセクションを小節幅12で指定するセクションイベント[StyleA・Section(Main) 12Measure]が発生している。従って、第5小節から16小節目の終わりまでメインセクションが有効となる。
従来技術では、第3小節の第1拍で発生したコードイベント[Chord(Fmaj)]によって、イントロセクションの自動伴奏途中でパターンデータが移調されて出力される。
この実施の形態では、イントロセクションがコード進行を考慮したセクションであれば、このイントロセクションの区間内で発生する第3小節の第1拍で発生したコード指定(Fmaj)を無効にし、図6(b)ではなく、図6(a)のような、「Cmaj→Dm→G7→Cmaj」の伴奏データが生成されるようにする。
【0032】
図5は、図1に示した本発明の実施の一形態の動作例を説明するためのフローチャートである。
図3に示したCPU22が自動伴奏プログラムを実行することにより行われる。伴奏スタイル(セクション)とコードのイベントが図4に示した形式で入力される場合に適合したものを示す。
図中、「Chord」,「Section」は、その時々のコードイベントとセクションイベントを示すイベントバッファである。
「CFlag」は、コードチェンジ無効化を制御するフラグであり、所定の条件下でコードチェンジを無効にする機能をON/OFFする。
【0033】
まず、動作の概要を説明する。
S45においてコードイベントが検出されたときには、S52〜S59の処理がなされ、S46においてセクションイベントが検出されたときには、S47〜S50の処理がなされる。S51において、その時点での「Chord」と「Section」を基に自動伴奏再生処理が行われる。
コードチェンジ無効化機能のオンオフ状態はS56で判別され、伴奏スタイルの各セクションのパターンデータのコード進行有無情報はS58に判別される。
S53においてコードイベントが「Chord」に書き込まれ、一方、S47において、セクションイベントが「Section」に書き込まれることにより、S49→S50→S51と処理が進められることにより、「Chord」と「Section」の内容に基づき自動伴奏処理が行われる。(先に、S53で「Chord」に書き込まれたコードイベントをS47で「Section」に書き込まれたこのセクションで有効な最初のコードイベントとして扱っている)。
S55において、現在のセクションの終了時刻以降のコードイベントが検出されると、S57→S43と処理が進められ(S53で「Chord」に書き込まれたコードイベントは、先に、S47で「Section」に書き込まれた現在のセクションに有効なコードイベントではない)、次のセクションイベントが検出されると(S44→S45→S46)、S47→S49→S50→S51と処理が進められ、その時点で「Chord」と「Section」の内容に基づいて自動伴奏処理が行われる。
【0034】
図4に示した具体例とは異なり、イントロセクションイベントが発生した後に、初めてコードイベントが供給される場合には、S44→S45→S46→S47→S49→S43→S44→S45→S52(コードカウンタの値=1)→S53→S54→S55→S56(例:コードチェンジの無効化を指示している場合)→S58(例:コード進行有無情報が1の場合)→S59→S51と処理が進められることにより、このコードイベントが供給された時点でイントロセクションの自動伴奏再生処理が開始される(S53で書き込まれたコードイベントを、先に、S47で書き込まれたこのセクションで有効な最初のコードイベントとして扱っている。ただし、最初のセクションの場合に限られる)。
【0035】
次に、図4に示した具体例に当てはめて、順番に説明する。
S41においてユーザ設定を行い、S42においてカウンタやバッファ等を初期化する。
S43において供給されたイベントを1つ読み出し、S44において何らかのイベントがあればS45に進める。イベントが発生している間は、処理を継続するが、シーケンスデータの終了,ユーザ演奏の停止などにより、所定時間経過してもイベントがないときなどには再生を終了する。
S45においてはコードイベントであるか否か、S46においてはセクションイベントであるか否かを判定し、いずれでもない場合には、S48に処理を進め、その他のイベントの再生処理を行い、S43に処理を戻す。
図4の具体例では、最初の1小節目でコードイベント[Chord(Cmaj)]が検出されるので、S52に処理を進め、コードカウンタの値を1とし、S53において、「Chord」バッファに[Chord(Cmaj)]を供給する。
S54において、[Section」に保持されたセクションイベントが初期状態(セクション指示情報が保持されていない)であるか否かを判定し、初期状態であればS43に処理を戻し、初期状態でなければS55に処理を進める。
図4に示した具体例では、S43に処理を戻すことになる。
【0036】
次に、S43からS45に進んだときは、1小節目のセクションイベント[StyleA・Section(Intro)]が検出され、S47において、このセクションイベントを「Section」に供給する。S49において「Chord」が初期状態(コード情報が入力されていない)であればS43に処理を戻す。
しかし、既にS53において「Chord」バッファに[Chord(Cmaj)]が保持されているので、S50に処理を進め、コードカウンタの値を1にする。
S51において、「Section」に保持された[StyleA・Section(Intro)]に応じたパターンデータに基づいて、「Chord」バッファに保持された[Chord(Cmaj)]を反映した自動伴奏データを作成し再生する処理を開始させ、S43に処理を戻す。自動伴奏再生処理は、各セクションの終了時刻が来れば終了する。
【0037】
次に、S43からS45に進んだときに、図4の3小節目でコードイベント[Chord(Fmaj)]が検出される。S52において、コードカウンタの値は2となり、S53において、「Chord」バッファに[Chord(Fmaj)]を保持する。S54において、「Section」が[StyleA・Section(Intro)]であるので、S55に処理を進める。
S55においては、「Chord」に保持されたコードイベント時刻が「Section」バッファに保持されたセクションイベントの終了時刻よりも前である、すなわち、セクションの区間内にコード情報が供給されたか否かを判定する。
「Chord」に保持されたコードイベントの時刻(3:1:000)が「Section」に保持されたセクションイベントの終了時刻(5:1:000)(開始時刻の1小節目に4小節分を加算)よりも前である、すなわち、イントロセクションの区間内にこのコード情報が供給されたので、S56に処理を進めることになる。
S56において、コードチェンジの無効化機能を制御するるフラグ「CFlag」がONか否かを判定する。OFFであればS51に処理を進め、「Section」に保持された[StyleA・Section(Intro)]のパターンデータに、「Chord」に保持された[Chord(Fmaj)]を反映させた自動伴奏データを生成する。
【0038】
一方、コードチェンジの無効化機能を制御するフラグ「CFlag」がONであれば、S58に処理を進め、コード進行有無情報が1であるか否か、すなわち、「Section」に保持された[StyleA・Section(Intro)]のパターンデータがコード進行を考慮して作成されたものであるか否かを判定する。
コード進行有無情報が1であるときは、S59に処理を進め、コードカウンタの値が1であるか否かを判定する。1であればS51に処理を進めるが、1でなければS43に処理を戻す。
図4の具体例では、現在のコードカウンタの値が2であるから、S43に処理を戻すことになる。その結果、セクションの自動伴奏途中で供給されて「Chord」に保持されたコードイベント[Chord(Fmaj)]は、S51の自動伴奏再生処理に反映されないから、コードチェンジ無効化機能が実行される。
【0039】
次に、S43からS45に進んで、図4の5小節目で、コードイベント[Chord(Cmaj)]が検出されたとき、S52においてコードカウンタの値を3にし、S53において「Chord」バッファに(Cmaj)を供給し、S54においてセクションは初期状態でないのでS55に進む。
S55において、「Chord」に保持されたコードイベントの時刻(5:1:000)が「Section」に保持されたセクションイベントの有効期間の終了時刻(5:1:000)よりも前であるか否かを判定する。
図4の具体例では、両者の時刻が等しいことから、イントロセクションの有効区間外にコードイベントが供給されたことになるので、現在のセクションは有効なセクションでないとして、S57に処理を進め「Section」を初期化し、再びS43に戻す。
【0040】
次に、S43からS44に進み、図4の5小節目で、セクションイベント[StyleA・Section(Main)]が検出されたときは、S46からS47に進み、「Section」バッファに[StyleA・Section(Main)]を供給し、S49において、「Chord」バッファは初期状態ではないので、S50においてコードカウンタの値を1にしてS51に進める。
S51において、「Section」に保持された[StyleA・Section(Main)]のパターンデータに、先に、S53において「Chord」に保持されていたコードイベント[Chord(Cmaj)]を反映させた自動伴奏データを生成する。
なお、最後のセクション(図4に示した具体例では、メインセクション)の終了時刻が来れば、全処理を終了する。
図4の具体例にはないが、メインセクションの自動伴奏途中でコード情報が入力されたときも、S56において、コードチェンジ無効化機能を制御するフラグ「CFlag」がONであり、かつ、S58において、コード進行有無情報が1であれば、このコード指定を無効とする。
【0041】
従って、コードチェンジの無効化機能が有効な場合は、伴奏スタイルの各セクションにおいて、コード進行が考慮されたパターンデータを有する場合は、セクションの自動伴奏開始時に有効な最初のコード情報は反映されるが、自動伴奏途中で指定される2番目以降のコード情報は自動的に無視される。
コードチェンジを有効にすることもできるので、例えば、セクションの最初のコード情報を、(Cmaj)にすべきところを(Fmaj)にしてしまい、伴奏音を聞いて間違いに気づいたとき、ユーザは、直ちにコードチェンジの無効化機能をOFFにし、正しいコード情報(Cmaj)を供給することにより、自動伴奏データの修復を行うことができる。
また、コード進行を考慮していないパターンデータが長く続く場合、ユーザが適切なコード情報を1または複数回供給することにより、コード進行を与えて、変化に富んだ自動伴奏データを得ることもできる。
【0042】
上述した説明では、専用の電子音楽装置に適用した例で説明した。ここで、電子音楽装置としては、電子楽器や自動演奏ピアノなどの鍵盤楽器に限らない。電子管楽器,電子弦楽器など楽器形態に制約されない。
また、ハードウェア音源を備えたり、ソフト音源プログラムがインストールされたりしたパーソナルコンピュータ、あるいは、音源機能を備える機器が外部接続されたパーソナルコンピュータに適用することもできる。
ゲーム機、携帯電話端末等の通信端末、PDA(Personal Digital Assistant)、家電機器等において、自動伴奏機能を持たせた場合にも適用できる。自動伴奏機能は、組み込まれたCPUに制御プログラムを実行させることで実現できる。自動伴奏装置を1つの本体に内蔵したものに限らず、それぞれが別体の装置であり、各種ネットワークを用いて各装置が接続され、全体として統合された自動伴奏装置となるものであってもよい。
【0043】
【発明の効果】
本発明は、上述した説明から明らかなように、伴奏スタイルのセクションのパターンデータがコード進行を考慮したものである場合に、セクションの自動伴奏途中で指定される第2番目以降のコード情報を無視するので、自然な自動伴奏データが得られるという効果がある。
【図面の簡単な説明】
【図1】本発明の実施の一形態を説明するための機能構成図である。
【図2】伴奏スタイルデータファイルのデータ構造の一例を示す説明図である。
【図3】本発明の実施の一形態を実現するハードウェア構成図である。
【図4】伴奏スタイルとコードのシーケンスデータの一例を示す説明図である。
【図5】図1に示した本発明の実施の一形態の動作例を説明するためのフローチャートである。
【図6】コード進行を考慮して作成されたパターンデータから生成される自動伴奏データの一例を示す説明図である。
【符号の説明】
1…伴奏スタイル・セクション指示情報供給部、2…コード情報供給部、3…コードチェンジ制御部、4…自動伴奏データ生成部、5…伴奏スタイルデータ記憶部、6…コードチェンジ無効化制御情報供給部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an automatic accompaniment device that automatically creates accompaniment data.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, automatic accompaniment is performed by automatically generating accompaniment data when a user actually plays a melody or automatically playing a melody using song data, and playing back the accompaniment data together with the melody performance. .
When performing such automatic accompaniment, the accompaniment style is set, and the chord information is reflected on the pattern data corresponding to the set accompaniment style to create the automatic accompaniment data (see Patent Document 1).
For example, according to the type of input chord (chord information), a key code (pitch) in a source pattern (pattern data) stored according to an accompaniment style is converted, and the total pitch is converted to the root of the input chord information. It shifts according to the sound, and generates an accompaniment sound with a pitch that matches the input chord information.
In order to convert the pitch data of the pattern data created by the predetermined code information to match the type of the input code information, the shift data for the pitch of the pattern data is associated with the type of the code information as a note conversion table. The shift data corresponding to the type of the input chord information is read out from the note conversion table, and the read shift data is calculated with the pitch of the source pattern to obtain an accompaniment tone corresponding to the type of the chord information. It has gained.
[0003]
Here, the accompaniment style includes a "main section" mainly used for the main part (melody playing section) of the music, an "intro section" mainly used before the melody playing section, an "ending section" mainly used after the melody playing section, and the like. And a plurality of sections (see Patent Document 2).
In addition, there are sections such as fill-in, and variations such as main A and main B.
Each section of the accompaniment style has pattern data, and is further developed into various specific accompaniment sounds such as a rhythm sound, a chord sound, and a bass sound according to the chord information.
[0004]
The chord information is originally specified for performing automatic accompaniment with the chord progression of the melody.
In some cases, chord information is indicated on a musical score. In order to reflect the user's intention, the code information is input by the user. Alternatively, the music data may be originally included in the music data.
By the way, the chord information may be input during the performance of the automatic accompaniment (chord change). Usually, an accompaniment is obtained from pattern data by the above-described method or the like based on new chord information from the time of a chord change.
In general, conventional pattern data is set to have no chord progression so that no matter what code information is specified. For example, when the code information is (Cmaj), pattern data that repeats “do, s, mi, s” is set.
However, recently, pattern data is sometimes created in consideration of chord progression. Particularly, in the “intro section” and the “ending section”, the melody is not performed at the same time, and therefore, a unique chord progression may be considered.
[0005]
FIG. 6 is an explanatory diagram showing an example of automatic accompaniment data generated by giving chord information to pattern data created in consideration of chord progression. This shows a case where a chord change is mistakenly performed during automatic accompaniment.
In FIG. 6A, the pattern data created by the code information (Cmaj) starts and continues as specified by the designation of the code information (Cmaj), and the code progression of the pattern data is I → IIm → V7 → I. Then, an automatic accompaniment having a flow of (Cmaj) → (Dm) → (G7) → (Cmaj) is output, reflecting the specified chord information (Cmaj).
On the other hand, in FIG. 6B, the original pattern data is the same as that in FIG. 6A, but the code information specified by (Cmaj) is first changed from the third measure to (Fmaj). This shows a case where the code has been changed.
By this chord change, each note of the pattern data is transposed up by four degrees according to the difference between the root (root note) of the original chord information (Cmaj) at the time of pattern data creation and the new chord information (Fmaj). You. In this example, since the chord change is of the same chord type, only transposition based on the root note is performed. As a result, the chord progression in the pattern data becomes (Cmaj) → (Dm) → (C7) → (Fmaj), and the output automatic accompaniment data is transposed during the automatic accompaniment of the section. You will hear it.
If this section is an intro section, if there is a chord change during automatic accompaniment, the intro section will end in a different key from the first. When the automatic accompaniment of the main section is started, the same chord information as the first chord information of the intro section is often specified. Thus, this time it will be transposed four degrees down. As a result, the transposition goes up and down, giving a restless impression, resulting in an unstable hearing.
[0006]
The above-described code change is not limited to a user operation error.
There is also a case where the information written in the score is erroneously input. That is, depending on the musical score, an intro performance musical score for the user to play and its chord information may be described. In the automatic accompaniment apparatus, automatic accompaniment is performed from the assigned intro section irrespective of the intro performance score described in the score. Therefore, when the user inputs a code specified in the score, the assigned intro is performed. You end up with a code specification that is not necessarily related to the section.
Alternatively, in an automatic performance of music data, there is a case where code information is included in a section to which an intro section is added in the music data. Further, there may be cases where different performance data is contained in a different track from the melody performance data. When performing the automatic accompaniment in the accompaniment style, a track containing performance data other than the melody is muted. However, even if this mute operation is performed, the chord information of the music data remains, and a chord specification not necessarily related to the accompaniment data of the intro section automatically created by the automatic accompaniment device will be performed.
[0007]
On the other hand, conventionally, with regard to the ending section, a chord sequencer has been known that does not accept a chord change while the ending section is valid, focusing on the fact that a change in chord progression is not desirable (see Patent Document 3). ).
If this technique is applied, a method is considered in which a code change is not accepted for a section designated by a user.
However, if the pattern data is created in consideration of the chord progression even in a section other than the designated section, it cannot be handled.
Conversely, the pattern data of the designated section may not originally take into account the chord progression, but rather may want to change the accompaniment by designating chord information by the user. In such a case, since the chord change is not accepted, desired accompaniment data cannot be obtained.
[0008]
[Patent Document 1]
JP-A-10-293586
[Patent Document 2]
Patent No. 3327188
[Patent Document 3]
Patent 2536525
[0009]
[Problems to be solved by the invention]
SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems, and has an automatic accompaniment apparatus capable of obtaining natural automatic accompaniment data even when second and subsequent chord information is supplied during automatic accompaniment of a section performance. It is intended to provide an automatic accompaniment program.
[0010]
[Means for Solving the Problems]
According to the present invention, according to the first aspect, an accompaniment style section instruction information supply unit that supplies information indicating an accompaniment style and a section of the accompaniment style, a code information supply unit that supplies code information, From a plurality of pattern data, pattern data is determined according to the accompaniment style supplied by the accompaniment style section instruction information supply means and information indicating a section of the accompaniment style, and the determined pattern data is An automatic accompaniment data generating means for generating automatic accompaniment data by reflecting the chord information supplied by the chord information supplying means; and a case where the pattern data determined by the automatic accompaniment data generating means does not take into account the chord progression. The code information supplied from the code information supply means, When the chord progression is taken into account while being reflected in the dynamic accompaniment data generation means, the first chord information supplied from the chord information supply means and effective at the start of the automatic accompaniment of the section is the automatic chord information. A code which is reflected on the accompaniment data generating means, but which does not reflect the second and subsequent chord information specified during the automatic accompaniment of the section supplied from the chord information supplying means on the automatic accompaniment data generating means. It has change control means.
Therefore, even if the chord information of the second and subsequent chords is supplied during the automatic accompaniment of the section, the chord progression is considered in the pattern data determined according to the accompaniment style and the information indicating the section of the accompaniment style. In this case, the chord information is ignored, so that automatic accompaniment data with a natural audibility can be obtained.
Since the above-described ignoring of the chord information is automatically performed, the user does not have to pay attention to the instruction of the accompaniment style and the section and the input of the chord information.
[0011]
According to a second aspect of the present invention, in the automatic accompaniment apparatus according to the first aspect, there is provided a chord change invalidation control information supply unit, and the chord change invalidation control information supply unit is provided with the automatic accompaniment data generation unit. When the pattern data determined in step (1) is one in which chord progression is taken into account, the chord change control means is controlled by the chord information supply means during the second and subsequent sections specified during the automatic accompaniment of the section. The control information for switching whether or not to reflect the chord information on the automatic accompaniment data generation means is supplied to the chord change control means.
Therefore, since the chord change can be made valid, even if the supply of the chord information is erroneous, the correct chord information is immediately supplied, so that the automatic accompaniment data is quickly restored.
In addition, when the chord progression is not considered in the pattern data of the section, the chord change is effective. Therefore, by supplying appropriate chord information by the user, it is possible to obtain a variety of automatic accompaniment data.
[0012]
According to a third aspect of the present invention, the automatic accompaniment apparatus according to the first aspect is realized in the form of a program for causing a computer to execute the automatic accompaniment apparatus. Similarly, the invention described in claim 2 can be realized in the form of a program to be executed by a computer.
[0013]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a functional configuration diagram for explaining an embodiment of the present invention.
The accompaniment style section instruction
In each accompaniment style, different pattern data is designated for each of a plurality of sections, such as main, intro, and ending.
The accompaniment style / section instruction
[0014]
The chord information supply unit 2 is for outputting an auto-accompaniment data reflecting the chord information to an auto-accompaniment data generation unit 4, which will be described later, as in the related art.
In this embodiment, the chord information is output to the automatic accompaniment data generation section 4 through the chord
In the code information supply unit 2, a user supplies code information in real time by a code information setting operator, for example.
Alternatively, a storage device prepared and stored in advance as sequence data of code information may be used.
Alternatively, an arbitrary part (usually, a melody part) in the music data is designated, and the apparatus may automatically analyze this part. The code information detected by the automatic analysis is supplied. In this case, in the intro section, the leading code information when the designated part is analyzed is adopted.
[0015]
The chord
That is, if the pattern data of each section determined by the automatic accompaniment data generation unit 4 described later in accordance with the information indicating the section of the accompaniment style is not one that takes into account the chord progression, the chord information supply unit 2 The supplied chord information is reflected on the automatic accompaniment data generation unit 4.
On the other hand, when the chord progression is considered, the first chord information supplied from the chord information supply unit 2 and effective at the start of the automatic accompaniment of each section is reflected in the automatic accompaniment data generation unit 4. The second and subsequent chord information specified during the automatic accompaniment of the section is not reflected.
Here, whether or not the pattern data of each section determined by the automatic accompaniment data generation unit 4 considers chord progression is determined for each section of the accompaniment style as described later with reference to FIG. The determination can be made by the included “chord progression presence / absence information” indicating whether or not the chord progression is considered, or by analyzing the pattern data of each section to determine whether or not the chord progression is considered.
[0016]
The first chord information valid at the start of the automatic accompaniment of each section is the same as in the related art, and the following two examples are considered as examples. However, arbitrary conditions can be determined as product specifications.
First is the first code information specified at or before the start of the section. Automatic accompaniment starts from the beginning of the section.
Second, even if no code information is specified until a certain section is started, the code information is the code information when the code information is first specified in the section. In this case, the automatic accompaniment of this section is started from the time when the chord information is first specified.
[0017]
The code
That is, when the pattern data determined by the automatic accompaniment data generation unit 4 takes into account the chord progression, the chord
[0018]
The automatic accompaniment data generator 4 may have the same configuration as that of the conventional one.
For example, referring to the pattern data of each section of a plurality of types of accompaniment style data files stored in the accompaniment style
Here, the reflection is to perform automatic accompaniment by converting the above-described pattern data so as to match the chord information, for example, to become a chord constituent sound.
[0019]
With the above configuration, if the chord progression is taken into account in the intro section of the accompaniment style, etc., the first chord information valid at the start of the automatic accompaniment of the section is reflected, but it is specified during the automatic accompaniment of the section Since the second and subsequent chord information is ignored, a natural accompaniment can be obtained.
On the other hand, when the chord change invalidation control information supply unit 6 turns off the chord change invalidation function of the chord
[0020]
FIG. 2 is an explanatory diagram showing an example of the data structure of the accompaniment style data file.
One certain accompaniment style 11 has a header section and a section section following the header section. The header portion includes data of the accompaniment style name, the time signature of the automatic accompaniment, the tempo of the automatic accompaniment, and the like. As described above, the section section is divided into a plurality of sections corresponding to sections automatically accompanied such as intro, main, and ending.
Each section 12 further includes setting information, pattern data, and part information on the parts making up each section. The setting information includes a section name, the number of measures in the section, and the like.
[0021]
The above-described pattern data is the pattern data of the note data that is the source of the actually generated automatic accompaniment data. It is described in a frequency format based on the tonality of a key, or a note data pattern of a certain key is described in MIDI (Musical Instrument Digital Interface).
The pattern data is converted so as to reflect the chord information specified by the chord
The pattern data includes one or more parts such as a rhythm part, a bass part, a chord part, a phrase part, and the like. Information on each part is described as part information. The part information includes a part name, an output channel, chord progress information, and other accompaniment data creation information.
As the accompaniment data creation information, for example, when the chord information is reflected on the pattern data, the range of the automatic accompaniment data is specified, and whether the pitch is shifted to a higher or lower direction is specified. I do.
The chord progression presence / absence information indicates whether or not the pattern data of the section 12 is created in consideration of chord progression, as described above. If it is not created in consideration of this, it is set to 0.
[0022]
In the illustrated example, the chord progression presence / absence information is described for each part. However, for example, in the base part and the chord part, the chord information is reflected in the automatic accompaniment data.
In the pattern data in which the chord progress is taken into account, the chord progress is usually taken into consideration for all the parts to which the chord information is reflected.
Therefore, it is not necessary to determine whether or not a section has pattern data in consideration of chord progression according to the chord progression presence / absence information of all parts to which the chord information is reflected. The determination can be made according to the progress information.
[0023]
Alternatively, in consideration of an error in creating an accompaniment style data file, an error in detecting chord progression information, and the like, at least one is 1, for example, based on chord progression information of all parts to which chord information is reflected. Alternatively, the determination may be made based on a criterion such as whether all are 1.
Also, the chord progression presence / absence information may be included not in the part information of each part but in the setting information of each section 12 as common to all parts.
Furthermore, if it is known in advance that a certain section 12 (for example, an intro section) of the accompaniment style to be used has pattern data in consideration of chord progression, this section is included in this section. On the other hand, invalidation control information may be supplied so as to uniformly invalidate a chord change in the middle of a section.
[0024]
FIG. 3 is a hardware configuration diagram for realizing one embodiment of the present invention.
A case will be described in which an electronic musical apparatus such as an electronic musical instrument realizes an automatic accompaniment function by executing a program.
In the figure, 21 is a bus, 22 is a CPU (Central Processing Unit), 23 is a ROM (Read Only Memory), and 24 is a RAM (Random Access Memory). A working area for the
[0025]
These controls are not limited to physical switching buttons and switches.
For example, a set accompaniment style and a list of sections used are presented on the
In addition, there are controls for controlling the start or end of the automatic accompaniment, controls for recording and reproduction of music data, and setting controls for setting sound source parameters.
The accompaniment style data file and the music data are stored in the
[0026]
A
28 is a sound source circuit and 29 is a sound system. The
[0027]
A
The accompaniment style data file and the music data file are downloaded from the
[0028]
The accompaniment style
[0029]
The
The generated automatic accompaniment data for each part is output to the
Further, it generates music score image data according to the music data or music score display data, and outputs it to the
The same automatic accompaniment function can be realized in a personal computer. An operation unit such as a keyboard and a mouse is used as the
[0030]
FIG. 4 is an explanatory diagram showing an example of the accompaniment style section and chord sequence data.
It consists of an intro section and a main section. The automatic accompaniment data generated by the intro section event and the first two chord events correspond to the specific example shown in FIG.
In the figure, the time (time) is indicated by a bar, a beat, and a clock, and only the accompaniment style section event and the chord event at each time are shown.
[0031]
At the first beat of the first bar, a chord event [Chord (Cmaj)] specifying (Cmaj) and a section event [StyleA / Section (Intro) 4Measure] specifying the intro section of style A with a bar width of 4 are generated. are doing. Therefore, the intro section is valid from the first bar to the end of the fourth bar.
At the first beat of the third bar, there is a chord event [Chord (Fmaj)] specifying (Fmaj). This code event occurs at a timing in the middle of the intro section.
At the first beat of the fifth bar, a chord event [Chord (Cmaj)] specifying (Cmaj) and a section event [StyleA / Section (Main) 12Measure] specifying the main section of style A with a bar width 12 occur. are doing. Therefore, the main section is valid from the fifth bar to the end of the sixteenth bar.
In the related art, pattern data is transposed and output during automatic accompaniment of an intro section by a chord event [Chord (Fmaj)] generated on the first beat of the third bar.
In this embodiment, if the intro section is a section considering the chord progression, the chord designation (Fmaj) generated at the first beat of the third measure generated within the section of the intro section is invalidated, and FIG. Instead of b), the accompaniment data of “Cmaj → Dm → G7 → Cmaj” as shown in FIG. 6A is generated.
[0032]
FIG. 5 is a flowchart for explaining an operation example of the embodiment of the present invention shown in FIG.
This is performed by the
In the figure, “Chord” and “Section” are event buffers indicating the code event and the section event at that time.
“CFlag” is a flag for controlling code change invalidation, and turns ON / OFF a function of invalidating a code change under predetermined conditions.
[0033]
First, an outline of the operation will be described.
When a code event is detected in S45, the processing of S52 to S59 is performed, and when a section event is detected in S46, the processing of S47 to S50 is performed. In S51, an automatic accompaniment playback process is performed based on "Chord" and "Section" at that time.
The on / off state of the chord change invalidating function is determined in S56, and the chord progression presence / absence information of the pattern data of each section of the accompaniment style is determined in S58.
In S53, the code event is written to “Chord”, while in S47, the section event is written to “Section”, so that the processing proceeds from S49 → S50 → S51, and “Chord” and “Section” are processed. Automatic accompaniment processing is performed based on the content. (First, the code event written to “Chord” in S53 is treated as the first valid code event in this section written to “Section” in S47).
In S55, when a code event after the end time of the current section is detected, the process proceeds from S57 to S43 (the code event written to “Chord” in S53 is first changed to “Section” in S47). When the next section event is detected (S44 → S45 → S46), the processing proceeds from S47 → S49 → S50 → S51, and at that time, “Chord” is detected. Automatic accompaniment processing is performed based on the contents of "" and "Section."
[0034]
Unlike the specific example shown in FIG. 4, when a code event is supplied for the first time after the intro section event has occurred, S44 → S45 → S46 → S47 → S49 → S43 → S44 → S45 → S52 (code counter Value = 1) → S53 → S54 → S55 → S56 (Example: when the chord change invalidation is instructed) → S58 (Example: When the chord progression information is 1) → S59 → S51 As a result, the automatic accompaniment playback processing of the intro section is started at the time when the chord event is supplied (the chord event written in S53 is replaced with the first chord valid in this section previously written in S47). Event, but only in the first section).
[0035]
Next, description will be made in order with reference to the specific example shown in FIG.
In S41, user settings are made, and in S42, counters, buffers, and the like are initialized.
One of the events supplied in S43 is read, and if there is any event in S44, the process proceeds to S45. While the event occurs, the processing is continued. However, when there is no event even after a lapse of a predetermined time due to the end of the sequence data, the stop of the user performance, or the like, the reproduction is ended.
In S45, it is determined whether or not the event is a code event. In S46, it is determined whether or not the event is a section event. If neither is, the process proceeds to S48, a process of reproducing other events is performed, and a process is performed in S43. Back.
In the specific example of FIG. 4, the code event [Chord (Cmaj)] is detected in the first bar, so the process proceeds to S52, the value of the code counter is set to 1, and in S53, [ Chord (Cmaj)].
In S54, it is determined whether or not the section event held in [Section] is in the initial state (section instruction information is not held). If the section event is in the initial state, the process returns to S43. The process proceeds to S55.
In the specific example shown in FIG. 4, the process returns to S43.
[0036]
Next, when proceeding from S43 to S45, a section event [Style A / Section (Intro)] of the first bar is detected, and in S47, this section event is supplied to "Section". If "Chord" is in the initial state (no code information is input) in S49, the process returns to S43.
However, since [Chord (Cmaj)] is already held in the "Chord" buffer in S53, the process proceeds to S50, and the value of the code counter is set to 1.
In S51, based on the pattern data corresponding to [StyleA · Section (Intro)] held in “Section”, automatic accompaniment data reflecting [Chord (Cmaj)] held in the “Chord” buffer is created. The process for reproduction is started, and the process returns to S43. The automatic accompaniment playback processing ends when the end time of each section comes.
[0037]
Next, when the process proceeds from S43 to S45, a chord event [Chord (Fmaj)] is detected in the third measure of FIG. In S52, the value of the code counter becomes 2, and in S53, [Chord (Fmaj)] is held in the "Chord" buffer. In S54, since “Section” is [Style A · Section (Intro)], the process proceeds to S55.
In S55, it is determined whether or not the code event time held in “Chord” is earlier than the end time of the section event held in the “Section” buffer, that is, whether or not the code information is supplied in the section of the section. judge.
The time (3: 1: 000) of the chord event held in “Chord” is the end time (5: 1: 000) of the section event held in “Section” (4 measures in the first measure of the start time). Before the addition, that is, since this code information is supplied within the section of the intro section, the process proceeds to S56.
In S56, it is determined whether or not a flag “CFlag” for controlling a code change invalidating function is ON. If it is OFF, the process proceeds to S51, and the automatic accompaniment data in which [Chord (Fmaj)] held in "Chord" is reflected in the pattern data of [Style A / Section (Intro)] held in "Section" Generate
[0038]
On the other hand, if the flag "CFlag" for controlling the code change invalidation function is ON, the process proceeds to S58, and determines whether or not the chord progression presence / absence information is 1, that is, [StyleA] held in "Section". It is determined whether or not the pattern data of [Section (Intro)] is created in consideration of chord progression.
If the chord progress information is 1, the process proceeds to S59, and it is determined whether or not the value of the chord counter is 1. If it is 1, the process proceeds to S51, but if it is not 1, the process returns to S43.
In the specific example of FIG. 4, since the current value of the code counter is 2, the process returns to S43. As a result, the chord event [Chord (Fmaj)] supplied during the automatic accompaniment of the section and held in “Chord” is not reflected in the automatic accompaniment playback processing in S51, so that the chord change invalidating function is executed.
[0039]
Next, the process proceeds from S43 to S45, and when a code event [Chord (Cmaj)] is detected at the fifth measure in FIG. 4, the value of the code counter is set to 3 in S52, and the value of ( Cmaj) is supplied, and the section proceeds to S55 since the section is not in the initial state in S54.
In S55, is the time (5: 1: 000) of the code event held in “Chord” earlier than the end time (5: 1: 000) of the effective period of the section event held in “Section”? Determine whether or not.
In the specific example of FIG. 4, since the times are the same, a code event has been supplied outside the valid section of the intro section. Therefore, it is determined that the current section is not a valid section, and the process proceeds to S57 and proceeds to “Section”. Is initialized, and the process returns to S43.
[0040]
Next, the process proceeds from S43 to S44, and when a section event [StyleA · Section (Main)] is detected at the fifth measure in FIG. 4, the process proceeds from S46 to S47, and [StyleA · Section (Main) is stored in the “Section” buffer. Main)], and in S49, since the “Chord” buffer is not in the initial state, the value of the code counter is set to 1 in S50, and the process proceeds to S51.
In S51, the automatic accompaniment reflecting the code event [Chord (Cmaj)] previously held in "Chord" in S53 in the pattern data of [Style A / Section (Main)] held in "Section". Generate data.
When the end time of the last section (the main section in the specific example shown in FIG. 4) comes, all the processing ends.
Although not shown in the specific example of FIG. 4, even when chord information is input during the automatic accompaniment of the main section, the flag "CFlag" for controlling the chord change invalidation function is ON in S56, and in S58 If the code progress information is 1, this code designation is invalidated.
[0041]
Therefore, when the chord change invalidation function is enabled, if the chord progression is considered in each section of the accompaniment style, the first chord information valid at the start of the automatic accompaniment of the section is reflected. However, the second and subsequent chord information specified during the automatic accompaniment is automatically ignored.
Since the chord change can be made valid, for example, when the first chord information in the section is changed to (Cmaj) and (Fmaj) is set and the accompaniment sound is heard and the user notices a mistake, the user By immediately turning off the chord change invalidation function and supplying correct chord information (Cmaj), the automatic accompaniment data can be restored.
In addition, when pattern data that does not consider the chord progression continues for a long time, the user can supply appropriate chord information one or more times to give the chord progression and obtain varied automatic accompaniment data. .
[0042]
In the above description, an example in which the present invention is applied to a dedicated electronic music device has been described. Here, the electronic music device is not limited to keyboard musical instruments such as electronic musical instruments and automatic performance pianos. It is not restricted to musical instrument forms such as electronic wind instruments and electronic string instruments.
Further, the present invention can be applied to a personal computer having a hardware sound source or a software sound source program installed, or a personal computer to which a device having a sound source function is externally connected.
The present invention can also be applied to a communication terminal such as a game machine or a mobile phone terminal, a PDA (Personal Digital Assistant), a home electric appliance, or the like, which has an automatic accompaniment function. The automatic accompaniment function can be realized by causing a built-in CPU to execute a control program. The automatic accompaniment device is not limited to one built in one main body, but each device is a separate device, and each device is connected using various networks, so that an integrated automatic accompaniment device can be obtained as a whole. Good.
[0043]
【The invention's effect】
As is clear from the above description, the present invention ignores the second and subsequent chord information specified during automatic accompaniment of a section when the pattern data of the accompaniment style section takes into account the chord progression. Therefore, there is an effect that natural automatic accompaniment data can be obtained.
[Brief description of the drawings]
FIG. 1 is a functional configuration diagram for explaining an embodiment of the present invention.
FIG. 2 is an explanatory diagram showing an example of a data structure of an accompaniment style data file.
FIG. 3 is a hardware configuration diagram that realizes an embodiment of the present invention.
FIG. 4 is an explanatory diagram showing an example of sequence data of accompaniment styles and chords.
FIG. 5 is a flowchart for explaining an operation example of the embodiment of the present invention shown in FIG. 1;
FIG. 6 is an explanatory diagram showing an example of automatic accompaniment data generated from pattern data created in consideration of chord progression.
[Explanation of symbols]
DESCRIPTION OF
Claims (3)
コード情報を供給するコード情報供給手段と、
複数のパターンデータの中から、前記伴奏スタイル・セクション指示情報供給手段により供給された伴奏スタイルおよび該伴奏スタイルのセクションを指示する情報に応じてパターンデータを決定し、決定されたパターンデータに、前記コード情報供給手段により供給されたコード情報を反映させて自動伴奏データを生成する自動伴奏データ生成手段と、
該自動伴奏データ生成手段において決定されたパターンデータが、コード進行を考慮されたものでないときは、前記コード情報供給手段から供給されるコード情報を前記自動伴奏データ生成手段に反映させるとともに、前記コード進行を考慮されたものであるときは、前記コード情報供給手段から供給される、前記セクションの自動伴奏開始時に有効な最初のコード情報は、前記自動伴奏データ生成手段に反映させるが、前記コード情報供給手段から供給される前記セクションの自動伴奏途中で指定される第2番目以降のコード情報は、前記自動伴奏データ生成手段に反映させないようにするコードチェンジ制御手段、
を有することを特徴とする自動伴奏装置。An accompaniment style section instruction information supplying means for supplying information indicating an accompaniment style and a section of the accompaniment style;
Code information supply means for supplying code information;
From a plurality of pattern data, pattern data is determined according to the accompaniment style supplied by the accompaniment style section instruction information supply means and information indicating a section of the accompaniment style, and the determined pattern data is Automatic accompaniment data generation means for generating automatic accompaniment data by reflecting the chord information supplied by the chord information supply means,
When the pattern data determined by the automatic accompaniment data generation means does not take into account the chord progression, the code information supplied from the chord information supply means is reflected on the automatic accompaniment data generation means, and When the progress is considered, the first chord information supplied from the chord information supply means and effective at the start of the automatic accompaniment of the section is reflected on the automatic accompaniment data generation means. Chord change control means for preventing the second and subsequent chord information specified during the automatic accompaniment of the section supplied from the supply means from being reflected in the automatic accompaniment data generating means;
An automatic accompaniment device comprising:
該コードチェンジ無効化制御情報供給手段は、前記自動伴奏データ生成手段において決定されたパターンデータが、コード進行を考慮されたものであるときに、前記コードチェンジ制御手段が、前記コード情報供給手段から供給される前記セクションの自動伴奏途中で指定される第2番目以降のコード情報を前記自動伴奏データ生成手段に反映させるか否かを切り替える制御情報を前記コードチェンジ制御手段に供給する、
ことを特徴とする請求項1に記載の自動伴奏装置。Code change invalidation control information supply means,
The chord change invalidation control information supply means, when the pattern data determined by the automatic accompaniment data generation means is one that takes into account chord progression, the chord change control means, from the chord information supply means Supplying to the chord change control means control information for switching whether or not to reflect the second and subsequent chord information specified during the supplied automatic accompaniment of the section in the automatic accompaniment data generating means;
The automatic accompaniment device according to claim 1, wherein:
コード情報を供給するコード情報供給ステップと、
複数のパターンデータの中から、前記伴奏スタイル・セクション指示情報供給ステップにより供給された伴奏スタイルおよび該伴奏スタイルのセクションを指示する情報に応じてパターンデータを決定し、決定されたパターンデータに、前記コード情報供給ステップにより供給されたコード情報を反映させて自動伴奏データを生成する自動伴奏データ生成ステップと、
該自動伴奏データ生成ステップにおいて決定されたパターンデータが、コード進行を考慮されたものでないときは、前記コード情報供給ステップから供給されるコード情報を前記自動伴奏データ生成ステップに反映させるとともに、前記コード進行を考慮されたものであるときは、前記コード情報供給ステップから供給される、前記セクションの自動伴奏開始時に有効な最初のコード情報は、前記自動伴奏データ生成ステップに反映させるが、前記コード情報供給ステップから供給される前記セクションの自動伴奏途中で指定される第2番目以降のコード情報は、前記自動伴奏データ生成ステップに反映させないようにするコードチェンジ制御ステップ、
をコンピュータに実行させることを特徴とする自動伴奏プログラム。Providing an accompaniment style and an accompaniment style section instruction information supplying step of supplying information indicating a section of the accompaniment style;
A code information supply step of supplying code information;
From a plurality of pattern data, pattern data is determined in accordance with the accompaniment style supplied in the accompaniment style section instruction information supplying step and information indicating a section of the accompaniment style, and the determined pattern data is An automatic accompaniment data generating step of generating automatic accompaniment data by reflecting the chord information supplied by the chord information supplying step;
When the pattern data determined in the automatic accompaniment data generation step does not take into account the chord progression, the code information supplied from the chord information supply step is reflected in the automatic accompaniment data generation step, and When the progress is considered, the first chord information supplied from the chord information supply step and effective at the start of the automatic accompaniment of the section is reflected in the automatic accompaniment data generation step. A chord change control step of preventing second and subsequent chord information specified during the automatic accompaniment of the section supplied from the supply step from being reflected in the automatic accompaniment data generation step;
An automatic accompaniment program characterized by causing a computer to execute the following.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003084361A JP3988668B2 (en) | 2003-03-26 | 2003-03-26 | Automatic accompaniment device and automatic accompaniment program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003084361A JP3988668B2 (en) | 2003-03-26 | 2003-03-26 | Automatic accompaniment device and automatic accompaniment program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004294595A true JP2004294595A (en) | 2004-10-21 |
JP3988668B2 JP3988668B2 (en) | 2007-10-10 |
Family
ID=33399549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003084361A Expired - Fee Related JP3988668B2 (en) | 2003-03-26 | 2003-03-26 | Automatic accompaniment device and automatic accompaniment program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3988668B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008191272A (en) * | 2007-02-01 | 2008-08-21 | Yamaha Corp | Player and program |
-
2003
- 2003-03-26 JP JP2003084361A patent/JP3988668B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008191272A (en) * | 2007-02-01 | 2008-08-21 | Yamaha Corp | Player and program |
Also Published As
Publication number | Publication date |
---|---|
JP3988668B2 (en) | 2007-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3707364B2 (en) | Automatic composition apparatus, method and recording medium | |
WO2015053278A1 (en) | Technique for reproducing waveform by switching between plurality of sets of waveform data | |
JP3915807B2 (en) | Automatic performance determination device and program | |
US11955104B2 (en) | Accompaniment sound generating device, electronic musical instrument, accompaniment sound generating method and non-transitory computer readable medium storing accompaniment sound generating program | |
JP2006126710A (en) | Playing style determining device and program | |
JP3988668B2 (en) | Automatic accompaniment device and automatic accompaniment program | |
JP3632536B2 (en) | Part selection device | |
JP3705144B2 (en) | Performance data change processing device | |
JP4003625B2 (en) | Performance control apparatus and performance control program | |
JP4802947B2 (en) | Performance method determining device and program | |
JP3620396B2 (en) | Information correction apparatus and medium storing information correction program | |
JP3777976B2 (en) | Performance information analyzing apparatus and recording medium | |
JP3752859B2 (en) | Automatic composer and recording medium | |
JP5104414B2 (en) | Automatic performance device and program | |
JP3747802B2 (en) | Performance data editing apparatus and method, and storage medium | |
JP3873880B2 (en) | Performance assist device and performance assist program | |
JP2000172267A (en) | Playing assistance apparatus and record medium for the same | |
JP4186802B2 (en) | Automatic accompaniment generator and program | |
JP3637782B2 (en) | Data generating apparatus and recording medium | |
JP3669301B2 (en) | Automatic composition apparatus and method, and storage medium | |
JP3738634B2 (en) | Automatic accompaniment device and recording medium | |
JPH1097256A (en) | Musical sound producing device and medium stored with program | |
JP2001350469A (en) | Device and method for deciding sounding length and recording medium | |
JP2003099039A (en) | Music data editing device and program | |
JP5560695B2 (en) | Program for realizing performance assist device and performance assist method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050224 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070123 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070326 |
|
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: 20070626 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070709 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110727 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110727 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120727 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130727 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |