(57)【特許請求の範囲】
【請求項１】
調号を表す調性データを包含すると共に、曲を構成する各音を表す演奏データに基づき楽譜表示する装置であって、
前記曲の各小節で演奏される演奏データで表された音のピッチクラス集合と比較対照の調の音階との一致度合いを算出して当該小節毎の調を判定する第１の判定手段と、
前記第１の判定手段により判定された小節毎の調判定結果と、対応する演奏データ中の調性データとの一致・不一致で調号無く転調したか否かの区間を判定する第２の判定手段と、
前記第２の判定手段が調号無く転調していないと判定した区間については通常の表示形態で楽譜表示し、一方、調号無く転調したと判定した区間については通常の表示形態と異ならせた特殊表示形態で楽譜表示する楽譜表示手段と
を具備することを特徴とする転調区間表示装置。
【請求項２】
調号を表す調性データを包含すると共に、曲を構成する各音を表す演奏データに基づき楽譜表示するプログラムであって、
前記曲の各小節で演奏される演奏データで表された音のピッチクラス集合と比較対照の調の音階との一致度合いを算出して当該小節毎の調を判定する第１の判定処理と、
前記第１の判定処理により判定された小節毎の調判定結果と、対応する演奏データ中の調性データとの一致・不一致で調号無く転調したか否かの区間を判定する第２の判定処理と、
前記第２の判定処理により調号無く転調していないと判定された区間については通常の表示形態で楽譜表示し、一方、調号無く転調したと判定された区間については通常の表示形態と異ならせた特殊表示形態で楽譜表示する楽譜表示処理と
をコンピュータで実行させることを特徴とする転調区間表示プログラム。
【請求項３】
調号を表す調性データを包含すると共に、曲を構成する各音を表す演奏データであって、前記曲の各小節で演奏される演奏データで表された音のピッチクラス集合と比較対照の調の音階との一致度合いを算出して当該小節毎の調を判定する第１の判定手段と、
演奏データ毎に臨時記号の必要の有無を判定する第２の判定手段と、
前記第２の判定手段により臨時記号が必要と判定された演奏データにおいて、当該演奏データを含む小節の調性データと、前記第１の判定手段により判定された調とが一致しない場合、その判定された調に応じて当該演奏データに付与する臨時記号を決定して楽譜上に表示する臨時記号表示手段と
を具備することを特徴とする臨時記号表示装置。
【請求項４】
調号を表す調性データを包含すると共に、曲を構成する各音を表す演奏データであって、前記曲の各小節で演奏される演奏データで表された音のピッチクラス集合と比較対照の調の音階との一致度合いを算出して当該小節毎の調を判定する第１の判定処理と、
演奏データ毎に臨時記号の必要の有無を判定する第２の判定処理と、
前記第２の判定処理により臨時記号が必要と判定された演奏データにおいて、当該演奏データを含む小節の調性データと、前記第１の判定処理により判定された調とが一致しない場合、その判定された調に応じて当該演奏データに付与する臨時記号を決定して楽譜上に表示する臨時記号表示処理と
をコンピュータで実行させることを特徴とする臨時記号表示プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、楽譜表示機能を備える電子楽器などに用いて好適な転調区間表示装置、臨時記号表示装置、転調区間表示プログラムおよび臨時記号表示プログラムに関する。
【背景技術】
【０００２】
曲を構成する各音符を表すＭＩＤＩイベントと、調号および長調／短調を指定する調性メタイベントとを含むＳＭＦ形式の曲データに基づき、調号や必要な音符に自動的に付加した臨時記号を含む楽譜を表示可能にする装置が知られており、この種の装置については、例えば特許文献１に開示されている。
【０００３】
【特許文献１】特開２００２−２６８６３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、上記特許文献１に開示の装置のように、曲データ中の調性メタイベントに従って調号を楽譜上に表示するものでは、例えば曲データが頻繁に転調するような調性メタイベントを備えていると、転調する毎に調号を楽譜上に表示させてしまうため、音楽的には正しいものの視覚的に乱雑な見にくい楽譜として表示されてしまう。音楽に精通した者であれば、例えば短区間の一時的な転調や、転調前後での調号の♯や♭の数が１つ程しか違わない状況などでは、楽譜を見易くする為に転調していても調号を記述（変更）しない表記が少なくない。
【０００５】
調号表記の省略を具現するには、転調があっても調性データを変更せずに転調前の調のままにしておけばよい訳であるが、そのようにすると、臨時記号の種別を判定する際に、転調前の調に基づいて判定してしまう為、常に正しい結果が得られるとは限らない。
【０００６】
例えば、転調後の調がト長調であって、Ｆ♯／Ｇ♭に相当する音が存在するならば、その音はＦ♯で表記されるべきである。なぜなら、ト長調に対応する音階列（スケール音）は「Ｇ，Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ♯」であり、仮にＧ♭で表記すると判定してしまったら、その音の後にＧに相当する音があった時にはナチュラル記号を付けなくてはならなくなり、また楽譜上のＦの段（五線譜の第１線と第２線との間）が全く活用されなくなってしまうからである。つまり、転調前の調においてＦ♯／Ｇ♭に相当する音をＧ♭で表記するように臨時記号の種別を判定するテーブルが定義されていた場合、このような問題が生じる。
【０００７】
また、音楽に極めて精通した熟練者であれば、楽譜を見れば調号を表示せずに転調していることが瞬時に理解し得るものの、そうでない者にしてみれば、意図的な調号表記の省略を理解できずに混乱するという弊害も有り得る。
【０００８】
本発明は、このような事情に鑑みてなされたもので、その第１の目的は、調号表記を省略して転調している区間を検出してユーザに報知することができる転調区間表示装置および転調区間表示プログラムを提供することにある。
【０００９】
また、本発明の第２の目的は、調号表記を省略して転調している区間の必要な音に適切な臨時記号を付与することができる調号表示装置および調号表示処理プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、請求項１に記載の発明は、調号を表す調性データを包含すると共に、曲を構成する各音を表す演奏データに基づき楽譜表示する装置であって、前記曲の各小節で演奏される演奏データで表された音のピッチクラス集合と比較対照の調の音階との一致度合いを算出して当該小節毎の調を判定する第１の判定手段と、前記第１の判定手段により判定された小節毎の調判定結果と、対応する演奏データ中の調性データとの一致・不一致で調号無く転調したか否かの区間を判定する第２の判定手段と、前記第２の判定手段が調号無く転調していないと判定した区間については通常の表示形態で楽譜表示し、一方、調号無く転調したと判定した区間については通常の表示形態と異ならせた特殊表示形態で楽譜表示する楽譜表示手段とを具備することを特徴とする。
【００１１】
請求項２に記載の発明は、調号を表す調性データを包含すると共に、曲を構成する各音を表す演奏データに基づき楽譜表示するプログラムであって、前記曲の各小節で演奏される演奏データで表された音のピッチクラス集合と比較対照の調の音階との一致度合いを算出して当該小節毎の調を判定する第１の判定処理と、前記第１の判定処理により判定された小節毎の調判定結果と、対応する演奏データ中の調性データとの一致・不一致で調号無く転調したか否かの区間を判定する第２の判定処理と、前記第２の判定処理により調号無く転調していないと判定された区間については通常の表示形態で楽譜表示し、一方、調号無く転調したと判定された区間については通常の表示形態と異ならせた特殊表示形態で楽譜表示する楽譜表示処理とをコンピュータで実行させることを特徴とする。
【００１２】
請求項３に記載の発明では、調号を表す調性データを包含すると共に、曲を構成する各音を表す演奏データであって、前記曲の各小節で演奏される演奏データで表された音のピッチクラス集合と比較対照の調の音階との一致度合いを算出して当該小節毎の調を判定する第１の判定手段と、演奏データ毎に臨時記号の必要の有無を判定する第２の判定手段と、前記第２の判定手段により臨時記号が必要と判定された演奏データにおいて、当該演奏データを含む小節の調性データと、前記第１の判定手段により判定された調とが一致しない場合、その判定された調に応じて当該演奏データに付与する臨時記号を決定して楽譜上に表示する臨時記号表示手段とを具備することを特徴とする。
【００１３】
請求項４に記載の発明では、調号を表す調性データを包含すると共に、曲を構成する各音を表す演奏データであって、前記曲の各小節で演奏される演奏データで表された音のピッチクラス集合と比較対照の調の音階との一致度合いを算出して当該小節毎の調を判定する第１の判定処理と、演奏データ毎に臨時記号の必要の有無を判定する第２の判定処理と、前記第２の判定処理により臨時記号が必要と判定された演奏データにおいて、当該演奏データを含む小節の調性データと、前記第１の判定処理により判定された調とが一致しない場合、その判定された調に応じて当該演奏データに付与する臨時記号を決定して楽譜上に表示する臨時記号表示処理とをコンピュータで実行させることを特徴とする。
【発明の効果】
【００１４】
請求項１、２に記載の発明によれば、演奏データから判定した小節毎の調判定結果と、対応する演奏データ中の調性データとの一致・不一致で調号無く転調したか否かの区間を判定し、調号無く転調していない区間については通常の表示形態で楽譜表示し、一方、調号無く転調した区間については通常の表示形態と異ならせた特殊表示形態で楽譜表示するので、調号表記を省略して転調している区間を検出してユーザに報知することができる。
【００１５】
請求項３、４に記載の発明によれば、演奏データ毎に臨時記号の必要の有無を判定し、臨時記号が必要と判定された演奏データにおいて、当該演奏データを含む小節の調性データと演奏データから判定された調とが一致しない場合、その判定された調に応じて当該演奏データに付与する臨時記号を決定して楽譜上に表示するので、調号表記を省略して転調している区間の必要な音に適切な臨時記号を付与することができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照して本発明の実施形態について説明する。
Ａ．構成
図１は、本発明の実施の一形態による楽譜表示装置の全体構成を示すブロック図である。この図に示す楽譜表示装置は、ＣＰＵ１、ＲＯＭ２、ＲＡＭ３、操作部４、表示部５および入力手段６から構成される。ＣＰＵ１は、操作部４が発生するスイッチイベントに応じて装置各部を制御するものであり、その特徴的な処理動作については追って詳述する。ＲＯＭ２は、ＣＰＵ１にロードされる各種制御プログラムを記憶する。各種制御プログラムとは、後述のメインルーチン、楽譜表示処理および臨時記号表示処理を含む。
【００１７】
ＲＡＭ３は、データエリアおよびワークエリアを備える。ＲＡＭ３のデータエリアには、後述する入力手段６を介して入力される演奏データが格納される。演奏データは、曲を構成する各音符を表すＭＩＤＩイベントと、調号および長調／短調を指定する調性メタイベント（調性データ）とを含むＳＭＦ形式で構成される。ＲＡＭ３のワークエリアには、ＣＰＵ１の処理に用いられる各種レジスタ・フラグデータが一時記憶される。操作部４は、各種操作スイッチを備え、ユーザのスイッチ操作に応じたスイッチイベントを発生する。この操作部４には、図示されていないが、例えば楽譜表示する曲の演奏データを選択する曲選択スイッチや、後述する入力手段６を介して曲データをＲＡＭ３のデータエリアに格納するよう指示する曲入力スイッチ等が設けられている。
【００１８】
表示部５は、ＣＰＵ１から供給される表示制御信号に応じて、例えば選択された曲の演奏データの楽譜、調号および臨時記号を画面に表示する。入力手段６は、例えば入力インタフェースやＭＩＤＩインタフェースを備え、ＣＰＵ１の制御の下に、いずれかのインタフェースを介して上述したＳＭＦ形式の演奏データをＲＡＭ３のデータエリアに格納する。
【００１９】
Ｂ．動作
次に、図２〜図５を参照して上記構成による実施形態の動作を説明する。以下では、最初に概略動作としてＣＰＵ１が実行するメインルーチンの動作について述べた後、このメインルーチンを構成する楽譜表示処理および臨時記号表示処理の各動作を説明する。
【００２０】
（１）メインルーチンの動作
装置電源の投入に応じて、ＣＰＵ１は図２に図示するメインルーチンを実行してステップＳＡ１に処理を進め、ＲＡＭ３のワークエリアに設けられる各種レジスタ・フラグデータをイニシャライズする初期化処理を行う。次いで、ステップＳＡ２では、指定された曲の演奏データを取り込み、取り込んだ演奏データに基づき調号表記を省略して転調している区間を検出し、検出した区間を他の区間と異なるように楽譜表示する楽譜表示処理を実行する。
【００２１】
続いて、ステップＳＡ３では、調号表記を省略して転調している区間の必要な音に適切な臨時記号を付与する臨時記号判定処理を実行する。この後、ステップＳＡ４では、例えば操作部４に設けられる曲選択スイッチおよび曲入力スイッチの操作により指定される曲の演奏データの取り込みを入力手段６に指示する等の、その他の処理を実行した後、上述のステップＳＡ２に処理を戻す。以後、上述したステップＳＡ２〜ＳＡ４を繰り返す。
【００２２】
（２）楽譜表示処理の動作
次に、図３を参照して楽譜表示処理の動作を説明する。上述したメインルーチンのステップＳＡ２（図２参照）を介して本処理が実行されると、ＣＰＵ１は図３に図示するステップＳＢ１に進み、指定された曲の演奏データを取り込む。次いで、ステップＳＢ２では、取り込んだ演奏データについて小節毎の調判定を行う。調判定には、例えば各小節で演奏される音のピッチクラス（音名）などの情報に基づいて判定を行う公知の手法（例えば、特開昭５８−１１４０９７号公報、特開平０１−１６７７８２号公報、特開平０４−１６３４８６号公報、特開平０５−０６１４６５号公報、特開平０５−１０８０７３号公報など）を用いる。
【００２３】
続いて、ステップＳＢ３では、上記ステップＳＢ２による調判定結果と調号（演奏データに含まれる調性データ）とが一致するか否か、つまり調号無く転調したか否かを判断する。調判定結果と調号とが一致し、調号無く転調していない場合には、判断結果は「ＮＯ」となり、ステップＳＢ４に進み、演奏データを通常の表示態様で楽譜表示して本処理を終える。
【００２４】
これに対し、調判定結果と調号とが一致せず調号無く転調している場合には、上記ステップＳＢ３の判断結果は「ＹＥＳ」になり、ステップＳＢ５に進み、調号無く転調していない区間は通常の表示形態で楽譜表示する一方、調号無く転調した区間の表示色を通常の表示形態と異ならせたり反転表示する等に特殊表示形態で楽譜表示して本処理を終える。
【００２５】
（３）臨時記号判定処理の動作
次に、図４を参照して臨時記号判定処理の動作を説明する。上述したメインルーチンのステップＳＡ３（図２参照）を介して本処理が実行されると、ＣＰＵ１は図４に図示するステップＳＣ１に進み、指定された曲の演奏データを取り込む。続いて、ステップＳＣ２では、上述したステップＳＢ２（図３参照）と同様、各小節で演奏される音のピッチクラス集合と比較対照の調の音階との一致度合いを算出して小節毎に調判定を行い、調判定結果ｉＫｅｙ［Ｎ］を得る。
【００２６】
次いで、ステップＳＣ３では、演奏データを指定するノートポインタｐｔｒをゼロリセットする。ステップＳＣ４〜ＳＣ８では、曲終端ＥＮＤに達するまでノートポインタｐｔｒを歩進させながら、その歩進されるノートポインタｐｔｒで指定される演奏データについて臨時記号の必要の有無を判断し、臨時記号が必要な場合には、調号無く転調したか否かに応じて臨時記号判定を行う。
【００２７】
すなわち、ステップＳＣ４では、ノートポインタｐｔｒが曲終端ＥＮＤに達したか否かを判断する。曲終端ＥＮＤに達していなければ、判断結果は「ＮＯ」になり、ステップＳＣ５に進む。ステップＳＣ５では、ノートポインタｐｔｒで指定される演奏データ（対象音）のピッチクラスが現在小節の調号の音階音であるかどうかで臨時記号の必要の有無を判断する。
【００２８】
ここで、対象音のピッチクラスは、ｐｉｔ［ｐｔｒ］  ｍｏｄ１２（対象音の音高ｐｉｔの１２の剰余）で表現される。ｉＫｅｙＳｉｇ［Ｎ］は現在小節の調号の主音（調性データ）、ｉＳｃａｌｅ［Ｎ］は現在小節の調号の音階音を表す。例えば長調の場合、ｉＳｃａｌｅ［Ｎ］は「１（主音）、０、１、０、１、１、０、１、０、１、０、１」となる（１はスケール音、０はノンスケール音を表す）。
【００２９】
したがって、ステップＳＣ５では、（（ｐｉｔ［ｐｔｒ］  ｍｏｄ１２）−ｉＫｅｙＳｉｇ［Ｎ］＋１２）ｍｏｄ１２の演算よって対象音のピッチクラスが現在小節の調号の主音から半音単位で何番目の音に相当するかを求め、これをｉＳｃａｌｅ［Ｎ］と照合して、１であれば臨時記号は不必要、０であれば臨時記号は必要とすることによって、臨時記号の必要の有無を判断する。例えば、現在小節の調号がト長調（主音はＧ）で対象音の音高がＣ４（ピッチクラスはＣ）であったときには、演算結果が「５」となり、ｉＳｃａｌｅ［Ｎ］における「５」の位置（つまり左から６番目の位置）は１であるので、臨時記号は不必要と判断する。そして、臨時記号が不必要であると、判断結果は「ＮＯ」になり、ステップＳＣ８に進み、ポインタｐｔｒを歩進させて上述のステップＳＣ４に処理を戻す。一方、臨時記号が必要であると、上記ステップＳＣ５の判断結果が「ＹＥＳ」になり、ステップＳＣ６に進む。
【００３０】
ステップＳＣ６では、レジスタｉＫｅｙ［Ｎ］に格納される調判定結果と調号ｉＫｅｙＳｉｇ［Ｎ］とが一致しているか否かで調号無く転調したかどうかを判断する。調判定結果ｉＫｅｙ［Ｎ］と調号ｉＫｅｙＳｉｇ［Ｎ］とが一致していれば、調号無く転調したケースに該当しないので、判断結果は「ＮＯ」になり、ステップＳＣ７に進む。
【００３１】
ステップＳＣ７では、従前の臨時記号判定を行う。ここで言う従前の臨時記号判定とは、例えば同じ小節内の前方側に同じ音高の音があるか否か、又は対応するコードの構成音中に同じ音高の音があるか否かをサーチし、同じ音高の音が有れば、その音に付与されている臨時記号と同じものを選択し、同じ音高の音が無ければ、同じ小節内の後方側に半音差の音高の音があるか否かをサーチし、半音差の音高が有れば、五線譜上で位置が重複しないように臨時記号の種別を選択するものである（なお、これは一例であり、ｉＫｅｙＳｉｇ［Ｎ］を用いて判定を行っても構わない）。こうして、従前の臨時記号判定を終えた後は、ステップＳＣ８にてポインタｐｔｒを歩進させてから上述のステップＳＣ４に処理を戻す。
【００３２】
これに対し、調判定結果ｉＫｅｙ［Ｎ］と調号ｉＫｅｙＳｉｇ［Ｎ］とが一致せず、調号無く転調した場合には、上記ステップＳＣ６の判断結果が「ＹＥＳ」となり、ステップＳＣ９〜ＳＣ１２からなる本発明の臨時記号判定を実行する。すなわち、調号無く転調した場合には、まずステップＳＣ９に進み、（（ｐｉｔ［ｐｔｒ］  ｍｏｄ１２）−ｉＫｅｙ［Ｎ］＋１２）ｍｏｄ１２の値に基づき転調先（判定調）の調号の音階音であるか否かを判断する。転調先の調号の音階音でなければ、判断結果は「ＮＯ」になり、上記ステップＳＣ７に進み、従前の臨時記号判定を実行する。
【００３３】
一方、転調先の調号の音階音であると、上記ステップＳＣ９の判断結果は「ＹＥＳ」になり、ステップＳＣ１０に進む。ステップＳＣ１０では、♯系の調、すなわち、調判定結果ｉＫｅｙ［Ｎ］が「２（Ｄ）」、「４（Ｅ）」、「６（Ｆ♯）」、「７（Ｇ）」、「９（Ａ）」および「１１（Ｂ）」のいずれかに該当するかどうかを判断する。そして、♯系の調に該当する場合には、判断結果が「ＹＥＳ」になり、ステップＳＣ１１に進み、臨時記号として「♯」を選択してからステップＳＣ８に進む。これに対し、♯系の調に該当しなければ、上記ステップＳＣ１０の判断結果が「ＮＯ」になり、ステップＳＣ１２に進み、臨時記号として「♭」を選択してからステップＳＣ８に進む。
【００３４】
こうして、歩進されるノートポインタｐｔｒに対応する演奏データについて臨時記号の必要の有無を判断し、臨時記号が必要な場合には、調号無く転調したか否かに応じて臨時記号判定を行う処理を繰り返し、歩進されたノートポインタｐｔｒが曲終端ＥＮＤに達すると、前述のステップＳＣ４の判断結果が「ＹＥＳ」となり、本処理を終える。
【００３５】
以上説明したように、本実施形態では、曲を構成する各音を表す演奏データに基づき判定した小節毎の調判定結果と、対応する演奏データ中の調性データとが一致しているか否かによって調号無く転調したか否かを判断し、調号無く転調していない区間については通常の表示形態で楽譜表示する一方、調号無く転調した区間については表示色を通常の表示形態と異ならせたり反転表示する等の特殊表示形態で楽譜表示するので、調号表記を省略して転調している区間を検出してユーザに報知することが可能になる。
【００３６】
また、本実施形態では、曲を構成する各音を表す演奏データに基づき小節毎の調を判定すると共に、演奏データ毎に臨時記号の必要の有無を判定する。そして、臨時記号が必要と判定された演奏データにおいて、当該演奏データを含む小節の調性データと上記判定された調とが一致しない場合に、上記判定された調に応じて演奏データに付与する臨時記号を決定して楽譜上に表示する。したがって、例えば、調号無く転調した後の調がト長調であって、Ｆ♯／Ｇ♭に相当する音が存在すると、その音はＦ♯として表示される。この結果、調号表記を省略して転調している区間の必要な音に臨時記号を付与することができる。
【図面の簡単な説明】
【００３７】
【図１】本発明による実施の一形態の構成を示すブロック図である。
【図２】メインルーチンの動作を示すフローチャートである。
【図３】楽譜表示処理の動作を示すフローチャートである。
【図４】臨時記号表示処理の動作を示すフローチャートである。
【符号の説明】
【００３８】
１  ＣＰＵ
２  ＲＯＭ
３  ＲＡＭ
４  操作部
５  表示部
６  入力手段
【図１】
0004525924.tif 000002
【図２】
0004525924.tif 000003
【図３】
0004525924.tif 000004
【図４】
0004525924.tif 000005