(57)【要約】【課題】  演奏制御データに含まれるタイミングデータを時間軸方向にシフトする編集を、効率的、正確かつ直感的に行うことを可能とする手段を提供する。【解決手段】  操作部２０３は、編集画面に表示されるマーカーに対するユーザのドラッグアンドドロップ操作に応じて、マーカーの移動後の位置を示すデータを表示部２０２に送出する。表示部２０２は受け取ったデータに基づき、マーカーにより示される期間を示す期間データを期間データ取得部２０４経由で、またマーカーの時間軸方向の移動量に応じた移動時間データを期間データ取得部２０４経由で、タイミングデータ変更部２０６に送出する。タイミングデータ変更部２０６は、期間データにより示される期間に含まれるイベントデータを演奏制御データから抽出し、抽出したイベントデータに含まれるタイミングデータを、移動時間データに応じて増減させる。【選択図】      図２
2005316195.tif 000002
【特許請求の範囲】
【請求項１】
タイミングを示すタイミングデータと前記タイミングにおいて実行されるべき楽曲演奏に関する処理内容を示す内容データとの組合せであるイベントデータを１以上含む演奏制御データを記憶する演奏制御データ記憶手段と、
特定の期間を示す期間データを取得する期間データ取得手段と、
時間軸方向の移動量を示す移動時間データを取得する移動時間データ取得手段と、
前記演奏制御データに含まれるイベントデータのうち、前記期間データにより示される期間に含まれるタイミングを示すタイミングデータを含むものの少なくとも一部の各々に関し、当該タイミングデータにより示されるタイミングが前記移動時間データにより示される時間軸方向の移動量だけ移動するように当該タイミングデータを変更するタイミングデータ変更手段と
を備えることを特徴とする演奏制御データ編集装置。
【請求項２】
前記演奏制御データに含まれるイベントデータのうち、１以上のイベントデータの各々に関し、当該イベントデータに含まれるタイミングデータにより示されるタイミングに対応する時間軸上の位置に、当該イベントデータを示す第１のマークを表示するとともに、（ａ）期間の始期、（ｂ）期間の終期もしくは（ｃ）期間の始期および終期の両方のいずれかを示す第２のマークを表示する表示手段と、
ユーザの操作に応じて、前記表示手段に対し、前記第２のマークの時間軸上の表示位置を変更するよう指示するマーク移動指示手段と
をさらに備え、
前記期間データ取得手段は、前記第２のマークが（ａ）期間の始期を示す場合には前記第２のマークにより示されるタイミングと前記演奏制御データに含まれるタイミングデータにより示されるタイミングのうち最後のものとの間の期間を示すデータを前記期間データとして取得し、前記第２のマークが（ｂ）期間の終期を示す場合には前記演奏制御データに含まれるタイミングデータにより示されるタイミングのうち最先のものと前記第２のマークにより示されるタイミングとの間の期間を示すデータを前記期間データとして取得し、前記第２のマークが（ｃ）期間の始期および終期の両方を示す場合には前記第２のマークにより示される期間を示すデータを前記期間データとして取得する
ことを特徴とする請求項１に記載の演奏制御データ編集装置。
【請求項３】
前記移動時間データ取得手段は、前記表示手段が前記マーク移動指示手段による指示に従い前記第２のマークの時間軸上の表示位置を変更した場合、前記変更に対応する時間軸上の移動量を示すデータを前記移動時間データとして取得する
ことを特徴とする請求項２に記載の演奏制御データ編集装置。
【請求項４】
前記演奏制御データは、タイミングを示すタイミングデータと、複数のイベントデータをグループ化したデータを内容とする内容データとの組合せであるフレーズデータを含み、
前記タイミングデータ変更手段は、前記期間データにより示される期間に含まれるタイミングを示すタイミングデータを含むフレーズデータに含まれるイベントデータの少なくとも一部の各々に関し、当該タイミングデータにより示されるタイミングが前記移動時間データにより示される時間軸方向の移動量だけ移動するように当該フレーズデータに含まれるタイミングデータもしくは当該イベントデータの各々に含まれるタイミングデータを変更する
ことを特徴とする請求項１に記載の演奏制御データ編集装置。
【請求項５】
前記演奏制御データに含まれるイベントデータに含まれる内容データの属性に関する条件を示す属性条件データを取得する属性条件データ取得手段
をさらに備え、
前記タイミングデータ変更手段は、前記演奏制御データに含まれるイベントデータのうち、当該イベントデータの各々に含まれる内容データの属性が前記属性条件データ取得手段により取得される属性条件データにより示される属性条件を満たすものに関してのみ、当該イベントデータに含まれるタイミングデータにより示されるタイミングが前記移動時間データにより示される時間軸方向の移動量だけ移動するように当該タイミングデータを変更する
ことを特徴とする請求項１に記載の演奏制御データ編集装置。
【請求項６】
前記演奏制御データに含まれるイベントデータのうち少なくとも１以上のイベントデータに含まれる内容データは、楽音の波形を示す波形データによる当該楽音の再生を指示するデータである
ことを特徴とする請求項１に記載の演奏制御データ編集装置。
【請求項７】
特定の期間を示す期間データを取得する期間データ取得過程と、
時間軸方向の移動量を示す移動時間データを取得する移動時間データ取得過程と、
タイミングを示すタイミングデータと前記タイミングにおいて実行されるべき楽曲演奏に関する処理内容を示す内容データとの組合せであるイベントデータを１以上含む演奏制御データを記憶装置から読み出し、前記演奏制御データに含まれるイベントデータのうち、前記期間データにより示される期間に含まれるタイミングを示すタイミングデータを含むものの少なくとも一部の各々に関し、当該タイミングデータにより示されるタイミングが前記移動時間データにより示される時間軸方向の移動量だけ移動するように当該タイミングデータを変更するタイミングデータ変更過程と
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、演奏制御データの生成技術に関し、より具体的には、既存の演奏制御データの編集を容易化する技術に関する。
【背景技術】
【０００２】
ミュージックシーケンサと呼ばれる自動演奏装置により、演奏制御データに基づいた自動演奏を行わせる技術がある。そして、自動演奏用の演奏制御データを作成および編集する装置として、楽曲オーサリングツールと呼ばれる装置がある。
【０００３】
演奏制御データは、一般的に、演奏に関する処理内容を示す内容データと、内容データに応じた処理を行うべきタイミングを示すタイミングデータとの組合せであるイベントデータを複数含んでいる。図１０は、演奏制御データを例示した図であり、図１０の各行のデータがイベントデータを示している。図１０において、例えば第１行のイベントデータは、「１：１：００１」で示されるタイミングで、トラック「１」の楽音として音高Ｃ５の楽音のノートオン（発音開始）を指示するデータである。ここで、トラックとは楽曲演奏における１つの演奏パートに対応するイベントデータのグループのことである。
【０００４】
楽曲オーサリングツールは、演奏制御データの内容を表示する機能を有している。その表示形式としてピアノロール表示形式が広く用いられている。図１１は、図１０に示した演奏制御データのピアノロール表示形式で表示した図である。ピアノロール表示形式においては、横軸を時間軸、縦軸を音高軸とする座標上に、イベントデータにより示される楽音の発音期間を示すバーが表示される。例えば、バー１１０１は、図１０の第１行のイベントデータによりノートオン（発音開始）され、第４行のイベントデータによりノートオフ（発音終了）される音高Ｃ５の楽音の発音期間を示している。すなわち、バー１１０１の左端位置はノートオンのタイミングである「１：１：００１」を示し、バー１１０１の右端位置はノートオフのタイミングである「１：１：２３２」を示している。また、異なるトラックのイベントデータに対応するバーは、異なる色等により区別して表示される。
【０００５】
ピアノロール表示において、ユーザは編集したいイベントデータに対応するバーを、例えばマウスポインタによりドラッグアンドドロップすることにより、時間軸方向に移動させることができる。そのようなユーザの操作に応じて、楽曲オーサリングツールは、当該バーに対応するノートオンを示すイベントデータおよびノートオフを示すイベントデータの各々のタイミングデータを、バーの時間軸方向の移動量に応じた分だけ増減させる。また、ユーザが複数のバーを順次選択し、それらをグループ化した後、グループ化したバーを時間軸方向に移動させた場合、楽曲オーサリングツールは、移動されたグループに含まれる全てのバーに対応するイベントデータの各々のタイミングデータを、時間軸方向の移動量に応じた分だけ増減させる。その結果、ユーザはイベントデータにより示される処理の発生タイミングを視覚により確認しつつ、当該イベントデータに含まれるタイミングデータを容易に変更することができる。
【０００６】
図１０に示される演奏制御データは、指定された音高の楽音を生成可能な音源装置（以下、「楽音生成モジュール」と呼ぶ）に対し、楽音の発音開始および発音終了を指示する演奏制御データである。楽音生成モジュール用の演奏制御データとしては、例えばＳＭＦ（Ｓｔａｎｄａｒｄ  ＭＩＤＩ  Ｆｉｌｅ）が広く用いられている。一方、単発の楽音ではなく、演奏フレーズを示す波形データを演奏音として再生可能な音源装置（以下、「波形再生モジュール」と呼ぶ）に対し、波形データの再生開始等を指示する演奏制御データがある。図１２は波形再生モジュール用の演奏制御データを例示した図であり、図１２の各行のデータがイベントデータを示している。図１２において、例えば第１行のイベントデータは、「１：２：２２０」で示されるタイミングで、トラック「１」の演奏フレーズとして波形データ「フレーズ００５７．ＷＡＶ」に示される演奏フレーズの再生を指示するデータである。
【０００７】
図１２に示されるタイプの演奏制御データを作成および編集可能な楽曲オーサリングツールは、例えば図１３に示す表示形式（以下、「シーケンスマップ表示形式」と呼ぶ）により演奏制御データの内容を表示する機能を有している。図１３の表示において、横軸は時間軸を示し、縦軸はトラックの別を示している。例えば、ブロック１３０１は、図１２の第１行のイベントデータに従って再生される演奏フレーズの発音期間を示している。
【０００８】
さらに、楽音生成モジュール用の演奏制御データと波形再生モジュール用の演奏制御データの両方を同時に管理する演奏制御データ（以下、「ハイブリッド型の演奏制御データ」と呼ぶ）がある。図１４は、ハイブリッド型の演奏制御データを例示した図であり、図１４の各行のデータがイベントデータを示している。図１４において、例えば第１行のイベントデータは、図１２の第１行と同じデータであり、波形データ「フレーズ００５７．ＷＡＶ」に示される演奏フレーズの再生を波形再生モジュールに対し指示する一方、第２行のイベントデータは、ＳＭＦ「フレーズ０７５８．ＭＩＤ」に従った演奏の開始を、楽音生成モジュールに対し指示するデータである。この場合、ハイブリッド型の演奏制御データにより指定される楽音生成モジュール用のデータは、トラックの別がない点を除き、図１０に例示した演奏制御データと同様である。
【０００９】
図１４に示されるタイプの演奏制御データを作成および編集可能な楽曲オーサリングツールは、例えば図１５に示すシーケンスマップ表示形式により演奏制御データの内容を表示する機能を有している。例えば、ブロック１５０１は、図１４の第１行のイベントデータに従って波形再生モジュールにより再生される演奏フレーズの発音期間を、またブロック１５０２は、図１４の第２行のイベントデータに従って楽音生成モジュールにより自動演奏される演奏フレーズの発音期間を示している。
【００１０】
図１３および図１５に示されるシーケンスマップ表示形式でイベントデータの内容が表示されている場合、上述したピアノロール表示形式における場合と同様に、ユーザは編集したいイベントデータに対応するブロックを、例えばマウスポインタによりドラッグアンドドロップすることにより時間軸方向に移動させることができる。そのようなユーザの操作に応じて、楽曲オーサリングツールは、当該ブロックに対応するイベントデータのタイミングデータを、ブロックの時間軸方向の移動量に応じた分だけ増減させる。また、ユーザが複数のブロックを順次選択し、それらをグループ化した後、グループ化したブロック群を時間軸方向に移動させた場合、楽曲オーサリングツールは、移動された全てのブロックに対応するイベントデータの各々のタイミングデータを、時間軸方向の移動量に応じた分だけ増減させる。その結果、ユーザはイベントデータにより示される処理の発生タイミングを視覚により確認しつつ、当該イベントデータに含まれるタイミングデータを容易に変更することができる。
【００１１】
上記のように、演奏制御データに含まれるイベントデータ群を選択し、選択したイベントデータ群に含まれる複数のタイミングデータを一定時間量だけ同時に変更することを可能とする技術を開示している文献として、例えば特許文献１がある。
【特許文献１】特開２００１−２６５３３３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
ところで、ユーザが演奏制御データの編集を行う際、演奏における特定の期間に処理を指示するイベントデータ群を一括して時間軸方向に移動したい、という場合がしばしばある。例えば、第３小節の４拍目から第５小節の４拍目までの２小節に含まれるイベントデータを、全て８小節分だけ後にシフトさせたいような場合である。
【００１３】
従来の楽曲オーサリングツールを用いて上記のような演奏情報の変更を行う場合、ユーザは特定の期間に含まれるイベントデータ群を示すバーやブロックを個々に順次選択してグループ化した後、グループ化したそれらの表示物を画面上でドラッグアンドドロップする等の操作を行う必要があった。その場合、以下のような不都合があった。
（ａ）操作の対象となるバーもしくはブロックを個々に選択する必要があり手間がかかる。
（ｂ）複数画面に渡るバーもしくはブロックを選択する必要がある場合、個々の画面を順次スクロールさせて表示する必要があり手間がかかる。
（ｃ）複数のバーもしくはブロックをグループ化するための操作、例えばシフトキーの押下等が必要であり手間がかかる。
（ｄ）上記のように手間がかかるため、一部のバーやブロックを選択し忘れたり、選択の途中で誤操作によりそれまでの選択が解除される等のミスが発生しやすい。
（ｅ）特定の期間に含まれるイベントデータ群の時間軸方向のシフトを行いたいにもかかわらず、個々のイベントデータもしくはイベントデータ群の選択を行う必要があるため、編集におけるユーザの思考や感覚が中断され、直感的な編集作業を行うことが難しい。
【００１４】
上記の状況に鑑み、本発明は、演奏制御データに含まれるタイミングデータを時間軸方向にシフトする編集を行うユーザが、より効率的、正確かつ直感的に当該編集作業を行うことを可能とする手段を提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を達成するために、本発明は、タイミングを示すタイミングデータと前記タイミングにおいて実行されるべき楽曲演奏に関する処理内容を示す内容データとの組合せであるイベントデータを１以上含む演奏制御データを記憶する演奏制御データ記憶手段と、特定の期間を示す期間データを取得する期間データ取得手段と、時間軸方向の移動量を示す移動時間データを取得する移動時間データ取得手段と、前記演奏制御データに含まれるイベントデータのうち、前記期間データにより示される期間に含まれるタイミングを示すタイミングデータを含むものの少なくとも一部の各々に関し、当該タイミングデータにより示されるタイミングが前記移動時間データにより示される時間軸方向の移動量だけ移動するように当該タイミングデータを変更するタイミングデータ変更手段とを備えることを特徴とする演奏制御データ編集装置を提供する。
【００１６】
かかる構成の演奏制御データ編集装置によれば、ユーザは個々のイベントデータを選択することなく、期間データおよび移動時間データを演奏制御データ編集装置に対し入力等するのみで、演奏制御データに含まれる特定期間のタイミングデータを一括して一定時間量だけ増減する編集操作を行うことができる。
【００１７】
好ましい態様として、演奏制御データ編集装置は、前記演奏制御データに含まれるイベントデータのうち、１以上のイベントデータの各々に関し、当該イベントデータに含まれるタイミングデータにより示されるタイミングに対応する時間軸上の位置に、当該イベントデータを示す第１のマークを表示するとともに、（ａ）期間の始期、（ｂ）期間の終期もしくは（ｃ）期間の始期および終期の両方のいずれかを示す第２のマークを表示する表示手段と、ユーザの操作に応じて、前記表示手段に対し、前記第２のマークの時間軸上の表示位置を変更するよう指示するマーク移動指示手段とをさらに備え、前記期間データ取得手段は、前記第２のマークが（ａ）期間の始期を示す場合には前記第２のマークにより示されるタイミングと前記演奏制御データに含まれるタイミングデータにより示されるタイミングのうち最後のものとの間の期間を示すデータを前記期間データとして取得し、前記第２のマークが（ｂ）期間の終期を示す場合には前記演奏制御データに含まれるタイミングデータにより示されるタイミングのうち最先のものと前記第２のマークにより示されるタイミングとの間の期間を示すデータを前記期間データとして取得し、前記第２のマークが（ｃ）期間の始期および終期の両方を示す場合には前記第２のマークにより示される期間を示すデータを前記期間データとして取得する。
【００１８】
かかる構成の演奏制御データ編集装置によれば、マーカー等の第２の表示を時間軸方向の適する位置に配置するだけで、ユーザはタイミングデータの変更を行いたいと考える複数のイベントデータを同時に選択することができる。その際、個々のイベントデータの内容はバー、ブロック等の第１のマークにより視覚的に確認可能であるので、ユーザは直感的かつ正確に希望するイベントデータを選択することができる。さらに、特定のタイミング以降の全てのイベントデータや、特定のタイミング以前の全てのイベントデータを選択したいと考える場合、ユーザは当該特定のタイミングを示す時間軸方向の位置に第２の表示を配置するだけでよく、始期および終期を示す位置にそれぞれ第２の表示を配置する場合と比較して手間が省ける。
【００１９】
また、他の好ましい態様として、演奏制御データ編集装置の前記移動時間データ取得手段は、前記表示手段が前記マーク移動指示手段による指示に従い前記第２のマークの時間軸上の表示位置を変更した場合、前記変更に対応する時間軸上の移動量を示すデータを前記移動時間データとして取得する。
【００２０】
かかる構成の演奏制御データ編集装置によれば、ユーザはマーカー等の第２の表示を移動させる操作により、選択した複数のイベントデータの時間軸方向の移動量を直感的に演奏制御データ編集装置に対し入力することができる。
【００２１】
また、他の好ましい態様として、演奏制御データ編集装置の前記演奏制御データは、タイミングを示すタイミングデータと、複数のイベントデータをグループ化したデータを内容とする内容データとの組合せであるフレーズデータを含み、前記タイミングデータ変更手段は、前記期間データにより示される期間に含まれるタイミングを示すタイミングデータを含むフレーズデータに含まれるイベントデータの少なくとも一部の各々に関し、当該タイミングデータにより示されるタイミングが前記移動時間データにより示される時間軸方向の移動量だけ移動するように当該フレーズデータに含まれるタイミングデータもしくは当該イベントデータの各々に含まれるタイミングデータを変更する。
【００２２】
かかる構成の演奏制御データ編集装置によれば、ユーザは特定の期間に含まれる複数のイベントデータ群を、当該期間を示す期間データを演奏制御データ編集装置に入力するだけで容易に選択することができる。
【００２３】
また、好ましい態様として、演奏制御データ編集装置は、前記演奏制御データに含まれるイベントデータに含まれる内容データの属性に関する条件を示す属性条件データを取得する属性条件データ取得手段をさらに備え、前記タイミングデータ変更手段は、前記演奏制御データに含まれるイベントデータのうち、当該イベントデータの各々に含まれる内容データの属性が前記属性条件データ取得手段により取得される属性条件データにより示される属性条件を満たすものに関してのみ、当該イベントデータに含まれるタイミングデータにより示されるタイミングが前記移動時間データにより示される時間軸方向の移動量だけ移動するように当該タイミングデータを変更する。
【００２４】
かかる構成の演奏制御データ編集装置によれば、期間データにより指定される期間に含まれるイベントデータのうち、例えば特定のトラックのイベントデータについてのみ変更を行いたい、もしくはノートオンおよびノートオフに関するイベントデータについてのみ変更を行いたい、といった場合においても、ユーザは期間データを演奏制御データ編集装置に入力するだけで、希望する編集対象のイベントデータを容易に選択することができる。
【００２５】
また、好ましい態様として、演奏制御データ編集装置の前記演奏制御データに含まれるイベントデータのうち少なくとも１以上のイベントデータに含まれる内容データは、楽音の波形を示す波形データによる当該楽音の再生を指示するデータであってもよい。
【００２６】
すなわち、本発明にかかる演奏制御データ編集装置は、波形データに示される演奏フレーズの再生を行うタイプの音源装置に対し演奏指示を与えるための演奏制御データの編集に関しても、利用可能である。
【００２７】
さらに、本発明は、特定の期間を示す期間データを取得する期間データ取得過程と、時間軸方向の移動量を示す移動時間データを取得する移動時間データ取得過程と、タイミングを示すタイミングデータと前記タイミングにおいて実行されるべき楽曲演奏に関する処理内容を示す内容データとの組合せであるイベントデータを１以上含む演奏制御データを記憶装置から読み出し、前記演奏制御データに含まれるイベントデータのうち、前記期間データにより示される期間に含まれるタイミングを示すタイミングデータを含むものの少なくとも一部の各々に関し、当該タイミングデータにより示されるタイミングが前記移動時間データにより示される時間軸方向の移動量だけ移動するように当該タイミングデータを変更するタイミングデータ変更過程とをコンピュータに実行させることを特徴とするプログラムを提供する。
【００２８】
かかるプログラムによれば、ユーザは期間データおよび移動時間データをコンピュータに入力等するのみで、当該コンピュータに対し、演奏制御データに含まれる特定期間のタイミングデータを一括して一定時間量だけ増減する編集処理を行わせることができる。
【発明の効果】
【００２９】
本発明にかかる演奏制御データ編集装置およびプログラムによれば、ユーザは、直感的、正確かつ容易に、演奏制御データに含まれる各イベントデータのタイミングデータについて、一括変更を行うことができる。
【発明を実施するための最良の形態】
【００３０】
［実施形態］
［１．構成］
図１は、この発明の一実施形態にかかる演奏制御データ編集装置（以下、「楽曲オーサリングツール１０」と呼ぶ）を実現するコンピュータ１の構成を示したブロック図である。コンピュータ１は、一般的なコンピュータと同様に、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０３、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）１０４、ディスプレイ１０５、キーボード１０６およびマウス１０７を有している。
【００３１】
コンピュータ１は、さらに、楽音を示すデジタルオーディオデータを生成するＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）である楽音生成部１０８、Ｄ／Ａ（Ｄｉｇｉｔａｌ  ｔｏ  Ａｎａｌｏｇ）コンバータおよびアンプ等を備え楽音生成部１０８により生成されたデジタルオーディオデータをアナログオーディオ信号に変換して出力するサウンドシステム１０９、サウンドシステム１０９により出力されたアナログオーディオ信号を音として発音するスピーカ１１０、そして各種の外部機器との間でデータの送受信を行うデータ入出力Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）１１１を有している。また、コンピュータ１は発振器（図略）を有しており、ＣＰＵ１０１、楽音生成部１０８、サウンドシステム１０９等は発振器から共通のクロック信号を取得することにより、基準時点からの経過時間を正確に算出可能であるとともに、構成部間の同期処理を行うことが可能である。
【００３２】
楽音生成部１０８は、ＣＰＵ１０１の楽音の生成指示に従い、ＨＤ１０４に記憶されている演奏制御データを用いて、指定された音色、音高および音強の楽音を示すデータを生成し、指定されたタイミングでサウンドシステム１０９に送出する。すなわち、楽音生成部１０８は楽音生成モジュールの機能を備えている。楽音生成部１０８が楽音を生成するための音源方式は特に限られず、ＦＭ（Ｆｒｅｑｕｅｎｃｙ  Ｍｏｄｕｌａｔｉｏｎ）音源方式、ＰＣＭ（Ｐｕｌｓｅ  Ｃｏｄｅ  Ｍｏｄｕｌａｔｉｏｎ）音源方式、物理モデル音源方式等のいずれであってもよい。また、楽音生成部１０８は、ＣＰＵ１０１の波形データの再生指示に従い、ＨＤ１０４に記憶されている指定された波形データを指定された速度、音程、音量等を示すデータに加工した後、指定されたタイミングでサウンドシステム１０９に送出する。すなわち、楽音生成部１０８は波形再生モジュールの機能も備えている。
【００３３】
データ入出力Ｉ／Ｆ１１１は、ＭＩＤＩ（Ｍｕｓｉｃａｌ  Ｉｎｓｔｒｕｍｅｎｔ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、有線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、無線ＬＡＮ等の各種のデータ送受信規格に従ったＩ／Ｆ機能を備えており、図１は、外部記憶装置１２１、携帯電話１２２およびインターネット１２３がデータ入出力Ｉ／Ｆ１１１に接続されている様子を例示している。また、コンピュータ１において、サウンドシステム１０９およびスピーカ１１０以外の構成部はバス１１２を介して接続されており、相互にデータの送受信が可能である。
【００３４】
ＣＰＵ１０１は、ＨＤ１０４に記憶された特定のアプリケーションプログラムを実行することにより、本実施形態にかかる楽曲オーサリングツール１０としての機能を実現する。図２は、楽曲オーサリングツール１０の機能構成を示したブロック図である。ただし、楽曲オーサリングツール１０が備える演奏制御データに従った自動演奏処理や演奏制御データの外部機器との送受信処理等に関する機能構成については、一般的な楽曲オーサリングツールのものと同様であるため、図２においては省略されている。
【００３５】
楽曲オーサリングツール１０は、演奏制御データを記憶する演奏制御データ記憶部２０１、演奏制御データの内容を表示する表示部２０２、ユーザが楽曲オーサリングツール１０に対し指示を与える際に用いられる操作部２０３、ユーザの操作部２０３を用いた操作に応じて変更対象のイベントデータの含まれる期間を示す期間データを取得する期間データ取得部２０４、ユーザの操作部２０３を用いた操作に応じて変更対象のイベントデータのグループ属性を示す属性条件データを取得する属性条件データ取得部２０５、変更対象のイベントデータに含まれるタイミングデータの変更を行うタイミングデータ変更部２０６およびユーザの操作部２０３を用いた操作に応じて変更対象のイベントデータの時間的な移動量を示す移動時間データを取得する移動時間データ取得部２０７を機能構成部として備えている。
【００３６】
演奏制御データ記憶部２０１および表示部２０２は、ＣＰＵ１０１の制御のもとで、それぞれＨＤ１０４およびディスプレイ１０５により実現される。また、操作部２０３は、ＣＰＵ１０１の制御のもとで、キーボード１０６およびマウス１０７により実現される。期間データ取得部２０４、属性条件データ取得部２０５、タイミングデータ変更部２０６および移動時間データ取得部２０７は、ＣＰＵ１０１により実現される。
【００３７】
ところで、本実施形態においては、コンピュータにアプリケーションプログラムを実行させることにより楽曲オーサリングツール１０を実現するものとするが、その代わりに、図２に示す機能構成部の各々を専用のＬＳＩ等のハードウェアにより実現し、それらのハードウェアを組み合わせることにより、楽曲オーサリングツール１０を構成するようにしてもよい。
【００３８】
図３は、演奏制御データ記憶部２０１に記憶される演奏制御データを例示した図である。演奏制御データは複数のイベントデータを含み、図３における各行のデータが各イベントデータを示している。各イベントデータは、各イベントデータを識別するための番号であるイベントＩＤ、処理の指示を与えるタイミングを示すタイミングデータおよび処理の内容を示す内容データを含んでいる。以下、イベントＩＤが「＃」（＃は数値）であるイベントデータを、イベントデータ「＃」のように呼ぶ。
【００３９】
タイミングデータは、「１：１：００１」のように３つの数値の列で表現され、それぞれの数値は小節番号、拍番号およびティック番号を示している。ティック番号とは、１拍の長さを所定数に等分した時間単位であるティックの番号であり、以下の説明においては、例として１ティック＝１／４８０拍長とする。例えば、「１：１：００１」は、第１小節第１拍の開始タイミングを示し、「１：１：００２」は第１小節第１拍の開始タイミングから１ティック（１／４８０拍長）だけ経過したタイミングを示している。演奏制御データにおいて、イベントデータは、タイミングデータにより示されるタイミングが早い順に並べられている。
【００４０】
内容データは、トラック、出力先、種別およびパラメータの各項目を含んでいる。トラックは、各イベントデータがいずれの演奏パートに関するものであるかを識別するための数値である。また、全ての演奏パートに関するイベントデータのトラックの値は「ＡＬＬ」となる。出力先は、各トラックのイベントデータが、いずれの音源モジュールに対し送出されるかを示すデータであり、楽音生成部１０８により実現される「楽音生成モジュール」または「波形再生モジュール」、もしくはそれらの両方を示す「ＡＬＬ」のいずれかである。種別は、イベントデータが指示する処理の内容の種類を示すデータであり、ＳＭＦに従った演奏指示の開始を意味する「演奏開始」、波形データの再生開始を意味する「再生開始」、そして演奏の音量変更を意味する「音量」のいずれかである。種別としては、「演奏開始」、「再生開始」および「音量」以外にも、音響効果の変更を指示するイベントデータの種別としての「コーラス」や「リバーブ」、音色の変更を指示するイベントデータの種別としての「音色」等、様々なものが利用可能であるが、以下においては説明の簡略化のため、「演奏開始」、「再生開始」および「音量」のみを用いる。
【００４１】
内容データに含まれるパラメータは、種別により区別される各種のイベントデータにおいて、それぞれ必要となる各種の値である。種別が「演奏開始」であるイベントデータは、演奏指示の開始の対象となるＳＭＦのファイル名をパラメータとして持つ。種別が「再生開始」であるイベントデータは、再生の開始の対象となる波形データのファイル名をパラメータとして持つ。また、種別が「音量」であるイベントデータは、変更後の音量を示す０〜１２７のいずれかの整数値をパラメータとして持つ。この場合、イベントデータのパラメータにより指定されるＳＭＦおよび波形データは、図３に示す演奏制御データの外部ファイルとして演奏制御データ記憶部２０１や外部記憶装置１２１等に格納されていてもよいし、また図３に示す演奏制御データに内部ファイルとして含まれる形式で演奏制御データ記憶部２０１に格納されていてもよい。
【００４２】
［２．動作］
以下に、楽曲オーサリングツール１０のユーザが、既存の演奏制御データに含まれるイベントデータのうち、希望する期間に含まれるイベントデータのタイミングデータを一括変更したい場合の操作および楽曲オーサリングツール１０の動作を図２を参照しつつ説明する。
【００４３】
ユーザは、マウス１０７等を操作して、コンピュータ１に楽曲オーサリングツール１０のアプリケーションプログラムを実行するよう指示する。その指示に応じて、コンピュータ１はＨＤ１０４に格納されているアプリケーションプログラムに従った処理を行い、その結果、図２に示される機能構成を備えた楽曲オーサリングツール１０が実現される。楽曲オーサリングツール１０の初期メニュー画面（図示略）において、ユーザが編集を行う演奏制御データを指定すると、楽曲オーサリングツール１０の演奏制御データ記憶部２０１はユーザにより指定された演奏制御データを表示部２０２に送出する（Ｆ１０１）。
【００４４】
表示部２０２は、受け取った演奏制御データに基づきその内容を示す画像データを生成し、生成した画像データに従った画面を表示する。図４は、図３に示した演奏制御データがユーザにより指定された場合に表示部２０２により表示される画面（以下、「編集画面」と呼ぶ）を示す図である。楽曲オーサリングツール１０の編集画面の左部には、トラック情報エリア４０１が設けられている。トラック情報エリア４０１は、トラック毎に、出力先および種別の別を表示するエリアである。トラック情報エリア４０１には、ユーザが変更の対象とするイベントデータのトラックおよび種別を指定するためのチェックボックス群（図４の「変更」）が設けられている。
【００４５】
楽曲オーサリングツール１０の編集画面の右部にはシーケンス情報エリア４０２が設けられている。シーケンス情報エリア４０２は、トラック情報エリア４０１により示されるトラックおよび種別に対応するイベントデータの内容を表示するエリアである。シーケンス情報エリア４０２には、各トラックおよび種別の組合せに対応する行が複数設けられている。また、シーケンス情報エリア４０２の左右方向は時間軸に対応し、シーケンス情報エリア４０２の上部には演奏の小節数が表示されると同時に、縦方向に各小節の境界を示すガイドラインが表示される。種別が再生である行には、再生される波形データの再生期間を示すボックスが、また種別が演奏である行には、演奏指示期間を示すボックスがそれぞれ表示される。各ボックスの左端位置は再生期間もしくは演奏指示期間の始期を、また各ボックスの右端位置は再生期間もしくは演奏指示期間の終期を示している。シーケンス情報エリア４０２において、種別が音量である行には、音量の変化を示すグラフが表示される。各行における各グラフの上下方向の位置が、音量の値を示している。
【００４６】
シーケンス情報エリア４０２の上部の小節数表示のさらに上部には、マーカー４０３およびマーカー４０４が表示される。マーカー４０３およびマーカー４０４はそれぞれ、ユーザが期間を指定することにより操作の対象とするボックスもしくはグラフを選択する際の、当該期間の始期および終期を示す表示である。さらに、編集画面の上部には、マーカー４０３およびマーカー４０４により示される始期および終期を数値により表示するためのボックス４０５およびボックス４０６が表示される。楽曲オーサリングツール１０により演奏制御データがはじめて表示され、以下に説明するユーザによるマーカー４０３およびマーカー４０４の移動操作等が行われる前には、マーカー４０３およびマーカー４０４の位置、またそれらの位置に対応するボックス４０５およびボックス４０６の数値としては、初期値として、例えば第１小節第１拍第１ティックが用いられる。
【００４７】
編集画面の下部には、ユーザが演奏制御データに従った自動演奏処理の開始を楽曲オーサリングツール１０に対し指示するためのボタン４０７と、ユーザが変更後の演奏制御データを楽曲オーサリングツール１０の終了後も利用可能な形式でＨＤ１０４に保存するよう楽曲オーサリングツール１０に対し指示するためのボタン４０８が表示される。
【００４８】
ユーザが、演奏制御データに含まれるイベントデータのうち、あるタイミング（以下、「始期タイミング」と呼ぶ）以降の処理を指示するもの、すなわちタイミングデータがあるタイミング以降のタイミングを示すものを全て、それらの時間的な相対関係を維持しながら時間的に移動させたい場合、ユーザはまず、マーカー４０３をマウスポインタでドラッグし、始期タイミングに対応する位置でドロップする操作を行う。そのユーザの処理に応じて、操作部２０３はユーザによりボタンダウンされた際のマウスポインタの位置およびボタンアップされた際のマウスポインタの位置を示すデータを表示部２０２に送出する（Ｆ１０２）。
【００４９】
表示部２０２は、操作部２０３からボタンダウン位置およびボタンアップ位置を示すデータを受け取ると、ボタンダウン位置を示すデータから、ユーザによる操作がマーカー４０３に対する操作であることを特定し、またボタンアップ位置を示すデータから、マーカー４０３の新たな位置を特定する。表示部２０２は、そのように特定した新たな位置に、マーカー４０３を再表示する。また、表示部２０２は、マーカー４０３の新たな位置に応じたタイミングを算出し、算出したタイミングを示すデータ（以下、「始期タイミングデータ」と呼ぶ）により、ボックス４０５の表示を更新する。さらに、表示部２０２は、始期タイミングデータを期間データ取得部２０４に送出する（Ｆ１０３）。
【００５０】
続いて、ユーザはマーカー４０３により示される始期タイミングに基づくイベントデータの移動処理を有効化するため、マーカー４０３をダブルクリックする。そのユーザの操作に応じて、ダブルクリックされた位置を示すデータが操作部２０３から表示部２０２に送出される（Ｆ１０２）。表示部２０２は、ダブルクリックされた位置を示すデータに基づき、マーカー４０３の表示色を例えば黒に変更して表示の更新を行うと共に、マーカー４０３の位置に対応する縦方向のガイドラインを新たに表示する。表示部２０２は、マーカー４０３が有効化されたことを示すデータ（以下、「始期有効化データ」と呼ぶ）を期間データ取得部２０４に送出する（Ｆ１０３）。
【００５１】
期間データ取得部２０４は始期有効化データを受け取ると、先に受け取った始期タイミングデータを始期タイミングとし、演奏制御データの最後のタイミングを終期タイミングとする期間データを生成し、生成した期間データをタイミングデータ変更部２０６に送出する（Ｆ１０４）。
【００５２】
さらに、表示部２０２は上記のようにマーカー４０３の表示を更新すると、トラック情報エリア４０１の「変更」の項目に含まれる全てのチェックボックスをチェックされた状態に更新して表示する。この表示は、ユーザによりマーカー４０３もしくはマーカー４０４が有効化された際、初期値として全てのトラックおよび種別のイベントデータが編集の対象となることを示すものである。表示部２０２は、チェック状態で表示したトラックおよび種別を示すデータ（以下、「属性条件データ」と呼ぶ）を属性条件データ取得部２０５に送出する（Ｆ１０５）。属性条件データ取得部２０５は、属性条件データを受け取ると、そのデータをタイミングデータ変更部２０６に送出する（Ｆ１０６）。
【００５３】
タイミングデータ変更部２０６は、上記のように期間データおよび属性条件データを受け取ると、演奏制御データ（図３参照）に含まれるイベントデータのうち、種別が「再生開始」もしくは「演奏開始」のものを抽出し、さらにそれらのイベントデータのタイミングデータにより示されるタイミングが、期間データにより示される期間に含まれるものを抽出する。例えば、期間データが「２：３：３２５〜６：４：２６５」であるとすると、図３に示したイベントデータ「１５」、イベントデータ「２４」、イベントデータ「２６」およびイベントデータ「３４」が抽出される。以下、これらのイベントデータを「開始イベントデータ」と呼ぶ。
【００５４】
続いて、タイミングデータ変更部２０６は、演奏制御データに含まれるイベントデータのうち、開始イベントデータの各々に対応する終了を示すイベントデータ（以下、「終了イベントデータ」と呼ぶ）として、種別が「再生終了」もしくは「演奏終了」でありトラックおよびパラメータに示されるファイル名が同じものを抽出する。例えば、タイミングデータ変更部２０６は、イベントデータ「１５」に対応する終了イベントデータとして、イベントデータ「２２」を抽出する。
【００５５】
続いて、タイミングデータ変更部２０６は、上記のように抽出した開始イベントデータと終了イベントデータの組の各々に関して、トラックが同じであり、開始イベントデータのタイミングデータおよび終了イベントデータのタイミングデータにより示される期間に含まれ、かつ種別が「音量」であるもの（以下、「トラック音量イベントデータ」と呼ぶ）を抽出する。例えば、開始イベントデータ「１５」と終了イベントデータ「２２」との組に関しては、イベントデータ「１６」、イベントデータ「１８」、イベントデータ「２０」およびイベントデータ「２１」がトラック音量イベントデータとして抽出される。
【００５６】
さらに、タイミングデータ変更部２０６は、トラックが「ＡＬＬ」であり、種別が「音量」であり、さらにそれらのイベントデータのタイミングデータにより示されるタイミングが、期間データにより示される期間に含まれるものを抽出する。例えば、期間データが「２：３：３２５〜６：４：２６５」であるとすると、イベントデータ「２３」、イベントデータ「３２」およびイベントデータ「３６」が抽出される。以下、これらのイベントデータを「全体音量イベントデータ」と呼ぶ。
【００５７】
タイミングデータ変更部２０６は、上記のように抽出した開始イベントデータ、終了イベントデータ、トラック音量イベントデータおよび全体音量イベントデータのうち、先に受け取った属性条件データにより示されるトラックおよび種別に該当するものをさらに抽出する。この場合、属性条件データには全てのトラックおよび種別の組合せが含まれているので、タイミングデータ変更部２０６は既に抽出している開始イベントデータ等の全てを抽出する。タイミングデータ変更部２０６は、そのように抽出したイベントデータを表示部２０２に送出する（Ｆ１０７）。
【００５８】
表示部２０２は、タイミングデータ変更部２０６からイベントデータを受け取ると、受け取った開始イベントデータおよび終了イベントデータに対応するボックスを斜線表示に、またトラック音量イベントデータおよび全体音量イベントデータに対応するグラフを太線表示に変更して表示の更新を行う。その表示の更新により、ユーザは以下の移動操作の対象となるボックスおよびグラフを容易に識別することが可能となる。図５は、ユーザによるマーカー４０３の有効化操作に応じて、上記のように表示が更新された後の編集画面を示す図である。
【００５９】
続いて、ユーザは、斜体表示されているボックスおよび太線表示されているグラフを一括して移動したい時間量に対応する距離だけ、有効化したマーカー４０３をドラッグした後、ドロップする。そのユーザの操作に応じて、操作部２０３はユーザによりボタンダウンされた際のマウスポインタの位置およびボタンアップされた際のマウスポインタの位置を示すデータを表示部２０２に送出する（Ｆ１０２）。
【００６０】
表示部２０２は、操作部２０３からボタンダウン位置およびボタンアップ位置を示すデータを受け取ると、ボタンダウン位置を示すデータから、ユーザによる操作がマーカー４０３に対する操作であることを特定し、またボタンアップ位置を示すデータから、マーカー４０３の新たな位置を特定する。表示部２０２は、そのように特定した新たな位置に、マーカー４０３を再表示すると同時に、斜体表示のボックスおよび太線表示のグラフの全てを、表示更新前のマーカー４０３と表示更新後のマーカー４０３との時間軸方向の距離だけ移動して再表示する。また、表示部２０２は、マーカー４０３の新たな位置に応じた始期タイミングデータにより、ボックス４０５の表示を更新する。
【００６１】
図６は、ユーザによる有効化されたマーカー４０３のドラッグアンドドロップの操作により、マーカー４０３により示される始期タイミング以降に始期を持つボックスおよびグラフが一括して移動される様子を示す図である。図６において、マーカー４０３ａおよびマーカー４０３ｂはそれぞれ移動前および移動後のマーカー４０３を示している。また、点線表示のボックスおよびグラフは、マーカー４０３がマーカー４０３ａの位置にあった時のボックスおよびグラフを示し、斜線表示のボックスおよび太線表示のグラフは、マーカー４０３がマーカー４０３ｂの位置に移動後のボックスおよびグラフを示している。さらに、実線表示のボックスおよび通常の太さの実線表示のグラフは、マーカー４０３の移動の前後を通じて同じ位置に表示されているボックスおよびグラフを示す。
【００６２】
表示部２０２は、上記のように編集画面の表示更新を行うとともに、マーカー４０３の時間軸方向の移動距離を示すデータ（以下、「移動時間データ」と呼ぶ）を移動時間データ取得部２０７に送出する（Ｆ１０８）。移動時間データ取得部２０７は、移動時間データを受け取ると、そのデータをタイミングデータ変更部２０６に送出する（Ｆ１０９）。
【００６３】
タイミングデータ変更部２０６は、移動時間データを受け取ると、演奏制御データに含まれるイベントデータのうち、先に抽出した開始イベントデータ、終了イベントデータ、トラック音量イベントデータおよび全体音量イベントデータのタイミングデータを、移動時間データにより示される時間量だけ増減させる。例えば、図６に示した例によれば、ユーザのマーカー４０３の移動操作により、始期タイミングデータが「２：３：３２５」から「３：４：１７５」に変更されているので、移動時間データはそれらの差である「０：１：３３０」（８１０ティック）となる。従って、タイミングデータ変更部２０６は、例えば先に抽出したイベントデータ「１５」のタイミングデータを、「２：４：２７０」から「３：２：１２０」へと変更する。図７は、タイミングデータ変更部２０６が抽出した全てのイベントデータに関し、タイミングデータの変更処理を行った後の演奏制御データを示した図である。図７において、変更されたタイミングデータには「＊」が付されている。タイミングデータ変更部２０６は、変更処理後の演奏制御データを演奏制御データ記憶部２０１に送出する（Ｆ１１０）。
【００６４】
以上のように、ユーザはマーカー４０３をドラッグアンドドロップして始期タイミングを決定し、マーカー４０３をダブルクリックして有効化することにより、始期タイミング以降に演奏開始および再生開始の指示を行うイベントデータと、それらの演奏および再生に関連する一連のイベントデータを全て選択することができるとともに、有効化したマーカー４０３をさらにドラッグアンドドロップすることにより、選択したイベントデータの全てに関し、タイミングデータをマーカー４０３の移動量に応じた時間量だけ一括して変更することができる。
【００６５】
ところで、ユーザはマーカー４０３に加えてマーカー４０４に対しても同様の操作を行うことにより、処理の対象とするイベントデータを選択するための始期タイミングのみでなく、終期タイミングを指定することもできる。図８はユーザがマーカー４０３とマーカー４０４の両方を有効化する操作を行った後、有効化したマーカー４０３をドラッグアンドドロップにより移動した際に、特定のブロックおよびグラフが時間軸方向に移動する様子を示した図である。
【００６６】
ユーザは、まず有効化されていない状態のマーカー４０３およびマーカー４０４をそれぞれドラッグアンドドロップし、始期タイミングおよび終期タイミングを指定する。その後、ユーザはマーカー４０３およびマーカー４０４をそれぞれダブルクリックし、それらを有効化する。その有効化の操作に応じて、表示部２０２は始期タイミングデータおよび終期タイミングデータを期間データ取得部２０４に送出する（Ｆ１０３）。期間データ取得部２０４は受け取った始期タイミングデータおよび終期タイミングデータにより示される期間を示す期間データを生成し、タイミングデータ変更部２０６に送出する（Ｆ１０４）。
【００６７】
タイミングデータ変更部２０６は、受け取った期間データに基づき、開始イベントデータ等を抽出する。例えば、移動前の始期タイミングおよび終期タイミングが、図４の例のようにそれぞれ「２：３：３２５」および「４：４：１２０」である場合、図３に示した演奏制御データのうち、イベントデータ「１５」、イベントデータ「２４」およびイベントデータ「２６」に関連するイベントデータは抽出されるが、イベントデータ「３４」のタイミングデータは「５：４：０９５」であり、期間データにより示される期間に含まれていないため、それに関連するイベントデータは抽出されない。タイミングデータ変更部２０６は、抽出したイベントデータを表示部２０２に送出する（Ｆ１０７）。その後の楽曲オーサリングツール１０の処理は、ユーザがマーカー４０３のみを有効化してマーカー４０３をドラッグアンドドロップした場合における処理と同様であるので、その説明を省略する。
【００６８】
さらに、ユーザはトラック情報エリア４０１に含まれるチェックボックスのチェックを外したり付けたりすることにより、タイミングデータの変更をしたいと思うトラックおよび種別の組合せを自由に選択することができる。図９はユーザがトラック２の演奏および音量、トラック３の再生および全トラック（「ＡＬＬ」）に関する音量を選択し、マーカー４０３のみを有効化した後、有効化したマーカー４０３をドラッグアンドドロップにより移動した際に、特定のブロックおよびグラフが時間軸方向に移動する様子を示した図である。
【００６９】
ユーザがチェックボックスのうち、タイミングデータの変更を望まないトラックおよび種別の組合せに対応するものをクリックして、そのチェックを外すと、操作部２０３はそのユーザの操作に応じて、クリックされた位置を示すデータを表示部２０２に送出する（Ｆ１０２）。表示部２０２はクリックされた位置を示すデータに基づき、ユーザによりチェックを外す操作が行われたチェックボックスを特定し、そのチェックボックスの表示をチェックされていない状態のものに変更する。同時に、表示部２０２は、表示の変更を行ったチェックボックスに対応するトラックおよび種別の組合せを示すデータを、変更後のチェックの状態を示すデータとともに属性条件データ取得部２０５に送出する（Ｆ１０５）。
【００７０】
属性条件データ取得部２０５は、表示部２０２からトラックおよび種別の組合せを示すデータと、チェックの状態を示すデータを受け取ると、それらのデータを属性条件データの更新データとしてタイミングデータ変更部２０６に送出する（Ｆ１０６）。タイミングデータ変更部２０６は、属性条件データの更新データを受け取ると、先に受け取った属性条件データに対し更新データにより示される変更を加えて記憶する。
【００７１】
タイミングデータ変更部２０６は、更新後の属性条件データを用いて再度、開始イベントデータ等を抽出する。例えば、図９のようにトラック１の再生および音量に対応するチェックボックスのチェックが外された場合、イベントデータ「２６」のタイミングデータは、始期タイミングよりも後のタイミングを示すが、トラック１に関するものであるため、対応する終了イベントデータおよびトラック音量データも含め、いずれも抽出されない。また、図９のようにトラック３の音量のみのチェックが外された場合、始期タイミングよりも後のタイミングを示すイベントデータ「２４」およびそれに対応する終了イベントデータであるイベントデータ「３１」は抽出されるが、それらに対応するトラック音量イベントデータは抽出されない。
【００７２】
タイミングデータ変更部２０６は、上記のように抽出したイベントデータを表示部２０２に送出する（Ｆ１０７）。その後の楽曲オーサリングツール１０の処理は、上述した処理と同様であるので、その説明を省略する。また、チェックボックスを用いてトラックおよび種別を選択する方法は、マーカー４０３およびマーカー４０４の両方が用いられる場合においても同様に利用可能であるが、その操作および動作は同じであるので、その説明を省略する。
【００７３】
上記のように、ユーザはマウス等による容易な操作により、希望する期間に含まれ、かつ希望のトラックおよび種別に応じた複数のイベントデータを選択し、選択したイベントデータのタイミングデータを希望の時間量だけ一括して変更することができる。ユーザはそのように演奏制御データに対し変更を加えた後、その結果を確認したい場合には、編集画面のボタン４０７をクリックすることにより、コンピュータ１に変更後の演奏制御データに応じた自動演奏を行わせることができる。また、ユーザはその演奏制御データに応じた自動演奏が気に入った場合には、ボタン４０８をクリックすることにより、変更後の演奏制御データをＨＤ１０４に記憶させることができる。そのように記憶された演奏制御データは、例えばデータ入出力Ｉ／Ｆ１１１を介して携帯電話１２２等に送信したりすることができる。
【００７４】
ところで、上述した楽曲オーサリングツール１０は、以下のように様々な応用処理を行うことが可能である。
【００７５】
マーカー４０３を有効化した際、タイミングデータ変更部２０６は、マーカー４０３の位置により示される始期タイミング以降のタイミングを示す開始イベントデータおよびそれに関連するイベントデータをグループとして抽出する代わりに、個々のイベントデータに関しタイミングデータにより示されるタイミングが始期タイミングより後であるものを抽出するように構成してもよい。その場合、ユーザは、例えばピアノロール表示（図１１参照）等においても容易に複数のイベントデータを選択し、一括してタイミングデータの変更を行うことができる。
【００７６】
マーカー４０３を有効化した際、タイミングデータ変更部２０６は、マーカー４０３の位置により示される始期タイミング以降のタイミングを示す開始イベントデータおよびそれに関連するイベントデータを抽出する代わりに、始期タイミング以降のタイミングを示す終了イベントデータおよびそれに関連するイベントデータを抽出するように構成してもよい。その場合、マーカー４０３の位置に対応するガイドラインより右に位置するボックスやグラフに加え、ガイドラインと交差するボックス等も選択される。
【００７７】
マーカー４０３を有効化することなく、マーカー４０４のみを有効化することを可能とし、その場合、タイミングデータ変更部２０６は、例えばマーカー４０４により示される終期タイミング以前のタイミングを示す終了イベントデータおよびそれに関連するイベントデータを抽出するように構成してもよい。その場合、ユーザは指定する終期タイミング以前の全てのイベントデータを一括して処理対象とすることが可能となる。
【００７８】
マーカー４０３およびマーカー４０４の位置に応じてボックス４０５およびボックス４０６に表示される始期タイミングおよび終期タイミングが変更されるだけでなく、ボックス４０５およびボックス４０６に対しユーザがタイミングを示す数値列を入力することを可能とし、入力された数値列に応じてマーカー４０３およびマーカー４０４の表示位置を変更するように構成してもよい。また、抽出されたイベントデータを時間軸方向に移動する際の移動量を、ユーザが数値入力するためのボックスを設けるようにしてもよい。その場合、ユーザはタイミングもしくは移動時間量をより正確に指定することが可能となる。
【００７９】
マーカー４０３およびマーカー４０４の位置変更もしくはボックス４０５およびボックス４０６に対する数値列の入力に代えて、楽曲オーサリングツール１０による演奏制御データに従った自動演奏中に行われる、ユーザによる指示操作のタイミングを示す数値列を、始期タイミングおよび終期タイミングを示す期間データとして取得するように楽曲オーサリングツール１０を構成してもよい。その場合、楽曲オーサリングツール１０はユーザによるボタン４０７のクリック操作に応じて演奏制御データに従った自動演奏を開始する。ユーザはその自動演奏を聴きながら、始期タイミングを待ち、始期タイミングにおいて例えばキーボード１０６のキー「Ｓ」を叩く。その後、ユーザは引き続き自動演奏を聴き、終期タイミングにおいて例えばキーボード１０６のキー「Ｅ」を叩く。これらのユーザによるキー操作に応じて、表示部２０２はマーカー４０３およびマーカー４０４の表示位置と、ボックス４０５およびボックス４０６の数値列を変更する。また、期間データ取得部２０４はユーザによるキー操作に応じて、始期タイミングおよび終期タイミングを示す期間データを取得する。これらの結果、ユーザは実際の自動演奏に応じた始期タイミングおよび終期タイミングをより感覚的に容易に指定することが可能となる。
【００８０】
さらに、期間データの指定方法として、外部から期間指定データを取り込んでもよい。つまり、コンピュータ１上で、本発明にかかる装置で編集対象としている演奏制御データとは別のデータを取り込み、そのデータに含まれる期間を指定するデータ、あるいは別の形態のデータを変換して得られるデータを本発明にかかる装置の期間指定データとして用いてもよい。このような態様は、本発明にかかる装置が何らかの上位のデータに従って演奏制御データを作成しているような場合に有効である。
【００８１】
図３に例示される演奏制御データに含まれるイベントデータのうち、例えば種別が「演奏開始」および「演奏終了」であるものの処理の対象はＳＭＦである。ＳＭＦはさらに、図１０に例示されるように、複数のイベントデータを含んでいる。このように演奏制御データに含まれるイベントデータがさらに一群のイベントデータの実行を指示するような階層構造を有している場合、タイミングデータ変更部２０６は上位レベルの演奏制御データ（例えば図３の演奏制御データ）に関しタイミングデータの変更処理を行うだけでなく、下位レベルの演奏制御データ（例えば図１０の演奏制御データ）に関しタイミングデータの変更処理を行うように構成してもよい。例えば、図３におけるイベントデータ「４」により再生開始が指定されるＳＭＦ「フレーズ０７５８．ＭＩＤ
」の内容が、図１０に示される演奏制御データである場合、タイミングデータ変更部２０６は、図３におけるイベントデータ「４」に含まれるタイミングデータを変更する代わりに、図１０に示される全イベントデータのタイミングデータを増減させることで、同じ演奏結果をもたらすデータを作成することができる。
【００８２】
トラックおよび種別の組合せのみでなく、ユーザによる他の種類の条件入力を可能とし、タイミングデータ変更部２０６がユーザにより入力された条件を示す属性条件データに基づき、それらの条件を満たす属性を有するイベントデータを抽出するように構成してもよい。その場合、例えば、ユーザは楽曲オーサリングツール１０に対し特定の音域を入力することにより、特定の期間に含まれるイベントデータのうち、当該音域に含まれる音高の楽音のノートオンおよびノートオフを指示するイベントデータのみを移動対象のイベントデータとして選択することが可能となる。また、例えばユーザは楽曲オーサリングツール１０に対し特定の文字列を入力することにより、特定の期間に含まれるイベントデータのうち、当該文字列をパラメータの一部として含むイベントデータのみを移動対象のイベントデータとして選択することが可能となる。
【００８３】
ところで、マーカー４０３により移動する対象として示されるデータは、演奏制御データに含まれるイベントデータに限られない。例えば、図５においてマーカー４０４は特にイベントデータを指定することに使用されていないが、マーカー４０４を移動する対象としてもよい。また、本発明にかかる装置が、シーケンス情報エリアの各トラックの任意の場所にユーザコメント等のメタデータを挿入する機能を持つ場合、そのようなメタデータも移動する対象としてもよい。さらに、演奏制御データのイベントデータが、動画データ等の他の種類のデータを再生することを示すデータであってもよく、マーカー４０３により、そのようなイベントデータも移動の対象とすることができる。
【図面の簡単な説明】
【００８４】
【図１】本発明の一実施形態にかかる楽曲オーサリングツールを実現するために用いられるコンピュータの構成を示したブロック図である。
【図２】本発明の一実施形態にかかる楽曲オーサリングツールの機能構成を示したブロック図である。
【図３】本発明の一実施形態にかかる演奏制御データを例示した図である。
【図４】本発明の一実施形態にかかる楽曲オーサリングツールにより表示される編集画面を示す図である。
【図５】本発明の一実施形態にかかる楽曲オーサリングツールにより表示される編集画面を示す図である。
【図６】本発明の一実施形態にかかる楽曲オーサリングツールにより表示される編集画面の変化を示す図である。
【図７】本発明の一実施形態にかかる演奏制御データを例示した図である。
【図８】本発明の一実施形態にかかる楽曲オーサリングツールにより表示される編集画面の変化を示す図である。
【図９】本発明の一実施形態にかかる楽曲オーサリングツールにより表示される編集画面の変化を示す図である。
【図１０】従来技術にかかる演奏制御データを例示した図である。
【図１１】従来技術にかかる演奏制御データのピアノロール表示を示した図である。
【図１２】従来技術にかかる演奏制御データを例示した図である。
【図１３】従来技術にかかる演奏制御データのシーケンスマップ表示を示した図である。
【図１４】従来技術にかかる演奏制御データを例示した図である。
【図１５】従来技術にかかる演奏制御データのシーケンスマップ表示を示した図である。
【符号の説明】
【００８５】
１…コンピュータ、１０…楽曲オーサリングツール、１０１…ＣＰＵ、１０２…ＲＯＭ、１０３…ＲＡＭ、１０４…ＨＤ、１０５…ディスプレイ、１０６…キーボード、１０７…マウス、１０８…楽音生成部、１０９…サウンドシステム、１１０…スピーカ、１１１…データ入出力Ｉ／Ｆ、１１２…バス、１２１…外部記憶装置、１２２…携帯電話、１２３…インターネット、２０１…演奏制御データ記憶部、２０２…表示部、２０３…操作部、２０４…期間データ取得部、２０５…属性条件データ取得部、２０６…タイミングデータ変更部、２０７…移動時間データ取得部、４０１…トラック情報エリア、４０２…シーケンス情報エリア、４０３・４０４…マーカー、４０５・４０６…ボックス、４０７・４０８…ボタン、１１０１…バー、１３０１・１５０１・１５０２…ブロック。
【図１】
2005316195.tif 000003
【図２】
2005316195.tif 000004
【図３】
2005316195.tif 000005
【図４】
2005316195.tif 000006
【図５】
2005316195.tif 000007
【図６】
2005316195.tif 000008
【図７】
2005316195.tif 000009
【図８】
2005316195.tif 000010
【図９】
2005316195.tif 000011
【図１０】
2005316195.tif 000012
【図１１】
2005316195.tif 000013
【図１２】
2005316195.tif 000014
【図１３】
2005316195.tif 000015
【図１４】
2005316195.tif 000016
【図１５】
2005316195.tif 000017