JP4453233B2 - 楽譜表示制御装置及び楽譜表示処理のプログラム - Google Patents
楽譜表示制御装置及び楽譜表示処理のプログラム Download PDFInfo
- Publication number
- JP4453233B2 JP4453233B2 JP2001255211A JP2001255211A JP4453233B2 JP 4453233 B2 JP4453233 B2 JP 4453233B2 JP 2001255211 A JP2001255211 A JP 2001255211A JP 2001255211 A JP2001255211 A JP 2001255211A JP 4453233 B2 JP4453233 B2 JP 4453233B2
- Authority
- JP
- Japan
- Prior art keywords
- measure
- displayed
- score
- key signature
- score image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Auxiliary Devices For Music (AREA)
- Electrophonic Musical Instruments (AREA)
Description
【発明の属する技術分野】
本発明は、楽譜表示制御装置及び楽譜表示処理のプログラムに関する。
【0002】
【従来の技術】
曲データの演奏をガイドする演奏教習装置においては、LCD等の表示装置に曲データの楽譜画像を表示して、演奏すべき音符の画像を強調して表示させたり、カーソルを演奏すべき音符の進行に伴って移動されたりして、演奏のガイドを行っている。また、通常の演奏装置において、メモリ等に記憶された模範の曲データを再生しながら楽譜画像を表示することにより、発音される楽音と表示された楽譜との関係を把握して演奏技術の向上を図ることもできる。
このため、曲データの再生に伴って対応する音符、コード、その他の楽譜画像を表示する楽譜表示制御装置が提案されている。
【0003】
【発明が解決しようとする課題】
しかしながら、従来の技術においては、曲の途中で他の調に転調する場合には、表示された楽譜画像の調号をユーザが認識できないことが多い。楽譜画像は音符の画像だけでなく、休符の画像、音の強弱を表す記号、スラー記号、スタッカート記号、コード記号等のように、多種の画像が表示されるので、曲の基本の調については認識できるが、途中の調号を見逃してしまう場合が多いのである。
曲が転調したことが認識できない場合には、曲データの演奏ガイドや、発音される楽音と楽譜との関係を把握することに大きな支障をきたしてしまうという問題があった。
【0004】
また、従来の技術においては、曲データを楽譜画像に変換して表示する処理が装置のCPU等の制御手段にとって相当に重い負荷になるので、楽譜画像の画像処理をする間はほかの仕事することが困難である。このため、例えば、その間にユーザの演奏が行われた場合には、その演奏操作に対応することができず、発音が遅れてしまうなどという問題があった。
【0005】
本発明の第1の課題は、曲の途中で他の調に転調して楽譜画像にその調号が表示されたことをユーザが十分に認識できるようにすることである。
また、本発明の第2の課題は、楽譜画像の画像処理のために発音処理に支障をきたすのを防止することである。
【0006】
【課題を解決するための手段】
請求項1に記載の楽譜表示制御装置は、複数の小節からなる曲データの小節を順次読み出す読出し手段と、この読出し手段により読み出された小節に転調を指示する調号があるか否かを検出する転調検出手段と、この転調検出手段によって調号が検出されない場合には、上段及び下段の夫々に所定数までの小節の楽譜画像を表示可能な表示手段において、前記調号が検出されない小節のひとつ前の小節に対応する楽譜画像を表示している段に前記所定数の小節の楽譜画像が表示されているか否か判別する判別手段と、この判別手段により、前記段に前記所定数の小節の楽譜画像が表示されていると判別された場合は、当該段と異なる段に前記調号が検出されない小節に対応する楽譜画像を表示させるとともに、前記段に前記所定数の小節の楽譜画像が表示されていないと判別された場合は、前記ひとつ前の小節に対応する楽譜画像と同一の段に前記調号が検出されない小節に対応する楽譜画像を表示させる第1の表示制御手段と、前記転調検出手段によって調号が検出された場合には当該調号がある小節に対応する楽譜画像を、前記表示手段の上下段のうち、前記調号のある小節のひとつ前の小節に対応する楽譜画像が表示されている段とは異なる段の先頭に表示させる第2の表示制御手段を有する構成になっている。
【0007】
請求項2に記載の楽譜表示処理のプログラムは、複数の小節からなる曲データの小節を順次読み出す読出しステップと、読み出された小節に転調を指示する調号があるか否かを検出する転調検出ステップと、調号が検出されない場合には、上段及び下段の夫々に所定数までの小節の楽譜画像を表示可能な表示手段において、前記調号が検出されない小節のひとつ前の小節に対応する楽譜画像を表示している段に前記所定数の小節の楽譜画像が表示されているか否か判別する判別ステップと、前記段に前記所定数の小節の楽譜画像が表示されていると判別された場合は、当該段と異なる段に前記調号が検出されない小節に対応する楽譜画像を表示させるとともに、前記段に前記所定数の小節の楽譜画像が表示されていないと判別された場合は、前記ひとつ前の小節に対応する楽譜画像と同一の段に前記調号が検出されない小節に対応する楽譜画像を表示させる第1の表示制御ステップと、調号が検出された場合には当該調号がある小節に対応する楽譜画像を、前記表示手段の上下段のうち、前記調号のある小節のひとつ前の小節に対応する楽譜画像が表示されている段とは異なる段の先頭に表示させる第2の表示制御ステップとを有する。
【0009】
【発明の実施の形態】
以下、本発明による楽譜表示制御装置の実施形態について、図を参照して説明する。
図1は、実施形態における楽譜表示制御装置の構成を示すブロック図である。図1において、CPU1はシステムバス2を介して、プログラムROM3、ワークRAM4、表示部5、曲メモリ6、鍵盤7、スイッチ部8、音源9、及びVRAM10に接続され、これら各部との間でコマンド及びデータを授受してこの装置全体を制御する。また、音源9には、D/A変換器、アンプ、スピーカ等からなる発音回路11が接続されている。
【0010】
プログラムROM3には、楽譜表示処理のプログラムや、電源投入時のイニシャライズにおける初期データが格納されている。ワークRAM4は、CPU1によって処理される各種のデータを一時的に記憶する。表示部5には、曲データに対応する楽譜画像が表示される。曲メモリ6には、複数の曲データが記憶されている。曲データの構成については後述する。鍵盤7は、演奏操作に応じてその演奏データをCPU1に入力する。スイッチ部8は、複数のスイッチで構成され、その操作に応じてコマンドやデータをCPU1に入力する。
音源9は、鍵盤7で演奏操作で入力された演奏データに応じて生成した楽音波形データを発音回路10に送出して発音させる。また、曲メモリ6から読み出された曲の再生データに対して、スイッチ部18のボリューム操作に応じて音量調整を施して発音回路11に送出して発音させる。VRAM10は、表示部5に表示する画像データを1画面分のビットマップに展開して記憶し、所定の表示タイミングで表示部5に画像データを送出して表示する。
【0011】
図2は、このVRAM10の記憶エリア及びワークRAM4の一部のエリア、並びに曲メモリ6に記憶された曲データの構成を示している。VRAM10は、表示部5の画面の上段の領域及び下段の領域に表示するための上段画像及び下段画像をそれぞれ記憶する。各段の画像データは、曲データにかかわらず変化しない背景(BG)となる五線譜やト音記号の画像を記憶するエリアと、曲データごとに変化する楽譜画像を記憶するエリアがある。ワークRAM4の一部であるRAMA及びRAMBのエリアは、それぞれ上段画像及び下段画像に展開する画像を一時的に記憶するエリアである。
【0012】
曲メモリ6に記憶された曲データは、複数の小節(1)〜(n)で構成され、各小節の最後は小節線のデータになっている。曲データの最初の小節(1)においては、その曲の調号のデータ、その小節のコードのデータに続いて、通常は複数の音符データがある。また、小節(2)のように、休符データが含まれる場合もある。さらに、この図には示さないが、転調する場合の調号、音の強弱を表す記号、スラー記号、スタッカート記号等のデータが適宜含まれる。
【0013】
次に、図1の楽譜表示制御装置における楽譜表示処理の動作について、図3〜図8及び図13〜図17に示すCPU1のフローチャート、図9〜図12に示す曲データ、ワークRAMのエリア、VRAM10のエリア、変数の関係を示す図に基づいて説明する。
図3はメインフローであり、所定のイニシャライズ(ステップA1)の後、所定タイミングに達したか否かを判別する(ステップA2)。このタイミングに達したときは、楽器処理を実行する(ステップA3)。一方、このタイミングに達していない時間帯においては、後述するフラグGFが「1」か否かを判別する(ステップA4)。ここでGFが「1」ならば楽譜表示生成処理を実行する(ステップA5)。GFが「1」でないならばステップA2に戻る。楽器処理又は楽譜表示生成処理の後は、ステップA2に戻って所定タイミングに達したか否かを判別する。
ステップA3の楽器処理は、図4に示すように、スイッチ処理(ステップB1)、再生処理(ステップB2)、鍵盤処理(ステップB3)、その他の処理(ステップB4)を実行する。
【0014】
図5及び図6は、図4のステップB1におけるスイッチ処理のフローである。まず、スタートスイッチがオンされたか否かを判別し(ステップC1)、このスイッチがオンでない場合には、他のスイッチがオンされたか否かを判別する(ステップC2)。他のスイッチがオンされたときは、そのスイッチに対応する他の処理を行って(ステップC3)、図4のフローに戻る。
一方、スタートスイッチがオンされたときは、スタートフラグSTFを反転する(ステップC4)。そして、STFの値が「1(再生)」であるか否かを判別する(ステップC5)。STFが「1」である場合には、初期楽譜表示処理を実行する(ステップC6)。
【0015】
次に、アドレスレジスタADに曲データのスタートアドレスをセットし、変数Dに「1」をセットする(ステップC7)。変数Dは曲データの再生により、現在読み取られている小節の小節番号をセットするレジスタである。この後、ADで指定される曲データ(AD)が調号であるか否かを判別する(ステップC8)。曲データ(AD)が調号である場合には、レジスタKEYにその調号をストアする(ステップC9)。次に、ADをインクリメントして(ステップC10)、曲データ(AD)がコードであるか否かを判別する(ステップC11)。コードである場合には、コード処理を実行する(ステップC12)。ステップC5において、STFが「0(再生停止)」である場合には、消音処理を行い(ステップC13)、楽譜表示を消去して(ステップC14)、図4のフローに戻る。
【0016】
ステップC11において曲データ(AD)がコードでない場合には、図6のフローにおいて、曲データ(AD)が休符であるか否かを判別する(ステップC15)。休符である場合には、その休符長をレジスタTIMEにストアする(ステップC16)。そして、図4のフローに戻る。ステップC15において曲データ(AD)が休符でない場合には、曲データ(AD)が音符であるか否かを判別する(ステップC17)。音符である場合には、その音高をレジスタNOTEにストアする(ステップC18)。次に、KEYの調号に基づきNOTEの音高を変換して(ステップC19)、音源9に発音指示を行う(ステップC20)。そして、音符長すなわち発音時間をTIMEにストアして(ステップC21)、図4のフローに戻る。ステップC17において曲データ(AD)が音符でない場合には、その他の処理を行って、図4のフローに戻る。
【0017】
図7及び図8は、図5のステップC6における初期楽譜生成処理のフローである。この処理では、スタートスイッチがオンされたときに、曲が再生される前に最初の楽譜を表示する処理である。
なお、このフローにおいて、ワークRAMのエリアRAMA及びRAMBにストアされる画像データの小節番号、VRAMの上段及び下段エリアに記憶される画像データの小節番号、並びに各種の変数A、B、C、E、Fの値(小節番号)が、曲データの小節1,2,3,4の内容(調号の有無)に応じて変化する様子を図9〜図12に示す。この場合において、変数Aは変曲データの小節番号を指定するポインタである。変数Bは表示部の上段に表示されている最終小節の小節番号の次の小節番号を示す。変数Cは表示部の下段に表示されている最終小節の小節番号の次の小節番号を示す。変数EはRAMAに記憶されていて、楽譜データへの変換が終了した小節の小節番号を示す。変数FはRAMBに記憶されていて、楽譜データへの変換が終了した小節の小節番号を示す。
【0018】
図7において、まず、Aに「1」をセットする(ステップD1)。すなわち曲の最初の小節番号をセットする。そして、次の小節(A+1)に転調を指示する調号があるか否かを判別する(ステップD2)。その小節に調号がある場合には、さらにその次の小節(A+2)に転調を指示する調号があるか否かを判別する(ステップD3)。
この小節(A+2)に調号がある場合には、小節(A)を楽譜データに変換し(ステップD4)、RAMAにストアする(ステップD5)。また、小節(A+1)を楽譜データに変換し(ステップD6)、RAMBにストアする(ステップD7)。そして、変数E及びBにA+1の値をストアし、AにA+2の値をストアする(ステップD8)。
【0019】
この場合の曲データの構成は、図9(a)に示すようになっている。ここで、「○」印がある小節は調号がある小節である。なお、曲データの最初の小節1には必ず調号があるものとする。すなわち、ハ長調及びハ短調の曲データをも含めて小節1には「○」印がある。2番目以降の小節に調号がある場合には、曲の基本の調が他の調に転調した場合である。すなわち、2番目以降の小節の調号は転調を指示するものである。このことは後述する図10〜図12においても共通である。
したがって、図9(a)の曲データの場合には、小節2及び小節3に調号がある。この場合には、ステップD5及びD7の処理によって、図9(b)のRAMAのエリアに小節1の画像データがストアされ、RAMBのエリアに小節2の画像データがストアされる。また、ステップD8の処理によって、図9(d)の変数A、B、Eには、それぞれ「3」、「2」、「2」の値がストアされる。
【0020】
ステップD3において小節(A+1)に調号がない場合には、小節(A)を楽譜データに変換し(ステップD9)、RAMAにストアする(ステップD10)。また、小節(A+1)及び(A+2)を楽譜データに変換し(ステップD11)、RAMBにストアする(ステップD12)。そして、変数E及びBにA+1の値をストアし、AにA+3の値をストアする(ステップD13)。
この場合には、図10(a)の曲データにおいて「○」印のある小節2に調号があり、「×」印のある小節3には調号がない。この場合には、ステップD16及びD18の処理によって、図10(b)のRAMAのエリアに小節1の画像データがストアされ、RAMBのエリアに小節2及び小節3の2小節分の画像データがストアされる。また、ステップD19の処理によって、図10(d)の変数A、B、Eには、それぞれ「4」、「2」、「2」の値がストアされる。
【0021】
ステップD2において小節(A+1)に調号がない場合には、図8のフローにおいて、小節(A+2)に転調を指示する調号があるか否かを判別する(ステップD14a)。その小節に調号がある場合には、さらに、小節(A+3)に転調を指示する調号があるか否かを判別する(ステップD14b)。その小節に調号がある場合には、小節(A)及び(A+1)を楽譜データに変換し(ステップD15)、RAMAにストアする(ステップD16)。また、小節(A+2)を楽譜データに変換し(ステップD17)、RAMBにストアする(ステップD18)。そして、変数E及びBにA+2の値をストアし、AにA+3の値をストアする(ステップD19)。
この場合には、図11(a)の曲データにおいて「○」印のある小節3及び小節4に調号があり、「×」印のある小節2には調号がない。この場合には、ステップD16及びD18の処理によって、図11(b)のRAMAのエリアに小節1及び小節2の2小節分の画像データがストアされ、RAMBのエリアに小節3の画像データがストアされる。また、ステップD19の処理によって、図11(d)の変数A、B、Eには、それぞれ「4」、「3」、「3」の値がストアされる。
【0022】
ステップD14aにおいて小節(A+2)に調号がない場合には、小節(A+3)に転調を指示する調号があるか否かを判別する(ステップD20a)。この小節に調号がない場合には、小節(A)及び(A+1)を楽譜データに変換し(ステップD20b)、RAMAにストアする(ステップD21)。また、小節(A+2)及び(A+3)を楽譜データに変換し(ステップD22)、RAMBにストアする(ステップD23)。そして、変数E及びBにA+2の値をストアし、AにA+4の値をストアする(ステップD24)。
この場合には、図12(a)の曲データにおいて「×」印のある小節2、小節3及び小節4には調号がない。この場合には、ステップD21及びD23の処理によって、図12(b)のRAMAのエリアに小節1及び小節2の2小節分の画像データがストアされ、RAMBのエリアに小節3及び小節4の2小節分の画像データがストアされる。また、ステップD24の処理によって、図12(d)の変数A、B、Eには、それぞれ「5」、「3」、「3」の値がストアされる。
【0023】
ステップD14bにおいて、小節(A+3)に調号がない場合には、曲データにおいて小節3に調号があり、小節2及び小節4には調号がない。この場合には、ステップD20bに移行して、D24までの処理を行う。したがって、ステップD21及びD23の処理によって、RAMAのエリアに小節1及び小節2の2小節分の画像データがストアされ、RAMBのエリアに小節3及び小節4の2小節分の画像データがストアされる。また、ステップD24の処理によって、変数A、B、Eには、それぞれ「5」、「3」、「3」の値がストアされる。
【0024】
ステップD20aにおいて、小節(A+3)に調号がある場合には、曲データにおいて小節4に調号があり、小節2及び小節3には調号がない。この場合には、ステップD15に移行して、ステップD19までの処理を行う。したがって、ステップD16及びD18の処理によって、RAMAのエリアに小節1及び小節2の2小節分の画像データがストアされ、RAMBのエリアに小節3の画像データがストアされる。また、ステップD19の処理によって、変数A、B、Eには、それぞれ「4」、「3」、「3」の値がストアされる。
【0025】
ステップD8、D13、D19又はD24において、変数E及びBに小節番号をストアし、変数Aの小節番号を更新した後は、図8のステップD25において、変数F及びCに変数Aの小節番号をストアする(ステップD25)。したがって、図9〜図12の(d)に示すように、変数C及びFにAの値がストアされる。
次に、RAMA及びRAMBの画像データをVRAMに転送する(ステップD26)。そして、VRAMに展開された楽譜画像の最初の音符にカーソルを表示する(ステップD27)。この後、フラグGFに「0(表示終了)」をセットし、フラグAFに「1(上段)」をセットして(ステップD28)、図5のフローに戻ってステップC7に移行する。したがって、図9〜図12の(c)に示すように、VRAMの上段及び下段に該当する小節の楽譜画像のデータがストアされて、表示部に表示される。
【0026】
図13〜図15は、図4の楽器処理のフローにおけるステップB2の再生処理のフローである。図13において、STFの値が「1(再生)」であるか否かを判別し(ステップE1)、この値が「1」である場合には、所定の最小時間が経過したか否かを判別する(ステップE2)。最小時間が経過したときは、TIMEの値をデクリメントする(ステップE3)。そして、TIMEの値が「0」に達したか否かを判別する(ステップE4)。この値が「0」に達していない場合、又は、ステップE1においてSTFの値が「0(再生停止)」である場合、若しくはステップE2において最小時間がまだ経過していない場合には、このフローを終了する。
【0027】
ステップE4においてTIMEの値が「0」に達したときは、ADの値すなわち曲データのアドレスをインクリメントする(ステップE5)。そして、ADで指定した曲データである曲データ(AD)がデータなしであるか否かを判別する(ステップE6)。データなしである場合には、フラグGF及びSTFをともに「0」に戻し(ステップE7)、音源9に対して消音指示をして(ステップE8)、表示を消去する(ステップE9)。そして、図4のフローに戻る。
ステップE6において曲データ(AD)がデータなしでない場合には、図14のフローにおいて、曲データ(AD)が調号であるか否かを判別する(ステップE10)。曲データ(AD)が調号である場合には、レジスタKEYにその調号をストアする(ステップE11)。曲データ(AD)が調号でない場合には、曲データ(AD)がコードであるか否かを判別する(ステップE12)。コードである場合には、コード処理を実行する(ステップE13)。
【0028】
曲データ(AD)がコードでない場合には、曲データ(AD)が小節線であるか否かを判別する(ステップE14)。小節線である場合には、再生により現在読み取りの終了した小節の小節番号をストアしている変数Dの値をインクリメントする(ステップE15)。そして、変数Dの小節番号と変数Bの小節番号とが一致するか否かを判別する(ステップE16)。すなわち、再生により現在読み取りの終了した小節の小節番号と、表示部5の画面の上段に表示されている最終小節の小節番号とが一致しているか否かを判別する。言い換えれば、画面の上段に表示されている楽譜画像に対応する曲データの再生が終了したか否かを判別する。
変数Dの小節番号と変数Bの小節番号とが一致する場合には、RAMAの内容をVRAMの上段に転送する(ステップE17)。そして、変数Eの小節番号を変数Bにストアする(ステップE18)。また、次に続く小節の楽譜変換処理が必要であることを示すGFを「1(表示変更)」にセットする(ステップE19)。この後は、図13のステップE5に戻ってADをインクリメントして次の曲データ(AD)を指定する。
【0029】
ステップE16において、変数Dの小節番号と変数Bの小節番号とが一致しない場合には、変数Dの小節番号と変数Cの小節番号とが一致するか否かを判別する(ステップE20)。すなわち、再生により現在読み取りの終了した小節の小節番号と、表示部5の画面の下段に表示されている最終の小節番号とが一致しているか否かを判別する。言い換えれば、画面の下段に表示されている楽譜画像に対応する曲データの再生が終了したか否かを判別する。
変数Dの小節番号と変数Cの小節番号とが一致する場合には、RAMBの内容をVRAMの下段に転送する(ステップE21)。そして、変数Fの小節番号を変数Cにストアする(ステップE18)。これにより、また次の小節の楽譜への変換が必要となるため、GFを「1(表示変更)」にセットする(ステップE19)。この後は、図13のステップE5に戻ってADをインクリメントして次の曲データ(AD)を指定する。
【0030】
図14のステップE14において、曲データ(AD)が小節線でない場合には、図15のフローにおいて、曲データ(AD)が休符であるか否かを判別する(ステップE23)。休符である場合には、音源9に消音指示をして(ステップE24)、その休符長をレジスタTIMEにストアする(ステップE25)。そして、図4のフローに戻る。
ステップE23において曲データ(AD)が休符でない場合には、曲データ(AD)が音符であるか否かを判別する(ステップE26)。音符である場合には、その音高をレジスタNOTEにストアする(ステップE27)。次に、KEYの調号に基づきNOTEの音高を変換して(ステップE28)、音源9に発音指示を行う(ステップE29)。そして、音符長すなわち発音時間をTIMEにストアして(ステップE30)、カーソルを対応する音符に移動する(ステップE31)。そして、図4のフローに戻る。ステップE26において曲データ(AD)が音符でない場合には、その他の処理を行って、図4のフローに戻る。
【0031】
図16及び図17は、図3のメインフローにおける楽譜表示生成処理のフローである。図16において、フラグPFの値が「0」であるか否かを判別する(ステップF1)。PFは曲データを楽譜データに変換する処理が開始するときに「1」にセットされ、変換が終了すると「0」に戻るフラグである。
初期値すなわち曲データの最初はPFの値は「0」である。PFの値が「0」である場合には、変数A(初期値は「1」)で指定される小節(A)にデータがあるか否かを判別する(ステップF2)。データがある場合には、次の小節(A+1)にデータがあるか否かを判別する(ステップF3)。データがある場合には、さらにこの同じ小節(A+1)に転調を指示する調号があるか否かを判別する(ステップF4)。
小節(A+1)にデータがない場合、又は小節(A+1)に調号がある場合には、フラグKFの値を「1」にセットし(ステップF5)、フラグPFの値を「1」にセットする(ステップF6)。小節(A+1)に調号がない場合には、ステップF6においPFの値だけを「1」にセットする。ステップF6においてPFの値を「1」にセットした後、又はステップF1においてPFが「1」である場合には、KFの値が「0」であるか否かを判別する(ステップF7)。
【0032】
KFの値が「0」である場合には、小節(A+1)にデータがあり且つ調号がない場合である。この場合には、小節(A)と小節(A+1)とを連結して同じ段に表示する。一方、KFの値が「1」である場合には、小節(A+1)にデータがない場合か、又は小節(A+1)に調号がある場合である。この場合には、小節(A)と小節(A+1)とは別の段に表示する。
ステップF7において、KFの値が「0」である場合には、フラグAFの値が「1(上段表示)」であるか否かを判別する(ステップF8)。AFの値が「1」である場合には、小節(A)及び小節(A+1)からなる2小節を楽譜データに変換してRAMAにストアする(ステップF9)。一方、AFの値が「0(下段表示)」である場合には、小節(A)及び小節(A+1)からなる2小節を楽譜データに変換してRAMBにストアする(ステップF10)。
ステップF7において、KFの値が「1」である場合には、AFの値が「1」であるか否かを判別する(ステップF11)。AFの値が「1」である場合には、小節(A)の1小節のみを楽譜データに変換してRAMAにストアする(ステップF12)。一方、AFの値が「0」である場合には、小節(A)の1小節のみを楽譜データに変換してRAMBにストアする(ステップF13)。
【0033】
ステップF2において小節(A)にデータがない場合には、図17のフローにおいて、指定した小節の変換が終了したか否かを判別する(ステップF14)。終了していない場合、すなわち、指定した小節にまだ変換していないデータが残っている場合には、このフローを終了する。指定した小節の変換が終了したときは、PFの値を「0」に戻す(ステップF15)。次に、KFの値が「0」であるか否かを判別する(ステップF16)。この値が「0」である場合には、さらにAFの値が「0」であるか否かを判別する(ステップF17)。
AFの値が「1」である場合には、変数Eに「A+1」の値をストアする(ステップF18)。すなわち、RAMAに記憶されていて、楽譜データへの変換が終了した小節の小節番号を更新する。AFの値が「0」である場合には、変数Fに「A+1」の値をストアする(ステップF19)。すなわち、RAMBに記憶されていて、楽譜データへの変換が終了した小節の小節番号を更新する。変数E又はFの値を更新した後は、次に指定する小節番号のポインタである変数Aの値に「2」を加算して更新する(ステップF)。
【0034】
ステップF16においてKFの値が「1」である場合には、さらにAFの値が「0」であるか否かを判別する(ステップF21)。AFの値が「1」である場合には、変数Eに「A」の値をストアする(ステップF22)。AFの値が「0」である場合には、変数Fに「A」の値をストアする(ステップF23)。変数E又はFの値を更新した後は、次に指定する小節番号のポインタである変数Aの値に「1」を加算して更新する(ステップF24a)。ステップF24aにおいてAの値を更新した後は、KFの値を「0」に戻す(ステップF24b)。この後、又はステップF20においてAの値を更新した後は、AFの値を反転し(ステップF25)、必要な楽譜データへの変換が終了したことを示すために、GFの値を「0」に戻す(ステップF26)。そして、図3のメインフローに戻る。
【0035】
図18〜図20に、実施形態における楽譜表示処理の具体例を示す。図18において、調号がイ長調の曲データの小節11及び12の楽譜画像が上段に表示され、小節13及び小節14が下段に表示されている状態で、上段の再生が終了したときは、図19に示すように、上段に表示されている小節11及び12の楽譜画像が、小節14に続く小節15及び小節16の楽譜画像に自動的に変更される。すなわち、曲データに調号がない場合には、上段及び下段にそれぞれ2小節分の楽譜画像が表示される。
次に、上段に表示する予定の小節91及び小節92の2小節の曲データの後の小節92に調号がある場合には、図20に示すように、上段には小節91のみの楽譜画像を表示し、(イ長調から変ホ長調への)調号がある小節92は、下段の先頭に表示される。
【0036】
以上のように、上記実施形態によれば、2小節以上の任意の所定小節数においていずれの小節にも調号がない場合には、その所定小節数の最初の小節から最後の小節までに対応する楽譜画像を一括して表示し、所定小節数の任意の小節に調号がある場合には、その所定小節数の最初の小節から調号がある小節の1つ前の小節までに対応する楽譜画像を一括して表示し、調号のある小節からそれ以降の小節に対応する楽譜画像を一括して表示する。また、表示されている楽譜画像に対応する曲データの再生が終了したときは、その楽譜画像を次に再生する曲データに対応する楽譜画像に変更する。したがって、曲の途中で他の調に転調して楽譜画像にその調号が表示されたことをユーザが十分に認識することができる。
また、上記実施形態によれば、外部からの楽音発生指令の入力に応じて楽音発生処理を実行していない時間帯において、楽譜表示処理を実行する。したがって、楽譜画像の画像処理のために発音処理に支障をきたすのを防止することが可能になる。
【0037】
なお、上記実施形態においては、表示部5の画面において、上段及び下段には最大2小節分の楽譜画像を表示する構成にしたが、3小節以上の複数の小節を各段に表示するように構成できることはもちろんである。この場合には、ユーザが調号を見落とす可能性がずっと高くなるので、本発明の効果を著しく発揮できる。
【0038】
【発明の効果】
本発明によれば、曲の途中で他の調に転調して楽譜画像にその調号が表示されたことをユーザが十分に認識することができる。また、楽譜画像の画像処理のために発音処理に支障をきたすのを防止することが可能になる。
【図面の簡単な説明】
【図1】本発明の実施形態における楽譜表示制御装置の構成を示すブロック図。
【図2】図1のワークRAM、VRAM10、及び曲メモリのデータ構成を示す図。
【図3】図1のCPUのメインフローチャート。
【図4】図3における楽器処理のフローチャート。
【図5】図4におけるスイッチ処理のフローチャート。
【図6】図5に続くスイッチ処理のフローチャート。
【図7】図5における初期楽譜表示処理のフローチャート。
【図8】図7に続く初期楽譜表示処理のフローチャート。
【図9】初期楽譜表示処理における曲データの内容に応じて楽譜表示が変化する様子を説明する図。
【図10】初期楽譜表示処理における曲データの内容に応じて楽譜表示が変化する様子を説明する図。
【図11】初期楽譜表示処理における曲データの内容に応じて楽譜表示が変化する様子を説明する図。
【図12】初期楽譜表示処理における曲データの内容に応じて楽譜表示が変化する様子を説明する図。
【図13】図4における再生処理のフローチャート。
【図14】図13に続く再生処理のフローチャート。
【図15】図14に続く再生処理のフローチャート。
【図16】図3における楽譜表示生成処理のフローチャート。
【図17】図16に続く楽譜表示生成処理のフローチャート。
【図18】実施形態における楽譜表示処理の具体例を示す図。
【図19】実施形態における楽譜表示処理の具体例を示す図。
【図20】実施形態における楽譜表示処理の具体例を示す図。
【符号の説明】
1 CPU
3 ROM
4 RAM
5 表示部
6 曲メモリ
7 鍵盤
8 スイッチ部
9 音源
10 VRAM
11 発音回路
Claims (2)
- 複数の小節からなる曲データの小節を順次読み出す読出し手段と、
この読出し手段により読み出された小節に転調を指示する調号があるか否かを検出する転調検出手段と、
この転調検出手段によって調号が検出されない場合には、上段及び下段の夫々に所定数までの小節の楽譜画像を表示可能な表示手段において、前記調号が検出されない小節のひとつ前の小節に対応する楽譜画像を表示している段に前記所定数の小節の楽譜画像が表示されているか否か判別する判別手段と、
この判別手段により、前記段に前記所定数の小節の楽譜画像が表示されていると判別された場合は、当該段と異なる段に前記調号が検出されない小節に対応する楽譜画像を表示させるとともに、前記段に前記所定数の小節の楽譜画像が表示されていないと判別された場合は、前記ひとつ前の小節に対応する楽譜画像と同一の段に前記調号が検出されない小節に対応する楽譜画像を表示させる第1の表示制御手段と、
前記転調検出手段によって調号が検出された場合には当該調号がある小節に対応する楽譜画像を、前記表示手段の上下段のうち、前記調号のある小節のひとつ前の小節に対応する楽譜画像が表示されている段とは異なる段の先頭に表示させる第2の表示制御手段と、
を有することを特徴とする楽譜表示制御装置。 - 複数の小節からなる曲データの小節を順次読み出す読出しステップと、
読み出された小節に転調を指示する調号があるか否かを検出する転調検出ステップと、
調号が検出されない場合には、上段及び下段の夫々に所定数までの小節の楽譜画像を表示可能な表示手段において、前記調号が検出されない小節のひとつ前の小節に対応する楽譜画像を表示している段に前記所定数の小節の楽譜画像が表示されているか否か判別する判別ステップと、
前記段に前記所定数の小節の楽譜画像が表示されていると判別された場合は、当該段と異なる段に前記調号が検出されない小節に対応する楽譜画像を表示させるとともに、前記段に前記所定数の小節の楽譜画像が表示されていないと判別された場合は、前記ひとつ前の小節に対応する楽譜画像と同一の段に前記調号が検出されない小節に対応する楽譜画像を表示させる第1の表示制御ステップと、
調号が検出された場合には当該調号がある小節に対応する楽譜画像を、前記表示手段の上下段のうち、前記調号のある小節のひとつ前の小節に対応する楽譜画像が表示されている段とは異なる段の先頭に表示させる第2の表示制御ステップと、
をコンピュータで実行させることを特徴とする楽譜表示処理のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001255211A JP4453233B2 (ja) | 2001-08-24 | 2001-08-24 | 楽譜表示制御装置及び楽譜表示処理のプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001255211A JP4453233B2 (ja) | 2001-08-24 | 2001-08-24 | 楽譜表示制御装置及び楽譜表示処理のプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003066954A JP2003066954A (ja) | 2003-03-05 |
JP4453233B2 true JP4453233B2 (ja) | 2010-04-21 |
Family
ID=19083227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001255211A Expired - Fee Related JP4453233B2 (ja) | 2001-08-24 | 2001-08-24 | 楽譜表示制御装置及び楽譜表示処理のプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4453233B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4525924B2 (ja) * | 2005-09-21 | 2010-08-18 | カシオ計算機株式会社 | 転調区間表示装置、臨時記号表示装置、転調区間表示プログラムおよび臨時記号表示プログラム |
CN101332665B (zh) * | 2007-06-26 | 2010-12-22 | 震雄资产管理有限公司 | 注塑机以及调模的方法 |
CN111870877A (zh) * | 2020-07-21 | 2020-11-03 | 任蕾润 | 音乐指挥及音乐治疗系统 |
-
2001
- 2001-08-24 JP JP2001255211A patent/JP4453233B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003066954A (ja) | 2003-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1089253B1 (en) | Method and apparatus for editing performance data with modifications of icons of musical symbols | |
EP1696418B1 (en) | Method and apparatus for editing performance data with modifications of icons of musical symbols | |
JP4353018B2 (ja) | 楽器演奏教習装置及びそのプログラム | |
US7288711B2 (en) | Chord presenting apparatus and storage device storing a chord presenting computer program | |
US7166792B2 (en) | Storage medium containing musical score displaying data, musical score display apparatus and musical score displaying program | |
JP4453233B2 (ja) | 楽譜表示制御装置及び楽譜表示処理のプログラム | |
JP2011118218A (ja) | 自動編曲システム、および、自動編曲方法 | |
US20060185500A1 (en) | Electronic musical apparatus for displaying character | |
US6809248B2 (en) | Electronic musical apparatus having musical tone signal generator | |
JP3791796B2 (ja) | 楽音発生装置 | |
JP4501417B2 (ja) | 楽譜表示装置および楽譜表示方法を実現するためのプログラム | |
JP2004171019A (ja) | 自動作曲装置および記憶媒体 | |
JP4632646B2 (ja) | 電子楽器およびプログラム | |
JP7260313B2 (ja) | 音楽データ表示プログラム及び音楽データ表示装置 | |
JP4093000B2 (ja) | 楽譜表示データを記憶した記憶媒体、その楽譜表示データを用いた楽譜表示装置及びプログラム | |
JP4093001B2 (ja) | 楽譜表示データを記憶した記憶媒体、その楽譜表示データを用いた楽譜表示装置及びプログラム | |
JP4548365B2 (ja) | 楽譜表示装置及びプログラム | |
JP3970114B2 (ja) | 電子楽器、自動伴奏方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体 | |
JP2002169540A (ja) | 楽譜表示装置、及び記録媒体 | |
JP3885737B2 (ja) | 演奏評価装置および演奏評価プログラム | |
JP2001312274A (ja) | 楽譜表示装置 | |
JP5293703B2 (ja) | カラオケ装置 | |
JP5254813B2 (ja) | 音符入力装置及び音符入力プログラム | |
JP4556915B2 (ja) | 演奏装置およびプログラム | |
JP2015040924A (ja) | 楽譜表示装置、楽譜表示方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20060206 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20060413 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061031 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080519 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090302 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090407 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090605 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100112 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100125 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130212 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4453233 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130212 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140212 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |