(57)【特許請求の範囲】
【請求項１】
楽曲に対応した楽譜のうちの所定の大きさの領域を表示する表示手段と、
前記表示手段に表示されている楽譜上における音符の移動を指示する手段と、
前記音符の移動を指示する手段により音符の移動が指示されたときに、その音符の移動に応じて前記表示手段に表示される楽譜の領域を移動させる手段と、
前記音符の移動を指示する手段により移動を指示された音符が他の音符と連結する連結記号が付された音符である場合に、その音符の移動後、その音符と前記他の音符とを前記表示手段で同時に表示することができるか否かを判定する手段と、
前記判定する手段により前記音符と前記他の音符とを前記表示手段に同時に表示することができないと判定されたときに、その連結記号を前記音符と前記他の音符とを前記表示手段に同時に表示することができるときとは異なる形態で表示させる手段と
を有することを特徴とする楽譜表示制御装置。
【請求項２】
コンピュータに、
楽曲に対応した楽譜のうちの所定の大きさの領域を表示手段に表示させるステップと、
操作手段に対する操作入力に応じて前記表示手段に表示されている楽譜上における音符を移動させるステップと、
前記音符の移動に応じて前記表示手段に表示される楽譜の領域を移動させるステップと、
前記移動を指示された音符が他の音符と連結する連結記号が付された音符である場合に、その音符の移動後、その音符と前記他の音符とを前記表示手段で同時に表示することができるか否かを判定するステップと、
前記判定するステップにより前記音符と前記他の音符とを前記表示手段に同時に表示することができないと判定されたときに、その連結記号を前記音符と前記他の音符とを前記表示手段に同時に表示することができるときとは異なる形態で表示させるステップと
を実行させるための楽譜表示制御プログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、表示画面などに楽譜を表示するための楽譜表示制御装置および楽譜表示制御プログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
楽譜を印刷するために楽譜を表示装置に表示して、表示された態様で楽譜を印刷することのできる装置あるいは楽譜清書ソフトウエアが知られている。
また、シーケンサソフトウエアにおいて、演奏情報をピアノロール譜で表示したり楽譜で表示し、表示されている演奏情報のうちの編集したい音符を指定して音高や音長の編集を行なったり、音符の削除、挿入を行なうことにより演奏情報を編集することも行われている。
【０００３】
このような楽譜表示機能を有する装置あるいはソフトウエアによれば、表示画面上に表示されている楽譜上で、音符や楽譜記号をマウス等で選択した位置に挿入削除したり、あるいは、その位置を変更することにより、グラフィカルに楽譜の編集を実行することができる。
また、複数の音符が楽譜記号で連結されているときに、その音符の配列順を変更したり、あるいは、楽譜記号で連結されている複数音符間の距離を長くあるいは短く変更することもできるようになされている。
さらに、楽曲を通常の五線譜による表示からタブ譜のような異なる記譜法による表示に変更する機能を有するものも知られている。タブ譜は、弦楽器の弦に対応する複数の横線で表わし、押さえるフレットの位置を数字で示すものであり、ギター用のタブ譜は、上から１弦、２弦、…、６弦を表わす６本の横線と、押さえるフレットを示す数字と、音の長さを表す符尾とにより表示するものである。
【０００４】
【発明が解決しようとする課題】
上述した従来技術においては、複数の音符の配列順を変更することは可能であったが、そのときに該複数の音符を連結する楽譜記号が付されていてもその表記は変更されないか、あるいは、対応のとれない記号が自動的に削除されて、音符の表記だけ変更されるものであった。したがって、ユーザの意図する楽譜が正確に表示されないものであった。また、演奏情報を生成するものにあっては、その表記に対応した演奏情報しか生成されないため、ユーザの意図する演奏情報が作成されないという問題点もあった。
さらに、楽譜記号で連結されている複数の音符間の距離を長くする編集操作を行なったときには、楽譜記号の表記もその距離に合わせて長くされるが、距離が長くなり、対象とされる複数の音符が楽譜表示画面上に同時に表示されなくなった場合であっても、楽譜記号の表記形式は変更されず、画面表示されている音符にどのような楽譜記号が付与されているのから分かりづらくなるという問題点もあった。また、連結記号が画面の端まで延々と表記されるため、楽譜が見にくくなってしまうという問題点もある。
さらにまた、タブ譜表示を行なう場合に、チョーキングなどの特殊な楽譜記号に対応したタブ譜表示ができなかった。したがって、ユーザに正確な譜面を提供することができないという問題点があった。
【０００５】
そこで本発明は、容易かつ正確に内容を認識することのできる譜面を表示することのできる楽譜表示制御装置および楽譜表示制御プログラムを記録した記録媒体を提供することを目的としている。
また、楽譜記号で連結されている音符の配列順の変更などの音符の移動に対応して、それに付されている楽譜記号の表記を正確に変更することができる楽譜表示制御装置および楽譜表示制御プログラムを記録した記録媒体を提供することを目的としている。
さらに、楽譜記号で連結されている複数の音符のいずれかが画面上に表示されなくなったときであっても、どのような楽譜記号が付されているのかが明確な表示をすることのできる楽譜表示制御装置および楽譜表示制御プログラムを記録した記録媒体を提供することを目的としている。
さらにまた、楽譜表示の形態を異なる記譜法による楽譜に変更したときであっても、正確な楽譜を表示することができる楽譜表示制御装置および楽譜表示制御プログラムを記録した記録媒体を提供することを目的としている。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、本発明の楽譜表示制御装置は、楽曲に対応した楽譜のうちの所定の大きさの領域を表示する表示手段と、前記表示手段に表示されている楽譜上における音符の移動を指示する手段と、前記音符の移動を指示する手段により音符の移動が指示されたときに、その音符の移動に応じて前記表示手段に表示される楽譜の領域を移動させる手段と、前記音符の移動を指示する手段により移動を指示された音符が他の音符と連結する連結記号が付された音符である場合に、その音符の移動後、その音符と前記他の音符とを前記表示手段で同時に表示することができるか否かを判定する手段と、前記判定する手段により前記音符と前記他の音符とを前記表示手段に同時に表示することができないと判定されたときに、その連結記号を前記音符と前記他の音符とを前記表示手段に同時に表示することができるときとは異なる形態で表示させる手段とを有するものである。
また、本発明の楽譜表示制御プログラムを記録したコンピュータ読み取り可能な記録媒体は、コンピュータに、楽曲に対応した楽譜のうちの所定の大きさの領域を表示手段に表示させるステップと、操作手段に対する操作入力に応じて前記表示手段に表示されている楽譜上における音符を移動させるステップと、前記音符の移動に応じて前記表示手段に表示される楽譜の領域を移動させるステップと、前記移動を指示された音符が他の音符と連結する連結記号が付された音符である場合に、その音符の移動後、その音符と前記他の音符とを前記表示手段で同時に表示することができるか否かを判定するステップと、前記判定するステップにより前記音符と前記他の音符とを前記表示手段に同時に表示することができないと判定されたときに、その連結記号を前記音符と前記他の音符とを前記表示手段に同時に表示することができるときとは異なる形態で表示させるステップとを実行させるための楽譜表示制御プログラムを記録したものである。
【０００８】
【発明の実施の形態】
本発明の楽譜表示制御装置は専用の装置としてもあるいは汎用のパーソナルコンピュータなどの上で実行されるアプリケーションプログラムとしても実現することができるが、ここでは、汎用のパーソナルコンピュータ上で実行される演奏情報を楽譜モードで編集可能なシーケンスプログラムにおいて、前記楽譜モードとされたときに起動される楽譜表示制御プログラムとして実現した場合を例にとって説明する。
図１は、本発明の一実施の形態である楽譜表示制御プログラムが実行されるハードウエア構成の一例を示すブロック図であり、図示するように、マウスおよびキーボード２、ディスプレイ装置３、通信ネットワーク４、サウンドシステム６に接続された音源装置あるいはＭＩＤＩ機器５といった複数の周辺装置が接続された汎用のパーソナルコンピュータ１により構成されている。
【０００９】
パーソナルコンピュータ１において、１０は中央処理装置（ＣＰＵ）、１１は動作時の経過時間を示したり、特定の間隔でタイマ割込を発生するタイマ、１２はシステムプログラムや本発明に係る楽譜表示制御プログラム等の各種プログラムや、各種データ等が格納されているＲＯＭ、１３は楽譜データや後述する音符データ、記号データ、生成された演奏データなどの格納領域、あるいは、ワークエリア等として使用されるＲＡＭ、１４は、各種のアプリケーションプログラムやデータを記憶可能な外部記憶装置であり、ＨＤＤ、ＦＤＤ、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤドライブなどにより構成することができる。なお、本発明に係る楽譜表示制御プログラムやシーケンスプログラムなどを外部記憶装置１４に格納しておき、実行時に前記ＲＡＭ１３に読み出して実行するようにしてもよいことは当然である。
【００１０】
また、１５はキーボードおよびマウス２などの入力装置を操作したときの操作情報を検出する検出回路、１６はディスプレイ装置３に所定の表示を行なうようディジタル表示データをアナログ信号に変換してディスプレイ装置３に送る表示回路、１７はイーサネット（ethernet）等のＬＡＮやインターネット等の通信ネットワーク４に接続するための通信インターフェース回路、１８は演奏データから生成されたＭＩＤＩデータを音源装置あるいはＭＩＤＩ機器５との間で受け渡しするためのＭＩＤＩインターフェース回路である。なお、これらの各要素は、図示するようにバスにより相互に接続されている。
【００１１】
図２は、編集作業の対象となる楽譜の一例を示す図である。この図において、２１はこの楽譜表示制御プログラムが起動されたときに前記ディスプレイ装置３に開かれる楽譜表示ウインドウ内に表示される領域の大きさを示す楽譜表示枠であり、図２に示す楽譜のうち、この２１で囲まれた部分のみが表示される。ここで、楽譜の要素として表示されるものとしては、音符とその他の楽譜記号とがあり、この楽譜記号のうちには、タイ、スラー、スライド、チョーキング、ハンマリングオン等複数の音符に影響を及ぼす楽譜記号（以下、「連結記号」ともいう）とそれ以外のものとがある。本発明は、連結記号の処理に特徴を有しており、以下、表示されている音符を音符イベント、連結記号を記号イベントと呼ぶこととする。
【００１２】
また、図中ペン型のアイコン２２は、編集の対象となるイベントを選択指示するためのアイコンであり、前記マウスにより対象イベントを選択し、削除や位置の移動を行なうためのものである。その表示画面上の位置を制御することができる。そして、移動させたい音符などのイベントの位置まで前記アイコン２２を移動し、マウスを右クリックすることで移動対象のイベントを確定し、所望の位置に移動させてから、右クリックを解除することで、所望のイベントの移動を行なうことができる。また、このアイコン２２で楽譜中の音符を配置したい位置を指定し、そこに任意の音符を追加することもできる。
さらに、２３は楽譜記号を表す表記であり、ここではスライド（ギターなどの弦楽器で、ある弦を押さえてピッキングした後に、その音を基点に、指を左右いずれかにすべらしながら移動させることにより、音高を上下に変化させる奏法）を示している。
【００１３】
図３は、図２に示す楽譜に対応する楽曲情報のデータ構造を示す図である。この図に示すように、楽曲情報は、図３の（ａ）に示す楽曲情報（演奏データ）３０と同図（ｂ）に示す記号情報４０とから構成されている。
図３の（ａ）に示す楽曲情報（演奏データ）３０は、タイミング情報と演奏イベント（あるいは記号イベント）を示す情報とが楽曲の進行にあわせて順次格納されるＳＭＦ（standard MIDI file）形式のデータとされており、その楽曲のテンポ、音色などを設定する初期設定情報３１に続き、タイミング情報３２とキーオンデータ３４、ステップタイムデータ３５、ゲートタイムデータ３６からなる演奏イベント情報３３、記号イベント情報３７が順次格納されている。ここで、キーオンデータ３４はその音符の音高を示すキーナンバを示しており、ステップタイムデータ３５はその音符の音符長を示すクロック数を示しており、ゲートタイムデータ３６はその音符の実際の発音時間長を示すクロック数を指定している。なお、本実施の形態においては、１小節の長さを９６クロックとし、上記各情報３２および３４〜３６中のタイミングデータの値は各小節ごとにゼロにリセットされる値とされている。
また、記号イベント情報３７は、前記楽譜における記号イベントに対するデータであり、各記号イベントの実体である図３の（ｂ）に示す記号情報の記録位置を示すポインタ情報がここに記録されている。
【００１４】
図３の（ｂ）は前記記号情報の構造を示しており、この図に示すように、記号情報は、記号イベント名４１、記号データ４２および演奏データ４３から構成されている。
この記号データ４２および演奏データ４３について、図４を参照して説明する。ここでは、前記図２に示した楽譜を例としており、記号イベントとしてスライドアップの場合を示す。
図４に示すように、記号データ４２の先頭部には、その楽譜記号に相当する効果を演奏データに付与するためのテンプレートを指定するテンプレート指示データ５１が設けられ、以下、その記号イベントに影響される音符のタイミング情報と演奏イベント（音符データ５２）が順次格納されており、最後にリターンコード５３が格納されている。
【００１５】
前記演奏データ４３は、実際に自動演奏するときに参照される演奏データであり、前記記号データ４２に対し、その記号に対応する効果を付与した演奏データである。すなわち、前記記号データ中の音符データ５２に対し、前記テンプレート指示データ５１で指定されたテンプレートを適用して、その記号に対応する効果を表現することのできる演奏データ４３を作成する。図４に示した例においては、スライドアップのテンプレートが指定されており、このテンプレートは時間経過に従ってピッチが上昇する特性のものとされている。このテンプレートを前記記号データ４２中の音符データ５２に適用することにより、４８クロックのタイミング（第３拍目）におけるキーナンバ６４、ステップタイム２４、ゲートタイム４４の演奏イベントの後に、ピッチベンドによる音高チェンジのみにより７２クロック（第４拍目）のタイミングでキーナンバ６５の音高に達するように、複数のタイミング情報とピッチベンドイベントデータが作成される。これにより、スライドアップの効果を有する演奏データ４３が作成される。
【００１６】
このような楽曲情報および前述した楽譜表示画面を用いて実行される楽譜編集表示処理について、図５のフローチャートを参照して説明する。なお、前述のように、この実施の形態はシーケンスプログラムにおいて楽譜モードとした場合に起動されるものであるので、楽譜モード処理について説明することとする。
この楽譜モード処理が開始されると、まず、ステップＳ１において、シーケンスプログラムのメイン処理における楽曲の選択処理で選択された楽曲情報に基づいて、その楽譜を前記ディスプレイ装置３に表示する。前記図２に関して説明したように、この楽譜は楽譜表示枠２１内に表示され、楽曲情報３０の先頭位置から前記枠２１内に表示可能な量だけの楽譜が前記楽曲情報３０から読み出されて表示される。すなわち、前記楽曲情報３０中のタイミング情報３２により小節内の音符の位置（何拍目であるか）を決定し、演奏イベント情報３３中のキーオンデータ３４によりその音符の音高に対応した五線譜上の位置を決定し、ステップタイムデータ３５によりその音符の種類を決定し、前記楽譜表示ウインドウに表示する。また、記号イベント情報３７が読み出されたときは、対応する記号情報４０中の音符データ５２によりその記号イベントに含まれる音符を前記と同様に表示するとともに、記号データ４２のテンプレート指示データ５１によりその記号イベントに対応するアイコン（スライドの場合は弧線と「ｓ．」という文字）を選択し、前記記号イベントに含まれる音符に対応付けて表示する。
このように、記号情報として表示用のデータ（記号データ）と演奏用のデータ（演奏データ）を別々に記録することで、楽譜表示と楽曲演奏の正確な対応を容易にとることができ、処理能力を向上させることができる。
なお、新規の楽曲が選択されたときには、白紙の状態の五線譜が表示されることとなる。
【００１７】
次に、ステップＳ２に進み、表示イベントの移動操作がなされたか否かが判定される。すなわち、前記図２に関して説明したように、ユーザのマウス操作により前記ペン型アイコン２２を用いて所望の楽譜イベントがドラッグされ、所望の位置に移動させる操作が行われたかどうか、および、何れのイベントがドラッグされたかが判定される。なお、この移動操作は画面上の上下左右いずれの方向にも可能である。また、移動中のイベントは通常状態（例えば、黒色）の表示とは異なる態様（例えば、赤色）で表示されるようにしてもよい。
【００１８】
イベント移動操作がなくステップＳ２の判定結果がＮＯのときには、ステップＳ４に進みその他の編集処理が行われる。一方、移動操作が検出されたときには、ステップＳ３に進み、対応する移動処理が行われた後、ステップＳ４のその他編集処理が行われる。なお、この移動処理の詳細については、後述する。
ステップＳ４のその他編集処理においては、ユーザの操作に対応して、音符イベントや記号イベントの追加や削除、および、各種パラメータ値の変更などの編集処理が行われる。これは、通常の楽譜清書ソフトウエアなどと同一であるので、詳細な説明は省略する。
なお、編集時にユーザが音符イベントを追加、削除、移動などの編集処理を行なうと、その処理に合わせて休符は自動的に挿入、削除されるようになされている。
【００１９】
次に、ステップＳ５に進み、自動演奏処理が実行される。前記楽譜表示ウインドウの近傍には、楽曲の再生、再生停止、先頭位置に復帰などのボタンが設けられており、ユーザが再生を指示したときに、この自動演奏処理が実行される。この自動演奏処理においては、編集対象となっている楽曲情報３０を順次読み出し、タイミング情報３２に基づくタイミングで、対応して記録されている演奏イベント情報３３を処理することにより行われる。但し、読み出されたデータが記号イベント情報３７であるときは、その時点から該記号イベント情報の示す記号情報４０内に記録されている演奏データ４３を順次読み出す。そして、リターンデータ５３が読み出された時点で、楽曲情報３０内のデータ読み出しに復帰し、今回読み出されていた記号イベント情報３７の次に記録されているデータを読み出す。このようにして順次読み出した演奏イベント情報に対応する楽音制御信号を前記音源装置５に送出し、自動演奏を行なう。
【００２０】
次に、ステップＳ６に進み、タブ譜表示指示がなされたか否かを判定する。これは、表示画面上に設けられたタブ譜表示を指示するスイッチ（ソフトウエアによるスイッチ）をマウス等によりクリックする操作が行われたこと、あるいは、プルダウンメニュー等を介してユーザによりタブ譜表示を指示する操作が行われたことを検出することにより判定される。タブ譜表示を指示する操作が検出されなかったときには、ステップＳ８に進み、この楽譜モードを終了すべき旨の指示があったか否かを判定し、指示がないときには、再び前記ステップＳ２に進み、選択され現在表示されている楽譜に対する処理を継続する。また、終了すべき旨の指示があったときは、この楽譜モード処理を終了し、メイン処理に復帰する。
【００２１】
一方、タブ譜表示指示があったときは、ステップＳ７に進み、現在表示されている五線譜による楽譜表示をタブ譜表示に変更する。このタブ譜表示処理の詳細については後述するが、これにより、前記表示画面上に対応するタブ譜が表示されることとなる。このとき、五線譜が表示されていた楽譜表示ウインドウ内にタブ譜を五線譜の演奏位置と対応するようにならべて表示するようにしてもよいし、あるいは、新たにタブ譜表示ウインドウを開いてもよい。
【００２２】
次に、前記移動処理について、図６のフローチャートおよび図７、図８に示した移動例を参照して説明する。
移動処理が開始されると、まず、イベントの移動操作が終了するまで、イベントの移動に合わせて画面上の楽譜を自動スクロールする処理が行われる（ステップＳ１１、Ｓ１２）。これにより、ドラッグされているイベント（以下、「移動イベント」という）の位置が表示画面からはみ出しそうになったら、画面に表示されている楽譜のスクロールが行われる。すなわち、移動イベントの画面上の座標位置が画面の端に達したとき、前記楽曲情報３０の読み出し開始位置を変更する。なお、この楽譜のスクロール処理は、移動処理の場合に限らず、楽譜表示画面の近傍に配置されたスクロールバーをユーザが操作することによっても実行される。
【００２３】
さて、ステップＳ１２において、移動イベントに対してのドロップ操作が行われて移動操作が終了したことが検出されると、ステップＳ１３に進み、移動イベントに対応する演奏データと、その移動後の位置に対応する記録位置を検出する。すなわち、移動イベントに対応する演奏データが前記楽曲情報３０中のどの演奏データであるのかを検出してバッファなどに格納するとともに、該移動イベントの移動後の位置を前記表示画面上の座標から検出して、それが、前記楽曲情報３０中のどの記録位置に対応するのかを検出し、その位置情報（タイミング情報）をバッファに保存する。
【００２４】
そして、ステップＳ１４に進み、該移動操作が連結記号に関連するものであるのか否かを判定する。ここで、移動イベントが（１）記号情報内に含まれている音符イベントである場合、（２）通常の音符イベントの移動後の記録位置が連結記号を表す記号情報内にある場合、あるいは、（３）記号情報内に含まれている音符イベントを移動した結果、連結記号内になかった音符イベントが連結記号内に含まれることとなった場合に、連結記号に関連するものとして、このステップＳ１４の判定結果がＹＥＳとなる。
【００２５】
それ以外の場合は、この判定結果がＮＯとなり、ステップＳ２１に進み、該移動操作に基づいて前記楽曲情報３０の内容を変更する処理が行われる。すなわち、楽曲情報３０中の移動前の記録位置に格納されている移動イベントに対応する演奏データを削除するとともに、検出された移動後の記録位置に記録する。
また、タイミング情報を記録位置に相当するように修正する。そして、ステップＳ２２に進み、該変更された楽曲情報３０に基づいて、前述のようにして、前記楽譜表示画面上に楽譜を表示する（通常表示）。
【００２６】
一方、移動操作が連結記号に関連するものであり、前記ステップＳ１４の判定結果がＹＥＳとなったときは、ステップＳ１５に進み、該移動に基づいて楽曲情報３０および記号情報４０の内容を変更する。すなわち、この場合には、移動イベントが連結記号に関連するものであるため、記号情報４０の書き換えが行われる。また、上記（３）のように、移動イベントが連結記号内の情報で、その移動により、新たなイベントを連結記号内に含むようになった場合には、新たに含まれることとなったイベントを楽曲情報から削除し記号情報内に追加する処理が行われ、楽曲情報３０も変更される。
【００２７】
そして、ステップＳ１６に進み、テンプレート指示データ５１を変更することが必要であるか否かを判定する。すなわち、現在のテンプレート指示データ５１で指定されているテンプレートが前記ステップＳ１５において書き換えられた新たな音符データの内容に対応しているか否かが判定される。例えば、スライドアップで連結されていた音符イベントのうちの後方に位置する音符イベントが移動され、前方の音符イベントよりもキーナンバが低いものとなった場合には、スライドアップではなく、スライドダウンが新たな音符イベントに対応するものとなる。したがって、テンプレート指示データを変更することが必要となる。
【００２８】
ステップＳ１６の結果、テンプレート指示データの変更が必要であると判定されたときは、ステップＳ１７に進み、テンプレート指示データ５１の内容を新たな音符データに基づいて変更する。すなわち、テンプレート指示データ５１の内容を、音高（音符）の変化傾向および以前の指示テンプレートの内容に応じて、編集後の音符データに対して最適なテンプレートを指示するデータに変更する。例えば、以前の指示テンプレートがスライドアップであり、音高の変化傾向が逆になったときは、スライドダウンを新たなテンプレート指示データとするように予め対応関係が決定されており、この対応関係に基づいてテンプレート指示データ５１の変更が行われる。
このステップＳ１７が終了した後、あるいは、テンプレート指示データの変更が不要であり、前記ステップＳ１６の判定結果がＮＯのときには、ステップＳ１８に進む。このステップＳ１８においては、前記ステップＳ１５において変更された記号データ４２に基づいて、対応する記号情報中の演奏データ４３の内容の書き換えが行われる。これにより、前述した自動演奏時に編集操作の結果を反映させることが可能となる。
【００２９】
次に、ステップＳ１９に進み、前記移動イベントに連結する音符イベントが同時に同一表示画面上に表示することができないかどうかを判定する。すなわち、前述のように移動イベントの移動に合わせて表示画面がスクロールされるため、その移動量によっては、連結するイベントが表示画面上から見えなくなることがある。
表示画面上に連結する音符イベントを同時に全て表示することができ、このステップＳ１９の判定の結果がＮＯとなったときは、ステップＳ２２に進み、変更された情報に基づいて楽譜を通常表示する。
【００３０】
一方、移動イベントに連結する音符イベントを表示画面上に同時に表示することができないときには、ステップＳ２０に進み、連結表示を特殊表示に変更して表示する。すなわち、表示画面上に表示されている音符イベント（これは、連結記号により連結されている音符のうちの一方である）の近傍に通常の連結記号の表示とは異なる形態の連結記号の表示を行ない、ユーザがどのような連結記号であるかを明確に把握することができるようにする。この特殊表示の形態としては、画面上に表示されている連結記号に含まれている音符の近傍に連結記号の内容を示す文字を表示するとともに、画面に表示されていない他方の音符への弧線を一部のみ表示する。これにより、ユーザは連結記号の内容を明確に把握することができるとともに、長い弧線を表示することが無いので見易い表示とすることができる。
【００３１】
以上の移動処理について、図７および図８の移動例に基づいて、より具体的に説明する。なお、この例において、移動前には、前記図２〜図４に示した楽曲情報の例が移動前の楽曲情報であるものとし、移動後に図７あるいは図８に示す状態となったものとする。
図７は、前記図２におけるペン型アイコン２２の近傍にある第４拍目の四分音符を第２拍目（２４クロックのタイミング）に移動するとともに、その音高をキーナンバ７１の位置に移動するイベント移動処理を行なった場合を示しており、図７の（ａ）は移動後の楽譜を示している。この図から明らかなように、この移動操作の場合、移動前はスライドアップであったものが、移動後にはスライドダウンに変更されている。なお、前述のように休符は自動的に挿入されるため、この移動にともない休符の位置が変更されている。
【００３２】
図７の（ｂ）は移動後の記号データ４２、（ｃ）は移動後の指示テンプレートの例、（ｄ）は移動後の演奏データ４３を示しており、色の濃い部分が変更された部分を示している。この移動は、連結記号内の移動であるため、楽曲情報は変更されない。
すなわち、この例においては、図７の（ｂ）に示すように、前記図６のステップＳ１５において、記号データ４２のタイミング（４８）の前にタイミング（２４）に相当する音符イベント（キーナンバ７１）が追加される。この追加されたイベントがマウス操作により移動されたイベントである。また、ステップＳ１６において、テンプレート指示データの変更が必要であると判定され、ステップＳ１７においてテンプレート指示データ５１が移動前のスライドアップからスライドダウンに変更される。そして、ステップＳ１８において演奏データ４３の変更処理が行なわれる。すなわち、前記記号データ４２に対して、図７の（ｃ）に示す、前記変更されたテンプレート指示データ５１に対応するスライドダウンのテンプレートを適用して、図７の（ｄ）に示す新たな演奏データ４３が生成される。図示した例では、イベント移動により更新された記号データ４２に基づき、キーナンバ（７１）からキーナンバ（６４）に達する複数のタイミング情報とピッチベンドイベントデータが生成され、ダウン傾向にあるスライドに対応する演奏データ４３が生成される。
そして、ステップＳ２２において、変更された情報に基づく楽譜が通常表示される。すなわち、位置変更後の音符とそれに対応する連結記号、この場合はスライドダウンが自動的に表示されることとなる。
【００３３】
図８に示した例は、前記図２のように表示されていた楽譜において、ペン型アイコン２２の近傍にある第４拍目の音符イベントを音高はそのままで右方に大きく（次小節の第３拍に）移動した場合を示している。この場合には、イベントの移動により画面表示位置がスクロールされ、移動イベントと連結されている他方の音符が表示画面２１からはみ出してしまい、移動イベントと同時に表示することができない。従って、前記図６のステップＳ１９の判定結果がＹＥＳとなり、ステップＳ２０に進み、図８の（ａ）に示すように、連結表示（この場合にはスライドアップ）が特殊表示（スライドの表示におけるスラーの部分が右半分だけ表示され、スライドを示す文字「ｓ．」がその下部に表示されている）に変更されて表示されている。これにより、操作者に分かりやすい表示となっている。
【００３４】
また、図８の（ｂ）は記号データ４２を示しており、タイミング（７２）のイベントが次小節のタイミング（７２）の位置であることを示すために、タイミング（０）が付加されている。すなわち、このタイミング（０）は小節線を示すものといえる。なお、スライド傾向は変化していないためテンプレート指示データ５１は変更されていない。
さらに、図８の（ｃ）は演奏データ４３を示しており、イベント移動により更新された記号データ４２に基づき、スライドが終了する時間長が、ゲートタイムＧＴ（１４０）と変更され、それに対応してスライド傾向を付与するピッチベンドイベントおよびそのタイミング情報の内容も新たに作成されて記録されていることがわかる。
【００３５】
なお、この楽譜表示画面のスクロールにより連結されている音符を同時に表示できなくなったときに、連結記号の表示を特殊表示に変更する処理は、イベントの移動時だけではなく、ユーザが画面上に表示されている楽譜の範囲を変更するためにスクロールバーなどを用いてスクロールさせた場合についても、全く同様に行なうことができる。
【００３６】
次に、前記タブ譜表示処理（前記図５におけるステップＳ７）について、図９のフローチャートおよび図１０の表示例を参照して説明する。
このタブ譜表示処理が開始されると、まず、ステップＳ３１において、読出開始位置の設定が行なわれる。すなわち、タブ譜表示指示があったとき、その時点で表示されている楽譜区間に相当するタブ譜を表示するために、現在表示中の楽譜の先頭位置に対応するイベント（楽曲情報３０あるいは記号情報４０内の演奏データ）を読出開始位置として設定する。
【００３７】
次に、ステップＳ３２に進み、その読出開始位置から１イベント分のデータを読み出す。このとき、通常の演奏データについては１発音分の演奏データ（タイミング情報３２と演奏イベント情報３３）を１イベント分のデータとして読み出し、楽譜記号が付与されているものについては、１つの記号情報を１イベントとして読み出す。
そして、ステップＳ３３に進み、該読み出した１イベント分の演奏データあるいは記号情報に含まれるノートナンバ（Ｋｏｎ）を対応するフレット番号に変換する。この変換は、各ノートナンバがどの弦のどのフレットを操作することに対応するかを記載した変換テーブルを参照して、読み出されたイベント内のノートナンバに対応する弦およびフレット番号を読み出すことにより行われる。
【００３８】
続いて、該読み出されたイベントが記号イベントであるときは、ステップＳ３５に進み、対応するテンプレートを参照して、この記号イベントが特殊表示をすべきイベントであるか否かを判定する。ここで、記号イベントがチョーキング（ギターなどの弦楽器の奏法で、ある弦を押さえてピッキングした後に押さえている弦を垂直方向に指で押し上げあるいは押し下げて音程を変化させる奏法）、アーミング（エレクトリックギターに取り付けられているトレモロアームを使用することにより全ての弦のピッチを上下させる奏法）などであるときは、音高が変わっても操作されるフレット位置が変化しないような奏法であるため、前述した変換テーブルにより変換された結果をそのまま用いることはできず、特殊表示をすべき記号イベントであると判定される。また、後述する例４（図１０）で説明するように、前記チョーキングやアーミングに後続する所定の記号イベントの場合にも、特殊表示をすべき記号イベントであると判定される。
【００３９】
読み出された記号イベントが特殊表示をすべきイベントであり、ステップＳ３５の判定の結果がＹＥＳとなったときは、ステップＳ３６に進み、フレット番号を記号イベントの内容に従って特殊表示イベント用のフレット番号に再変換する。すなわち、読み出された記号イベント内に存在する複数のフレット番号を、所定の規則に従って記号（奏法）に合致するフレット番号に変換する。この再変換の規則は、予め特殊表示をすべき記号イベント毎に定義されている。
そして、ステップＳ３７に進み、フレット番号あるいは記号をタブ譜上の対応する位置に表示する。
【００４０】
また、読み出されたイベントが通常のイベントである場合（ステップＳ３４の判定結果がＮＯのとき）、および、読み出されたイベントが特殊表示をすべきイベントではない場合（ステップＳ３５の判定結果がＮＯのとき）はステップＳ３７に進み、前記ステップＳ３３において変換テーブルを用いて変換されたフレット番号をそのままタブ譜上の対応する位置に表示する。ここで、前記特殊表示を必要としない記号イベントとしては、例えば、ハンマリングオン、プリング、トリル、スライドなどがある。
【００４１】
図１０はこれらタブ譜表示の例を示す図であり、例１は、読み出された記号イベントがチョーキングである場合を示しており、前記ステップＳ３３においてフレット番号が２、３とされたところを、前記ステップＳ３６において、フレット番号２、２と再変換されたフレット番号が表示されている。
また例２は、特殊表示をしないハンマリングオンのタブ譜表示への変換を示している。この場合には、前記ステップＳ３３における変換テーブルの出力通りフレット番号が２、３となっている。
例３は、チョーキングが連続する場合を示しており、３つの音譜について最小のフレット番号に揃えられていることがわかる。
さらに、例４は、チョーキングとハンマリングオンとが連続している場合を示しており、チョーキングの部分は前述したように最小フレット番号に揃え、該チョーキングに連続するハンマリングオンの部分は、その直前の音符からの音程の差に対応する分だけのシフトしたフレット番号とされている。このように、チョーキングにハンマリングオンが後続している場合には、前記ステップＳ３５において特殊表示をすべき記号イベントであると判断して、ハンマリングオンについてもフレット番号の再変換を行なうようにしている。
このように、本発明によれば、より正確なタブ譜表示を行なうことが可能となる。
【００４２】
なお、前述した音符イベントの移動処理において、移動処理の対象となる音符イベントに付与されている楽譜記号がチョーキング記号である場合には、チョーキング前の音高がチョーキング後の音高よりも高音にならないよう、音符イベントの移動が制御されるようにするとよい。これにより、ありえない楽譜記号が付与された状態となることを防止することができる。また、仮に、このような移動の制御を行なわない場合であっても、チョーキングに関するテンプレートは変更せず、同音高によるチョーキングとして解釈するようにしてもよい。あるいは、チョーキングにそぐわない移動がなされた場合には、チョーキング記号を自動的に削除するようにしてもよい。
【００４３】
さらに、上述した実施の形態においては、シーケンスソフトの楽譜モードから起動される楽譜表示制御プログラムとして説明したが、本発明は、楽譜清書プログラムあるいは単独の楽譜表示編集プログラム、あるいは、単独の楽譜表示装置としても全く同様に実現することができる。
さらにまた、前述した楽譜記号の特殊表示の形態は、前述したような形態に限られることはない。例えば、チョーキング記号に番号や文字を付与したり、あるいは特定の表示色にして、同じチョーキング記号で連結されている音符をわかり易くするなど、どの楽譜記号同士が関連しているかを表す表示を添付するようにしてもよい。
【００４４】
さらにまた、上述した音源装置あるいはＭＩＤＩ機器５は、それぞれを別体装置としてＭＩＤＩや各種ネットワーク等の通信手段を用いて各装置を接続するもの、あるいは、パソコン＋アプリケーションソフトウェアの形態のものであってもよい。
さらにまた、前記演奏情報のフォーマットは、演奏イベントの発生時刻を１つ前のイベントからの時間で表した「イベント＋相対時間」、演奏イベントの発生時刻を曲や小節内における絶対時間で表した「イベント＋絶対時間」、音符の音高と符長あるいは休符と休符長で演奏データを表した「音高（休符）＋符長」、演奏の最小分解能毎にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域に演奏イベントを記憶した「ベタ方式」等、どのような形式でもよい。
さらにまた、本発明の楽譜表示プログラムを前記通信ネットワーク４を介して、接続されたサーバコンピュータ等に記憶しておき、必要に応じて、パーソナルコンピュータ１にダウンロードして使用するようにしてもよい。
【００４５】
【発明の効果】
以上説明したように、本発明の楽譜表示制御装置および楽譜表示制御プログラムを記録した記録媒体によれば、ユーザは、容易かつ正確に表示されている譜面の内容を認識することができる。
また、ユーザの意図する楽譜が正確に表示されると共に、ユーザの意図する演奏情報を正確に作成することができる。これにより、演奏情報の編集作業が容易になるとともに、操作性および認識性が向上する。
さらに、複数音符のすべてが画面上に表示されていない場合でも、表示されている音符にどのような楽譜記号が付与されているかを、容易かつ正確に認識することができる。また、楽譜記号が簡潔に表示されるため、楽譜がみにくくなることがなく、楽譜の認識性が向上する。
さらにまた、譜面から正確な演奏を容易に認識することが可能となる。従って、正確なギターの練習を行うことが可能となる。
【図面の簡単な説明】
【図１】  本発明の楽譜表示制御装置のハードウエア構成の一例を示すブロック図である。
【図２】  楽譜の例および楽譜表示画面における表示領域を説明するための図である。
【図３】  本発明における楽曲情報および記号情報を説明するための図である。
【図４】  記号情報に含まれる記号データと演奏データを説明するための図である。
【図５】  楽譜モード処理を説明するためのフローチャートである。
【図６】  移動処理を説明するためのフローチャートである。
【図７】  移動操作の一例と移動後の記号情報を説明するための図である。
【図８】  移動操作の他の例と移動後の記号情報を説明するための図である。
【図９】  タブ譜表示処理を説明するためのフローチャートである。
【図１０】  楽譜表示からタブ譜表示への変換の例を示す図である。
【符号の説明】
１  パーソナルコンピュータ、２  入力装置、３  ディスプレイ装置、４  通信ネットワーク、５  音源装置、６  サウンドシステム、１０  ＣＰＵ、１１  タイマ、１２  ＲＯＭ、１３  ＲＡＭ、１４  外部記憶装置、１５  検出回路、１６  表示回路、１７  通信インターフェース、１８  ＭＩＤＩインターフェース、２１  楽譜表示枠、２２  アイコン、２３  楽譜記号を表す表記、３０  楽曲情報、３１  初期設定情報、３２  タイミング情報、３３  演奏イベント情報、３４  キーオンデータ、３５  ステップタイムデータ、３６  ゲートタイムデータ、３７  記号イベント情報、４０  記号情報、４１  記号イベント名、４２記号データ、４３  演奏データ、５１  テンプレート指示データ、５２  音符データ、５３  リターンコード
【図１】
0003654076.tif 000002
【図２】
0003654076.tif 000003
【図３】
0003654076.tif 000004
【図４】
0003654076.tif 000005
【図５】
0003654076.tif 000006
【図６】
0003654076.tif 000007
【図７】
0003654076.tif 000008
【図８】
0003654076.tif 000009
【図９】
0003654076.tif 000010
【図１０】
0003654076.tif 000011