(57)【要約】　　　（修正有）【課題】既に作曲され、自動再生中の曲データの途中から、再作曲された曲データにリアルタイムに自動再生を移行させることができる自動作曲装置および自動作曲方法を実現するためのプログラムを提供する。【解決手段】所定の操作子２ａの操作が検出されると、変更データの種類とその値が決定される。他方、作曲条件が指示されると、メロディー生成用データが抽出されるとともに、伴奏用生成用データが抽出され、曲データの生成がすべて完了すると、シーケンサ３１の再生用バッファ７ａの内容が、この曲データで書き換えられる。シーケンサ３１では、既に作曲された曲データが再生用バッファ７ａに記憶されて、自動再生されているので、再生用バッファ７ａの内容が新たに作曲された曲データで書き換えられると、自動再生は、現在再生中の曲の途中から、新たに作曲された曲にリアルタイムに移行する。【選択図】　　図２
2004045691.tif 000002
【特許請求の範囲】
【請求項１】
作曲用パラメータに基づいて、曲データを自動作曲する自動作曲手段と、
該自動作曲された曲データを再生する再生手段と、
該再生手段によって前記自動作曲された曲データが再生されているときに、前記自動作曲手段に対して、曲データを再自動作曲させるように指示する指示手段と、
該指示に応じて、曲データが再自動作曲されたときに、前記再生手段による曲データの再生を、当該再自動作曲された曲データに移行させるように制御する制御手段と
を有することを特徴とする自動作曲装置。
【請求項２】
前記作曲用パラメータの、少なくとも一部を変更する変更手段をさらに有し、
前記自動作曲手段は、前記変更後の作曲用パラメータに基づいて、再自動作曲を行うことを特徴とする請求項１に記載の自動作曲装置。
【請求項３】
前記制御手段は、前記再生手段による曲データの再生を、前記再自動作曲された曲データに移行させるときに、該曲データの所定区切り位置で移行させることを特徴とする請求項１に記載の自動作曲装置。
【請求項４】
作曲用パラメータに基づいて、曲データを自動作曲する自動作曲手順と、
該自動作曲された曲データを再生する再生手順と、
該再生手順によって前記自動作曲された曲データが再生されているときに、前記自動作曲手順に対して、曲データを再自動作曲させるように指示する指示手段の指示に応じて、曲データが再自動作曲されたときに、前記再生手順による曲データの再生を、当該再自動作曲された曲データに移行させるように制御する制御手順と
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、曲を自動再生しながら作曲する自動作曲装置および自動作曲方法を実現するためのプログラムに関する。
【０００２】
【従来の技術】
従来の自動作曲装置は、たとえば、ユーザが操作子を用いて入力した各種作曲用パラメータに基づいて、多様な曲データを生成している。
【０００３】
そして、このような自動作曲装置には、作曲された曲を確認するために、曲を自動再生する機能も設けられ、ユーザが再生された曲を聴き、意図通りに作曲されていない場合には、同一作曲用パラメータでまたは作曲用パラメータを変更して、再作曲できるようになっている。
【０００４】
【発明が解決しようとする課題】
しかし、上記従来の自動作曲装置では、既に作曲された曲データを自動再生中に、新たに曲データを再作曲するときには、元のまたは新たな作曲用パラメータに基づいて曲データを再生成し、この再生成された曲データを先頭から自動再生するようにしているので、自動再生を、現在再生中の曲データの途中から、再作曲された曲データにリアルタイムに移行させることはできなかった。
【０００５】
本発明は、この点に着目してなされたものであり、既に作曲され、自動再生中の曲データの途中から、再作曲された曲データにリアルタイムに自動再生を移行させることができる自動作曲装置および自動作曲方法を実現するためのプログラムを提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、請求項１に記載の自動作曲装置は、作曲用パラメータに基づいて、曲データを自動作曲する自動作曲手段と、該自動作曲された曲データを再生する再生手段と、該再生手段によって前記自動作曲された曲データが再生されているときに、前記自動作曲手段に対して、曲データを再自動作曲させるように指示する指示手段と、該指示に応じて、曲データが再自動作曲されたときに、前記再生手段による曲データの再生を、当該再自動作曲された曲データに移行させるように制御する制御手段とを有することを特徴とする。
【０００７】
好ましくは、前記作曲用パラメータの、少なくとも一部を変更する変更手段をさらに有し、前記自動作曲手段は、前記変更後の作曲用パラメータに基づいて、再自動作曲を行うことを特徴とする（請求項２）。
【０００８】
また、好ましくは、前記制御手段は、前記再生手段による曲データの再生を、前記再自動作曲された曲データに移行させるときに、該曲データの所定区切り位置で移行させることを特徴とする（請求項３）。
【０００９】
さらに、請求項４に記載のプログラムは、請求項１と同様の技術的思想によって実現できる。
【００１０】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
【００１１】
図１は、本発明の一実施の形態に係る自動作曲装置の概略構成を示すブロック図である。
【００１２】
同図に示すように、本実施の形態の自動作曲装置は、音高情報を入力するための鍵盤１と、作曲用パラメータを含む各種情報を入力するための複数の操作子を備えた操作子群２と、鍵盤１の各鍵の押鍵状態を検出する押鍵検出回路３と、操作子群２の各操作子の操作状態を検出する操作状態検出回路４と、装置全体の制御を司るとともに、入力された作曲用パラメータに基づいて曲データを生成するＣＰＵ５と、該ＣＰＵ５が実行する制御プログラムや、各種テーブルデータ等を記憶するＲＯＭ６と、演奏データ、各種入力情報、生成された曲データおよび演算結果等を一時的に記憶するＲＡＭ７と、タイマ割込み処理における割込み時間や各種時間を計時するタイマ８と、各種情報等を表示する、たとえば大型液晶ディスプレイ（ＬＣＤ）若しくはＣＲＴ（Ｃａｔｈｏｄｅ　Ｒａｙ　Ｔｕｂｅ）ディスプレイおよび発光ダイオード（ＬＥＤ）等を備えた表示装置９と、記憶媒体であるフレキシブルディスク（ＦＤ）２０をドライブするフレキシブルディスクドライブ（ＦＤＤ）１０と、前記制御プログラムを含む各種アプリケーションプログラムや各種データ等を記憶するハードディスク（図示せず）をドライブするハードディスクドライブ（ＨＤＤ）１１と、前記制御プログラムを含む各種アプリケーションプログラムや各種データ等を記憶するコンパクトディスク−リード・オンリ・メモリ（ＣＤ−ＲＯＭ）２１をドライブするＣＤ−ＲＯＭドライブ（ＣＤ−ＲＯＭＤ）１２と、外部からのＭＩＤＩ（Ｍｕｓｉｃａｌ　Ｉｎｓｔｒｕｍｅｎｔ　Ｄｉｇｉｔａｌ　Ｉｎｔｅｒｆａｃｅ）信号を入力したり、ＭＩＤＩ信号を外部に出力したりするＭＩＤＩインターフェース（Ｉ／Ｆ）１３と、通信ネットワーク１０１を介して、たとえばサーバコンピュータ１０２とデータの送受信を行う通信インターフェース（Ｉ／Ｆ）１４と、鍵盤１から入力された演奏データや予め設定された演奏データ、生成された曲データ等を楽音信号に変換する音源回路１５と、該音源回路１５からの楽音信号に各種効果を付与するための効果回路１６と、該効果回路１６からの楽音信号を音響に変換する、たとえば、ＤＡＣ（Ｄｉｇｉｔａｌ−ｔｏ−Ａｎａｌｏｇ　Ｃｏｎｖｅｒｔｅｒ）やアンプ、スピーカ等のサウンドシステム１７とにより構成されている。
【００１３】
上記構成要素３〜１６は、バス１８を介して相互に接続され、ＣＰＵ５にはタイマ８が接続され、ＭＩＤＩＩ／Ｆ１３には他のＭＩＤＩ機器１００が接続され、通信Ｉ／Ｆ１４には通信ネットワーク１０１が接続され、音源回路１５には効果回路１６が接続され、効果回路１６にはサウンドシステム１７が接続されている。
【００１４】
ＨＤＤ１１のハードディスクには、前述のように、ＣＰＵ５が実行する制御プログラムも記憶でき、ＲＯＭ６に制御プログラムが記憶されていない場合には、このハードディスクに制御プログラムを記憶させておき、それをＲＡＭ７に読み込むことにより、ＲＯＭ６に制御プログラムを記憶している場合と同様の動作をＣＰＵ５にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。
【００１５】
ＣＤ−ＲＯＭドライブ１２のＣＤ−ＲＯＭ２１から読み出された制御プログラムや各種データは、ＨＤＤ１１内のハードディスクにストアされる。これにより、制御プログラムの新規インストールやバージョンアップ等が容易に行える。なお、このＣＤ−ＲＯＭドライブ１２以外にも、外部記憶装置として、光磁気ディスク（ＭＯ）装置等、様々な形態のメディアを利用するための装置を設けるようにしてもよい。
【００１６】
ＭＩＤＩＩ／Ｆ１３は、専用のものに限らず、ＲＳ−２３２ＣやＵＳＢ（ユニバーサル・シリアル・バス）、ＩＥＥＥ１３９４（アイトリプルイー１３９４）等の汎用のインターフェースより構成してもよい。この場合、ＭＩＤＩメッセージ以外のデータをも同時に送受信してもよい。
【００１７】
通信Ｉ／Ｆ１４は、上述のように、たとえばＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）やインターネット、電話回線等の通信ネットワーク１０１に接続されており、該通信ネットワーク１０１を介して、サーバコンピュータ１０２に接続される。ＨＤＤ１１内のハードディスクに上記各プログラムや各種パラメータが記憶されていない場合には、通信Ｉ／Ｆ１４は、サーバコンピュータ１０２からプログラムやパラメータをダウンロードするために用いられる。クライアントとなるコンピュータ（本実施の形態では、自動作曲装置）は、通信Ｉ／Ｆ１４および通信ネットワーク１０１を介してサーバコンピュータ１０２へとプログラムやパラメータのダウンロードを要求するコマンドを送信する。サーバコンピュータ１０２は、このコマンドを受け、要求されたプログラムやパラメータを、通信ネットワーク１０１を介してコンピュータへと配信し、コンピュータが通信Ｉ／Ｆ１４を介して、これらプログラムやパラメータを受信してＨＤＤ１１内のハードディスクに蓄積することにより、ダウンロードが完了する。
【００１８】
この他、外部コンピュータ等との間で直接データのやりとりを行うためのインターフェースを備えてもよい。
【００１９】
なお、本実施の形態の自動作曲装置は、上述の構成から分かるように、汎用的なパーソナルコンピュータ上に構築されたものであるが、これに限らず、本発明を実施できる最小限要素のみから構成した専用装置上に構築してもよい。
【００２０】
以上のように構成された自動作曲装置が実行する制御処理を、図２および図３を参照して詳細に説明する。
【００２１】
図２は、本実施の形態の自動作曲装置が実行する制御処理の手順を示すブロック図であり、本制御処理では、主として、（１）曲データ生成処理と（２）生成曲データ自動再生処理の２種類の処理を並行して行っている。
【００２２】
なお、図２では、本制御処理の手順をブロック図で表現しているため、本制御処理は、すべてハードウェアによってなされているという印象を与えがちであるが、実際には、ソフトウェアとハードウェアとが協働することによってなされている。
【００２３】
図２において、ユーザが、曲風、拍子および調などの作曲条件を指示すると、その作曲条件が、たとえば前記ＲＡＭ７のワークエリアに記憶される（ブロック２１）。ここで、作曲条件の指示方法としては、たとえば、前記表示装置９上に具体的な作曲条件が一覧表示され、ユーザが、その中の好みのものをカーソル（図示せず）で１つずつ指示して行く方法が挙げられる。もちろん、これに限らず、作曲条件を入力できる方法であれば、どのようなものを採用してもよい。
【００２４】
次に、前記ＣＰＵ５は、たとえば、前記ＨＤＤ１１のハードディスク上に構築された、各種作曲用データテンプレートからなる作曲用データテンプレートバンク１１ａから、上記記憶された作曲条件に最も適合する作曲用データテンプレートを１つ選択する（ブロック２２）。
【００２５】
そして、ＣＰＵ５は、上記選択した作曲用データテンプレートの中から、メロディー生成用データを抽出する（ブロック２３）とともに、伴奏生成用データを抽出する（ブロック２４）。
【００２６】
一方、ＣＰＵ５は、前記操作子群２中の所定の操作子２ａが操作されたことを、前記操作状態検出回路４から出力された信号に基づいて検出し（ブロック４ａ）、さらに、操作が検出された操作子の種類と操作状態を判定する（ブロック２６）。本実施の形態では、所定の操作子２ａは、２種類の操作子（具体的には、「にぎやか」操作子と「盛り上げ」操作子）からなり、各操作子２ａは、それぞれ、３つの操作状態（操作位置）を備えている。
【００２７】
ＣＰＵ５は、図３（ａ）に示すように、操作子の種類および操作状態と変更データの種類および値とを対応付ける操作子参照表を参照することにより（ブロック２８）、上記判定された操作子の種類および操作状態に対応する変更データの種類および値を決定する（ブロック２７）。
【００２８】
次に、ＣＰＵ５は、前記ブロック２３で抽出されたメロディー生成用データ中に、上記決定された種類のデータが存在すれば、そのデータの値を決定された値に変更する（ブロック２５）。たとえば、「にぎやか」操作子が“２”の位置に操作されたときには、図３（ａ）に示すように、変更データの種類は、「音符の多さ」、「ピッチダイナミクス」および「生成音域」に決定され、その値は、それぞれ、「中」、「３」および「中」に決定される。そして、抽出されたメロディー生成用データに含まれる、「音符の多さ」、「ピッチダイナミクス」および「生成音域」の３種類の値が、それぞれ、「中」、「３」および「中」に変更される。なお、図３（ａ）中、「非コード音の多さ」には、その値を変更しないことを意味する“＊”が付けられているので、抽出されたメロディー生成用データに、「非コード音の多さ」が含まれていても、その値は変更されない。また、抽出されたメロディー生成用データに、決定された種類のデータが含まれていない場合には、言うまでもなく、何もしない。
【００２９】
同様に、ＣＰＵ５は、前記ブロック２４で抽出された伴奏生成用データ中に、上記決定された種類のデータが存在すれば、そのデータの値を決定された値に変更する（ブロック２９）。
【００３０】
ＣＰＵ５は、所定の種類のデータの値が変更されたメロディー生成用データおよび伴奏生成用データに基づいて、曲データを生成、すなわち自動作曲する（ブロック３０）。なお、自動作曲の方法は、本発明の特徴ではないので、公知の方法を用いればよい。
【００３１】
そして、曲データがすべて生成された時点で、すなわち、自動作曲が完了した時点で、シーケンサ３１が曲データを再生するときに使用する再生用バッファ７ａの記憶内容が、上記生成された曲データに書き換えられる。
【００３２】
シーケンサ３１は、本実施の形態では、ＣＰＵ５が所定のシーケンスソフトウェアを実行し、たとえば前記ＲＡＭ７の所定位置に確保された再生用バッファ７ａに記憶された曲データを適当なタイミングで読み出して、前記音源回路１５に送出するというように、ソフトウェア的に構成されているが、もちろん、これに限らず、ハードウェア的に構成してもよい。
【００３３】
シーケンサ３１は、再生用バッファ７ａの曲データが更新されると、それまでの曲データの再生位置の続きの位置から、新たな曲データの再生を開始する。たとえばそれまでの曲データが８小節の最後まで再生されていたら、新たな曲は９小節の先頭から再生される。
【００３４】
シーケンサ３１は、ユーザによるスタート／ストップの指示に従って、曲データの自動再生をスタート／ストップするが、本発明は、曲データの自動再生中に、再作曲（生成）した曲データにリアルタイムに移行することに特徴があるため、通常は、自動作曲中、シーケンサ３１に対して、スタートの指示がなされている。なお、スタートの指示は、前記所定の操作子２ａと連動するようにしてもよい。具体的には、図２の二点鎖線で示すように、所定の操作子２ａの最初の操作を検出し、これに応じて、スタート指示をシーケンサ３１に出力する。この場合でも、ストップ指示は、ユーザによってなされる。もちろん、自動作曲の動作とシーケンサ３１の動作とは、独立しているため、自動作曲の動作中、シーケンサ３１が停止状態であっても構わない。
【００３５】
なお、作曲が最初であるなどの理由で、再生用バッファ７ａに曲データが記憶されていない場合には、自動作曲中、シーケンサ３１に対して、自動的にスタートを指示することができないが、この場合には、自動作曲が完了して、生成された曲データが再生用バッファ７ａに記憶された時点で、自動的にシーケンサ３１へのスタート指示がなされるようにすればよい。
【００３６】
または、図２中、一点鎖線で示すように、最初の自動作曲が指示されると、前記ブロック２２で選択された作曲用データテンプレートに基づいて、初期曲データを生成し（ブロック４１）、この初期曲データを再生用バッファ７ａに記憶して、この初期曲データを最初に自動再生しておくようにしてもよい。
【００３７】
このように、本実施の形態では、自動作曲と自動再生とを並行して行い、自動作曲された曲データが自動再生されているときに、再作曲が指示されると、自動再作曲が完了してから、再作曲後の曲データで再生用バッファ７ａの内容を書き換えるようにしたので、再作曲前の曲データから再作曲後の曲データにリアルタイムに移行させることができる。
【００３８】
また、自動作曲と自動再生を並行して行っているので、再作曲時に音切れを起こすおそれがない（自動再生が音切れをしないように、自動作曲より自動再生を優先させるようなマルチタスク処理としておけばよい）。
【００３９】
なお、本実施の形態では、曲データが再作曲されると、直ちに再生用バッファ７ａの内容を書き換えて、自動再生が、リアルタイムに再作曲された曲データに移行するようにしたが、これに限らず、所定の音楽区切り（たとえば、小節線や拍位置等）まで元の曲データの再生を継続し、その後、再生用バッファ７ａの内容を、再作曲された曲データで書き換えるようにしてもよい。または、両者を切り換え可能に構成してもよい。
【００４０】
また、本実施の形態では、再生用バッファ７ａは、１系列のみ備えるようにしたが、これに限らず、複数系列備えるようにしておき、新たに生成した曲データを、それまでの曲データとは別の系列に記憶し、曲データの読み出しポインタを、新たな系列の対応する位置に切り換えて、曲データの読み出しを継続するようにしてもよい。このようにすると、各系列の曲データを個別に保存することができる。
【００４１】
さらに、本発明を、たとえばゲームのＢＧＭの作曲に適用するようにしてもよい。これにより、ゲームの場面や展開に応じて、そのＢＧＭをリアルタイムに変化させることができ、劇的な効果を付与することができる。
【００４２】
本発明をゲームのＢＧＭの作曲に適用する場合、たとえば、図２の波線で示すように、新たにゲーム制御部６１を設け、前記所定の操作子２ａの操作状態に応じて、変更データの種類とその値を決定する（ブロック２７）。このとき、前記ブロック２８の参照表としては、図３（ｂ）に示すようなもの、すなわち、操作子２ａの操作に応じて切り換えられたステージおよびその状況と、変更データの種類およびその値とを対応づけるものを使用する。なお、図３（ｂ）の参照表と図３（ａ）の参照表では、変更データの種類およびその値は同じものを採用したが、これは便宜上に過ぎず、異なったものを採用するようにしてもよい。
【００４３】
また、本実施の形態では、再作曲するときには、作曲用パラメータは、新たなものを入力し、これに基づいて再作曲するようにしたが、これに限らず、再作曲の指示だけ与えるようにし、前の作曲時に使用した作曲用パラメータをそのまま使用するようにしてもよい。この場合でも、自動作曲には、通常、ランダムに曲データを選択する個所が含まれているので、再作曲された曲データは、それ以前に作曲された曲データとは若干異なっている。
【００４４】
さらに、本実施の形態では、曲データのフォーマットは、スタンダードＭＩＤＩフォーマットを想定しているが、これに限らず、どのようなフォーマットを採用してもよい。
【００４５】
なお、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ（またはＣＰＵ５やＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【００４６】
この場合、記憶媒体から読出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００４７】
プログラムコードを供給するための記憶媒体としては、たとえば、前記フレキシブルディスク２０、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ２１、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ６などを用いることができる。また、他のＭＩＤＩ機器１００や通信ネットワーク１０１を介してサーバコンピュータ１０２からプログラムコードが供給されるようにしてもよい。
【００４８】
また、コンピュータが読出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【００４９】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ５などが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【００５０】
【発明の効果】
以上説明したように、請求項１または４に記載の発明によれば、自動作曲された曲データが再生されているときに、曲データを再自動作曲させるように指示されると、この指示に応じて、曲データが再自動作曲され、再自動作曲が完了すると、前記曲データの再生が、当該再自動作曲された曲データに移行するので、既に作曲され、自動再生中の曲データの途中から、再作曲された曲データにリアルタイムに移行させることができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係る自動作曲装置の概略構成を示すブロック図である。
【図２】図１の自動作曲装置が実行する制御処理の手順を示すブロック図である。
【図３】操作子の種類および操作状態と変更データの種類および値とを対応付ける操作子参照表、および、ゲームのステージおよび状況と変更データの種類および値とを対応付けるゲーム参照表の一例を示す図である。
【符号の説明】
２　操作子群（指示手段），５　ＣＰＵ（自動作曲手段、再生手段、制御手段、変更手段），６　ＲＯＭ（変更手段），７　ＲＡＭ（再生手段），１５　音源回路（再生手段）
【図１】
2004045691.tif 000003
【図２】
2004045691.tif 000004
【図３】
2004045691.tif 000005