(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-06
(45)【発行日】2022-12-14
(54)【発明の名称】自動演奏装置および自動演奏プログラム
(51)【国際特許分類】
G10H 1/00 20060101AFI20221207BHJP
G10H 1/36 20060101ALI20221207BHJP
G10H 1/18 20060101ALI20221207BHJP
【FI】
G10H1/00 102Z
G10H1/36
G10H1/18 Z
(21)【出願番号】P 2021543877
(86)(22)【出願日】2019-09-04
(86)【国際出願番号】 JP2019034874
(87)【国際公開番号】W WO2021044563
(87)【国際公開日】2021-03-11
【審査請求日】2021-12-09
(73)【特許権者】
【識別番号】000116068
【氏名又は名称】ローランド株式会社
(74)【代理人】
【識別番号】110000534
【氏名又は名称】弁理士法人真明センチュリー
(72)【発明者】
【氏名】永田 晃弘
(72)【発明者】
【氏名】萩野 孝明
【審査官】山下 剛史
(56)【参考文献】
【文献】国際公開第2012/074070(WO,A1)
【文献】特開2001-290474(JP,A)
【文献】特開平10-133661(JP,A)
【文献】特開2015-125344(JP,A)
【文献】特開2014-44386(JP,A)
【文献】特表2010-538335(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10H 1/00-1/46
(57)【特許請求の範囲】
【請求項1】
複数の演奏パターンを記憶する記憶手段と、
その記憶手段に記憶される演奏パターンに基づいて演奏を行う演奏手段と、
演奏者の演奏操作を受け付ける入力装置から演奏情報を入力する入力手段と、
前記演奏手段による演奏の切り替えを行うかのモードを設定する設定手段と、
その設定手段により前記演奏手段による演奏の切り替えを行うモードが設定されている場合に、前記入力手段に入力された演奏情報に基づいて、前記記憶手段に記憶された複数の演奏パターンのうち最尤推定された演奏パターンを選択する選択手段と、
前記演奏手段により演奏されている演奏パターンの音楽表現の少なくとも一つを、前記選択手段により選択された演奏パターンの音楽表現に切り替える切替手段とを備えていることを特徴とする自動演奏装置。
【請求項2】
前記選択手段は、前記設定手段により前記演奏手段による演奏の切り替えを行うモードが設定されている場合に、前記入力手段へ入力された演奏情報に基づいて、前記記憶手段に記憶される複数の演奏パターンを構成する各楽音の全て又は一部について、それぞれ尤度を算出する尤度算出手段を備え、
その尤度算出手段により算出された尤度に基づいて、前記記憶手段に記憶される複数の演奏パターンのうち1の演奏パターンを最尤推定することを特徴とする請求項1記載の自動演奏装置。
【請求項3】
前記尤度算出手段は、前記設定手段により前記演奏手段による演奏の音高の切り替えを行うモードが設定されている場合に、前記入力手段へ入力された演奏情報の音高に基づいて、前記記憶手段に記憶される複数の演奏パターンを構成する各楽音の全て又は一部について、それぞれ尤度を算出することを特徴とする請求項2記載の自動演奏装置。
【請求項4】
前記尤度算出手段は、前記設定手段により前記演奏手段による演奏のリズムの切り替えを行うモードが設定されている場合に、前記入力手段へ入力された演奏情報の拍位置に基づいて、前記記憶手段に記憶される複数の演奏パターンを構成する各楽音の全て又は一部について、それぞれ尤度を算出することを特徴とする請求項2又は3に記載の自動演奏装置。
【請求項5】
前記尤度算出手段は、前記設定手段により前記演奏手段による演奏のリズムの切り替えを行うモードが設定されている場合に、前記入力手段へ入力された前回の演奏情報と今回の演奏情報との入力間隔に基づいて、前記記憶手段に記憶される複数の演奏パターンを構成する各楽音の全て又は一部について、1の楽音の次に他の楽音が発せられる尤度をそれぞれ算出することを特徴とする請求項2から4のいずれかに記載の自動演奏装置。
【請求項6】
前記設定手段は、その設定状態を前記演奏者による演奏中に変更可能に構成されていることを特徴とする請求項1から5のいずれかに記載の自動演奏装置。
【請求項7】
記憶部を備えたコンピュータに、自動演奏を実行させる自動演奏プログラムにおいて、
前記記憶部を、複数の演奏パターンを記憶する記憶手段として機能させ、
その記憶手段に記憶される演奏パターンに基づいて演奏を行う演奏ステップと、
演奏者の演奏操作を受け付ける入力装置から演奏情報を入力する入力ステップと、
前記演奏ステップによる演奏の切り替えを行うかのモードを設定する設定ステップと、
その設定ステップにより前記演奏ステップによる演奏の切り替えを行うモードが設定されている場合に、前記入力ステップにより入力された演奏情報に基づいて、前記記憶手段に記憶された複数の演奏パターンのうち最尤推定された演奏パターンを選択する選択ステップと、
前記演奏ステップにより演奏されている演奏パターンの音楽表現の少なくとも一つを、前記選択ステップにより選択された演奏パターンの音楽表現に切り替える切替ステップと、を前記コンピュータに実現させることを特徴とする自動演奏プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、自動演奏装置および自動演奏プログラムに関するものである。
【背景技術】
【0002】
特許文献1には、自動伴奏データの検索装置が開示されている。該装置では、利用者がリズム入力装置10の鍵盤を押鍵すると、押鍵されたこと即ち演奏操作がなされたことを示すトリガーデータと、押鍵の強度即ち当該演奏操作の強度を示すベロシティデータとが、1小節を単位とした入力リズムパターンとして情報処理装置20へ入力される。
【0003】
情報処理装置20は、自動伴奏データを複数含んだデータベースを有している。自動伴奏データは、各々が固有のリズムパターンを持つ複数のパートで構成されている。情報処理装置20は、リズム入力装置10から入力リズムパターンを入力すると、その入力リズムパターンと同一又は類似したリズムパターンを持つ自動伴奏データを検索し、検索された自動伴奏データの名称等を一覧表示する。情報処理装置20は、その一覧表示から利用者によって選択された自動伴奏データに基づく音を出力する。
【0004】
このように特許文献1の装置では、自動伴奏データの選択に際し、利用者は、入力リズムパターンを入力した上で、一覧表示の中から所望の自動伴奏データを選択しなければならず、その選択操作が煩雑であった。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2012-234167号公報
【文献】特開2007-241181号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
これに対し本願出願人は、特願2018-096439号に記載した自動演奏装置及びそのプログラムを開発した(未公知)。該装置及びプログラムによれば、演奏者により演奏(入力)された演奏情報に基づいて、伴奏音やエフェクトの組み合わせである複数の出力パターンの中から出力パターンを推定し、該当する伴奏音やエフェクトを出力する。即ち演奏者の自由な演奏に応じて、その演奏に適合した伴奏音やエフェクトの自動演奏を行うことができる。
【0007】
しかしながら、該装置及びプログラムでは、演奏者による演奏(入力)に基づいて自動演奏を変化させるので、ソロ演奏を行う際にコードチェンジして欲しくない場合や、ドラム演奏などのリズムを一定にして演奏したい場合においても、これらが変化してしまうことがあるという問題点があった。
【0008】
本発明は、上記問題点を解決するためになされたものであり、演奏者の意志に応じて、演奏者の演奏に適合した自動演奏を行うことができる自動演奏装置および自動演奏プログラムを提供することを目的としている。
【課題を解決するための手段】
【0009】
この目的を達成するために本発明の自動演奏装置は、複数の演奏パターンを記憶する記憶手段と、その記憶手段に記憶される演奏パターンに基づいて演奏を行う演奏手段と、演奏者の演奏操作を受け付ける入力装置から演奏情報を入力する入力手段と、前記演奏手段による演奏の切り替えを行うかのモードを設定する設定手段と、その設定手段により前記演奏手段による演奏の切り替えを行うモードが設定されている場合に、前記入力手段に入力された演奏情報に基づいて、前記記憶手段に記憶された複数の演奏パターンのうち最尤推定された演奏パターンを選択する選択手段と、前記演奏手段により演奏されている演奏パターンの音楽表現の少なくとも一つを、前記選択手段により選択された演奏パターンの音楽表現に切り替える切替手段とを備えていることを特徴としている。
【0010】
ここで「入力装置」としては、例えば、自動演奏装置本体に搭載される鍵盤等のほか、自動演奏装置とは別体に構成された外部装置の鍵盤やキーボードなどを例示できる。
【0011】
本発明の自動演奏プログラムは、記憶部を備えたコンピュータに、自動演奏を実行させるものであり、前記記憶部を、複数の演奏パターンを記憶する記憶手段として機能させ、その記憶手段に記憶される演奏パターンに基づいて演奏を行う演奏ステップと、演奏者の演奏操作を受け付ける入力装置から演奏情報を入力する入力ステップと、前記演奏ステップによる演奏の切り替えを行うかのモードを設定する設定ステップと、その設定ステップにより前記演奏ステップによる演奏の切り替えを行うモードが設定されている場合に、前記入力ステップにより入力された演奏情報に基づいて、前記記憶手段に記憶された複数の演奏パターンのうち最尤推定された演奏パターンを選択する選択ステップと、前記演奏ステップにより演奏されている演奏パターンの音楽表現の少なくとも一つを、前記選択ステップにより選択された演奏パターンの音楽表現に切り替える切替ステップと、を前記コンピュータに実現させることを特徴としている。
【0012】
ここで「入力装置」としては、例えば、自動演奏プログラムが搭載されるコンピュータに有線接続又は無線接続されるキーボードや鍵盤等を例示できる。
【図面の簡単な説明】
【0013】
【
図1】一実施形態であるシンセサイザの外観図である。
【
図2】シンセサイザの電気的構成を示すブロック図である。
【
図3】(a)は、伴奏音の拍位置を説明するための模式図であり、(b)は、入力パターンの一例を表す表である。
【
図4】入力パターンの状態を説明するための表である。
【
図5】(a)は、入力パターンテーブルを模式的に示した図であり、(b)は、出力パターンテーブルを模式的に示した図である。
【
図6】(a)は、遷移ルートを説明するための図であり、(b)は、遷移ルート間尤度テーブルを模式的に示す図である。
【
図7】(a)は、ユーザ評価尤度テーブルを模式的に示した図であり、(b)は、音高尤度テーブルを模式的に示した図であり、(c)は、伴奏同期尤度テーブルを模式的に示した図である。
【
図8】(a)は、IOI尤度テーブルを模式的に示した図であり、(b)は、尤度テーブルを模式的に示した図であり、(c)は、前回尤度テーブルを模式的に示した図である。
【
図10】ユーザ評価反映処理のフローチャートである。
【
図12】入力パターン検索処理のフローチャートである。
【
図14】状態間尤度統合処理のフローチャートである。
【
図15】遷移間尤度統合処理のフローチャートである。
【
図16】ユーザ評価尤度統合処理のフローチャートである。
【発明を実施するための形態】
【0014】
以下、好ましい実施例について、添付図面を参照して説明する。
図1は、一実施形態であるシンセサイザ1の外観図である。シンセサイザ1は、演奏者(利用者)の演奏操作による楽音や、所定の伴奏音等を混ぜ合わせて出力(放音)する電子楽器(自動演奏装置)である。シンセサイザ1は、演奏者の演奏による楽音や、伴奏音等を混ぜ合わせた波形データに対して演算処理を行うことで、リバーブやコーラス、ディレイ等の効果(エフェクト)を施すことができる。
【0015】
図1に示す通り、シンセサイザ1には、主に鍵盤2と、ユーザ評価ボタン3と、設定キー50とが配設される。鍵盤2には、複数の鍵2aが配設され、演奏者の演奏による演奏情報を取得するための入力装置である。演奏者による鍵2aの押鍵/離鍵操作に応じたMIDI(Musical Instrument Digital Interface)規格の演奏情報が、CPU10(
図2参照)へ出力される。
【0016】
ユーザ評価ボタン3は、シンセサイザ1から出力される伴奏音やエフェクトに対する、演奏者の評価(高評価または低評価)をCPU10へ出力するボタンであり、演奏者の高評価を表す情報をCPU10へ出力する高評価ボタン3aと、演奏者の低評価を表す情報をCPU10へ出力する低評価ボタン3bとで構成される。演奏者にとって、シンセサイザ1から出力されている伴奏音やエフェクトが良い印象である場合は、高評価ボタン3aが押され、一方で、出力されている伴奏音やエフェクトがあまり良くない又は悪い印象である場合は、低評価ボタン3bが押される。そして、押された高評価ボタン3a又は低評価ボタン3bに応じた、高評価または低評価を表す情報がCPU10へ出力される。
【0017】
詳細は後述するが、本実施形態のシンセサイザ1には、伴奏音やエフェクトの組み合わせである複数の出力パターンの中から、演奏者による鍵2aからの演奏情報に基づいて出力パターンが推定され、該当する伴奏音やエフェクトが出力される。これによって、演奏者の自由な演奏に応じて、その演奏に適合した伴奏音やエフェクトの出力を行うことができる。その際に、演奏者によって高評価ボタン3aが多く押された伴奏音やエフェクトの出力パターンが、より優先的に選択される。これにより、演奏者の自由な演奏に応じて、その演奏に適合した伴奏音やエフェクトの出力を行うことができる。
【0018】
設定キー50は、シンセサイザ1への各種設定を入力するための操作子である。設定キー50によって特に、伴奏音に関する3つのモードのオン/オフが設定される。具体的には伴奏音を鍵盤2への入力に応じて切り換える伴奏変更設定のオン/オフや、伴奏音の切り替えに際し、拍位置や打鍵間隔(入力間隔)を考慮するかどうかを設定するリズム変更設定のオン/オフや、伴奏音の切り替えに際し、鍵盤2から入力される音高を考慮するかどうかを設定する音高変更設定のオン/オフが設定される。
【0019】
次に、
図2~
図8を参照して、シンセサイザ1の電気的構成を説明する。
図2は、シンセサイザ1の電気的構成を示すブロック図である。シンセサイザ1は、CPU10と、フラッシュROM11と、RAM12と、鍵盤2と、ユーザ評価ボタン3と、音源13と、Digital Signal Processor14(以下「DSP14」と称す)と、設定キー50とを有し、それぞれバスライン15を介して接続される。DSP14にはデジタルアナログコンバータ(DAC)16が接続され、そのDAC16にはアンプ17が接続され、アンプ17にはスピーカ18が接続される。
【0020】
CPU10は、バスライン15により接続された各部を制御する演算装置である。フラッシュROM11は書き換え可能な不揮発性のメモリであり、制御プログラム11aと、入力パターンテーブル11bと、出力パターンテーブル11cと、遷移ルート間尤度テーブル11dと、ユーザ評価尤度テーブル11eとが設けられる。波形データ23aには鍵盤2を構成する、各鍵に対応する波形データが記憶される。CPU10によって制御プログラム11aが実行されると、
図9のメイン処理が実行される。
【0021】
入力パターンテーブル11bは、演奏情報と、その演奏情報に合致する入力パターンとが記憶されるデータテーブルである。ここで、本実施形態のシンセサイザ1における伴奏音の拍位置と状態とパターン名とについて、
図3を参照して説明する。
【0022】
図3(a)は、伴奏音の拍位置を説明するための模式図である。本実施形態のシンセサイザ1は、伴奏音とエフェクトとの組み合わせである出力パターンが複数記憶され、各出力パターンには、その出力パターンに対応する一連の拍位置および音高からなる入力パターンが設定される。演奏者による鍵2aからの演奏情報と、各入力パターンの拍位置および音高とに基づいて、演奏者による鍵2aからの演奏情報に「尤もらしい」入力パターンが推定され、該入力パターンに対応する出力パターンの伴奏音とエフェクトとが出力される。以下、入力パターンと出力パターンとの組み合わせを「パターン」と称す。
【0023】
本実施形態では、
図3(a)に示す通り、各出力パターンにおける伴奏音の演奏時間は、4分の4拍子における2小節分の長さとされる。この2小節分の長さを16分音符の長さで等分した(即ち、32等分した)拍位置B1~B32が、時間的位置の1単位とされる。なお、
図3(a)の時間ΔTは16分音符の長さを表している。かかる拍位置B1~B32に対して、それぞれの出力パターンの伴奏音やエフェクトに対応する音高を配置したものが入力パターンとされる。かかる入力パターンの一例を
図3(b)に示す。
【0024】
図3(b)は、入力パターンの一例を表す表である。
図3(b)に示す通り、入力パターンにはそれぞれ、拍位置B1~B32に対する音高(ド、レ、ミ、・・・)が設定される。ここで、パターンP1,P2,・・・は、入力パターンと後述の出力パターンとを対応付けるための識別名である。
【0025】
入力パターンには、ある拍位置B1~B32に対して単一の音高だけが設定されるのでなく、2以上の音高の組み合わせも指定できる。本実施形態では、2以上の音高が同時に入力されることを指定する場合には、その拍位置B1~B32に対して、該当する音高名が「&」で連結される。例えば、
図3(b)における入力パターンP3の拍位置B5では、音高「ド&ミ」が指定されるが、これは「ド」と「ミ」とが同時に入力されることが指定されている。
【0026】
また、拍位置B1~B32に対して、いずれかの音高(所謂、ワイルドカード音高)の入力されることも指定できる。本実施形態では、ワイルドカード音高が入力されることを指定する場合には、その拍位置B1~B32に対して「〇」が指定される。例えば、
図3(b)における入力パターンP2の拍位置B7では、ワイルドカード音高の入力が指定されているので、「〇」が指定されている。
【0027】
なお、入力パターンにおいて、演奏情報の入力が指定される拍位置B1~B32に対して音高が定義され、一方で、演奏情報の入力が指定されない拍位置B1~B32に対して音高は定義されない。
【0028】
本実施形態では、入力パターンに対する拍位置B1~B32と音高との組み合わせを管理するため、これらの組み合わせを1の「状態」として定義する。かかる入力パターンに対する状態を、
図4を参照して説明する。
【0029】
図4は、入力パターンの状態を説明するための表である。
図4に示す通り、入力パターンP1の拍位置B1から順に、音高が指定されている拍位置B1~B32に対して、状態J1,J2,・・・が定義される。具体的には、入力パターンP1の拍位置B1が状態J1,入力パターンP1の拍位置B5が状態J2,・・・,入力パターンP1の拍位置B32が状態J8と定義され、入力パターンP2の拍位置B1が状態J8に続いて、状態J9と定義される。以下、状態J1,J2,・・・に対して、特に区別しない場合は「状態Jn」と略す。
【0030】
図2における入力パターンテーブル11bには、状態Jn毎に、該当する入力パターンのパターン名と、拍位置B1~B32と、音高とが記憶される。かかる入力パターンテーブル11bについて、
図5(a)を参照して説明する。
【0031】
図5(a)は、入力パターンテーブル11bを模式的に示した図である。入力パターンテーブル11bは、シンセサイザ1で指定可能な音楽ジャンル(ロックやポップ、ジャズ等)に対して、状態Jn毎に、該当する入力パターンのパターン名と、拍位置B1~B32と、音高とが記憶されるデータテーブルである。本実施形態において、入力パターンテーブル11bには音楽ジャンル毎の入力パターンが記憶され、入力パターンテーブル11bの中から、選択された音楽ジャンルに応じた入力パターンが参照される。
【0032】
具体的には、音楽ジャンル「ロック」に該当する入力パターンが入力パターンテーブル11brとされ、音楽ジャンル「ポップ」該当する入力パターンが入力パターンテーブル11bpとされ、音楽ジャンル「ジャズ」に該当する入力パターンが入力パターンテーブル11bjとされ、その他の音楽ジャンルについても、同様に入力パターンが記憶される。以下、入力パターンテーブル11bにおける入力パターンテーブル11bp,11br,11bj・・・について、特に区別しない場合は「入力パターンテーブル11bx」と称す。
【0033】
鍵2aからの演奏情報が入力された場合、その演奏情報の拍位置および音高と、選択されている音楽ジャンルに該当する入力パターンテーブル11bxの拍位置および音高とから「尤もらしい」状態Jnが推定され、該状態Jnから入力パターンが取得され、該入力パターンのパターン名に該当する出力パターンの伴奏音およびエフェクトが出力される。
【0034】
図2に戻る。出力パターンテーブル11cは、パターン毎の伴奏音とエフェクトとの組み合わせである出力パターンが記憶されるデータテーブルである。かかる出力パターンテーブル11cについて、
図5(b)を参照して説明する。
【0035】
図5(b)は、出力パターンテーブル11cを模式的に示した図である。入力パターンテーブル11bと同様に、出力パターンテーブル11cにも音楽ジャンル毎の出力パターンが記憶される。具体的には、出力パターンテーブル11cのうち、音楽ジャンル「ロック」該当する出力パターンが出力パターンテーブル11crとされ、音楽ジャンル「ポップ」該当する出力パターンが出力パターンテーブル11cpとされ、音楽ジャンル「ジャズ」該当する出力パターンが出力パターンテーブル11cjとされ、その他の音楽ジャンルについても、出力パターンが記憶される。以下、出力パターンテーブル11cの出力パターンテーブル11cp,11cr,11cj・・・について、特に区別しない場合は「出力パターンテーブル11cx」と称す。
【0036】
出力パターンテーブル11cxには、出力パターン毎に、伴奏音としてのドラムのリズムパターンが記憶されるドラムパターン、ベースのリズムパターンが記憶されるベースパターン、コード(和音)の進行が記憶されるコード進行およびアルペジオの進行が記憶されるアルペジオ進行と、エフェクトの態様が記憶されるエフェクトと、伴奏音や演奏者による鍵2aからの演奏情報に基づく楽音の音量/ベロシティ値が記憶される音量/ベロシティと、演奏者による鍵2aからの演奏情報に基づく楽音の音色が記憶される音色とが設けられる。
【0037】
ドラムパターンとしては、それぞれ異なるドラムの演奏情報であるドラムパターンDR1,DR2,・・・が予め設定され、出力パターン毎にドラムパターンDR1,DR2,・・・が設定される。また、ベースパターンとしては、それぞれ異なるドラムの演奏情報であるベースパターンBa1,Ba2,・・・が予め設定され、出力パターン毎にベースパターンBa1,Ba2,・・・が設定される。
【0038】
コード進行としては、それぞれ異なるコード進行による演奏情報であるコード進行Ch1,Ch2・・・が予め設定され、出力パターン毎にコード進行Ch1,Ch2・・・が設定される。また、アルペジオ進行としては、それぞれ異なるアルペジオ進行による演奏情報であるアルペジオ進行AR1,AR2・・・が予め設定され、出力パターン毎にアルペジオ進行AR1,AR2・・・が設定される。
【0039】
伴奏音として出力パターンテーブル11cxに記憶される、ドラムパターンDR1,DR2,・・・,ベースパターンBa1,Ba2,・・・,コード進行Ch1,Ch2・・・及びアルペジオ進行AR1,AR2・・・の演奏時間は、上述した通り2小節分の長さとされる。かかる2小節分の長さは音楽表現において一般的な単位でもあるので、同一のパターンが継続され、伴奏音が繰り返し出力される場合でも、演奏者や聴衆にとって違和感の無い伴奏音とすることができる。
【0040】
エフェクトとしては、それぞれ異なる態様のエフェクトEf1,Ef2,・・・が予め設定され、出力パターン毎にエフェクトEf1,Ef2,・・・が設定される。音量/ベロシティとして、それぞれ異なる値の音量/ベロシティVe1,Ve2,・・・が予め設定され、出力パターン毎に音量/ベロシティVe1,Ve2,・・・が設定される。また、音色として、それぞれ異なる楽器等による音色Ti1,Ti2,・・・が予め設定され、それぞれ出力パターン毎に音色Ti1,Ti2,・・・が設定される。
【0041】
また、選択された出力パターンに設定されている音色Ti1,Ti2,・・・に基づいて鍵2aからの演奏情報に基づく楽音が出力され、選択された出力パターンに設定されているエフェクトEf1,Ef2,・・・及び音量/ベロシティVe1,Ve2,・・・が、鍵2aからの演奏情報に基づく楽音および伴奏音に対して適用される。
【0042】
図2に戻る。遷移ルート間尤度テーブル11dは、状態Jn間の遷移ルートRmと、その遷移ルートRmの拍位置B1~B32間の距離である拍距離と、遷移ルートRmに対するパターン遷移尤度および打ち損ない尤度とが記憶されるデータテーブルである。ここで、遷移ルートRm及び遷移ルート間尤度テーブル11dについて、
図6を参照して説明する。
【0043】
図6(a)は、遷移ルートRmを説明するための図であり、
図6(b)は、遷移ルート間尤度テーブル11dを模式的に示す図である。
図6(a)の横軸は拍位置B1~B32を示している。
図6(a)に示す通り、時間経過により、拍位置が拍位置B1から拍位置B32へ進行するとともに、各パターンにおける状態Jnも変化していく。本実施形態では、かかる状態Jn間の遷移において、想定される状態Jn間の経路が予め設定される。以下、予め設定された状態Jn間の遷移に対する経路のことを「遷移ルートR1,R2,R3,・・・」と称し、これらを特に区別しない場合は「遷移ルートRm」と称す。
【0044】
図6(a)では、状態J3に対する遷移ルートを示している。状態J3への遷移ルートとして、大きく分けて状態J3と同一のパターン(即ちパターンP1)の状態Jnから遷移する場合と、状態J3とは異なるパターンの状態Jnから遷移する場合との2種類が設定される。
【0045】
状態J3と同一のパターンP1における、状態Jnからの遷移として、直前の状態である状態J2から状態J3へ遷移する遷移ルートR3と、状態J3の2つ前の状態である状態J1からの遷移ルートである遷移ルートR2とが設定される。即ち、本実施形態では、同一のパターン間における状態Jnへの遷移ルートとして、直前の状態Jnから遷移する遷移ルートと、2つ前の状態から遷移する「音飛び」の遷移ルートとの、多くとも2の遷移ルートが設定される。
【0046】
一方で、状態J3とは異なるパターンの状態Jnから遷移する遷移ルートとして、パターンP2の状態J11から状態J3へ遷移する遷移ルートR8と、パターンP3の状態J21から状態J3へ遷移する遷移ルートR15と、パターンP10の状態J74から状態J3へ遷移する遷移ルートR66等が挙げられる。即ち、別パターン間における状態Jnへの遷移ルートとして、その遷移元である別パターンの状態Jnが、遷移先の状態Jnの拍位置の直前のものである遷移ルートが設定される。
【0047】
図6(a)で例示した遷移ルート以外にも、状態J3への遷移ルートRmが複数設定される。また、状態J3と同様に、各状態Jnに対しても1又は複数の遷移ルートRmが設定される。
【0048】
鍵2aからの演奏情報に基づいて「尤もらしい」状態Jnが推定され、その状態Jnに該当する入力パターンに対応する出力パターンによる伴奏音やエフェクトが出力される。本実施形態では、状態Jn毎に設定される、鍵2aからの演奏情報と状態Jnとの「尤もらしさ」を表す数値である尤度に基づいて、状態Jnが推定される。本実施形態では、状態Jnに対する尤度が、状態Jnそのものに基づく尤度や、遷移ルートRmに基づく尤度、あるいは、パターンに基づく尤度を統合することで算出される。
【0049】
遷移ルート間尤度テーブル11dxに記憶される、パターン遷移尤度および打ち損ない尤度は、遷移ルートRmに基づく尤度である。具体的に、まずパターン遷移尤度は、遷移ルートRmに対する遷移元の状態Jnと、遷移先の状態Jnとが同一パターンであるかどうかを表す尤度である。本実施形態では、遷移ルートRmの遷移元と遷移先との状態Jnが同一パターンである場合は、パターン遷移尤度に「1」が設定され、遷移ルートRmの遷移元と遷移先との状態Jnが別のパターンである場合は、パターン遷移尤度に「0.5」が設定される。
【0050】
例えば、
図6(b)において、遷移ルートR3は、遷移元がパターンP1の状態J2であり、遷移先が同じくパターンP1の状態J3なので、遷移ルートR3のパターン遷移尤度には「1」が設定される。一方で、遷移ルートR8は、遷移元がパターンP2の状態J11であり、遷移先がパターンP1の状態J3なので、遷移ルートR8は異なるパターン間の遷移ルートである。従って、遷移ルートR8のパターン遷移尤度には「0.5」が設定される。
【0051】
パターン遷移尤度に対して、同一のパターンに対する遷移ルートRmのパターン遷移尤度の方が、別パターンに対する遷移ルートRmのパターン遷移尤度よりも大きな値が設定される。これは、実際の演奏においては別パターンへ遷移する確率よりも、同一パターンに留まる確率の方が高いからである。従って、同一パターンへの遷移ルートRmにおける遷移先の状態Jnの方が、別パターンへの遷移ルートRmにおける遷移先の状態Jnよりも優先的に推定されることで、別パターンへの遷移が抑制され、出力パターンが頻繁に変更されることを抑制できる。これにより、伴奏音やエフェクトが頻繁に変更されることが抑制できるので、演奏者や聴衆に違和感の少ない伴奏音やエフェクトとできる。
【0052】
また、遷移ルート間尤度テーブル11dxに記憶される打ち損ない尤度は、遷移ルートRmに対する遷移元の状態Jnと、遷移先の状態Jnとが同一のパターンであり、なおかつ遷移元の状態Jnが遷移先の状態Jnよりも2つ前の状態Jnであるかどうか、即ち、遷移ルートRmに対する遷移元の状態Jnと、遷移先の状態Jnとが音飛びによる遷移ルートであるかどうかを表す尤度である。本実施形態では、遷移ルートRmの遷移元と遷移先との状態Jnが音飛びによる遷移ルートRmに対しては、打ち損ない尤度に「0.45」が設定され、音飛びによる遷移ルートRmではない場合は、打ち損ない尤度に「1」が設定される。
【0053】
例えば、
図6(b)において、遷移ルートR1は、同一のパターンP1における隣接した状態J1と状態J2との遷移ルートであり、音飛びによる遷移ルートではないので、打ち損ない尤度に「1」が設定される。一方で、遷移ルートR2は、遷移先である状態J3が、遷移元の状態J1よりも2つ先の状態であるので、打ち損ない尤度に「0.45」が設定される。
【0054】
上述した通り、同一パターンにおいては、遷移先の状態Jnの2つ前の状態Jnを遷移元の状態Jnとした、音飛びによる遷移ルートRmも設定される。実際の演奏においては、音飛びによる遷移が発生する確率は、通常の遷移が発生する確率よりも低い。そこで、音飛びによる遷移ルートRmの打ち損ない尤度の方が、音飛びでない通常の遷移ルートRmの打ち損ない尤度よりも小さな値を設定することで、実際の演奏と同様に、音飛びによる遷移ルートRmの遷移先の状態Jnよりも、通常の遷移ルートRmの遷移先の状態Jnを優先して推定することができる。
【0055】
また、
図6(b)に示す通り、遷移ルート間尤度テーブル11dには、シンセサイザ1に指定される各音楽ジャンルに対して、遷移ルートRm毎に、その遷移ルートRmの遷移元の状態Jnと、遷移先の状態Jnと、パターン遷移尤度と、打ち損ない尤度とが対応付けられて記憶される。本実施形態では、遷移ルート間尤度テーブル11dも音楽ジャンル毎に遷移ルート間尤度テーブルが記憶され、音楽ジャンル「ロック」に該当する遷移ルート間尤度テーブルが遷移ルート間尤度テーブル11drとされ、音楽ジャンル「ポップ」に該当する遷移ルート間尤度テーブルが遷移ルート間尤度テーブル11dpとされ、音楽ジャンル「ジャズ」に該当する遷移ルート間尤度テーブルが遷移ルート間尤度テーブル11djとされ、その他の音楽ジャンルについても、遷移ルート間尤度テーブルが定義される。以下、遷移ルート間尤度テーブル11dにおける遷移ルート間尤度テーブル11dp,11dr,11dj、・・・について、特に区別しない場合は「遷移ルート間尤度テーブル11dx」と称す。
【0056】
図2に戻る。ユーザ評価尤度テーブル11eは、演奏者による演奏中の出力パターンに対する評価結果を記憶するデータテーブルである。
【0057】
ユーザ評価尤度は、
図1で上述したユーザ評価ボタン3からの入力に基づいて、パターン毎に設定される尤度である。具体的には、出力中の伴奏音やエフェクトに対して、演奏者がユーザ評価ボタン3の高評価ボタン3a(
図1)が押された場合は、出力中の伴奏音やエフェクトに該当するパターンのユーザ評価尤度に対して「0.1」が加算される。一方で、出力中の伴奏音やエフェクトに対して、演奏者がユーザ評価ボタン3の低評価ボタン3b(
図1)が押された場合は、出力中の伴奏音やエフェクトに該当するパターンのユーザ評価尤度に対して「0.1」が減算される。
【0058】
即ち、演奏者にとって、高評価を受けた伴奏音やエフェクトのパターンには、より大きなユーザ評価尤度が設定され、低評価を受けた伴奏音やエフェクトのパターンには、より小さなユーザ評価尤度が設定される。そして、パターンに該当する状態Jnの尤度に対してユーザ評価尤度が適用され、その状態Jn毎のユーザ評価尤度に基づいて鍵2aからの演奏情報に対する状態Jnが推定される。従って、演奏者によってより高評価を受けたパターンによる伴奏音やエフェクトが優先的に出力されるので、演奏者の演奏に対する好みに基づいた伴奏音やエフェクトを、より確率良く出力できる。
図7(a)を参照して、ユーザ評価尤度が記憶されるユーザ評価尤度テーブル11eについて説明する。
【0059】
図7(a)は、ユーザ評価尤度テーブル11eを模式的に示した図である。ユーザ評価尤度テーブル11eは、音楽ジャンル(ロックやポップ、ジャズ等)に対して、パターン毎に、演奏者の評価に基づくユーザ評価尤度が記憶されるデータテーブルである。本実施形態では、ユーザ評価尤度テーブル11eのうち、音楽ジャンル「ロック」に該当するユーザ評価尤度テーブルがユーザ評価尤度テーブル11erとされ、音楽ジャンル「ポップ」該当するユーザ評価尤度テーブルがユーザ評価尤度テーブル11epとされ、音楽ジャンル「ジャズ」に該当するユーザ評価尤度テーブルがユーザ評価尤度テーブル11ejとされ、その他の音楽ジャンルについても、ユーザ評価尤度テーブルが定義される。以下、ユーザ評価尤度テーブル11eにおけるユーザ評価尤度テーブル11ep,11er,11ej・・・について、特に区別しない場合は「ユーザ評価尤度テーブル11ex」と称す。
【0060】
図2に戻る。RAM12は、CPU10が制御プログラム11a等のプログラム実行時に各種のワークデータやフラグ等を書き換え可能に記憶するメモリであり、演奏者によって選択された音楽ジャンルが記憶される選択ジャンルメモリ12aと、推定されたパターンが記憶される選択パターンメモリ12bと、推定された遷移ルートRmが記憶される遷移ルートメモリ12cと、テンポメモリ12dと、前回鍵2aが押鍵されたタイミングから今回鍵2aが押鍵されたタイミングまでの時間(即ち、打鍵間隔)が記憶されるIOIメモリ12eと、音高尤度テーブル12fと、伴奏同期尤度テーブル12gと、IOI尤度テーブル12hと、尤度テーブル12iと、前回尤度テーブル12jとを有している。
【0061】
テンポメモリ12dは、伴奏音の1拍当たりの実時間が記憶されるメモリである。以下、伴奏音の1拍当たりの実時間を「テンポ」と称し、かかるテンポに基づいて、伴奏音が演奏される。
【0062】
音高尤度テーブル12fは、鍵2aからの演奏情報の音高と、状態Jnの音高との関係を表す尤度である、音高尤度が記憶されるデータテーブルである。本実施形態では、音高尤度として、鍵2aからの演奏情報の音高と、入力パターンテーブル11bx(
図5(a))の状態Jnの音高とが完全一致している場合は「1」が設定され、部分一致している場合は「0.54」が設定され、不一致の場合は「0.4」が設定される。鍵2aからの演奏情報が入力された場合に、かかる音高尤度が全状態Jnに対して設定される。
【0063】
図7(b)には、
図5(a)の音楽ジャンル「ロック」の入力パターンテーブル11brにおいて、鍵2aからの演奏情報の音高として「ド」が入力された場合を例示している。入力パターンテーブル11brにおける状態J1と状態J74との音高は「ド」なので、音高尤度テーブル12fにおける状態J1と状態J74との音高尤度には、「1」が設定される。また、入力パターンテーブル11brにおける状態J11の音高はワイルドカード音高なので、いずれの音高が入力されても完全一致したとされる。従って、音高尤度テーブル12fにおける状態J11との音高尤度にも「1」が設定される。
【0064】
入力パターンテーブル11brにおける状態J2の音高は「レ」であり、鍵2aからの演奏情報の音高の「ド」とは不一致なので、音高尤度テーブル12fにおける状態J2には「0.4」が設定される。また、入力パターンテーブル11brにおける状態J21の音高は「ド&ミ」であり、鍵2aからの演奏情報の音高の「ド」とは部分一致するので、音高尤度テーブル12fにおける状態J21には「0.54」が設定される。このように設定された音高尤度テーブル12fに基づいて、鍵2aからの演奏情報の音高に最も近い音高の状態Jnが推定できる。
【0065】
図2に戻る。伴奏同期尤度テーブル12gは、鍵2aからの演奏情報が入力された2小節におけるタイミングと、状態Jnにおける拍位置B1~B32との関係を表す尤度である、伴奏同期尤度が記憶されるデータテーブルである。
図7(c)を参照して、伴奏同期尤度テーブル12gを説明する。
【0066】
図7(c)は、伴奏同期尤度テーブル12gを模式的に示した図である。
図7(c)に示す通り、伴奏同期尤度テーブル12gには、各状態Jnに対する伴奏同期尤度が記憶される。本実施形態では、伴奏同期尤度は、鍵2aからの演奏情報が入力された2小節間におけるタイミングと、入力パターンテーブル11bxに記憶される状態Jnの拍位置B1~B32との差から、後述の数式2のガウス分布に基づいて算出される。
【0067】
具体的には、鍵2aからの演奏情報が入力されたタイミングとの差が小さい拍位置B1~B32の状態Jnには、大きな値の伴奏同期尤度が設定され、一方で、鍵2aからの演奏情報が入力されたタイミングとの差が大きい拍位置B1~B32の状態Jnには、小さな値の伴奏同期尤度が設定される。このように設定された伴奏同期尤度テーブル12gの伴奏同期尤度に基づき、鍵2aからの演奏情報に対する状態Jnを推定することで、鍵2aからの演奏情報が入力されたタイミングに、最も近い拍位置の状態Jnが推定できる。
【0068】
図2に戻る。IOI尤度テーブル12hは、IOIメモリ12eに記憶される打鍵間隔と、遷移ルート間尤度テーブル11dxに記憶される遷移ルートRmの拍距離との関係を表す、IOI尤度が記憶されるデータテーブルである。
図8(a)を参照して、IOI尤度テーブル12hについて説明する。
【0069】
図8(a)は、IOI尤度テーブル12hを模式的に示した図である。
図8(a)に示す通り、IOI尤度テーブル12hには、各遷移ルートRmに対するIOI尤度が記憶される。本実施形態では、IOI尤度は、IOIメモリ12eに記憶される打鍵間隔と、遷移ルート間尤度テーブル11dxに記憶される遷移ルートRmの拍距離とから、後述の数式1にて算出される。
【0070】
具体的には、IOIメモリ12eに記憶される打鍵間隔との差が小さい拍距離の遷移ルートRmには、大きな値のIOI尤度が設定され、一方で、IOIメモリ12eに記憶される打鍵間隔との差が大きい拍距離の遷移ルートRmには、小さな値のIOI尤度が設定される。このように設定された遷移ルートRmのIOI尤度に基づいて、該遷移ルートRmの遷移先の状態Jnを推定することで、IOIメモリ12eに記憶される打鍵間隔に最も近い拍距離とされる遷移ルートRmに基づいた状態Jnを推定できる。
【0071】
図2に戻る。尤度テーブル12iは、上述したパターン遷移尤度、打ち損ない尤度、ユーザ評価尤度、音高尤度、伴奏同期尤度およびIOI尤度を、状態Jn毎に統合した結果の尤度を記憶するデータテーブルであり、前回尤度テーブル12jは、尤度テーブル12iの記憶された状態Jn毎の尤度の、前回値を記憶するデータテーブルである。尤度テーブル12i及び前回尤度テーブル12jについて、
図8(b),
図8(c)を参照して説明する。
【0072】
図8(b)は、尤度テーブル12iを模式的に示した図であり、
図8(c)は、前回尤度テーブル12jを模式的に示した図である。
図8(b)に示す通り、尤度テーブル12iには、状態Jn毎にそれぞれ、パターン遷移尤度、打ち損ない尤度、ユーザ評価尤度、音高尤度、伴奏同期尤度およびIOI尤度を統合した結果が記憶される。これらの尤度のうち、パターン遷移尤度、打ち損ない尤度およびIOI尤度は、遷移先の状態Jnに対応する遷移ルートRmの各尤度が統合され、ユーザ評価尤度は、該当する状態Jnに対するパターンのユーザ評価尤度が統合される。また、
図8(c)に示す前回尤度テーブル12jには、前回の処理で統合され、尤度テーブル12iに記憶された各状態Jnの尤度が記憶される。
【0073】
図2に戻る。音源13は、CPU10から入力される演奏情報に応じた波形データを出力する装置である。DSP14は、音源13から入力された波形データを演算処理するための演算装置である。DSP14によって、音源13から入力された波形データに対して、選択パターンメモリ12bで指定された出力パターンのエフェクトが適用される。
【0074】
DAC16は、DSP14から入力された波形データを、アナログ波形データに変換する変換装置である。アンプ17は、該DAC16から出力されたアナログ波形データを、所定の利得で増幅する増幅装置であり、スピーカ18は、アンプ17で増幅されたアナログ波形データを楽音として放音(出力)する出力装置である。
【0075】
次に、
図9~
図16を参照して、CPU10で実行されるメイン処理について説明する。
図9は、メイン処理のフローチャートである。メイン処理は、シンセサイザ1の電源投入時に実行される。
【0076】
メイン処理では、まず演奏者によって選択された音楽ジャンルを、選択ジャンルメモリ12aへ保存する(S1)。具体的には、演奏者によるシンセサイザ1の音楽ジャンル選択ボタン(図示しない)に対する操作によって、音楽ジャンルが選択され、その音楽ジャンルの種類が選択ジャンルメモリ12aへ保存される。
【0077】
なお、音楽ジャンル毎に記憶される、入力パターンテーブル11b、出力パターンテーブル11c、遷移ルート間尤度テーブル11d又はユーザ評価尤度テーブル11eに対して、この選択ジャンルメモリ12aに記憶される音楽ジャンルに該当する入力パターンテーブル11bx、出力パターンテーブル11cx、遷移ルート間尤度テーブル11dx又はユーザ評価尤度テーブル11exが参照されるが、以下では「選択ジャンルメモリ12aに記憶されている音楽ジャンル」のことを「該当音楽ジャンル」と表現する。
【0078】
S1の処理の後、演奏者からのスタート指示があるかどうかを確認する(S2)。スタート指示は、シンセサイザ1に設けられるスタートボタン(図示しない)が選択された場合に、CPU10へ出力される。演奏者からのスタート指示がされない場合は(S2:No)、スタート指示を待機するためにS2の処理を繰り返す。
【0079】
演奏者からのスタート指示がされた場合は(S2:Yes)、該当音楽ジャンルの先頭の出力パターンに基づいて、伴奏を開始する(S3)。具体的には、該当音楽ジャンルの出力パターンテーブル11cx(
図5(b))の先頭の出力パターン、即ち、パターンP1の出力パターンのドラムパターン、ベースパターン、コード進行、アルペジオ進行、エフェクト、音量/ベロシティ及び音色に基づいて、伴奏音の演奏が開始される。この際、選択された出力パターンに規定されているテンポがテンポメモリ12dに記憶され、該テンポに基づいて伴奏音が演奏される。
【0080】
S3の処理の後、S3の処理による、音楽ジャンルにおけるパターンP1の出力パターンに基づいた伴奏音の開始に伴い、選択パターンメモリにパターンP1を設定する(S4)。
【0081】
S4の処理の後、ユーザ評価反映処理を実行する(S5)。ここで、
図10を参照して、ユーザ評価処理を説明する。
【0082】
図10は、ユーザ評価反映処理のフローチャートである。ユーザ評価反映処理はまず、ユーザ評価ボタン3(
図1参照)が押されたかを確認する(S20)。ユーザ評価ボタン3が押された場合は(S20:Yes)、更に、高評価ボタン3aが押されたかを確認する(S21)。
【0083】
S21の処理において、高評価ボタン3aが押された場合は(S21:Yes)、ユーザ評価尤度テーブル11eにおける、選択パターンメモリ12bに記憶されるパターンに該当するユーザ評価尤度に、0.1を加算する(S22)。なお、S22の処理で、加算後のユーザ評価尤度が1より大きくなった場合は、ユーザ評価尤度に1が設定される。
【0084】
一方で、S21の処理において、低評価ボタン3bが押された場合は(S21:No)、ユーザ評価尤度テーブル11eにおける、選択パターンメモリ12bに記憶されるパターンに該当するユーザ評価尤度から、0.1を減算する(S23)。なお、S23の処理で、減算後のユーザ評価尤度が0より小さくなった場合は、ユーザ評価尤度に0が設定される。
【0085】
また、S20の処理においてユーザ評価ボタン3が押されていない場合は(S20:No)、S21~S23の処理をスキップする。そして、S20,S22,S23の処理の後、ユーザ評価反映処理を終了し、メイン処理へ戻る。
【0086】
図9に戻る。S5のユーザ評価反映処理の後、キー入力、即ち、鍵2aからの演奏情報が入力されたかを確認する(S6)。S6の処理において、鍵2aからの演奏情報が入力された場合は(S6:Yes)、キー入力処理を実行する(S100)。ここで、
図11~
図16を参照して、キー入力処理を説明する。
【0087】
図11は、キー入力処理のフローチャートである。キー入力処理はまず、設定キー50(
図1,
図2)の設定状態を確認し、伴奏変更設定がオンかを確認する(S101)。S101の処理において、伴奏変更設定がオンである場合は(S101:Yes)、入力パターン検索処理を実行する(S7)。ここで、
図12を参照して入力パターン検索処理を説明する。
【0088】
図12は、入力パターン検索処理のフローチャートである。入力パターン検索処理では、まず、尤度算出処理を行う(S30)。
図13を参照して、尤度算出処理を説明する。
【0089】
図13は、尤度算出処理のフローチャートである。尤度算出処理ではまず、設定キー50の設定状態を確認し、リズム変更設定がオンかを確認する(S110)。S110の処理において、リズム変更設定がオンの場合は(S110:Yes)、前回の鍵2aからの演奏情報の入力がされた時刻と、今回鍵2aからの演奏情報の入力がされた時刻との差から、鍵2aからの演奏情報の入力の時間差、即ち、打鍵間隔を算出し、IOIメモリ12eへ保存する(S50)。
【0090】
S50の処理の後、IOIメモリ12eの打鍵間隔と、テンポメモリ12dのテンポと、該当音楽ジャンルの遷移ルート間尤度テーブル11dxにおける各遷移ルートRmの拍距離とから、IOI尤度を算出し、IOI尤度テーブル12hへ保存する(S51)。具体的には、IOIメモリ12eの打鍵間隔をx,テンポメモリ12dのテンポをVm,遷移ルート間尤度テーブル11dxに記憶される、ある遷移ルートRmの拍距離をΔτとすると、IOI尤度Gは数式1のガウス分布によって算出される。
【0091】
【数1】
ここで、σは数式1のガウス分布における標準偏差を表す定数であり、予め実験等によって算出された値が設定される。かかるIOI尤度Gが、全遷移ルートRmに対して算出され、その結果がIOI尤度テーブル12hに記憶される。即ち、IOI尤度Gは数式1のガウス分布に従うので、IOIメモリ12eの打鍵間隔との差が小さい拍距離を持つ遷移ルートRm程、大きな値のIOI尤度Gが設定される。
【0092】
S51の処理の後、鍵2aからの演奏情報が入力された時刻に該当する拍位置と該当音楽ジャンルの入力パターンテーブル11bxの拍位置とから伴奏同期尤度を算出し、伴奏同期尤度テーブル12gへ保存する(S52)。具体的には、鍵2aからの演奏情報が入力された時刻を、2小節単位における拍位置に変換したものをtp,該当音楽ジャンルの入力パターンテーブル11bxの拍位置τとすると、伴奏同期尤度Bは、数式2のガウス分布によって算出される。
【0093】
【数2】
ここで、ρは数式2のガウス分布における標準偏差を表す定数であり、予め実験等によって算出された値が設定される。かかる伴奏同期尤度Bが、全状態Jnに対して算出され、その結果が伴奏同期尤度テーブル12gに記憶される。即ち、伴奏同期尤度Bは数式2のガウス分布に従うので、鍵2aからの演奏情報が入力された時刻に該当する拍位置との差が小さい拍位置を持つ状態Jn程、大きな値の伴奏同期尤度Bが設定される。
【0094】
一方で、S110の処理において、リズム変更設定がオフの場合は(S110:No)、S50~S52の処理をスキップする。S52,S110の処理の後、設定キー50の設定状態を確認し、音高変更設定がオンかを確認する(S111)。
【0095】
S110の処理において、音高変更設定がオンの場合は(S111:Yes)、鍵2aからの演奏情報の音高から、状態Jn毎に音高尤度を算出し、音高尤度テーブル12fへ保存する(S53)。
図7(b)で上述した通り、鍵2aからの演奏情報の音高と、該当音楽ジャンルの入力パターンテーブル11bxの各状態Jnの音高とを比較して、完全に一致する状態Jnに対しては、音高尤度テーブル12fにおける該当する状態Jnの音高尤度に「1」が設定され、部分的に一致する状態Jnに対しては、音高尤度テーブル12fにおける該当する状態Jnの音高尤度に「0.54」が設定され、不一致である状態Jnに対しては、音高尤度テーブル12fにおける該当する状態Jnの音高尤度に「0.4」が設定される。
【0096】
一方で、S111の処理において、音高変更設定がオフの場合は(S111:No)、S53の処理をスキップする。S53,S111の処理の後、尤度算出処理を終了し、
図12の入力パターン検索処理へ戻る。
【0097】
図12に戻る。S30の尤度算出処理の後、状態間尤度統合処理を実行する(S31)。ここで、
図14を参照して、状態間尤度統合処理を説明する。
【0098】
図14は、状態間尤度統合処理のフローチャートである。この状態間尤度統合処理では、
図13の尤度算出処理で算出された各尤度から、状態Jn毎に尤度を算出する処理である。状態間尤度統合処理は、まず、カウンタ変数nに1を設定する(S60)。以下、状態間尤度統合処理における「状態Jn」の「n」はカウンタ変数nを表し、例えば、カウンタ変数nが1である場合の状態Jnは、「状態J1」を表す。
【0099】
S60の処理の後、前回尤度テーブル12jに記憶される尤度の最大値と、音高尤度テーブル12fにおける状態Jnの音高尤度と、伴奏同期尤度テーブル12gにおける状態Jnの伴奏同期尤度とから、状態Jnにおける尤度を算出し、尤度テーブル12iに保存する(S61)。具体的には、前回尤度テーブル12jに記憶される尤度の最大値をLp_M,音高尤度テーブル12fにおける状態Jnの音高尤度をPi_n,伴奏同期尤度テーブル12gにおける状態Jnの伴奏同期尤度をB_nとし、状態Jnにおける尤度L_nの対数である対数尤度log(L_n)は、数式3のViterbiアルゴリズムによって算出される。
【0100】
【数3】
ここで、αは伴奏同期尤度Bnに対するペナルティ定数、即ち、状態Jnへ遷移しない場合を考慮した定数であり、予め実験等によって算出された値が設定される。数式3により算出された対数尤度log(L_n)から対数を外した尤度L_nが、尤度テーブル12iの状態Jnに該当するメモリ領域に記憶される。
【0101】
尤度L_nは、前回尤度テーブル12jに記憶される尤度の最大値LpMと、音高尤度Pi_nと、伴奏同期尤度Bnとの積によって算出される。ここで、各尤度は0以上1以下の値を取るので、これらの積を行った場合はアンダーフローを引き起こす虞がある。そこで、尤度Lp_M,Pi_n及びB_nのそれぞれの対数を取ることで、尤度Lp_M,Pi_n及びB_nの積の計算を、尤度Lp_M,Pi_n及びB_nの対数の和の計算に変換することができる。そして、その算出結果である対数尤度log(L_n)の対数を外して尤度L_nを算出することで、アンダーフローが抑制された精度の高い尤度L_nとできる。
【0102】
S61の後、カウンタ変数nに1を加算し(S62)、加算されたカウンタ変数nが、状態Jnの数よりも大きいかを確認する(S63)。S63の処理において、カウンタ変数nが、状態Jnの数以下である場合は、S61の処理以下を繰り返す。一方で、カウンタ変数nが、状態Jnの数より大きい場合は(S63:Yes)、状態間尤度統合処理を終了して、
図12の入力パターン検索処理に戻る。
【0103】
図12に戻る。S31の状態間尤度統合処理の後、遷移間尤度統合処理を実行する(S32)。
図15を参照して、遷移間尤度統合処理を説明する。
【0104】
図15は、遷移間尤度統合処理のフローチャートである。遷移間尤度統合処理では、
図13の尤度算出処理で算出された各尤度と、予め設定されている遷移ルート間尤度テーブル11dのパターン遷移尤度および打ち損ない尤度とから、各遷移ルートRmの遷移先の状態Jnに対する尤度を算出する処理である。
【0105】
遷移間尤度統合処理は、まず、カウンタ変数mに1を設定する(S70)。以下、遷移間尤度統合処理における「遷移ルートRm」の「m」はカウンタ変数mを表し、例えば、カウンタ変数mが1である場合の、遷移ルートRmは「遷移ルートR1」を表す。
【0106】
S70の処理の後、前回尤度テーブル12jにおける遷移ルートRmの遷移元の状態Jnの尤度と、IOI尤度テーブル12hにおける遷移ルートRmのIOI尤度と、該当音楽ジャンルの遷移ルート間尤度テーブル11dxにおけるパターン遷移尤度および打ち損ない尤度と、音高尤度テーブル12fにおける遷移ルートRmの遷移先の状態Jnの音高尤度と、伴奏同期尤度テーブル12gにおける遷移ルートRmの遷移先の状態Jnの伴奏同期尤度とに基づいて、尤度を算出する(S71)。
【0107】
具体的に、前回尤度テーブル12jにおける遷移ルートRmの遷移元の状態Jnの前回尤度をLp_mb,IOI尤度テーブル12hにおける遷移ルートRmのIOI尤度をI_m,該当音楽ジャンルの遷移ルート間尤度テーブル11dxにおけるパターン遷移尤度をPs_m,該当音楽ジャンルの遷移ルート間尤度テーブル11dxにおける打ち損ない尤度をMs_mとし、音高尤度テーブル12fにおける遷移ルートRmの遷移先の状態Jnの音高尤度をPi_mfと、伴奏同期尤度テーブル12gにおける遷移ルートRmの遷移先の状態Jnの伴奏同期尤度をB_mfとし、尤度Lの対数である対数尤度log(L)は、数式4のViterbiアルゴリズムによって算出される。
【0108】
【数4】
ここで、数式4において尤度Lp_mb,I_m,Ps_m,Ms_m,Pi_mf及びB_mfそれぞれの対数の和によって対数尤度log(L)を算出するのは、上記した数式3と同様に、尤度Lに対するアンダーフローを抑制するためである。そして、かかる数式4で算出された対数尤度log(L)から対数を外すことで、尤度Lが算出される。
【0109】
S71の処理の後、S70の処理で算出された尤度Lが、尤度テーブル12iにおける遷移ルートRmの遷移先の状態Jnの尤度よりも大きいかを確認する(S72)。S72の処理において、S70の処理で算出された尤度Lが、尤度テーブル12iにおける遷移ルートRmの遷移先の状態Jnの尤度よりも大きい場合は、尤度テーブル12iにおける遷移ルートRmの遷移先の状態Jnに該当するメモリ領域に、S70の処理で算出された尤度Lを保存する(S73)。
【0110】
一方で、S72の処理において、S70の処理で算出された尤度Lが、尤度テーブル12iにおける遷移ルートRmの遷移先の状態Jnの尤度以下の場合は(S72:No)、S73の処理をスキップする。
【0111】
S72,S73の処理の後、カウンタ変数mに1を加算し(S74)、その後、カウンタ変数mが遷移ルートRmの数より大きいかを確認する(S75)。S75の処理において、カウンタ変数mが遷移ルートRmの数以下の場合は(S75:No)、S71の処理以下を繰り返し、カウンタ変数mが遷移ルートRmの数より大きい場合は(S75:Yes)、遷移間尤度統合処理を終了し、
図12の入力パターン検索処理に戻る。
【0112】
即ち、遷移間尤度統合処理では、前回尤度テーブル12jにおける遷移ルートRmの遷移元の状態Jnの前回尤度Lp_mbを基準として、遷移ルートRmにおける遷移先の状態Jnに対する尤度が算出される。これは、状態Jnの遷移は、遷移元の状態Jnに依存するからである。即ち、前回尤度Lp_mbが大きな状態Jnが、今回における遷移元の状態Jnである確率が高いと推定され、逆に前回尤度Lp_mbが小さな状態Jnが、今回における遷移元の状態Jnである確率が低いと推定される。そこで、遷移ルートRmにおける遷移先の状態Jnに対する尤度を、前回尤度Lp_mbを基準に算出することで、状態Jn間の遷移関係を考慮に入れた精度の高い尤度とできる。
【0113】
一方で、遷移間尤度統合処理で算出される尤度は状態Jn間の遷移関係に依存されるので、例えば、伴奏の演奏が開始された直後に鍵盤2の演奏情報が入力された場合や、鍵盤2の演奏情報の入力間隔が極度に大きい場合等、遷移元の状態Jn及び遷移先の状態Jnが、該当音楽ジャンルの入力パターンテーブル11bxに該当しないケースも考えられる。かかる場合は、状態Jn間の遷移関係に基づいて遷移間尤度統合処理で算出される尤度は、いずれも小さな値となる。
【0114】
ここで、
図14で上述した状態間尤度統合処理では、状態Jn毎に設定される音高尤度と伴奏同期尤度とから尤度が算出されるので、遷移ルートRmには依存しない。よって、該当音楽ジャンルの入力パターンテーブル11bxの遷移元の状態Jn及び遷移先の状態Jnに該当しないケースでは、状態間尤度統合処理で算出される状態Jnの尤度の方が、遷移間尤度統合処理で算出される状態Jnの尤度よりも大きくなる。この場合は、尤度テーブル12iには、状態間尤度統合処理で算出された尤度が記憶されたままとされる。
【0115】
従って、遷移間尤度統合処理による前回尤度Lp_mbに基づく尤度の算出と、状態間尤度統合処理によるその時点での鍵2aの演奏情報に基づく尤度とを組み合わせることで、状態Jn間に遷移関係がある場合であっても、遷移関係が乏しい場合であっても、それぞれ場合に応じて、適切に状態Jnの尤度を算出することができる。
【0116】
図12に戻る。S32の遷移間尤度統合処理の後、ユーザ評価尤度統合処理を実行する(S33)。ここで、
図16を参照して、ユーザ評価尤度統合処理を説明する。
【0117】
図16は、ユーザ評価尤度統合処理のフローチャートである。ユーザ評価尤度統合処理はまず、カウンタ変数nに1を設定する(S80)。以下、ユーザ評価尤度統合処理も、
図14の状態間尤度統合処理と同様に、「状態Jn」の「n」はカウンタ変数nを表す。例えば、カウンタ変数nが1である場合の状態Jnは、「状態J1」を表す。
【0118】
S80の処理の後、ユーザ評価尤度テーブル11eから、状態Jnに該当するパターンのユーザ評価尤度を取得し、尤度テーブル12iの状態Jnにおける尤度に加算する(S81)。S81の処理の後、カウンタ変数nに1を加算し(S82)、そのカウンタ変数nが状態Jnの総数よりも大きいか確認する(S83)。S83の処理において、カウンタ変数nが状態Jnの総数以下の場合は(S83:No)、S81の処理以下を繰り返す。一方で、カウンタ変数nが状態Jnの総数よりも大きい場合は(S83:Yes)、ユーザ評価尤度統合処理を終了し、
図12の入力パターン検索処理へ戻る。
【0119】
ユーザ評価尤度統合処理によって、ユーザ評価尤度が尤度テーブル12iに反映される。即ち、演奏者による出力パターンに対する評価が尤度テーブル12iに反映される。従って、演奏者の評価が高い出力パターンの状態Jn程、尤度テーブル12iの尤度が大きくなるので、推定される出力パターンを演奏者の評価に応じたものとできる。
【0120】
図12に戻る。S33のユーザ評価統合処理の後、尤度テーブル12iにおける最大値の尤度を取る状態Jnを取得し、その状態Jnに該当するパターンを該当音楽ジャンルの入力パターンテーブル11bxから取得して選択パターンメモリ12bに保存する(S34)。即ち、鍵2aからの演奏情報に最尤な状態Jnが尤度テーブル12iから取得され、その状態Jnに該当するパターンが取得される。これにより、鍵2aからの演奏情報に最尤なパターンを選択することができる。
【0121】
S34の処理の後、尤度テーブル12iにおける最大値の尤度が、S32の遷移間尤度統合処理で更新されたかを確認する(S35)。即ち、S34の処理でパターンの決定に用いられた状態Jnの尤度が、
図15のS71~S73の処理による前回尤度Lp_mbに基づく尤度によって、更新されたかを確認する。
【0122】
S35の処理において、尤度テーブル12iにおける最大値の尤度が、遷移間尤度統合処理で更新された場合には(S35:Yes)、尤度テーブル12iにおける最大値の尤度を取る状態Jnと、前回尤度テーブル12jにおける最大値の尤度を取る状態Jnとから、今回の遷移ルートRmを取得し、遷移ルートメモリ12cへ保存する(S36)。具体的には、尤度テーブル12iにおける最大値の尤度を取る状態Jnと、前回尤度テーブル12jにおける最大値の尤度を取る状態Jnとを、該当音楽ジャンルの遷移ルート間尤度テーブル11dxの遷移先の状態Jnと遷移元の状態Jnとで検索し、これら状態Jnが一致する遷移ルートRmが、該当音楽ジャンルの遷移ルート間尤度テーブル11dxから取得され、遷移ルートメモリ12cへ保存される。
【0123】
S36の処理の後、遷移ルートメモリ12cの遷移ルートRmにおける拍距離と、IOIメモリ12eの打鍵間隔とからテンポを算出し、テンポメモリ12dに保存する(S37)。具体的には、遷移ルートメモリ12cの遷移ルートRmに一致する、該当音楽ジャンルの遷移ルート間尤度テーブル11dxの遷移ルートRmにおける拍距離をΔτ,IOIメモリ12eの打鍵間隔をx、テンポメモリ12dに記憶されている現在のテンポをVmbとすると、更新後のテンポVmは数式5によって算出される。
【0124】
【数5】
ここで、γは0<γ<1の定数であり、実験等により予め設定される値である。
【0125】
即ち、S34の処理でパターンの決定に用いられた、尤度テーブル12iの最大値の尤度がS32の遷移間尤度統合処理で更新されたので、鍵2aによる前回および今回の入力は、前回尤度テーブル12jの最大値の尤度を取る状態Jnと、尤度テーブル12iの最大値の尤度を取る状態Jnとの遷移ルートRmでの遷移であったと推定される。
【0126】
そこで、かかる遷移ルートRmの拍距離と、鍵2aによる前回および今回の入力による打鍵間隔とから、伴奏音のテンポを変更することで、実際の演奏者による鍵2aの打鍵間隔に基づいた違和感の少ない伴奏音とすることができる。
【0127】
S35の処理において、尤度テーブル12iにおける最大値の尤度が遷移間尤度統合処理で更新されなかった場合は(S35:No)、S36,S37の処理をスキップする。即ち、かかる場合、尤度テーブル12iにおける最大値の尤度は、S31の状態間統合処理によって算出されたので、最大値の尤度を取る状態Jnは遷移ルートRmには依存しないものと推定される。
【0128】
この場合に、S36の状態Jnによる遷移ルートRmの検索を行っても、一致する遷移ルートRmが取得できない虞や、仮に遷移ルートRmが取得できたとしても、誤った遷移ルートRmが取得される虞がある。このような遷移ルートRmが正しく取得できない状態で、S37によるテンポ更新処理を行っても、算出されたテンポは不正確である虞がある。そこで、尤度テーブル12iにおける最大値の尤度が遷移間尤度統合処理で更新されなかった場合に、S36,S37の処理をスキップすることで、不正確なテンポが伴奏音に適用されるのを抑制できる。
【0129】
S35,S37の処理の後、前回尤度テーブル12jへ尤度テーブル12iの値を設定し(S38)、S38の処理の後、入力パターン検索処理を終了して、
図11のキー入力処理へ戻る。
【0130】
図11へ戻る。S7の入力パターン検索処理の後、選択パターンメモリ12bのパターンと、該当音楽ジャンルの出力パターンテーブル11cxとに基づいて、伴奏音を変更する(S8)。具体的には、該当音楽ジャンルの出力パターンテーブル11cxにおける、選択パターンメモリ12bのパターンに該当するドラムパターン、ベースパターン、コード進行およびアルペジオ進行に基づいて、伴奏音が変更される。この際に、入力パターン検索処理(
図12)におけるS37の処理で、テンポが更新された場合は、伴奏音のテンポも更新されたテンポメモリ12dのテンポに設定される。
【0131】
即ち、鍵2aからの演奏情報が入力される毎に、その演奏情報と最尤な状態Jnが推定され、その状態Jnに該当する出力パターンによる伴奏音やエフェクトが出力される。従って、演奏者の自由な演奏に応じて、その演奏に適合した伴奏音やエフェクトを切り替えて出力することができる。更に、かかる切り替えに対する演奏者のシンセサイザ1への操作が不要となるので、演奏者のシンセサイザ1に対するユーザビリティが向上し、演奏者は鍵2a等に対する演奏動作に、より集中することができる。
【0132】
S101の処理において、伴奏変更設定がオフの場合は(S101:No)、S7,S8の処理をスキップする。S8,S101の処理の後、鍵2aの演奏情報に基づいて、楽音を出力し(S9)、キー入力処理を終了する。この際に、鍵2aの演奏情報に基づく楽音の音色は、該当音楽ジャンルの出力パターンテーブル11cxにおける、選択パターンメモリ12bのパターンに該当する音色とされ、かかる楽音に対して、該当音楽ジャンルの出力パターンテーブル11cxにおける、選択パターンメモリ12bのパターンに該当する音量/ベロシティ及びエフェクトが適用されて出力される。鍵2aの演奏情報に基づく楽音へのエフェクトは、音源13から出力された、かかる楽音の波形データが、DSP14で処理されることで適用される。
【0133】
また、伴奏変更設定がオンの場合は、S7の入力パターン検索処理やS8の処理によって、鍵2aからの演奏情報に応じて随時伴奏音のリズムや音高が切り替わる。一方で、伴奏変更設定がオフの場合は、S7,S8の処理がスキップされるので、鍵2aからの演奏情報が変化しても、伴奏音のリズムや音高が切り替わらない。これにより、演奏者の意志に応じて伴奏変更設定を変更することで、演奏者の演奏に適合した態様の伴奏音を出力できる。
【0134】
更に伴奏変更設定がオンの場合は、
図13の尤度算出処理においてリズム変更設定および音高変更設定に基づき、算出される尤度を切り換えることでより詳細に伴奏音の態様を変更できる。
【0135】
具体的に、
図13においてリズム変更設定がオンの場合は、鍵2aへの入力に対するリズム、即ち打鍵間隔や拍位置に関するIOI尤度テーブル12hや伴奏同期尤度テーブル12gが更新されるので、鍵2aの演奏情報に応じて伴奏音のリズムが切り替えることができる。一方でリズム変更設定がオフの場合は、リズムに関するIOI尤度テーブル12h及び伴奏同期尤度テーブル12gが更新されないので、鍵2aの演奏情報に関わらず伴奏音のリズムが固定される。これにより、伴奏音のリズムを一定にした状態で、S9の処理による鍵2aに応じた楽音を出力できるので、例えば、伴奏音のリズムから意図的にタイミングを外しながら鍵2aに応じた演奏ができる等、伴奏音のリズムに関して表現豊かな演奏ができる。
【0136】
また音高変更設定がオンの場合は、鍵2aの音高に関する音高尤度テーブル12fが更新されるので、鍵2aの演奏情報に応じて伴奏音のコード進行が変更され、伴奏音の音高を切り替えることができる。一方で、音高変更設定がオフの場合は、音高尤度テーブル12fが更新されないので、鍵2aの演奏情報に関わらず伴奏音のコード進行が固定される。これにより、伴奏音のコード進行を一定にした状態で、鍵2aに応じた楽音が出力できるので、例えば、鍵2aに応じた楽音でソロ演奏をする場合に、伴奏音のコード進行が変化しないことで、そのソロ演奏を際立たせることができる等、伴奏音のコード進行に関して表現豊かな演奏ができる。
【0137】
更に、これら伴奏変更設定、リズム変更設定および音高変更設定は、設定キー50(
図1,
図2)によって設定される。これにより、演奏中に演奏者の意志によって設定キー50を操作し、伴奏変更設定、リズム変更設定及び音高変更設定を適宜変更することで、伴奏音の態様を容易かつ素早く変更できる。
【0138】
図9に戻る。S100のキー入力処理の後は、S5以下の処理を繰り返す。
【0139】
また、S6の処理において、鍵2aからの演奏情報の入力がなかった場合は(S6:No)、更に、鍵2aからの演奏情報の入力が、6小節以上なかったかを確認する(S10)。S10の処理において、鍵2aからの演奏情報の入力が、6小節以上なかった場合(S10:Yes)、該当音楽ジャンルのエンディングパートに移行する(S11)。即ち、演奏者による演奏が6小節以上なかった場合は、演奏が終了したと推定される。かかる場合に、該当音楽ジャンルのエンディングパートに移行することで、演奏者がシンセサイザ1する操作をすることなく、エンディングパートへ移行させることができる。
【0140】
S11の処理の後、エンディングパターンの演奏中に、鍵2aからの演奏情報の入力があったかを確認する(S12)。S12の処理において、鍵2aからの演奏情報の入力があった場合は、演奏者による演奏が再開されたと推定されるので、エンディングパートから、エンディングパートに移行する直前の伴奏音に移行し(S14)、鍵2aの演奏情報に基づいて、楽音を出力する(S15)。S15の処理の後は、S5以下の処理を繰り返す。
【0141】
S12の処理において、エンディングパート演奏中に鍵2aからの演奏情報の入力がなかった場合は(S12:No)、エンディングパートの演奏終了を確認する(S13)。S13の処理において、エンディングパートの演奏が終了した場合は(S13:Yes)、演奏者による演奏が完全に終了したと推定されるので、S1以下の処理を繰り返す。一方で、S13の処理において、エンディングパートの演奏が終了していない場合は(S13:No)、S12以下の処理を繰り返す。
【0142】
以上、上記実施形態に基づき説明したが、種々の改良変更が可能であることは容易に推察できるものである。
【0143】
上記実施形態では、自動演奏装置としてシンセサイザ1を例示した。しかし、必ずしもこれに限られるものではなく、電子オルガンや電子ピアノ等、演奏者の演奏による楽音と共に、伴奏音やエフェクトを出力する電子楽器に適用しても良い。
【0144】
上記実施形態では、出力パターンとして、ドラムパターン、ベースパターン、コード進行、アルペジオ進行、エフェクト、音量/ベロシティ及び音色が設定された。しかし、必ずしもこれに限られるものではなく、ドラムパターン、ベースパターン、コード進行、アルペジオ進行、エフェクト、音量/ベロシティ及び音色以外の、音楽表現、例えば、ドラム、ベース以外のリズムパターンや、人間の歌声等の音声データを出力パターンに追加する構成としても良い。
【0145】
上記実施形態では、出力パターンの切り替えにおいては、出力パターンのドラムパターン、ベースパターン、コード進行、アルペジオ進行、エフェクト、音量/ベロシティ及び音色の全てを切り替える構成とした。しかし、必ずしもこれに限られるものではなく、出力パターンのドラムパターン、ベースパターン、コード進行、アルペジオ進行、エフェクト、音量/ベロシティ及び音色のうち一部のみ(例えば、ドラムパターン及びコード進行のみ)を切り替える構成としても良い。
【0146】
更に、各出力パターンにおいて、切り替える対象となる出力パターンの要素を予め設定しておき、出力パターンの切り替えにおいて、その設定された出力パターンのみ切り替える構成としても良い。これにより、演奏者の好みに応じた出力パターンとすることができる。
【0147】
上記実施形態では、伴奏変更設定、リズム変更設定および音高変更設定の3つのモードを設けた。しかし、これに限られるものではなく、3つのモードから1又は2のモードを省略しても良い。この場合、伴奏変更設定を省略する場合は、
図11のキー入力処理からS101の処理を省略すれば良いし、リズム変更設定を省略する場合は、
図13の尤度算出処理からS110の処理を省略すれば良いし、音高変更設定を省略する場合は、
図13の尤度算出処理からS111の処理を省略すれば良い。
【0148】
上記実施形態では、
図13のS52,S53の処理において、音高尤度および伴奏同期尤度を全状態Jnについて算出する構成とした。しかし、必ずしもこれに限られるものではなく、音高尤度および伴奏同期尤度を、一部の状態Jnについて算出する構成としても良い。例えば、前回尤度テーブル12jにおいて最大値の尤度を取る状態Jnを遷移元の状態Jnとした遷移ルートRmにおいて、遷移先の状態Jnとされる状態Jnのみ、音高尤度および伴奏同期尤度を算出する構成としても良い。
【0149】
上記実施形態では、各出力パターンにおける伴奏音の演奏時間は、4分の4拍子における2小節分の長さとした。しかし、必ずしもこれに限られるものではなく、伴奏音の演奏時間は1小節分でも良いし、3小節分以上でも良い。また、伴奏音における1小節当たりの拍子は4分の4拍子に限られるものではなく、4分の3拍子や8分の6拍子等、他の拍子を適宜用いる構成としても良い。
【0150】
上記実施形態では、同一のパターン間における状態Jnへの遷移ルートとして、2つ前の状態Jnから遷移する音飛びによる遷移ルートを設定する構成とした。しかし、必ずしもこれに限られるものではなく、音飛びによる遷移ルートとして、同一のパターン間における3つ以上前の状態Jnから遷移する遷移ルートを含める構成としても良い。また、同一のパターン間における状態Jnへの遷移ルートから、音飛びによる遷移ルートを省略する構成としても良い。
【0151】
また、上記実施形態では、別パターン間における状態Jnへの遷移ルートとして、その遷移元である別パターンの状態Jnが、遷移先の状態Jnの拍位置の直前のものである遷移ルートを設定する構成とした。しかし、必ずしもこれに限られるものではなく、別パターンの間における状態Jnへの遷移ルートに対しても、遷移元である別パターンにおける2つ以上前の状態Jnから遷移する、音飛びによる遷移ルートも設定する構成としても良い。
【0152】
上記実施形態では、IOI尤度Gを数式1の、また、伴奏同期尤度Bを数式2のガウス分布にそれぞれ従う構成とした。しかし、必ずしもこれに限られるものではなく、IOI尤度Gをラプラス分布などの他の確率分布関数に従う構成としても良い。
【0153】
上記実施形態では、
図14のS61の処理において、数式3で算出された対数尤度log(L_n)から対数を外した尤度L_nが、尤度テーブル12iに記憶され、また、
図15のS71~S73の処理において、数式4で算出された対数尤度log(L)から、対数を外した尤度Lが、尤度テーブル12iに記憶される構成とした。しかし、必ずしもこれに限られるものではなく、数式3,4で算出された対数尤度log(L_n)又は対数尤度log(L)が、尤度テーブル12iに記憶される構成とし、尤度テーブル12iに記憶される対数尤度log(L_n)又は対数尤度log(L)に基づいて、
図12のS34の処理におけるパターンの選択およびS35~S37の処理におけるテンポの更新を行う構成としても良い。
【0154】
上記実施形態では、鍵盤2からの演奏情報が入力される毎に、状態Jnおよびパターンの推定と、推定されたパターンへの出力パターンの切り替えを行う構成とした。しかし、必ずしもこれに限られるものではなく、一定時間(例えば、2小節や4小節)内の演奏情報に基づいて、状態Jnおよびパターンの推定と、推定されたパターンへの出力パターンの切り替えとを行う構成としても良い。これにより、少なくとも一定時間毎に、出力パターンの切り替えが行われるので、出力パターン、即ち、伴奏者やエフェクトが頻繁に切り替わる事態が抑制され、演奏者や聴衆にとって、違和感のない伴奏やエフェクトとすることができる。
【0155】
上記実施形態では、演奏情報を鍵盤2からの入力される構成とした。しかしながらこれに代えて、外部のMIDI規格の鍵盤キーボードをシンセサイザ1に接続し、かかる鍵盤キーボードから演奏情報を入力する構成としても良い。
【0156】
上記実施形態では、伴奏音や楽音をシンセサイザ1に設けられた音源13、DSP14、DAC16、アンプ17及びスピーカ18から出力する構成とした。しかしながらこれに代えて、MIDI規格の音源装置をシンセサイザ1に接続し、かかる音源装置からシンセサイザ1の伴奏音や楽音を出力する構成としても良い。
【0157】
上記実施形態では、伴奏音やエフェクトに対する演奏者の評価を、ユーザ評価ボタン3によって行う構成とした。しかしながらこれに代えて、シンセサイザ1に演奏者の生体情報を検知するセンサ、例えば、演奏者の脳波を検出する脳波センサ(脳波検出手段の一例)や、演奏者の脳血流を検出する脳血流センサ等を接続し、該生体情報に基づいて伴奏音やエフェクトに対する演奏者の印象を推定することで、演奏者の評価を行う構成としても良い。
【0158】
また、シンセサイザ1に演奏者の動作を検出する動作センサ(動作検出手段の一例)を接続し、該動作センサから検出された、演奏者の特定の身振りや手振り等に応じて、演奏者の評価を行う構成としても良い。また、シンセサイザ1に演奏者の表情を検出する表情センサ(表情検出手段の一例)を接続し、該表情センサから検出された、演奏者の特定の表情、例えば、笑顔や不満げな表情等、演奏者にとって良い印象や悪い印象を示す表情や、表情の変化等に応じて、演奏者の評価を行う構成としても良い。また、演奏者の姿勢を検出する姿勢センサ(姿勢検出手段の一例)を接続し、該姿勢センサから検出された、演奏者の特定の姿勢(前傾、後傾)や姿勢の変化に応じて、演奏者の評価を行う構成としても良い。
【0159】
なお、動作センサ、表情センサ又は姿勢センサの代わりに、シンセサイザ1に演奏者の画像を取得するカメラを接続し、該カメラから取得された画像を解析することで演奏者の動作や表情、姿勢を検出して演奏者の評価を行う構成としても良い。これら生体情報を検知するセンサ、動作センサ、表情センサ、姿勢センサ又はカメラからの検出結果に応じて、演奏者の評価を行うことにより、演奏者はユーザ評価ボタン3を操作することなく、伴奏音やエフェクトに対して評価することができるので、シンセサイザ1に対する操作性を向上させることができる。
【0160】
上記実施形態では、ユーザ評価尤度を伴奏音やエフェクトに対する演奏者の評価として構成とした。しかし、必ずしもこれに限られるものではなく、ユーザ評価尤度を、伴奏音やエフェクトに対する聴衆の評価とする構成としても良いし、伴奏音やエフェクトに対する演奏者および聴衆の評価としても良い。かかる場合、聴衆に対して、伴奏音やエフェクトに対する高評価または低評価をシンセサイザ1に送信するためのリモコン装置を持たせ、リモコン装置からの高評価および低評価の評価数に基づいて、ユーザ評価尤度を算出する構成とすれば良い。また、シンセサイザ1にマイクを配設し、聴衆からの歓声の大きさに基づいて、ユーザ評価尤度を算出する構成としても良い。
【0161】
上記実施形態では、制御プログラム11aをシンセサイザ1のフラッシュROM11に記憶し、シンセサイザ1上で動作する構成とした。しかし、必ずしもこれに限られるものではなく、PC(パーソナル・コンピュータ)や携帯電話、スマートフォンやタブレット端末等の他のコンピュータ上で制御プログラム11aを動作させる構成としても良い。この場合、シンセサイザ1の鍵盤2の代わりに、PC等に有線または無線で接続されたMIDI規格の鍵盤キーボードや文字入力用のキーボードから、演奏情報を入力する構成としても良いし、PC等の表示装置に表示されたソフトウェアキーボードから、演奏情報を入力する構成としても良い。
【0162】
上記実施形態に挙げた数値は一例であり、他の数値を採用することは当然可能である。
【符号の説明】
【0163】
1 シンセサイザ(自動演奏装置)
2 鍵盤(入力手段)
3 ユーザ評価ボタン(評価入力手段)
11a 制御プログラム(自動演奏プログラム)
11b 入力パターンテーブル(記憶手段の一部)
11c 出力パターンテーブル(記憶手段の一部)
50 設定キー(設定手段)
S4 演奏手段
S8 演奏手段、切替手段
S34 選択手段
S51~S53 尤度算出手段