JPH07287571A - Sound signal conversion device - Google Patents

Sound signal conversion device

Info

Publication number
JPH07287571A
JPH07287571A JP6081392A JP8139294A JPH07287571A JP H07287571 A JPH07287571 A JP H07287571A JP 6081392 A JP6081392 A JP 6081392A JP 8139294 A JP8139294 A JP 8139294A JP H07287571 A JPH07287571 A JP H07287571A
Authority
JP
Japan
Prior art keywords
pitch
step
key code
means
sound
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.)
Granted
Application number
JP6081392A
Other languages
Japanese (ja)
Other versions
JP3055392B2 (en
Inventor
Eiichiro Aoki
栄一郎 青木
Original Assignee
Yamaha Corp
ヤマハ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp, ヤマハ株式会社 filed Critical Yamaha Corp
Priority to JP6081392A priority Critical patent/JP3055392B2/en
Publication of JPH07287571A publication Critical patent/JPH07287571A/en
Application granted granted Critical
Publication of JP3055392B2 publication Critical patent/JP3055392B2/en
Anticipated expiration legal-status Critical
Application status is Expired - Fee Related legal-status Critical

Links

Abstract

PURPOSE:To convert a sound signal into a correct key code irrespective of the kind of the inputted sound signal. CONSTITUTION:This sound signal conversion device is provided with a sound input means which inputs sound and generates the sound signal, a pitch extracting means which divides the sound signal generated by the sound input means into specific time sections and extracts pitches in the respective time sections, a mean pitch arithmetic means which calculates the mean pitch of the pitches extracted by the pitch extracting means, and a pitch information converting means which converts the mean pitch calculated by the mean pitch arithmetic means into pitch information. Further, the device has a sound input means which inputs a sound constituting music and generates a sound signal, a pitch extracting means which extracts a pitch from the sound signal generated by the sound input means, a pitch information converting means which converts the pitch extracted by the pitch extracting means into pitch information, a tone information supply mean which supplies tone information, and a pitch information correcting means which corrects the pitch information according to the tone information supplied from the tone information supply means.

Description

【発明の詳細な説明】 DETAILED DESCRIPTION OF THE INVENTION

【0001】 [0001]

【産業上の利用分野】本発明は音声信号変換装置に関し、特に入力された音声信号をキーコードに変換する変換装置に関する。 The present invention relates to a speech signal converter BACKGROUND OF relates converter for converting an audio signal, especially an input the key code.

【0002】 [0002]

【従来の技術】音声信号変換装置は、外部から入力される音声信号をキーコード(音高情報)に変換する装置である。 BACKGROUND OF THE INVENTION audio signal converter is a device that converts a voice signal input from the outside with the key code (pitch information). 変換されたキーコードは、例えばMIDI形式の演奏データとして扱うことができる。 Converted key code can be treated as, for example, performance data MIDI format. 音源装置でこのような演奏データを楽音信号に変換すれば、発音可能な信号となる。 By converting such performance data to the musical tone signal in the tone generator, a pronounceable signal.

【0003】音声信号変換装置は、逐次入力される音声信号が何のキーコードであるのかを検出するための認識処理を行う。 [0003] audio signal conversion apparatus performs the recognition processing for the speech signal inputted sequentially detects what the it's the key code. 音声信号から正しいキーコードを認識することができる割合を示すキーコード認識率は、音声信号変換装置に入力される音声信号の種類により大きく異なる。 Key code recognition rate, the percentage that can recognize the correct key code from the audio signal varies greatly depending on the type of the audio signal inputted to the audio signal converter.

【0004】入力音声信号が楽器演奏により発せられたものであれば、キーコードの認識率はある程度高い値がえられる。 [0004] The input audio signal is equal to that emitted by playing musical instruments, the recognition rate of the key code is somewhat high Negae. しかし、入力音声信号が人間の音声である場合には、楽器演奏による音声の検出に比べてキーコードの認識率が低い値になってしまう。 However, if the input audio signal is a human speech, the recognition rate of the key code in comparison with the detection of speech in instrument performance becomes low.

【0005】人間の喉から発せられる声は、通常同一のキーコードを持続して有することは少なく、揺らいだ音になる。 [0005] The voice emanating from the human throat, it is rare to have sustained the normal same key code, the sound fluctuates. プロ歌手による歌声であっても、発せられる音声信号中の基本周波数はある程度揺れてしまうために、 Even voice professional singer, the fundamental frequency in the speech emitted signal to become somewhat swaying,
歌声から1音1音のキーコードを正確に認識することは困難である。 It is difficult to accurately recognize the key code of each sound from singing voice.

【0006】 [0006]

【発明が解決しようとする課題】電子楽器のように、電気信号の合成により生成される音声信号は、各周波数成分の変動が少なく雑音がほとんど含まれていない信号である。 [0007] As the electronic musical instrument, the sound signal generated by the synthesis of the electrical signal is a signal change is less noise does not include most of the frequency components. したがって、電子楽器による音声信号から対応するキーコードを認識することは比較的容易に行うことができる。 Therefore, recognizing the key code from the corresponding audio signal by the electronic musical instrument can be carried out relatively easily.

【0007】しかし、人間の発声等により発せられる音声信号は、周波数成分の変動が大きいためにキーコードを認識することが困難である。 However, the audio signals emitted by the human vocal, etc., it is difficult to recognize the key code for the variation of the frequency components is large. 本発明の目的は、入力される音声信号の種類にかかわらず、音声信号を正しいキーコードに変換することができる音声信号変換装置を提供することである。 An object of the present invention, regardless of the type of audio signal to be inputted, is to provide a voice signal converter which can convert the audio signal to the correct keycode.

【0008】 [0008]

【課題を解決するための手段】本発明の音声信号変換装置は、外部から供給される音声を入力して音声信号を生成するための音声入力手段と、音声入力手段が生成する音声信号を所定の時間区間に分割して各時間区間におけるピッチを抽出するためのピッチ抽出手段と、ピッチ抽出手段により抽出される複数のピッチを平均化して平均ピッチを演算するための平均ピッチ演算手段と、平均ピッチ演算手段により演算される平均ピッチを音高情報に変換するための音高情報変換手段とを有する。 Audio signal converting apparatus of the present invention According to an aspect of a predetermined a voice input means for generating an audio signal to input audio supplied from the outside, the audio signal generated by the sound input means pitch extracting means for extracting a pitch is divided into time intervals for each time interval, the average pitch calculating means for by averaging a plurality of pitch extracted by the pitch extracting means for calculating the average pitch, an average and a pitch information converting means for converting the average pitch is calculated by the pitch calculation means to the pitch information.

【0009】また、本発明の音声信号変換装置は、外部から楽曲を構成する音声を入力して音声信号を生成するための音声入力手段と、音声入力手段が生成する音声信号からピッチを抽出するためのピッチ抽出手段と、ピッチ抽出手段により抽出されるピッチを音高情報に変換するための音高情報変換手段と、調情報を供給するための調情報供給手段と、調情報供給手段から供給される調情報に応じて音高情報を修正するための音高情報修正手段とを有する。 [0009] The audio signal converter of the present invention extracts an audio input means for generating an audio signal to input audio constituting a music piece from the outside, the pitch from the voice signal generated by the sound input means supply and pitch extraction unit, from the pitch information converting means and the key information supply means for supplying the key information, key information supply means for converting a pitch extracted by the pitch extracting means to the pitch information for and a pitch information correcting means for correcting the pitch information in response to the tone information.

【0010】 [0010]

【作用】ピッチ抽出手段は、音声信号入力手段に入力された音声信号を所定の時間区間に分割して、各時間区間毎のピッチを検出する。 [Action] pitch extracting means divides the audio signal input to the audio signal input means to a predetermined time period, detects the pitch of each time interval. 検出されたピッチは、平均ピッチ演算手段により複数の時間区間で平均化された後に、 The detected pitch, after being averaged over a plurality of time intervals the average pitch calculating means,
音高情報に変換される。 It is converted to the pitch information. 音高情報は、検出されたピッチを直接用いるよりも、平均化したピッチを用いた方が正しい音高情報を得ることができる。 Pitch data, rather than using the detection pitch can be directly preferable to use a pitch averaged to obtain the correct pitch information.

【0011】また、楽曲を構成する入力音声信号から検出されたピッチを音高情報に変換した後に、音高情報は、供給された調情報の音楽規則に応じて修正される。 Further, after converting the pitch detected from the input speech signal constituting the song to the pitch information, pitch information is modified in accordance with the musical rules supplied key information.
音高情報の修正を行うことにより、正しい音高情報を得ることができる。 By performing the correction of the pitch information, it is possible to obtain the correct pitch information.

【0012】 [0012]

【実施例】図1は、本発明を実施するための音声信号変換装置のシステム構成例を示す。 DETAILED DESCRIPTION FIG. 1 shows a system configuration example of the audio signal converting apparatus for carrying out the present invention. 音声信号変換装置は、 Speech signal conversion device,
マイク1から入力される音声信号をキーコードに変換することができる。 It may convert the audio signal input from the microphone 1 to the key code. 変換されたキーコードは、音源4において対応するキーコードの楽音信号に変換され、サウンドシステム5から発音される。 Converted key code is converted to the tone signal of the key code corresponding at the sound source 4, it is sounded from the sound system 5.

【0013】マイク1には、外部から歌声等の音声信号が入力される。 [0013] microphone 1, audio signals such as voice is input from the outside. 入力される音声信号は、例えば人の歌声や楽器演奏等による楽音のアナログ信号である。 Audio signal to be input is a tone analog signals by for example a human voice and musical performances and the like. スタートスイッチを押すと、音声信号の入力が開始され、ストップスイッチを押すと、音声信号の入力が終了する。 When you press the start switch, the input of the audio signal is started, press the stop switch, the input of the audio signal is completed. マイク1に入力された音声アナログ信号は、D/A変換器2においてディジタル信号に変換され、バス11に供給される。 Audio analog signal inputted to the microphone 1 is converted into a digital signal in the D / A converter 2 is supplied to the bus 11.

【0014】CPU7は、バス11に供給された音声ディジタル信号をキーコードに変換するために、各種の制御処理を行う。 [0014] CPU7 is to convert the audio digital signal supplied to the bus 11 with the key code, performs various control processes. 正しいキーコードに変換するために、C To convert the correct key code, C
PU7は通常のキーコード変換処理の他に、平均ピッチ検出と調内キーコードへの修正処理を行う。 PU7 to other normal key code conversion process, performs correction processing to the average pitch detecting a tone in the key code.

【0015】平均ピッチ検出は、マイク1に入力された音声信号を量子化して、量子化された音声信号毎にピッチを検出する。 The average pitch detecting the audio signal input to the microphone 1 is quantized, for detecting the pitch for each voice signal quantized. そして、所定時間内で検出された複数のピッチの平均ピッチを求め、平均ピッチからキーコードを算出する。 Then, an average pitch of the plurality of pitch detected within a predetermined time, calculates a key code from the average pitch. 平均ピッチを検出することにより、人の歌声のように時間経過と共にピッチが変化しやすい性質の音声信号であっても、正しいピッチを検出することができる。 By detecting the average pitch, even audio signal of the pitch is changed propensity with time as human singing voice, it is possible to detect the correct pitch.

【0016】調内キーコードへの修正処理は、まず、連続してマイク1に入力された音声信号を楽曲とみなして、その楽曲の調を検出する。 The correction process for regulating the key code is first regarded as the music audio signal input to the microphone 1 continuously detects the key of the song. 楽音の調が検出されれば、その調に用いられやすいキーコードを予測することができる。 If it is detected tone musical tone, it is possible to predict the likely key code used for the adjustment. この音楽規則の知識を利用して、検出されたキーコードの修正処理を行う。 Using knowledge of the music rule, it performs correction processing of the detected key code. これにより、誤認識により検出されたキーコードを正しいキーコードに修正することができる。 This makes it possible to modify the key code detected by erroneous recognition to the correct keycode.

【0017】データメモリ(RAM)10は、入力音声信号を楽音とみなしたときの調を検出するために必要なデータ等を記憶している。 [0017] Data memory (RAM) 10 stores the data necessary for detecting a tone when regarded as tone input audio signal. 例えば、C長調、C短調等の各調を構成する音名データを記憶しており、入力音声信号のキーコードがどの調の構成音に該当するのかを調べることにより、調の検出が行われる。 For example, C major, stores the note name data constituting each tone such as C minor, by examining whether the corresponding to the key code which adjustment constituent notes of the input audio signal, the detection of tone is performed .

【0018】CPU7は、入力音声信号からキーコードに変換した後に、変換したキーコードを基にして演奏データを生成する。 [0018] CPU7, after converted from the input speech signal with the key code, to generate the performance data based on the key code conversion. 生成された演奏データは音源4に供給され、楽音信号が生成される。 Performance data generated is supplied to the tone generator 4, the tone signal is generated. サウンドシステム5は、 Sound system 5,
音源4から供給される楽音信号に応じて楽音を発する。 It emits a tone according to the musical tone signal supplied from the sound source 4.

【0019】また、出力端子3の出力スイッチが押されると、生成された演奏データは、必要に応じてMIDI Further, when the output switch of the output terminal 3 is pressed, the performance data generated includes, MIDI optionally
形式のデータ等に変換され、出力端子3から外部機器に出力される。 Is converted to the format of data, etc., is output from the output terminal 3 to an external device.

【0020】プログラムメモリ(ROM)8は、演算プログラムを記憶している。 The program memory (ROM) 8 stores a calculation program. CPU7はこの演算プログラムに従って、ワーキングメモリ(RAM)9に備えられたレジスタやバッファメモリ等のワーキングメモリを用いて上述の各種演算処理を行う。 CPU7 is in accordance with the operation program to perform various arithmetic operations described above using the working memory of the register or a buffer memory or the like provided in the working memory (RAM) 9.

【0021】タイマ6は、タイミング信号を生成し、所定時間間隔でCPU7に割り込み信号を供給する。 The timer 6 generates a timing signal, and supplies an interrupt signal to CPU7 at predetermined time intervals. タイマ6は、例えば16分(音符)の長さ毎に割り込み信号をCPU7に供給し、割り込み処理を実行させる。 Timer 6, for example, an interrupt signal is supplied to the CPU7 for each length of 16 minutes (note) to execute the interrupt processing. 割り込み処理は、外部から人がマイク1に歌声を入力する際等に必要となるメトロノーム音を生成することもできる。 The interrupt processing may be human from outside to produce a metronome sound required for such when entering the singing voice to the microphone 1.

【0022】CPU7は、バス11を介して、D/A変換器2、プログラムメモリ8、ワーキングメモリ9、データメモリ10、音源4、出力端子3の制御を行う。 The CPU7 via the bus 11, D / A converter 2, a program memory 8, a working memory 9, the data memory 10, the sound source 4, and controls the output terminal 3. 図2は、CPUが行う入力変換処理のメインルーチンを示すフローチャートである。 Figure 2 is a flow chart showing a main routine of the input conversion process performed by the CPU. CPUは、まずステップP1 CPU, first step P1
において、レジスタ類の初期化等の初期設定の処理を行う。 In, the process of initial setting such as initialization of registers are.

【0023】ステップP2では、マイクから音声信号の入力開始を指示するスタートスイッチが押されたか否かを調べる。 [0023] At step P2, checks whether or not pressed the start switch for instructing the start of input speech signals from the microphone. スタートスイッチが押されていなければ、音声入力の処理を行わずにステップP9へ進む。 If not, start switch is pressed, the process proceeds to step P9 without performing the processing of voice input.

【0024】スタートスイッチが押されていれば、ステップP11へ進み、音声入力処理のために必要なレジスタやフラグ等の初期設定を行い、ステップP3へ進む。 [0024] If the start switch is pressed, the process proceeds to step P11, perform the initial settings such as registers and flags necessary for voice input processing, the process proceeds to step P3.
ステップP3では、音声入力処理と平均ピッチ検出処理を行う。 In step P3, it performs the average pitch detection processing an audio input processing. 音声入力処理は、マイクから入力される音声信号をワーキングメモリに取り込む処理である。 Voice input process is a process of taking an audio signal input from the microphone to the working memory. 平均ピッチ検出は、入力された音声信号を量子化して、量子化された音声信号毎のピッチの平均値を検出する処理である。 Average pitch detecting quantizes the inputted audio signal, a process of detecting the average value of the pitch of each audio signal quantized. 処理の詳細は、後にフローチャートを参照しながら説明する。 Details of the process, will be described with reference to flowcharts later.

【0025】ステップP4では、マイクから音声信号の入力終了を指示するストップスイッチが押されたか否かを調べる。 [0025] At step P4, check whether the stop switch is pressed to instruct the input ends of the voice signal from the microphone. ストップスイッチが押されていなければ、マイクに逐次入力される音声信号について、上述の音声入力処理と平均ピッチ検出処理を繰り返し、ストップスイッチが押されるまで処理を繰り返す。 If no stop switch is pressed, the audio signal is sequentially input to the microphone, repeated average pitch detection processing an audio input processing described above, the process is repeated until the stop switch is pressed.

【0026】ストップスイッチが押されると、ステップP5へ進み、音声信号の入力終了を示すエンドコードをワーキングメモリ中のメモリMEM()に格納する。 [0026] When the stop switch is pressed, the process proceeds to step P5, and stores an end code indicating the end of input audio signals to the memory MEM in the working memory (). 上述のステップで検出された所定時間毎の平均ピッチは、 The average pitch of the predetermined detected in the aforementioned step time,
既に配列メモリMEM()に格納されている。 Stored already array memory MEM (). 入力された音声信号の全ての平均ピッチが格納された後に、ストップスイッチが押されると、最後の配列のメモリMEM After all of the average pitch of the input voice signal is stored, when the stop switch is pressed, the memory MEM of the last sequence
(I)にエンドコードが格納される。 End code is stored in (I).

【0027】ステップP6では、メモリMEM()に格納された音声信号の平均ピッチをキーコードに変換する処理を行う。 [0027] At step P6, it performs processing for converting the average pitch of the stored audio signals to the memory MEM () the key code. 平均ピッチは、周波数で表されているので、その周波数で表される値をC4等で表されるキーコードに変換する。 The average pitch, so is represented by frequency, converts the value represented by the frequency key code represented by C4, and the like. 詳細は、後述する。 Details will be described later.

【0028】ステップP7では、変換されたキーコードの中で誤って変換されたキーコードの修正を行うための処理を行う。 [0028] At step P7, it performs processing for accidental modification of transformed key code in the transformed key code. まず、前ステップにおいて得られた複数のキーコードを楽曲とみなして、その楽音の調を検出する。 First, before regarded plurality of key codes obtained was a song in step, detecting the tone of the musical tone. そして、検出された調の構成音に該当しないものについては、誤ったキーコードに変換されたと判断して、 Then, for those that do not correspond to the detected tone arrangement sound, it is determined to have been converted to the wrong key code,
修正処理を行う。 Perform corrective actions. 処理の詳細は、後にフローチャートを参照しながら説明する。 Details of the process, will be described with reference to flowcharts later.

【0029】ステップP8では、キーコードの検出および修正が行われた後に、そのキーコードを基にして演奏データの生成を行う。 [0029] At step P8, after detection and correction of a key code it has been performed, and generates performance data based on the key code. 演奏データは、キーコードの他に、発音開始を示すキーオンコード、発音の持続時間を示すデュレーションコード、発音終了を示すキーオフコード等のデータを含んでいる。 Performance data, in addition to the key codes, key-on code indicating the start of sounding, duration code indicating the duration of the sound, and includes data such as key-off code indicating the pronunciation termination. 詳細は、後述する。 Details will be described later.

【0030】ステップP9では、出力スイッチが押されたか否かを調べる。 [0030] In step P9, checks whether the output switch is pressed. 出力スイッチが押されていれば、ステップP10へ進み、生成された演奏データを出力端子から出力する。 If pressed output switch, the process proceeds to step P10, and outputs the generated performance data from the output terminal. その後、ステップP2へ戻り、再び音声入力開始のためのスタートスイッチが押されたか否かを調べる。 Thereafter, the process returns to step P2, checks whether or not pressed the start switch for the speech input start again.

【0031】ステップP9において、出力スイッチが押されていないと判断されたときには、出力端子から演奏データを出力することなく、直接ステップP2へ戻る。 [0031] In step P9, when the output switch is determined to not pressed, without outputting the performance data from the output terminal, the flow returns directly to step P2.
図3は、図2のステップP3における音声入力処理と平均ピッチ検出処理の詳細を示すフローチャートである。 Figure 3 is a flowchart showing details of the average pitch detection processing and voice input process in step P3 in Fig.

【0032】図2のメインルーチンにおいて、この音声入力処理が行われる前に、ステップP11で音声入力処理のための初期設定が既に行われている。 [0032] In the main routine of FIG. 2, before the voice input process is performed, the initial setting for the audio input processing has already been performed at step P11. 初期設定では、キーオンフラグKON、ピッチレジスタF、フラグQ、カウンタI、カウンタNの初期化を行っている。 By default, the key-on flag KON, pitch register F, the flag Q, counter I, and initializes the counter N. 各フラグ等の初期設定方法を次に示す。 Following initialization method such as the flag.

【0033】まず、キーオンフラグKONを0にする。 [0033] First of all, the key-on flag KON to 0.
キーオンフラグKONは、マイクから何らかの音声信号が入力されている間は1を示し、入力される音声信号がほぼ0である間は0を示す。 Key-on flag KON is, while some kind of audio signal is input from the microphone indicates 1, while audio signals to be inputted is substantially 0 is 0.

【0034】次に、ピッチレジスタFを0にクリアする。 [0034] Then, to clear the pitch register F to 0. ピッチレジスタFは、マイクから入力される音声信号から検出されるピッチを格納するためのレジスタである。 Pitch register F is a register for storing the pitch detected from the audio signal input from the microphone. ピッチとは、音高を表す周波数である。 Pitch and is a frequency representing the pitch.

【0035】そして、フラグQを0にする。 [0035] Then, the flag Q to 0. フラグQ Flag Q
は、タイマからの割り込み信号をきっかけとする割り込み処理により、所定時間(例えば16分音符の長さ)間隔で1にセットされる。 Is an interrupt process that triggered the interrupt signal from the timer, is set to 1 at intervals (the length of the note, for example, 16 minutes) for a predetermined time. フラグQは、所定の処理が行われた後に0になるので、通常は0がセットされており、 Flag Q is, since the 0 after a predetermined processing is performed, usually 0 has been set,
所定時間間隔で一瞬1がセットされる。 Instant 1 is set at a predetermined time interval.

【0036】さらに、カウンタIおよびカウンタNを0 [0036] In addition, the counter I and the counter N 0
にリセットする。 Reset to. カウンタIは、求められる平均ピッチを格納する配列メモリMEM()の配列番号を示す。 Counter I shows the sequence numbers in the sequence memory MEM () for storing the average pitch sought. カウンタNは、所定時間内に入力される音声信号の量子化数をカウントする。 Counter N counts the number of quantization of the audio signal inputted within a predetermined time.

【0037】以上の初期設定が行われた後に、音声入力および平均ピッチ検出を行うための処理がステップQ2 [0037] After the above initial setting is performed, the process step Q2 for performing audio input and average pitch detecting
から開始する。 To start from. ステップQ2では、キーオンフラグKO In step Q2, key-on flag KO
Nが0であるか否かを調べる。 N is checked whether or not it is 0. キーオンフラグKONが0であれば、ステップQ3に進む。 If the key-on flag KON is 0, the process proceeds to step Q3. 最初は、初期設定でキーオンフラグKONが0に設定されているので、ステップQ3に進む。 Initially, since the key-on flag KON by default is set to 0, the process proceeds to step Q3.

【0038】ステップQ3では、マイクから入力される音声信号の入力レベルがしきい値#1を越えているか否かを調べる。 [0038] At step Q3, checks whether the input level of the audio signal input from the microphone exceeds a threshold value # 1. しきい値#1は、音声入力レベルの雑音レベルを示す。 Threshold # 1 shows the noise level of the audio input level. しきい値#1を越えていなければ、入力が無音状態であると判断して、入力音声信号の処理を行わずにステップQ10へ進む。 If not exceed the threshold value # 1, it is determined that the input is silent state, the flow proceeds to step Q10 without processing the input audio signal.

【0039】音声入力レベルがしきい値#1を越えていれば、適正な音声入力があったとして、ステップQ4へ進み、入力音声信号の処理を開始する。 [0039] If the audio input level has exceeded the threshold value # 1, if there is a proper voice input, the flow advances to step Q4, and starts processing of the input audio signal. ステップQ4では、適正な音声入力の開始を示すために、キーオンフラグKONを1にする。 At step Q4, to indicate the start of a proper voice input, the key-on flag KON 1. その後、ステップQ5へ進む。 Then, the process proceeds to step Q5.

【0040】ステップQ5では、入力音声信号を基にしてピッチ検出を行う。 In step Q5, it performs pitch detection based on an input audio signal. ディジタル信号系列で表される入力音声信号に対して、ハミング窓やハニング窓等で所定時間内の信号を切り出し、周波数解析を行う。 For an input audio signal represented by a digital signal sequence, it cuts out signal within a predetermined time Hamming window or Hanning window, and performs the frequency analysis. 周波数解析を行うことにより、ピッチ(音高情報)を検出する。 By performing frequency analysis, for detecting the pitch (pitch information).

【0041】ステップQ6では、検出されたピッチをピッチレジスタFに加算する。 [0041] At step Q6, adds the detected pitch to the pitch register F. ピッチレジスタFには、初期設定で0にセットされているので最初は、検出されたピッチそのものの値がピッチレジスタFに格納される。 The pitch register F, first because it is set to 0 by default, the value of the detected pitch itself is stored in the pitch register F.

【0042】ステップQ7では、カウンタNをインクリメントする。 [0042] In step Q7, it increments the counter N. その後、ステップQ10へ進む。 Then, the process proceeds to step Q10. ステップQ10では、フラグQが1であるか否かを調べる。 At step Q10, flag Q is examined whether or not 1. フラグQは、初期設定において0にセットされているので、 Flag Q is, because it is set to 0 in the initial setting,
一旦図2のメインルーチンの処理へ戻る。 Once back to the main routine of the processing of FIG. 2. もし、音声入力の終了を指示するストップスイッチが押されていなければ、再び上述の音声入力処理を繰り返すためにステップQ2からの処理を再開する。 If it is not the stop switch is pressed to instruct the end of the speech input, it restarts the process from step Q2 to repeat again above the audio input processing. ストップスイッチが押されるまで、音声入力処理を繰り返すことにより、マイクから逐次入力される音声信号を時間経過と共にリアルタイムに処理することができる。 Until the stop switch is pressed, by repeating the voice input processing, it can be processed in real time audio signals sequentially input from the microphone over time.

【0043】音声入力処理を再開するために、ステップQ2において、再びキーオンフラグKONが0であるか否かを調べる。 [0043] In order to resume the voice input processing, in step Q2, checks whether or not it is 0 again key-on flag KON. 既に上述の1回目のステップQ4の処理でキーオンフラグKONが1にセットされているので、 Already since key-on flag KON in the process of the first step Q4 above is set to 1,
ステップQ8へ進む。 The process proceeds to step Q8.

【0044】ステップQ8では、今回マイクから入力された音声入力レベルがしきい値#2よりも小さいか否かを調べる。 [0044] At step Q8, the audio input level is input from this microphone checks whether less than the threshold value # 2. しきい値#2は、音声入力レベルの雑音レベルを示す。 Threshold # 2 indicates the noise level of the audio input level. しきい値#2を越えていれば、前回から適正な音声信号が引き続き入力されていることを示す。 If exceeds the threshold value # 2, indicating that the proper audio signal is subsequently input from the previous. 一方、しきい値#2を越えていなければ、マイクからの入力が無音状態になったことを示す。 On the other hand, it shows that if does not exceed the threshold value # 2, is input from the microphone becomes silent state.

【0045】ステップQ8において、音声入力レベルがしきい値#2を越えていればマイクから音声入力が引き続き行われていることを示すので、ステップQ5へ進み、今回入力された音声信号の平均ピッチ検出の処理を行う。 [0045] In step Q8, it indicates that the audio input level voice input from the microphone if exceeding the threshold value # 2 is subsequently performed, the process proceeds to step Q5, the average pitch of the currently input speech signal It performs the process of detection.

【0046】ステップQ5では、入力音声信号のピッチを検出し、検出したピッチをステップQ6においてピッチレジスタFに加算する。 [0046] At step Q5, it detects the pitch of the input voice signal, and adds the detected pitch to the pitch register F in step Q6. ステップQ7では、カウンタNをインクリメントする。 At step Q7, it increments the counter N.

【0047】ストップスイッチが押されるまでの間は、 [0047] until the stop switch is pressed,
ピッチレジスタFにマイクから逐次入力される音声信号のピッチが累算されていく。 Pitch of the audio signal inputted sequentially from a microphone to the pitch register F is gradually being accumulated. ピッチが累算される度にカウンタNはインクリメントされるので、カウンタNにはピッチレジスタFにピッチが累算された数が格納される。 The pitch is counter N each time it is accumulated is incremented, the number of pitches has been accumulated in the pitch register F is stored in the counter N.

【0048】その後ステップQ10において、フラグQ [0048] In a subsequent step Q10, the flag Q
が1か否かを調べる。 There investigate whether or not 1. フラグQは、次に説明する割り込み処理により値が決定される。 Flag Q, the value is determined by the following described interrupt processing. 図4は、CPUが行う割り込み処理を示すフローチャートである。 Figure 4 is a flowchart showing an interrupt process performed by the CPU. CPUは、タイマから例えば16分長(16分音符の時間長)の所定の時間間隔で割り込み信号を受ける。 CPU receives the interrupt signal at a predetermined time interval 16 minutes, for example, from the timer length (time length of sixteenth note). CPUは、割り込み信号を受けると以下の割り込み処理を行う。 The CPU performs the following interruption process upon receiving an interrupt signal. ここで、 here,
割り込み処理は16分長間隔で行われるとする。 The interrupt processing is performed in 16 minutes interval length.

【0049】まず、ステップR1においてフラグQを1 [0049] First of all, the flag Q in step R1 1
にセットする。 It is set to. そして、ステップR2において、クリック音を発生する。 Then, in step R2, to generate a click sound. その後、割り込み処理を終了して、元の音声入力の処理を再開する。 Then the interrupt process ends, the process resumes the original speech input.

【0050】以上のように、割り込み処理では16分長間隔でフラグQを1にセットして、クリック音を発生する。 [0050] As described above, in the interrupt process sets the flag Q to 1 in 16 minute interval length, to generate a click sound. クリック音は、メトロノームの役割を果たす。 Click sound, it plays the role of a metronome. マイクから音声信号を入力する際には、16分長毎に鳴るクリック音のテンポに合わせて入力を行えばよい。 When entering the audio signal from the microphone, it can be input to match the tempo of the click sound that is heard every 16 minutes in length.

【0051】図3のステップQ10では、16分長が経過した時にフラグQが1であると判断され、ステップQ In Step Q10 in FIG. 3, the flag Q is determined to be 1 when the 16 minutes length has elapsed, step Q
11へ進む。 It advances to 11. ステップQ11では、カウンタNが0より大きいか否かを調べる。 At step Q11, checks whether the counter N is greater than zero. カウンタNには、16分長の間に量子化してピッチを検出した数が格納されている。 The counter N, the number of detection pitch is quantized stored during 16 minutes length. もし、マイクからの入力音声信号が16分長の間ずっと無音状態であると判断されたときには、カウンタNは0を示す。 If, when it is determined that much silence between the input audio signal is 16 minutes long from the microphone, the counter N is 0.

【0052】上述のように、マイクに適正な音声入力がされている際、カウンタNには1以上の数が格納されているので、ステップQ12へ進む。 [0052] As described above, when being the proper audio input to the microphone, the number of 1 or more is stored in the counter N, the flow proceeds to step Q12. ステップQ12では、次式により平均ピッチを求め、平均ピッチレジスタAFに格納する。 At step Q12, it obtains an average pitch from the following equation, and stores the average pitch register AF.

【0053】AF=F/N ピッチレジスタFには、16分長の間に検出されたピッチの累算値が格納されている。 [0053] The AF = F / N pitch register F, the accumulated value of the detected pitch is stored during 16 minutes length. ピッチの累算値Fを量子化数Nで割ることにより、ピッチの平均値AFを求めることができる。 By dividing the accumulated value F of the pitch quantization number N, it is possible to obtain an average value AF pitch. その後、ステップQ14へ進む。 Then, the process proceeds to step Q14.

【0054】一方、ステップQ11において、16分長の間無音の音声入力状態が続いたときにはカウンタNが0であるので、ステップQ13へ進む。 On the other hand, in step Q11, since when the continued voice input state of silence between 16 minutes length counter N is 0, the flow proceeds to step Q13. ステップQ13 Step Q13
では、平均ピッチレジスタAFにオール1を格納する。 In stores all 1 to average pitch register AF.
その後、ステップQ14へ進む。 Then, the process proceeds to step Q14. オール1とは、レジスタを構成するビットを全て1にするような値を示す。 The all-1, shows a value such that all the bits 1 constituting the register. 平均ピッチレジスタAFにオール1が格納されていれば、 If all 1s are stored in the average pitch register AF,
16分長の無音状態である16分休符がマイクから入力されたことになる。 16 minutes rest is silence of 16 minutes length so that the input from the microphone.

【0055】ステップQ14では、求められた平均ピッチAFを配列メモリMEM(I)に格納する。 [0055] In step Q14, stores average pitch AF obtained in arrangement memory MEM (I). カウンタIは、初期設定にて0に設定されているので、平均ピッチAFは0番目の配列番号のメモリMEM(0)に格納される。 Counter I, which are set to 0 in the initial setting, the average pitch AF is stored in the memory MEM of the 0th SEQ ID NO: (0). カウンタIは、求められた平均ピッチの番号を示し、時間経過と共に0から順番に増加していく。 Counter I shows the average number of pitch obtained, increases from 0 over time in order.

【0056】ステップQ15では、カウンタIをインクリメントして、次の平均ピッチの配列番号をセットする。 [0056] In step Q15, it increments the counter I, and sets the sequence number of the next average pitch. ステップQ16では、ピッチレジスタF、カウンタN、フラグQのそれぞれに0をセットして、次の平均ピッチを求めるための初期設定を行う。 At step Q16, is set to 0 in each of the pitch register F, a counter N, the flag Q, performs initial setting to determine the following average pitch. その後、図2のメインルーチンの処理に戻り、ストップスイッチが押されるまで、以上の平均ピッチを求める処理を繰り返し行う。 Then, the process returns to the main routine Figure 2, until the stop switch is pressed, it repeats the process for obtaining the above average pitch.

【0057】次に、マイクからの入力音声が無音状態になったときの処理を説明する。 [0057] Next, processing when the input voice from the microphone becomes silent state. ステップQ2において、 In step Q2,
前回時に適正な音声入力があれば、キーオンフラグKO If there is a proper voice input at the time of the last, key-on flag KO
Nは1になっているので、ステップQ8へ進む。 Since N is set to 1, the process proceeds to step Q8. 音声入力レベルがしきい値#2よりも小さい値になっていれば、ステップQ8で無音状態であると判断され、ステップQ9へ進む。 If the audio input level is sufficient that a value smaller than the threshold value # 2, is determined to be the silent state in step Q8, the flow proceeds to step Q9. ステップQ9では、キーオンフラグKO In step Q9, key-on flag KO
Nを0にして、ピッチ検出を行わないでステップQ10 The N and 0, step Q10 not perform pitch detection
へ進む。 To advance. ステップQ10では、前述のように16分長毎の平均ピッチを求める処理を行う。 At step Q10, it executes processing for calculating an average pitch of every 16 minutes in length, as described above.

【0058】以上のように、マイクから適正な音声入力があったときには、16分長の範囲内で入力音声信号の量子化を行い、量子化された信号毎のピッチを検出する。 [0058] As described above, when there is proper voice input from the microphone, performs quantization of the input speech signal in the range of 16 minutes length, detects the pitch of each signal quantized. そして、検出されたピッチの累算値Fを量子化数N Then, the number of quantization the accumulated value F of the detected pitch N
で割ることにより、平均ピッチAFを求める。 By dividing the obtained average pitch AF.

【0059】人の歌声等は、音声信号の揺れが大きいので、音声信号の局所的なピッチを検出するとピッチが頻繁に変化し、ピッチの誤認識が生じやすい。 [0059] the human singing voice, etc., because the shaking of the voice signal is large, pitch frequently change when it detects a local pitch of the voice signal, prone to false recognition of the pitch. そこで、入力された音声信号を量子化して、量子化毎のピッチを検出した後に平均ピッチを求めることにより、正しいピッチを検出することができる。 Therefore, by quantizing the inputted audio signal, by calculating the average pitch after detecting the pitch of each quantization, it is possible to detect the correct pitch. 求められた平均ピッチは配列メモリMEM()に格納される。 Average pitch obtained is stored in the sequence memory MEM ().

【0060】図5は、メモリMEM()の構成例を示す。 [0060] Figure 5 shows a configuration example of the memory MEM (). メモリMEM()には、時間経過と共に求められた平均ピッチが順番に格納されている。 The memory MEM (), the average pitch obtained over time is stored sequentially. メモリ領域15には、求められた平均ピッチを示す周波数が格納されている。 The memory area 15, a frequency indicating the average pitch obtained is stored. 平均ピッチは、16分長の間に適正な音声入力があったときに求められるピッチの平均値である。 The average pitch is the average value of the pitch obtained when there was a proper voice input during 16 minutes length.

【0061】メモリ領域16には、オール1のデータが格納されている。 [0061] in the memory area 16, data of all 1s are stored. オール1のデータは、無音の音声入力が16分長の間中続いたときに格納されるデータであり、16分休符を示す。 Data of all ones is data to be stored when the silent voice input continues during the 16-minute length, showing a 16-minute rest.

【0062】メモリMEM()に格納されている周波数は、16分音符のピッチを示す周波数である。 [0062] frequency stored in the memory MEM () is the frequency showing the pitch of a note 16 minutes. ただし、 However,
オール1が格納されているときには、16分音符のピッチを示すのではなく16分休符を意味する。 When the all-1 is stored, it means 16 min rest not indicate the pitch of the note 16 minutes.

【0063】エンドコード17は、ストップスイッチが押されて、全ての音声入力が終了した後に、図2のステップP5においてメモリMEM()中の最後の領域に格納される。 [0063] The end code 17 is a stop switch is pressed, after all of the voice input is terminated, it is stored in the last region in the memory MEM () in step P5 of FIG. エンドコード17は、メモリMEM()に連続して格納されている平均ピッチのデータの終了であることを示す。 End code 17 indicates that it is the end of the data of the average pitch that are stored consecutively in the memory MEM ().

【0064】図6は、図2のメインルーチン中のステップP6で行うキーコード変換の処理の詳細を示すフローチャートである。 [0064] Figure 6 is a flowchart showing details of the process of the key code conversion performed in step P6 in the main routine of FIG. キーコード変換は、メモリMEM() Key code conversion, the memory MEM ()
に格納されている平均ピッチの周波数からキーコードへの変換を行う処理である。 It is a process for converting the key code from the frequency of the average pitch that are stored in.

【0065】ステップS1では、平均ピッチ周波数が格納されているメモリMEM()の中において最低の周波数を示す平均ピッチを抽出し、最低周波数レジスタFm [0065] In step S1, extracting a mean pitch indicating the lowest frequency in the in the memory MEM of the average pitch frequency is stored (), the lowest frequency register Fm
inにその最低周波数を格納する。 in order to store the lowest frequency.

【0066】ステップS2では、メモリMEM()に格納されている周波数を読み出し、レジスタFに格納する。 [0066] In step S2, reads the frequency stored in the memory MEM (), stored in the register F. そして、次式の計算により相対キーコードKCを求める。 Then, a relative key code KC by calculating the following equation. KC=12log 2 (F/Fmin) 相対キーコードKCは、通常のセントの1/100の値を示すものであり、最低周波数Fminを基準にして、 KC = 12log 2 (F / Fmin ) relative key code KC is for indicating the value of a normal cent 1/100, based on the minimum frequency Fmin,
周波数Fがどれだけ高いのか又は低いのかを示す。 How much frequency F is indicating high of or low of whether. 周波数Fが最低周波数Fminと同じ値であれば相対キーコードKCは0になり、周波数Fが最低周波数Fminよりも半音高ければ相対キーコードKCは1になる。 If the same value frequency F is the minimum frequency Fmin relative key code KC becomes 0, the relative key code KC is higher semitone than the frequency F is the minimum frequency Fmin will be 1.

【0067】求められた相対キーコードKCは、周波数が元々格納されていたメモリMEM()に再び格納される。 [0067] The relative key code KC obtained is stored again in the memory MEM () whose frequency was originally stored. 同様にして、メモリMEM()に格納されている全ての周波数を相対キーコードKCに変換する。 Similarly, to convert all frequencies stored in the memory MEM () with the relative key code KC. メモリM Memory M
EM()には、最低周波数をFminを基準とした1/ The EM (), with reference to the Fmin the lowest frequency of 1 /
100のセント表現が格納される。 100 cents representation is stored in.

【0068】ステップS3では、最低周波数Fminをその周波数に最も近いキーコードに変換し、最低周波数のキーコードをレジスタKCminに格納する。 [0068] In step S3, it converts the minimum frequency Fmin closest keycode to the frequency, stores the key code of the lowest frequency in the register KCmin. 例えば、周波数が440〔Hz〕であったとすればA4のキーコードに変換して、レジスタKCminに格納する。 For example, to convert the key code of the A4 if the frequency was 440 Hz and is stored in the register KCmin.

【0069】ステップS4では、メモリMEM()に格納されている相対キーコードを読み出し、レジスタKC [0069] In step S4, reads the relative key code stored in the memory MEM (), registers KC
に格納する。 And stores it in. そして、次式の計算によりキーコードKを求める。 Then, a key code K by calculating the following equation.

【0070】K=KC+KCmin キーコードKは、基準となる最低キーコードKCmin [0070] K = KC + KCmin key code K is, the lowest key code KCmin which serves as a reference
に相対キーコードKCを加算することによりえられる絶対キーコードである。 It is the absolute key code to be example by adding the relative key code KC into.

【0071】求められたキーコードKは、相対キーコードが元々格納されていたメモリMEM()に再び格納される。 [0071] The key code K obtained is stored again in the relative key code memory was originally stored MEM (). 同様にして、メモリMEM()に格納されている全ての相対キーコードを絶対キーコードKに変換する。 Similarly, to convert all of the relative key code stored in the memory MEM () in absolute key code K.
メモリMEM()には、16分長毎のキーコードが格納される。 The memory MEM (), the key code of every 16 minutes length is stored. その後、図2のメインルーチンの処理に戻る。 Thereafter, the process returns to the main routine of processing Figure 2.

【0072】図7は、図2のメインルーチン中のステップP7の調内キーコードへの修正処理の詳細を示すフローチャートである。 [0072] Figure 7 is a flowchart showing details of a correction process to the key code in the key of step P7 in the main routine of FIG. ステップT1では、マイクから連続して入力される音声信号の集合を楽曲とみなして、その楽曲の調を検出する。 In step T1, we consider a set of audio signals input sequentially from the microphone and music, to detect the key of the song. データメモリには、調の構成音を示す音名データが格納されている。 The data memory, note name data showing the configuration sound tone is stored.

【0073】図8は、データメモリに格納されている調の構成音の音名データを示す。 [0073] Figure 8 shows a note name data configuration sound tone stored in the data memory. 調は、12音名(C,C Tone is a 12-note name (C, C
♯,・・・,B)をそれぞれ主音としたときの長調および短調がそれぞれあり、それぞれの調についてのデータがデータメモリに格納されている。 ♯, · · ·, there major and minor respectively when formed into a B), respectively tonic, data for each tone are stored in the data memory. なお、より細かい調に分けて格納してもよい。 It should be noted, may be stored separately in a finer adjustment.

【0074】例えば、C長調のメモリ領域21には、C [0074] For example, in C major, the memory region 21, C
長調の構成音であるC,D,E,F,G,A,Bのコードが格納されている。 C is a major component tones of a, D, E, F, G, A, code B is stored. 同様に、C♯長調のメモリ領域2 Similarly, the C♯ major memory areas 2
2には、C♯長調の構成音のコードが格納され、C短調のメモリ領域23には、C短調の構成音のコードが格納されている。 The 2, is stored code C♯ major constituent tones, the C minor memory area 23, the code of C minor constituent tones are stored.

【0075】調検出は、メモリMEM()に格納されているキーコードが上記のデータメモリに記憶されている調の中でどの調に一番合致するかを調べる。 [0075] tone detection checks whether the key code stored in the memory MEM () matches best to any regulation in the tone which are stored in the data memory. メモリME Memory ME
M()のキーコードとデータメモリ中の調の構成音を比較して、最も一致度の高い調を入力音声信号の調とする。 Comparing the configuration sound tone key code and the data memory M (), to the highest degree of coincidence tone and tone of the input speech signal.

【0076】主音レジスタTNには、検出された調の主音(C,C♯,D等)を格納する。 [0076] The tonic register TN, detected tone tonic (C, C♯, D, etc.) is stored. モードレジスタMD Mode register MD
には、検出された調のモード(長調または短調)を格納する。 In stores the detected tone mode (major or minor). 調検出が行われた後、ステップT2へ進む。 After the tone detection is carried out, the process proceeds to step T2.

【0077】なお、調検出の方法は、上述の方法に限られず他の方法により調検出を行ってもよい。 [0077] In addition, the tone detection method may be carried out more tone detection to other methods is not limited to the above-described method. ステップT Step T
2では、検出された調を用いて、キーコードを構成音に丸め込む処理を行う。 In 2, using the detected tone performs processing rounding the keycode constituent notes. 入力音声信号に対応するキーコードが検出された調の構成音ではない場合、キーコードを構成音のキーコードに正す。 If the key code corresponding to the input audio signal is not the component notes of the detected tone correct key code in the key code constituent notes. 処理の詳細な説明を次に示す。 Following detailed description of the process.

【0078】図9は、図7のステップT2の調内音丸め込み処理の詳細を示すフローチャートである。 [0078] Figure 9 is a flowchart showing details of processing rounding sounds in tone step T2 of FIG. まず、基準となる楽曲の最後の音の丸め込みを行い、その後に残りの音の丸め込みを行う。 First, the rounding of the last sound of music as a reference, do the rounding of the rest of the sound afterwards. その処理手順を以下に説明する。 Explaining the procedure below.

【0079】ステップU1では、メモリMEM()のm [0079] In step U1, m of the memory MEM ()
番目(メモリMEM()のキーコードに順についている、1番最後に格納されているキーコードの番号)のキーコードを読み出す。 Th (there will forward the key code memory MEM (), the key code number stored in the # 1 final) reading the key code.

【0080】ステップU2では、読み出したキーコードが調内音(検出された調の構成音)であるか否かを調べる。 [0080] At step U2, checks whether or not it is read key code is adjusted Uchioto (component sounds of the detected tone). 調内音であれば、正しく検出されたキーコードであると判断して、ステップU6へ進み、読み出したキーコードそのものをレジスタKCに格納する。 If tone in tone, it is determined that the correctly detected key code, the process proceeds to step U6, stores the read key code itself registers KC. その後、ステップU7へ進む。 Then, the process proceeds to step U7.

【0081】一方、読み出したキーコードが調内音でなければ、誤認識により検出されたキーコードであると判断して、ステップU3へ進む。 [0081] On the other hand, if the read key code is adjusted in the sound, it is determined that the key code detected by erroneous recognition, the process proceeds to step U3. ステップU3では、読み出されたm番目のキーコードを調内音に丸め込む処理を行う。 In step U3, it performs processing rounding the m-th key code read in regulating the sound. まず、読み出されたキーコードをそのキーコードに最も近い調内音に変換する。 First, to convert the key code read to the nearest tone in tone to the key code. もし、同じ位の近さの調内音が複数あれば、次の優先順位に従った調内音に変換する。 If there are multiple proximity regulating the sound of the same-position, it converted to sound the tone in accordance with the next priority.

【0082】 1度>5度>3度>2度>6度>7度>4度 例えば、検出された調がC長調であるとすると1度の音がCであり、5度の音がGであり、3度の音がEである。 [0082] Once> 5 °> 3 °> 2 °> 6 °> 7 °> 4 degrees for example, a sound of a time when the tone is detected is assumed to be C major is C, is 5 degrees sounds is a G, 3 times the sound of an E. 1度の音が最優先であり、続いて5度、3度、・・ Once the sound of is a top priority, followed by 5 degrees, 3 degrees, ...
・の順の調内音に変換される。 It is converted in the order of the governor in the sound of -.

【0083】楽曲の最後の音は、一般的にその調の1度の音で終わり易いという規則がある。 [0083] the end of the sound of the music is generally the tone there is a rule that tends to end at once the sound of the. したがって、1度の音を最優先し、続いて最後の音に成りやすい5度、3 Therefore, a top priority once the sound of, followed by easy to become at the end of the sound 5 degrees, 3
度、・・・の順の音を優先させて変換を行う。 Every time, perform the conversion give priority to the order of the sound of .... そして、 And,
ステップU4において、調内音に変換されたキーコードをレジスタKCに格納する。 In step U4, and stores the converted key codes to tone the sound register KC.

【0084】ステップU5では、レジスタKCに格納されているキーコードを元のキーコードを読み出した配列番号のメモリMEM()に記憶し直す。 [0084] At step U5, stored again in the memory MEM of SEQ ID NO: reading the original key code the key code stored in the register KC (). レジスタKCには、調内音に修正されたキーコードが格納されている。 The register KC, key code that has been modified to tone the sound is stored.
ただし、検出されたキーコードが調内音であるときには、正しい認識が行われたとして修正を行わずに検出されたキーコードそのものがレジスタKCに格納されている。 However, when the detected key code is adjusted in the sound, the correct recognition is detected without modification as was done key code itself is stored in the register KC.

【0085】ステップU7では、番号レジスタmをデクリメントする。 [0085] In step U7, decrements the number register m. 番号mの値を1小さくすることにより、 By the value of numbers m 1 small,
時間的に1つ前の音を表す番号mに変えることができる。 Temporally it can be varied in number m representing the previous sound. 番号mが示す1つ前の音についての処理を次に行う。 Then performs the processing for the previous sound indicated by the number m.

【0086】ステップU8では、メモリMEM()に格納されているm番目のキーコードを読み出す。 [0086] In step U8, read the m-th key code stored in the memory MEM (). 読み出されたキーコードは最後から2番目の音である。 Key code that has been read is the second of sound from the last. ステップU9では、読み出したキーコードが調内音であるか否かを調べる。 In step U9, the read key code is checked whether the tone in tone. 調内音であれば、正しく検出されたキーコードであると判断して、メモリMEM()のm番目のキーコードを修正せずにステップU14へ進み、レジスタK If tone in tone, it is determined that the correctly detected key code, the process proceeds without modifying the m-th key code memory MEM () to step U14, the register K
Cにキーコードを格納した後にステップU13へ進む。 After storing the key code in C proceeds to step U13.

【0087】一方、読み出したキーコードが調内音でなければ、誤認識により検出されたキーコードであると判断して、ステップU10へ進む。 [0087] On the other hand, if the read key code is adjusted in the sound, it is determined that the key code detected by erroneous recognition, the process proceeds to step U10. ステップU10では、 In step U10,
読み出したm番目のキーコードを調内音に丸め込む処理を行う ステップU10では、読み出したキーコードをそのキーコードに最も近い調内音に変換する。 In step U10 performs processing rounding the read m-th key code temper the sound, converts the read key code to the nearest tone in tone to the key code. もし、同じ位の近さの調内音が複数あるときには、レジスタKCに格納されているキーコードに最も近い調内音に変換する。 If, when the closeness of the tone in the sound of the same position have multiple, converted to the nearest tone in tone to the key code stored in the register KC.

【0088】レジスタKCには、ステップU4またはステップU6のいずれかで格納されたキーコードが記憶されている。 [0088] in the register KC, the key code stored in either step U4 or step U6 are stored. つまり、楽曲の最後の音の修正後のキーコードが記憶されている。 In other words, the key code after the correction of the last note of the music is stored. その最後の音のキーコードに最も近いキーコードに優先的に変換される。 It is preferentially converted to the nearest key code in the key code of the last note.

【0089】ステップU11では、調内音に修正変換されたキーコードをレジスタKCに格納し、ステップU1 [0089] stored in step U11, a key code that has been modified converted into tone in tone in the register KC, step U1
2でレジスタKCに格納されたキーコードをメモリME The key code stored in the register KC 2 memory ME
M()の元の記憶場所に記憶し直す。 Re-stored in the original storage location of M ().

【0090】ステップU13では、番号mが1であるか否かを調べる。 In Step U13, number m is checked whether or not 1. 番号mが1であるということは、楽曲の1番最初の音(最初にマイクから入力された音声信号の音)についての調内音への修正処理を終了したことを示す。 That number m is 1, indicating that it has finished the correction process to the tone in the tone of the No. 1 first note of the music (sound initially inputted from the microphone audio signal). 修正処理は、楽曲の最後の音から最初の音まで順番に行っているので、最初の音についての処理が終了すれば、全ての音についての処理が終了したことになる。 Correction process, because it went to the order from the end of the sound of music until the first of the sound, if the processing is complete for the first sound, so that the processing for all of the sound has been completed.

【0091】番号mが1でなければ、ステップU7へ戻り、番号mをデクリメントして1つ前の音のキーコードについての修正処理を繰り返す。 [0091] unless the number m is 1, return to step U7, repeat the correction process for the key code of the previous sound and decrements the number m. メモリMEM()のm m of the memory MEM ()
番目のキーコードを読み出し、読み出したキーコードが調内音であればキーコードの修正を行わない。 Th reading the key code, read the key code is not carried out the modification of the key code if the tone in the sound. 読み出したキーコードが調内音でなければ、最も近い調内音のキーコードに変換を行う。 If the read key code is adjusted in the sound, to convert the key code of the closest tone in tone. 近い調内音が複数あるときには、1つ前の音の修正後のキーコードに近いキーコードに優先的に変換する。 When near regulating the sound is more than one, it converts preferentially the key code close to the key code after modification of the previous sound.

【0092】楽曲の最後の音の優先順位は、前述のように調の1度、5度の音等を基準にして決めたが、最後の音以外の音の優先順位は、1つ前の音のキーコードに近い音に優先して、キーコードを決める。 [0092] Priority of the last sound of the music is 1 degrees tone as described above, was determined on the basis of the five degrees of sound or the like, the priority of the sounds other than last note, previous in preference to sound close to the key code of the sound, determine the key code. 最後の音のみは、調に関連した音になり易いからである。 Only the last of the sound is because tends to sound associated with the tone.

【0093】以上の修正処理により、誤認識されたキーコードが修正されるとメモリMEM()に格納される。 [0093] By the above correction processing, is stored when the misrecognized keycodes is modified in the memory MEM ().
修正処理が終了すると、図7の元の処理に戻る。 When the correction process is completed, it returns to the original process of FIG. 7. なお、 It should be noted that,
以上のキーコードの修正処理では、全ての調外音を調内音に修正する場合について述べたが、必ずしも全てを修正する必要はない。 In the above correction processing key code has dealt with the case of correcting all the tone outside sound tone within the sound, not necessarily correct all. 例えば、1小節内でのみ効力を有する♯,♭等の臨時記号を用いて部分的に調外音を用いたい場合もある。 For example, it ♯ have effect only within one measure, sometimes want to use the partially regulated outside sound with accidentals such ♭. そのような場合には、検出された調において特に使用が禁止されている音(音名)のみを禁止されていない音に修正するようにしてもよい。 In such a case, it may be corrected in sound not specifically prohibited only sounds that are not allowed (note name) in the detected tone.

【0094】また、調を用いてキーコードを修正する他に、スケールの検出を行い使用する音高の幅を複数検出し、検出された音高の幅より外の音については所定の音高幅内の音に修正する処理を行ってもよい。 [0094] In addition to modifying the key code using a tone, the width of the pitch to be used performs detection of the scale detects a plurality, predetermined pitch for the sound outside from the detected tone pitch of the width a process to modify the sound of the width may be performed. スケールは調性と和音によって定まり、スケールによって使用される音名が決まるので、この音名に対応する音高にそれぞれ幅を持たせることにより、使用される音高の幅が求められる。 Scale is determined by the tonality and chords, since the sound used by the scale name is determined, by providing each width to the pitch corresponding to the pitch name, the width of the pitch to be used is determined.

【0095】図10は、図2のメインルーチン中のステップP8の演奏データ変換処理の詳細を示すフローチャートである。 [0095] Figure 10 is a flowchart showing details of the performance data conversion processing in step P8 in the main routine of FIG. 演奏データ変換は、入力音声信号から検出されたキーコードを基にして、発音可能な演奏データ形式への変換を行う。 Performance data conversion, based on the key code detected from the input speech signal, perform conversion to pronounceable performance data format.

【0096】ステップV1では、配列番号レジスタP、 [0096] In step V1, SEQ ID NO: register P,
デュレーションレジスタD、キーオンフラグKONにそれぞれ0をセットする。 Duration register D, and set to 0 each key-on flag KON. 配列番号レジスタPは、キーコードが格納されているメモリMEM()の配列番号を示す。 SEQ ID register P shows the sequence number of the memory MEM in which the key code is stored (). デュレーションレジスタDは、同一のキーコードを発音し続ける持続時間または発音を行わない休符状態の時間を格納する。 Duration register D stores the same rest state is not performed to keep the duration or pronunciation pronunciation keycode time. キーオンフラグKONは、何らかのキーコードを発音中であるときに1となり、いずれのキーコードをも発音しないときには0となる。 Key-on flag KON is becomes 1 when it is being sounded any key code, becomes zero when not pronounce any of the key code.

【0097】ステップV2では、演奏データメモリ中の書き込み位置を示す書き込みポインタを演奏データメモリの先頭にセットし、最初の演奏データの書き込みの準備を行う。 [0097] In step V2, and set the write pointer indicating a writing position in the performance data memory to the beginning of the performance data memory, to prepare for the writing of the first performance data.

【0098】ステップV3では、メモリMEM(P)にエンドコードが格納されているか否かを調べる。 [0098] At step V3, checks whether the end code in the memory MEM (P) is stored. 配列番号Pは、初期設定で0に設定されている。 SEQ ID NO: P is set to 0 by default. メモリMEM Memory MEM
()には、入力音声信号から検出された後に必要に応じて修正が行われたキーコードが格納されている。 To (), the key code modifications were made as necessary after being detected from the input speech signal is stored. もし、 if,
メモリMEM()にエンドコードが格納されていれば、 If the end code is stored in the memory MEM (),
その配列番号の位置で音声入力が終了していることを示す。 It indicates that the voice input is terminated at the position of the SEQ ID NO.

【0099】メモリMEM(P)にエンドコードが格納されていなければ、ステップV4へ進み、メモリMEM [0099] If the end code in the memory MEM (P) is not stored, the process proceeds to step V4, the memory MEM
(P)に格納されているキーコードを基にして演奏データに変換する。 It converts the performance data based on the key code stored in the (P). 配列番号Pについての演奏データ変換方法は、後に説明する。 Performance data conversion method for SEQ ID NO: P will be described later.

【0100】メモリMEM(P)のキーコードについて演奏データが生成された後には、ステップV5へ進み、 [0100] After the performance data has been generated for the key code of the memory MEM (P), the process proceeds to step V5,
配列番号レジスタPをインクリメントして次の配列番号についての演奏データの生成に備える。 Increments the sequence number register P provided to generate performance data for the next sequence number. また、デュレーションレジスタDをインクリメントして発音の持続時間をカウントする。 Further, it counts the duration of the sound increments the duration register D. デュレーションレジスタDが1増えると、16分長の長さだけ持続時間が増加する。 When duration register D is increased 1 by a length of 16 minutes length duration is increased. メモリM Memory M
EM()には、16分長毎にキーコードが格納されているからである。 The EM (), since the key code is stored every 16 minutes in length.

【0101】その後、ステップV3へ戻り、次の配列番号Pに格納されているキーコード(MEM(P))がエンドコードであるか否かを調べる。 [0102] Then, the process returns to step V3, the key code stored in the following SEQ ID NO: P (MEM (P)) is checked whether the end code. エンドコードでなければ、ステップV4へ進み、メモリMEM(P)に格納されているキーコードを基にして演奏データの生成を行う。 If an end code, the process proceeds to step V4, and generates performance data based on the key code stored in the memory MEM (P). そして、ステップV5において、配列番号レジスタPとデュレーションレジスタDをそれぞれインクリメントする。 Then, in Step V5, it increments the sequence number register P and duration register D, respectively.

【0102】デュレーションレジスタDには、同一のキーコードが連続してメモリMEM()に格納されている数が記憶される。 [0102] The duration register D, the number of the same key code is continuously stored in the memory MEM () is stored. 例えば、A4のキーコードが1つだけ現れて次にはキーコードが変わってしまうときには、デュレーションレジスタDに1が格納され、A4の16分音符を示す。 For example, when the key code of A4 would change the key code to the next it appears only one is 1 stored in the duration register D, shows a sixteenth note of A4. また、A4のキーコードが2つ連続して続けば、デュレーションレジスタDには2が格納され、A Also, if followed by the key code of the A4 two successive, 2 is stored in the duration register D, A
4の8分音符を示す。 It shows the eighth note of 4.

【0103】ステップV3において、メモリMEM [0103] In step V3, the memory MEM
(P)にエンドコードが格納されていると判断されたときには、キーコードの終了を示すので、ステップV6へ進む。 When the end code is judged to be stored in the (P), so indicating the end of a key code, the process proceeds to step V6. ステップV6では、キーオンフラグKONが1であるか否かを調べる。 At step V6, the key-on flag KON is examined whether or not 1. キーオンフラグKONが1であれば、現在いずれかのキーコードを発音中であるこを演奏データが示しているので、ステップV7へ進む。 If the key-on flag KON is 1, because the performance of the current This is being sounded one of the key code data indicates, the process proceeds to step V7.

【0104】ステップV7では、現在発音中のキーコードについての発音持続時間を示すデュレーションレジスタDの値をデュレーションコードと共に演奏データメモリに書き込む。 [0104] At step V7, writes the value of the duration register D indicating the pronunciation duration of the key code for the current sounding the performance data memory along with duration code. デュレーションコードは、演奏データメモリにおいて、発音持続時間を示すデュレーションレジスタDのデータが次に続くことを示すコードであり、デュレーションコードとデュレーションレジスタDのデータは、必ず組で演奏データメモリに書き込まれる。 Duration code, the performance data memory, a code indicating that the data of the duration register D indicating the sound duration subsequent data duration code and duration register D is written in the performance data memory always in pairs. 書き込みを終了した後、演奏データメモリへの書き込みポインタを進めて次の書き込みの準備をする。 After completion of the writing, and proceed to write pointer to the performance data memory to prepare for the next write.

【0105】ステップV8では、発音の終了を示すキーオフコードと演奏データの終了を示すエンドコードを演奏データメモリに書き込む。 [0105] In step V8, writes an end code indicating the end of the key-off code and performance data indicating the end of the pronunciation in the performance data memory. 書き込みを終了した後、演奏データの生成を終了して図2のメインルーチンの処理に戻る。 After completion of the writing, and terminates the generation of the performance data back to the main routine FIG.

【0106】ステップV6において、キーオンフラグK [0106] In step V6, key-on flag K
ONが1でないと判断されたときには、現在発音中ではないことを示すので、ステップV9へ進み、エンドコードのみを演奏データメモリに書き込む。 When ON is not 1 judgment, it indicates that not currently sounding, the process proceeds to step V9, writes only end code in the performance data memory. 書き込みを終了した後、図2のメインルーチンの処理へ戻る。 After completion of the writing, the process returns to the main routine of FIG. 2.

【0107】図11は、図10のステップV4における演奏データ変換処理の詳細を示すフローチャートである。 [0107] Figure 11 is a flowchart showing details of the performance data conversion processing in step V4 in FIG. メモリMEM(P)にエンドコードではなく、キーコードが格納されているときに、メモリMEM(P)のキーコードを基にして演奏データに変換する手順を示す。 Not end code in memory MEM (P), when the key code is stored, indicating the steps of converting the performance data based on the key code of the memory MEM (P).

【0108】ステップW1では、メモリMEM(P)にオール1が格納されているか否かを調べる。 [0108] In step W1, examines whether all 1 in the memory MEM (P) is stored. オール1が格納されていれば、入力が無音状態であることを示す。 If all 1 is stored, indicating that the input is in the silent state.
メモリMEM(P)にオール1が格納されていなければ、何らかのキーコードが記憶されているので、そのキーコードを基にした演奏データを生成するためにステップW2へ進む。 Unless all 1 is stored in the memory MEM (P), since some key code is stored, the process proceeds to step W2 in order to generate the performance data based on the key code.

【0109】ステップW2では、キーオンフラグKON [0109] In step W2, key-on flag KON
が1であるか否かを調べる。 There checks whether or not it is 1. キーオンフラグKONが1 Key-on flag KON 1
でなければ、今までキーオフで発音状態でなかったので、ステップW6へ進み、キーオンフラグKONを1にして、ステップW7へ進む。 Otherwise, it did not in the pronunciation state in the key-off until now, the process proceeds to step W6, and the key-on flag KON to 1, the process proceeds to step W7.

【0110】ステップW7では、前回のキーオフを示す休符の長さを示すデュレーションコードとデュレーションレジスタDの値を書き込む。 [0110] At step W7, writes the value of the duration code and duration register D indicating the length of the rest indicating the previous key-off. 書き込みを終了した後、 After completion of the writing,
演奏データメモリの書き込みポインタを進めて、ステップW8へ進む。 And proceed to write pointer of the performance data memory, the process proceeds to step W8.

【0111】ステップW8では、演奏データメモリに今回のキーオンを示すキーオンコードとメモリMEM [0111] In step W8, key-on code indicating the current key-on the performance data memory and the memory MEM
(P)に格納されているキーコードを書き込む。 Writes the key code stored in the (P). 書き込みを終了した後、演奏データメモリの書き込みポインタを進めて、ステップW9へ進む。 After completion of the writing, and proceed to write pointer of the performance data memory, the process proceeds to step W9.

【0112】ステップW9では、演奏データメモリに書き込んだメモリMEM(P)のキーコードをレジスタK [0112] In step W9, register the key code of the written to the performance data memory memory MEM (P) K
Cに格納する。 And stores it in the C. レジスタKCに格納されたキーコードは、次の配列番号P+1の処理おいて、同じキーコードが連続しているか否かの判断に用いられる。 Key code stored in the register KC is allowed processing of the next sequence number P + 1, is used to determine whether the same key code is continuous.

【0113】ステップW10では、今回演奏データメモリにキーオンコードと共に書き込まれたキーコードの持続時間をカウントし直すために、デュレーションレジスタDを0にリセットする。 [0113] In step W10, in order to re-count the duration of the key code written with a key-on code to the current performance data memory, resets the duration register D to zero. その後、図10の処理へ戻り、次の配列番号P+1についての演奏データの生成処理を行う。 Thereafter, the process returns to FIG. 10, performs the generation processing of the performance data for the next SEQ ID NO: P + 1.

【0114】次に、前回演奏データメモリに書き込んだキーコードと同じキーコードがメモリMEM(P)に格納されている場合について説明する。 [0114] Next, the key code the same as the key code previously written in the performance data memory will be described when it is stored in the memory MEM (P). つまり、メモリM That is, the memory M
EM(P)のキーコードとMEM(P−1)のキーコードが同じ場合である。 The key code of the EM key code and MEM (P-1) of (P) is the case the same.

【0115】その場合、ステップW1において、メモリMEM(P)にオール1が格納されていないと判断され、さらにステップW2において、前回から引き続き今回もキーオン中であると判断され、ステップW3へ進む。 [0115] In this case, in step W1, all 1 is determined not to be stored in the memory MEM (P), further in step W2, it is determined to be in the key-on continue this from the previous, the process proceeds to step W3.

【0116】ステップW3では、メモリMEM(P)に格納されているキーコードとレジスタKCに格納されているキーコードが同じであるか否かを調べる。 [0116] In step W3, checks whether the key code stored in the key code and the register KC which is stored in the memory MEM (P) are the same. レジスタKCには、前回から引き続きキーオン中であるキーコードが格納されている。 The register KC, the key code is stored is still in the key-on from the last.

【0117】メモリMEM(P)のキーコードとレジスタKCのキーコードが同じであれば、今回の配列番号P [0117] If the key code of the key code and the register KC of the memory MEM (P) are the same, the current SEQ ID NO: P
についても前回と同じキーコードを引き続き発音することを示すので、演奏データメモリには何も書き込まずに、図10の処理へ戻り、デュレーションレジスタDの値のみをインクリメントして、キーコードの発音持続時間をカウントする。 It indicates that continue to sound the same key code as the previous also, without writing anything to the performance data memory, the process returns to FIG. 10 increments only the value of the duration register D, pronunciation sustained keycode to count the time.

【0118】次に、前回演奏データメモリに書き込んだキーコードと異なるキーコードがメモリMEM(P)に格納されている場合について説明する。 [0118] Next, the key code that is different from the key code previously written in the performance data memory will be described when it is stored in the memory MEM (P). つまり、キーオン中において、発音すべきキーコードが変化する場合である。 That is, during the key-on is when the key code to be sounded is changed.

【0119】その場合、ステップW1において、メモリMEM(P)にオール1が格納されていないと判断され、さらにステップW2において、前回から引き続き今回もキーオン中であると判断され、ステップW3へ進む。 [0119] In this case, in step W1, all 1 is determined not to be stored in the memory MEM (P), further in step W2, it is determined to be in the key-on continue this from the previous, the process proceeds to step W3.

【0120】ステップW3では、メモリMEM(P)に格納されているキーコードとレジスタKCに格納されているキーコードが同じであるか否かを調べる。 [0120] In step W3, checks whether the key code stored in the key code and the register KC which is stored in the memory MEM (P) are the same. メモリM Memory M
EM(P)のキーコードとレジスタKCのキーコードが同じでなければ、今回の配列番号Pについての発音指示は前回のものとは異なるキーコードの発音を意味するので、ステップW4へ進む。 If the key code of the key code and registers KC of EM (P) are the same, since the sound generation instruction for this SEQ ID NO: P means the pronunciation of different key codes from the previous one, the process proceeds to step W4.

【0121】ステップW4では、演奏データメモリに前回までのキーコードの発音の持続時間を示すデュレーションレジスタDの値をデュレーションコードと共に書き込む。 [0121] At step W4, writes the value of the duration register D indicating the duration of pronunciation of key codes up to the previous the performance data memory along with duration code. 書き込みを終了した後、演奏データメモリの書き込みポインタを進めて、次の書き込みに備える。 After completion of the writing, and proceed to write pointer of the performance data memory, ready for the next write.

【0122】ステップW5では、前回のキーコードについての発音終了を示すキーオフコードを演奏データメモリに書き込み、演奏データメモリの書き込みポインタを進める。 [0122] In step W5, write the key-off code that indicates the pronunciation end of the previous key code to the performance data memory, advancing the write pointer of the performance data memory.

【0123】ステップW8では、今回のキーコードについての発音開始を示すキーオンコードとメモリMEM [0123] In step W8, key-on code and the memory MEM indicating the start of sounding about this key code
(P)に格納されているキーコードを演奏データメモリに書き込み、演奏データメモリの書き込みポインタを進める。 Write the key code in the performance data memory stored in the (P), advancing the write pointer of the performance data memory.

【0124】その後、ステップW9においてメモリME [0124] After that, the memory ME in step W9
M(P)に格納されているキーコードをレジスタKCに格納し、ステップW10においてデュレーションレジスタDを0にリセットし、次の発音持続時間をカウントし直す。 Storing the key code stored in the M (P) in the register KC, resets the duration register D to zero at step W10, again counting the next note duration. そして、図10の処理に戻り、次の配列番号P+ Then, the process returns to FIG. 10, the following SEQ ID NO: P +
1についての処理を行う。 The processing of about 1.

【0125】次に、メモリMEM(P)にキーコードでななく無音状態(休符)を示すオール1が格納されている場合の演奏データ生成手順を説明する。 [0125] Next, a performance data generating procedure for all 1 showing a no such a key code in a memory MEM (P) silent state (rest) is stored. その場合、ステップW1において、メモリMEM(P)にオール1が格納されていると判断され、ステップW11に進む。 In that case, in step W1, all 1 is judged to be stored in the memory MEM (P), the process proceeds to step W11.

【0126】ステップW11では、キーオンフラグKO [0126] In step W11, key-on flag KO
Nが1であるか否かを調べる。 N is checked whether it is 1. キーオンフラグKONが1であれば、キーオフを指示するためにステップW12 If the key-on flag KON is 1, step to indicate the key-off W12
へ進み、キーオンフラグKONを0にする。 To proceed, the key-on flag KON to 0.

【0127】ステップW13では、演奏データメモリに前回までのキーコードの発音の持続時間を示すデュレーションコードとデュレーションレジスタDの値を書き込む。 [0127] In step W13, writes the value of the duration code and duration register D indicating the duration of pronunciation of key codes up to the previous the performance data memory. 書き込みを終了した後、演奏データメモリの書き込みポインタを進めて、次の書き込みに備える。 After completion of the writing, and proceed to write pointer of the performance data memory, ready for the next write.

【0128】ステップW14では、前回のキーコードについての発音終了を示すキーオフコードを演奏データメモリに書き込み、演奏データメモリの書き込みポインタを進める。 [0128] In step W14, write the key-off code that indicates the pronunciation end of the previous key code to the performance data memory, advancing the write pointer of the performance data memory. その後、ステップW10へ進みデュレーションレジスタDを0にリセットして、キーオフ後の休符の持続時間をカウントし直す。 Then reset to 0 the duration register D proceeds to step W10, again counting the duration of rest after key-off. そして、図10の処理へ戻り、次の配列番号P+1についての処理を行う。 Then, the process returns to FIG. 10, the processing associated with the next sequence number P + 1.

【0129】メモリMEM(P)にオール1が格納されていると判断した後において、ステップW11でキーオンフラグKONが1でないと判断されたときには、キーオフの状態が前回から引き続いていることを示すので、 [0129] In after determining that all the memory MEM (P) 1 is stored, when the key-on flag KON is not 1 determined in step W11, it indicates that the state of the key-off is followed from the previous ,
演奏データメモリに何も書き込まずに図10の処理に戻り、キーオフ中である休符の持続時間を示すデュレーションレジスタDをインクリメントし、次の配列番号P+ Returning to the processing of FIG. 10 in the performance data memory without writing anything, increment the duration register D indicating the duration of the rest is in key-off, the following SEQ ID NO: P +
1についての処理を行う。 The processing of about 1.

【0130】以上、演奏データの生成手順を述べたが、 [0130] The above is a description of the procedure for generating performance data,
演奏データの形式は上述の形式に限られず、MIDI形式等の演奏データを生成するようにしてもよい。 Format of the performance data is not limited to the type described above, may generate performance data such as MIDI format. 本実施例は、マイクから入力される音声信号に対して、量子化処理を行った後に平均ピッチを検出することにより、ピッチの変動に対して悪影響を受けることなく、正しいピッチを検出することができる。 This embodiment, the audio signal input from the microphone, by detecting the average pitch after the quantization process, without receiving an adverse effect on the variation of the pitch, able to detect the correct pitch it can.

【0131】また、検出されたピッチに対して、調検出により得られる調を用いて、誤認識により検出されたピッチの修正を行う。 [0131] Further, with respect to the detected pitch, using the tone obtained by adjusting detection, to correct the detected by erroneous recognition pitch. 調によって決まる音楽規則を利用して、ピッチの修正処理を行うことにより、認識率の高いピッチ検出を実現することができる。 By utilizing the music rule which is determined by tone, by performing the correction processing of the pitch, it is possible to realize a high recognition rate pitch detection. 検出修正されたピッチは、演奏データ変換処理を行うことにより、発音可能な演奏データに変換される。 Detection modified pitch, by performing performance data conversion processing is converted into pronounceable musical data.

【0132】なお、本実施例では、入力された音声から調を検出したが、スイッチ等を用いて演奏者が調を入力するようにしてもよい。 [0132] Incidentally, in this embodiment, detects the tone from the voice input, it may be performer to input tone with a switch or the like. 以上実施例に沿って本発明を説明したが、本発明はこれらに制限されるものではない。 The present invention has been described in connection with the preferred embodiments, but the invention is not limited thereto.
例えば、種々の変更、改良、組合わせ等が可能なことは当業者に自明であろう。 For example, various modifications, improvements, capable combinational etc. It will be apparent to those skilled in the art.

【0133】 [0133]

【発明の効果】入力された音声信号から検出した複数の時間区間毎のピッチについての平均ピッチを求めることにより、ピッチの細かな変動による悪影響を減らすことができる。 By obtaining the average pitch of the input plurality of pitches of each time section detected from the audio signal according to the present invention can reduce the adverse effect of fine variations in pitch. 平均化されたピッチを基にして音高情報を生成することにより、正しい音高情報を得ることができる。 By generating pitch information based on the averaged pitch, it is possible to obtain the correct pitch information.

【0134】また、楽曲を構成する入力音声信号から検出された音高情報を基にして調の検出を行った後に、検出された調の音楽規則に応じて音高情報の修正を行う。 [0134] Further, after the detection of the based on the detected pitch information tone from the input speech signal constituting music, to correct the pitch information in response to the detected tone musical rules.
音高情報の修正を行うことにより、正しい音高情報を得ることができる。 By performing the correction of the pitch information, it is possible to obtain the correct pitch information.

【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS

【図1】 本発明を実施するための音声信号変換装置のシステム構成例を示すブロック図である。 Is a block diagram showing a system configuration example of the audio signal converting apparatus for implementing the present invention; FIG.

【図2】 入力変換処理のメインルーチンを示すフローチャートである。 2 is a flowchart showing a main routine of the input converter.

【図3】 図2のステップP3における音声入力処理と平均ピッチ検出処理の詳細を示すフローチャートである。 3 is a flowchart showing details of the average pitch detection processing and voice input process in step P3 in Fig.

【図4】 CPUが行う割り込み処理を示すフローチャートである。 4 is a flowchart showing an interrupt process performed by the CPU.

【図5】 メモリMEM()の構成例を示す概念図である。 5 is a conceptual diagram showing a configuration example of the memory MEM ().

【図6】 図2のメインルーチン中のステップP6で行うキーコード変換の処理の詳細を示すフローチャートである。 6 is a flowchart showing details of the process of the key code conversion performed in step P6 in the main routine of FIG.

【図7】 図2のメインルーチン中のステップP7の調内キーコードへの修正処理の詳細を示すフローチャートである。 7 is a flowchart showing the details of the correction process to the tone in the key code in step P7 in the main routine of FIG.

【図8】 データメモリに格納されている調の構成音の音名データを示す概念図である。 8 is a conceptual diagram showing a pitch name data configuration sound tone stored in the data memory.

【図9】 図7のステップT2の調内音丸め込み処理の詳細を示すフローチャートである。 9 is a flowchart showing the details of regulating the sound rounding process in step T2 of FIG.

【図10】 図2のメインルーチン中のステップP8の演奏データ変換処理の詳細を示すフローチャートである。 10 is a flowchart showing the details of the performance data conversion processing in step P8 in the main routine of FIG.

【図11】 図10のステップV4における演奏データ変換処理の詳細を示すフローチャートである。 11 is a flowchart showing the details of the performance data conversion processing in step V4 in FIG.

【符号の説明】 DESCRIPTION OF SYMBOLS

1 マイク、 2 D/A変換器、 3 出力端子、 4 音源、5 サウンドシステム、 6 タイマ、 7 CPU、 8 プログラムメモリ、 1 microphone, 2 D / A converter, 3 output terminal, 4 a sound source, 5 sound system, 6 timer, 7 CPU, 8 program memory,
9 ワーキングメモリ、 10 データメモリ、 9 working memory, 10 data memory,
11 バス 11 bus

Claims (2)

    【特許請求の範囲】 [The claims]
  1. 【請求項1】 外部から供給される音声を入力して音声信号を生成するための音声入力手段と、 前記音声入力手段が生成する音声信号を所定の時間区間に分割して該各時間区間におけるピッチを抽出するためのピッチ抽出手段と、 前記ピッチ抽出手段により抽出される複数のピッチを平均化して平均ピッチを演算するための平均ピッチ演算手段と、 前記平均ピッチ演算手段により演算される平均ピッチを音高情報に変換するための音高情報変換手段とを有する音声信号変換装置。 In claim 1. A voice input means for generating an audio signal to input audio supplied from the outside, respective divides the audio signal the audio input means for generating a predetermined time interval time interval pitch extracting means for extracting the pitch, the average pitch calculating means for calculating an average pitch plurality of pitch by averaging extracted by the pitch extraction unit, average pitch that are calculated by the average pitch calculating means speech signal conversion device having a tone pitch information converting means for converting the pitch information.
  2. 【請求項2】 外部から楽曲を構成する音声を入力して音声信号を生成するための音声入力手段と、 前記音声入力手段が生成する音声信号からピッチを抽出するためのピッチ抽出手段と、 前記ピッチ抽出手段により抽出されるピッチを音高情報に変換するための音高情報変換手段と、 調情報を供給するための調情報供給手段と、 前記調情報手段から供給される調情報に応じて前記音高情報を修正するための音高情報修正手段とを有する音声信号変換装置。 An audio input means for generating an audio signal from wherein external inputting sound constituting the music, the pitch extracting means for extracting a pitch from the audio signal, wherein the voice input means generates said and pitch information converting means for converting a pitch extracted by the pitch extracting means to the pitch information, and key information supplying means for supplying the key information, in accordance with the key information supplied from the key information unit speech signal conversion device having a pitch information correcting means for correcting said pitch information.
JP6081392A 1994-04-20 1994-04-20 Audio signal converter Expired - Fee Related JP3055392B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6081392A JP3055392B2 (en) 1994-04-20 1994-04-20 Audio signal converter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6081392A JP3055392B2 (en) 1994-04-20 1994-04-20 Audio signal converter

Publications (2)

Publication Number Publication Date
JPH07287571A true JPH07287571A (en) 1995-10-31
JP3055392B2 JP3055392B2 (en) 2000-06-26

Family

ID=13745039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6081392A Expired - Fee Related JP3055392B2 (en) 1994-04-20 1994-04-20 Audio signal converter

Country Status (1)

Country Link
JP (1) JP3055392B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096186B2 (en) 1998-09-01 2006-08-22 Yamaha Corporation Device and method for analyzing and representing sound signals in the musical notation
JP2007248610A (en) * 2006-03-14 2007-09-27 Mitsubishi Electric Corp Musical piece analyzing method and musical piece analyzing device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096186B2 (en) 1998-09-01 2006-08-22 Yamaha Corporation Device and method for analyzing and representing sound signals in the musical notation
JP2007248610A (en) * 2006-03-14 2007-09-27 Mitsubishi Electric Corp Musical piece analyzing method and musical piece analyzing device

Also Published As

Publication number Publication date
JP3055392B2 (en) 2000-06-26

Similar Documents

Publication Publication Date Title
US5850051A (en) Method and apparatus for creating an automatic accompaniment pattern on the basis of analytic parameters
Brossier Automatic annotation of musical audio for interactive applications
DE69932796T2 (en) MIDI interface with voice capability
JP3907587B2 (en) Acoustic analysis method using sound information of musical instruments
US5915237A (en) Representing speech using MIDI
Bonada et al. Synthesis of the singing voice by performance sampling and spectral models
US6316710B1 (en) Musical synthesizer capable of expressive phrasing
US5913259A (en) System and method for stochastic score following
US6930236B2 (en) Apparatus for analyzing music using sounds of instruments
US6541691B2 (en) Generation of a note-based code
US5642470A (en) Singing voice synthesizing device for synthesizing natural chorus voices by modulating synthesized voice with fluctuation and emphasis
US6298322B1 (en) Encoding and synthesis of tonal audio signals using dominant sinusoids and a vector-quantized residual tonal signal
Klapuri et al. Robust multipitch estimation for the analysis and manipulation of polyphonic musical signals
Ueda et al. HMM-based approach for automatic chord detection using refined acoustic features
US5986199A (en) Device for acoustic entry of musical data
US6798886B1 (en) Method of signal shredding
JP3681334B2 (en) Pitch detection and intonation correction device and method
US6816833B1 (en) Audio signal processor with pitch and effect control
JPH04199096A (en) Karaoke playing device
US5747715A (en) Electronic musical apparatus using vocalized sounds to sing a song automatically
WO1993019455A1 (en) Digital sampling instrument
JPH08234771A (en) Karaoke device
US8618402B2 (en) Musical harmony generation from polyphonic audio signals
JPH10268875A (en) Karaoke device
USRE37041E1 (en) Voice processor

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000314

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090414

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090414

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100414

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees