JP2003114674A - Playing information display device and program - Google Patents

Playing information display device and program

Info

Publication number
JP2003114674A
JP2003114674A JP2001309074A JP2001309074A JP2003114674A JP 2003114674 A JP2003114674 A JP 2003114674A JP 2001309074 A JP2001309074 A JP 2001309074A JP 2001309074 A JP2001309074 A JP 2001309074A JP 2003114674 A JP2003114674 A JP 2003114674A
Authority
JP
Japan
Prior art keywords
performance information
data
musical
musical tone
display device
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.)
Withdrawn
Application number
JP2001309074A
Other languages
Japanese (ja)
Inventor
Naoyuki Komata
直幸 小股
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2001309074A priority Critical patent/JP2003114674A/en
Publication of JP2003114674A publication Critical patent/JP2003114674A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Auxiliary Devices For Music (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Processing Or Creating Images (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a playing information display device which can present playing information other than the pitch and its sounding period of a musical sound to be generated. SOLUTION: The shape of a note object 320 representing the musical sound to be generated has its length in a scroll direction determined by the length of the sounding continuance of the musical sound and its pitch determined by the velocity value (sound volume) of he musical sound. The viewpoint for its display is so determined that while the object is looked down from above the front side of a display keyboard 301, the display keyboard 301 is obliquely viewed. Consequently, while a decrease in the visibility of the object 320 is evaded, the object is displayed in three dimensions and scrolled.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、発音させるべき楽
音の音高や音高の楽音の発音開始タイミング、或いは楽
音の発音持続時間といった演奏情報をスクロール表示に
よりユーザに提示するための技術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a technique for presenting performance information such as the pitch of a musical tone to be sounded, the timing at which the musical tone at the pitch starts to be pronounced, or the duration of musical tone pronunciation to the user by scrolling.

【0002】[0002]

【従来の技術および発明が解決しようとする課題】現在
では、多くの鍵盤楽器に、演奏の進行に応じて押鍵(操
作)すべき鍵を順次、ユーザ(演奏者)に通知していく
ナビゲーション機能が搭載されている。楽音の音高別
に、その音高の楽音の発音持続時間を示すオブジェクト
をスクロール表示させる演奏情報表示装置は、例えばそ
のナビゲーション機能として鍵盤楽器に搭載される。
2. Description of the Related Art Nowadays, many keyboard musical instruments are sequentially informed of the keys to be pressed (operated) according to the progress of the performance. The function is installed. A performance information display device for scroll-displaying an object showing the pronunciation duration of a musical tone of each tone pitch is mounted on a keyboard instrument as its navigation function, for example.

【0003】その演奏情報表示装置では、オブジェクト
のスクロールする方向上の長さは発音持続時間に応じて
変化させる。そのオブジェクトの端は、それが発音持続
時間を示す楽音の発音を開始させるタイミングで消去を
開始、或いは予め定めた位置に到達させる。それによ
り、そのオブジェクトのスクロール表示を通して、発音
させるべき楽音の音高、その楽音の発音を開始させるタ
イミング、及びその楽音を消音させるタイミングを表現
している。このため、そのスクロール表示に従って楽音
を発音させれば、即ちそのオブジェクトが発音持続時間
を示す楽音の音高が割り当てられた鍵の押鍵、及びその
離鍵を行えば、発音させるべき楽音を正確に発音できる
ようになっている。なお、楽音を発音させているべき発
音期間は、楽音の発音を開始させるタイミング、及びそ
の楽音を消音させるタイミング(発音持続時間)で表さ
れる。
In the performance information display device, the length of the object in the scrolling direction is changed according to the sounding duration. The edge of the object starts to be erased or reaches a predetermined position at the timing when it starts to generate a musical sound indicating the sounding duration. Thereby, through the scroll display of the object, the pitch of the musical sound to be generated, the timing of starting the generation of the musical sound, and the timing of muting the musical sound are expressed. Therefore, if a musical tone is sounded according to the scroll display, that is, if a key is pressed to which the pitch of the musical tone indicating the sounding duration of the object is assigned, and the key is released, the musical tone to be sounded is accurately generated. Can be pronounced. The tone generation period during which a tone is to be sounded is represented by the timing at which the tone is started to be sounded and the timing at which the tone is muted (sounding duration).

【0004】従来の演奏情報表示装置は、上述したよう
なオブジェクトをスクロール表示させるようになってい
た。しかし、演奏情報表示装置を利用するユーザの多く
は技術的に未熟である。そのようなユーザにとっては、
オブジェクトのスクロール表示に従って演奏を行うのは
困難であるというのが実情である。たとえスクロール表
示に従って演奏を正しく行えたとしても、その演奏が音
楽的表現の豊かなものになるとは思われない。このた
め、発音させるべき楽音の音高、その楽音期間(発音を
開始させるタイミング、及びそれの発音持続時間(消音
させるタイミング))以外の演奏情報をユーザに提供す
る必要があると考えられる。
In the conventional performance information display device, the above-mentioned objects are scroll-displayed. However, many users who use the performance information display device are technically inexperienced. For such users,
The reality is that it is difficult to perform a performance according to the scroll display of objects. Even if the performance is correctly performed according to the scroll display, it is unlikely that the performance will be rich in musical expression. For this reason, it is considered necessary to provide the user with performance information other than the pitch of the musical sound to be sounded, the musical sound period (timing at which the sound is started, and the duration of sound generation (timing at which the sound is muted)).

【0005】オブジェクトを表示させてのスクロール
(移動)は、オブジェクトを配置する仮想的な平面の垂
直方向を視点にして行うようになっていた。それによ
り、オブジェクトは全て同じように表示させていた。
Scrolling (moving) while displaying an object has been performed with the viewpoint in the vertical direction of a virtual plane on which the object is arranged. As a result, all the objects were displayed in the same way.

【0006】技術的に未熟なユーザは余裕を持って演奏
を行えないのが普通である。そのようなユーザにとって
は、全てのオブジェクトを同じように表示させると、そ
のなかで注目すべき楽音、例えば現在、発音させるべき
タイミングとなった楽音、或いはそのタイミングが近い
楽音のオブジェクトを必ずしも迅速に探し出せないと考
えられる。言い換えれば、提示した(表示させた)演奏
情報の把握をユーザが必ずしも迅速に行えないと考えら
れる。このことから、演奏情報の把握をユーザがより迅
速に行えるようにするには、どのようなオブジェクトを
どのように表示させるかといったことが重要であると考
えられる。
A user who is technically inexperienced usually cannot play with a margin. For such a user, if all objects are displayed in the same manner, it is not always necessary to quickly identify a musical note to be noticed, for example, a musical note to be sounded at the moment, or an object having a musical note having a similar timing. It is thought that I cannot find it. In other words, it is considered that the user cannot necessarily grasp the presented (displayed) performance information quickly. From this, it is considered that what kind of object is displayed and how is displayed so that the user can grasp the performance information more quickly.

【0007】本発明の課題は、発音させるべき楽音の音
高やその発音期間以外の演奏情報をユーザに提示できる
演奏情報表示装置、更にはユーザがより迅速、且つ容易
に把握できるように演奏情報を提示できる演奏情報表示
装置を提供することにある。
An object of the present invention is to provide a performance information display device capable of presenting to the user performance information other than the pitch of a musical tone to be sounded and the duration of the sound generation, and further, performance information so that the user can grasp it more quickly and easily. It is to provide a performance information display device capable of presenting

【0008】[0008]

【課題を解決するための手段】本発明の第1、及び第2
の態様の演奏情報表示装置は、共に、演奏情報をスクロ
ール表示によりユーザに提示することを前提として、そ
れぞれ以下の手段を具備する。
Means for Solving the Problems The first and second aspects of the present invention
Both of the performance information display devices of the above modes are provided with the following means on the premise that the performance information is presented to the user by scroll display.

【0009】第1の態様の演奏情報表示装置は、発音さ
せるべき楽音の音高、その楽音の発音開始タイミング、
及びその楽音の発音持続時間を該楽音単位で表す曲デー
タを取得する曲データ取得手段と、曲データ取得手段が
取得した曲データ中で表されている楽音に関する該楽音
の発音持続時間を含む複数の演奏情報の各内容に基づく
形状のオブジェクトを表示装置上にスクロール表示させ
る演奏情報表示手段と、を具備する。
In the performance information display device of the first aspect, the pitch of the musical sound to be generated, the sound generation start timing of the musical sound,
And a plurality of song data obtaining means for obtaining song data representing the tone duration of the tone in units of tone, and a tone duration of the tone related to the tone represented in the song data obtained by the song data obtaining means. Performance information display means for scroll-displaying an object having a shape based on each content of the performance information on the display device.

【0010】なお、上記演奏情報表示手段は、オブジェ
クトを3次元的に表示させて、該オブジェクトの形状で
複数の演奏情報を表現させる、ことが望ましい。そのオ
ブジェクトでは、発音持続時間を長さで表す方向の交差
方向上の長さで楽音を発音させるべき音量を複数の演奏
情報の一つとして表現させる、ことが望ましい。また、
オブジェクトを配置する仮想的平面の垂線に対する交差
方向を視点にして、該オブジェクトを表示させる、こと
が望ましく、更には楽音の音高が鍵盤の黒鍵に対応する
か否かに応じて、オブジェクトの表示形態を変更させ
る、ことが望ましい。
It is desirable that the performance information display means displays an object three-dimensionally and expresses a plurality of performance information in the shape of the object. In the object, it is desirable that the volume at which a musical sound is to be pronounced is expressed as one of a plurality of pieces of performance information in a length on the crossing direction of the direction in which the pronunciation duration is expressed by length. Also,
It is desirable to display the object in the direction of the intersection with respect to the perpendicular of the virtual plane on which the object is placed, and further, according to whether or not the pitch of the musical tone corresponds to the black key of the keyboard, It is desirable to change the display form.

【0011】第2の態様の演奏情報表示装置は、発音さ
せるべき楽音の音高、その楽音の発音開始タイミング、
及びその楽音の発音持続時間を該楽音単位で表す曲デー
タを取得する曲データ取得手段と、曲データ取得手段が
取得した曲データ中で表されている楽音の発音持続時間
を少なくとも表現するオブジェクトを3次元的に表示装
置上に表示させてスクロール表示させる演奏情報表示手
段と、を具備する。
In the performance information display device of the second aspect, the pitch of the musical sound to be generated, the sound generation start timing of the musical sound,
And a song data acquisition unit that obtains song data that represents the pronunciation duration of the tone in units of the tone, and an object that represents at least the pronunciation duration of the tone represented in the song data acquired by the song data acquisition unit. Performance information display means for three-dimensionally displaying and scrolling display on a display device.

【0012】本発明の第1、及び第2の態様のプログラ
ムは、共に、演奏情報をスクロール表示によりユーザに
提示する演奏情報表示装置に実行させることを前提と
し、それぞれ以下の機能を実現させる。
Both the programs of the first and second aspects of the present invention are intended to be executed by a performance information display device for presenting performance information to a user by scroll display, and realize the following functions respectively.

【0013】第1の態様のプログラムは、発音させるべ
き楽音の音高、該音高の楽音の発音開始タイミング、及
び該楽音の発音持続時間を該楽音単位で表す曲データを
取得する機能と、取得する機能により取得した曲データ
中で表されている楽音に関する該楽音の発音持続時間を
含む複数の演奏情報の各内容に基づく形状のオブジェク
トを表示装置上にスクロール表示させる機能と、を実現
させる。
The program of the first aspect has a function of acquiring the pitch of a musical tone to be generated, the timing at which the musical tone having the pitch is started, and the musical piece data representing the pronunciation duration of the musical tone in the musical tone unit. And a function of scroll-displaying an object having a shape based on each content of a plurality of performance information including a sounding duration of the musical sound represented by the music data acquired by the acquiring function, on the display device. .

【0014】第2の態様のプログラムは、発音させるべ
き楽音の音高、該音高の楽音の発音開始タイミング、及
び該楽音の発音持続時間を該楽音単位で表す曲データを
取得する機能と、取得する機能により取得した曲データ
中で表されている楽音の発音持続時間を少なくとも表現
するオブジェクトを3次元的に表示装置上に表示させて
スクロール表示させる機能と、を実現させる。
The program of the second aspect has a function of acquiring the pitch of a musical tone to be generated, the timing at which the musical tone at the pitch is started, and the musical piece data representing the pronunciation duration of the musical tone in the musical tone unit. And a function of three-dimensionally displaying an object representing at least the pronunciation duration of a musical sound represented in the music data acquired by the acquiring function on the display device and scrolling the display.

【0015】本発明では、楽音の発音持続時間を含む複
数の演奏情報を基に、表示すべきオブジェクトの形状を
決定し、その決定した形状でオブジェクトをスクロール
表示させる。それにより、そのようにして表示させたオ
ブジェクトを通して、発音させるべき楽音の音高やその
発音期間以外の演奏情報をユーザに提示することが可能
となる。そのような演奏情報を提示することにより、ユ
ーザはより容易な演奏、より適切な形での演奏、或いは
音楽的表現がより豊かな演奏を行えるようになる。その
結果、ユーザはより効率的な練習を行ったり、音楽的表
現力をより迅速に身に付けられるようになる。
According to the present invention, the shape of the object to be displayed is determined based on a plurality of performance information including the musical tone production duration, and the object is scroll-displayed in the determined shape. As a result, it becomes possible to present the user with the pitch of the musical sound to be generated and the performance information other than the sounding period through the object thus displayed. By presenting such performance information, the user can perform an easier performance, a more appropriate performance, or a performance with richer musical expression. As a result, the user can practice more efficiently and acquire musical expressive power more quickly.

【0016】本発明では、楽音の発音持続時間を少なく
とも表現するオブジェクトを3次元(立体)的に表示さ
せてスクロールさせる。3次元的に表示させたオブジェ
クトは、2次元的に表示させたオブジェクトと比較し
て、オブジェクト自体が持つ情報量が多くなって目立つ
ようになるだけでなく、その形状を利用したオブジェク
トの表示のさせかたも行えるようになる。このようなこ
とから、ユーザに注目させるべき度合いが高いオブジェ
クトの視認性の向上や強調を行えるようになる。それに
より、ユーザがより迅速、且つ容易に把握できるように
演奏情報を提示することも可能となる。
In the present invention, an object that at least expresses the sounding duration of a musical sound is three-dimensionally (three-dimensionally) displayed and scrolled. Compared to an object displayed in a two-dimensional manner, an object displayed in a three-dimensional manner has a large amount of information that the object itself has, and becomes more noticeable. You will also be able to do it. From this, it becomes possible to improve the visibility and to emphasize the object that has a high degree of attention to the user. As a result, it is possible to present the performance information so that the user can grasp it more quickly and easily.

【0017】[0017]

【発明の実施の形態】以下、本発明の実施の形態につい
て、図面を参照しながら詳細に説明する。図1は、本実
施の形態による演奏情報表示装置を搭載した電子楽器の
回路構成図である。
BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a circuit configuration diagram of an electronic musical instrument equipped with a performance information display device according to this embodiment.

【0018】本実施の形態による演奏情報表示装置は、
電子楽器のユーザが行う演奏をナビゲートさせるために
搭載されている。それを搭載した電子楽器は、図1に示
すように、楽器全体の制御を行うCPU101と、その
CPU101が実行するプラグラムや各種曲データ、及
び各種制御データ(画像表示用の各種データを含む)な
どを格納したROM102と、そのCPU101がワー
ク用に用いるRAM103と、多数の鍵を有する鍵盤1
04と、CPU101から送られたデータを画面上に表
示する表示部105と、ユーザが操作の対象とする操作
部106と、CPU101の指示に従って楽音の波形デ
ータを生成する音源107と、その音源107が出力し
た波形データをサウンドに変換して放音するサウンドシ
ステム108と、CPU101を各部102〜107と
接続するバス109と、を備えて構成されている。
The performance information display device according to this embodiment is
It is installed to navigate the performance performed by the user of the electronic musical instrument. As shown in FIG. 1, an electronic musical instrument equipped with it has a CPU 101 for controlling the entire musical instrument, a program executed by the CPU 101, various music data, various control data (including various data for image display), and the like. A ROM 102 storing therein, a RAM 103 used by the CPU 101 for work, and a keyboard 1 having a large number of keys.
04, a display unit 105 for displaying data sent from the CPU 101 on the screen, an operation unit 106 to be operated by the user, a sound source 107 for generating waveform data of musical tones according to an instruction from the CPU 101, and the sound source 107. A sound system 108 that converts the waveform data output by the device into sound and outputs the sound, and a bus 109 that connects the CPU 101 to each of the units 102 to 107 are configured.

【0019】上記表示部105は、例えばCRT、或い
は液晶表示装置などの表示装置である。操作部106
は、例えば各種スイッチやキー等の複数の操作子、及び
それら操作子への操作を検出する検出回路から構成され
た入力装置である。サウンドシステム108は、例えば
D/Aコンバータ、アンプ、及びスピーカからなるシス
テムである。
The display unit 105 is a display device such as a CRT or a liquid crystal display device. Operation unit 106
Is an input device including a plurality of operators such as various switches and keys, and a detection circuit for detecting an operation on the operators. The sound system 108 is a system including, for example, a D / A converter, an amplifier, and a speaker.

【0020】図2は、上記曲データの構成を説明する図
である。その曲データは、ROM102に複数、格納さ
れており、それぞれ、複数のトラックデータから構成さ
れている。各トラックデータは、それぞれ、対象とする
演奏を自動的に再生するための演奏データ、或いはその
演奏に係わる設定などを自動的に変更していくための設
定データである。本実施の形態では、左手で行う演奏の
再生用、右手で行う演奏の再生用、伴奏1の再生用、伴
奏2の再生用、及びテンポ変更用などに対象を分類し
て、各分類毎にトラックデータを用意している。
FIG. 2 is a diagram for explaining the structure of the music data. A plurality of pieces of music data are stored in the ROM 102, each of which is composed of a plurality of track data. Each track data is performance data for automatically reproducing a target performance, or setting data for automatically changing settings related to the performance. In the present embodiment, the objects are classified into one for playing a performance performed with the left hand, one for playing a performance with the right hand, one for playing accompaniment, one for playing accompaniment, and one for changing tempo, and for each classification. Track data is available.

【0021】各トラックデータは、それぞれ1つ以上の
イベントデータから構成される。そのイベントデータ
は、イベントの内容を表す複数のパラメータのデータ
と、そのデータを処理すべきタイミングを示す時間デー
タと、から構成されている。そのパラメータとしては、
特に図示していないが、イベントのタイプを示すもの
(以降、そのデータをタイプデータと呼ぶ)、タイプ別
に用意されるパラメータなどがある。
Each track data is composed of one or more event data. The event data is composed of a plurality of parameter data representing the content of the event, and time data indicating the timing at which the data should be processed. As its parameter,
Although not shown in particular, there are parameters that indicate the type of event (hereinafter, the data will be referred to as type data), parameters prepared for each type, and the like.

【0022】タイプデータが表すイベントのタイプとし
ては、楽音の発音を指示するノートイベントやテンポの
変更を指示するテンポイベント、などがある。それら各
イベントが表示の対象となる演奏情報である。ノートイ
ベントでは、パラメータ(データ)として、楽音の音高
を示す音高データ、その音量を示すベロシティデータ、
発音持続時間を示すゲートタイムデータ、その楽音を発
音させるためにユーザが使うべき指を示す指番号デー
タ、及びその楽音に対応する音符を示す音符データを用
意している。テンポイベントでは、新たに設定すべきテ
ンポ値を示すデータを用意している。
The type of event represented by the type data includes a note event for instructing the pronunciation of a musical sound and a tempo event for instructing a change in tempo. These respective events are performance information to be displayed. In the note event, as parameters (data), pitch data indicating the pitch of a musical tone, velocity data indicating its volume,
The gate time data indicating the duration of sound generation, the finger number data indicating the finger that the user should use to pronounce the musical tone, and the note data indicating the notes corresponding to the musical tone are prepared. In the tempo event, data indicating a new tempo value to be set is prepared.

【0023】なお、上記曲データには、ノートイベント
の内容を表すデータ(パラメータ)として、指番号デー
タや音符データを予め用意しているが、それらのデータ
は必ずしも用意しなくても良い。曲データとは別に、或
いはその曲データの内容を解析して取得するようにして
も良い。それらのデータ形式についても特に限定される
ものではない。
Note that, in the music data, finger number data and note data are prepared in advance as data (parameters) representing the contents of the note event, but these data do not necessarily have to be prepared. It may be acquired separately from the music data or by analyzing the content of the music data. The data format of them is also not particularly limited.

【0024】以上の構成において、その動作を説明す
る。CPU101は、電源がオンされると、ROM10
2に格納されているプログラムを読み出して実行するこ
とにより、楽器全体の制御を開始し、表示部105には
初期画面を表示させる。それ以降は、ユーザの鍵盤10
4、或いは操作部106への操作に応じて制御を行う。
The operation of the above configuration will be described. When the power is turned on, the CPU 101 turns on the ROM 10
By reading out and executing the program stored in 2, the control of the entire musical instrument is started, and the initial screen is displayed on the display unit 105. After that, the user's keyboard 10
4 or control is performed according to an operation on the operation unit 106.

【0025】CPU101は、その初期画面を表示させ
るための画像データを、例えばRAM103を作業用に
使用して、ROM102から読み出した複数の画像デー
タを用いて生成する。そのようにして生成された初期画
面の画像データを送られた表示部105は、それを特に
は図示しないメモリ(例えばデュアルポートRAM)に
格納する。それ以降における表示内容の全体的、或いは
部分的な変更は、例えばCPU101が、そのメモリに
格納された画像データ中でデータを書き換えるべき部分
の画像データをROM102から読み出すか、或いはそ
れを用いて生成し、そのようにして得た画像データを、
そのメモリ中の画像データを書き換えるべき部分に上書
きすることで行われる。そのようにして、CPU101
は、表示部105に、表示すべき画面やメッセージを表
示させたり、演奏情報をスクロールさせて表示させる。
The CPU 101 generates image data for displaying the initial screen using a plurality of image data read from the ROM 102, using the RAM 103 for work, for example. The display unit 105, to which the image data of the initial screen generated in this way is sent, stores it in a memory (for example, a dual port RAM) not particularly shown. For the whole or partial change of the display content after that, for example, the CPU 101 reads from the ROM 102 the image data of the portion of the image data stored in the memory in which the data should be rewritten, or is generated using it. Then, the image data obtained in this way is
It is performed by overwriting the image data in the memory on the portion to be rewritten. In that way, the CPU 101
Causes the display unit 105 to display a screen or message to be displayed, or scroll performance information for display.

【0026】演奏情報のスクロール表示は、ユーザが操
作部106を操作して、例えば自動再生の対象とする曲
データを選択した後、その自動再生を指示した場合に行
うようになっている。本実施の形態では、ノートイベン
トの内容を示すイベントデータ中で表されている演奏情
報を対象にして、以下のようにスクロール表示を行って
いる。図3〜図5を参照して具体的に説明する。
The scroll display of the performance information is performed when the user operates the operation unit 106 to select, for example, music data to be automatically reproduced and then instructs the automatic reproduction. In the present embodiment, the performance information represented in the event data indicating the contents of the note event is targeted for scroll display as follows. A specific description will be given with reference to FIGS.

【0027】図3は、そのスクロール表示方法を説明す
る図である。本実施の形態では、図3に示すように、多
数の白鍵、黒鍵で表す鍵盤(ユーザが演奏操作の対象と
する鍵盤104との混同を避けるために、以降、表示鍵
盤と呼ぶ)301、及びその鍵盤301と同一の平面上
となるように配置したスクロール面310を常時、表示
させ、発音させるべき楽音を示すノートオブジェクト3
20は、そのスクロール面310上のその音高に応じた
位置に表示させている。スクロール面310上に表示さ
せたノートオブジェクト320は、曲データの自動演奏
の進行に合わせて図中の矢印で示すスクロール方向に移
動させ、表示鍵盤301の先端に位置に達した部分は消
去させている。それにより、スクロール面310に対応
する演奏範囲に対応する部分だけを表示させる形でノー
トオブジェクト320のスクロール表示を行っている。
そのスクロール面310は、特許請求の範囲に記載の仮
想的平面と少なくとも平行な平面である。
FIG. 3 is a diagram for explaining the scroll display method. In the present embodiment, as shown in FIG. 3, a keyboard represented by a large number of white keys and black keys (hereinafter referred to as a display keyboard in order to avoid confusion with the keyboard 104 that is the target of the performance operation by the user) 301 , And the scroll object 310 arranged so as to be on the same plane as the keyboard 301, the note object 3 indicating the musical sound to be displayed at all times.
20 is displayed on the scroll surface 310 at a position corresponding to the pitch. The note object 320 displayed on the scroll surface 310 is moved in the scroll direction indicated by the arrow in the figure in accordance with the progress of the automatic performance of the music data, and the portion reaching the position at the tip of the display keyboard 301 is erased. There is. As a result, the note object 320 is scroll-displayed by displaying only the portion corresponding to the performance range corresponding to the scroll surface 310.
The scroll surface 310 is a plane that is at least parallel to the virtual plane described in the claims.

【0028】そのスクロール面310上には、小節の区
切りを示す小節線311と、表示鍵盤301の白鍵に合
わせて領域を分ける線312と、を配置している。その
先311を配置することにより、上記ノートオブジェク
ト320が示す楽音の音高をユーザがより容易に把握で
きるようにさせている。
On the scroll surface 310, bar lines 311 indicating bar divisions and lines 312 for dividing the area according to the white keys of the display keyboard 301 are arranged. By arranging the point 311 ahead, the user can more easily understand the pitch of the musical sound indicated by the note object 320.

【0029】スクロール面310や表示鍵盤301を表
示させるうえでの視点は、図3に示すように、その面3
10の垂線に対する交差方向とさせている。より具体的
には、表示鍵盤301よりスクロール方向側(鍵盤を演
奏操作する際にユーザが位置する側)から、その鍵盤3
01上の鍵を低音側から高音側を斜めに見る方向で、且
つ、その鍵盤301を上方から斜めに見る方向を視点と
させている。
The viewpoint for displaying the scroll surface 310 and the display keyboard 301 is as shown in FIG.
The direction of intersection with the vertical line of 10 is set. More specifically, the keyboard 3 is displayed from the scroll direction side of the display keyboard 301 (the side on which the user is located when playing the keyboard).
The point of view is that the key on 01 is viewed from the low-pitched side to the high-pitched side obliquely, and the keyboard 301 is viewed obliquely from above.

【0030】そのような視点でノートオブジェクト32
0を表示させてスクロールさせた場合、各音高では、最
も早く発音させるべき楽音のノートオブジェクト320
が先頭に位置するようになって、他のノートオブジェク
ト320よりも強調されることになる。そのノートオブ
ジェクト320が3次元的な形状であっても、ノートオ
ブジェクト320が表す演奏情報をユーザが把握できな
くなる形で他のノートオブジェクト320がそれを隠し
てしまうようなことが回避される。2次元的な形状と比
較して大きな情報量を持つことによって目に付きやすい
という利点を常に生かせるようになる。このようなこと
から、ユーザにとっては、演奏を行ううえで注目すべき
度合いが高いノートオブジェクト320を常に極めて容
易、且つ迅速に探し出せるようになる。即ちそのノート
オブジェクト320で表現する演奏情報を常に極めて容
易、且つ迅速に把握できるようになる。
From such a viewpoint, the note object 32
When 0 is displayed and scrolled, at each pitch, the note object 320 of the musical sound that should be pronounced earliest
Is placed at the beginning, and is emphasized more than other note objects 320. Even if the note object 320 has a three-dimensional shape, it is possible to prevent another note object 320 from hiding it in such a manner that the user cannot grasp the performance information represented by the note object 320. By having a large amount of information as compared with a two-dimensional shape, the advantage of being easily noticeable can be always taken advantage of. For this reason, the user can always find the note object 320, which has a high degree of attention when performing, extremely easily and quickly. That is, the performance information represented by the note object 320 can always be grasped extremely easily and quickly.

【0031】また、そのような視点では、ノートオブジ
ェクト320が自身に向かってスクロール(移動)して
くるような印象をユーザに与えることになる。実際に鍵
盤104に向かっている視点と近いため、感覚的な違和
感が抑えられて、ノートオブジェクト320のスクロー
ル表示によって表現される各種タイミングもより把握し
易くなる。そのようにして演奏の流れがより把握し易く
なる結果、ユーザはスクロール表示に合わせた演奏をよ
り容易に行えるようになる。
From such a point of view, the user is given the impression that the note object 320 scrolls (moves) toward itself. Since it is close to the viewpoint actually facing the keyboard 104, the sense of discomfort is suppressed, and various timings represented by the scroll display of the note object 320 can be more easily grasped. As a result, it becomes easier to understand the flow of the performance, and as a result, the user can more easily perform the performance in accordance with the scroll display.

【0032】図3中のオブジェクト302は、鍵盤10
4のなかでユーザが現在、押鍵している鍵、言い換えれ
ば実際の演奏によって発音させている楽音の音高を確認
させるために表示させたものであり、表示鍵盤301上
のその鍵に対応する鍵の表示色も他の同じ種類の鍵のそ
れとは異ならせている。それにより、表示部105を見
るだけで、演奏すべき内容の他に、実際の演奏内容をユ
ーザが確認できるようにさせている。なお、オブジェク
ト302については、以降、実ノートオブジェクトと呼
ぶことにする。
The object 302 in FIG. 3 is the keyboard 10.
4 is displayed in order to confirm the pitch of the key that the user is currently pressing, in other words, the pitch of the musical tone that is actually sounded by the performance, and corresponds to that key on the display keyboard 301. The color of the key used is also different from that of other keys of the same type. As a result, the user can confirm the actual performance content in addition to the content to be played, simply by looking at the display unit 105. The object 302 will be referred to as a real note object hereinafter.

【0033】本実施の形態では、上記ノートオブジェク
ト320が示す楽音の音高が白鍵に割り当てられた音高
か否か、及びその楽音は左手で発音させるべきか否かの
2つの条件のうちで満たしている条件に応じてその表示
形態を異ならせている。その表示形態は、図4に示すよ
うに、ノートオブジェクト320をスクロール方向上の
先頭に位置する6面体の形状をした前部320aとそれ
に続く後部320bとに分け、その2つの部分320
a、320bの表示色を変えることで異ならせている。
具体的には、図4(a)、(b)と図4(c)、(d)
とを対比すれば明らかなように、楽音の音高が白鍵に対
応しているか否かに応じて前部320aの表示色を異な
らせ、図4(a)、(c)と図4(b)、(d)とを対
比すれば明らかなように、楽音を左手で発音させるべき
か否かに応じて後部320bの表示色を異ならせてい
る。そのようにして、発音させるべき楽音が左手のパー
トと右手のパートの何れに属しているか、その楽音を発
音させるために押鍵すべき鍵の種類をノートオブジェク
ト320で表すことにより、それらの演奏情報を容易に
把握できる形でユーザに提示している。
In the present embodiment, of the two conditions of whether the pitch of the musical tone indicated by the note object 320 is the pitch assigned to the white key and whether the musical tone should be pronounced with the left hand. The display form is changed according to the condition satisfied with. As shown in FIG. 4, the display mode is such that the note object 320 is divided into a hexahedron-shaped front portion 320a located at the beginning in the scroll direction and a rear portion 320b subsequent to the hexahedron shape, and the two portions 320 are separated.
It is made different by changing the display color of a and 320b.
Specifically, FIGS. 4A and 4B and FIGS. 4C and 4D
As is clear from the comparison between and, the display color of the front portion 320a is changed depending on whether the pitch of the musical tone corresponds to the white key, and FIGS. 4 (a), 4 (c) and 4 ( As is clear from comparison between (b) and (d), the display color of the rear portion 320b is changed depending on whether or not the musical sound should be generated with the left hand. In this manner, whether the musical tone to be sounded belongs to the left-hand part or the right-hand part, and the type of the key to be depressed in order to pronounce the musical sound, is represented by the note object 320, and those musical performances are performed. Information is presented to the user in a form that can be easily grasped.

【0034】図5は、上記ノートオブジェクト320の
形状を説明する図である。その図5を参照して、ノート
オブジェクト320の形状やその決定方法、及びその表
示位置について詳細に説明する。その形状や表示位置
は、CPU101によって決定される。
FIG. 5 is a diagram for explaining the shape of the note object 320. The shape of the note object 320, its determination method, and its display position will be described in detail with reference to FIG. Its shape and display position are determined by the CPU 101.

【0035】そのノートオブジェクト320は3次元の
形状としている。3次元の座標軸は図5に示すように定
めている。X軸は、表示鍵盤301の鍵が並ぶ方向と平
行であり、Z軸は線312(スクロール方向)と平行で
ある。Y軸はそれらX軸、Z軸と垂直である。なお、X
軸については、その軸上の位置は楽音の音高を表してい
ることから、以降、音階軸とも呼ぶことにする。Z軸に
ついては、その軸上の位置は時間を表していることか
ら、以降、時間軸とも呼ぶことにする。
The note object 320 has a three-dimensional shape. The three-dimensional coordinate axes are defined as shown in FIG. The X axis is parallel to the direction in which the keys of the display keyboard 301 are arranged, and the Z axis is parallel to the line 312 (scroll direction). The Y axis is perpendicular to the X and Z axes. Note that X
As for the axis, since the position on the axis represents the pitch of a musical tone, it will be referred to as a scale axis hereinafter. Since the position on the Z-axis represents time, it is also referred to as a time axis hereinafter.

【0036】各ノートオブジェクト320は、図5に示
すように、点a(x0,y0,z0)、b(x1,y
0,z0)、c(x1,y1,z0)、d(x0,y
1,z0)、e(x0,y0,z1)、f(x1,y
0,z1)、g(x1,y1,z1)、h(x0,y
1,z1)、i(x0,y0,z2)、及びj(x1,
y0,z2)の計10個の点で形状を管理している。
As shown in FIG. 5, each note object 320 has points a (x0, y0, z0) and b (x1, y).
0, z0), c (x1, y1, z0), d (x0, y
1, z0), e (x0, y0, z1), f (x1, y
0, z1), g (x1, y1, z1), h (x0, y
1, z1), i (x0, y0, z2), and j (x1,
The shape is managed by a total of 10 points (y0, z2).

【0037】それらの点の座標値を表すシンボルx0、
x1、y0、y1、z0、z1、及びz2において、シ
ンボルy0で表すY軸上の座標値だけが固定値である。
z1で表すZ軸上の座標値はz0で表す座標値に一定値
を加算した値である。x0、及びx1は、楽音の音高
(イベントデータ中の音高データ)によって決まる値で
ある。x0、或いはx1が表す座標値と音高との対応関
係を定義したテーブルを参照して、それらの値は決定し
ている。それらの差は一定値として、ノートオブジェク
ト320のX軸上の幅は楽音の音高が割り当てられた鍵
の種類が白鍵か否かに係わらず変更しないようにさせて
いる。なお、実ノートオブジェクト302におけるx
0、x1に対応する座標値は、鍵盤104から送出され
る音高データにより同様に決定している。そのZ軸上の
幅は固定とさせている。
Symbol x0 representing the coordinate values of those points,
In x1, y0, y1, z0, z1, and z2, only the coordinate value on the Y axis represented by the symbol y0 is a fixed value.
The coordinate value on the Z axis represented by z1 is a value obtained by adding a constant value to the coordinate value represented by z0. x0 and x1 are values determined by the pitch of the musical tone (pitch data in the event data). These values are determined by referring to a table that defines the correspondence between the coordinate value represented by x0 or x1 and the pitch. The difference between them is a constant value, and the width of the note object 320 on the X-axis is not changed regardless of whether the type of the key to which the pitch of the musical tone is assigned is the white key. Note that x in the real note object 302
The coordinate values corresponding to 0 and x1 are similarly determined by the pitch data sent from the keyboard 104. The width on the Z axis is fixed.

【0038】y1は、楽音の音量を示すベロシティ値
(イベントデータ中のベロシティデータ)から決定して
いる(y0の座標値は固定値である)。本実施の形態で
は、y1が表す座標値とベロシティ値の対応関係を定義
したテーブルを参照して決定している。ベロシティ値が
大きくなるほど、y1が表す座標値も大きくさせてい
る。言い換えれば、ノートオブジェクト320のY軸上
の幅は、楽音を発音させるべき音量が大きくなるほど大
きくさせている。それにより、ノートオブジェクト32
0のY軸上の幅から楽音を発音させるべき音量の大きさ
をユーザが把握できるようにさせている。ここでは、ベ
ロシティ値の値域が0〜127とすると、例えば0、1
〜23、24〜47、48〜71、72〜95、96〜
119、120〜127、の7つの値域に分け、値が0
でない6つの値域を対象にすることにより、ノートオブ
ジェクト320のY軸上の幅は6段階で切り換えるよう
にしている。なお、実ノートオブジェクト302におけ
るy1に対応する座標値も、鍵盤104から送出される
ベロシティ値によって同様に決定している。
Y1 is determined from the velocity value (velocity data in the event data) indicating the volume of the musical tone (the coordinate value of y0 is a fixed value). In the present embodiment, it is determined by referring to a table that defines the correspondence between the coordinate value represented by y1 and the velocity value. The larger the velocity value, the larger the coordinate value represented by y1. In other words, the width of the note object 320 on the Y axis is made larger as the volume at which the musical sound is to be pronounced is increased. Thereby, the note object 32
The width of 0 on the Y-axis allows the user to know the volume of the volume at which a musical sound should be generated. Here, if the velocity value range is 0 to 127, for example, 0, 1
~ 23, 24-47, 48-71, 72-95, 96-
119, 120 to 127, divided into seven value ranges, and the value is 0
The width on the Y-axis of the note object 320 is switched in 6 steps by targeting 6 non-value ranges. The coordinate value corresponding to y1 in the real note object 302 is similarly determined by the velocity value sent from the keyboard 104.

【0039】楽音のベロシティ値に応じてY軸上の幅が
切り換えられるのは前部320aであり、そこの幅を最
大にして、後部320bではその幅を徐々に小さくさせ
ている。これは、前部320aが他のノートオブジェク
ト320に隠れてしまう部分をできる限り小さくさせ
て、その前部320aで表す楽音のベロシティ値やそれ
を発音させるべきタイミングをユーザが確実、且つ容易
に把握できるようにさせるためである。
The width on the Y-axis is switched according to the velocity value of the musical sound in the front portion 320a, and the width thereof is maximized, and the width is gradually reduced in the rear portion 320b. This minimizes the portion of the front part 320a hidden by other note objects 320 as much as possible, and allows the user to reliably and easily grasp the velocity value of the musical sound represented by the front part 320a and the timing at which it should be pronounced. This is to allow it.

【0040】z2が表す座標値とz0が表す座標値の差
は、楽音の発音持続時間(イベントデータ中のゲートタ
イムデータ)に応じて決定している。Z軸全体の幅で表
される時間(以降、表示範囲時間と呼ぶ)はユーザが変
更できるようにさせている。このことから、それらの差
は、Z軸上の単位長さが表す時間で発音持続時間を割っ
て得られる値とさせている。そのようにして、ノートオ
ブジェクト320のZ軸上の幅は発音持続時間に応じた
大きさとさせることにより、その発音持続時間をユーザ
が把握できるようにさせている。
The difference between the coordinate value represented by z2 and the coordinate value represented by z0 is determined according to the tone generation duration of the musical tone (gate time data in the event data). The time represented by the width of the entire Z axis (hereinafter, referred to as display range time) is set to be changeable by the user. Therefore, the difference between them is a value obtained by dividing the sounding duration by the time represented by the unit length on the Z axis. In this way, the width of the note object 320 on the Z-axis is set to a size according to the sounding duration so that the user can grasp the sounding duration.

【0041】z0が表す座標値は、曲データの自動演奏
の進行に応じて変更する。それにより、その自動演奏の
進行に合わせてノートオブジェクト320をスクロール
させる。
The coordinate value represented by z0 is changed according to the progress of the automatic performance of the music data. As a result, the note object 320 is scrolled according to the progress of the automatic performance.

【0042】このようにして、ノートオブジェクト32
0(実ノートオブジェクト302)の形状を決定してい
る。それを構成する前部320aの表示色は、楽音の音
高とそれが割り当てられた鍵の種類の対応関係を定義し
たテーブルを参照して、その音高が白鍵(黒鍵)に割り
当てられているか否かに応じて切り換えている。後部3
20bの表示色は、イベントデータが属するトラックデ
ータが左手(右手)演奏用のものか否かに応じて切り換
えている。それにより、音高が割り当てられた鍵の種
類、その音高の楽音のパートに応じて、図4に示すよう
にノートオブジェクト320を表示させている。
In this way, the note object 32
The shape of 0 (actual note object 302) is determined. The display color of the front part 320a constituting it is assigned to a white key (black key) by referring to a table that defines the correspondence between the pitch of a musical tone and the type of key to which it is assigned. It is switched depending on whether or not Rear part 3
The display color of 20b is switched depending on whether the track data to which the event data belongs is for left-hand (right-hand) performance. As a result, the note object 320 is displayed as shown in FIG. 4 in accordance with the type of key to which the pitch is assigned and the part of the musical sound of that pitch.

【0043】上述したようにして形状が決定されるノー
トオブジェクト320は3次元図形である。しかし、そ
れは表示部105に2次元で表示させなければならな
い。即ち3次元空間データ(表示するオブジェクトの形
状や表示位置を表す各点の座標値を少なくとも含むデー
タ)を2次元平面データに変換しなければならない。そ
の変換は、例えば各オブジェクトの形状や表示位置を決
定して生成した1画面(ここでは、スクロール表示の対
象となる部分の領域という意味である。以降、混乱を避
けるために、演奏画面と呼ぶことにする)分の空間デー
タを対象にする場合には、その空間データに対してX、
Y、及びZ軸の各軸回りに回転させる処理を施した後、
XY平面に対して平行に投影させることで行う。
The note object 320 whose shape is determined as described above is a three-dimensional figure. However, it must be displayed on the display unit 105 in two dimensions. That is, it is necessary to convert three-dimensional space data (data including at least the coordinate value of each point representing the shape and display position of an object to be displayed) into two-dimensional plane data. The conversion is, for example, one screen generated by determining the shape and display position of each object (here, it means a region of a portion to be scroll-displayed. Hereinafter, in order to avoid confusion, it is called a performance screen. If the target is spatial data of X minutes), X ,,
After the process of rotating around each of the Y and Z axes,
It is performed by projecting parallel to the XY plane.

【0044】そのような変換を行って平面データを得た
後は、複数の点によって表される面のなかで表示される
部分を特定し、特定した部分毎に、その部分を構成する
画素のデータとして、その部分の表示色を表す値を書き
込む形で1画面分の画像データを生成する。音高が低い
楽音のノートオブジェクト320ほど、手前側に表示さ
せることから、表示される部分の特定は低音側のノート
オブジェクト320から行う。そのようにして生成した
画像データを表示部105に送って表示させることによ
り、図3に示すように各種オブジェクトを表示させての
スクロール表示を行わせる。その画像データは、状況に
より、演奏画面全体、或いはその一部分を対象に生成し
て表示部105に送っている。
After the plane data is obtained by performing such a conversion, a portion to be displayed on the surface represented by a plurality of points is specified, and for each of the specified portions, a pixel forming the portion is identified. As data, one screen of image data is generated by writing a value representing the display color of that portion. Since the note object 320 having a lower tone pitch is displayed closer to the front side, the portion to be displayed is specified from the note object 320 on the lower tone side. By sending the image data generated in this way to the display unit 105 and displaying it, the scroll display is performed by displaying various objects as shown in FIG. The image data is generated for the entire performance screen or a part thereof and sent to the display unit 105 depending on the situation.

【0045】なお、本実施の形態では、3次元空間デー
タから2次元平面データへの投影は平行に行うようにし
ているが、例えば図6に示すように、遠近法を取り入れ
た形で投影を行うようにしても良い。しかし、発音させ
るべき楽音をユーザに強調させるために、発音させるべ
きタイミングが早い楽音のノートオブジェクト320ほ
ど、大きくなるように表示させることが望ましい。その
図6では、視点も図3とは異ならせ、ノートオブジェク
ト320の音階軸上の幅は音高が白鍵に対応するか否か
に応じて異ならせ、表示色は1色とさせている。その視
点は、図3や図6におけるそれらと異ならせても良い。
In this embodiment, the projection from the three-dimensional space data to the two-dimensional plane data is performed in parallel. However, as shown in FIG. 6, for example, the projection is performed in the form of perspective. You may do it. However, in order to emphasize the musical sound to be pronounced to the user, it is desirable that the note object 320 of the musical sound to be pronounced earlier has a larger display. In FIG. 6, the viewpoint is also different from that in FIG. 3, the width of the note object 320 on the scale axis is different depending on whether the pitch corresponds to the white key, and the display color is one color. . The viewpoint may be different from those in FIGS. 3 and 6.

【0046】ノートオブジェクト320については、そ
の形状は図3に示すものと異ならせても良い。例えば図
7(a)〜(e)にそれぞれ示す変形例1〜5のうちの
何れかを採用しても良い。それら以外の形状を採用して
も良い。図7(c)に示す変形例3は、それが表す音高
の楽音を発音させるために使うべき指を番号(図中の
「1」)を前部に配置するようにしたものである。図7
(d)に示す変形例4は、それが表す楽音の対応する音
符を示すシンボルを前部に配置するようにしたものであ
る。図7(e)に示す変形例5は、それが表す楽音の音
高(音名)を示すシンボル(図中の「c」)を前部に配
置するようにしたものである。図7(c)〜(e)から
明らかなように、ノートオブジェクト320は3次元
(立体)的に表示させることから、何らかの演奏情報を
表すシンボルも把握し易いように配置することができ
る。
The shape of the note object 320 may be different from that shown in FIG. For example, any of Modifications 1 to 5 shown in FIGS. 7A to 7E may be adopted. Other shapes may be adopted. In the modified example 3 shown in FIG. 7 (c), a finger (“1” in the drawing) to be used for producing a musical tone of the pitch represented by the finger is arranged at the front part. Figure 7
In the modified example 4 shown in (d), a symbol indicating a note corresponding to the musical sound represented by the symbol is arranged in the front part. In the modified example 5 shown in FIG. 7E, a symbol (“c” in the figure) indicating the pitch (pitch name) of the musical tone represented by the symbol is arranged in the front part. As is clear from FIGS. 7C to 7E, since the note object 320 is displayed three-dimensionally (three-dimensionally), it is possible to arrange the symbol indicating some performance information so that it can be easily grasped.

【0047】上述したようなノートオブジェクト320
を表示させてスクロールさせることにより、ユーザにと
っては従来の演奏情報表示装置と比較して、より多くの
演奏情報をより容易、且つ迅速に得られるようになる。
このため、ユーザがより適切な形で演奏を行うのを支援
することになる。なた、音楽的表現がより豊かな演奏も
より短時間で行えるようになる。
Note object 320 as described above
By displaying and scrolling, the user can obtain more performance information more easily and quickly than the conventional performance information display device.
Therefore, it helps the user to perform in a more appropriate form. You will also be able to perform a richer musical expression in a shorter time.

【0048】次に、上述したような演奏情報のスクロー
ル表示を実現するCPU101の動作について、図8〜
図14に示す各種フローチャートを参照して詳細に説明
する。
Next, the operation of the CPU 101 for realizing the scroll display of performance information as described above will be described with reference to FIGS.
This will be described in detail with reference to various flowcharts shown in FIG.

【0049】図8は、全体処理のフローチャートであ
る。この全体処理は、ユーザが電源をオンさせた場合
に、CPU101が、ROM102に格納されているプ
ログラムを実行することで実現される処理の全体的な流
れを表したものである。始めに図8を参照して、その全
体処理について詳細に説明する。
FIG. 8 is a flowchart of the whole process. The overall process represents the overall flow of the process realized by the CPU 101 executing the program stored in the ROM 102 when the user turns on the power. First, the overall processing will be described in detail with reference to FIG.

【0050】先ず、ステップ801では、楽器を状態を
所定の状態に初期化する初期化処理を実行する。次に移
行するステップ802では、操作部106を構成する各
種スイッチの状態を示すデータを、その操作部106の
検出回路から取り込む処理を実行する。その後はステッ
プ803に移行する。
First, in step 801, initialization processing for initializing the state of the musical instrument to a predetermined state is executed. In the next step 802, a process of fetching data indicating the states of various switches forming the operation unit 106 from the detection circuit of the operation unit 106 is executed. After that, the process proceeds to step 803.

【0051】ステップ803では、操作部106の検出
回路から取り込んだデータを解析して、何らかのスイッ
チがユーザに操作されたか否か判定する。操作部106
を構成する何らかのスイッチをユーザが操作した場合、
判定はYESとなってステップ804に移行する。そう
でない場合には、判定はNOとなってステップ812に
移行する。
In step 803, the data taken in from the detection circuit of the operation unit 106 is analyzed to determine whether any switch has been operated by the user. Operation unit 106
When a user operates any of the switches that make up
The determination is yes and the process moves to step 804. Otherwise, the determination is no and the process moves to step 812.

【0052】電源のオン/オフを指示するための電源ス
イッチは、操作部106を構成するスイッチとして設け
られている。ステップ804では、その電源スイッチが
操作されたか否か判定する。そのスイッチをユーザが操
作した場合、判定はYESとなり、ここで一連の処理を
終了する。そうでない場合には、判定はNOとなってス
テップ805に移行する。
A power switch for instructing to turn on / off the power is provided as a switch constituting the operation unit 106. In step 804, it is determined whether the power switch has been operated. When the user operates the switch, the determination is YES, and the series of processes is ended here. Otherwise, the determination is no and the process moves to step 805.

【0053】ステップ805では、操作部106を構成
する、曲データの再生(自動演奏)の開始を指示するた
めのスタートスイッチが操作されたか否か判定する。そ
のスイッチをユーザが操作した場合、判定はYESとな
り、ステップ806に移行して、現在、選択されている
曲データの再生を開始するための演奏開始処理を実行し
た後、ステップ812に移行する。そうでない場合に
は、判定はNOとなってステップ807に移行する。そ
の演奏開始処理を実行した際に、曲データの再生を管理
するために用意した変数Playflgには再生中であ
ることを表す値の1が代入される。
In step 805, it is determined whether or not the start switch, which constitutes the operation unit 106, for instructing the start of the reproduction (automatic performance) of the music data is operated. When the user operates the switch, the determination is yes, the process proceeds to step 806, and the performance start process for starting the reproduction of the currently selected song data is executed, and then the process proceeds to step 812. Otherwise, the determination is no and the process moves to step 807. When the performance start process is executed, a variable Playflg prepared for managing the reproduction of the music data is substituted with a value 1 indicating that the reproduction is being performed.

【0054】ステップ807では、操作部106を構成
する、曲データの再生(自動演奏)の停止(終了)を指
示するためのストップスイッチが操作されたか否か判定
する。そのスイッチをユーザが操作した場合、判定はY
ESとなり、ステップ808に移行して、現在、再生中
の曲データの再生を停止させるための演奏停止処理を実
行した後、ステップ812に移行する。そうでない場合
には、判定はNOとなってステップ809に移行する。
その演奏停止処理を実行した際に、上記変数Playf
lgには曲データを再生中でないことを表す値の0が代
入される。
In step 807, it is determined whether or not the stop switch, which constitutes the operation unit 106, for instructing the stop (end) of the reproduction (automatic performance) of the music data is operated. If the user operates the switch, the determination is Y.
When ES is reached, the process proceeds to step 808, and a performance stop process for stopping the reproduction of the music data currently being reproduced is executed, and then the process proceeds to step 812. Otherwise, the determination is no and the process moves to step 809.
When the performance stop processing is executed, the variable Playf
A value 0, which indicates that the music data is not being reproduced, is assigned to lg.

【0055】本実施の形態では、上述したように、表示
部105で表す時間軸の単位、即ち1演奏画面で表す演
奏時間である表示範囲時間の長さをユーザが変更できる
ようにさせている。ステップ809では、操作部106
を構成する、その変更を指示するためのスイッチが操作
されたか否か判定する。そのスイッチをユーザが操作し
た場合、判定はYESとなってステップ810に移行
し、ユーザが操作したスイッチの種類に応じて表示範囲
時間を変更する表示時間処理を実行して、変更後の表示
範囲時間を表す値を変数tkDispRangeに代入
した後、ステップ812に移行する。そうでない場合に
は、判定はNOとなり、ステップ811に移行して、操
作部106を構成する他のスイッチ、或いは鍵盤104
へのユーザの操作に対応するための処理を実行した後、
ステップ812に移行する。なお、鍵盤104へのユー
ザの操作に応じた楽音の発音(発音開始や消音、更には
各種音響効果の付加など)は、CPU101が、その鍵
盤104から受け取ったデータを用いて音源107に送
出すべきコマンドを生成し、それを音源107に送出す
ることで実現される。
In the present embodiment, as described above, the user can change the unit of the time axis represented by the display unit 105, that is, the length of the display range time which is the performance time represented by one performance screen. . In step 809, the operation unit 106
It is determined whether or not the switch for instructing the change is operated. If the switch is operated by the user, the determination is yes and the process moves to step 810 to execute the display time process of changing the display range time according to the type of the switch operated by the user to display the changed display range. After substituting the value indicating the time into the variable tkDispRange, the process proceeds to step 812. Otherwise, the determination is no, the process moves to step 811, and another switch that constitutes the operation unit 106 or the keyboard 104.
After executing the process to respond to the user's operation to
Go to step 812. It should be noted that the CPU 101 sends out to the sound source 107, using the data received from the keyboard 104, to generate musical tones in response to the user's operation on the keyboard 104 (starting sound, muting, addition of various sound effects, etc.). It is realized by generating a power command and sending it to the sound source 107.

【0056】ステップ812では、現在、曲データを自
動演奏(再生)中か否か判定する。その自動演奏用に用
意した上記変数Playflgに1が代入されていた場
合、判定はYESとなり、ステップ813に移行して、
曲データの自動演奏を進行させるための演奏処理を実行
した後、ステップ814に移行する。そうでない場合に
は、判定はNOとなってそのステップ814に移行す
る。
At step 812, it is determined whether or not the music data is currently being automatically played (reproduced). If 1 is assigned to the variable Playflg prepared for the automatic performance, the determination is yes and the process moves to step 813.
After performing the performance process for advancing the automatic performance of the music data, the process proceeds to step 814. Otherwise, the determination is no and the process moves to step 814.

【0057】ステップ814では、ノートオブジェクト
320(図3等参照)、更には他のオブジェクトなどを
曲データの自動演奏の進行に合わせてスクロール表示す
るための楽音表示処理を実行する。続くステップ815
では、ユーザに通知すべき他の情報や各種設定内容など
を必要に応じて表示するためのその他の表示処理を実行
する。その次に移行するステップ816では、上述した
以外のことに対応するためのその他の処理を実行する。
その実行後に上記ステップ802に戻る。特には図示し
ないMIDIインターフェースを介してのMIDIデー
タの送受信は、ステップ816の処理を実行することで
実現される。
At step 814, a musical tone display process for scroll-displaying the note object 320 (see FIG. 3 etc.) and further other objects in accordance with the progress of the automatic performance of the music data is executed. Continued Step 815
Then, other display processing for displaying other information to be notified to the user and various setting contents as necessary is executed. At step 816, which is performed next, other processing is executed to cope with the matters other than those described above.
After the execution, the process returns to step 802. Transmission / reception of MIDI data via a MIDI interface (not shown) is realized by executing the process of step 816.

【0058】このように、電源がオンされている間は、
上記ステップ802〜816で形成される処理ループを
繰り返し実行するようになっている。それにより、ユー
ザの鍵盤104や操作部106への操作、曲データの自
動演奏(再生)、更にはその自動演奏の進行に合わせた
スクロール表示に対応するようになっている。
Thus, while the power is on,
The processing loop formed in steps 802 to 816 is repeatedly executed. As a result, the user can operate the keyboard 104 or the operation unit 106, automatically play (play) music data, and scroll display in accordance with the progress of the automatic performance.

【0059】以降は、上記全体処理内で実行される各種
サブルーチン処理について詳細に説明する。図9は、上
記ステップ813として実行される演奏処理のフローチ
ャートである。全体処理内で実行されるサブルーチン処
理では、始めに図9を参照して、演奏処理について詳細
に説明する。
In the following, various subroutine processes executed in the above overall process will be described in detail. FIG. 9 is a flowchart of the performance process executed as step 813. In the subroutine processing executed in the overall processing, the performance processing will be described in detail first with reference to FIG.

【0060】この演奏処理が自動演奏の対象とする曲デ
ータは、図2に示すように、複数のトラックデータから
構成される。このことから、演奏処理は、トラックデー
タ別に、対象とするトラックデータを順次、変更しなが
ら、そのトラックデータ中で処理すべきタイミングとな
ったイベントデータを抽出して処理するようになってい
る。それを実現させるために、1次元の配列変数pPl
ayEventの各要素には、それぞれ対応するトラッ
クデータ中で次に処理すべきイベントデータを示すアド
レス値を保持させている。曲データの自動演奏開始時に
は、それぞれ、対応するトラックデータのなかで先頭に
位置するイベントデータを指定するアドレス値を保持さ
せている。
As shown in FIG. 2, the music data to be automatically played by this performance processing is composed of a plurality of track data. From this, the performance process is designed to sequentially change the target track data for each track data, and extract and process the event data at the timing to be processed in the track data. In order to realize it, one-dimensional array variable pPl
Each element of ayEvent holds an address value indicating the event data to be processed next in the corresponding track data. At the start of automatic performance of music data, an address value designating the event data located at the head among the corresponding track data is held.

【0061】先ず、ステップ901では、処理対象とす
るトラックデータを管理するための変数trkに0(ト
ラッ番号は0〜15である)を代入し、現在の演奏時間
(曲データの自動演奏を開始してから経過した時間)を
計算して、それを示す値を変数tkPlayに代入す
る。続くステップ902では、変数trkの値が、変数
MAXTRKに保持されている、トラック番号の最大値
より小さいか否か判定する。本実施の形態では、変数t
rkに代入した0を初期値として、それに代入した値を
随時、インクリメントしながら、変数trkの値と番号
が一致するトラックデータを処理していくようになって
いる。このことから、全てのトラックデータを処理対象
としていない場合、判定はYESとなってステップ90
3に移行する。そうでない場合には、判定はNOとな
り、ここで一連の処理を終了する。なお、上記変数tk
Playには、曲データの自動演奏の開始時に0が代入
される。
First, in step 901, 0 (the track number is 0 to 15) is assigned to a variable trk for managing the track data to be processed, and the current playing time (the automatic playing of the song data is started. The time that has elapsed since then) is calculated, and a value indicating it is substituted for the variable tkPlay. In the following step 902, it is determined whether or not the value of the variable trk is smaller than the maximum value of the track number held in the variable MAXTRK. In the present embodiment, the variable t
The 0 assigned to rk is used as an initial value, and the value assigned to it is incremented as needed to process the track data whose number matches the value of the variable trk. From this, if not all the track data are processed, the determination is YES and step 90
Move to 3. If not, the determination is no, and the series of processes ends here. The above variable tk
In Play, 0 is substituted at the start of automatic performance of music data.

【0062】上記したように、ノートイベントデータで
は、そのイベントの内容を表すパラメータデータとし
て、音高データ、ベロシティデータ、及びゲートタイム
データなどがある。時間データに従って発音を開始させ
た楽音は、ゲートタイムデータが表す発音持続時間が経
過した後、消音させなければならない。このことから、
本実施の形態では、2次元の配列変数pPlayOff
を用意し、各トラックデータ毎に、発音中の楽音のイベ
ントデータを示すアドレス値を保持させている。その直
後に位置する括弧内の添字はトラックデータ(番号)の
指定用である。その配列変数pPlayOffによって
提供される作業領域については、以降、オフバッファと
も呼ぶことにする。配列変数pPlayOffの各要素
には、曲データの自動演奏開始時にNULL(アドレス
値が保持されていないことを示す値である)を代入させ
ている。
As described above, in the note event data, there are pitch data, velocity data, gate time data, etc. as the parameter data representing the content of the event. The musical sound that has started to be sounded according to the time data must be muted after the sounding duration represented by the gate time data has elapsed. From this,
In the present embodiment, the two-dimensional array variable pPlayOff
Is prepared, and an address value indicating event data of a musical sound being generated is held for each track data. The subscript in parentheses located immediately after that is for specifying the track data (number). The work area provided by the array variable pPlayOff will be also referred to as an off-buffer hereinafter. NULL (which is a value indicating that an address value is not held) is assigned to each element of the array variable pPlayOff at the start of automatic performance of music data.

【0063】ステップ903では、そのオフバッファに
アドレス値が保持されたイベントデータを処理の対象に
するオフバッファ演奏処理を実行する。次に移行するス
テップ904では、配列変数pPlayEventのな
かで変数trkの値により指定される要素pPlayE
vent[trk]の値を変数peに代入する。その後
はステップ905に移行する。
In step 903, an off-buffer performance process is executed in which the event data whose address value is held in the off-buffer is to be processed. In the next step 904, the element pPlayE specified by the value of the variable trk in the array variable pPlayEvent is transferred.
The value of vent [trk] is assigned to the variable pe. After that, the process proceeds to step 905.

【0064】ステップ905では、変数peの値で指定
されるイベントデータ中の時間データ(図中では「pe
→tktime」と表記)が表す時間が変数tkPla
yの値が表す演奏時間以上か否か判定する。変数peの
値で指定されるイベントデータが処理すべきタイミング
となった、或いはなっていた場合、その関係を満たすこ
とから、判定はYESとなってステップ907に移行す
る。そうでない場合には、判定はNOとなり、ステップ
906で変数trkの値をインクリメントした後、上記
ステップ902に戻る。それにより、対象とするトラッ
クデータを次に代えて、そのステップ902以降の処理
を同様に実行する。
At step 905, the time data (“pe” in the figure) in the event data designated by the value of the variable pe.
The time represented by "→ tktime" is represented by the variable tkPla.
It is determined whether or not the performance time is equal to or longer than the value of y. If the event data designated by the value of the variable pe has reached or has reached the timing to be processed, the determination is YES because the relationship is satisfied, and the process proceeds to step 907. Otherwise, the determination is no, the value of the variable trk is incremented in step 906, and the process returns to step 902. As a result, the target track data is replaced next, and the processing after step 902 is similarly executed.

【0065】ステップ907では、処理すべきタイミン
グとなったイベントデータを処理することで曲データの
自動演奏を進行させるためのイベント演奏処理を実行す
る。続くステップ908では、変数peに、それまでの
値が示すイベントデータの次に位置しているイベントデ
ータのアドレス値を代入する。その次に移行するステッ
プ909では、配列変数pPlayEventのなかで
変数trkの値により指定される要素pPlayEve
nt[trk]に、変数peの値を代入する。その後に
上記ステップ905に戻る。それにより、変数trkの
値で指定されるトラックデータのなかで処理すべきイベ
ントデータを全て処理するまで、ステップ905、90
7〜909で形成される処理ループを繰り返し実行す
る。
In step 907, the event performance processing for advancing the automatic performance of the music data is executed by processing the event data at the timing to be processed. In the following step 908, the address value of the event data located next to the event data indicated by the previous value is substituted into the variable pe. In step 909, which moves to the next step, the element pPlayEve specified by the value of the variable trk in the array variable pPlayEvent.
The value of the variable pe is substituted into nt [trk]. Then, the process returns to step 905. As a result, steps 905 and 90 are performed until all the event data to be processed in the track data specified by the value of the variable trk is processed.
The processing loop formed by 7 to 909 is repeatedly executed.

【0066】ここで、上記演奏処理内で実行される各種
サブルーチン処理について、図10、及び図11を参照
して詳細に説明する。図10は、上記ステップ903と
して実行されるオフバッファ処理のフローチャートであ
る。演奏処理内で実行されるサブルーチン処理では、始
めに図10を参照して、オフバッファ処理について詳細
に説明する。その演奏処理からは、各種変数の値が渡さ
れる。
Now, various subroutine processes executed in the performance process will be described in detail with reference to FIGS. 10 and 11. FIG. 10 is a flowchart of the off-buffer process executed as the above step 903. In the subroutine process executed in the performance process, the off-buffer process will be described in detail with reference to FIG. The values of various variables are passed from the performance processing.

【0067】先ず、ステップ1001では、変数off
に0を代入する。その変数offは、その値を用いて指
定される配列変数pPlayOff中の要素にアドレス
値が保持されたイベントデータを処理するために用意し
た変数であり、その値は順次、インクリメントされる。
First, in step 1001, the variable off
Substitute 0 for. The variable off is a variable prepared for processing the event data in which the address value is held in the element in the array variable pPlayOff designated by using the value, and the value is sequentially incremented.

【0068】ステップ1001に続くステップ1002
では、変数offの値が、変数MAXOFFに保持され
たトラックデータを対象とする最大同時発音数より小さ
いか否か判定する。変数offの値を変更して指定でき
る配列変数pPlayOff中の要素を全て指定してい
ない場合、判定はYESとなってステップ1003に移
行し、変数trk、及びoffの各値によって指定され
る配列変数pPlayOff中の要素pPlayOff
[trk][off]に保持されたアドレス値を変数p
eに代入した後、ステップ1004に移行する。そうで
ない場合には、判定はNOとなり、配列変数pPlay
Off中で変数offの値により指定される要素にアド
レス値が保持されたイベントデータのなかで処理すべき
ものは全て処理したとして、ここで一連の処理を終了す
る。
Step 1002 following step 1001
Then, it is determined whether or not the value of the variable off is smaller than the maximum polyphony number for the track data held in the variable MAXOFF. When all the elements in the array variable pPlayOff that can be specified by changing the value of the variable off are not specified, the determination becomes YES and the process proceeds to step 1003, and the array variable specified by each value of the variable trk and off. Elements in pPlayOff pPlayOff
The address value held in [trk] [off] is set to the variable p.
After substituting for e, the process proceeds to step 1004. Otherwise, the determination is no and the array variable pPlay
It is assumed that all of the event data in which the address value is held in the element designated by the value of the variable off in Off are to be processed, and the series of processing is ended here.

【0069】ステップ1004では、変数peの値がN
ULLか否か、即ち要素pPlayOff[trk]
[off]にアドレス値が保持されていなかったか否か
判定する。その要素にアドレス値が保持されていなかっ
た場合、判定はYESとなってステップ1007に移行
する。そうでない場合には、判定はNOとなってステッ
プ1005に移行する。
At step 1004, the value of the variable pe is N
Whether it is ULL, that is, the element pPlayOff [trk]
It is determined whether the address value is not held in [off]. If the element does not hold the address value, the determination is yes and the process moves to step 1007. Otherwise, the determination is no and the process moves to step 1005.

【0070】ステップ1005では、変数peの値で指
定されるイベントデータを構成する時間データが示す時
間(図中では「pe→tktime」と表記)に、それ
を構成するゲートタイムデータが示す時間(図中では
「pe→tkoff」と表記)を加算した時間、即ちそ
のイベントデータが表す楽音を消音させるべき時間が、
変数tkPlayの値が示す演奏時間以上か否か判定す
る。そのイベントデータによって発音を開始させた楽音
を消音させるべきタイミングとなったような場合、判定
はYESとなってステップ1006に移行する。そうで
ない場合には、判定はNOとなってステップ1007に
移行する。
In step 1005, the time indicated by the time data constituting the event data designated by the value of the variable pe (indicated as "pe → tktime" in the figure) is represented by the time indicated by the gate time data constituting it ( In the figure, the time obtained by adding “pe → tkoff”), that is, the time when the musical sound represented by the event data should be silenced,
It is determined whether the playing time is equal to or longer than the value indicated by the variable tkPlay. When it is time to mute the musical sound that started to be sounded by the event data, the determination is yes and the process moves to step 1006. Otherwise, the determination is no and the process moves to step 1007.

【0071】ステップ1006では、変数peの値で指
定されるイベントデータによって発音させた楽音の消音
を音源107に指示するとともに、要素pPlayOf
f[trk][off]にNULLを代入する。続くス
テップ1007では、変数Offの値をインクリメント
する。その後は上記ステップ1002に戻る。それによ
り、変数offの値を変更することで指定される配列変
数pPlayOff中の要素にアドレス値が保持された
イベントデータのなかで処理すべきイベントデータを全
て処理する。なお、音源107に楽音の消音を指示する
コマンドは、イベントデータを構成する音高データを用
いて生成されるものである。
In step 1006, the sound source 107 is instructed to mute the musical sound generated by the event data designated by the value of the variable pe, and the element pPlayOf is set.
Substitute NULL for f [trk] [off]. In the following step 1007, the value of the variable Off is incremented. After that, the process returns to step 1002. Thereby, all the event data to be processed among the event data in which the address value is held in the element in the array variable pPlayOff designated by changing the value of the variable off is processed. The command for instructing the sound source 107 to mute a musical sound is generated using the pitch data that constitutes the event data.

【0072】次に、図9に示す演奏処理内でステップ9
07として実行されるイベント演奏処理について、図1
1に示すそのフローチャートを参照して詳細に説明す
る。そのイベント演奏処理は、上述したように、処理す
べきタイミングとなったイベントデータを処理すること
で曲データの自動演奏を進行させるための処理であり、
演奏処理からは、変数pe、trkの値などが渡され
る。
Next, step 9 in the performance process shown in FIG.
The event performance process executed as 07 is shown in FIG.
This will be described in detail with reference to the flowchart shown in FIG. As described above, the event performance processing is processing for advancing the automatic performance of the music data by processing the event data at the timing to be processed,
From the performance process, the values of the variables pe and trk are passed.

【0073】先ず、ステップ1101では、変数peの
アドレス値で指定されるイベントデータ中のパラメータ
データが示すイベントの種類がノートイベントか否か判
定する。そのイベントの種類がノートイベントであった
場合、判定はYESとなってステップ1102に移行
し、イベントデータ中の音高データで音高が指定される
楽音の発音を音源107に指示するとともに、そのアド
レス値を配列変数pPlayOff中の要素に保持させ
た後、一連の処理を終了する。そうでない場合には、判
定はNOとなってステップ1103に移行する。
First, in step 1101, it is determined whether the type of event indicated by the parameter data in the event data designated by the address value of the variable pe is a note event. If the event type is a note event, the determination is yes and the process moves to step 1102 to instruct the tone generator 107 to generate a musical tone whose pitch is specified by the pitch data in the event data. After the address value is held in the element in the array variable pPlayOff, a series of processing is ended. Otherwise, the determination is no and the process moves to step 1103.

【0074】なお、アドレス値を保持させる要素は、変
数trkの値で指定される要素のなかでNULLを保持
しているか、或いは対応する楽音の発音を最も早く開始
させたイベントデータのアドレス値を保持している要素
を抽出してそれに決定している。アドレス値を保持させ
ている要素にアドレス値を上書きする場合には、上書き
されるアドレス値で指定されるイベントデータによって
発音中の楽音は消音させる。それにより、NULLを保
持している要素が残っている間はその残っている要素に
アドレス値を保持させ、そのNULLを保持している要
素が残っていなければ、上書きされるアドレス値で指定
されるイベントデータによって発音中の楽音を消音させ
て、新たに保持すべきアドレス値を保持させる要素を確
保するようにしている。
The element that holds the address value holds NULL among the elements designated by the value of the variable trk, or the address value of the event data that started the sounding of the corresponding musical sound earliest. The retained element is extracted and determined. When the address value is overwritten on the element holding the address value, the musical tone being sounded is muted by the event data specified by the overwritten address value. As a result, while the element holding the NULL remains, the remaining element holds the address value, and if the element holding the NULL does not remain, it is specified by the overwritten address value. The tone data being sounded is muted by the event data, and an element for holding a new address value to be held is secured.

【0075】ステップ1103では、変数peのアドレ
ス値で指定されるイベントデータ中のパラメータデータ
が示すイベントの種類がテンポイベントか否か判定す
る。そのイベントの種類がテンポイベントであった場
合、判定はYESとなってステップ1104に移行し、
変数tkTempoChangeにはイベントデータ中
の時間データ(図中では「pe→tktime」と表
記)、即ちテンポ値を変更するタイミングでの演奏時間
を示す値、変数dwTempoChangeには変数d
wClockの値、変数doTempoにはイベントデ
ータ中のデータが示すテンポ値をそれぞれ代入した後、
一連の処理を終了する。そうでない場合には、判定はN
Oとなってステップ1105に移行し、他のイベントに
対応するための処理を実行した後、一連の処理を終了す
る。
At step 1103, it is determined whether the type of event indicated by the parameter data in the event data designated by the address value of the variable pe is a tempo event. If the event type is a tempo event, the determination is yes and the process moves to step 1104,
The variable tkTempoChange is time data in the event data (indicated as “pe → tktime” in the figure), that is, a value indicating the playing time at the timing of changing the tempo value, and the variable dwTempoChange is a variable d.
After substituting the tempo value indicated by the data in the event data into the value of wClock and the variable doTempo,
A series of processing ends. Otherwise, the decision is N
When it becomes O, the process proceeds to step 1105, and after performing the process for responding to another event, the series of processes is ended.

【0076】上記変数dwClockは、例えば一定時
間毎に実行されるタイマインタラプト処理によってイン
クリメントされるカウンタ値を保持させるために用意し
た変数である。そのカウント値によって表される時間
は、テンポ値によって変化する。テンポ値を変更するタ
イミングでのそのカウント値を変数dwTempoCh
angeに保持させるのは、その変化に対応できるよう
にするためである。曲データの自動演奏開始時には、変
数tkTempoChangeには0、変数dwテンポ
Changeには変数dwClockの値、変数doT
empoには所定の初期値がそれぞれ代入される。この
ことから、図9に示す演奏処理(より具体的にはステッ
プ901の処理)の実行時に計算される演奏時間は、そ
の計算に用いる値を変数のシンボルで表現すれば、tk
Play=tkTempoChange+(dwClo
ck−dwTempoChange)×doTempo
により算出している。
The variable dwClock is a variable prepared to hold the counter value incremented by the timer interrupt process executed at regular intervals, for example. The time represented by the count value changes depending on the tempo value. The count value at the timing of changing the tempo value is set to the variable dwTempoCh.
The reason why the change is held is that the change can be dealt with. At the start of automatic performance of song data, the variable tkTempoChange is 0, the variable dw tempo Change is the value of the variable dwClock, and the variable doT.
A predetermined initial value is substituted into empo. From this, the playing time calculated when the performance process shown in FIG. 9 (more specifically, the process of step 901) is executed is tk if the value used for the calculation is represented by a variable symbol.
Play = tkTempoChange + (dwClo
ck-dwTempoChange) x doTempo
It is calculated by

【0077】図8に示す全体処理内で実行されるサブル
ーチン処理の説明に戻る。図12は、その全体処理内で
ステップ814として実行される楽音表示処理のフロー
チャートである。次に図12を参照して、楽音表示処理
について詳細に説明する。図3〜図5を参照して説明し
た各種オブジェクトの表示やスクロールは、その楽音表
示処理を実行することで行われる。
Returning to the explanation of the subroutine processing executed in the overall processing shown in FIG. FIG. 12 is a flowchart of the musical sound display process executed as step 814 in the overall process. Next, the musical sound display processing will be described in detail with reference to FIG. The display and scrolling of various objects described with reference to FIGS. 3 to 5 are performed by executing the musical sound display process.

【0078】先ず、ステップ1201では、現在、曲デ
ータ(図2参照)を自動演奏中か否か判定する。それが
自動演奏中であることを示す値の1が変数Playfl
gに代入されていた場合、判定はYESとなり、ステッ
プ1202で変数tkPlayの値を変数tkDisp
に代入した後、ステップ1203に移行する。そうでな
い場合には、判定はNOとなり、ここで一連の処理を終
了する。
First, in step 1201, it is determined whether or not the music data (see FIG. 2) is currently being automatically played. The value 1 that indicates that it is playing automatically is the variable Playfl
If it is assigned to g, the determination is yes, and the value of the variable tkPlay is changed to the variable tkDisp in step 1202.
After substituting for, shifts to step 1203. If not, the determination is no, and the series of processes ends here.

【0079】上記tkDispには、表示部105での
スクロール表示における先頭の演奏時間を保持させるよ
うになっている。その演奏時間として変数tkPlay
に保持された値を代入することから明らかなように、本
実施の形態では、現在の演奏時間(曲データの自動演奏
を開始してから経過した時間)をスクロール表示の範囲
の先頭とさせている。それにより、例えばノートオブジ
ェクト320が表す楽音の発音を開始させるべきタイミ
ングは、そのオブジェクト320の先端を表示鍵盤30
1の端にまで移動させることで表現し、その楽音を消音
させるべきタイミングは、そのオブジェクト320の後
端まで全て消去させることで表現するようにしている。
当然のことながら、それとは別の形でスクロール表示を
行うようにしても良い。
The tkDisp holds the performance time at the beginning of the scroll display on the display unit 105. Variable tkPlay as the playing time
As is apparent from substituting the value held in, the present playing time (the time elapsed after the automatic performance of the song data is started) is set to the beginning of the scroll display range. There is. As a result, for example, at the timing of starting the sound generation of the musical sound represented by the note object 320, the tip of the object 320 is displayed on the keyboard 30.
It is expressed by moving to the end of 1, and the timing at which the musical sound should be muted is expressed by deleting all to the rear end of the object 320.
As a matter of course, the scroll display may be performed in a different form.

【0080】ステップ1203では、変数tkDisp
の値が変数tkDispOldの値より小さいか否か判
定する。その変数tkDispOldには、後述するス
テップ1208で変数tkDispの値を代入してその
値を更新するようになっている。変数tkDispに値
を代入する変数tkPlayには、曲データの演奏開始
時に0が代入される。このことから、曲データの自動演
奏開始後、初めてステップ1203を実行した場合、変
数tkPlayには変数tkDispOldの値よりも
小さい値が代入されていることから、判定はYESとな
ってステップ1204に移行する。そうでない場合に
は、判定はNOとなってステップ1205に移行する。
At step 1203, the variable tkDisp
Is smaller than the value of the variable tkDispOld. The value of the variable tkDisp is substituted into the variable tkDispOld in step 1208 described later, and the value is updated. 0 is assigned to the variable tkPlay that assigns a value to the variable tkDisp at the start of performance of the music data. From this, when the step 1203 is executed for the first time after the automatic performance of the music data is started, a value smaller than the value of the variable tkDispOld is assigned to the variable tkPlay, so that the determination is YES and the routine proceeds to step 1204. To do. Otherwise, the determination is no and the process moves to step 1205.

【0081】ステップ1204では、1次元の配列変数
pDispEventの各要素(トラック番号は0〜1
5の何れかであることから、それに合わせて要素の数は
16としている)に、それぞれが曲データを構成する各
トラックデータの先頭に位置するイベントデータのアド
レス値を保持している配列変数pTrkの各要素の値を
対応させて代入する。表示中のノートオブジェクト32
0が表すイベントデータのアドレス値の保持用に用意し
た2次元の配列変数pDispOffの各要素には、そ
れぞれNULLを代入する。そのようにしてスクロール
表示を行ううえでの初期設定を行った後にステップ12
05に移行する。なお、配列変数pDispOffによ
って提供される作業領域については、以降、表示オフバ
ッファとステップ1205では、スクロール表示の対象
とならない各オブジェクト、例えば表示鍵盤301や実
ノートオブジェクト302を表示部105に表示させる
処理を実行する。そのオブジェクト302の表示位置
(表示鍵盤301で表示色を他と異ならせる鍵)やY軸
上の幅(高さ)は、図8に示すステップ811の処理の
実行時に鍵盤104から受け取ったデータから決定す
る。
At step 1204, each element (track number is 0 to 1) of the one-dimensional array variable pDispEvent.
Since it is any one of 5, the number of elements is set to 16 according to that), and the array variable pTrk holds the address value of the event data located at the beginning of each track data forming the music data. Substitute the values of each element in Note object 32 being displayed
NULL is assigned to each element of the two-dimensional array variable pDispOff prepared for holding the address value of the event data represented by 0. After performing the initial setting for scroll display in this way, step 12
Move to 05. Regarding the work area provided by the array variable pDispOff, in the display off buffer and step 1205, each object not to be scroll-displayed, for example, the display keyboard 301 or the real note object 302 is displayed on the display unit 105. To execute. The display position of the object 302 (the key that makes the display color of the display keyboard 301 different from the others) and the width (height) on the Y-axis are obtained from the data received from the keyboard 104 when the process of step 811 shown in FIG. 8 is executed. decide.

【0082】ステップ1205に続くステップ1206
では、ノートイベントを表すノートオブジェクト320
を表示させるためのイベント表示処理を実行する。その
次に移行するステップ1207では、配列変数pDis
pOffによって提供される表示オフバッファに格納さ
せるイベントデータのアドレス値を管理し、既に処理す
べきタイミングが来たイベントデータを示すノートオブ
ジェクト320を対象にスクロール表示させるための表
示オフバッファ処理を実行する。それを実行した後にス
テップ1208に移行する。
Step 1206 following step 1205
Then, a note object 320 representing a note event
The event display process for displaying is executed. In the next step 1207, the array variable pDis
The address value of the event data to be stored in the display off buffer provided by pOff is managed, and the display off buffer process for scrolling the note object 320 indicating the event data that has already come to be processed is executed. . After executing it, the process proceeds to step 1208.

【0083】1演奏画面(スクロール表示を行う表示領
域)を表示させるうえで必要な3次元空間データは、上
記ステップ1206、1207の各処理を実行すること
により生成される。このことから、ステップ1208で
は、変数tkDispOldに変数tkDispの値を
代入する一方、その時点で生成されている3次元空間デ
ータから2次元平面データを生成する変換を行い、その
平面データから1演奏画面分、或いはその一部分の画像
データを生成し、それを表示部105に送出してその表
示内容を更新させる。一連の処理はその後に終了する。
The three-dimensional space data necessary for displaying one performance screen (display area for scroll display) is generated by executing the processes of steps 1206 and 1207. From this, in step 1208, while substituting the value of the variable tkDisp into the variable tkDispOld, conversion is performed to generate two-dimensional plane data from the three-dimensional space data generated at that time, and one plane is displayed from the plane data. Minute or part of the image data is generated and sent to the display unit 105 to update the display content. The series of processing is ended thereafter.

【0084】上記楽音表示処理を実行することにより、
図3に示すように行うスクロール表示が実現される。以
降、その楽音表示処理内で実行される各種サブルーチン
処理について、図13、図14を参照して詳細に説明す
る。
By executing the tone display processing described above,
A scroll display as shown in FIG. 3 is realized. Hereinafter, various subroutine processes executed in the musical sound display process will be described in detail with reference to FIGS. 13 and 14.

【0085】図13は、上記ステップ1206として実
行されるイベント表示処理のフローチャートである。楽
音表示処理内で実行されるサブルーチン処理では、始め
に図13を参照して、イベント表示処理について詳細に
説明する。本実施の形態では、トラック番号が0、1で
ある左手演奏用、及び右手演奏用のトラックデータを構
成するイベントデータのみを対象にして、ノートオブジ
ェクト320のスクロール表示を行うようにしている。
FIG. 13 is a flow chart of the event display process executed as step 1206. In the subroutine process executed in the musical sound display process, the event display process will be described in detail with reference to FIG. In the present embodiment, the scroll display of the note object 320 is performed only for the event data that constitutes the track data for the left-hand performance and the right-hand performance whose track numbers are 0 and 1.

【0086】先ず、ステップ1301では、変数trk
に、変数LEFTTRKに保持されているトラック番号
(ここでは0である)を代入する。続くステップ130
2では、変数trkの値が、変数RIGHTTRKに保
持されているトラック番号(ここでは1である)以下か
否か判定する。変数trkの値は順次、インクリメント
することで、処理の対象とするトラックデータを切り換
えるようになっている。このことから、右手演奏用のト
ラックデータを対象にした処理が完了していた場合、判
定はNOとなり、ここで一連の処理を終了する。そうで
ない場合には、判定はYESとなってステップ1303
に移行する。
First, in step 1301, the variable trk
The track number (here, 0) held in the variable LEFTTRK is substituted into. Continued Step 130
In 2, it is determined whether or not the value of the variable trk is equal to or less than the track number (here, 1) held in the variable RIGHTTRK. The value of the variable trk is sequentially incremented to switch the track data to be processed. From this, if the processing for the right-handed track data has been completed, the determination is NO, and the series of processing is ended here. Otherwise, the determination is yes and step 1303.
Move to.

【0087】ステップ1303では、変数peに、配列
変数pDispEvent中で変数trkの値により指
定される要素pDispEvent[trk]のアドレ
ス値を代入する。次に移行するステップ1304では、
変数peの値で指定されるイベントデータ中の時間デー
タが示す時間の長さが、変数tkDispの値が示す現
在の演奏時間の長さ以下か否か判定する。変数peの値
で指定されるイベントデータを処理すべきタイミングが
来たような場合、判定はYESとなってステップ105
に移行する。そうでない場合には、判定はNOとなって
ステップ1310に移行する。
In step 1303, the address value of the element pDispEvent [trk] designated by the value of the variable trk in the array variable pDispEvent is substituted for the variable pe. At the next step 1304,
It is determined whether or not the length of time indicated by the time data in the event data designated by the value of the variable pe is less than or equal to the current length of playing time indicated by the value of the variable tkDisp. If it is time to process the event data specified by the value of the variable pe, the determination is yes and step 105
Move to. Otherwise, the determination is no and the process moves to step 1310.

【0088】ステップ1305では、変数peの値で指
定されるイベントデータ中のデータが示すイベントの種
類(タイプ)がノートイベントか否か判定する。そのイ
ベントの種類がノートイベントであった場合、判定はY
ESとなってステップ1306に移行する。そうでない
場合には、判定はNOとなってステップ1308に移行
する。
In step 1305, it is determined whether the type of event indicated by the data in the event data designated by the value of the variable pe is a note event. If the event type is a note event, the determination is Y
It becomes ES and moves to step 1306. Otherwise, the determination is no and the process moves to step 1308.

【0089】ステップ1306では、イベントデータ中
の時間データ、音高データ、ゲートタイムデータ、及び
ベロシティデータから、上述したようにしてそのイベン
トデータを表すノートオブジェクト320の形状、及び
その表示位置(各点のXYZ軸上の各座標値)を決定す
ることにより、そのノートオブジェクト320の3次元
空間データを生成する。また、その音高データや変数t
rkの値から、オブジェクト320の前部320a、後
部320bの表示色を決定する(図4参照)。そのよう
にしてスクロールさせるノートオブジェクト320を表
示させるためのデータを生成した後は、ステップ130
7に移行して、そのイベントデータのアドレス値を、配
列変数pDispOffの変数trkで指定される要素
pDispOff[trk][](「[]」は2番目の
添字は予め予想できない値であることを表す。以降、特
に断らない限り、同様の意味で用いる)に保持させる。
その後にステップ1308に移行する。ここでアドレス
値を保持させる要素は、図11に示すイベント演奏処理
内で実行されるステップ1102の処理と同様に、NU
LLを保持しているか、或いは発音開始時刻が最も早い
楽音を表すイベントデータのアドレス値を保持している
ものである。
In step 1306, the shape of the note object 320 representing the event data and its display position (each point) from the time data, pitch data, gate time data, and velocity data in the event data as described above. 3D space data of the note object 320 is generated by deciding each coordinate value on the XYZ axes of the. Also, the pitch data and the variable t
The display colors of the front part 320a and the rear part 320b of the object 320 are determined from the value of rk (see FIG. 4). After generating the data for displaying the note object 320 to be scrolled in this way, step 130 is performed.
7, the address value of the event data is changed to the element pDispOff [trk] [] (“[]” is a value that cannot be predicted in advance for the second subscript) specified by the variable trk of the array variable pDispOff. Hereinafter, unless otherwise specified, the same meaning is used).
Then, the process proceeds to step 1308. Here, the element for holding the address value is NU, as in the process of step 1102 executed in the event performance process shown in FIG.
Either LL is held, or the address value of the event data representing the musical sound having the earliest sounding start time is held.

【0090】ステップ1308では、変数peに、それ
までの値で指定されるイベントデータの次に位置するイ
ベントデータのアドレス値を代入する。その次に移行す
るステップ1309では、要素pDispEvent
[trk]に、変数peの値を代入する。その後は上記
ステップ1304に戻る。
At step 1308, the address value of the event data located next to the event data designated by the value so far is substituted into the variable pe. In the next step 1309, the element pDispEvent is entered.
The value of the variable pe is substituted into [trk]. Then, the process returns to step 1304.

【0091】そのステップ1304の判定がNOとなっ
て移行するステップ1310では、変数peの値で指定
されるイベントデータ中の時間データが示す時間(図
中、「pe→tktime」と表記)が、表示終了時間
(図中、「tkDisp+tkDispRange」と
表記)よりも前か(短いか)否か判定する。そのイベン
トデータを処理すべきタイミングが表示終了時間以後で
あった場合、判定はNOとなり、ステップ1311で変
数trkの値をインクリメントした後、上記ステップ1
302に戻る。それにより、現在、トラック番号0のト
ラックデータを処理対象としていたのであれば、トラッ
ク番号1のトラックデータに処理対象を移行させる。一
方、そうでない場合には、判定はYESとなってステッ
プ1312に移行する。
At step 1310 when the determination at step 1304 is NO and the process shifts, the time indicated by the time data in the event data designated by the value of the variable pe (indicated as “pe → tktime” in the figure) is It is determined whether it is before (shorter than) the display end time (indicated as “tkDisp + tkDispRange” in the drawing). If the timing at which the event data should be processed is after the display end time, the determination becomes NO, and after incrementing the value of the variable trk in step 1311, the above step 1
Return to 302. As a result, if the track data of track number 0 is currently the processing target, the processing target is moved to the track data of track number 1. On the other hand, otherwise, the determination is yes and the process moves to step 1312.

【0092】ステップ1312では、変数peの値で指
定されるイベントデータ中のデータが表すイベントの種
類がノートイベントか否か判定する。そのイベントの種
類がノートイベントであった場合、判定はYESとなっ
てステップ1313に移行する。そうでない場合には、
判定はNOとなってステップ1314に移行する。
In step 1312, it is determined whether the type of event represented by the data in the event data designated by the value of the variable pe is a note event. If the event type is a note event, the determination is yes and the process moves to step 1313. If not,
The determination is no and the process moves to step 1314.

【0093】ステップ1313では、処理すべきタイミ
ングが来ていないイベントデータを対象に、上記ステッ
プ1306の処理と同様にして、そのイベントデータを
表すノートオブジェクト320表示用の3次元空間デー
タを少なくとも生成する。その3次元空間データは、発
音を終了させるべきタイミングが表示終了時間よりも後
となっている場合、その表示終了時間の位置で前部32
0a、或いは後部320bをXY平面で切断させるか、
或いは、図5中のz1、或いはz2が表す時間(Z軸上
の座標値)をその表示終了時間と一致させる形で生成す
る。その次に移行するステップ1314では、変数pe
に、それまでの値で指定されるイベントデータの次に位
置するイベントデータのアドレス値を代入する。その後
は上記ステップ1304に戻る。
At step 1313, at least the three-dimensional space data for displaying the note object 320 representing the event data is generated for the event data for which the processing timing has not come, in the same manner as the processing at step 1306. . If the timing for ending the sound generation is after the display end time, the three-dimensional space data has the front portion 32 at the position of the display end time.
0a, or the rear part 320b is cut in the XY plane,
Alternatively, the time represented by z1 or z2 in FIG. 5 (coordinate value on the Z-axis) is generated so as to match the display end time. In the next step 1314, the variable pe is set.
Substitute the address value of the event data located next to the event data specified by the value up to that point. Then, the process returns to step 1304.

【0094】このようにして、イベント表示処理では、
処理すべきタイミングが現在の演奏時間から表示終了時
間までの間となっているイベントデータ(イベントの種
類として対象となるのはノートイベントのみである)の
ノートオブジェクト320の表示、及びスクロールを行
うようにしている。
In this way, in the event display processing,
Display and scroll the note object 320 of event data (only note events are targeted as event types) whose processing timing is between the current playing time and the display end time. I have to.

【0095】図14は、図12に示す楽音表示処理内で
ステップ1207として実行される表示オフバッファ処
理のフローチャートである。最後に図14を参照して、
その表示オフバッファ処理について詳細に説明する。
FIG. 14 is a flowchart of the display-off buffer process executed as step 1207 in the tone display process shown in FIG. Finally, referring to FIG.
The display off buffer process will be described in detail.

【0096】この表示オフバッファ処理では、配列変数
pDispOffの要素にアドレス値が保持されたイベ
ントデータ(イベントの種類はノートイベントのみであ
る)のみを処理対象にしている。それにより、処理すべ
きタイミングが来たイベントデータのノートオブジェク
ト320のスクロール表示は表示オフバッファ処理を実
行することで対応するようになっている。
In this display off-buffer process, only the event data (the type of event is only a note event) whose address value is held in the element of the array variable pDispOff is targeted for processing. Thereby, the scroll display of the note object 320 of the event data when the timing to be processed comes to be dealt with by executing the display off buffer process.

【0097】先ず、ステップ1401では、変数trk
に、変数LEFTTRKに保持されているトラック番号
(ここでは0である)を代入する。続くステップ140
2では、変数trkの値が、変数RIGHTTRKに保
持されているトラック番号(ここでは1である)以下か
否か判定する。変数trkの値は順次、インクリメント
することで、処理の対象とするトラックデータを切り換
えるようになっている。このことから、右手演奏用のト
ラックデータを対象にした処理が完了していた場合、判
定はNOとなり、ここで一連の処理を終了する。そうで
ない場合には、判定はYESとなってステップ1403
に移行する。
First, in step 1401, the variable trk
The track number (here, 0) held in the variable LEFTTRK is substituted into. Continued Step 140
In 2, it is determined whether or not the value of the variable trk is equal to or less than the track number (here, 1) held in the variable RIGHTTRK. The value of the variable trk is sequentially incremented to switch the track data to be processed. From this, if the processing for the right-handed track data has been completed, the determination is NO, and the series of processing is ended here. Otherwise, the determination is yes and step 1403.
Move to.

【0098】ステップ1403では、変数offに0を
代入する。次に移行するステップ1404では、変数t
rk、offの各値で指定される要素pDispOff
[trk][off]に保持された値を変数peに代入
する。その後に移行するステップ1405では、変数p
eの値がNULL(アドレス値ではない値)か否か判定
する。要素pDispOff[trk][off]にN
ULLが保持されていた場合、判定はYESとなってス
テップ1410に移行する。そうでない場合には、判定
はNOとなってステップ1406に移行する。
At step 1403, 0 is substituted for the variable off. In the next step 1404, the variable t
Element pDispOff specified by each value of rk and off
The value held in [trk] [off] is substituted into the variable pe. In step 1405, which is the subsequent step, the variable p
It is determined whether or not the value of e is NULL (a value that is not an address value). N in the element pDispOff [trk] [off]
If the ULL is held, the determination is yes and the process moves to step 1410. Otherwise, the determination is no and the process moves to step 1406.

【0099】ステップ1406では、変数peの値で指
定されるイベントデータ中の時間データが示す時間にそ
のイベントデータ中のゲートタイムデータが示す発音持
続時間を足した時間(発音終了時間)が、変数tkDi
spの値が示す現在の演奏時間より前か(短いか)否か
判定する。その発音終了時間が現在の演奏時間よりも前
であった場合、判定はYESとなり、ステップ1407
で要素pDispOff[trk][off]にNUL
Lを保持させた後、ステップ1410に移行する。そう
でない場合には、即ち変数peの値で指定されるイベン
トデータの発音オブジェクト302を全て消去させる必
要がない場合には、判定はNOとなってステップ140
8に移行する。
In step 1406, the time (sound generation end time) obtained by adding the sound generation duration indicated by the gate time data in the event data to the time indicated by the time data in the event data designated by the value of the variable pe is a variable. tkDi
It is determined whether it is before (shorter than) the current performance time indicated by the value of sp. If the pronunciation end time is before the current playing time, the determination is yes and step 1407
At element pDispOff [trk] [off]
After holding L, the process proceeds to step 1410. If not, that is, if it is not necessary to delete all the pronunciation objects 302 of the event data specified by the value of the variable pe, the determination becomes NO and step 140
Go to 8.

【0100】ステップ1408では、変数peの値で指
定されるイベントデータ中の時間データが示す時間が表
示終了時間よりも前か(短いか)否か判定する。そのイ
ベントデータの発音オブジェクト302の表示を開始す
べきタイミングが来ていないような場合、その条件は満
たされないことから、判定はNOとなってステップ14
10に移行する。そうでない場合には、判定はYESと
なってステップ1409に移行する。
In step 1408, it is determined whether or not the time indicated by the time data in the event data designated by the value of the variable pe is before (shorter than) the display end time. If it is not time to start displaying the pronunciation object 302 of the event data, the condition is not satisfied, so the determination is NO and step 14
Go to 10. Otherwise, the determination is yes and the process moves to step 1409.

【0101】ステップ1409では、そのイベントデー
タ中の時間データ、音高データ、ゲートタイムデータ、
及びベロシティデータから、そのイベントデータを表す
ノートオブジェクト320表示用の3次元空間データを
少なくとも生成する。このときには、ノートオブジェク
ト320の全てを表示させないのであれば、3次元空間
データは、現在の演奏時間の位置でノートオブジェクト
320をXY平面で切断させる形で生成する。それに続
くステップ1410では、変数offの値をインクリメ
ントする。その後はステップ1411に移行する。
At step 1409, the time data, pitch data, gate time data in the event data,
From the velocity data, at least three-dimensional space data for displaying the note object 320 representing the event data is generated. At this time, if not all of the note objects 320 are displayed, the three-dimensional space data is generated by cutting the note objects 320 on the XY plane at the position of the current playing time. In the subsequent step 1410, the value of the variable off is incremented. After that, the processing shifts to step 1411.

【0102】ステップ1411では、変数offの値が
変数MAXOFFに保持されたトラックデータを対象と
する最大同時発音数より小さいか否か判定する。変数o
ffの値は0を初期値として順次インクリメントする。
このことから、配列変数pDispoffの要素に保持
されたトラック番号が変数trkの値と一致するトラッ
クデータ中のイベントデータを示すアドレス値を全て読
み出して処理を行った場合、判定はNOとなり、ステッ
プ1412で変数trkの値をインクリメントした後、
上記ステップ1402に戻る。それにより、処理対象と
するトラックデータの切替を行う。一方、そうでない場
合には、判定はNOとなって上記ステップ1404に戻
る。それにより、値を読み出すべき要素を変更して、そ
れ以降の処理を同様に実行する。
In step 1411, it is determined whether or not the value of the variable off is smaller than the maximum polyphony number for the track data held in the variable MAXOFF. Variable o
The value of ff is sequentially incremented with 0 being the initial value.
From this, when all the address values indicating the event data in the track data in which the track number held in the element of the array variable pDisoffoff matches the value of the variable trk are read and processed, the determination becomes NO, and step 1412 After incrementing the value of the variable trk with
Returning to step 1402 above. Thereby, the track data to be processed is switched. On the other hand, otherwise, the determination is no and the process returns to step 1404. Thereby, the element whose value is to be read is changed, and the subsequent processing is similarly executed.

【0103】なお、本実施の形態では、スクロール面3
10の垂線に対して交差する方向を視点とすることで、
ユーザに与える違和感を低減させているが、視認性の低
下や強調の度合いなどが低下しても、それを低減させる
効果はノートオブジェクト320を3次元(立体)的に
表示させなくても得られることから、ノートオブジェク
ト320を2次元の図形で表示できるようにしても良
い。そのようにした場合には、音階軸上の幅で楽音のベ
ロシティ値を表すようにしても良い。
In this embodiment, the scroll surface 3
By setting the viewpoint as the direction intersecting with the 10 perpendiculars,
Although the discomfort given to the user is reduced, even if the visibility or the degree of emphasis is reduced, the effect of reducing it can be obtained without displaying the note object 320 three-dimensionally (stereoscopically). Therefore, the note object 320 may be displayed as a two-dimensional figure. In such a case, the velocity value of the musical tone may be represented by the width on the scale axis.

【0104】また、イベントについては、1つの曲デー
タ(図2参照)中で表されているものだけを表示させて
いるが、複数の曲データ中で表されているものを並行し
て同時に表示させるようにしても良い。例えばユーザが
行った演奏を曲データの形で保存して、その曲データ中
で表されているイベントを単独、或いは他の曲データ中
で表されているイベントと合わせて表示できるようにし
ても良い。処理対象とする曲データが複数となっても、
各曲データを対象として行う処理内容自体は処理対象と
する曲データが1つの場合と基本的には同じであること
から、詳細な説明は省略する。
Regarding the event, only the one represented by one song data (see FIG. 2) is displayed, but the one represented by a plurality of song data is displayed simultaneously in parallel. It may be allowed to. For example, the performance performed by the user may be stored in the form of song data so that the events represented in the song data can be displayed alone or in combination with the events represented in other song data. good. Even if there are multiple song data to be processed,
Since the processing content itself for each piece of music data is basically the same as the case where there is one piece of music data to be processed, detailed description is omitted.

【0105】本実施の形態は、電子楽器に搭載されたに
よる演奏情報表示装置に本発明を適用したものである。
しかし、本発明を適用できる演奏情報表示装置は、電子
楽器などに搭載されたものに限定されるわけではない。
本発明は、他の装置に搭載されていない専用の演奏情報
表示装置を含めて幅広く適用できるものである。表示部
105についても、外部の表示装置と接続できるのであ
れば無くても良い。
In the present embodiment, the present invention is applied to a performance information display device mounted on an electronic musical instrument.
However, the performance information display device to which the present invention can be applied is not limited to one mounted on an electronic musical instrument or the like.
INDUSTRIAL APPLICABILITY The present invention can be widely applied to a performance information display device for exclusive use which is not mounted on another device. The display unit 105 may also be omitted if it can be connected to an external display device.

【0106】上記演奏情報表示装置の動作を実現させる
ようなプログラムは、CD−ROM、DVD、或いは光
磁気ディスク等の記録媒体に記録させて配布しても良
い。或いは、公衆網等で用いられる伝送媒体を介して、
そのプログラムの一部、若しくは全部を配信するように
しても良い。そのようにした場合には、ユーザはプログ
ラムを取得して任意の演奏情報表示装置、或いはコンピ
ュータ等のデータ処理装置にロードすることにより、そ
の装置に本発明を適用させることができる。このことか
ら、記録媒体は、プログラムを配信する装置がアクセス
できるものであっても良い。
The program for realizing the operation of the performance information display device may be recorded in a recording medium such as a CD-ROM, a DVD or a magneto-optical disk and distributed. Alternatively, via a transmission medium used in a public network or the like,
Part or all of the program may be delivered. In such a case, the user can obtain the program and load the program on an arbitrary performance information display device or a data processing device such as a computer to apply the present invention to the device. Therefore, the recording medium may be accessible by the device that distributes the program.

【0107】[0107]

【発明の効果】以上、説明したように本発明は、楽音の
発音持続時間を含む複数の演奏情報を基に、表示すべき
オブジェクトの形状を決定し、その決定した形状でオブ
ジェクトをスクロール表示させる。このため、そのよう
にして表示させたオブジェクトを通して、発音させるべ
き楽音の音高やその発音期間以外の演奏情報をユーザに
提示することができる。
As described above, according to the present invention, the shape of the object to be displayed is determined based on a plurality of performance information including the sounding duration of the musical sound, and the object is scroll-displayed in the determined shape. . Therefore, it is possible to present the user with the pitch of the musical sound to be generated and the performance information other than the sounding period through the object thus displayed.

【0108】本発明は、楽音の発音持続時間を少なくと
も表現するオブジェクトを3次元(立体)的に表示させ
てスクロールさせる。3次元的に表示させたオブジェク
トは、2次元的に表示させたオブジェクトと比較して、
オブジェクト自体が持つ情報量が多くなって目立つよう
になるだけでなく、その形状を利用したオブジェクトの
表示のさせかたも行えるようになる。このため、ユーザ
に注目させるべき度合いが高いオブジェクトの視認性の
向上や強調を行うことができる。それにより、ユーザが
より迅速、且つ容易に把握できるように演奏情報を提示
することができる。
According to the present invention, an object representing at least the sounding duration of a musical sound is three-dimensionally (three-dimensionally) displayed and scrolled. An object displayed three-dimensionally is compared with an object displayed two-dimensionally,
Not only will the amount of information that the object itself has become more noticeable, but it will also be possible to display the object using its shape. For this reason, it is possible to improve or emphasize the visibility of an object to which the user should pay attention. Thereby, the performance information can be presented so that the user can grasp the information more quickly and easily.

【図面の簡単な説明】[Brief description of drawings]

【図1】本実施の形態による演奏情報表示装置を搭載し
た電子楽器の回路構成図である。
FIG. 1 is a circuit configuration diagram of an electronic musical instrument equipped with a performance information display device according to an embodiment.

【図2】曲データの構成を説明する図である。FIG. 2 is a diagram illustrating a structure of music data.

【図3】スクロール表示方法を説明する図である。FIG. 3 is a diagram illustrating a scroll display method.

【図4】ノートオブジェクトの表示形態を説明する図で
ある。
FIG. 4 is a diagram illustrating a display form of a note object.

【図5】ノートオブジェクトの形状を説明する図であ
る。
FIG. 5 is a diagram illustrating a shape of a note object.

【図6】他のスクロール表示方法を示す図である。FIG. 6 is a diagram showing another scroll display method.

【図7】ノートオブジェクトの変形例を示す図である。FIG. 7 is a diagram showing a modified example of a note object.

【図8】全体処理のフローチャートである。FIG. 8 is a flowchart of overall processing.

【図9】演奏処理のフローチャートである。FIG. 9 is a flowchart of performance processing.

【図10】オフバッファ演奏処理のフローチャートであ
る。
FIG. 10 is a flowchart of off-buffer performance processing.

【図11】イベント演奏処理のフローチャートである。FIG. 11 is a flowchart of an event performance process.

【図12】楽音表示処理のフローチャートである。FIG. 12 is a flowchart of a musical sound display process.

【図13】イベント表示処理のフローチャートである。FIG. 13 is a flowchart of event display processing.

【図14】表示オフバッファ処理のフローチャートであ
る。
FIG. 14 is a flowchart of a display off buffer process.

【符号の説明】[Explanation of symbols]

101 CPU 102 ROM 103 RAM 104 鍵盤 105 表示部 106 操作部 107 音源 108 サウンドシステム 301 表示鍵盤 302 実ノートオブジェクト 310 スクロール面 311 小節線 312 線 320 ノートオブジェクト 320a 前部 320b 後部 101 CPU 102 ROM 103 RAM 104 keyboard 105 display 106 Operation part 107 sound source 108 sound system 301 display keyboard 302 Real note object 310 scroll surface 311 bar line 312 lines 320 Note object 320a front 320b rear

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 演奏情報をスクロール表示によりユーザ
に提示する演奏情報表示装置において、 発音させるべき楽音の音高、該音高の楽音の発音開始タ
イミング、及び該楽音の発音持続時間を該楽音単位で表
す曲データを取得する曲データ取得手段と、 前記曲データ取得手段が取得した曲データ中で表されて
いる楽音に関する該楽音の発音持続時間を含む複数の演
奏情報の各内容に基づく形状のオブジェクトを表示装置
上にスクロール表示させる演奏情報表示手段と、 を具備することを特徴とする演奏情報表示装置。
1. A performance information display device for presenting performance information to a user by scroll display, wherein a pitch of a musical tone to be generated, a sounding start timing of the musical tone at the pitch, and a sounding duration of the musical tone are united by the musical tone unit. And a shape based on each content of a plurality of performance information including a sounding duration of the musical sound represented by the musical composition data acquired by the musical composition data acquisition means. A performance information display device, comprising: performance information display means for scroll-displaying an object on a display device.
【請求項2】 前記演奏情報表示手段は、前記オブジェ
クトを3次元的に表示させて、該オブジェクトの形状で
前記複数の演奏情報を表現させる、 ことを特徴とする請求項1記載の演奏情報表示装置。
2. The performance information display means according to claim 1, wherein the performance information display means displays the object three-dimensionally and expresses the plurality of performance information in the shape of the object. apparatus.
【請求項3】 前記演奏情報表示手段は、前記オブジェ
クトにおいて、前記発音持続時間を長さで表す方向の交
差方向上の長さで前記楽音を発音させるべき音量を前記
複数の演奏情報の一つとして表現させる、 ことを特徴とする請求項2記載の演奏情報表示装置。
3. The performance information display means sets, in the object, a sound volume at which the musical sound is to be generated for a length on a crossing direction of the direction in which the sounding duration is expressed by one of the plurality of performance information. The performance information display device according to claim 2, wherein:
【請求項4】 前記演奏情報表示手段は、前記オブジェ
クトを配置する仮想的平面の垂線に対する交差方向を視
点にして、該オブジェクトを表示させる、 ことを特徴とする請求項1、2、または3記載の演奏情
報表示装置。
4. The performance information display means displays the object by viewing the object in a direction intersecting with a vertical line of a virtual plane on which the object is arranged. Performance information display device.
【請求項5】 前記演奏情報表示手段は、前記楽音の音
高が鍵盤の黒鍵に対応するか否かに応じて、前記オブジ
ェクトの表示形態を変更させる、 ことを特徴とする請求項1〜4の何れか1項に記載の演
奏情報表示装置。
5. The performance information display means changes the display form of the object according to whether or not the pitch of the musical tone corresponds to a black key of a keyboard. 4. The performance information display device according to any one of 4 above.
【請求項6】 演奏情報をスクロール表示によりユーザ
に提示する演奏情報表示装置において、 発音させるべき楽音の音高、該音高の楽音の発音開始タ
イミング、及び該楽音の発音持続時間を該楽音単位で表
す曲データを取得する曲データ取得手段と、 前記曲データ取得手段が取得した曲データ中で表されて
いる楽音の発音持続時間を少なくとも表現するオブジェ
クトを3次元的に表示装置上に表示させてスクロール表
示させる演奏情報表示手段と、 を具備することを特徴とする演奏情報表示装置。
6. A musical performance information display device for presenting musical performance information to a user by scroll display, wherein the pitch of a musical tone to be generated, the timing of starting the musical tone at the musical tone pitch, and the duration of the musical tone are generated in the musical tone unit. The three-dimensionally displayed on the display device, the music data acquisition means for acquiring the music data represented by, and the object for expressing at least the pronunciation duration of the musical sound represented in the music data acquired by the music data acquisition means. And a performance information display means for scroll-displaying the performance information display device.
【請求項7】 演奏情報をスクロール表示によりユーザ
に提示する演奏情報表示装置に実行させるプログラムで
あって、 発音させるべき楽音の音高、該音高の楽音の発音開始タ
イミング、及び該楽音の発音持続時間を該楽音単位で表
す曲データを取得する機能と、 前記取得する機能により取得した曲データ中で表されて
いる楽音に関する該楽音の発音持続時間を含む複数の演
奏情報の各内容に基づく形状のオブジェクトを表示装置
上にスクロール表示させる機能と、 を実現させるためのプログラム。
7. A program to be executed by a performance information display device for presenting performance information to a user in a scroll display, the pitch of a musical tone to be sounded, the timing of starting the production of the musical tone at the pitch, and the pronunciation of the musical tone. A function for acquiring song data representing a duration in units of the musical tones and based on each content of a plurality of performance information including a pronunciation duration of the musical tone related to the musical tone represented in the song data acquired by the function for acquiring A program that realizes the function of scroll-displaying shaped objects on the display device.
【請求項8】 演奏情報をスクロール表示によりユーザ
に提示する演奏情報表示装置に実行させるプログラムで
あって、 発音させるべき楽音の音高、該音高の楽音の発音開始タ
イミング、及び該楽音の発音持続時間を該楽音単位で表
す曲データを取得する機能と、 前記取得する機能により取得した曲データ中で表されて
いる楽音の発音持続時間を少なくとも表現するオブジェ
クトを3次元的に表示装置上に表示させてスクロール表
示させる機能と、 を実現させるためのプログラム。
8. A program to be executed by a performance information display device for presenting performance information to a user in a scroll display, the pitch of a musical tone to be sounded, the timing at which the musical tone at that pitch is started, and the pronunciation of the musical tone. A function for acquiring music data representing a duration in the musical tone unit, and an object representing at least the pronunciation duration of the musical sound represented in the music data acquired by the acquiring function are three-dimensionally displayed on the display device. A program that realizes the function of displaying and scrolling.
JP2001309074A 2001-10-04 2001-10-04 Playing information display device and program Withdrawn JP2003114674A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001309074A JP2003114674A (en) 2001-10-04 2001-10-04 Playing information display device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001309074A JP2003114674A (en) 2001-10-04 2001-10-04 Playing information display device and program

Publications (1)

Publication Number Publication Date
JP2003114674A true JP2003114674A (en) 2003-04-18

Family

ID=19128281

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001309074A Withdrawn JP2003114674A (en) 2001-10-04 2001-10-04 Playing information display device and program

Country Status (1)

Country Link
JP (1) JP2003114674A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004347703A (en) * 2003-05-20 2004-12-09 Kawai Musical Instr Mfg Co Ltd Music playing operation display device
JP2007322447A (en) * 2006-05-30 2007-12-13 Roland Corp Keyboard display device and keyboard display program
JP2009258291A (en) * 2008-04-15 2009-11-05 Yamaha Corp Sound data processing device and program
JP2015146035A (en) * 2015-04-06 2015-08-13 ヤマハ株式会社 Display control device, sound processing device, and program
JP2015152680A (en) * 2014-02-12 2015-08-24 ヤマハ株式会社 Music information processing device, program, and method
WO2016017623A1 (en) * 2014-07-28 2016-02-04 ヤマハ株式会社 Reference display device, reference display method, and program

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004347703A (en) * 2003-05-20 2004-12-09 Kawai Musical Instr Mfg Co Ltd Music playing operation display device
JP2007322447A (en) * 2006-05-30 2007-12-13 Roland Corp Keyboard display device and keyboard display program
JP4684168B2 (en) * 2006-05-30 2011-05-18 ローランド株式会社 Keyboard display device and keyboard display program
JP2009258291A (en) * 2008-04-15 2009-11-05 Yamaha Corp Sound data processing device and program
JP2015152680A (en) * 2014-02-12 2015-08-24 ヤマハ株式会社 Music information processing device, program, and method
WO2016017623A1 (en) * 2014-07-28 2016-02-04 ヤマハ株式会社 Reference display device, reference display method, and program
JP2016031395A (en) * 2014-07-28 2016-03-07 ヤマハ株式会社 Reference display device, and program
JP2015146035A (en) * 2015-04-06 2015-08-13 ヤマハ株式会社 Display control device, sound processing device, and program

Similar Documents

Publication Publication Date Title
JP6988343B2 (en) Singing voice editing support method and singing voice editing support device
JP3538242B2 (en) Score display device
JP2002082666A (en) Fingering formation display method, fingering formation display device and recording medium
JPH1040067A (en) Sound control system interlocking with operation of pointing device
US20070261539A1 (en) Music reproducing program and music reproducing apparatus
JP2003114674A (en) Playing information display device and program
JP3521838B2 (en) Performance operation display device and recording medium
JP3579927B2 (en) Automatic performance device
US8878044B2 (en) Processing device and method for displaying a state of tone generation apparatus
JP3843735B2 (en) Performance guide method, performance guide device and recording medium
JP3972899B2 (en) Music score display device
JP3899778B2 (en) Music score display device and recording medium
JP3105421B2 (en) Applied program controller
JP2003108119A (en) Playing information display device and program
JP2006267667A (en) Device for displaying musical note information and program
JP3528051B2 (en) Performance operation display device and recording medium
JP3121739B2 (en) Metronome simulator
JP5399831B2 (en) Music game system, computer program thereof, and method of generating sound effect data
JP3096221B2 (en) Music box simulator
JP3837994B2 (en) Musical score data conversion apparatus and recording medium
JP2003050577A (en) Playing operation display device and program
JP3873872B2 (en) Performance information recording apparatus and program
JP3052875B2 (en) Sequence data editing method and sequencer
JP2900750B2 (en) Music synthesizer
JP2002041034A (en) Display position information preparing method

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20041207