JP4475383B2 - Music learning device and music learning program - Google Patents
Music learning device and music learning program Download PDFInfo
- Publication number
- JP4475383B2 JP4475383B2 JP2003395347A JP2003395347A JP4475383B2 JP 4475383 B2 JP4475383 B2 JP 4475383B2 JP 2003395347 A JP2003395347 A JP 2003395347A JP 2003395347 A JP2003395347 A JP 2003395347A JP 4475383 B2 JP4475383 B2 JP 4475383B2
- Authority
- JP
- Japan
- Prior art keywords
- sound
- task
- root
- sounds
- answer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Electrically Operated Instructional Devices (AREA)
- Auxiliary Devices For Music (AREA)
Description
本発明は、パーソナルコンピュータを用いたDTM(デスクトップミュージック)装置や電子楽器などに用いて好適な音楽教習装置および音楽教習プログラムに関する。 The present invention relates to a music learning apparatus and a music learning program suitable for use in a DTM (desktop music) apparatus using a personal computer or an electronic musical instrument.
音楽教習をする装置として、例えば特許文献1には、問題音(任意の音高の楽音)をランダムに放音出題する問題出題手段と、放音出題された問題音の音高を演奏操作で解答する解答手段と、解答が正解すると過去に放音出題した問題音の数に新たな問題音の数を加えた数の問題音を問題出題手段からランダムに出題させる問題出題制御手段とを備え、正解する毎に放音出題数を増加させてランダムに出題させることによって、絶対音感を効果的に向上させる技術が開示されている。
As an apparatus for teaching music, for example,
ところで、上記特許文献1に開示の音楽教習装置は、放音出題された問題音の音高を演奏操作で回答し、その回答が正解する毎に放音出題数を増加させるだけなので、和音のように複音同時発音される音の構成音を聴き分ける能力を重点的に教習させることができない、という問題がある。
そこで本発明は、このような事情に鑑みてなされたもので、複音同時発音される音の構成音を聴き分ける能力を重点的に教習することができる音楽教習装置および音楽教習プログラムを提供することを目的としている。
By the way, the music learning apparatus disclosed in the above-mentioned
Therefore, the present invention has been made in view of such circumstances, and provides a music learning apparatus and a music learning program capable of focusing on the ability to listen to the constituent sounds of sounds that are simultaneously sounded. It is an object.
上記目的を達成するため、請求項1に記載の発明では、入力される根音及びコード種から特定される和音の構成音を課題音として出題する課題出題手段と、出題された課題音に対して回答音を入力する回答入力手段と、前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶手段と、前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計手段と、前記集計手段によって集計された根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定する判定手段と、前記判定手段により判定された、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との各音高を決定し、決定した音高で最初に根音を、続いて聴き分けが不得意な課題音を順番に発音させる訓練課題を、聴き取りを苦手とする根音毎に作成する訓練課題作成手段と、前記訓練課題作成手段により作成された訓練課題に対応した一連の訓練課題音の発音をして出題する訓練課題出題手段とを具備することを特徴とする。 In order to achieve the above object, according to the first aspect of the present invention, there is provided a problem setting means for setting a chord constituent sound specified from an input root sound and chord type as a problem sound, Answer input means for inputting the answer sound, task history storage means for storing the question sound that has been asked and the input answer sound for the task sound in a memory as a task history, and stored in the memory The total number of correct answers and the number of incorrect answers for each task sound from the corresponding task history, and the number of correct answers and the number of incorrect answers for each task sound for the root sounds calculated by the total means A determination means for determining a root sound that is not good at listening and a task sound that is not good at listening to the root sound; a root sound that is not good at listening and the root sound determined by the determination means; Not good at listening to For each root sound that is not good at listening, determine each pitch with the task sound, and then the training task to pronounce the root sound first at the determined pitch, and then the task sound that is not good at listening sequentially. A training task creating means for creating a series of training task sounds corresponding to the training task created by the training task creating means, and a training task questioning means for answering questions.
請求項2に記載の発明では、入力される根音及びコード種から特定される和音の構成音を課題音として出題する課題出題手段と、出題された課題音に対して回答音を入力する回答入力手段と、前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶手段と、前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計手段と、前記集計手段によって集計された根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定する判定手段と、前記判定手段により判定された、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との音高を決定し、両音を和音と見做して同時発音させる訓練課題を、聴き取りを苦手とする根音毎に作成する訓練課題作成手段と、前記訓練課題作成手段により作成された訓練課題に対応した一連の訓練課題音の発音をして出題する訓練課題出題手段とを具備することを特徴とする。 According to the second aspect of the present invention, there is a problem setting means for setting the chord constituent sound specified from the input root note and chord type as a problem sound, and an answer for inputting a response sound to the set problem sound Input means, task history storage means for storing the input task sound and the answer sound input to the task sound in a memory as a task history, and each task sound from the task history stored in the memory The total number of correct answers and the number of incorrect answers for each corresponding root sound, and the root sounds that are not good at listening from the number of correct answers and wrong answers for each task sound with respect to the root sounds counted by the total means And a task sound that is not good at listening to the root sound, and a root sound that is difficult to listen to and a root sound determined by the determination means that are difficult to hear. Decide the pitch of the task sound you are good at Training task creation means for creating a training task for generating both sounds simultaneously as a chord, for each root sound that is not good at listening, and a series of training tasks corresponding to the training task created by the training task creation means It is characterized by comprising a training task setting means for generating a training task sound.
請求項3に記載の発明では、入力される根音及びコード種から特定される和音の構成音を課題音として出題する課題出題手段と、出題された課題音に対して回答音を入力する回答入力手段と、前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶手段と、前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計手段と、前記集計手段の集計結果から聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音を判定する判定手段と、前記判定手段により判定された、聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音の内、和音として成立する根音および課題音を検索し、該当する根音および課題音で構成される和音の発音をして出題する和音出題手段とを具備することを特徴とする。
In the invention described in
請求項4に記載の発明では、入力される根音及びコード種から特定される和音の構成音を課題音とし出題する課題出題過程と、出題された課題音に対して回答音を入力する回答入力過程と、前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶過程と、前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計過程と、前記集計過程で集計された根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定する判定過程と、前記判定過程で判定された、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との各音高を決定し、決定した音高で最初に根音を、続いて聴き分けが不得意な課題音を順番に発音させる訓練課題を、聴き取りを苦手とする根音毎に作成する訓練課題作成過程と、前記訓練課題作成過程で作成された訓練課題に対応した一連の訓練課題音の発音をして出題する訓練課題出題過程とをコンピュータで実行させることを特徴とする。
In the invention according to
請求項5に記載の発明では、入力される根音及びコード種から特定される和音の構成音を課題音として出題する課題出題過程と、出題された課題音に対して回答音を入力する回答入力過程と、前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶過程と、前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計過程と、前記集計過程で集計された根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定する判定過程と、前記判定過程で判定された、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との音高を決定し、両音を和音と見做して同時発音させる訓練課題を、聴き取りを苦手とする根音毎に作成する訓練課題作成過程と、前記訓練課題作成過程で作成された訓練課題に対応した一連の訓練課題音の発音をして出題する訓練課題出題過程とをコンピュータで実行させることを特徴とする。
In the invention according to
請求項6に記載の発明では、入力される根音及びコード種から特定される和音の構成音を課題音として出題する課題出題過程と、出題された課題音に対して回答音を入力する回答入力過程と、前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶過程と、前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計過程と、前記集計過程の集計結果から聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音を判定する判定過程と、前記判定過程で判定された、聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音の内、和音として成立する根音および課題音を検索し、該当する根音および課題音で構成される和音の発音をして出題する和音出題過程とをコンピュータで実行させることを特徴とする。
In the invention described in
請求項1、4に記載の発明によれば、入力される根音及びコード種から特定される和音の構成音を課題音として出題し、この出題された課題音に対して回答音を入力するとともに、出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させておき、このメモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する。そして、根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定した後、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との各音高を決定し、決定した音高で最初に根音を、続いて聴き分けが不得意な課題音を順番に発音させる為、聴き取りが苦手な根音や聴き分けが不得意な課題音を1音ずつ聴かせることによって、複音同時発音される音の構成音を聴き分ける能力を重点的に教習することができる。 According to the first and fourth aspects of the present invention, the constituent sounds of the chords specified from the input root sounds and chord types are set as the task sounds, and the answer sounds are input to the set task sounds. In addition, the task sound that has been presented and the answer sound input to the task sound are stored in a memory as a task history, and the number of correct answers and wrong answers for each task sound are stored from the task history stored in the memory. Count the numbers for each corresponding root note. Then, after determining the root sound that is difficult to hear from the number of correct and incorrect answers for each task sound with respect to the root sound and the task sound that is not good at listening to the root sound, it is difficult to listen. Determine the pitch of the root sound to be played and the task sound that is not good at listening to the root sound, and then turn the root sound first at the determined pitch, followed by the task sound that is not good at listening To focus on the ability to hear the sounds of sounds that are pronounced simultaneously by listening to the root sounds that are not good at listening and the task sounds that are not good at listening one by one. Can do.
請求項2、5に記載の発明によれば、入力される根音及びコード種から特定される和音の構成音を課題音として出題し、この出題された課題音に対して回答音を入力するとともに、出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させておき、このメモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する。そして、根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定した後、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との各音高を決定し、両音を和音と見做して同時発音させる為、複音同時発音される音の構成音を聴き分ける能力を重点的に教習することができる。 According to the second and fifth aspects of the present invention, the constituent sounds of the chords specified from the input root sounds and chord types are set as the task sounds, and the answer sounds are input to the set task sounds. In addition, the task sound that has been presented and the answer sound input to the task sound are stored in a memory as a task history, and the number of correct answers and wrong answers for each task sound are stored from the task history stored in the memory. Count the numbers for each corresponding root note. Then, after determining the root sound that is difficult to hear from the number of correct and incorrect answers for each task sound with respect to the root sound and the task sound that is not good at listening to the root sound, it is difficult to listen. To determine the pitch of the root sound to be played and the task sound that is not good at listening to the root sound, and to consider both to be chords, You can learn the ability to listen to intensively.
請求項3、6に記載の発明によれば、入力される根音及びコード種から特定される和音の構成音を課題音として出題し、この出題された課題音に対して回答音を入力するとともに、出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させておき、このメモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計し、そこから聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音を判定する。そして、聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音の内、和音として成立する根音および課題音を検索し、該当する根音および課題音で構成される和音を発音するので、苦手な和音を聴き分ける能力を重点的に教習することができる。 According to the third and sixth aspects of the present invention, the constituent sounds of the chords specified from the input root sounds and chord types are set as the task sounds, and the answer sounds are input to the set task sounds. In addition, the task sound that has been presented and the answer sound input to the task sound are stored in a memory as a task history, and the number of correct answers and wrong answers for each task sound are stored from the task history stored in the memory. The number is counted for each corresponding root sound, and the root sound that is difficult to listen to and the task sound that is not good at listening to the root sound are determined. Then, search for root sounds and task sounds that are established as chords from root sounds that are not good at listening and task sounds that are not good at listening to the root sounds, and consist of the corresponding root sounds and task sounds As you play the chords that are played, you can focus on the ability to listen to the chords you are not good at.
本発明による音楽教習装置および音楽教習プログラムは、周知の電子楽器もしくはパーソナルコンピュータを用いたDTM(デスクトップミュージック)装置などに適用され得る。以下では、本発明による最良の実施形態について図面を参照して説明する。 The music learning apparatus and the music learning program according to the present invention can be applied to a known electronic musical instrument or a DTM (desktop music) apparatus using a personal computer. Hereinafter, the best embodiment according to the present invention will be described with reference to the drawings.
A.構成
(1)全体構成
図1は実施形態の全体構成を示すブロック図である。この図において、10は構成要素1〜7を備えたDTM(デクストップミュージック)装置、20はDTM装置10とMIDI接続される電子楽器である。電子楽器20は、DTM装置10からMIDI入力される課題音(もしくは訓練課題音)のノートデータを発音する一方、その発音された課題音(もしくは訓練課題音)を聴いたユーザの回答操作として鍵盤が押鍵された場合には、この押鍵された鍵に対応したノートデータを発生してDTM装置10にMIDI出力する。
A. Configuration (1) Overall Configuration FIG. 1 is a block diagram showing the overall configuration of the embodiment. In this figure, 10 is a DTM (Decker Music)
DTM装置10は問題モードおよび分析モードを有する。問題モードで動作するDTM装置10は複数の課題音の再生を電子楽器20側に指示し、一連の課題音を再生し終えた後、回答制限時間以内に回答操作が行われた場合に、その操作で入力された回答音を保存する。回答入力を終えると、再生された課題音と回答入力された回答音との比較結果に基づき算出される得点を画面表示する他、出題された課題音および回答された回答音を表す課題履歴を作成してデータベース登録する。
The DTM
一方、分析モードで動作するDTM装置10は、データベース登録された課題履歴を参照して課題の根音と、その根音に対する課題音(構成音)と、この課題音に対応して入力された回答音とを検索し、検索された根音および課題音(構成音)毎に、回答音の音高の適否を判断して根音に対する課題音(構成音)毎の正答数および誤答数を集計する。次に、集計結果から聴き取りを苦手とする根音およびその根音に対する課題音(構成音)の聴き分けの得手・不得手を表す判定結果を抽出し、その判定結果に基づき聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音(構成音)とを含む訓練課題音を作成し、作成した訓練課題音の再生/回答を行うことで構成音を聴き分ける能力を重点的に教習させる。
On the other hand, the DTM
(2)DTM装置10の構成
次に、図1を参照してDTM装置10の構成を説明する。図1において、1は装置各部を制御するCPUであり、本発明の要旨にかかわる処理動作については追って詳述する。2はプログラムエリアおよびデータエリアを有するROMである。ROM2のプログラムエリアには、CPU1が実行するメインルーチン、再生開始処理、回答処理、音階判定処理、集計処理、判定処理および課題音作成処理を含む各種制御プログラムが記憶される。ROM2のデータエリアには、後述のメインルーチン実行時に表示部7に画面表示される問題モード画面TMGおよび分析モード画面AMGの各画面データが記憶される。問題モード画面TMGおよび分析モード画面AMGの構成については追って詳述する。
(2) Configuration of
3はワークエリア、データエリアおよびバッファエリアを備えるRAMである。RAM3のワークエリアには、各種レジスタ・フラグデータが一時記憶される。RAM3のデータエリアには、課題情報管理テーブルT1、課題音管理テーブルT2、課題履歴管理データベースDB、回答音データテーブルT3、訓練課題情報管理テーブルT4および訓練課題音管理テーブルT5が設けられる。これらテーブルT1〜T5およびデータベースDBの構成については追って詳述する。RAM3のバッファエリアには、後述する再生開始処理や音階判定処理で用いられる各種バッファが設けられる。
A
MIDIインタフェース4は、CPU1の制御の下に、電子楽器20にMIDIデータをシリアル転送したり、電子楽器20側から送出されるMIDIデータを取り込む。マウス5は右ボタンおよび左ボタンを備え、例えば表示画面上に配置されるアイコンにマウスカーソルをポインティングさせた状態で左ボタンを押下する周知のクリック操作に応じてクリックイベントを発生させる。キーボード6はキー入力操作に応じたキーイベントを発生する。表示部7はLCDパネル等から構成され、CPU1から供給される表示制御信号に応じて、後述する問題モード画面TMGや分析モード画面AMGなどを画面表示する。
The
(3)画面構成
次に、図2〜図3を参照して問題モード画面TMGおよび分析モード画面AMGの構成を説明する。図2は問題モード画面TMGの一例を示す図である。問題モード画面TMGは後述する問題モード下で表示部7に画面表示される。図2において、E1は回答操作に用いる鍵盤表示エリアである。鍵盤表示エリアE1の回答操作とは、放音された出題音(課題音あるいは訓練課題音)の音高に一致する鍵位置にマウスカーソルをポインティングさせてマウス5をクリックする操作を言う。E2は出題音の音符を楽譜表示する出題表示エリア、E3は回答操作に応じて入力された回答音の音符を楽譜表示する回答表示エリアである。E4は問題回答の正解数で算出される得点を表示する得点表示エリアである。なお、本実施例では、上記の鍵盤表示エリアE1を用いた回答の他、キーボード6のキー操作による回答入力あるいは電子楽器20が備える鍵盤を用いた回答入力を可能にしている。
(3) Screen Configuration Next, the configuration of the problem mode screen TMG and the analysis mode screen AMG will be described with reference to FIGS. FIG. 2 is a diagram showing an example of the problem mode screen TMG. The problem mode screen TMG is displayed on the
IC1〜IC6はそれぞれマウス5によりクリック操作されるアイコンである。問題アイコンIC1はクリック操作に応じて出題開始を指示するイベントを発生する。分析アイコンIC2はクリック操作に応じて分析モードへの遷移を指示するイベントを発生する。もう一度聞くアイコンIC3はクリック操作に応じて出題音の再発音を指示するイベントを発生する。やめるアイコンIC4はクリック操作に応じて回答キャンセルを指示するイベントを発生する。次の問題へアイコンIC5はクリック操作に応じて設問更新を指示するイベントを発生する。決定アイコンIC6はクリック操作に応じて回答決定を指示するイベントを発生する。
IC1 to IC6 are icons that are clicked by the
図3は分析モード画面AMGの一例を示す図である。分析モード画面AMGは後述する分析モード下で表示部7に画面表示される。分析モード画面AMGでは、上述の問題モード画面TMGと同様、鍵盤表示エリアE1、出題表示エリアE2、回答表示エリアE3、もう一度聞くアイコンIC3、やめるアイコンIC4、次の問題へアイコンIC5および決定アイコンIC6を有する。分析モード画面AMGが問題モード画面TMGと相違する点は、根音選択枠W1、コード種選択枠W2およびアイコンIC7〜IC9を備えることにある。根音選択枠W1およびコード種類選択枠W2は、問題モードに遷移して出題される課題音(和音)の根音(ルート)およびコード種(タイプ)を選択する。テストアイコンIC7は、クリック操作に応じて、上記選択枠W1,W2で選択された根音とコード種とで指定される和音を問題モードで出題するよう指示するイベントを発生する。訓練アイコンIC8は、クリック操作に応じて訓練課題の出題開始を指示するイベントを発生する。分析開始アイコンIC9は、クリック操作に応じて回答分析の開始を指示するイベントを発生する。
FIG. 3 is a diagram showing an example of the analysis mode screen AMG. The analysis mode screen AMG is displayed on the
(4)データ構造
次に、図4〜図9を参照してRAM3のデータエリアに格納される課題情報管理テーブルT1、課題音管理テーブルT2、課題履歴管理データベースDB、回答音データテーブルT3、訓練課題情報管理テーブルT4および訓練課題音管理テーブルT5の各データ構造について説明する。
(4) Data structure Next, with reference to FIGS. 4-9, the task information management table T1, the task sound management table T2, the task history management database DB, the answer sound data table T3, and training that are stored in the data area of the
図4は課題情報管理テーブルT1のデータ構造を示すメモリマップである。課題情報管理テーブルT1は、課題の内容を表す課題データassign[0]〜assign[n]から構成される。一つの課題データassign[i]は、課題を識別する課題番号assign#(assign[i][0])、根音となる課題音を指定するポインタkey(assign[i][1])、回答制限時間limit(assign[i][2])、出題音数iNotes(assign[i][3])およびポインタpNote(assign[i][4])を有する。後述する課題音管理テーブルT2では、課題番号assign#で指定される複数の課題音データasNoteを記憶しており、その内の先頭の課題音データasNoteが上記ポインタpNote(assign[i][4])で指定される。 FIG. 4 is a memory map showing the data structure of the assignment information management table T1. The assignment information management table T1 is composed of assignment data assign [0] to assign [n] representing the contents of the assignment. One piece of assignment data assign [i] includes an assignment number assignment # (assign [i] [0]) that identifies the assignment, a pointer key (assign [i] [1]) that specifies the assignment sound that is the root note, and an answer. It has a time limit limit (assign [i] [2]), the number of questions iNotes (assign [i] [3]), and a pointer pNote (assign [i] [4]). The task sound management table T2 to be described later stores a plurality of task sound data asNote specified by the task number assign #, and the head task sound data asNote among them is the pointer pNote (assign [i] [4]. ).
図5は課題音管理テーブルT2のデータ構造を示すメモリマップである。課題音管理テーブルT2は、上述した課題データassignで定義される課題音の属性を表す課題音データasNote[0]〜asNote[n]から構成される。一つの課題音データasNote[i]は、識別番号asNote#(asNote[i][0])、課題番号assign#(asNote[i][1])、音高pitch(asNote[i][2])、再生開始時点からの経過時間で表される発音タイミングtime_on(asNote[i][3])、再生開始時点からの経過時間で表される消音タイミングtime_off(asNote[i][4])および次に再生する課題音データを指定するポインタpNextNote(asNote[i][5])を有する。 FIG. 5 is a memory map showing the data structure of the task sound management table T2. The task sound management table T2 is composed of task sound data asNote [0] to asNote [n] representing attributes of the task sound defined by the task data assignment described above. One task sound data asNote [i] includes an identification number asNote # (asNote [i] [0]), a task number assign # (asNote [i] [1]), and a pitch pitch (asNote [i] [2]). ), Sound generation timing time_on (asNote [i] [3]) represented by the elapsed time from the reproduction start time, mute timing time_off (asNote [i] [4]) represented by the elapsed time from the reproduction start time, and Next, it has a pointer pNextNote (asNote [i] [5]) for designating task sound data to be reproduced.
図6は課題履歴管理データベースDBのデータ構造を示すメモリマップである。課題履歴管理データベースDBは、出題した課題音とそれに回答した回答音とを履歴記憶するデータベースであり、課題履歴データtestHist[0]〜testHist[n]から構成される。一つの課題履歴データtestHist[i]は、識別番号Hist#(testHist[i][0])、課題番号assign#(testHist[i][1])、回答音数iNotes(testHist[i][2])、最初の回答音を指定するポインタpANote(testHist[i][3])および最初の課題音を指定するポインタpQNote(testHist[i][4])を有する。 FIG. 6 is a memory map showing the data structure of the assignment history management database DB. The task history management database DB is a database that stores history of question sounds that have been presented and answer sounds that have been answered, and includes task history data testHist [0] to testHist [n]. One piece of task history data testHist [i] includes an identification number Hist # (testHist [i] [0]), a task number assign # (testHist [i] [1]), and a response sound number iNotes (testHist [i] [2]. ], A pointer pANote (testHist [i] [3]) for designating the first answer sound and a pointer pQNote (testHist [i] [4]) for designating the first task sound.
図7は回答音データテーブルT3のデータ構造を示すメモリマップである。回答音データテーブルT3は、前述した課題情報管理テーブルT1(図4参照)を用いて出題された課題音について回答した回答音を格納するテーブルであり、回答音データansNote[0]〜ansNote[n]から構成される。一つ回答音データansNote[i]は、識別番号asNote#(ansNote[i][0])、課題番号assign#(ansNote[i][1])、音高pitch(ansNote[i][2])、再生開始時点からの経過時間で表される発音タイミングtime_on(ansNote[i][3])、再生開始時点からの経過時間で表される消音タイミングtime_off(ansNote[i][4])、対応する課題音データを示す課題音番号HitOrg(ansNote[i][5])および次の回答音データを指定するポインタpNextNote(ansNote[i][6])を有する。 FIG. 7 is a memory map showing the data structure of the answer sound data table T3. The answer sound data table T3 is a table that stores answer sounds that have been answered with respect to the task sounds that were set using the task information management table T1 (see FIG. 4). The answer sound data anNote [0] to ansNote [n ]. One answer sound data anNote [i] includes an identification number asNote # (ansNote [i] [0]), an assignment number assign # (ansNote [i] [1]), a pitch pitch (ansNote [i] [2]). ), Sound generation timing time_on (ansNote [i] [3]) represented by the elapsed time from the reproduction start time, mute timing time_off (ansNote [i] [4]) represented by the elapsed time from the reproduction start time, It has a task sound number HitOrg (ansNote [i] [5]) indicating the corresponding task sound data and a pointer pNextNote (ansNote [i] [6]) for designating the next answer sound data.
図8は訓練課題情報管理テーブルT4のデータ構造を示すメモリマップである。訓練課題情報管理テーブルT4は、訓練課題の内容を表す訓練課題データtrain[0]〜train[n]から構成される。一つの訓練課題データtrain[i]は、訓練課題番号train#(train[i][0])、根音となる課題音を指定するポインタkey(train[i][1])、回答制限時間limit(train[i][2])、出題音数iNotes(train[i][3])およびポインタpNote(train[i][4])を有する。後述する訓練課題音管理テーブルT5では、訓練課題番号train#で指定される複数の訓練課題音データtrNoteを記憶しており、その内の先頭の訓練課題音データtrNoteがポインタpNoteで指定される。 FIG. 8 is a memory map showing the data structure of the training task information management table T4. The training task information management table T4 is composed of training task data train [0] to train [n] representing the contents of the training task. One training task data train [i] includes a training task number train # (train [i] [0]), a pointer key (train [i] [1]) for specifying a task sound as a root sound, and a response time limit. limit (train [i] [2]), number of questions iNotes (train [i] [3]), and pointer pNote (train [i] [4]). In a training task sound management table T5 described later, a plurality of training task sound data trNote specified by the training task number train # is stored, and the first training task sound data trNote among them is specified by the pointer pNote.
図9は訓練課題音管理テーブルT5のデータ構造を示すメモリマップである。訓練課題音管理テーブルT5は、上述した訓練課題データtrainで定義される訓練課題音の属性を表す訓練課題音データtrNote[0]〜trNote[n]から構成される。一つの訓練課題音データtrNote[i]は、識別番号trNote#(trNote[i][0])、訓練課題番号train#(trNote[i][1])、音高pitch(trNote[i][2])、再生開始時点からの経過時間で表される発音タイミングtime_on(trNote[i][3])、再生開始時点からの経過時間で表される消音タイミングtime_off(trNote[i][4])および次に再生する訓練課題音データtrNoteを指定するポインタpNextNote(trNote[i][5])を有する。 FIG. 9 is a memory map showing the data structure of the training task sound management table T5. The training task sound management table T5 includes training task sound data trNote [0] to trNote [n] representing the attributes of the training task sound defined by the training task data train described above. One training task sound data trNote [i] includes an identification number trNote # (trNote [i] [0]), a training task number train # (trNote [i] [1]), and a pitch pitch (trNote [i] [ 2]), sound generation timing time_on (trNote [i] [3]) represented by the elapsed time from the playback start time, and mute timing time_off (trNote [i] [4] represented by the elapsed time from the playback start time) ) And a pointer pNextNote (trNote [i] [5]) for specifying training task sound data trNote to be reproduced next.
B.動作
次に、図10〜図30を参照して上記構成による実施形態の動作を説明する。
(1)メインルーチンの動作
DTM装置10において、メインルーチンが実行されると、CPU1は図10に示すステップSA1に進み、装置各部を初期化するイニシャライズを行った後、ステップSA2に進む。ステップSA2では、ROM2のデータエリアから画面データを読み出して問題モード画面TMG(図2参照)を表示部7に画面表示する。次いで、ステップSA3では、動作モードを表すフラグMODEに「0」をセットする。フラグMODEは「0」の場合に問題モードを、「1」の場合に分析モードを表す。したがって、このステップSA3では、問題モードをデフォルト設定している。以下では、問題モード下のメインルーチンの動作と、分析モード下のメインルーチンの動作とに分けて説明を進める。
B. Operation Next, the operation of the embodiment according to the above configuration will be described with reference to FIGS.
(1) Operation of Main Routine When the main routine is executed in the
<問題モード下の動作>
問題モードでは、ステップSA4の判断結果が「YES」になり、ステップSA5以降を実行する。ステップSA5〜SA16では、問題モード画面TMGにおけるアイコン操作に対応した処理を実行する。以下、問題モード画面TMGに配設される「問題アイコンIC1」、「決定アイコンIC6」、「もう一度聞くアイコンIC3」、「次の問題へアイコンIC5」、「やめるアイコンIC4」および「分析アイコンIC2」をそれぞれクリック操作した場合に実行される各動作を説明する。
<Operation in problem mode>
In the problem mode, the determination result in step SA4 is “YES”, and step SA5 and subsequent steps are executed. In steps SA5 to SA16, processing corresponding to the icon operation on the problem mode screen TMG is executed. Hereinafter, “question icon IC1”, “decision icon IC6”, “listen icon IC3”, “next question icon IC5”, “quit icon IC4” and “analysis icon IC2” arranged on the question mode screen TMG Each operation executed when each is clicked will be described.
a.問題アイコンIC1をクリック操作した場合
問題アイコンIC1をクリック操作すると、ステップSA5の判断結果が「YES」になり、ステップSA6に進み、ポインタiassignをゼロリセットする。続いて、ステップSA7では再生開始処理を実行する。再生開始処理では、後述するように、課題情報管理テーブルT1(図4参照)中でポインタiassignに対応した課題データassign[iassign]が指定する出題音数分の課題音データを、課題音管理テーブルT2(図5参照)を参照して再生する。次いで、ステップSA8では回答処理を実行する。回答処理では、後述するように、回答制限時間limit(assign[iassign][2])以内の回答操作が行われた場合、その操作に応じて生じる回答音のノートオン属性(音高pitch、発音タイミングtime_on、識別番号asNote#および課題番号assign#)とノートオフ属性(消音タイミングtime_off)とを回答音データテーブルT3(図7参照)に登録する。そして、回答制限時間limitを超えると、課題情報管理テーブルT1および回答音データテーブルT3を参照して、回答操作を終えた課題音および回答音を表す課題履歴データtestHistを作成して課題履歴管理データベースDB(図6参照)に登録する。
a. When the question icon IC1 is clicked on When the question icon IC1 is clicked on, the determination result in step SA5 becomes “YES”, the process proceeds to step SA6, and the pointer iassign is reset to zero. Subsequently, in step SA7, a reproduction start process is executed. In the reproduction start process, as will be described later, task sound data corresponding to the number of question sounds specified by the task data assign [iassign] corresponding to the pointer iassign in the task information management table T1 (see FIG. 4) is stored in the task sound management table. Playback is performed with reference to T2 (see FIG. 5). Next, in step SA8, an answer process is executed. In the answer processing, as will be described later, when an answer operation is performed within the answer limit time limit (assign [iassign] [2]), a note-on attribute (pitch pitch, pronunciation of the answer sound generated in response to the operation is performed. The timing time_on, the identification number asNote # and the assignment number assignment #) and the note-off attribute (silence timing time_off) are registered in the answer sound data table T3 (see FIG. 7). When the answer limit time limit is exceeded, the task information management table T1 and the answer sound data table T3 are referred to, and task history data testHist representing the task sound and answer sound for which the answer operation has been completed is created, and the task history management database Register in DB (see FIG. 6).
b.決定アイコンIC6をクリック操作した場合
問題アイコンIC1のクリック操作に応じて課題音が再生され、それに対応する回答音を入力し終えた後、決定アイコンIC6をクリック操作したとする。そうすると、ステップSA9の判断結果が「YES」となり、ステップSA10を介して音階判定処理を実行する。音階判定処理では、後述するように、再生された課題音と回答入力された回答音との比較結果に基づき算出される正解率を問題モード画面TMG(図2参照)の得点表示エリアE4に数値表示する。
b. When the decision icon IC6 is clicked, it is assumed that the task sound is reproduced in response to the click operation of the problem icon IC1 and the decision icon IC6 is clicked after inputting the corresponding answer sound. Then, the determination result in step SA9 is “YES”, and the scale determination process is executed via step SA10. In the scale determination processing, as will be described later, the correct answer rate calculated based on the comparison result between the reproduced task sound and the answer sound input as a response is numerically displayed in the score display area E4 of the question mode screen TMG (see FIG. 2). indicate.
c.もう一度聞くアイコンIC3をクリック操作した場合
もう一度聞くアイコンIC3をクリック操作すると、ステップSA11の判断結果が「YES」となり、上述したステップSA7に処理を戻して再び再生開始処理を実行する。この場合、前回再生した課題音、つまり前回と同一のポインタiassignに対応した課題データassign[iassign]が指定する出題音数分の課題音データを再生する。
c. When the click icon IC3 is clicked again When the click icon IC3 is clicked again, the determination result in step SA11 is “YES”, and the process returns to step SA7 to execute the reproduction start process again. In this case, task sound data reproduced the last time, that is, task sound data corresponding to the number of question sounds specified by the task data assign [iassign] corresponding to the same pointer iassign as the previous time is reproduced.
d.次の問題へアイコンIC5をクリック操作した場
次の問題へアイコンIC5をクリック操作すると、ステップSA12の判断結果が「YES」になり、ステップSA13に進み、ポインタiassignをインクリメントして歩進させてからステップSA7に処理を戻して再生開始処理を実行する。
d. When the icon IC5 is clicked to the next problem When the icon IC5 is clicked to the next problem, the determination result in step SA12 becomes “YES”, the process proceeds to step SA13, and the pointer iassign is incremented and stepped. The process returns to step SA7 to execute the reproduction start process.
e.やめるアイコンIC4をクリック操作した場合
やめるアイコンIC4をクリック操作すると、ステップSA16の判断結果が「YES」となり、メインルーチンを完了させる。
e. When the stop icon IC4 is clicked When the stop icon IC4 is clicked, the determination result in step SA16 is “YES”, and the main routine is completed.
f.分析アイコンIC2をクリック操作した場合
分析アイコンIC2をクリック操作すると、ステップSA14の判断結果が「YES」になり、ステップSA15に進み、フラグMODEを「1」にセットした後、前述したステップSA4に処理を戻す。そうすると、ステップSA4の判断結果が「NO」となり、図11に図示するステップSA17以降の分析モードに遷移する。
f. When the analysis icon IC2 is clicked When the analysis icon IC2 is clicked, the determination result in step SA14 is “YES”, the process proceeds to step SA15, the flag MODE is set to “1”, and the process proceeds to the above-described step SA4. To return. If it does so, the judgment result of step SA4 will be "NO", and it changes to the analysis mode after step SA17 shown in FIG.
<分析モード下の動作>
分析モードでは、ステップSA4の判断結果が「NO」になり、図11に示すステップSA17に処理を進める。ステップSA17では、ROM2のデータエリアから画面データを読み出して分析モード画面AMG(図3参照)を表示部7に画面表示する。次いで、ステップSA18〜SA31では、分析モード画面AMGにおけるアイコン操作に対応した処理を実行する。以下、「訓練アイコンIC8」、「決定アイコンIC6」、「もう一度聞くアイコンIC3」、「次の問題へアイコンIC5」、「分析開始アイコンIC9」、「やめるアイコンIC4」および「テストアイコンIC7」をそれぞれクリック操作した場合に分けて各動作を説明する。
<Operation under analysis mode>
In the analysis mode, the determination result in step SA4 is “NO”, and the process proceeds to step SA17 shown in FIG. In step SA17, the screen data is read from the data area of the
a.訓練アイコンIC8をクリック操作した場合
訓練アイコンIC8をクリック操作すると、ステップSA18の判断結果が「YES」になり、ステップSA19に進み、ポインタitrainをゼロリセットする。続いて、ステップSA20では、訓練課題情報管理テーブルT4(図8参照)中でポインタitrainに対応した訓練課題データtrain[itrain]が指定する出題音数分の訓練課題音を、訓練課題音管理テーブルT5(図9参照)を参照して再生する再生開始処理を実行する。そして、ステップSA21では回答処理を実行する。分析モード下の回答処理では、後述するように、回答制限時間limit(assign[iassign][1])以内の回答操作が行われた場合、その操作に応じて生じる回答音のノートオン属性(音高pitch、発音タイミングtime_on、識別番号asNote#および課題番号assign#)とノートオフ属性(消音タイミングtime_off)とを回答音データテーブルT3に登録する。
a. When the user clicks on the training icon IC8 When the user clicks on the training icon IC8, the determination result in step SA18 is “YES”, and the process proceeds to step SA19, where the pointer itrain is reset to zero. Subsequently, in step SA20, training task sounds corresponding to the number of questions specified by the training task data train [itrain] corresponding to the pointer itrain in the training task information management table T4 (see FIG. 8) are stored in the training task sound management table. A reproduction start process for reproduction is executed with reference to T5 (see FIG. 9). In step SA21, an answer process is executed. In the answer processing under the analysis mode, as will be described later, when an answer operation is performed within the answer limit time limit (assign [iassign] [1]), the note-on attribute (sound of the answer sound generated according to the operation is sounded. High pitch, pronunciation timing time_on, identification number asNote # and assignment number assignment #) and note-off attribute (silence timing time_off) are registered in the answer sound data table T3.
b.決定アイコンIC6をクリック操作した場合
訓練アイコンIC8のクリック操作に応じて訓練課題音が再生され、それに対応する回答音を入力し終えた後、決定アイコンIC6をクリック操作したとする。そうすると、ステップSA22の判断結果が「YES」となり、ステップSA23に進み、ポインタitrainに対応する訓練課題音データtrNote[itrain]および回答音データansNote[itrain]を、分析モード画面AMGの出題表示エリアE2および回答表示エリアE3にそれぞれ楽譜表示する表示処理を実行する。
b. When the determination icon IC6 is clicked, it is assumed that the training task sound is reproduced in response to the click operation of the training icon IC8, and after inputting the answer sound corresponding thereto, the determination icon IC6 is clicked. If it does so, the judgment result of step SA22 will become "YES", it progresses to step SA23, and training task sound data trNote [itrain] and answer sound data anNote [itrain] corresponding to the pointer itrain are displayed in the question display area E2 of the analysis mode screen AMG. Then, display processing for displaying the score in the answer display area E3 is executed.
c.もう一度聞くアイコンIC3をクリック操作した場合
もう一度聞くアイコンIC3をクリック操作すると、ステップSA24の判断結果が「YES」となり、上述したステップSA20に処理を戻して再生開始処理を実行する。この場合、前回再生した訓練課題音、つまり前回と同一のポインタitrainに対応した訓練課題データtrain[itrain]が指定する出題音数分の訓練課題音データtrNoteを再生する。
c. When the user clicks on the listen icon IC3 again When the user clicks on the listen icon IC3 again, the determination result in step SA24 is “YES”, and the process returns to step SA20 to execute the reproduction start process. In this case, training task sound data trNote corresponding to the number of question sounds specified by the training task data train [itrain] corresponding to the same pointer itrain as the previous training task sound is reproduced.
d.次の問題へアイコンIC5をクリック操作した場
次の問題へアイコンIC5をクリック操作すると、ステップSA25の判断結果が「YES」になり、ステップSA26に進み、ポインタitrainをインクリメントして歩進させてからステップSA20に処理を戻して再生開始処理を実行する。
d. When the icon IC5 is clicked to the next problem When the icon IC5 is clicked to the next problem, the determination result in step SA25 becomes “YES”, the process proceeds to step SA26, and the pointer itrain is incremented to be incremented. The process returns to step SA20 to execute the reproduction start process.
e.分析開始アイコンIC9をクリック操作した場合
分析開始アイコンIC9をクリック操作すると、ステップSA27の判断結果が「YES」になり、ステップSA28に進み、分析処理(後述する)を実行した後、ステップSA18に処理を戻す。
e. When the user clicks on the analysis start icon IC9 When the user clicks on the analysis start icon IC9, the determination result in step SA27 becomes “YES”, and the process proceeds to step SA28 to execute analysis processing (described later), and then processing to step SA18. To return.
f.やめるアイコンIC4をクリック操作した場合
やめるアイコンIC4をクリック操作すると、ステップSA31の判断結果が「YES」となり、メインルーチンを完了させる。
f. When the stop icon IC4 is clicked When the stop icon IC4 is clicked, the determination result in step SA31 is “YES”, and the main routine is completed.
g.テストアイコンIC7をクリック操作した場合
テストアイコンIC7をクリック操作すると、ステップSA29の判断結果が「YES」になり、ステップSA30に進み、フラグMODEを「0」にセットする。次いで、図12に示すステップSA32に進み、分析モード画面AMG中の根音選択枠W1にて根音が指定されているか否かを判断する。根音が指定されると、判断結果は「YES」となり、ステップSA33を介して根音指定時課題作成処理を実行する。
g. When the test icon IC7 is clicked When the test icon IC7 is clicked, the determination result in step SA29 becomes “YES”, the process proceeds to step SA30, and the flag MODE is set to “0”. Next, the process proceeds to step SA32 shown in FIG. 12, and it is determined whether or not a root sound is designated in the root sound selection frame W1 on the analysis mode screen AMG. When the root tone is designated, the determination result is “YES”, and the root tone designation task creation process is executed via step SA33.
根音指定時課題作成処理では、指定された根音とランダムに選択されるコード種とで定まる和音を出題する第1問目およびその和音を形成する根音と和音構成音とを順番に発音させる第2問目からなる課題を作成し、その内容を課題情報管理テーブルT1と課題音管理テーブルT2とに登録する。そして、根音指定時課題作成処理が完了すると、図10に示すステップSA2に処理を戻す。これにより、ユーザは根音指定時課題作成処理で作成した課題に基づき再生開始処理および回答処理を実行することによって、ユーザ自ら指定した根音を備える和音について聴き分けを教習することが可能になっている。 In the root note assignment task creation process, the first question that asks for a chord determined by the specified root note and a randomly selected chord type, and the root tone and the chord component that form the chord are generated in order. The problem which consists of the 2nd question to be made is created, and the content is registered into the problem information management table T1 and the problem sound management table T2. When the root tone designation task creation process is completed, the process returns to step SA2 shown in FIG. As a result, the user can learn to listen to the chords having the root tone specified by the user by executing the reproduction start processing and the answer processing based on the task created in the root note designation task creation processing. ing.
一方、根音選択枠W1にて根音が指定されていない場合には、上記ステップSA32の判断結果が「NO」となり、ステップSA34に進む。ステップSA34では、分析モード画面AMG中のコード種選択枠W2にてコード種が指定されているか否かを判断する。コード種が指定されていなければ、判断結果は「NO」になり、何も処理せずに図10に示すステップSA2に処理を戻して問題モードに遷移する。 On the other hand, if the root note is not designated in the root note selection frame W1, the determination result in Step SA32 is “NO”, and the flow proceeds to Step SA34. In step SA34, it is determined whether or not a code type is designated in the code type selection frame W2 on the analysis mode screen AMG. If the code type is not specified, the determination result is “NO”, and no processing is performed, and the process returns to step SA2 shown in FIG. 10 to shift to the problem mode.
これに対し、コード種が指定されると、上記ステップSA34の判断結果が「YES」となり、ステップSA35を介してコード種指定時課題作成処理を実行する。コード種指定時課題作成処理では、根音をC音として、指定されたコード種の和音を作成し、作成した和音を転回するかあるいは転調するかをランダムに選択する。転回が選択された場合にはその転回形をランダムに設定する。転調が選択された場合には転調度数をランダムに設定する。そして、転回もしくは転調された和音を出題する第1問目およびその和音を形成する根音と和音構成音とを順番に発音させる第2問目からなる課題を作成し、その内容を課題情報管理テーブルT1と課題音管理テーブルT2とに登録する。そして、コード種指定時課題作成処理が完了すると、図10に示すステップSA2に処理を戻す。これにより、ユーザはコード種指定時課題作成処理で作成した課題に基づき再生開始処理および回答処理を実行することによって、ユーザ自ら指定したコード種で転回された和音もしくは転調された和音について聴き分けを教習することが可能になっている。 On the other hand, when the code type is designated, the determination result in step SA34 is “YES”, and the code type designation task creation process is executed via step SA35. In the chord type designation task creation process, a chord of the designated chord type is created with the root tone as C tone, and whether the created chord is to be turned or transposed is randomly selected. When turning is selected, the turning form is set at random. When modulation is selected, the modulation frequency is set at random. Then, a task is created that includes a first question for turning or transposing a chord, and a second question for sequentially generating a root tone and a chord component sound that form the chord, and managing the content of the task information. Register in the table T1 and the task sound management table T2. When the code type designation task creation process is completed, the process returns to step SA2 shown in FIG. As a result, the user can listen to a chord that has been turned or transposed by a chord type that has been specified by the user by executing a playback start process and an answer process based on the assignment created in the chord type assignment assignment creation process. It is possible to learn.
(2)再生開始処理の動作
次に、図13〜図15を参照して、問題モード下で実行される再生開始処理の動作を説明する。上述したメインルーチンのステップSA7(図10参照)を介して本処理が実行されると、CPU1は図13に示すステップSB1に処理を進め、RAM3のバッファエリアに設けられるノートオフバッファOffBufを初期化する。次に、ステップSB2では、レジスタplaystartに現時刻をストアする。次いで、ステップSB3に進むと、課題情報管理テーブルT1(図4参照)において、ポインタiassignで指定される課題データassign[iassign][4](ポインタpNote)を読み出してレジスタpNoteにストアする。ステップSB4〜SB5では、検索ポインタiOffCnt、iOffBufCntをそれぞれゼロリセットする。続いて、ステップSB6では、ポインタiassignに対応した課題データassign[iassign][3]の出題音数iNotesと検索ポインタiOffCntとが一致したか否か、つまり出題し終えたかどうかを判断する。
(2) Operation of Playback Start Process Next, the operation of the playback start process executed under the problem mode will be described with reference to FIGS. When this processing is executed via step SA7 (see FIG. 10) of the main routine described above,
出題音数iNotes分の課題音を発音し終えていなければ、判断結果は「NO」になり、図14のステップSB7に処理を進める。ステップSB7では、現時刻からレジスタplaystartにストアされた時刻を減算してレジスタnowTimeにストアする。以後、レジスタnowTimeを再生時刻nowTimeと称す。そして、ステップSB8に進むと、再生時刻nowTimeが、課題音データasNote[pNote][3]の発音タイミングtime_onを過ぎているか否かを判断する。以下、再生時刻nowTimeが発音タイミングtime_onを過ぎている場合と過ぎていない場合とに分けて動作説明を進める。 If the task sounds corresponding to the number of questions iNotes have not been generated, the determination result is “NO”, and the process proceeds to step SB7 in FIG. In step SB7, the time stored in the register playstart is subtracted from the current time and stored in the register nowTime. Hereinafter, the register nowTime is referred to as a reproduction time nowTime. Then, in step SB8, it is determined whether or not the reproduction time nowTime has passed the sound generation timing time_on of the task sound data asNote [pNote] [3]. Hereinafter, the description of the operation will be made separately for the case where the reproduction time nowTime has passed the sound generation timing time_on and the case where it has not passed.
<発音タイミングtime_onを過ぎている場合>
再生時刻nowTimeが発音タイミングtime_onを過ぎていると、ステップSB8の判断結果は「YES」になり、ステップSB9に進む。ステップSB9では、音高pitch(asNote[pNote][2])を含む課題音のノートオンイベントを生成し、これをMIDIインタフェース4を介して電子楽器20側に送出して当該課題音を再生させる。課題音を再生させると、CPU1はステップSB10に処理を進め、ポインタiOffBufCntをインクリメントして歩進させ、続くステップSB11では、レジスタpNoteの値を、ポインタiOffBufCntで指定されるノートオフバッファOffBuf[iOffBufCnt]にストアする。次に、ステップSB12では、次に再生する課題音を指定するポインタpNextNote(asNote[pNote][6])を、ポインタpNoteにセットした後、図13に示すステップSB6に処理を戻す。
<When the pronunciation timing time_on has passed>
If the reproduction time nowTime has passed the sound generation timing time_on, the determination result in step SB8 is “YES”, and the flow proceeds to step SB9. In step SB9, a note-on event of the task sound including the pitch pitch (asNote [pNote] [2]) is generated and sent to the electronic
<発音タイミングtime_onを過ぎていない場合>
一方、再生時刻nowTimeが発音タイミングtime_onを過ぎていない場合には、前述したステップSB8(図14参照)の判断結果が「NO」になり、図15に示すステップSB13に進む。ステップSB13では、検索ポインタiOffをゼロリセットする。次いで、ステップSB14では、検索ポインタiOffに対応するノートオフバッファOffBuf[iOff]に消音済みを表すNULLデータが格納されているかどうかを判断する。消音済みを表すNULLデータが格納されていると、判断結果は「NO」となり、図13に示すステップSB6に処理を戻す。これに対し、ノートオフバッファOffBuf[iOff]に消音済みを表すNULLデータが格納されていなければ、上記ステップSB14の判断結果は「YES」になり、次のステップSB15に進む。
<When the pronunciation timing time_on has not passed>
On the other hand, when the reproduction time nowTime has not passed the sound generation timing time_on, the determination result in step SB8 (see FIG. 14) is “NO”, and the process proceeds to step SB13 shown in FIG. In step SB13, the search pointer iOff is reset to zero. Next, in step SB14, it is determined whether or not NULL data indicating mute is stored in the note-off buffer OffBuf [iOff] corresponding to the search pointer iOff. If NULL data indicating mute is stored, the determination result is “NO”, and the process returns to step SB6 shown in FIG. On the other hand, if NULL data indicating mute is not stored in the note-off buffer OffBuf [iOff], the determination result in step SB14 is “YES”, and the flow advances to next step SB15.
ステップSB15では、再生時刻nowTimeが、ノートオフバッファOffBuf[iOff]に格納されるポインタpNoteで指定される課題音データasNote[OffBuf[iOff]][4]の消音タイミングtime_offを過ぎているか否かを判断する。再生時刻nowTimeが消音タイミングtime_offを過ぎていなければ、判断結果は「NO」となり、ステップSB20に進み、検索ポインタiOffを歩進させた後、上述のステップSB14に処理を戻す。一方、再生時刻nowTimeが消音タイミングtime_offを過ぎていると、上記ステップSB15の判断結果が「YES」になり、ステップSB16に進む。 In step SB15, it is determined whether or not the reproduction time nowTime has passed the mute timing time_off of the task sound data asNote [OffBuf [iOff]] [4] specified by the pointer pNote stored in the note-off buffer OffBuf [iOff]. to decide. If the reproduction time nowTime has not passed the mute timing time_off, the determination result is “NO”, the process proceeds to step SB20, the search pointer iOff is incremented, and the process returns to step SB14 described above. On the other hand, if the reproduction time nowTime has passed the mute timing time_off, the determination result in Step SB15 is “YES”, and the flow proceeds to Step SB16.
ステップSB16では、音高pitch(asNote[offBuf[iOff]][2])を含む課題音のノートオフイベントを生成し、これをMIDIインタフェース4を介して電子楽器20側に送出して当該課題音を消音させる。こうして課題音を消音させると、CPU1はステップSB17に処理を進め、検索ポインタiOffに対応するノートオフバッファOffBuf[iOff]に消音済みを表すNULLデータを登録する。そして、ステップSB18に進み、ポインタiOffBufCntをデクリメントし、続くステップSB19ではポインタiOffCntをインクリメントする。この後、ステップSB20にて検索ポインタiOffをインクリメントして歩進させた後、上述のステップSB14に処理を戻す。
In step SB16, a note-off event of the task sound including the pitch pitch (asNote [offBuf [iOff]] [2]) is generated and sent to the electronic
このように、再生開始処理では、課題情報管理テーブルT1中でポインタiassignに対応した課題データassign[iassign][3]が指定する出題音数iNotes分の課題音データasNoteを課題音管理テーブルT2から読み出し、読み出した課題音データasNoteの発音タイミングtime_onに達する毎にノートオンイベントを、消音タイミングtime_offに達する毎にノートオフイベントをそれぞれ電子楽器20側に送出して課題音の発音/消音を指示する。そして、出題音数iNotes分の再生が完了すると、図12に示すステップSB6の判断結果が「YES」となり、本処理を完了させる。
As described above, in the reproduction start process, the task sound data asNote for the number of question sounds iNotes specified by the task data assign [iassign] [3] corresponding to the pointer iassign in the task information management table T1 is obtained from the task sound management table T2. A note-on event is sent to the electronic
さて一方、分析モード下で実行される再生開始処理は、上述した問題モード下の再生開始処理をほぼ同一なので、問題モードと相違する点を概説する。図11に図示するメインルーチンのステップSA20を介して分析モード下の再生開始処理が実行されると、CPU1は訓練課題情報管理テーブルT4(図8参照)中でポインタitrainに対応した訓練課題データtrain[itrain]が指定する出題音数iNote分の訓練課題音データtrNoteを訓練課題音管理テーブルT5(図9参照)から読み出し、読み出した訓練課題音データtrNoteの発音タイミングtime_onに達する毎にノートオンイベントを、消音タイミングtime_offに達する毎にノートオフイベントをそれぞれ電子楽器20側に送出して訓練課題音の発音/消音を指示し、出題音数iNote分の再生が完了すると、本処理を完了させる。
On the other hand, the playback start process executed in the analysis mode is almost the same as the playback start process in the problem mode described above, and therefore, the difference from the problem mode will be outlined. When the reproduction start processing in the analysis mode is executed via step SA20 of the main routine shown in FIG. 11, the
(3)回答処理の動作
次に、図16〜図19を参照して問題モード下で実行される回答処理の動作を説明する。前述したメインルーチンのステップSA8(図10参照)を介して本処理が実行されると、CPU1は図16に示すステップSC1に処理を進め、本処理で使用する一時バッファを初期化する。次いで、ステップSC2では、回答音入力数をカウントする回答入力カウンタiACをゼロリセットし、続くステップSC3では、レジスタIAnStartに現時刻をストアする。ステップSC4では、回答入力カウンタiACの値が、出題音数iNotes(assign[iassign][3])に一致しないかどうか、つまり出題音数iNotes分の回答音が入力されたか否かを判断する。出題音数iNotes分の回答音が入力された場合には、判断結果が「NO」になり、後述するステップSC7に進む。一方、出題音数iNotes分の回答音が入力されていないと、判断結果は「YES」になり、次のステップSC5に進む。
(3) Operation of Answer Processing Next, the operation of answer processing executed under the problem mode will be described with reference to FIGS. When this process is executed via step SA8 (see FIG. 10) of the main routine described above, the
ステップSC5では、現時刻からレジスタIAnStartにストアされた時刻を減算してレジスタNowTimeにストアする。以後、レジスタNowTimeを回答時刻NowTimeと称す。そして、ステップSC6に進むと、回答時刻NowTimeが回答制限時間limit(assign[iassign][2])を超えているか否かを判断する。回答時刻NowTimeが回答制限時間limitを超えると、判断結果は「YES」となり、ステップSC7に進み、現在のモードが問題モードであるかどうかを判断する。問題モード下では判断結果が「YES」となり、図17のステップSC8以降を実行し、分析モード下では判断結果が「NO」になり、本処理を完了させる。 In step SC5, the time stored in the register IAnStart is subtracted from the current time and stored in the register NowTime. Hereinafter, the register NowTime is referred to as an answer time NowTime. Then, when the process proceeds to step SC6, it is determined whether or not the answer time NowTime exceeds the answer limit time limit (assign [assign] [2]). When the answer time NowTime exceeds the answer limit time limit, the determination result is “YES”, and the process advances to step SC7 to determine whether or not the current mode is the problem mode. Under the problem mode, the determination result is “YES”, and step SC8 and subsequent steps in FIG. 17 are executed. Under the analysis mode, the determination result is “NO”, and this processing is completed.
一方、回答時刻NowTimeが回答制限時間limitを超えなければ、上記ステップSC6の判断結果が「NO」になり、図18に示すステップSC17に処理を進める。いま例えば、問題モード下において回答時刻NowTimeが回答制限時間limit以内であったとする。そうすると、CPU1は図18に示すステップSC17〜SC19において回答操作の種別を判別する。すなわち、ステップSC17では音高指定用に割当てられたキーボード6のキー操作であるか否かを判断し、ステップSC18では問題モード画面TMGに表示される鍵盤表示エリアE1において課題音と同じ音高と判断した鍵にマウスカーソルをポインティングしてマウス5でクリックするマウス操作であるか否かを判断し、ステップSC19では電子楽器20側に配設される鍵盤の鍵操作で発生するMIDIノートイベント入力であるか否かを判断する。次に、ステップSC20に進むと、CPU1は回答操作に応じて発生したイベントに含まれる音高をレジスタpitchにストアする。続いて、ステップSC21では、回答操作に応じて発生したイベントがノートオンイベントであるかどうかを判断する。
On the other hand, if the answer time NowTime does not exceed the answer limit time limit, the determination result in step SC6 is “NO”, and the process proceeds to step SC17 shown in FIG. For example, it is assumed that the answer time NowTime is within the answer limit time limit under the problem mode. Then,
ノートオンイベントであると、判断結果は「YES」になり、ステップSC22に進み、フラグIsNoteOnに「1」をセットしてノートオンイベントである旨を表す。一方、ノートオフイベントであれば、上記ステップSC21の判断結果が「NO」となり、ステップSC23に進み、フラグIsNoteOnに「0」をセットしてノートオフイベントである旨を表す。そして、ステップSC24では、フラグIsNoteOnが「1」、つまり回答操作がノートオンイベントであるかどうかを判断する。以下、回答操作が発音を指示するノートオンイベントの場合と、消音を指示するノートオフイベントの場合とに分けて動作説明を進める。 If it is a note-on event, the determination result is “YES”, the process proceeds to step SC22, and the flag IsNoteOn is set to “1” to indicate a note-on event. On the other hand, if it is a note-off event, the determination result in step SC21 is “NO”, the process proceeds to step SC23, and “0” is set in the flag IsNoteOn to indicate that it is a note-off event. In step SC24, it is determined whether the flag IsNoteOn is “1”, that is, whether the answer operation is a note-on event. In the following, description of the operation is divided into a case where the answer operation is a note-on event instructing pronunciation and a case-off event instructing mute.
<ノートオンイベントの場合>
回答操作が発音を指示するノートオンイベントであると、ステップSC24の判断結果が「YES」になり、ステップSC25以降に処理を進める。ステップSC25〜SC27では、入力される回答音のノートオン属性を回答音データテーブルT3(図7参照)に登録する。すなわち、ステップSC25では、レジスタpitchに格納される音高を、回答入力カウンタiACの値に対応した回答音データansNote[iAC][2](音高pitch)にストアする。ステップSC26では、回答時刻NowTimeを回答音データansNote[iAC][3](発音タイミングtime_on)にストアする。ステップSC27では、回答入力カウンタiACの値を回答音データansNote[iAC][0](識別番号asNote#)にストアする。続いて、ステップSC28では、ポインタiassignの値を回答音データansNote[iAC][1](課題番号assign#)にストアする。そして、ステップSC29に進み、回答入力カウンタiACを歩進させた後、前述のステップSC4(図16参照)に処理を戻す。
<Note-on event>
If the answer operation is a note-on event instructing pronunciation, the determination result in step SC24 is “YES”, and the process proceeds to step SC25 and subsequent steps. In steps SC25 to SC27, the note-on attribute of the input answer sound is registered in the answer sound data table T3 (see FIG. 7). That is, in step SC25, the pitch stored in the register pitch is stored in answer tone data anNote [iAC] [2] (pitch pitch) corresponding to the value of the answer input counter iAC. In step SC26, the answer time NowTime is stored in the answer sound data anNote [iAC] [3] (sound generation timing time_on). In step SC27, the value of the answer input counter iAC is stored in the answer sound data anNote [iAC] [0] (identification number asNote #). Subsequently, in step SC28, the value of the pointer iassign is stored in the answer sound data anNote [iAC] [1] (task number assign #). Then, the process proceeds to step SC29, the answer input counter iAC is incremented, and the process returns to the above-described step SC4 (see FIG. 16).
<ノートオフイベントの場合>
一方、回答操作が消音を指示するノートオフイベントであると、図18に示すステップSC24の判断結果が「NO」になり、CPU1は図19に示すステップSC30以降に処理を進め、入力される回答音のノートオフ属性を回答音データテーブルT3に登録する。すなわち、ステップSC30では、検索ポインタiをゼロリセットし、続くステップSC31〜SC36では、回答入力カウンタiACの値に達するまで検索ポインタiを歩進させながら、回答音データテーブルT3中でansNote[i][4](消音タイミングtime_off)が空き状態(NULL)の回答音データを検索し、該当する回答音データansNote[i][4]に消音タイミングとなる回答時刻NowTimeをストアすると共に、一つ前の回答音データansNote[i−1][0](識別番号asNote#)を、回答音データansNote[i][6](ポインタpNextNote)にストアした後、前述のステップSC4(図16参照)に処理を戻す。
<In case of note-off event>
On the other hand, if the answer operation is a note-off event instructing mute, the determination result in step SC24 shown in FIG. 18 is “NO”, and
さて、こうした回答操作に対応した処理を終えて、回答時刻NowTimeが回答制限時間limitを超えたとする。そうすると、図16に示すステップSC6およびステップSC7の各判断結果が「YES」となり、CPU1は図17に示すステップSC8以降を実行して課題履歴データtestHistを作成して課題履歴管理データベースDB(図6参照)に登録する。すなわち、ステップSC8では、課題履歴管理データベースDBの空きエリアを検索し、その空きエリアを示す値をポインタiHistにストアする。次に、ステップSC9では、そのポインタiHistに対応した課題履歴管理データベースDB中の課題履歴データtestHist[iHist][1](課題番号assign#)にポインタiassignをストアする。続いて、ステップSC10では、ポインタiHistに対応した課題履歴管理データベースDB中の課題履歴データtestHist[iHist][2](回答音数iNotes)に回答入力カウンタiACの値をストアする。次いで、ステップSC11では、ポインタiassignに対応した課題データassign[iassign][4](ポインタpNote)を課題情報管理テーブルT1(図4参照)から読み出し、これを最初の課題音を指定するポインタpQNoteとして課題履歴データtestHist[iHist][4]にストアする。
Now, it is assumed that the processing corresponding to the answer operation is finished and the answer time NowTime exceeds the answer limit time limit. Then, each determination result in step SC6 and step SC7 shown in FIG. 16 is “YES”, and
そして、ステップSC12〜SC16では、ポインタiAを歩進させながら、回答音データテーブルT3(図7参照)中からポインタiassignに合致する課題番号assign#の回答音データansNote[iA][1]を検索し、該当する回答音データansNote[iA][0](識別番号asNote#)を、最初の回答音を指定するポインタpANoteとして課題履歴データtestHist[iHist][3]にストアすると共に、ポインタiassignが指し示す課題履歴管理データベースDB中の空きエリア番号を、識別番号Hist#として課題履歴データtestHist[i][0]にストアして本処理を終える。 Then, in steps SC12 to SC16, the answer sound data anNote [iA] [1] of the task number assign # matching the pointer iassign is searched from the answer sound data table T3 (see FIG. 7) while the pointer iA is incremented. The corresponding answer sound data anNote [iA] [0] (identification number asNote #) is stored in the task history data testHist [iHist] [3] as a pointer pANote for designating the first answer sound, and the pointer iassign is The vacant area number in the indicated task history management database DB is stored in the task history data testHist [i] [0] as the identification number Hist #, and this processing is completed.
以上のように、問題モード下で実行される回答処理では、回答制限時間limit以内に回答音を入力する回答操作(キー操作、マウス操作およびMIDI入力のいずれか)が行われると、その操作のイベントがノートオンイベントであれば、回答音のノートオン属性(音高pitch、発音タイミングtime_on、識別番号asNote#および課題番号assign#)を回答音データテーブルT3に登録し、一方、ノートオフイベントであると、回答音のノートオフ属性(消音タイミングtime_off)を回答音データテーブルT3に登録する。そして、回答時刻NowTimeが回答制限時間limitを超えると、課題情報管理テーブルT1および回答音データテーブルT3を参照して、回答操作を終えた課題音とそれに対応する回答音とを表す課題履歴データtestHistを作成して課題履歴管理データベースDBに登録する。
これに対し、分析モード下で実行される回答処理では、課題履歴データtestHistを作成せず、回答制限時間limit以内の回答操作に応じて、回答音のノートオン・ノートオフ属性を訓練課題音管理データテーブルT5に登録するようになっている。
As described above, in the answer process executed in the question mode, when an answer operation (key operation, mouse operation, or MIDI input) is performed within the answer limit time limit, an answer sound is input. If the event is a note-on event, the note-on attributes (pitch pitch, pronunciation timing time_on, identification number asNote #, and assignment number assign #) of the answer sound are registered in the answer sound data table T3. If there is, the note-off attribute (silence timing time_off) of the answer sound is registered in the answer sound data table T3. Then, when the answer time NowTime exceeds the answer limit time limit, the task history data testHist indicating the task sound for which the answer operation has been completed and the corresponding answer sound are referenced with reference to the task information management table T1 and the answer sound data table T3. Is registered in the assignment history management database DB.
On the other hand, in the answer processing executed in the analysis mode, the task history data testHist is not created, and the note-on / note-off attribute of the answer sound is managed according to the answer operation within the answer limit time limit. Registration is made in the data table T5.
(4)音階判定処理の動作
次に、図20を参照して音階判定処理の動作を説明する。前述したメインルーチンのステップSA10(図10参照)を介して本処理が実行されると、CPU1は図20に示すステップSD1に処理を進める。ステップSD1では、ポインタiassignで指定される課題情報管理テーブルT1中の課題データassign[iassign][4](ポインタpNote)を読み出してレジスタpNoteにストアする。次いで、ステップSD2では、正解数をカウントするカウンタiHitCntをゼロリセットし、続くステップSD3では、レジスタpNoteの値で指定される課題音データasNote[pNote][0]の識別番号asNote#を課題音管理テーブルT2から読み出してレジスタasNoteにストアする。
(4) Operation of Scale Determination Process Next, the operation of the scale determination process will be described with reference to FIG. When this process is executed via step SA10 (see FIG. 10) of the main routine described above,
そして、ステップSD4では、レジスタasNoteにストアした識別番号asNote#で指定される回答音データテーブルT3中の回答音データansNote[asNote][2]と課題音管理テーブルT2中の課題音データasNote[pNote][2]とが一致するか、すなわち回答音の音高pitchと課題音の音高pitchとが一致するか否かを判断する。回答音の音高pitchと課題音の音高pitchとが一致する正解時には判断結果が「YES」になり、ステップSD5に進み、カウンタiHitCntを歩進させた後、ステップSD6に進む。 In step SD4, the answer sound data anNote [asNote] [2] in the answer sound data table T3 specified by the identification number asNote # stored in the register asNote and the task sound data asNote [pNote] in the task sound management table T2. ] [2], that is, whether the pitch pitch of the answer sound and the pitch pitch of the task sound match. If the answer pitch is correct and the pitch pitch of the task sound matches, the determination result is “YES”, the process proceeds to step SD5, the counter iHitCnt is incremented, and the process proceeds to step SD6.
一方、回答音の音高pitchと課題音の音高pitchとが一致しない不正解時には上記ステップSD4の判断結果が「NO」になり、ステップSD6に進む。ステップSD6では、レジスタpNoteの値で指定される課題音データasNote[pNote][5]のポインタpNoteが、空き状態を表すデータNULLでないか否か、すなわち、全ての課題音について判定し終えたかどうかを判断する。判定し終えていなければ、判断結果は「YES」になり、ステップSD7に進み、レジスタpNoteの値で指定される課題音データasNote[pNote][5]のポインタpNoteを、レジスタpNoteにセットする。こうして、レジスタpNoteの内容が更新されると、CPU1は上述のステップSD3に処理を戻す。
On the other hand, when the answer pitch is incorrect and the pitch pitch of the task sound does not match, the determination result in step SD4 is “NO”, and the process proceeds to step SD6. In step SD6, it is determined whether or not the pointer pNote of the task sound data asNote [pNote] [5] specified by the value of the register pNote is not data NULL indicating the empty state, that is, whether all the task sounds have been determined. Judging. If the determination is not completed, the determination result is “YES”, the process proceeds to step SD7, and the pointer pNote of the task sound data asNote [pNote] [5] designated by the value of the register pNote is set in the register pNote. Thus, when the contents of the register pNote are updated, the
以後、上述したステップSD3〜SD7による回答判定を出題音数分繰り返し、全ての課題音について回答判定し終えると、ステップSD6の判断結果が「NO」になり、ステップSD8に進む。ステップSD8では、カウンタiHitCntが累算した正解数と、ポインタiassignで指定される課題データassign[iassign][3]の出題音数iNoteとの比から算出される正解率(得点)をレジスタiScoreにストアする。そして、ステップSD9では、レジスタiScoreにストアされた正解率を回答画面RGの得点表示エリアE4に数値表示して本処理を終える。 Thereafter, the above-described answer determinations at steps SD3 to SD7 are repeated for the number of questions, and when the answer determination is completed for all the task sounds, the determination result at step SD6 becomes “NO”, and the process proceeds to step SD8. In step SD8, the correct answer rate (score) calculated from the ratio between the number of correct answers accumulated by the counter iHitCnt and the number of question sounds iNote of the assignment data assign [assign] [3] specified by the pointer iassign is stored in the register iScore. Store. In step SD9, the accuracy rate stored in the register iScore is numerically displayed in the score display area E4 of the answer screen RG, and the process is completed.
(5)分析処理の動作
次に、分析モード下で実行される分析処理の動作を説明する。分析モード画面AMG(図3参照)の分析開始アイコンIC9がクリック操作されると、前述したメインルーチンのステップSA28(図11参照)を介して本処理が実行される。そうすると、CPU1は図21に示すステップSE1〜SE3を介して集計処理、判定処理および課題音作成処理を順次実行する。
(5) Operation of Analysis Process Next, the operation of the analysis process executed in the analysis mode will be described. When the analysis start icon IC9 on the analysis mode screen AMG (see FIG. 3) is clicked, this processing is executed via step SA28 (see FIG. 11) of the main routine described above. If it does so, CPU1 will sequentially perform a total process, a determination process, and a task sound creation process via step SE1-SE3 shown in FIG.
(6)集計処理の動作
次に、図22〜図23を参照して集計処理の動作を説明する。上述した分析処理(図21参照)のステップSE1を介して本処理が実行されると、CPU1は図22に示すステップSE1−1に処理を進め、ポインタiAをゼロリセットし、続くステップSE1−2では課題履歴管理データベースDB(図6参照)から集計対象を検索し終えたか否かを判断する。検索終了していなければ、判断結果は「NO」になり、ステップSE1−3に進む。ステップSE1−3では、先ずポインタiAに応じて課題履歴管理データベースDBから課題履歴データtestHist[iA][1]の課題番号assign#を読み出す。次に、この課題番号assign#で指定される課題データassign[testHist[iA][1]][1](根音となる課題音を指定するポインタkey)を課題情報管理テーブルT1(図4参照)から読み出してレジスタpNBaseにストアする。次いで、レジスタpNBaseの値で指定される課題音データasNote[pNBase][2]、すなわち根音と見做された課題音の音高pithについてmod12(12の剰余値)を算出してレジスタbIndexにストアする。12の剰余値は根音の音名を表す値に相当する。音名を表す値とは、C,C#,D,…,A#,Bまでの12音に対応させた「0」〜「11」である。したがって、ステップSE1−3では、根音(ルート)の音名を表す値をレジスタbIndexに格納する。
(6) Operation of Aggregation Process Next, the operation of the aggregation process will be described with reference to FIGS. When this process is executed via step SE1 of the above-described analysis process (see FIG. 21),
続いて、ステップSE1−4では、ポインタiAに応じて課題履歴管理データベースDBから課題履歴データtestHist[iA][3](最初の回答音を指定するポインタpANote)を読み出してレジスタpNAnsにストアする。ステップSE1−5では、回答音データテーブルT3において、レジスタpNAnsの値(最初の回答音を指定するポインタpANote)で指定される回答音データansNote[pNAns][5](課題音番号HitOrg)が空き状態を表すデータNULLであるか否か、すなわちレジスタpNAnsで指定される回答音データに対応する課題音データの有無を判断する。対応する課題音データが存在しなければ、判断結果は「YES」となり、後述のステップSE1−11に進む。 Subsequently, in step SE1-4, task history data testHist [iA] [3] (pointer pANote specifying the first answer sound) is read from the task history management database DB in accordance with the pointer iA and stored in the register pNAns. In step SE1-5, the answer sound data anNote [pNAns] [5] (task sound number HitOrg) specified by the value of the register pNAns (pointer pANote specifying the first answer sound) is empty in the answer sound data table T3. It is determined whether or not there is data NULL representing the state, that is, the presence or absence of task sound data corresponding to the answer sound data specified by the register pNAns. If there is no corresponding task sound data, the determination result is “YES”, and the flow proceeds to step SE1-11 described later.
一方、対応する課題音データが存在すると、判断結果は「NO」になり、ステップSE1−6に進む。ステップSE1−6では、レジスタpNAnsの値で指定される回答音データansNote[pNAns][5]の課題音番号HitOrgをレジスタPNQstにストアする。続いて、ステップSE1−7では、レジスタpNAnsの値に対応する回答音データansNote[pNAns][2]の音高pitchをレジスタAPitchに、レジスタpNQstの値に対応する課題音データasNote[pNQst][2]の音高pitchをレジスタQPitchにそれぞれストアする。また、ステップSE1−7では、レジスタQPitchに格納される課題音の音高pitchについてmod12(12の剰余値)を算出してレジスタqIndexにストアする。つまり、課題音の音名に対応する値をレジスタqIndexに格納する。次いで、ステップSE1−8では、レジスタAPitchに格納された回答音の音高と、レジスタQPitchに格納された課題音の音高とが一致しているか否かを判断する。 On the other hand, if the corresponding task sound data exists, the determination result is “NO”, and the flow proceeds to step SE1-6. In Step SE1-6, the task sound number HitOrg of the answer sound data ansNote [pNAns] [5] specified by the value of the register pNAns is stored in the register PNQst. Subsequently, in step SE1-7, the pitch pitch of the answer sound data anNote [pNAns] [2] corresponding to the value of the register pNAns is stored in the register APitch, and the task sound data asNote [pNQst] [p] is stored in the register pNQst. 2] is stored in the register QPitch. In step SE1-7, mod12 (remainder value of 12) is calculated for the pitch pitch of the task sound stored in the register QPitch and stored in the register qIndex. That is, a value corresponding to the note name of the task sound is stored in the register qIndex. Next, in step SE1-8, it is determined whether or not the pitch of the answer sound stored in the register APitch matches the pitch of the task sound stored in the register QPitch.
レジスタAPitchに格納された回答音の音高と、レジスタQPitchに格納された課題音の音高とが一致した場合には、上記ステップSE1−8の判断結果が「YES」となり、ステップSE1−9に進み、正答集計カウンタOKCnt[bIndex][qIndex]を歩進させる。一方、回答音の音高と課題音の音高とが一致しない場合には、上記ステップSE1−8の判断結果が「NO」となり、ステップSE1−10に進み、誤答集計カウンタMSCnt[bIndex][qIndex]を歩進させる。 If the pitch of the answer sound stored in the register APitch matches the pitch of the task sound stored in the register QPitch, the determination result in step SE1-8 is “YES”, and step SE1-9 Then, the correct answer total counter OKCnt [bIndex] [qIndex] is incremented. On the other hand, if the pitch of the answer sound does not match the pitch of the task sound, the determination result in step SE1-8 is “NO”, the process proceeds to step SE1-10, and the error answer counting counter MSCnt [bIndex] Step [qIndex].
ここで、正答集計カウンタOKCnt[bIndex][qIndex]および誤答集計カウンタMSCnt[bIndex][qIndex]とは、それぞれ図23に示すように、12行12列の配列要素を備えるカウンタである。行要素はレジスタbIndexに格納される根音の音名で指定される。列要素はレジスタqIndexに格納される課題音(構成音)の音名で指定される。なお、ここで言う構成音とは、根音に対する課題音を便宜的に和音構成音と見做した場合の呼称である。
したがって、例えば根音および課題音(構成音)が共に「C音」の場合には、ポインタbIndex、qIndexはいずれも「0」となる。そして、課題音と同一の正しい音高の回答音であれば、正答集計カウンタOKCnt[0][0]がインクリメントされ、課題音とは異なる誤った音高の回答音であれば、誤答集計カウンタMSCnt[0][0]がインクリメントされる。
Here, the correct answer counting counter OKCnt [bIndex] [qIndex] and the incorrect answer counting counter MSCnt [bIndex] [qIndex] are counters each having an array element of 12 rows and 12 columns, as shown in FIG. The row element is designated by the pitch name of the root note stored in the register bIndex. The column element is designated by the pitch name of the task sound (component sound) stored in the register qIndex. The component sound referred to here is a name when the task sound for the root sound is regarded as a chord component sound for convenience.
Therefore, for example, when the root sound and the task sound (component sound) are both “C sound”, the pointers bIndex and qIndex are both “0”. If the answer sound has the same correct pitch as the task sound, the correct answer counting counter OKCnt [0] [0] is incremented, and if the answer sound has an incorrect pitch different from the task sound, the incorrect answer count is calculated. Counter MSCnt [0] [0] is incremented.
こうして、根音および課題音(構成音)毎に、入力された回答音の音高の適否を正答集計カウンタOKCntおよび誤答集計カウンタMSCntで集計すると、CPU1はステップSE1−11に進み、レジスタpNAnsの値に対応する回答音データansNote[pNAns][6](次の回答音データを指定するポインタpNextNote)が空き状態を表すデータNULLであるか否か、すなわち次の回答音データの有無を判断する。次の回答音データが存在すると、判断結果は「NO」になり、ステップSE1−12に進み、回答音データansNote[pNAns][6]のポインタpNextNoteをレジスタpNAnsにストアし、当該レジスタpNAnsの内容を更新させた後、上述したステップSE1−5に処理を戻す。
Thus, for each root sound and task sound (component sound), the appropriateness of the pitch of the input answer sound is counted by the correct answer counting counter OKCnt and the incorrect answer counting counter MSCnt. Then, the
これに対し、次の回答音データが存在しない場合には、上記ステップSE1−11の判断結果が「YES」となり、ステップSE1−13に進む。ステップSE1−13では、次の課題音データとそれに対応する回答音データとを読み出す為、ポインタiAを歩進させた後、上述のステップSE1−2に処理を戻す。そして、歩進されたポインタiAに対応した課題履歴データtestHist[iA]が課題履歴管理データベースDBに登録されていない場合には、集計対象の検索が終了したとして、ステップSE1−2の判断結果が「YES」になり、本処理を完了させる。 On the other hand, if the next answer sound data does not exist, the determination result in step SE1-11 is “YES”, and the flow proceeds to step SE1-13. In step SE1-13, in order to read the next task sound data and the corresponding answer sound data, the pointer iA is incremented, and the process returns to step SE1-2. Then, when the task history data testHist [iA] corresponding to the stepped pointer iA is not registered in the task history management database DB, the search result of the step SE1-2 is determined as the search for the aggregation target is finished. It becomes "YES" and completes this processing.
以上のように、集計処理では、課題履歴管理データベースDBに登録される課題履歴データtestHistを参照して課題の根音と、その根音に対して構成音となる課題音と、この課題音に対応して入力された回答音とを検索する。そして、検索された根音および課題音(構成音)毎に、回答音の音高の適否を判断し、その結果を正答集計カウンタOKCntおよび誤答集計カウンタMSCntで集計する。これにより、正答集計カウンタOKCntには根音に対する課題音(構成音)毎の正答数が集計され、一方、誤答集計カウンタMSCntには根音に対する課題音(構成音)毎の誤答数が集計される。 As described above, in the tabulation process, the task history data testHist registered in the task history management database DB is referred to, the task root sound, the task sound that is a constituent sound for the root sound, and the task sound. The corresponding answer sound is searched for. Then, for each searched root sound and task sound (component sound), it is determined whether or not the pitch of the answer sound is appropriate, and the result is summed up by the correct answer count counter OKCnt and the incorrect answer count counter MSCnt. As a result, the correct answer counting counter OKCnt counts the number of correct answers for each task sound (component sound) with respect to the root sound, while the incorrect answer total counter MSCnt has the number of incorrect answers for each task sound (component sound) with respect to the root sound. Aggregated.
(7)判定処理の動作
次に、図24〜図25を参照して判定処理の動作を説明する。前述した分析処理(図21参照)のステップSE2を介して本処理が実行されると、CPU1は図24に示すステップSE2−1に処理を進め、正答集計カウンタOKCnt[i][j]および誤答集計カウンタMSCnt[i][j]の内容を読み出すための行ポインタiおよび列ポインタjをゼロリセットする。続いて、ステップSE2−2では、行ポインタiが「12」より小さいか否か、つまり行走査中であるかどうかを判断する。行ポインタiが「12」より小さく行走査中であると、判断結果は「YES」になり、ステップSE2−3に進み、正答数をカウントするカウンタbaseOKおよび回答数をカウントするカウンタbaseCntをそれぞれゼロリセットする。
(7) Operation of Determination Process Next, the operation of the determination process will be described with reference to FIGS. When this process is executed through step SE2 of the analysis process (see FIG. 21) described above,
次いで、ステップSE2−4では、列ポインタjが「12」より小さいか否か、つまり列走査中であるかどうかを判断する。列走査中であると、判断結果は「YES」になり、ステップSE2−7〜SE2−18を実行し、行走査および列走査に応じて正答集計カウンタOKCnt[i][j]および誤答集計カウンタMSCnt[i][j]を読み出し、その内容から聴き取りが「非常に得意な音」、「得意な音」、「普通の音」、「やや不得意な音」、「不得意な音」および「出題されていない音」のいずれであるかを判定した結果をレジスタNote[i][j]にストアする。 Next, in step SE2-4, it is determined whether or not the column pointer j is smaller than “12”, that is, whether or not column scanning is being performed. If the column scanning is in progress, the determination result is “YES”, and steps SE2-7 to SE2-18 are executed. Correct answer counting counter OKCnt [i] [j] and incorrect answer counting are performed according to the row scanning and the column scanning. The counter MSCnt [i] [j] is read out, and listening from the contents is “very good sound”, “good sound”, “normal sound”, “slightly poor sound”, “poor sound” ”Or“ non-questioned sound ”is stored in the register Note [i] [j].
すなわち、正答集計カウンタOKCnt[i][j]から読み出される正答数と、誤答集計カウンタMSCnt[i][j]から読み出される誤答数とが共に「0」の場合には、ステップSE2−7の判断結果が「YES」となり、ステップSE2−17に進む。この場合、レジスタNote[i][j]には「出題無し」を表す初期値「0」がストアされたままになる。
正答集計カウンタOKCnt[i][j]から読み出される正答数が、誤答集計カウンタMSCnt[i][j]から読み出される誤答数の4倍以上ある場合には、ステップSE2−8の判断結果が「YES」となり、ステップSE2−9に進み、「非常に得意な音」を表す判定値「5」をレジスタNote[i][j]にストアする。
That is, if both the number of correct answers read from the correct answer counting counter OKCnt [i] [j] and the number of incorrect answers read from the incorrect answer counting counter MSCnt [i] [j] are “0”, step SE2- The determination result of 7 is “YES”, and the flow proceeds to Step SE2-17. In this case, the initial value “0” representing “no question” is stored in the register Note [i] [j].
If the number of correct answers read from the correct answer counting counter OKCnt [i] [j] is four times or more than the number of incorrect answers read from the incorrect answer counting counter MSCnt [i] [j], the determination result of step SE2-8 Becomes “YES”, and the process advances to step SE2-9 to store the determination value “5” representing “very good sound” in the register Note [i] [j].
正答集計カウンタOKCnt[i][j]から読み出される正答数が、誤答集計カウンタMSCnt[i][j]から読み出される誤答数の3/2倍以上ある場合には、ステップSE2−10の判断結果が「YES」となり、ステップSE2−11に進み、「得意な音」を表す判定値「4」をレジスタNote[i][j]にストアする。
正答集計カウンタOKCnt[i][j]から読み出される正答数が、誤答集計カウンタMSCnt[i][j]から読み出される誤答数の2/3倍以上ある場合には、ステップSE2−12の判断結果が「YES」となり、ステップSE2−13に進み、「普通の音」を表す判定値「3」をレジスタNote[i][j]にストアする。
If the number of correct answers read from the correct answer counting counter OKCnt [i] [j] is 3/2 times or more than the number of incorrect answers read from the incorrect answer counting counter MSCnt [i] [j], step SE2-10 The determination result is “YES”, the process proceeds to step SE2-11, and the determination value “4” representing “good sound” is stored in the register Note [i] [j].
If the number of correct answers read from the correct answer counting counter OKCnt [i] [j] is 2/3 times or more than the number of incorrect answers read from the incorrect answer counting counter MSCnt [i] [j], step SE2-12 is executed. The determination result is “YES”, the process proceeds to step SE2-13, and the determination value “3” representing “ordinary sound” is stored in the register Note [i] [j].
正答集計カウンタOKCnt[i][j]から読み出される正答数が、誤答集計カウンタMSCnt[i][j]から読み出される誤答数の1/4倍以上ある場合には、ステップSE2−14の判断結果が「YES」となり、ステップSE2−15に進み、「やや不得意な音」を表す判定値「2」をレジスタNote[i][j]にストアする。
正答集計カウンタOKCnt[i][j]から読み出される正答数が、誤答集計カウンタMSCnt[i][j]から読み出される誤答数の1/4倍より少ない場合には、ステップSE2−14の判断結果が「NO」となり、ステップSE2−16に進み、「不得意な音」を表す判定値「1」をレジスタNote[i][j]にストアする。
When the number of correct answers read from the correct answer counting counter OKCnt [i] [j] is more than 1/4 times the number of incorrect answers read from the incorrect answer counting counter MSCnt [i] [j], step SE2-14 is executed. The determination result is “YES”, the process proceeds to step SE2-15, and the determination value “2” representing “slightly poor sound” is stored in the register Note [i] [j].
If the number of correct answers read from the correct answer counting counter OKCnt [i] [j] is less than 1/4 times the number of incorrect answers read from the incorrect answer counting counter MSCnt [i] [j], step SE2-14 is executed. The determination result is “NO”, the process proceeds to step SE2-16, and the determination value “1” representing “unsatisfactory sound” is stored in the register Note [i] [j].
以上のようにして、正答集計カウンタOKCnt[i][j]および誤答集計カウンタMSCnt[i][j]の値に応じた判定値をレジスタNote[i][j]に登録し終えると、CPU1はステップSE2−17に進み、正答集計カウンタOKCnt[i][j]の値をカウンタbaseOKに加算して、行ポインタiが指定する根音における正答数を累算する。また、ステップSE2−17では、正答集計カウンタOKCnt[i][j]の値と誤答集計カウンタMSCnt[i][j]の値とを加算した結果をカウンタbaseCntに加えて回答数を累算する。次いで、ステップSE2−18では、列ポインタjを歩進させて上述のステップSE2−4に処理を戻す。
As described above, when the determination values according to the values of the correct answer counting counter OKCnt [i] [j] and the incorrect answer counting counter MSCnt [i] [j] are registered in the register Note [i] [j], The
以後、列ポインタjが「12」に達するまで上述したステップSE2−7〜SE2−18を繰り返す。そして、列ポインタjが「12」に達し、行ポインタiが指定する根音についての列走査が完了すると、ステップSE2−4の判断結果が「NO」となり、ステップSE2−5に進み、カウンタbaseOKに格納される正答数とカウンタbaseCntに格納される回答数との比から行ポインタiが指定する根音における正答率(%値)をレジスタBaseRatio[i]にストアする。次に、ステップSE2−6では、行ポインタiを歩進させてステップSE2−2に処理を戻す。以後、行ポインタiが「12」に達するまで上述したステップSE2−2〜SE2−18を繰り返す。そして、行ポインタiが「12」に達して行走査が完了すると、ステップSE2−2の判断結果が「NO」となり、図25に示すステップSE2−19に進む。 Thereafter, steps SE2-7 to SE2-18 are repeated until the column pointer j reaches “12”. When the column pointer j reaches “12” and the column scan for the root tone specified by the row pointer i is completed, the determination result in step SE2-4 becomes “NO”, and the process proceeds to step SE2-5, where the counter baseOK is obtained. The correct answer rate (% value) at the root tone specified by the row pointer i is stored in the register BaseRatio [i] from the ratio between the number of correct answers stored in the counter and the number of answers stored in the counter baseCnt. Next, in step SE2-6, the row pointer i is incremented and the process returns to step SE2-2. Thereafter, steps SE2-2 to SE2-18 are repeated until the row pointer i reaches “12”. When the row pointer i reaches “12” and the row scanning is completed, the determination result in step SE2-2 becomes “NO”, and the flow proceeds to step SE2-19 shown in FIG.
次いで、ステップSE2−19〜SE2−27では、レジスタBaseRatio[0]〜[11]に格納された各根音毎の正答率(%値)を参照し、正答率の低い順に根音を並べ替える。正答率の低い順に並べ替えられた根音の内、最も正答率の低い根音から順にnBase(所定値)分の根音をレジスタBaseRslt[0]〜[nBase]に登録する。したがって、レジスタBaseRslt[0]に最も正答率の低い(最も苦手な)根音の音名を表す値が格納される。こうして、不得意なnBase(所定値)分の根音をレジスタBaseRslt[0]〜[nBase]に登録し終えると、ステップSE2−20の判断結果が「NO」になり、ステップSE2−28以降を実行する。 Next, in Steps SE2-19 to SE2-27, the correct answer rate (% value) for each root tone stored in the register BaseRatio [0] to [11] is referred to, and the root sounds are rearranged in the descending order of the correct answer rate. . Of the root sounds rearranged in order of the correct answer rate, root sounds corresponding to nBase (predetermined value) are registered in the registers BaseRslt [0] to [nBase] in order from the root sound having the lowest correct answer rate. Therefore, a value representing the pitch name of the root note with the lowest correct answer rate (the weakest) is stored in the register BaseRslt [0]. In this way, after registering root sounds for nBase (predetermined value), which are not good, in the registers BaseRslt [0] to [nBase], the determination result in step SE2-20 becomes “NO”. Execute.
ステップSE2−28〜SE2−31では、聴き分けの得手・不得手を判定した結果を保持するレジスタNote[i][j]の内から、レジスタBaseRslt[0]〜[nBase]に対応する内容、すなわちレジスタNote[BaseRslt[0]][0〜11]〜Note[BaseRslt[nBase]][0〜11]を抽出し、これをレジスタNoteRslt[0][0〜11]〜NoteRslt[nBase][0〜11]にコピーする。したがって、NoteRslt[0][0〜11]〜NoteRslt[nBase][0〜11]には、聴き取りが苦手な根音に対応した課題音(構成音)の聴き分けの得手・不得手を表す判定結果が格納される。 In steps SE2-28 to SE2-31, the contents corresponding to the registers BaseRslt [0] to [nBase] out of the registers Note [i] [j] that hold the result of determining whether or not they are good at listening, That is, the registers Note [BaseRslt [0]] [0-11] to Note [BaseRslt [nBase]] [0-11] are extracted, and the registers NoteRslt [0] [0-11] to NoteRslt [nBase] [0 To 11]. Therefore, NoteRslt [0] [0-11] to NoteRslt [nBase] [0-11] represent the pros and cons of discriminating the task sound (component sound) corresponding to the root sound that is difficult to listen to. The determination result is stored.
上述したように、判定処理では、根音に対する課題音(構成音)毎の正答数が集計された正答集計カウンタOKCntと、根音に対する課題音(構成音)毎の誤答数が集計された誤答集計カウンタMSCntとの内容に基づき、根音に対する課題音(構成音)毎の聴き分けの得手・不得手を判定し、その判定結果をレジスタNote[i][j]にストアすると共に、根音毎の正答率(%値)をレジスタBaseRatio[i]にストアする。そして、レジスタBaseRatio[j]に格納された各根音毎の正答率(%値)を参照して正答率の低い順に根音を並べ替え、その上位nBase(所定値)分をレジスタBaseRslt[nBase]に登録する。この後、聴き分けの得手・不得手を判定した結果を保持するレジスタNote[i][j]の内から、レジスタBaseRslt[nBase]に対応する内容をレジスタNoteRslt[0][0〜11]〜NoteRslt[nBase][0〜11]にコピーして、聴き取りが苦手な根音に対応した課題音(構成音)の聴き分けの得手・不得手を表す判定結果を抽出する。 As described above, in the determination process, the correct answer counting counter OKCnt in which the number of correct answers for each task sound (component sound) with respect to the root sound and the number of erroneous answers for each task sound (component sound) with respect to the root sound are totaled. Based on the content of the incorrect answer counting counter MSCnt, the merits and demerits of listening for each task sound (component sound) with respect to the root sound are determined, and the determination result is stored in the register Note [i] [j]. The correct answer rate (% value) for each root tone is stored in the register BaseRatio [i]. Then, with reference to the correct answer rate (% value) for each root tone stored in the register BaseRatio [j], the root sounds are rearranged in order from the lowest correct answer rate, and the upper nBase (predetermined value) is registered in the register BaseRslt [nBase]. ]. Thereafter, the contents corresponding to the register BaseRslt [nBase] are registered in the register NoteRslt [0] [0-11] to the register BaseRslt [nBase] out of the register Note [i] [j] that holds the result of determining whether or not the listener is good. Copy to NoteRslt [nBase] [0 to 11], and extract the determination result indicating the pros and cons of the task sound (component sound) corresponding to the root sound that is difficult to listen to.
(8)訓練音作成処理の動作
次に、図26〜図30を参照して訓練音作成処理の動作を説明する。前述した分析処理(図21参照)のステップSE3を介して本処理が実行されると、CPU1は図26のステップSE3−1に処理を進める。ステップSE3−1〜SE3−9では、上述した判定処理で得た判定結果に基づき、最も苦手とする根音の音高値と、その根音に対応して聴き分けが「不得意な音」の課題音(構成音)の音高値とを設定する。
すなわち、ステップSE3−1では、ポインタiをゼロリセットし、続くステップSE3−2では、ポインタiが根音数nBase(既定値)より小さいか否か、つまり訓練課題を作成し終えたかどうかを判断する。訓練課題を作成し終えていなければ、判断結果は「YES」となり、ステップSE3−3に処理を進める。ステップSE3−3では、出題音数をカウントするカウンタiNoteおよび出題音高を保持するレジスタNotes[0]〜[11]をゼロリセットする。
(8) Operation of training sound creation process Next, the operation of the training sound creation process will be described with reference to FIGS. When this process is executed via step SE3 of the above-described analysis process (see FIG. 21),
That is, in step SE3-1, the pointer i is reset to zero, and in the next step SE3-2, it is determined whether or not the pointer i is smaller than the root number nBase (default value), that is, whether or not the training task has been created. To do. If the training task has not been created, the determination result is “YES”, and the process proceeds to step SE3-3. In step SE3-3, the counter iNote that counts the number of questions and the registers Notes [0] to [11] that hold the pitch of the questions are reset to zero.
ステップSE3−4では、先ず根音の音高を設定する。すなわち、ポインタiで指定されるレジスタBaseRslt[i]に格納され、根音の音名を表す値に「60」を加算してオクターブシフトさせた音高値をレジスタNotes[0]にストアする。また、ステップSE3−4では、カウンタiNoteをインクリメントして歩進させる。次に、ステップSE3−5では、レジスタBaseRslt[i]に格納される根音の音名値に「1」を加算した値をポインタjにセットする。
ステップSE3−7〜SE3−9では、聴き取りを苦手とする根音に対応した課題音(構成音)の内から判定値「1」の「不得意な音」と判定された課題音(構成音)をレジスタNoteRslt[i][j]から検索する。該当する課題音(構成音)が検索されると、ステップSE3−7の判断結果が「YES」になり、ステップSE3−8に進み、カウンタiNoteの値に対応したレジスタNotes[iNote]に、該当する課題音(構成音)を指定したポインタjの値に「60」を加算してオクターブシフトさせた音高値をレジスタNotes[0]にストアした後、カウンタiNoteをインクリメントして歩進させる。
In step SE3-4, first, the pitch of the root tone is set. That is, the pitch value stored in the register BaseRslt [i] designated by the pointer i, and added with “60” to the value representing the pitch name of the root note and shifted by an octave is stored in the register Notes [0]. In step SE3-4, the counter iNote is incremented to be incremented. Next, in step SE3-5, a value obtained by adding “1” to the pitch name value of the root note stored in the register BaseRslt [i] is set to the pointer j.
In steps SE3-7 to SE3-9, a task sound (composition) determined as “unsatisfactory sound” with a determination value “1” from among task sounds (composition sounds) corresponding to root sounds that are difficult to listen to Sound) is retrieved from the register NoteRslt [i] [j]. When the corresponding task sound (component sound) is searched, the determination result in step SE3-7 becomes “YES”, the process proceeds to step SE3-8, and the corresponding register Notes [iNote] corresponding to the value of the counter iNote The pitch value obtained by adding “60” to the value of the pointer j specifying the task sound (component sound) to be shifted and octave shifted is stored in the register Notes [0], and then incremented by the counter iNote.
こうして、聴き取りを苦手とする根音の音高値と、その根音に対応して聴き分けが「不得意な音」の課題音(構成音)の音高値とが設定されると、ステップSE3−10〜SE3−15において訓練課題情報管理テーブルT4(図8参照)に登録する第1問目の訓練課題を作成する。後述するように、第1問目の訓練課題は、聴き取りが苦手な根音を先頭とし、その根音に対して聴き分けが不得意な課題音(構成音)を順番に発音させる形で出題する。 In this way, when the pitch value of the root sound that is difficult to listen to and the pitch value of the task sound (constituent sound) that is difficult to hear corresponding to the root sound are set, step SE3. In -10 to SE3-15, the first training task to be registered in the training task information management table T4 (see FIG. 8) is created. As will be described later, the training task of the first question starts with a root sound that is difficult to listen to, and sounds the task sounds (component sounds) that are not good at listening to the root sound in order. Give a question.
最初にステップSE3−10を介してtrain[i][x]設定処理が実行されると、CPU1は図27に示すステップSEa1〜SEa8にて訓練課題情報管理テーブルT4に登録する訓練課題データtrain[m][0]〜train[m][4]を作成する。
すなわち、ステップSEa1では、第1問目であるか否かを判断する。第1問目であれば、判断結果は「YES」になり、ステップSEa2に進み、ポインタiに「2」を乗算した値をレジスタmにストアする。一方、第1問目でなければ、判断結果が「NO」になり、ステップSEa3に進み、ポインタiに「2」を乗算した値に「1」を加えてレジスタmにストアする。
First, when the train [i] [x] setting process is executed through step SE3-10, the
That is, in step SEa1, it is determined whether or not it is the first question. If it is the first question, the determination result is “YES”, the process proceeds to step SEa2, and the value obtained by multiplying the pointer i by “2” is stored in the register m. On the other hand, if it is not the first question, the determination result is “NO”, the process proceeds to step SEa3, “1” is added to the value obtained by multiplying the pointer i by “2”, and the result is stored in the register m.
続いて、ステップステップSEa4では、レジスタmの値を訓練課題データtrain[m][0]の訓練課題番号train#として登録する。ステップSEa5では、レジスタNotes[0]に格納される根音の音高を訓練課題データtrain[m][1](ポインタkey)に登録する。ステップSEa6では、訓練課題データtrain[m][2]に回答制限時間limit(既定値)を登録する。ステップSEa7では、レジスタiNotesの値を訓練課題データtrain[m][3](出題音数iNotes)に登録する。ステップSEa8では、先頭の訓練課題音を指定するポインタpNoteとしてm×iNotesを訓練課題データtrain[m][4]に登録する。 Subsequently, in step SEa4, the value of the register m is registered as the training task number train # of the training task data train [m] [0]. In step SEa5, the pitch of the root tone stored in the register Notes [0] is registered in the training task data train [m] [1] (pointer key). In step SEa6, the answer time limit (default) is registered in the training task data train [m] [2]. In step SEa7, the value of the register iNotes is registered in the training task data train [m] [3] (number of questions iNotes). In step SEa8, m × iNotes is registered in the training task data train [m] [4] as the pointer pNote for designating the first training task sound.
訓練課題情報管理テーブルT4に訓練課題データtrain[m][0]〜train[m][4]が登録されると、CPU1は図26に示すステップSE3−11を介して1音目設定処理を実行する。1音目設定処理が実行されると、CPU1は図28に示すステップSEb1に処理を進め、訓練課題情報管理テーブルT4から訓練課題データtrain[i][4](ポインタpNote)を読み出してレジスタIDXにストアする。そして、訓練課題データtrain[i][4](ポインタpNote)を、レジスタIDXの値に対応させた訓練課題音データtrNote[IDX][0](識別番号trNote#)として訓練課題音管理テーブルT5に登録する。
When the training task data train [m] [0] to train [m] [4] are registered in the training task information management table T4, the
次に、ステップSEb2では、訓練課題データtrain[i][0](訓練課題番号train#)を、レジスタIDXの値に対応させた訓練課題音データtrNote[IDX][1](訓練課題番号train#)として訓練課題音管理テーブルT5に登録する。ステップSEb3では、レジスタNotes[0]に格納される根音の音高値を、レジスタIDXの値に対応させた訓練課題音データtrNote[IDX][2](音高pitch)として訓練課題音管理テーブルT5に登録する。そして、ステップSEb4では、1音目の発音タイミングとなる固定値ontimeを、レジスタIDXの値に対応させた訓練課題音データtrNote[IDX][3](発音タイミングtime_on)として訓練課題音管理テーブルT5に登録する。続いて、ステップSEb5では、1音目の消音タイミングとなる固定値offtimeを、レジスタIDXの値に対応させた訓練課題音データtrNote[IDX][4](消音タイミングtime_off)として訓練課題音管理テーブルT5に登録する。 Next, in step SEb2, training task sound data trNote [IDX] [1] (training task number train) in which training task data train [i] [0] (training task number train #) is associated with the value of the register IDX. #) Is registered in the training task sound management table T5. In step SEb3, the training task sound management table is set as training task sound data trNote [IDX] [2] (pitch pitch) in which the pitch value of the root sound stored in the register Notes [0] is associated with the value of the register IDX. Register at T5. In step SEb4, the training task sound management table T5 is used as training task sound data trNote [IDX] [3] (sounding timing time_on) in which the fixed value ontime, which is the first sound generation timing, is associated with the value of the register IDX. Register with. Subsequently, in step SEb5, the training task sound management table is set as training task sound data trNote [IDX] [4] (silence timing time_off) corresponding to the value of the register IDX as the fixed value offtime that is the first sound muting timing. Register at T5.
1音目の訓練課題音データtrNote[IDX][0]〜[4]を設定し終えると、CPU1は図26に示すステップSE3−12に進み、ポインタjに初期値「1」をセットする。次いで、ステップSE3−13〜SE3−15では、出題音数iNoteを超えるまでポインタjを歩進させる毎に、ステップSE3−14にて2音目以降の訓練課題音データを作成して訓練課題音管理テーブルT5に登録するtrNote設定(1)処理を実行する。
trNote設定(1)処理が実行されると、CPU1は図29に示すステップSEc1に処理を進め、訓練課題情報管理テーブルT4から読み出した訓練課題データtrain[i][4](ポインタpNote)にポインタjの値を加えてレジスタIDXにストアする。そして、このレジスタIDXの値を訓練課題音データtrNote[IDX][0](識別番号trNote#)に登録する。
When the setting of the first training task sound data trNote [IDX] [0] to [4] is completed, the
When the trNote setting (1) process is executed, the
続いて、ステップSEb2では、ポインタiの値を訓練課題音データtrNote[IDX][1](訓練課題番号train#)に登録すると共に、レジスタNotes[j]に格納される課題音(構成音)の音高値を、訓練課題音データtrNote[IDX][2](音高pitch)に登録する。次いで、ステップSEc3では、前音の発音タイミングtime_on、すなわち訓練課題音データtrNote[IDX−1][3]にオフセット時間αを加えた値を、訓練課題音データtrNote[IDX][3](発音タイミングtime_on)に登録する。次に、ステップSEc4では、訓練課題音データtrNote[IDX][3](発音タイミングtime_on)に4分音符長gateを加算した値を、訓練課題音データtrNote[IDX][4](消音タイミングtime_off)に登録する。ステップSEc5では、先に設定した1音目の訓練課題音データtrNote[IDX−1][5](ポインタpNextNote)に、現在設定中の訓練課題音データtrNote[IDX][0](訓練課題番号train#)をストアする。このように、trNote設定(1)処理では、聴き取りが苦手な根音に対して聴き分けが不得意な課題音(構成音)を順番に発音させる訓練課題音データtrNoteを作成して訓練課題音管理テーブルT5に登録する。 Subsequently, in step SEb2, the value of the pointer i is registered in the training task sound data trNote [IDX] [1] (training task number train #), and the task sound (component sound) stored in the register Notes [j]. Are registered in training task sound data trNote [IDX] [2] (pitch pitch). Next, in step SEc3, the sound generation timing time_on of the previous sound, that is, the value obtained by adding the offset time α to the training task sound data trNote [IDX-1] [3] is used as the training task sound data trNote [IDX] [3] (sound generation). Registered at timing (time_on). Next, in step SEc4, a value obtained by adding the quarter note length gate to the training task sound data trNote [IDX] [3] (sound generation timing time_on) is used as the training task sound data trNote [IDX] [4] (silence timing time_off). ). In step SEc5, the currently set training task sound data trNote [IDX] [0] (training task number) is added to the previously set first training task sound data trNote [IDX-1] [5] (pointer pNextNote). train #). As described above, in the trNote setting (1) process, training task sound data trNote is generated to sequentially generate task sounds (component sounds) that are not good at listening to root sounds that are difficult to listen to. Register in the sound management table T5.
こうして第1問目の訓練課題および訓練解題音を設定し終えると、図26に示すステップSE3−13の判断結果が「NO」となり、ステップSE3−16に処理を進める。ステップSE3−16〜SE3−21では、聴き取りが苦手な根音と、その根音に対して聴き分けが不得意な課題音(構成音)とを和音と見做して同時発音させるようにする第2問目を設定する。すなわち、第1問目と同様、まず最初にステップSE3−16を介して図27に図示したtrain[i][x]設定処理を実行し、訓練課題データtrain[m][0]〜train[m][4]を作成して訓練課題情報管理テーブルT4に登録する。 When the setting of the training question and the training answer sound for the first question is thus completed, the determination result in step SE3-13 shown in FIG. 26 is “NO”, and the process proceeds to step SE3-16. In steps SE3-16 to SE3-21, a root sound that is difficult to listen to and a task sound (component sound) that is difficult to hear with respect to the root sound are regarded as chords and are simultaneously generated. Set the second question. That is, as in the first question, first, the train [i] [x] setting process illustrated in FIG. 27 is executed via step SE3-16, and the training task data train [m] [0] to train [ m] [4] are created and registered in the training task information management table T4.
次に、図26に示すステップSE3−17を介して1音目設定処理を実行する。1音目設定処理では、前述した第1問目と同様、図28に示すステップSEb1〜SEb5を実行し、1音目の訓練課題音データtrNote[IDX][0]〜[4]を作成して訓練課題音管理テーブルT5に登録する。1音目の訓練課題音データtrNote[IDX][0]〜[4]を設定し終えると、CPU1は図26に示すステップSE3−18に進み、ポインタjに初期値「1」をセットする。次いで、ステップSE3−19〜SE3−21では、出題音数iNoteを超えるまでポインタjを歩進させる毎に、ステップSE3−20を介してtrNote設定(2)処理を実行する。
Next, the first sound setting process is executed via step SE3-17 shown in FIG. In the first sound setting process, as in the first question described above, steps SEb1 to SEb5 shown in FIG. 28 are executed, and the first training task sound data trNote [IDX] [0] to [4] are created. To the training task sound management table T5. When the setting of the first training task sound data trNote [IDX] [0] to [4] is completed, the
trNote設定(2)処理が実行されると、CPU1は図30に示すステップSEd1に処理を進め、訓練課題情報管理テーブルT4から読み出した訓練課題データtrain[i][4](ポインタpNote)にポインタjの値を加えてレジスタIDXにストアする。そして、このレジスタIDXの値を訓練課題音データtrNote[IDX][0](識別番号trNote#)に登録する。続いて、ステップSEd2では、ポインタiの値を訓練課題音データtrNote[IDX][1](訓練課題番号train#)に登録すると共に、レジスタNotes[j]に格納される課題音(構成音)の音高値を、訓練課題音データtrNote[IDX][2](音高pitch)に登録する。
When the trNote setting (2) process is executed, the
次いで、ステップSEd3では、前音の発音タイミングtime_on、すなわち訓練課題音データtrNote[IDX−1][3]を、訓練課題音データtrNote[IDX][3](発音タイミングtime_on)に登録する。ステップSEd4では、訓練課題音データtrNote[IDX][3](発音タイミングtime_on)に4分音符長gateを加算した値を、訓練課題音データtrNote[IDX][4](消音タイミングtime_off)に登録する。そして、ステップSEd5では、前音の訓練課題音データtrNote[IDX−1][5](ポインタpNextNote)に、現在設定中の訓練課題音データtrNote[IDX][0](訓練課題番号train#)をストアする。このように、trNote設定(2)処理では、聴き取りが苦手な根音と、その根音に対して聴き分けが不得意な課題音(構成音)とを和音と見做して同時発音させる訓練課題音データtrNoteを作成して訓練課題音管理テーブルT5に登録する。 Next, in step SEd3, the sound generation timing time_on of the previous sound, that is, the training task sound data trNote [IDX-1] [3] is registered in the training task sound data trNote [IDX] [3] (sound generation timing time_on). In step SEd4, a value obtained by adding the quarter note length gate to the training task sound data trNote [IDX] [3] (sounding timing time_on) is registered in the training task sound data trNote [IDX] [4] (mute timing time_off). To do. In step SEd5, the training task sound data trNote [IDX] [0] (training task number train #) being currently set is added to the previous training task sound data trNote [IDX-1] [5] (pointer pNextNote). Store. As described above, in the trNote setting (2) process, a root sound that is difficult to listen to and a task sound (component sound) that is difficult to hear with respect to the root sound are regarded as chords and are simultaneously generated. Training task sound data trNote is created and registered in the training task sound management table T5.
そして、第2問目の訓練課題および訓練課題音を設定し終えると、図26に示すステップSE3−19の判断結果が「NO」となり、ステップSE3−22に進み、ポインタiを歩進させた後、ステップSE3−2に処理を戻す。以後、聴き取りを苦手とする根音の数nBase分の訓練課題を作成するまでステップSE3−3〜SE3−22を繰り返す。そして、聴き取りを苦手とする根音の全てについて訓練課題および訓練課題音を作成し終えると、ステップSE3−2の判断結果が「NO」となり、本処理を完了させる。 Then, when setting of the training question and the training task sound of the second question is completed, the determination result of step SE3-19 shown in FIG. 26 becomes “NO”, the process proceeds to step SE3-22, and the pointer i is incremented. Thereafter, the process returns to step SE3-2. Thereafter, steps SE3-3 to SE3-22 are repeated until a training task for the number nBase of root sounds that are not good at listening is created. When the training task and the training task sound have been created for all the root sounds that are not good at listening, the determination result in step SE3-2 is “NO”, and this processing is completed.
このように、訓練音作成処理では、判定処理の判定結果を参照して、聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音(構成音)の各音高を決定し、決定した音高で最初に根音を、続いて聴き分けが不得意な課題音(構成音)を順番に発音させる第1問と、根音および不得意な課題音(構成音)を和音と見做して同時発音させる第2問とからなる訓練課題を聴き取りが苦手な根音の全てについて作成して訓練課題情報管理テーブルT4および訓練課題音管理テーブルT5に登録するようになっている。 In this way, in the training sound creation process, each sound of the root sound that is not good to listen to and the task sound (component sound) that is not good at listening to the root sound with reference to the determination result of the determination process The first question to determine the high, first the root sound at the determined pitch, and then the task sound (component sound) that is not good at listening in turn, and the root sound and poor task sound (structure Sounds are considered as chords, and a training task consisting of the second question that is simultaneously pronounced is created for all root sounds that are difficult to listen to and registered in the training task information management table T4 and the training task sound management table T5. It is like that.
以上説明したように、本実施の形態では、問題モード下で再生開始処理、回答処理および判定処理を実行すると、出題された課題音および回答された回答音を表す課題履歴データtestHistが課題履歴管理データベースDBに登録される。この後に分析モードに遷移して集計処理を実行すると、課題履歴管理データベースDBに登録される課題履歴データtestHistを参照して課題の根音と、その根音に対する課題音(構成音)と、この課題音に対応して入力された回答音とを検索し、検索された根音および課題音(構成音)毎に、回答音の音高の適否を判断し、その結果を正答集計カウンタOKCntおよび誤答集計カウンタMSCntで集計する。これにより、正答集計カウンタOKCntには根音に対する課題音(構成音)毎の正答数が集計され、一方、誤答集計カウンタMSCntには根音に対する課題音(構成音)毎の誤答数が集計される。 As described above, in the present embodiment, when the reproduction start process, the answer process, and the determination process are executed in the problem mode, the task history data testHist representing the question sound that has been asked and the answer sound that has been answered is the task history management. Registered in the database DB. After that, when transitioning to the analysis mode and executing the aggregation process, the root sound of the task and the task sound (component sound) for the root sound with reference to the task history data testHist registered in the task history management database DB, The answer sound input corresponding to the task sound is searched, and whether or not the pitch of the answer sound is appropriate is determined for each searched root sound and task sound (component sound), and the result is determined as a correct answer counting counter OKCnt and Aggregate by the incorrect answer aggregation counter MSCnt. As a result, the correct answer counting counter OKCnt counts the number of correct answers for each task sound (component sound) with respect to the root sound, while the incorrect answer total counter MSCnt has the number of incorrect answers for each task sound (component sound) with respect to the root sound. Aggregated.
次に、判定処理を実行すると、根音に対する課題音(構成音)毎の正答数が集計された正答集計カウンタOKCntと、根音に対する課題音(構成音)毎の誤答数が集計された誤答集計カウンタMSCntとの内容に基づき、聴き取りを苦手とする根音およびその根音に対する課題音(構成音)の聴き分けの得手・不得手を表す判定結果を抽出する。続いて、訓練音作成処理を実行すると、判定処理の判定結果を参照して、聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音(構成音)の各音高を決定し、決定した音高で最初に根音を、続いて聴き分けが不得意な課題音(構成音)を順番に発音させる第1問と、根音および不得意な課題音(構成音)を和音と見做して同時発音させる第2問とからなる訓練課題を、聴き取りが苦手な根音の全てについて作成して訓練課題情報管理テーブルT4および訓練課題音管理テーブルT5に登録する。そしてこの後、分析モード下で再生開始処理および回答処理を実行することによって、作成した訓練課題音の再生/回答が行われ、これにより複数の音が同時に発音される場合に、その構成音を聴き分ける能力を重点的に教習することが可能になる。 Next, when the determination process is executed, the correct answer counting counter OKCnt in which the number of correct answers for each task sound (component sound) with respect to the root sound is counted, and the number of incorrect answers for each task sound (component sound) with respect to the root sound is counted. Based on the contents of the incorrect answer counting counter MSCnt, a determination result is extracted that indicates whether the root sound that is difficult to listen to and the pros and cons of the task sound (component sound) for the root sound are distinguished. Subsequently, when the training sound creation process is executed, each of the root sound that is not good at listening and the task sound that is not good at listening to the root sound are referred to with reference to the determination result of the determination process. The first question is to determine the pitch, and first the root tone and then the task sound that is not good at listening (constituent sound) at the determined pitch. A training task consisting of the second question that causes the component sound) to be pronounced simultaneously as a chord is created for all the root sounds that are difficult to listen to, and is stored in the training task information management table T4 and the training task sound management table T5. sign up. After that, by executing the reproduction start process and the answer process under the analysis mode, the created training task sound is reproduced / answered. It is possible to focus on the ability to listen.
なお、上述した実施の形態では、出題された課題音および回答された回答音を履歴記憶する課題履歴管理データベースDBの登録内容から聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音(構成音)を抽出して訓練課題を作成するが、そうして作成した訓練課題は必ずしも和声音にはならない。そこで、聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音(構成音)の内から和音となり得る根音および課題音(構成音)を検索し、該当する和音を訓練課題とする態様を含むことも可能である。そのようにすれば、苦手な和音の聴き取りを重点的に教習することが可能になる。 In the above-described embodiment, the root sounds that are difficult to listen to from the registered contents of the task history management database DB that stores the question sounds that have been asked and the answer sounds that have been answered are listened to separately. However, the task sound (composed sound) that is not good at is extracted and a training task is created, but the training task thus created is not necessarily a harmony sound. Therefore, the root sounds that are difficult to listen to and the task sounds (component sounds) that are not good at listening to the root sounds are searched for the root sounds and task sounds (component sounds) that can be chords, and applicable. It is also possible to include a mode in which a chord is used as a training task. By doing so, it becomes possible to focus on listening to unacceptable chords.
1 CPU
2 ROM
3 RAM
4 MIDIインタフェース
5 マウス
6 キーボード
7 表示部
10 DTM装置
20 電子楽器
1 CPU
2 ROM
3 RAM
4
Claims (6)
出題された課題音に対して回答音を入力する回答入力手段と、
前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶手段と、
前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計手段と、
前記集計手段によって集計された根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定する判定手段と、
前記判定手段により判定された、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との各音高を決定し、決定した音高で最初に根音を、続いて聴き分けが不得意な課題音を順番に発音させる訓練課題を、聴き取りを苦手とする根音毎に作成する訓練課題作成手段と、
前記訓練課題作成手段により作成された訓練課題に対応した一連の訓練課題音の発音をして出題する訓練課題出題手段と
を具備することを特徴とする音楽教習装置。 Task assignment means for setting a chord constituent sound specified from the input root note and chord type as a task sound;
An answer input means for inputting an answer sound in response to the question sound that has been asked,
Task history storage means for storing in the memory the task sound that has been presented and the answer sound that has been input to the task sound as a task history;
A counting means for counting the number of correct answers and the number of incorrect answers for each task sound from the task history stored in the memory, for each corresponding root sound;
Determining means for determining a root sound that is difficult to listen to and a task sound that is not good at listening to the root sound from the number of correct and wrong answers for each task sound with respect to the root sound totaled by the counting means When,
Each pitch of the root sound that is not good at listening and the task sound that is not good at listening to the root sound determined by the determination means is determined, and the root sound is first determined at the determined pitch. Then, a training task creating means for creating a training task for sequentially generating task sounds that are not good at listening for each root sound that is not good at listening,
A music learning apparatus comprising: a training task questioning unit that issues a series of training task sounds corresponding to the training task created by the training task creating unit.
出題された課題音に対して回答音を入力する回答入力手段と、
前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶手段と、
前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計手段と、
前記集計手段によって集計された根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定する判定手段と、
前記判定手段により判定された、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との音高を決定し、両音を和音と見做して同時発音させる訓練課題を、聴き取りを苦手とする根音毎に作成する訓練課題作成手段と、
前記訓練課題作成手段により作成された訓練課題に対応した一連の訓練課題音の発音をして出題する訓練課題出題手段と
を具備することを特徴とする音楽教習装置。 Task assignment means for setting a chord constituent sound specified from the input root note and chord type as a task sound;
An answer input means for inputting an answer sound in response to the question sound that has been asked,
Task history storage means for storing in the memory the task sound that has been presented and the answer sound that has been input to the task sound as a task history;
A counting means for counting the number of correct answers and the number of incorrect answers for each task sound from the task history stored in the memory, for each corresponding root sound;
Determining means for determining a root sound that is difficult to listen to and a task sound that is not good at listening to the root sound from the number of correct and wrong answers for each task sound with respect to the root sound totaled by the counting means When,
Determines the pitch of the root sound that is difficult to hear and the task sound that is not good at listening to the root sound determined by the determination means, and considers both sounds as chords and pronounces them simultaneously Training task creation means for creating a training task for each root sound that is not good at listening;
A music learning apparatus comprising: a training task questioning unit that issues a series of training task sounds corresponding to the training task created by the training task creating unit.
出題された課題音に対して回答音を入力する回答入力手段と、
前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶手段と、
前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計手段と、
前記集計手段の集計結果から聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音を判定する判定手段と、
前記判定手段により判定された、聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音の内、和音として成立する根音および課題音を検索し、該当する根音および課題音で構成される和音の発音をして出題する和音出題手段と
を具備することを特徴とする音楽教習装置。 Task assignment means for setting a chord constituent sound specified from the input root note and chord type as a task sound;
An answer input means for inputting an answer sound in response to the question sound that has been asked,
Task history storage means for storing in the memory the task sound that has been presented and the answer sound that has been input to the task sound as a task history;
A counting means for counting the number of correct answers and the number of incorrect answers for each task sound from the task history stored in the memory, for each corresponding root sound;
Determination means for determining root sounds that are not good at listening from the counting results of the counting means and task sounds that are not good at listening to the root sounds;
Among the root sounds that are difficult to hear and the task sounds that are not good at listening to the root sounds determined by the determination means, the root sounds and the task sounds that are formed as chords are searched, and the corresponding root sounds are searched. A music learning device, comprising: a chord assignment means for generating a chord composed of sounds and task sounds.
出題された課題音に対して回答音を入力する回答入力過程と、
前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶過程と、
前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計過程と、
前記集計過程で集計された根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定する判定過程と、
前記判定過程で判定された、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との各音高を決定し、決定した音高で最初に根音を、続いて聴き分けが不得意な課題音を順番に発音させる訓練課題を、聴き取りを苦手とする根音毎に作成する訓練課題作成過程と、
前記訓練課題作成過程で作成された訓練課題に対応した一連の訓練課題音の発音をして出題する訓練課題出題過程と
をコンピュータで実行させることを特徴とする音楽教習プログラム。 A task questioning process in which the constituent sounds of chords specified from the input root note and chord type are set as task sounds;
An answer input process for inputting an answer sound to the question sound that has been asked,
A task history storage process for storing the task sound that has been presented and the answer sound input to the task sound in a memory as a task history;
A counting process of counting the number of correct and incorrect answers for each task sound from the task history stored in the memory for each corresponding root sound;
A determination process for determining a root sound that is difficult to listen to and a task sound that is not good at listening to the root sound from the number of correct answers and wrong answers for each of the task sounds with respect to the root sounds totaled in the counting process When,
Determine the pitches of the root sound that is difficult to listen to and the task sound that is not good at listening to the root sound determined in the determination process, and first determine the root sound at the determined pitch. Next, a training task creation process for creating a training task for sequentially sounding task sounds that are not good at listening for each root sound that is not good at listening,
A music learning program that causes a computer to execute a training task questioning process in which a series of training task sounds corresponding to the training task created in the training task creation process are pronounced.
出題された課題音に対して回答音を入力する回答入力過程と、
前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶過程と、
前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計過程と、
前記集計過程で集計された根音に対する課題音毎の正答数および誤答数から聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音とを判定する判定過程と、
前記判定過程で判定された、聴き取りを苦手とする根音とその根音に対して聴き分けが不得意な課題音との音高を決定し、両音を和音と見做して同時発音させる訓練課題を、聴き取りを苦手とする根音毎に作成する訓練課題作成過程と、
前記訓練課題作成過程で作成された訓練課題に対応した一連の訓練課題音の発音をして出題する訓練課題出題過程と
をコンピュータで実行させることを特徴とする音楽教習プログラム。 A task questioning process in which the constituent sounds of chords specified from the input root note and chord type are set as task sounds;
An answer input process for inputting an answer sound to the question sound that has been asked,
A task history storage process for storing the task sound that has been presented and the answer sound input to the task sound in a memory as a task history;
A counting process of counting the number of correct and incorrect answers for each task sound from the task history stored in the memory for each corresponding root sound;
A determination process for determining a root sound that is difficult to listen to and a task sound that is not good at listening to the root sound from the number of correct answers and wrong answers for each of the task sounds with respect to the root sounds totaled in the counting process When,
Determines the pitch of the root sound that is not good at listening and the task sound that is not good at listening to the root sound determined in the determination process, and considers both sounds as chords and pronounces them simultaneously A training task creation process for creating a training task for each root sound that is not good at listening,
A music learning program that causes a computer to execute a training task questioning process in which a series of training task sounds corresponding to the training task created in the training task creation process are pronounced.
出題された課題音に対して回答音を入力する回答入力過程と、
前記出題された課題音と当該課題音に対して前記入力された回答音とを課題履歴としてメモリに記憶させる課題履歴記憶過程と、
前記メモリに記憶された課題履歴から各課題音の正答数および誤答数を、対応する根音毎に集計する集計過程と、
前記集計過程の集計結果から聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音を判定する判定過程と、
前記判定過程で判定された、聴き取りを苦手とする根音およびその根音に対して聴き分けが不得意な課題音の内、和音として成立する根音および課題音を検索し、該当する根音および課題音で構成される和音の発音をして出題する和音出題過程と
をコンピュータで実行させることを特徴とする音楽教習プログラム。 A task questioning process in which the constituent sounds of chords specified from the input root note and chord type are set as task sounds;
An answer input process for inputting an answer sound to the question sound that has been asked,
A task history storage process for storing the task sound that has been presented and the answer sound input to the task sound in a memory as a task history;
A counting process of counting the number of correct and incorrect answers for each task sound from the task history stored in the memory for each corresponding root sound;
A determination process for determining a root sound that is not good at listening from the counting result of the counting process and a task sound that is not good at listening to the root sound; and
Among the root sounds that are difficult to listen to and the task sounds that are not good at listening to the root sounds that are determined in the determination process, the root sounds and the task sounds that are formed as chords are searched, and the corresponding root sounds are searched. A music learning program that allows a computer to execute a chord assignment process in which a chord is composed of sounds and task sounds.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003395347A JP4475383B2 (en) | 2003-11-26 | 2003-11-26 | Music learning device and music learning program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003395347A JP4475383B2 (en) | 2003-11-26 | 2003-11-26 | Music learning device and music learning program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005156951A JP2005156951A (en) | 2005-06-16 |
JP4475383B2 true JP4475383B2 (en) | 2010-06-09 |
Family
ID=34721147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003395347A Expired - Fee Related JP4475383B2 (en) | 2003-11-26 | 2003-11-26 | Music learning device and music learning program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4475383B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102358876B1 (en) * | 2020-02-19 | 2022-02-08 | (주)주스 | Learning system and method for theory of harmony |
-
2003
- 2003-11-26 JP JP2003395347A patent/JP4475383B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005156951A (en) | 2005-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6821203B2 (en) | Musical video game system, and computer readable medium having recorded thereon processing program for controlling the game system | |
US7091410B2 (en) | Apparatus and computer program for providing arpeggio patterns | |
US7947889B2 (en) | Ensemble system | |
US7939740B2 (en) | Ensemble system | |
JP4506175B2 (en) | Fingering display device and program thereof | |
JP4475383B2 (en) | Music learning device and music learning program | |
Miura et al. | Constructing a system for finger‐position determination and tablature generation for playing melodies on guitars | |
JPH07319458A (en) | Electronic musical instrument | |
JP3579927B2 (en) | Automatic performance device | |
JP4178553B2 (en) | Music learning device and music learning program | |
JP3275362B2 (en) | Performance practice equipment | |
JP2005148269A (en) | Music teaching apparatus and music teaching program | |
JP4192936B2 (en) | Automatic performance device | |
JP4178549B2 (en) | Music learning device and music learning program | |
JP2005049628A (en) | Music learning device and music learning program | |
JP4655872B2 (en) | Performance evaluation system and performance evaluation processing program | |
JP3788457B2 (en) | Automatic performance device | |
JP5980613B2 (en) | Screening support system and screening support program | |
JP2000056669A (en) | Device and method for detecting musical instrument performance operation and instructing musical instrument performance operation, and recording medium stored with their program | |
JP4239937B2 (en) | Composition support apparatus and program | |
JP3932038B2 (en) | Performance practice device and performance practice program | |
JP2005031458A (en) | Performance support device and performance support program | |
JP2009198657A (en) | Musical performance training apparatus and musical performance training program | |
JP2008233614A (en) | Measure number display device, measure number display method, and measure number display program | |
JP4540902B2 (en) | Electronic musical instruments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060719 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090622 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090702 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091207 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091214 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100217 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100302 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130319 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130319 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140319 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |