(57)【要約】【課題】  音楽知識や技術のないユーザでも簡単な操作で、曲想に合わせて自動的に楽曲を提供して、作曲を支援する作曲支援方法を提供することである。【解決手段】  ジャンル別に複数の原曲を集め、(１)原曲そのままの音符のパターン、(２)長調の曲は所定の長調に、短調の曲は所定の短調に原曲をそれぞれ移調したパターン、及び、(３)最大の音高が所定のノートナンバーになるように原曲を移調したパターンを作成し、これらのパターンの音符について原曲に沿った通し番号、ノートナンバー、ベロシティ、及び、前の音からの時差を数値化して整列したデータベースを用意し、乱数発生手段を用いて乱数を発生させ、乱数に応じた音符とその通し番号に続く所定数の音符列を前記データベースから取得し、音符列を前の音符列に連続させることで自動的に作曲する作曲支援方法である。【選択図】図１
2008107711.tif 000002
【特許請求の範囲】
【請求項１】
作曲支援方法において、ジャンル別に複数の原曲を集め、(１)原曲そのままの音符のパターン、(２)長調の曲は所定の長調に、短調の曲は所定の短調に原曲をそれぞれ移調したパターン、及び、(３)最大の音高が所定のノートナンバーになるように原曲を移調したパターンを作成し、これらのパターンの音符について原曲に沿った通し番号、ノートナンバー、ベロシティ、及び、前の音からの時差を数値化して整列したデータベースを用意し、乱数発生手段を用いて乱数を発生させ、該乱数に応じた音符とその通し番号に続く所定数の音符列を前記データベースから取得し、該音符列を前の音符列に連続させることで自動的に作曲することを特徴とする作曲支援方法。
【請求項２】
請求項１に記載の作曲支援方法において、集めたジャンル別に複数の原曲について、リズムパターンを分析してパターン毎に通し番号を付したデータベースを用意し、乱数発生手段を用いて乱数を発生させ、該乱数に応じたリズムパターン所定数の音符列を前記データベースから取得することを特徴とする請求項１に記載の作曲支援方法。
【請求項３】
請求項１に記載の作曲支援方法において、前記データベースには、各音符のデュレーションの数値、及び、楽曲の末尾の音符に終止形の有無を用意し、適宜提供することを特徴とする請求項１に記載の作曲支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、曲想に合わせて自動的に楽曲を提供して、作曲を支援する作曲支援方法に関する。
【背景技術】
【０００２】
従来、コンピュータを用いた自動作曲の分野では、音楽的な知識のない初心者でも簡単に作曲を行うことができるように、たとえば、作曲のためのテンプレートをいくつか記憶しておき、これらのテンプレートのうちいずれかを選択してそれに基づいてメロディとなる演奏データを自動的に生成することで作曲が行われていた。
【０００３】
テンプレートを用いた自動作曲の技術としては、例えば、特許文献１の特開2000-221968号公報では、メロディの音符数の大小など曲に依存しない各種の情報を格納した曲非依存型のテンプレートとコード進行等の曲に依存する各種の情報を格納した曲依存型のテンプレートを用いて自動作曲する装置が提案されている。
また、特許文献２の特開2002-6843号公報では、テンプレートによるコード進行データと楽節構成データとの組合せにより自動作曲する装置や方法が提案されている。また、特許文献３の特開2002-196757号公報では、テンプレートにおいてユーザの作曲意図を容易に反映させる自動作曲装置が提案されている。さらに、特許文献４の特開2004-170470号公報には、テンプレートにおいて機能ブロックを選択し、機能ブロックに含まれている要素に対して、音程やリズムの調整を行うこととしたので、音楽知識や技術のないユーザでも簡単な操作で音楽的に意味のある個性的なメロディを作成する自動作曲装置やプログラムが提案されている。
【特許文献１】特開２０００−２２１９６８号公報
【特許文献２】特開２００２−６８４３号公報
【特許文献３】特開２００２−１９６７５７号公報
【特許文献４】特開２００４−１７０４７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、従来のようにテンプレートを用いると初心者にとっては作曲が容易になるものの没個性的となり、逆に個性を生かそうとするとテンプレート内のデータ量が増大しユーザの操作も複雑になるといった問題があった。
本発明の課題は、このような問題に鑑みてなされたもので、音楽知識や技術のないユーザでも簡単な操作で、曲想に合わせて自動的に楽曲を提供して、作曲を支援する作曲支援方法を提供することである。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、請求項１の発明は、作曲支援方法において、ジャンル別に複数の原曲を集め、(１)原曲そのままの音符のパターン、(２)長調の曲は所定の長調に、短調の曲は所定の短調に原曲をそれぞれ移調したパターン、及び、(３)最大の音高が所定のノートナンバーになるように原曲を移調したパターンを作成し、これらのパターンの音符について原曲に沿った通し番号、ノートナンバー、ベロシティ、及び、前の音からの時差を数値化して整列したデータベースを用意し、乱数発生手段を用いて乱数を発生させ、該乱数に応じた音符とその通し番号に続く所定数の音符列を前記データベースから取得し、該音符列を前の音符列に連続させることで自動的に作曲することを特徴とする作曲支援方法である。
請求項２の発明は、請求項１に記載の作曲支援方法において、集めたジャンル別に複数の原曲について、リズムパターンを分析してパターン毎に通し番号を付したデータベースを用意し、乱数発生手段を用いて乱数を発生させ、該乱数に応じたリズムパターン所定数の音符列を前記データベースから取得することを特徴とする請求項１に記載の作曲支援方法である。
請求項３の発明は、請求項１に記載の作曲支援方法において、前記データベースには、各音符のデュレーションの数値、及び、楽曲の末尾の音符に終止形の有無を用意し、適宜提供することを特徴とする請求項１に記載の作曲支援方法である。
【発明の効果】
【０００６】
本発明の作曲支援方法によれば、乱数によりランダムに音符列を取り出すので、テンプレートとは異なり、収録した原曲が増えると、そのパターンは指数的に増加するので、取得する音符列もバラエテーに富み、曲想に合った意外性のある楽曲を自動的に提供することができ、音楽知識や技術のないユーザでも簡単な方法や操作で作曲することができる。
【発明を実施するための最良の形態】
【０００７】
本発明の特徴の１つは、ジャンル別に原曲を集め、それを所定のパターンにパターン化し、更に、それを数値化して通し番号を付して、乱数発生手段を用いて、無差別に数個の連続した音符の情報を取得して作曲するものであり、従来の自動作曲装置と同様に、通常、コンピュータに必要とするデータベースを作成して記憶させ、作業工程のプログラムソフトを記憶させ、必要に応じて画面と音源演奏を用いて採否を確認して作曲する。
【実施例１】
【０００８】
本発明の作曲支援方法の好適な子守歌を作曲及び作曲支援する実施例１を、図面を参照して説明する。
実施例１を、図１に示すフローチャートと、図２のデータベースの記憶内容を用いて詳細に説明するが、先ず、図１におけるデータベース(ＤＢ)の作成から説明するが、主に、実施例１のデータベースは(Ａ)メロディ用データベースと(Ｂ)リズム用データベースから構成され、下記のステップＤ１からステップＤ５の工程により作成される。
ステップＤ１で、曲想を形作るジャンル別に原曲、例えば、実施例１では複数の子守歌を集める。
ステップＤ２では、この集めた原曲の音符を数値化するが、一方の処理Ａとして、(１)原曲そのままの音符のパターン、(２)長調の曲は所定の長調に、短調の曲は所定の短調に原曲をそれぞれ移調した３パターン、及び、(３)最大の音高が所定のノートナンバーになるように原曲を移調したパターンを作成する。
本実施例では、(２)長調の曲はハ長調(Ｃ major)に原曲を移調し、短調の曲はイ短調(Ａ minor)に原曲を移調する。勿論、他の長調や他の短調でもよいが、長調としてハ長調(Ｃ major)を、短調としてイ短調(Ａ minor)を選んだのは、これらが基本となる調で一般的であるからである。
また、子守歌を作曲する目的であることから、(３)所定のノートナンバーとしては７４(ト音記号五線譜の第４線上のレの音)とし、最大の音高がノートナンバー７４になるように原曲を移調したパターンを作成する。
他方の処理Ｂとしては、全楽曲の１小節内のリズムパターンを分析して分類する。
【０００９】
ステップＤ３では、ステップＤ２での処理で分類したリズムパターンに通し番号を付し(アドレス付与)、番号順に整列して、(Ｂ)リズム生成用データベース(リズム用ＤＢ)を作成して、コンピュータ内の記憶部に格納する。
このリズムパターンとは、音符の長さの組み合わせのことであり、
例えば、
パターン「１」：｜４分音符，４分音符，４分音符，４分音符｜
パターン「２」：｜４分音符，４分音符，８分音符，８分音符，４分音符｜
であり、分析された子守歌に採用されている異なったパターンを抽出し、このパターンに通し番号を付与する。
【００１０】
ステップＤ４では、ステップＤ２での処理Ａで３種類にパターン化したそれぞれの音符を数値化する。数値化する項目は、図２の[表１]に示すように、パターン化された音符について、まず、(１)原曲に沿った通し番号(アドレス)を付す。これは移調した曲についても原曲に沿った通し番号を付したものであるが、本実施例における全体に亘っての通し番号は、先ず、原曲の楽曲どおり音符順に通し番号を付し、これに連続して原曲を所定の長調に移調しパターンについても原曲に沿った順で通し番号を付し、次いで所定の短調に移調したパターンについても原曲に沿った順で通し番号を付し、最後に、最大の音高が所定のノートナンバーになるように原曲を移調したパターンについても原曲に沿った順で通し番号を付与する。
そして、（１)通し番号(アドレス)を付与された各音符について分析し、図２の[表１]に示すように、(２)ノートナンバー、(３)ベロシティ、(４)デュレーション、(５)前の音からの時差を数値化する。また、必要に応じて、曲の終止形であるが場合にはフラッグ１を付与する。
ステップＤ５では、ステップＤ４での処理Ａで、原曲及び移調した曲の音符を数値化したデータをメロディ用の通し番号順に整列して、(Ａ)メロディ生成用データベース(メロディ用ＤＢ)を作成して、コンピュータ内の記憶部に格納する。
【００１１】
以上が予めコンピュータに格納し用意するデータベース(ＤＢ)であるが、次に、自動的に候補となるリズムとメロディの生成についての装置及び方法をステップ１からステップ１３のフローで説明する。
ステップＳ１で、この作曲支援工程をスタートさせると、ステップＳ２で最初のリズムを発生させるが、このステップＳ２ではリズム乱数発生手段でランダムに乱数を発生させ、乱数に対応する１小節のリズムを前記ステップＤ３では(Ｂ)リズム生成用データベース(リズム用ＤＢ)を検索する。なお、リズム用乱数発生手段の乱数は、(Ｂ)リズム生成用データベース(リズム用ＤＢ)に採取されているリズムパターンのパターン数に対応した乱数を発生させるよう設定されている。
次に、ステップＳ３は、乱数に対応する１小節のリズムをステップＤ３での(Ｂ)リズム生成用データベース(リズム用ＤＢ)から取得し、ステップＳ４では、作曲者がその取得されたリズムパターンを採用するか否かを検討し、良ければ(Yes)ステップＳ５に進み、採用しなければ(No)、ステップ２に戻り同じ作業を繰り返し、採用すべきリズムパターンを取得するまで繰り返す。このリズムを採否にあたり、画面だけではなく、実際に音に変換したものを再現させる手段を備えてもよいことは勿論である。
【００１２】
ステップＳ４で、取得したリズムパターンを採用するか否かを検討して良ければ(Yes)ステップＳ５に進むが、ステップＳ５では、メロディ用乱数発生手段で乱数を発生させ、ステップＤ５の(Ａ)メロディ生成用データベース(メロディ用ＤＢ)に採用すべきメロディの音符列を抽出すべく検索する。
このステップＳ５での乱数発生手段は、ステップＤ５で採取されている(Ａ)メロディ生成用データベース(メロディ用ＤＢ)の通し番号数に対応した乱数を発生させるよう設定されている。また、本実施例での子守歌を作曲する場合に、余りに異なる別の楽曲にジャンプすると、刺激が強すぎ子守歌にふさわしくないので、直前の音符列に近い音符列、すなわち、一定の確率Ｐ(＞０.５)にしたがって、直前の音符列に近い音符列が選択されるように設定され、逆に確率１−Ｐで任意の乱数を発生させる。
ここで、前記の「近い音符列」の範囲の近傍値としては３２以内に設定し、この数値３２とは、１小節内に、８分音符が８つあるとすると，４小節であり、前記パターン「１」のように４分音符が４つあるとすると、８小節が近傍ということになる。ただし，実際には，近傍の値と確率Ｐは適宜，微調整して，メロディを生成させており、このような調整手段を付加しても勿論良い。
【００１３】
ステップＳ５でメロディ用乱数発生手段で発生した乱数に対応したメロディの音符列は、前記ステップＳ６で採用した１小節のリズムパターンの音符の数だけの連続する音符データを取得し、次のステップＳ７に進み、ステップＳ６で取得した音符データのデュレーション(音の長短)をステップＳ４で採用したデュレーションに置換する。したがって、本実施例では、ステップＤ４でデュレーションを数値化することは必須ではない。
ステップＳ８では、ステップＳ６取得したメロディにステップＳ７で置換したデュレーションを付したデータを、それまでに形成した音符列の後に並べて、ＭＩＤＩ音源で演奏し、不都合が無いか否を確認する。
演奏しなくても画面だけで判断できる場合は、ステップＳ９の取得したメロディデータの採否を進んでもよい。
ステップＳ９では、取得したメロディを確認して採用しなければ(No)ステップＳ５に戻り、違ったメロディの音符列を採取してステップＤ５〜ステップＳ７を繰り返して、納得のいくメロディを採取するまで繰り返す。
ステップＳ９で取得したメロディを採用する(Yes)のであれば、ステップＳ１０に進み、取得したメロディにデュレーションを付したデータを、それまでに形成した音符列の後に並べる。
ところで、それまでに形成された楽曲が気に入らなかったり、不都合が生じれば、フローチャートには表していないが、これらの音符列を後から削除できるような工程にして、修正できるような工程を付加にしても良いことは勿論である。
【００１４】
ステップＳ１１では、形成された末尾の音符に最終形のフラッグを含んでいなければ(No)、作曲作業が継続するので、ステップＳ２に戻り、次の１小節の音符列の形成を行い、前述したステップＳ２〜ステップＳ１１の工程を繰り返すことになる。
逆に、末尾の音符に最終形のフラッグを含んでいれば(Yes)、このまま作曲を終了して良いか否かを判断するために、ステップＳ１２でそれまでの音符列をＭＩＤＩ音源で演奏して、ステップＳ１３で作曲を終了して良いかを判断し、まだ終了しないのであれば(No)、再び、ステップＳ２に戻り、次の１小節の音符列の形成を行い、前述したステップＳ２〜ステップＳ１１の工程を繰り返すことになり、良ければ(Yes)、ステップ１４で作曲を終了する。
勿論、ステップＳ１２で最終的に形成された楽曲が、気に入らなかったり、不都合が生じれば、フローチャートには表していないが、これらの音符列を後から修正できるような工程を付加にして修正する。
【００１５】
本実施例の作曲支援方法によれば、乱数によりランダムに音符列を取り出すので、テンプレートとは異なり、収録した原曲が増えると、そのパターンは指数的に増加するので、取得する音符列もバラエテーに富み、曲想に合あった意外性のある楽曲を自動的に提供することができ、音楽知識や技術のないユーザでも簡単な方法や操作で作曲することができる。特に、曲想が比較的はっきりしている子守歌等の作曲には最適である。
【実施例２】
【００１６】
次に、本発明の作曲支援方法の好適な子守歌を作曲及び作曲支援する実施例２を、図面を参照して説明する。
実施例２を、図３の示すフローチャートで説明するが、データベースＤＢとしては、実施例１でのステップＤ４と同じであり、図３において、ステップＤ１でジャンル別、ここでは子守歌の複数の原曲を集め、ステップＤ２で(１)原曲そのままの音符のパターン、(２)ハ長調(Ｃ major)に原曲を移調し、短調の曲はイ短調(Ａ minor)に原曲をそれぞれ移調したパターン、及び、(３)最大の音高が７４のノートナンバーになるように原曲を移調したパターンを作成し、ステップＤ３で図２の[表１]の音符の数値化を有するものである。データベース(ＤＢ)が実施例１と異なるのは、リズム用のデータベースは必要なく、その代わりに、これらのパターンの音符について(１)原曲に沿った通し番号、(２)ノートナンバー、(３)ベロシティ、(４)デュレーション、(５)前の音からの時差を数値化の内、リズムに関する(４)デュレーションの数値が必須であることである。
これらの数値化したデータを、ステップＤ４で(１)音符を通し番号順に整列して、音符のデータベースを作成する。
【００１７】
したがって、実施例２は、予めコンピュータに格納し用意するデータベース(ＤＢ)は、リズム用データベースを特段用意しないので、工程は実施例１より簡単でステップ１からステップ１０のフローであるが、この実施例２の自動的に候補となるリズムとメロディとを含んだ音符の生成についての装置及び方法のフローで説明する。
ステップＳ１で、この作曲支援工程をスタートさせると、ステップ２では乱数発生手段でランダムに乱数を発生させ、ステップＤ４の音符生成用データベースＤＢにおいて発生した乱数に対応する３〜５個の連続する音符を検索する。なお、乱数発生手段の乱数は、(Ｃ)音符生成用データベース(音符用ＤＢ)に採取されいる音符の通し番号の数に対応した乱数を発生させるよう設定されている。
【００１８】
次に、ステップＳ３は、乱数に対応する３〜５個の連続通し番号の音符をステップＤ４の音符生成用データベース(ＤＢ)から取得する。ここで、取得する連続通し番号の音符を３〜５個としたのは、３個より少ないと、子守歌としての曲想から外れる可能性が高くなり、５個以上になると意外性や独創性が薄れる可能性が高くなるからである。
ステップＳ４では、それまでに形成した音符列の後に並べて、ＭＩＤＩ音源で演奏し、不都合が無いか否を確認する。演奏しなくても画面だけで判断できる場合は、ステップ４を省略してもよいのは実施例１と同様である。
ステップＳ５では、作曲者がその取得されたリズムパターンを採用するか否かを検討し、良ければ(Yes)ステップ５に進み、採用しなければ(No)、ステップ２に戻り同じ作業を繰り返し、採用すべきリズムパターンを取得するまで繰り返す。
【００１９】
ステップＳ５では、取得した音符列を採用するか否かを検討して良ければ(Yes)ステップＳ６に進み、取得した音符列をそれまで取得した列に連続して追加する。勿論、初回の音符生成工程であれば、取得した音符列が楽曲の最初の音符列になる。
以後は実施例１と同じで、ステップＳ７では、形成された末尾の音符に最終形のフラッグを含んでいなければ(No)、作曲作業が継続するので、ステップＳ２に戻り、次の３〜５個の音符列の形成を行い、前述したステップＳ２〜ステップＳ７の工程を繰り返すことになる。
【００２０】
逆に、末尾の音符に最終形のフラッグを含んでいれば(Yes)、このまま作曲を終了して良いか否かを判断するために、ステップＳ８でそれまでの音符列をＭＩＤＩ音源で演奏して、ステップ９で作曲を終了して良いかを判断し、まだ終了しないのであれば(No)、再び、ステップＳ２に戻り、次の３〜５個の音符列の形成を行い、前述したステップＳ２〜ステップＳ７の工程を繰り返すことになり、良ければ(Yes)、ステップ１０で作曲を終了する。
勿論、実施例１と同様に、ステップＳ１２で最終的に形成された楽曲に、気に入らなかったり、不都合が生じれば、フローチャートには表していないが、これらの音符列を後から修正できるような工程を付加にして修正する。
【００２１】
実施例２の作曲支援方法によれば、乱数によりランダムに音符列を取り出すので、テンプレートとは異なり、収録した原曲が増えると、そのパターンは指数的に増加するので、取得する音符列もバラエテーに富み、曲想に合った意外性のある楽曲を自動的に提供することができ、音楽知識や技術のないユーザでも簡単な方法や操作で作曲することができ、特に、曲想が比較的はっきりしている子守歌等の作曲には最適であることは、実施例１と同様であるが、実施例１に比べて、リズム用データベースを作成する必要がなく、データベースの作成が比較的簡単である。
【００２２】
なお、本発明の特徴を損なうものでなければ、上記の各実施例に限定されるものでないことは勿論である。例えば、子守歌のようなジャンル別に複数の原曲を集めるとは、所定の作意を持って作曲に際し、同じ曲想の原曲を集めることで、ジャンルが異なっても同じよう調べの曲であればデータベースに採集してもよいことは勿論である。また、同じジャンルであっても、極端に曲想が異なるものは適宜省いてもよいことも勿論である。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施例１のフローチャートの図である。
【図２】本発明での実施例１及び実施例２での音符を数値化したデータベースの内容の［表１］の図である。
【図３】本発明の実施例２のフローチャートの図である。
【図１】
2008107711.tif 000003
【図２】
2008107711.tif 000004
【図３】
2008107711.tif 000005