(57)【要約】【課題】変換前の楽譜データのルート及びスケールを指定しなくても、スケール変換を行うことができるスケール変換装置を提供することを課題とする。【解決手段】複数の音符データを含む楽譜データを記憶する記憶手段と、変換後のルート及びスケールを指定するスケール指定手段と、前記記憶手段に記憶されている音符データが前記スケール指定手段により指定されたルート及びスケール上の音階音として存在する場合には前記記憶手段に記憶されている音符データをそのまま確定して使用し、前記記憶手段に記憶されている音符データが前記スケール指定手段により指定されたルート及びスケール上の音階音として存在しない場合には、前記スケール指定手段により指定されたルート及びスケール上の音階音であって前記記憶手段に記憶されている音符データに最も近い音高の音符データに変換するスケール変換手段とを有することを特徴とするスケール変換装置が提供される。【選択図】図４
2010186073.tif 000002
【特許請求の範囲】
【請求項１】
複数の音符データを含む楽譜データを記憶する記憶手段と、
変換後のルート及びスケールを指定するスケール指定手段と、
前記記憶手段に記憶されている音符データが前記スケール指定手段により指定されたルート及びスケール上の音階音として存在する場合には前記記憶手段に記憶されている音符データをそのまま確定して使用し、前記記憶手段に記憶されている音符データが前記スケール指定手段により指定されたルート及びスケール上の音階音として存在しない場合には、前記スケール指定手段により指定されたルート及びスケール上の音階音であって前記記憶手段に記憶されている音符データに最も近い音高の音符データに変換するスケール変換手段と
を有することを特徴とするスケール変換装置。
【請求項２】
前記スケール変換手段は、前記記憶手段に記憶されている音符データが前記スケール指定手段により指定されたルート及びスケール上の音階音として存在しない場合において、前記スケール指定手段により指定されたルート及びスケール上の音階音であって前記記憶手段に記憶されている音符データに最も近い音高が２個ある場合であって、前記最も近い２個の音高のうちの一方が既に確定している音符データの音階音であり、かつ前記最も近い２個の音高のうちの他方が未だ確定していない音階音である場合には、前記記憶手段に記憶されている音符データを前記確定していない音階音であって最も近い音高の音符データへ変換することを特徴とする請求項１記載のスケール変換装置。
【請求項３】
さらに、前記記憶手段に記憶されている音符データを変換する音高として上の音高又は下の音高を指定する音高指定手段を有し、
前記スケール変換手段は、前記記憶手段に記憶されている音符データが前記スケール指定手段により指定されたルート及びスケール上の音階音として存在しない場合において、前記スケール指定手段により指定されたルート及びスケール上の音階音であって前記記憶手段に記憶されている音符データに最も近い音高が２個ある場合であって、前記最も近い２個の音高が共に未だ確定していない音階音である場合又は共に既に確定している音階音である場合には、前記記憶手段に記憶されている音符データを前記最も近い２個の音高のうちで前記音高指定手段により指定された上の音高又は下の音高の音符データへ変換することを特徴とする請求項２記載のスケール変換装置。
【請求項４】
さらに、前記記憶手段に記憶されている変換前の楽譜データ、及び前記スケール変換手段により変換された変換後の楽譜データをならべて表示する表示手段を有することを特徴とする請求項１〜３のいずれか１項に記載のスケール変換装置。
【請求項５】
さらに、前記変換前の楽譜データの演奏により試聴するための変換前試聴手段と、
前記変換後の楽譜データの演奏により試聴するための変換後試聴手段とを有することを特徴とする請求項４記載のスケール変換装置。
【請求項６】
前記表示手段は、前記スケール指定手段により指定されたルート及びスケールの音階音の楽譜を表示することを特徴とする請求項４記載のスケール変換装置。
【請求項７】
さらに、前記スケール指定手段により指定されたルート及びスケールの音階音の楽譜の演奏により試聴するためのスケール試聴手段とを有することを特徴とする請求項１〜６のいずれか１項に記載のスケール変換装置。
【請求項８】
変換後のルート及びスケールを指定するスケール指定ステップと、
記憶手段に記憶されている音符データが前記スケール指定ステップにより指定されたルート及びスケール上の音階音として存在する場合には前記記憶手段に記憶されている音符データをそのまま確定して使用し、前記記憶手段に記憶されている音符データが前記スケール指定ステップにより指定されたルート及びスケール上の音階音として存在しない場合には、前記スケール指定ステップにより指定されたルート及びスケール上の音階音であって前記記憶手段に記憶されている音符データに最も近い音高の音符データに変換するスケール変換ステップと
を有することを特徴とするスケール変換方法。
【請求項９】
変換後のルート及びスケールを指定するスケール指定ステップと、
記憶手段に記憶されている音符データが前記スケール指定ステップにより指定されたルート及びスケール上の音階音として存在する場合には前記記憶手段に記憶されている音符データをそのまま確定して使用し、前記記憶手段に記憶されている音符データが前記スケール指定ステップにより指定されたルート及びスケール上の音階音として存在しない場合には、前記スケール指定ステップにより指定されたルート及びスケール上の音階音であって前記記憶手段に記憶されている音符データに最も近い音高の音符データに変換するスケール変換ステップと
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スケール変換装置、方法及びプログラムに関する。
【背景技術】
【０００２】
図３は、スケール変換装置のスケール変換画面を示す図である。ユーザは、現在の音階のルート及びスケール３０１を選択し、さらに新規の音階のルート及びスケール３０２を選択する。すると、現行の音階と新規の音階との間の変換テーブル３０３が表示され、現在の音階から新規の音階へスケール変換を行うことができる。
【０００３】
しかし、一般人（特に初心者）には、楽譜を見て、その楽譜のルート及びスケールを判別し、現在の音階のルート及びスケール３０１を選択することは困難であり、音楽的知識を必要とする。現在の音階のルート及びスケール３０１を選択しないと、スケール変換を行うことができないため、スケール変換を容易に行うことができない。
【０００４】
また、特開平３−３７６９８号公報には、旋律内の各構成音を旋律の音階上の位置として求め、求められた各構成音の音階上の位置を変換の目的とする音階上の位置に対応させることにより旋律間の音階変換を行うことを特徴とした旋律データ変換方式が開示されている。
【０００５】
【特許文献１】特開平３−３７６９８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、変換前の楽譜データのルート及びスケールを指定しなくても、スケール変換を行うことができるスケール変換装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００７】
本発明のスケール変換装置は、複数の音符データを含む楽譜データを記憶する記憶手段と、変換後のルート及びスケールを指定するスケール指定手段と、前記記憶手段に記憶されている音符データが前記スケール指定手段により指定されたルート及びスケール上の音階音として存在する場合には前記記憶手段に記憶されている音符データをそのまま確定して使用し、前記記憶手段に記憶されている音符データが前記スケール指定手段により指定されたルート及びスケール上の音階音として存在しない場合には、前記スケール指定手段により指定されたルート及びスケール上の音階音であって前記記憶手段に記憶されている音符データに最も近い音高の音符データに変換するスケール変換手段とを有することを特徴とする。
【０００８】
また、本発明のスケール変換方法は、変換後のルート及びスケールを指定するスケール指定ステップと、記憶手段に記憶されている音符データが前記スケール指定ステップにより指定されたルート及びスケール上の音階音として存在する場合には前記記憶手段に記憶されている音符データをそのまま確定して使用し、前記記憶手段に記憶されている音符データが前記スケール指定ステップにより指定されたルート及びスケール上の音階音として存在しない場合には、前記スケール指定ステップにより指定されたルート及びスケール上の音階音であって前記記憶手段に記憶されている音符データに最も近い音高の音符データに変換するスケール変換ステップとを有することを特徴とする。
【０００９】
また、本発明のプログラムは、変換後のルート及びスケールを指定するスケール指定ステップと、記憶手段に記憶されている音符データが前記スケール指定ステップにより指定されたルート及びスケール上の音階音として存在する場合には前記記憶手段に記憶されている音符データをそのまま確定して使用し、前記記憶手段に記憶されている音符データが前記スケール指定ステップにより指定されたルート及びスケール上の音階音として存在しない場合には、前記スケール指定ステップにより指定されたルート及びスケール上の音階音であって前記記憶手段に記憶されている音符データに最も近い音高の音符データに変換するスケール変換ステップとをコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１０】
変換前の楽譜データのルート及びスケールを指定しなくても、変換後のルート及びスケールを指定すれば、スケール変換を行うことができる。これにより、音楽的知識がない人でも、簡単にスケール変換を行い、音楽の変化を楽しむことができる。
【発明を実施するための最良の形態】
【００１１】
図２は、本発明の実施形態によるスケール変換装置（コンピュータ）のハードウエア構成例を示すブロック図である。スケール変換装置は、例えばパーソナルコンピュータで構成される。バス２０１には、中央処理装置（ＣＰＵ）２０２、ＲＯＭ２０３、ＲＡＭ２０４、ネットワークインタフェース２０５、入力装置２０６、出力装置２０７及び外部記憶装置２０８が接続されている。
【００１２】
ＣＰＵ２０２は、データの処理又は演算を行うと共に、バス２０１を介して接続された各種構成要素を制御するものである。ＲＯＭ２０３には、予めＣＰＵ２０２の制御手順（コンピュータプログラム）を記憶させておき、このコンピュータプログラムをＣＰＵ２０２が実行することにより、起動する。外部記憶装置２０８にコンピュータプログラムが記憶されており、そのコンピュータプログラムがＲＡＭ２０４にコピーされて実行される。ＲＡＭ２０４は、データの入出力、送受信のためのワークメモリ、各構成要素の制御のための一時記憶として用いられる。外部記憶装置２０８は、例えばハードディスク記憶装置やＣＤ−ＲＯＭ等であり、電源を切っても記憶内容が消えない。ＣＰＵ２０２は、ＲＡＭ２０４内のコンピュータプログラムを実行することにより、スケール変換装置の処理を行う。
【００１３】
ネットワークインタフェース２０５は、インターネット等のネットワークに接続するためのインタフェースである。入力装置２０６は、例えばキーボード及びマウス等であり、各種指定又は入力等を行うことができる。出力装置２０７は、ディスプレイ及びプリンタ等である。出力装置２０７内のディスプレイには、図４の画面が表示される。
【００１４】
図１は、上記のコンピュータプログラムの機能を説明するためのブロック図である。コンピュータがコンピュータプログラムを実行することにより、スケール変換装置（方法）が実現される。スケール変換装置（方法）１００は、記憶手段（ステップ）１０１、スケール指定手段（ステップ）１０２、音高指定手段（ステップ）１０３、スケール変換手段（ステップ）１０４、表示手段（ステップ）１０５、変換前試聴手段（ステップ）１０６、変換後試聴手段（ステップ）１０７及びスケール試聴手段（ステップ）１０８を有する。
【００１５】
図４は、出力装置２０７内のディスプレイに表示されるスケール変換画面の例を示す図である。ユーザがスケール変換を指示すると、表示手段１０５は、図４の画面を表示する。記憶手段１０１は、複数の音符データを含む楽譜データを記憶する。表示手段１０５は、記憶手段１０１に記憶されている変換前の楽譜データ４０１を表示する。ユーザは、入力装置２０６内のマウスを用いて、変換後のルート４０４及びスケール４０５を選択する。すると、それに従い、スケール指定手段１０２は、変換後のルート４０４及びスケール４０５を指定する。ルート４０４は、Ｃ、Ｄ、Ｅ等の１２個の根音の中から選択される。スケール４０５は、例えばメジャー・スケール、ナチュラル・マイナー・スケール、ハーモニック・マイナー・スケール等の中から選択される。例えば、ルート４０４は「Ｃ」が選択され、スケール４０５は「ナチュラル・マイナー・スケール」が選択される。表示手段１０５は、スケール指定手段１０２により指定されたルート４０４及びスケール４０５の音階音の楽譜４０２を表示する。ユーザは、楽譜４０２を参照しながら、ルート４０４及び４０５を選択することができる。ルート４０４として「Ｃ」が選択され、スケール４０５として「ナチュラル・マイナー・スケール」が選択された場合、そのスケールの楽譜４０２の音階音は、「Ｃ」、「Ｄ」、「Ｅ♭」、「Ｆ」、「Ｇ」、「Ａ♭」、「Ｂ♭」である。
【００１６】
ユーザがマウスでスケール試聴ボタン４０９をクリックすると、スケール試聴手段１０８は、スケール指定手段１０２により指定されたルート４０４及びスケール４０５の音階音の楽譜４０２を演奏し、ユーザはそれを試聴することができる。これにより、ユーザは、指定したルート４０４及びスケール４０５の楽譜４０２の音階音を、表示により確認することができ、さらに試聴により確認することができる。
【００１７】
スケール変換手段１０４は、記憶手段１０１に記憶されている音符データがスケール指定手段１０２により指定されたルート４０４及びスケール４０５上の音階音として存在する場合には記憶手段１０１に記憶されている音符データをそのまま確定して使用し、記憶手段１０１に記憶されている音符データがスケール指定手段１０２により指定されたルート４０４及びスケール４０５上の音階音として存在しない場合には、スケール指定手段１０２により指定されたルート４０４及びスケール４０５上の音階音であって記憶手段１０１に記憶されている音符データに最も近い音高の音符データに変換する。
【００１８】
表示手段１０５は、記憶手段１０１に記憶されている変換前の楽譜データ４０１、及びスケール変換手段１０４により変換された変換後の楽譜データ４０３をならべて表示する。
【００１９】
スケール変換手段１０４は、変換前の楽譜データ４０１の音を、変換後のルート４０４及びスケール４０５上の音階音にすべて丸める。この際、変換前の楽譜データ４０１の音が、変換後のルート４０４及びスケール４０５上の最も近い２個の音階音に対して半音単位の音程差が同じである場合は、なるべくすべてのスケール音を使うように、音の割り当てを行う。
【００２０】
また、ユーザは、マウスを用いて、第１のタイプ４０６又は第２のタイプ４０７を選択することができる。音高指定手段１０３は、第１のタイプ４０６が選択されたときには、記憶手段１０１に記憶されている音符データを変換する音高として上の音高を指定し、第２のタイプ４０７が選択されたときには、記憶手段１０１に記憶されている音符データを変換する音高として下の音高を指定する。スケール変換手段１０４は、記憶手段１０１に記憶されている音符データがスケール指定手段１０２により指定されたルート４０４及びスケール４０５上の音階音として存在しない場合には、音高指定手段１０３の指定に従い、スケール指定手段１０２により指定されたルート４０４及びスケール４０５上の音階音であって、かつ記憶手段１０１に記憶されている音符データに最も近い上の音高又は下の音高の音符データに変換することができる。その詳細は、後に図５を参照しながら説明する。
【００２１】
例えば、変換前の楽譜データ４０１において、「Ｃ」、「Ｄ」、「Ｆ」、「Ｇ」は、変換後のスケールの楽譜４０２の構成音として存在するので、そのまま、変換後の楽譜データ４０３でも、「Ｃ」、「Ｄ」、「Ｆ」、「Ｇ」として使用する。これに対して、変換前の楽譜データ４０１において、「Ｅ」、「Ａ」、「Ｂ」は、変換後のスケールの楽譜４０２の構成音として存在しないので、それぞれ、変換後の楽譜データ４０３では、変換後のスケールの楽譜４０２の構成音として存在する「Ｅ♭」、「Ａ♭」、「Ｂ♭」に変換される。
【００２２】
ユーザがマウスで変換前試聴ボタン４０８をクリックすると、変換前試聴手段１０６は、変換前の楽譜データ４０１を演奏し、ユーザはそれを試聴することができる。また、ユーザがマウスで変換後試聴ボタン４１０をクリックすると、変換後試聴手段１０７は、変換後の楽譜データ４０３を演奏し、ユーザはそれを試聴することができる。これにより、ユーザは、変換前の楽譜データ４０１及び変換後の楽譜データ４０３を、表示により比較することができ、さらに試聴により比較することができる。ユーザがマウスで「ＯＫ」ボタン４１１をクリックすると、変換後の楽譜データ４０３が確定し、記憶手段１０１に記憶される。
【００２３】
ユーザが変換後のルート４０４及びスケール４０５を指定すると、「ＯＫ」ボタン４１１をクリックしなくても、その直後にリアルタイムで、表示手段１０６は、指定したスケールの楽譜４０２及び変換後の楽譜データ４０３を表示する。
【００２４】
図５は、スケール変換装置のＣＰＵ２０２が行う処理を示すフローチャートである。ステップＳ５０１では、スケール変換手段１０４は、変換前の楽譜データ４０１の音とスケール指定手段１０２により指定された楽譜４０２のスケール上の最も近い音との半音単位の音程差を計算し、その音程差から変換後の楽譜データ４０３の音高を決定する。
【００２５】
図６は、現在の音高６０１、第１の新しい音高６０２及び第２の新しい音高６０３の対応を示すテーブルの図であり、ＲＡＭ２０４に記憶される。現在の音高６０１は、変換前の楽譜データ４０１の音符データの音高である。第１の新しい音高６０２及び第２の新しい音高６０２は、現在の音高６０１に対応し、変換後の楽譜データ４０３の音高の候補である。
【００２６】
ステップＳ５０１において、スケール変換手段１０４は、上記の最も近い音が２つある場合は、その２つの音高を第１の新しい音高６０２及び第２の新しい音高６０３として保存しておく。例えば、現在の音高６０１の「Ｅ３」は、指定スケールの楽譜４０２の音階音として存在せず、最も近い音として２つの音高「Ｅ♭３」及び「Ｆ３」が存在する。その場合、スケール変換手段１０４は、第１の新しい音高６０２として「Ｅ♭３」を記憶し、第２の新しい音高６０３として「Ｆ３」を記憶する。現在の音高６０１の「Ａ３」及び「Ｂ３」も同様である。
【００２７】
また、スケール変換手段１０４は、最も近い音が１つしかない場合は、その最も近い音の音高を第１の新しい音高６０２として記憶し、第２の新しい音高６０２は存在しないとして例えば「−１」を記憶させる。例えば、現在の音高６０１の「Ｃ３」は、指定スケールの楽譜４０２の音階音として存在し、最も近い音として１つの音高「Ｃ３」が存在する。その場合、スケール変換手段１０４は、第１の新しい音高６０２として「Ｃ３」を記憶し、第２の新しい音高６０３として「−１」を記憶する。現在の音高６０１の「Ｄ３」、「Ｆ３」、「Ｇ３」及び「Ｃ４」も同様である。
【００２８】
次に、ステップＳ５０２では、スケール変換手段１０４は、最も近い音が１つであるときには、その最も近い１つの音を変換後の音高として確定する。例えば、現在の音高６０１の「Ｃ３」は、第１の新しい音高６０２の「Ｃ３」をそのまま使用することが確定する。現在の音高６０１の「Ｄ３」、「Ｆ３」、「Ｇ３」及び「Ｃ４」も同様である。
【００２９】
次に、ステップＳ５０３では、スケール変換手段１０４は、確定していない音の音名毎に下の音の音名と上の音名の確定している音の数を数える。
【００３０】
図７は、音名７０１、下の音の確定している数７０２及び上の音の確定している数７０３のテーブルを示す図であり、ＲＡＭ２０４に記憶される。スケール変換手段１０４は、最も近い音が２つある現在の音高６０１として音名７０１が「Ｅ」、「Ａ」及び「Ｂ」のテーブルを作成する。音名７０１の「Ｅ」は、下の音「Ｅ♭」の確定している数７０２が「０」であり、上の音「Ｆ」の確定している数７０３が「１」である。音名７０１の「Ａ」は、下の音「Ａ♭」の確定している数７０２が「０」であり、上の音「Ｂ♭」の確定している数７０３が「０」である。音名７０１の「Ｂ」は、下の音「Ｂ♭」の確定している数７０２が「０」であり、上の音「Ｃ」の確定している数７０３が「２」である。
【００３１】
次に、ステップＳ５０４では、スケール変換手段１０４は、下の音の確定している数７０２及び上の音の確定している数７０３の一方が０で、他方が１以上である場合には、０の方は使われていない音なので、その音に確定する。例えば、音名７０１の「Ｅ」は下の音「Ｅ♭」の確定している数７０２が０であるので、下の音「Ｅ♭」に確定する。また、音名７０１の「Ｂ」は下の音「Ｂ♭」の確定している数７０２が０であるので、下の音「Ｂ♭」に確定する。これにより、スケール変換手段１０４は、現在の音高６０１の「Ｅ３」を第１の新しい音高６０２の「Ｅ♭３」に変換し、現在の音高６０１の「Ｂ３」を第１の新しい音高６０２の「Ｂ♭３」に変換することになる。これにより、音名７０１の「Ｅ」及び「Ｂ」が確定し、「Ａ」が未確定になる。
【００３２】
次に、ステップＳ５０５では、スケール変換手段１０４は、確定していない音の数が減ったか否かを判定する。例えば、ステップＳ５０４の前は確定していない音の数が「Ｅ」、「Ａ」及び「Ｂ」の３個であったの対し、ステップＳ５０４の後では確定していない音の数が「Ａ」の１個に減っている。減っている場合にはステップＳ５０３へ戻り、減っていない場合にはステップＳ５０６へ進む。
【００３３】
ステップＳ５０３に戻ると、音名７０１の「Ｂ」が「Ｂ♭」に確定しているので、音名７０１の「Ａ」は、下の音「Ａ♭」の確定している数７０２が「０」であり、上の音「Ｂ♭」の確定している数７０３が「１」である。
【００３４】
次に、ステップＳ５０４では、スケール変換手段１０４は、下の音の確定している数７０２及び上の音の確定している数７０３の一方が０で、他方が１以上である場合には、０の方は使われていない音なので、その音に確定する。例えば、音名７０１の「Ａ」は下の音「Ａ」の確定している数７０２が０であるので、下の音「Ａ♭」に確定する。
【００３５】
上記の処理により、すべての音名７０１の変換後の音名が確定する。すべての音名７０１の変換後の音名が確定しないときには、ステップＳ５０６へ進む。すなわち、下の音の確定している数７０２及び上の音の確定している数７０３が最後まで０の場合又は共に１以上の場合には、ステップＳ５０６へ進む。
【００３６】
ステップＳ５０６では、下の音の確定している数７０２及び上の音の確定している数７０３が最後まで０の場合又は共に１以上の場合には、スケール変換手段１０４は、音高指定手段１０３により指定された上の音高又は下の音高の音符データへの変換に確定する。例えば、ユーザにより第１のタイプ４０６が指定されれば、最も近い２つの音の音高のうちの上の音高への変換を確定し、第２のタイプ４０７が指定されれば、最も近い２つの音の音高のうちの下の音高への変換を確定する。
【００３７】
以上のように、スケール変換手段１０４は、変換前の楽譜データ４０１の音を、変換後のルート４０４及びスケール４０５上の音階音にすべて丸める。この際、変換前の楽譜データ４０１の音が、変換後のルート４０４及びスケール４０５上の最も近い２個の音階音に対して半音単位の音程差が同じである場合は、なるべくすべてのスケール音を使うように、音の割り当てを行う。
【００３８】
スケール変換手段１０４は、記憶手段１０１に記憶されている音符データがスケール指定手段１０２により指定されたルート４０４及びスケール４０５上の音階音として存在しない場合において、スケール指定手段１０２により指定されたルート４０４及びスケール４０５上の音階音であって記憶手段１０１に記憶されている音符データに最も近い音高が２個ある場合であって、最も近い２個の音高のうちの一方が既に確定している音符データの音階音であり、かつ最も近い２個の音高のうちの他方が未だ確定していない音階音である場合には、記憶手段１０１に記憶されている音符データを確定していない音階音であって最も近い音高の音符データへ変換する。
【００３９】
また、音高指定手段１０３は、記憶手段１０１に記憶されている音符データを変換する音高として上の音高（第１のタイプ４０６）又は下の音高（第２のタイプ４０７）を指定する。スケール変換手段１０４は、記憶手段１０１に記憶されている音符データがスケール指定手段１０２により指定されたルート４０４及びスケール４０５上の音階音として存在しない場合において、スケール指定手段１０２により指定されたルート４０４及びスケール４０５上の音階音であって記憶手段１０１に記憶されている音符データに最も近い音高が２個ある場合であって、最も近い２個の音高が共に未だ確定していない音階音である場合又は共に既に確定している音階音である場合には、記憶手段１０１に記憶されている音符データを最も近い２個の音高のうちで音高指定手段１０３により指定された上の音高（第１のタイプ４０６）又は下の音高（第２のタイプ４０７）の音符データへ変換する。
【００４０】
丸める際にスケール上の最も近い音が２個ある場合、ステップＳ５０１〜Ｓ５０５の処理を行わずに、仮にすべてについてステップＳ５０６のように強制的に上の音又は下の音で丸めてしまう場合を説明する。例えば、図４の場合、スケール上の最も近い音が２個あるＥ、Ａ、Ｂを強制的に下の音で丸めれば、楽譜４０３のようになる。しかし、次に、この楽譜４０３をＣのメジャー・スケールに変換する場合、スケール上の最も近い音が２個あるＥ♭、Ａ♭、Ｂ♭を下の音で丸めてしまうと、Ｃ、Ｄ、Ｄ、Ｆ、Ｇ、Ｇ、Ａ、Ｃというスケールになってしまう。つまり、スケール上の最も近い音が２個ある場合に強制的にどちらかの音に丸めるような処理だと、同じ音を重複して使用してしまい、スケールの音で使わない音が出てきてしまう。また、今、例を挙げた、Ｃメジャー・スケールを一度Ｃナチュラル・マイナー・スケールにして、またＣメジャー・スケールに戻すような処理をした時に、元に戻らなくなってしまう。本実施形態の図５のスケール変換方法だと、このようなケースでも問題なく変換できる利点がある。
【００４１】
なお、本実施形態においては、最後まで音名が確定しないとき、全ての未確定音名を、音高指定手段１０３により指定された上の音高又は下の音高の音符データヘの変換に確定するようにしているが、この音高指定手段１０３による指定は、必ずしも図４の第１のタイプ４０６、第２のタイプ４０７のように全ての未確定音名に対して上の音高又は下の音高のように２種類に確定するものである必要はなく、例えば、各未確定音名に対して、上の音高にするか下の音高にするかを尋ねるようにしてもよい。
【００４２】
本実施形態は、現在の楽譜データ４０１の音を新しいスケール上の音にすべて丸める。この際、スケール上の音をなるべく多く使うように音の割り当てを行う。また、現在の楽譜データ４０１のスケールを指定する必要はない。現在の楽譜データ４０１のスケールが何であるかを知ることは、特に初心者にとっては難しい。現在の楽譜データ４０１のスケールを指定しなくても、スケール変換できれば、誰にでも簡単に変換後のスケールを指定して、その音楽の変化を楽しむことができる。
【００４３】
変換前の楽譜データのルート及びスケールを指定しなくても、変換後のルート及びスケールを指定すれば、スケール変換を行うことができる。これにより、音楽的知識がない人でも、簡単にスケール変換を行い、音楽の変化を楽しむことができる。
【００４４】
本実施形態は、図２のコンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のコンピュータプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びコンピュータプログラムプロダクトは、本発明の範疇に含まれる。記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００４５】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施形態によるコンピュータプログラムの機能を説明するためのブロック図である。
【図２】本発明の実施形態によるスケール変換装置（コンピュータ）のハードウエア構成例を示すブロック図である。
【図３】スケール変換装置のスケール変換画面を示す図である。
【図４】出力装置内のディスプレイに表示されるスケール変換画面の例を示す図である。
【図５】スケール変換装置のＣＰＵが行う処理を示すフローチャートである。
【図６】現在の音高、第１の新しい音高及び第２の新しい音高の対応を示すテーブルの図である。
【図７】音名、下の音の確定している数及び上の音の確定している数のテーブルを示す図である。
【符号の説明】
【００４７】
１００  スケール変換装置
１０１  記憶手段
１０２  スケール指定手段
１０３  音高指定手段
１０４  スケール変換手段
１０５  表示手段
１０６  変換前試聴手段
１０７  変換後試聴手段
１０８  スケール試聴手段
２０１  バス
２０２  ＣＰＵ
２０３  ＲＯＭ
２０４  ＲＡＭ
２０５  ネットワークインタフェース
２０６  入力装置
２０７  出力装置
２０８  外部記憶装置
【図１】
2010186073.tif 000003
【図２】
2010186073.tif 000004
【図３】
2010186073.tif 000005
【図４】
2010186073.tif 000006
【図５】
2010186073.tif 000007
【図６】
2010186073.tif 000008
【図７】
2010186073.tif 000009