(57)【要約】【課題】編集前のメロディの特徴を生かしつつ、そのメロディとは異なるような変化に富んだ楽曲を新たに生成する処理を容易に行うことができるようにする。【解決手段】ユーザに選択された範囲の音符・休符を、ユーザに指定された音を中心にして上下反転する反転手段と、前記反転された音符・休符に半音進行処理をするか否かを選択する選択手段と、前記反転された音符・休符に半音進行処理を行う処理手段とを設け、半音進行処理をすることがユーザにより選択されている場合には、前記反転手段によって反転された音符・休符に半音進行処理を行うようにすることにより、機械的な反転処理では不自然な旋律となってしまうような曲においても、不自然になることなく反行処理を行うことを可能とする。また、編集知識が乏しい初心者においても、編集前のメロディの特徴を生かしつつ、そのメロディとは異なるような変化に富んだ楽曲を容易に生成できるようにする。【選択図】図２
2010197600.tif 000002
【特許請求の範囲】
【請求項１】
ある基準音を中心にして旋律を上下反転させる処理を行う旋律変形装置であって、
ユーザに選択された範囲の音符・休符を、ユーザに指定された音を中心にして上下反転する反転手段と、
前記反転手段によって反転された音符・休符に半音進行処理をするか否かを選択する半音進行処理選択手段と、
前記反転手段によって反転された音符・休符に半音進行処理を行う半音進行処理手段とを有し、
前記半音進行処理選択手段により、半音進行処理をすることがユーザにより選択されている場合には、前記半音進行処理手段により、前記反転手段によって反転された音符・休符に半音進行処理を行うことを特徴とする旋律変形装置。
【請求項２】
前記半音進行処理選択手段により、半音進行処理をすることがユーザにより選択されている場合には、前記半音進行処理手段により、旋律変形後も半音階を保持するように音の高さを決めていくことを特徴とする請求項１に記載の旋律変形装置。
【請求項３】
表示装置の表示画面に表示された編集対象の楽譜の旋律変形を行う機能を有する旋律変形装置であって、
前記編集対象の楽譜を第１の表示領域に表示し、前記編集対象の楽譜の旋律を変形する操作画面を第２の表示領域に表示し、編集後の楽譜を第３の表示領域に表示するよう前記表示装置を制御する表示制御手段と、
前記操作画面に表示された楽譜情報を所定の値に設定するユーザ操作手段と、
前記ユーザ操作手段によって設定された楽譜情報に応じて前記編集対象の楽譜の旋律を変形する旋律変形手段と、
前記旋律変形手段により旋律が変形された楽譜に対して半音進行処理を行うか否かを選択するための半音進行処理選択手段とを有し、
前記旋律変形手段は、前記第２の表示部に表示されている操作画面が前記ユーザ操作手段により操作されると、その操作に応じて前記第１の表示部に表示されている編集対象の楽譜の旋律を変形して、前記表示制御手段は前記旋律変形手段により変形された後の楽譜を前記第３の表示領域に表示することを特徴とする旋律変形装置。
【請求項４】
前記表示制御手段は、旋律変形を行う要素として、進行状態を選択するためのラジオボタン、反行の基準音を選択するためのラジオボタン、反行の方法を選択するためのラジオボタン、半音進行を保持するか否かを選択するためのチェックボックス、導音処理をするか否かを選択するためのチェックボックス、ダブルシャープやフラットを使わないことを選択するためのチェックボックス、度数を設定するためのメニュー、シフト量を設定するためのメニュー、遅延を設定するためのメニュー、を表示することを特徴とする請求項３に記載の旋律変形装置。
【請求項５】
ある基準音を中心にして旋律を上下反転させる処理をコンピュータに実行させる旋律変形プログラムであって、
ユーザに選択された範囲の音符・休符を、ユーザに指定された音を中心にして上下反転する反転工程と、
前記反転工程において反転された音符・休符に半音進行処理をするか否かを選択する半音進行処理選択工程と、
前記反転工程において反転された音符・休符に半音進行処理を行う半音進行処理工程とを有し、
前記半音進行処理選択工程において、半音進行処理をすることがユーザにより選択されている場合には、前記半音進行処理工程において、前記反転工程において反転された音符・休符に半音進行処理をコンピュータに実行させることを特徴とする旋律変形プログラム。
【請求項６】
表示装置の表示画面に表示された編集対象の楽譜の旋律変形処理をコンピュータに実行させる旋律変形プログラムであって、
前記編集対象の楽譜を第１の表示領域に表示し、前記編集対象の楽譜の旋律を変形する操作画面を第２の表示領域に表示し、編集後の楽譜を第３の表示領域に表示するよう前記表示装置を制御する表示制御工程と、
前記操作画面に表示された楽譜情報を所定の値に設定するユーザ操作工程と、
前記ユーザ操作工程において設定された楽譜情報に応じて前記編集対象の楽譜の旋律を変形する旋律変形工程と、
前記旋律変形工程において旋律が変形された楽譜に対して半音進行処理を行うか否かを選択するための半音進行処理選択工程とを有し、
前記旋律変形工程は、前記第２の表示部に表示されている操作画面が前記ユーザ操作工程において操作されると、その操作に応じて前記第１の表示部に表示されている編集対象の楽譜の旋律を変形して、前記表示制御工程は前記旋律変形工程において変形された後の楽譜を前記第３の表示領域に表示するようコンピュータを制御することを特徴とする旋律変形プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、旋律変形装置及び旋律変形プログラムに関し、特に、反行などの旋律変形を行う際に、変形前の楽譜に半音進行形が含まれている場合、変形後の楽譜でも同じ部分が半音進行になるように処理するために用いて好適な技術に関する。
【背景技術】
【０００２】
編集前のメロディの特徴を生かしつつ、そのメロディとは異なるような変化に富んだ楽曲を新たに生成できるようにする自動作曲装置が提案されている（例えば、特許文献１を参照）。特許文献１に記載の自動作曲装置では、編集前のメロディの特徴を生かしつつ、そのメロディとは異なるような変化に富んだ楽曲を新たに作曲できるようにしている。
【０００３】
特許文献１にて提案されている自動作曲装置においては、複数の音符データから構成される演奏情報を供給する演奏情報供給手段と、前記演奏情報を所定の区間に分割し、その区間毎に所定のデータ変更パラメータを設定するパラメータ設定手段と、前記所定区間毎に前記音符データを構成する音高及び発音タイミングの少なくとも一方を前記データ変更パラメータに従って変更するデータ変更手段と、このデータ変更手段によって変更された演奏情報に従って新たな楽曲を生成する楽曲生成手段とを備えている。
【０００４】
パラメータ設定手段は演奏情報を所定の区間、例えば１小節毎や２小節毎などのような適当な区間に分割し、その区間毎にデータ変更パラメータを設定する。このデータ変更パラメータには、例えば、区間内でリズムを逆進行させるもの、その区間内の所定のリズムを別のリズムに変更するもの、区間内でピッチを逆進行させるもの、区間内で所定のピッチを基準にピッチを反転させるものなどがある。データ変更手段はこのようなデータ変更パラメータに従って所定区間毎に音符データを構成する音高や発音タイミングなどを変更する。楽曲生成手段は変更された演奏情報に基づいて新たな楽曲を生成する。
【０００５】
前述のような構成により、特許文献１に記載の自動作曲装置においては、編集前のメロディの特徴を生かしつつ、そのメロディとは異なるような変化に富んだ楽曲を新たに生成することができる。
【０００６】
編集前のメロディの特徴を生かしつつ、そのメロディとは異なるような変化に富んだ楽曲を新たに生成する手法の一つとして、反行処理が知られている。反行処理とは、ある基準音を中心に、上下鏡で映したように旋律を上下反転させる処理である。反転させる場合、図形的に（度数で）反転させるものと、半音単位の音程で反転させるものがある。半音単位の場合、音の高さが決まるので臨時記号は自動的に決まるが、度数で反転させる場合、臨時記号は、そのままにするものや、臨時記号も反転処理するものがある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平９−６２２６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に記載の自動作曲装置の場合には、前述のような旋律変形を行った場合、臨時記号は反転する（フラットはシャープに、シャープはフラットに）か、そのまま放置する（フラットはフラットに、シャープはシャープに）かのいずれかであった。
【０００９】
このため、旋律のある範囲が半音階で進行しているような楽譜では、編集前のメロディの特徴を生かしつつ、そのメロディとは異なるような変化に富んだ楽曲を新たに生成するには多くの手間をかける必要があった。
【００１０】
本発明は前述の問題点に鑑み、編集前のメロディの特徴を生かしつつ、そのメロディとは異なるような変化に富んだ楽曲を新たに生成する処理を容易に行うことができるようにすることを目的としている。
【課題を解決するための手段】
【００１１】
本発明の旋律変形装置は、ある基準音を中心にして旋律を上下反転させる処理を行う旋律変形装置であって、ユーザに選択された範囲の音符・休符を、ユーザに指定された音を中心にして上下反転する反転手段と、前記反転手段によって反転された音符・休符に半音進行処理をするか否かを選択する半音進行処理選択手段と、前記反転手段によって反転された音符・休符に半音進行処理を行う半音進行処理手段とを有し、前記半音進行処理選択手段により、半音進行処理をすることがユーザにより選択されている場合には、前記半音進行処理手段により、前記反転手段によって反転された音符・休符に半音進行処理を行うことを特徴とする。
また、本発明の旋律変形装置の他の特徴とするところは、表示装置の表示画面に表示された編集対象の楽譜の旋律変形を行う機能を有する旋律変形装置であって、前記編集対象の楽譜を第１の表示領域に表示し、前記編集対象の楽譜の旋律を変形する操作画面を第２の表示領域に表示し、編集後の楽譜を第３の表示領域に表示するよう前記表示装置を制御する表示制御手段と、前記操作画面に表示された楽譜情報を所定の値に設定するユーザ操作手段と、前記ユーザ操作手段によって設定された楽譜情報に応じて前記編集対象の楽譜の旋律を変形する旋律変形手段と、前記旋律変形手段により旋律が変形された楽譜に対して半音進行処理を行うか否かを選択するための半音進行処理選択手段とを有し、前記旋律変形手段は、前記第２の表示部に表示されている操作画面が前記ユーザ操作手段により操作されると、その操作に応じて前記第１の表示部に表示されている編集対象の楽譜の旋律を変形して、前記表示制御手段は前記旋律変形手段により変形された後の楽譜を前記第３の表示領域に表示することを特徴とする。
【００１２】
本発明の旋律変形プログラムは、ある基準音を中心にして旋律を上下反転させる処理をコンピュータに実行させる旋律変形プログラムであって、ユーザに選択された範囲の音符・休符を、ユーザに指定された音を中心にして上下反転する反転工程と、前記反転工程において反転された音符・休符に半音進行処理をするか否かを選択する半音進行処理選択工程と、前記反転工程において反転された音符・休符に半音進行処理を行う半音進行処理工程とを有し、前記半音進行処理選択工程において、半音進行処理をすることがユーザにより選択されている場合には、前記半音進行処理工程において、前記反転工程において反転された音符・休符に半音進行処理をコンピュータに実行させることを特徴とする。
また、本発明の旋律変形プログラムの他の特徴とするところは、表示装置の表示画面に表示された編集対象の楽譜の旋律変形処理をコンピュータに実行させる旋律変形プログラムであって、前記編集対象の楽譜を第１の表示領域に表示し、前記編集対象の楽譜の旋律を変形する操作画面を第２の表示領域に表示し、編集後の楽譜を第３の表示領域に表示するよう前記表示装置を制御する表示制御工程と、前記操作画面に表示された楽譜情報を所定の値に設定するユーザ操作工程と、前記ユーザ操作工程において設定された楽譜情報に応じて前記編集対象の楽譜の旋律を変形する旋律変形工程と、前記旋律変形工程において旋律が変形された楽譜に対して半音進行処理を行うか否かを選択するための半音進行処理選択工程とを有し、前記旋律変形工程は、前記第２の表示部に表示されている操作画面が前記ユーザ操作工程において操作されると、その操作に応じて前記第１の表示部に表示されている編集対象の楽譜の旋律を変形して、前記表示制御工程は前記旋律変形工程において変形された後の楽譜を前記第３の表示領域に表示するようコンピュータを制御することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、反行などの旋律変形を行う際に、半音階で進行しているような楽譜においては旋律変形後も半音階を保つようにすることにより、同音を連打するような不都合を防止することが可能となる。また、編集知識が乏しい初心者においても、反行処理を用いて自然な旋律の楽曲を新たに生成することが容易となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態を示し、旋律変形装置全体構成例を示す図である。
【図２】本発明の実施形態を示し、旋律変形装置の内部構成の一例を示すブロック図である。
【図３】本発明の実施形態を示し、旋律の変形を行うときにディスプレイの表示画面に表示される表示例を示す図で、半音進行保持を行う機能がオフの時の表示例を示す図である。
【図４】本発明の実施形態を示し、旋律の変形を行うときにディスプレイの表示画面に表示される表示例を示す図で、半音進行保持を行う機能がオンの時の表示例を示す図である。
【図５】本発明の実施形態を示し、ダイアログボックス更新の処理手順の一例を説明するフローチャートである。
【図６】本発明の実施形態を示し、楽譜更新処理の詳細を説明するフローチャートである。
【図７】本発明の実施形態を示し、進行処理の手順を説明するフローチャートである。
【図８】本発明の実施形態を示し、反行処理の詳細を説明するフローチャートである。
【図９】本発明の実施形態を示し、移度処理の詳細を説明するフローチャートである。
【図１０】本発明の実施形態を示し、シフト処理の詳細を説明するフローチャートである。
【発明を実施するための形態】
【００１５】
（第１の実施形態）
以下、添付の図面を参照しながら、本発明の第１の実施形態を説明する。
図１は、本実施形態の旋律変形装置１００の全体構成例を示す図である。本実施形態の旋律変形装置１００は、楽譜を表示、入力、編集、及び演奏可能であり、音楽記号旋律変形プログラムをインストールして、旋律変形装置として使用するためのパーソナルコンピュータ５０を有している。
【００１６】
図１に示すように、本実施形態の旋律変形装置１００は、パーソナルコンピュータ５０の他に、ディスプレイ１５、マウス２２及びキーボード２３等を備えている。マウス２２は、後述する「ユーザインタフェース」における操作領域において、旋律変形を行うためのオプションを指定するためのオプション指定手段として用いる。
【００１７】
図２は、本発明の実施形態の旋律変形装置１００の内部構成の一例を示すブロック図である。図２に示すように、本実施形態の旋律変形装置１００は、システムバス１０を介して、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、画像制御部１４、Ｉ／Ｏインターフェース１６、ハードディスクドライブ１７等が接続されていて、システムバス１０を介して、それぞれのデバイスに制御信号、データの入出力が行われる。
【００１８】
ＣＰＵ１１は、ＲＯＭ１２或いはＲＡＭ１３に格納されているプログラムに基づき、旋律変形装置１００の全体制御を行う。また、予め設定された所定の周期でＣＰＵ１１に割り込みをかけるタイマ回路を内蔵している。ＲＡＭ１３はプログラムエリアの他、画像データバッファ、ワークエリア等として使用される。
【００１９】
Ｉ／Ｏインターフェース１６を介してつながるＣＤ−ＲＯＭドライブ２０は、音楽記号入力用プログラムが格納されたＣＤ−ＲＯＭ２１から、プログラムや画像データなどを読み出す。そのプログラムや画像データなどは、後述するハードディスクドライブ１７に、格納され、またメインとなるプログラムはＲＡＭ１３に格納され、ＣＰＵ１１により実行される。
【００２０】
前述のように、ハードディスクドライブ１７は、音楽記号入力用プログラム及び画像データ等を格納する。画像制御部１４を介して接続されているディスプレイ１５は、ＣＰＵ１１の制御に基づき、画像制御部１４から出力される映像情報を表示画面１５ａに表示する。また、マウス２２から入力された情報は、Ｉ／Ｏインターフェース１６を経てＣＰＵ１１に取り込まれる。キーボード２３から入力された情報に関しても同様である。プリンタ２４は、ＣＰＵ１１の制御に基づき、Ｉ／Ｏインターフェース１６から出力される印字情報を印字する。
【００２１】
図３及び図４は、旋律の変形を行うときにディスプレイ１５の表示画面１５ａに表示される表示例を示す図であり、図３は「半音進行を保持する」機能がオフの時の表示例を示し、図４は「半音進行を保持する」機能がオンの時の表示例を示している。
【００２２】
図３及び図４において、表示画面１５ａには３つの領域が表示されている。第１の表示領域３１０は、「元の楽譜」が表示されている。また、第２の表示領域３２０には、第１の表示領域３１０に表示された「元の楽譜」に対して旋律を変形するユーザ操作を行うための「ユーザインタフェース」画面が表示されている。さらに、第３の表示領域３３０には、第２の表示領域３２０に表示された「ユーザインタフェース」画面を操作して編集された「編集後の楽譜」が表示されている。
【００２３】
本実施形態においては、第１の表示領域３１０に表示された楽譜を試聴することができるようにするために、「試聴ボタン」が設けられている。また、第３の表示領域３３０には、編集後の楽譜を試聴することができるようにするために、「試聴ボタン」が設けられている。また、「編集後の楽譜」を了解するための「ＯＫボタン」、「編集後の楽譜」を破棄するための「キャンセルボタン」、操作方法を補助するための「ヘルプボタン」が第３の表示領域３３０に記載されている。
【００２４】
また、第２の表示領域３２０には、「元の楽譜」に対して旋律変形処理を行うために行う項目として、「進行」３２１、「反行の基準音」３２２、「反行の方法」３２３が表示されている。
【００２５】
本実施形態においては、「進行」３２１に対応して「順行」、「反行」、「逆行」、「反逆行」のラジオボタンが表示されており、この中から１つを選択するようになされている。図３の例では、「反行」のラジオボタンが押されている。
【００２６】
また、「反行の基準音」３２２に対応して「先頭の音」、「末尾の音」、「主音」、「その他」のラジオボタンが表示されている。また、その他のラジオボタンを選択した時にはユーザが任意の音符を「反行の基準音」として選択することができるようにするためのプルダウンメニューが表示されている。図３の例では、「先頭の音」のラジオボタンが押され、プルダウンメニューには「６９（Ａ３）」、すなわち、「ラ音」が「反行の基準音」３２２として選択されている。
【００２７】
「反行の方法」３２３に対応して「度数」のラジオボタン及び「半音」のラジオボタンが表示されている。図３の例では、「度数」のラジオボタンが押されている。さらに、「半音進行を保持する」を選択するチェックボックス、「導音処理をする」を選択するチェックボックス、「ダブルシャープやダブルフラットを使わない」を選択するチェックボックス等が表示されている。そして、その値を選択するために、「度数」のプルダウンメニュー、「遅延」のプルダウンメニュー、「シフト量」選択メニュー等が表示されている。
【００２８】
前述したような設定により、図３の例においては、元の楽譜の「ラ音」が基準音となって反行が行われる。そして、「半音進行を保持する」を選択するチェックボックスにチェックが入れられていないので、第３の表示領域３３０に示すように、編集後の楽譜においては、編集前の音符に付いていた臨時記号は、フラットはシャープに、シャープはフラットに、単純に変形されているのみである。
【００２９】
一方、図４に示した例では、「半音進行を保持する」を選択するチェックボックスにチェックが入れられているので、第３の表示領域３３０に示すように、編集前には臨時記号が付けられていなかった３つ目の音符にシャープ記号が付けられている。また、編集前にはシャープの臨時記号が付けられていた４つ目の音符にナチュラル記号が付けられている。同様に、６つ目及び８つ目の音符にシャープ記号が付けられ、９つ目の音符にフラット記号が付けられており、編集後の楽譜においても半音進行を保持するようにしている。
【００３０】
次に、図５〜図１０のフローチャートを参照しながら本実施形態の旋律変形装置の処理手順を説明する。
図５は、ダイアログボックス更新処理の一例を説明するフローチャートである。
図５に示すように、処理が開始されると、ステップＳ５１において、「進行」３２１の内容が変更されたか否かを判断する。この判断の結果、内容が変更された場合にはステップＳ５２に進む。また、変更されなかった場合にはステップＳ５３に進む。ステップＳ５２においては、楽譜更新処理を行う。そして、楽譜更新処理が終了したらエンド処理に移行する。なお、ステップＳ５２で行う楽譜更新処理の詳細は後述する。
【００３１】
ステップＳ５３においては、「反行の基準音」３２２が変更されたか否かを判断する。この判断の結果、基準音が変更された場合にはステップＳ５２に進む。また、変更されなかった場合にはステップＳ５４に進む。
【００３２】
ステップＳ５４においては、「反行の方法」３２３が変更されたか否かを判断する。この判断の結果、「反行の方法」３２３が変更された場合にはステップＳ５２に進む。また、変更されなかった場合にはステップＳ５５に進む。
【００３３】
ステップＳ５５においては、「半音進行を保持する」が変更されたか否かを判断する。この判断の結果、「半音進行を保持する」が変更された場合にはステップＳ５２に進む。また、変更されなかった場合にはステップＳ５６に進む。
【００３４】
ステップＳ５６においては、「導音処理をする」が変更されたか否かを判断する。この判断の結果、「導音処理をする」が変更された場合にはステップＳ５２に進む。また、変更されなかった場合にはステップＳ５７に進む。
【００３５】
ステップＳ５７においては、「ダブルシャープやダブルフラットを使わない」が変更されたか否かを判断する。この判断の結果、「ダブルシャープやダブルフラットを使わない」が変更された場合にはステップＳ５２に進む。また、変更されなかった場合にはステップＳ５８に進む。
【００３６】
ステップＳ５８においては、「度数」が変更されたか否かを判断する。この判断の結果、「度数」が変更された場合にはステップＳ５２に進む。また、変更されなかった場合にはステップＳ５９に進む。
【００３７】
ステップＳ５９においては、「シフト量」が変更されたか否かを判断する。この判断の結果、「シフト量」が変更された場合にはステップＳ５２に進む。また、変更されなかった場合にはステップＳ６０に進む。
【００３８】
ステップＳ６０においては、「遅延」が変更されたか否かを判断する。この判断の結果、「遅延」が変更された場合にはステップＳ５２に進む。また、変更されなかった場合にはエンド処理を行う。
【００３９】
次に、図６のフローチャートを参照しながら楽譜更新処理の詳細を説明する。
処理が開始されると、ステップＳ６１において、導音前処理が行われる。
【００４０】
次に、ステップＳ６２に進み、進行処理が行われる。この進行処理については、図７を参照しながら後述する。次に、ステップＳ６３に進み、導音処理が行われる。次に、ステップＳ６４に進み、移度処理が行われる。この移度処理については、図９を参照しながら後述する。次に、ステップＳ６５に進み、シフト処理が行われる。このシフト処理については、図１０を参照しながら後述する。次に、ステップＳ６６において、遅延処理が行われる。遅延処理については、本発明には直接関係ないので詳細な説明を省略する。
【００４１】
次に、図７のフローチャートを参照しながら進行処理について説明する。
進行処理が開始されると、ステップＳ７１において反行であるか否かを判断する。この判断の結果、反行である場合にはステップＳ７２に進み、反行処理を行う。
【００４２】
一方、ステップＳ７１の判断の結果、反行でなかった場合にはステップＳ７３に進み、逆行か否かを判断する。この判断の結果、進行処理が逆行であった場合にはステップＳ７４に進み、逆行処理を行う。
【００４３】
一方、ステップＳ７３の判断の結果、進行処理が逆行でなかった場合にはステップＳ７５に進み、反逆行か否かを判断する。この判断の結果、反逆行であった場合にはステップＳ７６に進み、反行処理を行う。その後、ステップＳ７７に進んで逆行処理を行う。
【００４４】
一方、ステップＳ７５の判断の結果、反逆行処理でなかった場合にはエンド処理に移行する。また、ステップＳ７２、ステップＳ７４、ステップＳ７７の各処理を終了した場合もエンド処理に移行する。
【００４５】
次に、図８のフローチャートを参照しながら反行処理について説明する。
反行処理が開始されると、ステップＳ８０１において半音進行箇所を保存する。次に、ステップＳ８０２に進み、基準音の五線位置とノートナンバーを計算する。
【００４６】
次に、ステップＳ８０３において、反行の方法が度数であるか否かを判断する。この判別の結果、度数である場合にはステップＳ８０４に進む。ステップＳ８０４においては、反行対象が音符であるか否かを判断する。この判断の結果、音符であった場合にはステップＳ８０５に進み、音符の五線上の位置（高さ）を変える。その後、ステップＳ８０６に進む。一方、ステップＳ８０４の判断の結果、音符でなかった場合にはステップＳ８０４からステップＳ８０６に直接進む。
【００４７】
ステップＳ８０６においては、全ての記号を処理したか否かを判断する。この判断の結果、処理していない場合にはステップＳ８０４に戻る。また、処理した場合にはステップＳ８０７に進み、全ての小節を処理したか否かを判断する。この判断の結果、処理していない場合にはステップＳ８０４に戻り、処理している場合にはステップＳ８１２に進む。
【００４８】
一方、ステップＳ８０３の判断の結果、度数でなかった場合にはステップＳ８０８に進む。ステップＳ８０８においては、音符であるか否かを判断する。この判断の結果、音符であった場合にはステップＳ８０９に進む。ステップＳ８０９においては、ノートナンバーから音符の高さと臨時記号を修正する。その後、ステップＳ８１０に進む。また、ステップＳ８０８の判断の結果、音符でなかった場合にはステップＳ８０８からステップＳ８１０に進む。
【００４９】
ステップＳ８１０においては、全ての記号を処理したか否かを判断する。この判断の結果、処理していない場合にはステップＳ８０８に戻る。また、処理した場合にはステップＳ８１１に進み、全ての小節を処理したか否かを判断する。この判断の結果、処理していない場合にはステップＳ８０８に戻り、処理している場合にはステップＳ８１２に進む。
【００５０】
ステップＳ８１２においては、符尾の向きを調整する。その後、ステップＳ８１３において度数か否かを判断する。この判断の結果、度数であった場合にはステップＳ８１４に進み、臨時記号を反転させる処理を行う。その後、ステップＳ８１５に進む。また、ステップＳ８１３の判断の結果、度数でなかった場合にはステップＳ８１３からステップＳ８１５に直接進む。
【００５１】
ステップＳ８１５においては、半音進行を保持するか否かを判断する。この判断の結果、保持しない場合にはエンド処理を行う。また、保持する場合にはステップＳ８１６に進む。ステップＳ８１６においては、ステップＳ８０１で保持しておいた半音進行箇所が半音進行になるように、音符の高さと臨時記号を修正する。その後、エンド処理を行う。
【００５２】
次に、図９のフローチャートを参照しながら移度処理について説明する。
処理が開始されると、ステップＳ９１において移度度数が０か否かを判断する。この判断の結果、移度度数が０であった場合にはエンド処理に移行する。また、ステップＳ９１の判断の結果、移度度数が０でなかった場合にはステップＳ９２に移行する。
【００５３】
ステップＳ９２においては、音符か否かを判断する。この判断の結果、音符でなかった場合にはステップＳ９４に移行する。また、ステップＳ９２の判断の結果、音符であった場合にはステップＳ９３に進む。
【００５４】
ステップＳ９３においては、音符の五線上の位置（高さ）を変える処理を行う。その後、ステップＳ９４に進み、全ての記号を処理したか否かを判断する。この判断の結果、全ての記号を処理していない場合にはステップＳ９２に戻って前述した処理を繰り返し行う。また、ステップＳ９４の判断の結果、全ての記号を処理した場合にはステップＳ９５に進む。ステップＳ９５においては、全ての小節を処理したか否かを判断する。この判断の結果、全ての小節を処理していない場合にはステップＳ９２に戻って前述した処理を繰り返し行う。また、ステップＳ９５の判断の結果、全ての小節を処理した場合にはステップＳ９６に進む。
【００５５】
ステップＳ９６においては、符尾の向きを調整する。この調整は、旋律の変形処理を行った結果、符尾の向きがおかしくなった音符について通常の音階に合った符尾の向きとなるように調整する処理である。
【００５６】
次に、図１０のフローチャートを参照しながらシフト処理について説明する。
処理が開始されると、ステップＳ１０１において、シフト量が０であるか否かを判断する。この判断の結果、シフト量が０であった場合にはエンド処理に移行する。また、シフト量が０でなかった場合にはステップＳ１０２に進む。
【００５７】
ステップＳ１０２においては、音符であるか否かを判断する。この判断の結果、音符でなかった場合にはステップＳ１０４に進み、音符であった場合にはステップＳ１０３を経由してステップＳ１０４に進む。ステップＳ１０３においては、シフト後のノートナンバーを計算し、ノートナンバーから音符の高さと臨時記号を修正する。その後、ステップＳ１０４に進む。
【００５８】
ステップＳ１０４においては、全ての記号を処理したか否かを判断する。この判断の結果、全ての記号を処理していない場合にはステップＳ１０２に戻って前述した処理を繰り返し行う。また、ステップＳ１０４の判断の結果、全ての記号を処理した場合にはステップＳ１０５に進む。ステップＳ１０５においては、全ての小節を処理したか否かを判断する。この判断の結果、全ての小節を処理していない場合にはステップＳ１０２に戻って前述した処理を繰り返し行う。また、ステップＳ１０５の判断の結果、全ての小節を処理した場合にはステップＳ１０６に進む。
【００５９】
ステップＳ１０６においては、符尾の向きを調整する。この調整は、シフト処理を行った結果、符尾の向きがおかしくなった音符について通常の音高に合った符尾の向きとなるように調整する処理である。
【００６０】
以上、説明したように、本実施形態によれば、ダイアログボックスのチェックボックスにチェックを入れるだけで半音進行処理を行うことができるので、従来のようにユーザが自分で半音進行している箇所を探し出して、半音進行に修正する手間を省略することができる。また、知識のない操作者でも自動的に半音進行処理が行われるため、旋律の一部に半音進行を含む旋律の反行処理を行った場合にもより自然な変換結果を得ることができる。
【符号の説明】
【００６１】
１０  システムバス
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  画像制御部
１５  ディスプレイ
１５ａ  表示画面
１６  Ｉ／Ｏインターフェース
１７  ハードディスクドライブ
２０  ＣＤ−ＲＯＭドライブ
２１  ＣＤ−ＲＯＭ
２２  マウス
２２ａ  マウスのボタン
２３  キーボード
２４  プリンタ
５０  パーソナルコンピュータ
１００  旋律変形装置
【図１】
2010197600.tif 000003
【図２】
2010197600.tif 000004
【図３】
2010197600.tif 000005
【図４】
2010197600.tif 000006
【図５】
2010197600.tif 000007
【図６】
2010197600.tif 000008
【図７】
2010197600.tif 000009
【図８】
2010197600.tif 000010
【図９】
2010197600.tif 000011
【図１０】
2010197600.tif 000012