JP3906997B2 - 演奏補助装置、入力音変換装置及びそれらのプログラム - Google Patents

演奏補助装置、入力音変換装置及びそれらのプログラム Download PDF

Info

Publication number
JP3906997B2
JP3906997B2 JP2003312111A JP2003312111A JP3906997B2 JP 3906997 B2 JP3906997 B2 JP 3906997B2 JP 2003312111 A JP2003312111 A JP 2003312111A JP 2003312111 A JP2003312111 A JP 2003312111A JP 3906997 B2 JP3906997 B2 JP 3906997B2
Authority
JP
Japan
Prior art keywords
information
pitch
sound
input
conversion
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
Application number
JP2003312111A
Other languages
English (en)
Other versions
JP2004206073A (ja
Inventor
和寿 植木
忠彦 池谷
政郎 石橋
真一 伊藤
幸世 久保
正樹 原
哲也 高木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
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 JP2003312111A priority Critical patent/JP3906997B2/ja
Publication of JP2004206073A publication Critical patent/JP2004206073A/ja
Application granted granted Critical
Publication of JP3906997B2 publication Critical patent/JP3906997B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

この発明は、演奏補助装置、より詳しくは、ユーザの入力する演奏情報を補正する演奏補助システムに関し、さらに、入力音情報をコード(chord :和音)に合った音高に変換するための入力音変換システム、特に、現在発音中の音高と重複しないように発音を制御したり、基本音群以外の音高にも変換したり、或いは、コードだけでなく音色にも合うように音高を変換することができる入力音変換システムに関する。
従来、音楽的知識の乏しい演奏者が、音楽理論を気にしないで、自由に演奏を楽しめるように、入力される演奏信号を音楽理論に沿ったものに変換する装置が知られている。(例えば、特許文献1参照。)
特開平5−27757号公報
従来の演奏補助装置は、入力される演奏信号を、一律にコード構成音や、指定される調のスケールトーンに変換してしまい。演奏者の感性を十分に活かすことが出来ない場合がある。
また、従来より、コード進行に沿った伴奏や何らかの曲データを再生させながら、ユーザが鍵盤などの演奏操作子から演奏を行うことができる装置が、例えば、特許文献2により提案されている。このような装置では、同時に再生させている伴奏などに合わない音がユーザにより演奏されてしまうことがある。
特開平5−188956号公報
これに対して、ユーザの演奏音を或るルールに基づいて変換し、予め設定されているコード構成音になるようにする方法が考えられるが、この場合、変換後の音高が既に発音中の音高と一致してしまう可能性がある。また、発音中の音高と一致した音をそのまま発音すると、フランジング(2つの音の音高、音色、音の位相が一致するか、極めて近いときに波形が互いに干渉し合って起る)が生じる可能性があり、場合によっては、原音とはかけ離れた音になってしまう。さらに、同じ音高でなくても特に低い音高では、同時に発音する2音の音高が近いと響きが濁ってしまい、自然な聴感が得られないというおそれもある。
また、上述のように、ユーザの演奏音を、一定のルールに基づいて、予め設定されたコードに合う音高になるように変換する変換方法を採用した場合、ユーザが、意図的に、例えば、黒鍵を押したり或いは10鍵を同時に押すなどの、いかにもコード構成音以外の音高が出力されそうな押鍵をしても、コード構成音以外の音高は出力されない可能性がある。これは、通常の演奏としては格別問題がないが、常にコード構成音という安定した演奏となって意外性がない。
さらに、上述の変換方法では、音色による変換の違いは無く、音色によっては、本来鳴るはずのない音高に変換されたり、同時発音数がオーバーしてしまう可能性がある。
この発明の第1の目的は、このような不都合に鑑み、演奏者が音楽的な間違いを気にせずに演奏表現に気を配ること(注力)が可能な演奏補助システムを提供することである。この発明の第2の目的は、ユーザの演奏による入力音をその時点でのコードに合うような音高に変換して発音させる際、音域や奏法に応じて、近い音高に変換しないように或いは同じ音高の音が複数同時に発音状態にならないように制御することにより、自然な聴感が得られるようにした入力音変換システムを提供することである。また、この発明の第3の目的は、ユーザの演奏による入力音をその時点でのコードに合うような音高に変換して発音させる際に、演奏状況に応じて、基本音群以外の音高をも含めた音高に変換できるように制御することにより、演奏のリアリティを付加し変化に富んだ演奏を楽しむことができる入力音変換システムを提供することにある。さらに、この発明の第4の目的は、ユーザの演奏による入力音をその時点でのコードに合うような音高に変換して発音させる際に、楽器の音色によって音高変換の内容を変えることにより、音色に合った演奏を可能にすると共に、ユーザが特に意識することなく楽器固有の発音形態に近い演奏をすることができる入力音変換システムを提供することにある。
この発明の第1の目的に対応する演奏補助システムでは、この発明の一観点に従って、修正対象となる演奏情報(SI)を入力する入力手段(21)と、前記入力手段(21)より入力される演奏情報(SI)の少なくともコード進行(Degree)を指定する指定手段(22)と、前記指定されるコード進行(Degree)に基づき、前記演奏情報(SI)をその音域により変換特性を異ならせて音高変換する変換手段(23;SA3〜SA8,SB3〜SB9)とを有する演奏補助装置(1)が提供される(請求項1参照)。なお、括弧書きは、理解の便のために、後述する実施例における参照記号又は用語を付記したものであり、以下においても同様である。
また、この発明の別の観点に従って、修正対象となる演奏情報(SI)を入力する入力手段(21)と、前記入力手段(21)より入力される演奏情報(SI)の少なくともコード進行(Degree)を指定する指定手段(22)と、前記指定されるコード進行(Degree)に基づき、前記演奏情報(SI)を音高変換する変換手段(23;SA3〜SA7)と、前記変換手段(SA3〜SA7)による音高変換によって、前記演奏情報(SI)に含まれる同時又はほぼ同時に入力される複数音の音高が同一になる場合に、該複数音の音高のうちのいずれかを他の音高に再変換する再変換手段(SA8)とを有する演奏補助装置(1)が提供される(請求項3参照)。
さらに、この発明の他の観点に従って、修正対象となる演奏情報(SI)を入力する入力手段(21)と、前記入力手段(21)より入力される演奏情報(SI)の少なくともコード進行(Degree)を指定する指定手段(22)と、前記指定されるコード進行(Degree)に基づき、前記演奏情報(SI)を、該演奏情報(SI)に含まれる同時又はほぼ同時に入力される音数と、該同時又はほぼ同時に入力される音の最低音から最高音の幅(Range)と、該最高音の前記指定されるコード進行におけるルートからの度数(TND)とに応じて音高変換する変換手段(23;SB3〜SB9)とを有する演奏補助装置(1)が提供される(請求項4参照)。
この発明の第2の目的に対応する入力音変換システム(第1の入力音変換処理)では、この発明の1つの特徴に従って、楽音情報入力手段(35)からの入力音情報(NTi)を取得する入力音情報取得手段と、コード情報供給手段(32,34)からコード情報を取得するコード情報取得手段(SQ)と、各コードタイプに対応して、同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブル(TB)と、この音高変換テーブル(TB)を用いて、入力音情報(NTi)の音高を、コード情報のコードタイプに合う音高(NTc)に変換する音高変換手段(S4)と、この音高変換手段(S4)により変換される音高(NTc)が現在発音中の音の音高と重複しないように制御する音高制御手段(S5,S7,S9,S10)とを具備する入力音変換装置〔請求項13〕、並びに、各コードタイプに対応して、同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブル(TB)を具備する楽音情報処理装置に対して、楽音情報入力手段(35)からの入力音情報(NTi)を取得するステップと、コード情報供給手段(32,34)からコード情報を取得するステップと、音高変換テーブル(TB)を用いて、入力音情報(NTi)の音高を、コード情報のコードタイプに合う音高(NTc)に変換する音高変換ステップ(S4)と、この音高変換ステップ(S4)で変換される音高(NTc)が現在発音中の音の音高と重複しないように制御するステップ(S5,S7,S9,S10)とから成る手順を実行させる入力音変換プログラム〔請求項16〕が提供される。
また、この発明の別の特徴に従って、楽音情報入力手段(35)からの入力音情報(NTi)を取得する入力音情報取得手段と、コード情報供給手段(32,34)からコード情報を取得するコード情報取得手段(SQ)と、入力音情報の音高(NTi)を、コード情報に合う音高(NTc)に変換する音高変換手段(S4)と、変換された音高に基づく音情報(NTo)を出力候補にすると共に、現在発音中の音情報があり且つ発音中の音の音高と出力候補の音情報の音高が重複するときには、入力音情報(NTi)から奏法を検出し、検出された奏法に応じて、出力候補の音情報を発音しないようにする制御、及び、出力候補の音情報の音高に代えて、コード情報に合う他の音高を決定し、決定された音高の音情報を発音する制御の何れかを行う制御手段(S5〜S10)とを具備する入力音変換装置〔請求項14〕、並びに、楽音情報入力手段(35)からの入力音情報(NTi)を取得するステップと、コード情報供給手段(32,34)からコード情報を取得するステップと、入力音情報(NTi)の音高を、コード情報のコードタイプに合う音高(NTc)に変換するステップ(S4)と、変換された音高(NTc)に基づく音情報(NTo)を出力候補にすると共に、現在発音中の音情報があり且つ発音中の音の音高と出力候補の音情報の音高が重複するときには、入力音情報(NTi)から奏法を検出し、検出された奏法に応じて、出力候補の音情報を発音しないようにする制御、及び、出力候補の音情報の音高に代えて、コード情報に合う他の音高を決定し、決定された音高の音情報を発音する制御の何れかを行うステップ(S5〜S10)とから成る手順を楽音情報処理装置に実行させる入力音変換プログラム〔請求項17〕が提供される。
さらに、この発明の他の特徴に従って、楽音情報入力手段(35)からの入力音情報(NTi)を取得する入力音情報取得手段と、コード情報供給手段(32,34)からコード情報を取得するコード情報取得手段(SQ)と、入力音情報の音高(NTi)を、コード情報に合う音高(NTc)に変換する音高変換手段(S4)と、現在発音中の音があるときに、現在変換中の入力音情報(NTi)とこの直前の入力音情報(NTio)との音高の高低関係に応じて、音高変換手段(S4)で変換される音高(NTc)を発音中の音の音高と重複しないように制御する制御手段(S5,S9,S10)とを具備する入力音変換装置〔請求項15〕、並びに、楽音情報入力手段(35)からの入力音情報(NTi)を取得するステップと、コード情報供給手段(32,34)からコード情報を取得するステップと、入力音情報(NTi)の音高を、コード情報のコードタイプに合う音高(NTc)に変換するステップ(S4)と、現在発音中の音があるときに、現在変換中の入力音情報(NTi)とこの直前の入力音情報(NTio)との音高の高低関係に応じて、音高変換ステップ(S4)で変換される音高(NTc)を発音中の音の音高と重複しないように制御するステップ(S5,S9,S10)とから成る手順を楽音情報処理装置に実行させる入力音変換プログラム〔請求項18〕が提供される。
この発明の第3の目的に対応する入力音変換システム(第2の入力音変換処理)では、この発明の1つの特徴に従って、楽音情報入力手段(35)からの入力音情報(NTi)の入力状態を判別する判別手段又はステップ(S21)と、コード情報供給手段(32,34)からコード情報を取得するコード取得手段又はステップ(SQ)と、入力音情報の音高(NTi)をコード情報に合った音高(NTo)に変換する音高変換手段又はステップ(S22〜S29)であって、変換後の音高(NTo)が、判別手段又はステップ(S21)で判別された入力音情報の入力状態(MC)に応じて(〔例1〕〜〔例3〕)、コード情報に対応する第1音群及び第2音群の何れかの音高になるように制御し、第1音群は所定の基本楽音の条件に合致する楽音(例えば、コード構成音やスケール音など)のみから成り、第2音群は所定の基本楽音の条件に合致しない楽音(例えば、テンションや装飾音)を含むものとを備える入力音変換装置又はプログラム手順が提供される〔請求項19,21〕。
また、この発明の別の特徴に従って、各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録され、入力音情報の音高を、音名特定情報が示す第1音群(「基本音群」)の音名に基づく音高に変換するための第1テーブルであって、第1音群は所定の基本楽音の条件に合致する楽音(例えば、コード構成音やスケール音など)のみから成るもの(TBa,TBb,…)、及び、入力音情報の音高を、音名特定情報が示す第2音群(「基本音群以外の音高を少なくとも含む音群」)の音名に基づく音高に変換するための第2テーブルであって、第2音群は上記所定の基本楽音の条件に合致しない楽音(例えば、テンションや装飾音)を含むもの(TBt1,…;TBs)から成る音高変換テーブルを具備する入力音変換装置において、楽音情報入力手段(35)からの入力音情報(NTi)の入力状態を判別する判別手段又はステップ(S21)と、コード情報供給手段(32,34)からコードタイプを表わすコード情報を取得するコード取得手段又はステップ(SQ)と、判別手段又はステップ(S21)で判別された入力音情報(NTi)の入力状態(MC)に応じて(〔例1〕〜〔例3〕)、当該入力音情報に対して第1及び第2テーブルの何れを使用するかを決定するテーブル決定手段又はステップ(S22)とを備える入力音変換装置又はプログラム手順が提供される〔請求項20,22〕。
この発明の第4の目的に対応する入力音変換システム(第3の入力音変換処理)では、この発明の1つの特徴に従って、各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録された複数の音高変換テーブル(TBa,TBb,…;TBt1,…)を具備する入力音変換装置において、楽音情報入力手段(35)から入力音情報(NTi)を取得する入力音取得手段又はステップ(S21)と、コード情報供給手段(32,34)からコードタイプを表わすコード情報を取得するコード取得手段又はステップ(SQ)と、音色情報供給手段(32,34,36)から音色情報を取得する音色情報取得手段又はステップ(VS)と、音色情報に応じて選択された音高変換テーブルを用いて、入力音情報の音高(NTi)を上記コード情報に合う音高(NTo)に変換する音高変換制御手段又はステップ(S22〜S29)とを備える入力音変換装置又はプログラム手順が提供される〔請求項23,25〕。
また、この発明の別の特徴に従っ各音色に対応して音高変換条件付け情報(SM〜TT)を記憶する音色条件記憶手段(32,34)を具備する入力音変換装置において、楽音情報入力手段(35)から入力音情報(NTi)を取得する入力音取得手段又はステップ(S21)と、コード情報供給手段(32,34)からコード情報を取得するコード取得手段又はステップ(SQ)と、音色情報供給手段(32,34,36)から音色情報を取得する音色情報取得手段又はステップと、音色情報で指示される音色に対応する音高変換条件付け情報(SM〜TT)に基づいて、入力音情報の音高(NTi)を上記コード情報に合う音高(NTo)に変換する音高変換手段又はステップ(S22〜S9)とを備える入力音変換装置又はプログラム手順が提供される〔請求項24,26〕。
この発明による演奏補助システムによると、入力される演奏情報(SI)を、コード進行に従い、個々に音高変換するようにしているので、他の和音構成音の入力を待つ必要がなく、処理スピードを早くすることができる。また、音域によって異なる音高変換を行うようにしているので、コードの響きの破綻を避け、演奏者の意図をより反映させることができる。さらに、一定時間内に入力される演奏情報を和音として処理するので、和音として音楽的に好ましい響きが得られ、入力演奏情報の最高音(トップノート)を基準として、他の和音構成音を生成するので、トップノートを最大限に活かすことができる。従って、演奏者は、音楽的な間違いを気にせずに演奏表現に気を配ること(注力)ができる。
この発明による入力音変換システムにおける第1の入力音変換処理によると、ユーザの実際の演奏による入力音(NTi)に対し、音域(鍵域)や種類(黒/白鍵)から変換テーブル(TB)を決定し、コードに合う音高(NTc)に変換することができる。また、変換された音高(NTc)が現在発音中の音高と重複する〔現在発音中の音との音程が所定の距離以下の近さにある〕場合には、音域(鍵域)と奏法に合うように、さらには、ユーザ実演奏による音高の高低関係が崩れない(維持される)ように発音を制御する(S5〜S10)。
つまり、この発明によれば、ユーザの演奏入力音(NTi)をその時点でのコードに合うような音高(NTc)に変換し出力音(NTo)として発音させるが、その際、音域(鍵域)や奏法に応じて、現在発音中の音に近い音高に変換しないように或いは同じ音高の音が複数同時に発音状態にならないように、音高の重複を回避する制御を行うようにしているので、自然な聴感を得ることができる。
この発明による入力音変換システムにおける第2の入力音変換処理によると、ユーザの実際の演奏に従って楽音情報(音高)入力手段(35)から入力される入力音高(NTi)を、コード情報供給手段(32,34)から供給されるコードに合う音高(NTo)に変換する際に、押鍵状態などの音高入力の状態(MC)に応じて、所定の基本楽音の条件に合致する楽音(例えば、コード構成音やスケール音など)のみから成る第1音群即ち「基本音群」の音高になるように変換するか、或いは、該所定の基本楽音の条件に合致しない楽音(例えば、テンションや装飾音)を少なくとも含む第2音群、即ち、「基本音群」以外の音高を少なくとも含む音群内の何れかの音高になるように変換するかを制御する。具体的には、各コードタイプに対して変換可能な音名特定情報を示す音高変換テーブルとして、音名特定情報が示す第1音群(「基本音群」)の音名に基づく音高に変換するタイプの第1テーブル(TBa,TBb,…)と、音名特定情報が示す第2音群(「基本音群以外の音高を少なくとも含む音群」)の音名に基づく音高に変換するタイプの第2テーブル(TBt1,…;TBs)とを用意しておき、音高入力の状態(MC)に従ってどちらのタイプのテーブルを使用するかを決定することにより、音高入力状態に応じて第1音群或いは第2音群の音高に変換するように制御する。従って、ユーザの望むときに基本音群以外の音高を含んだ音高を出力させて、変化に富んだ演奏を楽しむことができる。
この発明による入力音変換システムにおける第3の入力音変換処理によると、各コードタイプに対して変換可能な音名特定情報を示す音高変換テーブルが複数用意されており、音高変換に考慮される音色を音色情報により指示することができる。ユーザの実際の演奏に従って楽音情報(音高)入力手段(35)から入力される入力音高(NTi)を、コード情報供給手段(32,34)から供給されるコードに合う音高(NTo)に変換する際には、音色情報により指示される音色(VS)によって、音高変換テーブルを選択的に切り替えることができる。つまり、音色(VS)によって音高変換の内容を変更することによって、より音色に合った演奏が可能になる。
また、別の特徴によると、例えば最大同時発音数や音域などの音高変換条件付け情報(SM〜TT)が音色毎に記憶されており、同様に音高変換に考慮される音色(VS)が音色情報により指示される。入力音高(NTi)をコードに合う音高(NTo)に変換する際は、指示された音色(VS)に関する音高変換条件付け情報(SM〜TT)を元にして、変換後の音高(NTo)を当該音色(VS)に合うよう制御する。従って、演奏者が特に意識することなく、音色情報で指示される音色に応じた楽器固有の発音形態に近い演奏出力を得ることができる。
<演奏補助システム>
図1は、この発明の一実施例による演奏補助装置1を含む演奏補助システムのハードウェア構成を示すブロック図である。なお、演奏補助装置1のハードウェア構成は、全ての実施例において共通である。
演奏補助装置1のバス2には、RAM3、ROM4、CPU5、外部記憶装置7、検出回路8、表示回路10、音源回路12、効果回路13、MIDIインターフェイス16、通信インターフェイス17が接続される。
ユーザは、検出回路8に接続される複数のパネル操作子9を用いて、各種設定をすることができる。パネル操作子9は、例えば、ロータリーエンコーダ、スイッチ、マウス、文字入力用キーボード、ジョイスティック、ジョグシャトル等、ユーザの入力に応じた信号を出力できるものならどのようなものでもよい。
また、パネル操作子9は、マウス等の他の操作子を用いて操作するディスプレイ11上に表示されるソフトスイッチ等でもよい。
表示回路10は、ディスプレイ11に接続され、各種情報をディスプレイ11に表示することができる。
外部記憶装置7は、外部記憶装置用のインターフェイスを含み、そのインターフェイスを介してバス2に接続される。外部記憶装置7は、例えばフロッピ(登録商標)ディスクドライブ(FDD)、ハードディスクドライブ(HDD)、光磁気ディスク(MO)ドライブ、CD−ROM(コンパクトディスク−リードオンリィメモリ)ドライブ、DVD(Digital Versatile Disc)ドライブ、半導体メモリ等である。
外部記憶装置7には、各種パラメータ、各種データ、及び本実施例を実現するためのプログラム(「演奏補助プログラム」と呼ばれる)及び演奏情報等を記憶することができる。
RAM3は、フラグ、レジスタ又はバッファ、各種パラメータ等を記憶するCPU5のワーキングエリアを有する。ROM4には、各種パラメータ及び制御プログラム、又は本実施例を実現するためのプログラム等を記憶することができる。CPU5は、ROM4又は、外部記憶装置7に記憶されている制御プログラム等に従い、演算又は制御を行う。
タイマ6は、CPU5に接続されており、基本クロック信号、割り込み処理タイミング等をCPU5に供給する。
音源回路12は、外部記憶装置7等に記録された演奏情報MD、演奏操作子15又はMIDIインターフェイス16に接続されたMIDI機器18等から供給されるMIDI信号等の演奏信号に応じて楽音信号を生成し、効果回路13を介して、サウンドシステム14に供給する。
音源回路12の方式は、波形メモリ方式、FM方式、物理モデル方式、高調波合成方式、フォルマント合成方式、VCO+VCF+VCAのアナログシンセサイザ方式、アナログシミュレーション方式等、どのような方式であってもよい。また、専用のハードウェアを用いて音源回路12を構成してもよいし、DSP+マイクロプログラムを用いて音源回路12を構成してもよいし、CPU+ソフトウェアのプログラムで音源回路12を構成してもよい。また、これらの組合せでもよい。さらに、1つの回路を時分割で使用して複数の発音チャンネルを形成してもよいし、1つの発音チャンネルを1つの回路で形成してもよい。
効果回路13は、音源回路12から供給されるデジタル形式の楽音信号に各種効果を与える。サウンドシステム14は、D/A変換器及びスピーカを含み、供給されるデジタル形式の楽音信号をアナログ形式に変換し、発音する。
演奏操作子15は、検出回路8に接続され、ユーザの演奏動作に従い、演奏信号を供給する。本実施例では、演奏操作子15として、演奏用の鍵盤が用いられている。演奏操作子15は、少なくとも、MIDI信号等の演奏信号を出力可能な操作子であればどのようなものでもよい。
MIDIインターフェイス(MIDI I/F)16は、電子楽器、その他の楽器、音響機器、コンピュータ等に接続できるものであり、少なくともMIDI信号を送受信できるものである。MIDIインターフェイス16は、専用のMIDIインターフェイスに限らず、RS−232C、USB(ユニバーサル・シリアル・バス)、IEEE1394(アイトリプルイー1394)等の汎用のインターフェイスを用いて構成してもよい。この場合、MIDIメッセージ以外のデータをも同時に送受信するようにしてもよい。
MIDI機器18は、MIDIインターフェイス16に接続される音響機器、楽器等である。MIDI機器18の形態は鍵盤楽器に限らず、弦楽器タイプ、管楽器タイプ、打楽器タイプ等の形態でもよい。また、音源装置、自動演奏装置等を1つの電子楽器本体に内蔵したものに限らず、それぞれが別体の装置であり、MIDIや各種ネットワーク等の通信手段を用いて各装置を接続するものであってもよい。ユーザは、このMIDI機器18を演奏(操作)することにより演奏信号の入力を行うこともできる。
また、MIDI機器18は、演奏情報以外の各種データ及び各種設定を入力するための操作子としても用いることが出来る。
通信インターフェイス17は、LAN(ローカルエリアネットワーク)やインターネット、電話回線等の通信ネットワーク19に接続可能であり、該通信ネットワーク19を介して、サーバコンピュータ20と接続し、HDD等外部記憶装置7、又はRAM4等内に、サーバコンピュータ20から制御プログラムや本実施例を実現するためのプログラム、演奏情報等をダウンロードすることができる。
なお、通信インターフェイス17及び通信ネットワーク19は、有線のものに限らず無線でもよい。また双方を備えていてもよい。
図2は、この発明の第1及び第2の実施例による演奏補助装置1の機能を表すブロック図である。
演奏補助装置1は、例えば、演奏信号入力部21、コード進行供給部22及びノート変換部23で構成される。
演奏信号入力部21は、例えば、図1の演奏操作子15及び検出回路8、あるいはMIDI機器18等で構成され、ノート変換部23に演奏信号を供給する。
コード進行供給部22は、ROM4又は外部記憶装置7等で構成され、複数のコード進行データを記憶している。コード進行データは、楽曲のコード進行を、一連のコードネーム又はコードを度数表記したDegreeコードにより記録したデータである。コード進行データは、特定の楽曲に対応したものでもよいし、特定の楽曲を想定していないものでもよい。また、コード進行データ以外に、ドラムやその他のパートの演奏データを含んでいてもよい。本実施例では、コードネームを「Key(調)情報+度数」で管理することにより、各コードの機能を音楽的に解釈している。よって、コード進行データには、Degreeコードのみが記録され、ユーザの指定するKey情報と併せて、実際のコードネームを特定する。あるいは、Key情報をコード進行データ中に含ませてもよい。なお、実際のコードネームをコード進行データに記録するようにしても良く、その場合はKey情報は無くてもよい。
コード進行供給部22は、ユーザの指定するコード進行データをノート変換部23に供給する。
ノート変換部23は、後述する第1又は第2の実施例による演奏補助処理により、コード進行供給部22から供給されるコード進行データに基づき、演奏信号入力部21から供給される演奏信号に含まれるノートナンバーを変更する。
図3は、この発明の第1の実施例による演奏補助処理を説明するためのフローチャート、概念図、及びテーブルである。
この第1の実施例では、各々の音(演奏信号)のノートナンバー(音高情報)を一律に図3(D)に示すようなコード発音分布テーブルCDTを参照して変換する。つまり、入力される演奏信号を、和音であるか単音であるかにかかわらず、各音ごとにコード発音分布テーブルCDTに記録されているコード発音分布と照らし合わせ、それぞれ変換する。
コード発音分布とは、各Degreeコードごとに0〜127のノートナンバーのどの音を発音させるかを定義したものである。例えば、コード発音分布の一例として、高音域では、テンションとして使用可能な音を最大限に活かし、中音域では、コードトーン(コード構成音)に変換し、中低音域では、ルート又は5度の音に変換し、低音域では、ルートに変換する。この第1の実施例では、上記のように定義されるコード発音分布に従い、全ての入力された演奏信号のノートナンバーを変換することにより、ハーモニーの機能に即したノート変換を行うことが出来る。そして、変換特性の異なる発音分布テーブルを複数用意しておき、ユーザ設定情報US内のコード発音分布テーブル特定情報によっていずれかのテーブルを選択する。
図3(A)は、この発明の第1の実施例による演奏補助処理を表すフローチャートである。この演奏補助処理は、ユーザの指示により起動されたあと、所定の割り込みタイミングごとに起動される割り込み処理である。
なお、ユーザは、この演奏補助処理の起動を指示する前に、予め、図3(B)に示すような、ユーザ設定情報USを設定する。ユーザ設定情報USは、ユーザが演奏しようとする楽曲の調を表すKey情報、コード進行データを特定する情報(例えば、選曲情報)、後述するコード発音分布テーブルCDTを特定する情報を含んで構成される。
ステップSA1で、演奏補助処理をスタートして、ステップSA2で演奏信号の入力を受け付ける。この例では、例えば、図3(C)に示すような和音を含む演奏信号SIがユーザの演奏により入力されたものとする。演奏信号SIは、3つのノートイベント(発音指示)からなり、それぞれのノートナンバーは、「75(D♯)」、「71(B)」、「69(A)」である。
ステップSA3では、ステップSA2で入力される演奏信号SIのノートナンバーを、「指定されたKey」−「C Major」分移調する。すなわち、この例では、ユーザ設定情報USによって「指定されたKey」は、「F Major」であるので、「F Major」−「C Major」=「7」となり、これを各ノートイベントのノートナンバーに加算することにより移調する。よって、それぞれのノートナンバーは、「75+7=82(A♯)」、「71+7=78(F♯)」、「69+7=76(E)」となる。
ステップSA4では、現在の小節のDegreeコードをユーザ設定情報USにより予め指定されているコード進行を参照して取得する。この例では、例えば、現在第2小節目だとすると、Degreeコードは、「V」となる。
ステップSA5では、ユーザ設定情報USにより予め指定されているコード発音分布テーブルCDTを参照して、ステップSA4で取得したDegreeコードの変換式を取得する。ステップSA4で取得したDegreeコードは、「V」であるので、図3(D)のコード発音分布テーブルCDTの「V」の列を参照して、ステップSA3で移調された演奏信号SIのノートナンバー「82(A♯)」、「78(F♯)」、「76(E)」のそれぞれに対応する変換式(オフセット値)「1」、「1」、「−2」を取得する。
なお、図3(D)に示したコード発音分布テーブルCDTには、各Degreeコードにおけるノートナンバーの変換式(それぞれのノートナンバーに対するオフセット値)が記憶されているが、変換式の代わりに変換後のノートナンバーを直接記録するようにしてもよい。
ステップSA6では、ステップSA5で取得した変換式に従い、ステップSA3で移調された演奏信号SIのノートナンバーを変更する。例えば、この例では、ステップSA3で移調された演奏信号のノートナンバー「82(A♯)」、「78(F♯)」、「76(E)」に、それぞれに対応する変換式(オフセット値)「1」、「1」、「−2」を加算して、ノートナンバー「83(B)」、「79(G)」、「74(D)」に変更する。
ステップSA7では、ステップSA6で変更した演奏信号SIのノートナンバーを「C Major」−「指定されたKey(原調)」分移調して原調に戻す。すなわち、この例では、ユーザ設定情報USによって指定されたKeyは、「F Major」であるので、「C Major」−「F Major」=「−7」となり、これを各ノートイベントのノートナンバーに加算することにより移調する。よって、それぞれのノートナンバーは、「83−7=76(E)」、「79−7=72(C)」、「74−7=67(G)」となる。なお、「−7」という数値は、ステップSA3で求めた数値「7」の正負を逆転して求めるようにしてもよい。
以上の処理により、ステップSA2で入力された図3(C)に示すような和音を含む演奏信号SIは、図3(E)に示すような和音(ノートナンバー「76(E)」、「72(C)」、「67(G)」)を含む演奏信号SOに変換される。
ステップSA8では、演奏信号SOに含まれる和音のノートナンバーの重複(複数のノートナンバーが同一のノートナンバーに変換された状態)を検出する。ノートナンバーの重複が検出された場合は、例えば、後着(又は先着)のノートをコード発音分布テーブルCDT上の先着(又は後着)のノートが変換された値のさらに下(又は上)にある最も近い「0」の行に当たるノートナンバーに変換して、演奏信号SOとして出力する。例えば、現在のコードがIVであり、ステップSA6において変換される元々のノートナンバーが、「76(E)」、「79(G)」であった場合、ステップSA7の変換の結果、これらはともにノートナンバー「77(F)」となる。こういった場合、後着(又は先着)のノートをさらに上にある「0」の行に当たるノートナンバー「81(A)」に変換する。ノートナンバーの重複が検出されない場合は、ステップSA7で変換された演奏信号SOをそのまま出力する。
ステップSA9では、演奏信号SOに基づき発音処理を行う。この発音処理は、例えば、図1の音源回路12に演奏信号SOを供給することにより行われる。なお、この発音処理の代わりに、演奏信号SOを図1の外部記憶装置7又はRAM3内の一時記憶領域等に保存する処理を行ってもよい。さらに、演奏信号SOを図1のMIDIインターフェイス16又は通信インターフェイス17を介して、外部機器に出力するようにしてもよい。また、このステップSA9で、これらの全ての処理を行うようにしてもよいし、ユーザの選択により、1又は複数の処理を行うようにしてもよい。その後、ステップSA10に進み、第1の実施例による演奏補助処理を終了する。
以上のように、この発明の第1の実施例によれば、入力される演奏信号の全てのノートナンバーを個々に変換するため、基本的には、入力される音数と同数の音を発音することが出来る。よって、演奏者の意図した発音数を保つことが出来る。
また、音域によって、異なる変換を行うコード発音分布を用いることにより、発音の密度を変えることが出来、コードの響きの破綻を避けることが出来る。よって、演奏者の意図をより反映させることが出来る。
さらに、入力される演奏信号のノートナンバーを個々に変換するため、他の和音構成音の入力を待つ必要がなく、処理スピードを早くすることができ、リアルタイムでの変換処理に向いている。
図4は、この発明の第2の実施例による演奏補助処理を説明するためのフローチャート及びテーブルである。
この第2の実施例では、入力される演奏信号SIに含まれる音数(NumberOfNotes)、該入力される演奏信号SI中の最低音のノートナンバーから最高音のノートナンバーまでの幅(Range)及び最高音のルート音(ユーザ指定情報USで設定されているKEY情報に基づく調におけるルート音)からの度数(TopNoteDegree)に応じて、音楽的に最も好ましい響きを得られる和音を生成する。
図4(A)は、この発明の第2の実施例による演奏補助処理を表すフローチャートである。この演奏補助処理は、ユーザの指示により起動されたあと、所定の割り込みタイミングごとに起動される割り込み処理である。
図4(B)は、この発明の第2の実施例による演奏補助処理で参照する発音数テーブルNSTの1例である。発音数テーブルNSTは、音数(NumberOfNotes)及び幅(Range)に基づき、図4(C)で用いる発音数NONを決定するためのテーブルである。
図4(C)は、この発明の第2の実施例による演奏補助処理で参照するコードトーン選択テーブルCSTの1例である。コードトーン選択テーブルCSTは、発音されるノートの数に応じて、音楽的に最も好ましい響きが得られるようにノートを規定したテーブルである。本実施例では、コードトーン選択テーブルCSTを参照して、度数(TopNoteDegree)と、図4(B)の発音数テーブルNSTにより得られる発音数NONにより、ノートナンバーの変換式(最高音に対するオフセット値)を取得する。また、コードトーン選択テーブルCSTは、複数種類(例えば、Normal、Rock、Jazz等の音楽ジャンルによる分類)が用意され、それぞれの種類について、Degreeコードに応じて複数種類が用意されている。図4(C)に示すコードトーン選択テーブルCSTは、NormalのDegreeコード=Vに対応するものである。
以下、図4(A)〜(C)を参照して、第2の実施例の演奏補助処理を説明する。なお、この第2の実施例でも、第1の実施例と同様に、あらかじめユーザ設定情報US(図3(B))が設定されているものとする。なお、コード発音分布テーブル特定情報に変えて、コードトーン選択テーブル特定情報を含んでいる。
ステップSB1では、演奏補助処理をスタートして、ステップSB2で演奏信号SIの入力を受け付ける。この例でも、第1の実施例と同様の図3(C)に示す演奏信号SIが入力されるものとする。また、一定時間(例えば、0〜49msec)内に入力される演奏信号SIに含まれる複数のノートイベントを和音として判断し、以下の処理は、該一定時間内に入力される演奏信号SIに含まれるノートイベントに対して行われる。
ステップSB3では、ステップSB2で入力される演奏信号SIに含まれるノートイベントの数を検出し、検出した数を音数(NumberOfNotes)とする。この例では、NumberOfNotes=3である。
ステップSB4では、ステップSB2で入力されるノートイベントの最高音(ノートナンバーが最も高いノートイベント)と最低音(ノートナンバーが最も低いノートイベント)のノートナンバーの差分値を検出し、検出した値を幅(Range)とする。この例では、Range=75(最高音)−69(最低音)=6である。
ステップSB5では、ステップSB2で入力される演奏信号SIに含まれるノートイベントの最高音のルートからの度数(TopNoteDegree)を検出する。この例では、ユーザ設定情報USによって指定されたKeyは、「F Major」であるので、ルート音は、「65(F)」であると考えられる。よって、最高音「75(D♯)」−ルート音「65(F)」=TopNoteDegree=10となる。
ステップSB6では、検出したNumberOfNotes(3)と、Range(6)の値に応じた発音数NONを発音数テーブルCSTを参照して取得する。この例では、NumberOfNotesは「3」であり、かつRangeは、「6」である(1オクターブ以内(Rane<12))ので、発音数NONは、「1,2,3」となる。
ステップSB7では、ステップSB2で入力されるノートイベントの最高音のノートナンバーを「指定されたKey」−「C Major」分移調する。すなわち、この例では、ユーザ設定情報USによって「指定されたKey」は、「F Major」であるので、「F Major」−「C Major」=「7」となり、これを該ノートイベントのノートナンバーに加算することにより移調する。よって、最高音のノートナンバーは、「75+7=82(A♯)」となる。
ステップSB8では、ユーザ設定情報USで指定されたコードトーン選択テーブルCSTの現在のコード(Degreeコード)のTopNoteDegree行目を参照して、発音数個分のノートを生成する。この例では、コードトーン選択テーブルCST(Normal)のコード(V)のテーブルのNON1、2、3列のTopNoteDegree(10)行目を参照して、「1、−8、−3」のオフセット値(変換式)を取得する。その後、取得したそれぞれのオフセット値を最高音のノートナンバー「82(A♯)」に別々に加算して、ノートナンバー「83(B)」、「74(D)」、「79(G)」のノートイベントを生成する。
ステップSB9では、ステップSB8で生成した各ノートイベントのノートナンバーを「C Major」−「指定されたKey(原調)」分移調して原調に戻す。すなわち、この例では、ユーザ設定情報USによって指定されたKeyは、「F Major」であるので、「C Major」−「F Major」=「−7」となり、これを各ノートイベントのノートナンバーに加算することにより移調する。よって、それぞれのノートナンバーは、「83−7=76(E)」、「79−7=72(C)」、「74−7=67(G)」となる。なお、「−7」という数値は、ステップSB7で求めた数値「7」の正負を逆転して求めるようにしてもよい。これにより、出力される演奏信号は、図3(E)に示す演奏信号SOと同様になる。
ステップSB10では、ステップSB9で原調に移調した各ノートイベントを含む演奏信号SOの発音処理を行う。発音処理は、第1の実施例と同様である。その後、ステップSB11に進み、演奏補助処理を終了する。
以上のように、この発明の第2の実施例によれば、一定時間内に入力された複数のノートイベントを和音として処理するので、和音として音楽的に好ましい響きが得られるように、変換処理を行うことが出来る。
また、入力されたノートイベントのうちの最高音(トップノート)を基準として、他の和音構成音を生成するので、トップノートを最大限に活かすことが出来る。なお、本実施例では、コードトーン選択テーブルCSTにおいて、最高音に対するオフセット値を記録し、最高音に加算することで、コード構成音を生成したが、それに限らず最低音等他の入力された演奏信号を用いて、和音構成音を生成するようにしてもよい。ただし、高音域や、中音域での、変換では、最高音を基準に他の構成音を生成することが望ましい。
また、本実施例では、最終的に発音させるノートの数を、最大4音として上限を設けているが、通常の演奏で発音されるノート数であれば、その他の数に変更することも出来る。
図5は、この発明の第1の変形例を表す概念図及び機能ブロック図である。
図5(A)は、第1の変形例によるノート変換の領域分割を表す概念図である。この第1の変形例では、例えば、鍵盤等の演奏操作子15(図1)をノートナンバー0〜127の特定の値で分割するスプリットポイントSPで鍵域分割し、スプリットポイントSP未満の領域(ノート変換領域)に含まれるノートナンバーのノートイベントに対しては変換処理を行い、スプリットポイントSP以上の領域(無変換領域)に含まれるノートナンバーのノートイベントに対しては変換処理を行わないようにする。
図5(B)は、第1の変形例による演奏補助装置51の機能ブロック図である。
演奏補助装置51は、図2の演奏補助装置1と同様に、演奏信号入力部21、コード進行供給部22及びノート変換部23で構成される。コード進行供給部22及びノート変換部23は、図2の演奏補助装置1と同様の動作をするが、演奏信号入力部21(鍵盤等)からの、スプリットポイントSP未満の演奏信号のみが、ノート変換部23に入力され、変換される。スプリットポイントSP以上のものは、ノート変換部23に入力されずにそのまま発音される。
このような構成により、一般的に高音域を使用するメロディ(スプリットポイントSP以上)は、自分で全て演奏したいが、一般的に低音域を使用する和音伴奏(スプリットポイントSP未満)は、自信がないという演奏者が、簡単にメロディと和音伴奏の演奏を行うことが出来る。
スプリットポイントSPは、任意の位置に設定することができ、また、スプリットポイントSPは、複数設けるようにしてもよい。その場合には、スプリットポイントSPによって分割される領域のそれぞれをノート変換領域又は無変換領域のいずれかに指定する。無変換領域を、第1の実施例のコード発音分布テーブルCDT上にノート変換しない(すなわち、オフセット値が全て「0」)の領域を含むことで、実現してもよい。
図6は、この発明の第2の変形例を表す概念図及び機能ブロック図である。
図6(A)は、第2の変形例によるノート変換の領域分割を表す概念図である。この第2の変形例では、例えば、鍵盤等の演奏操作子15(図1)をノートナンバー0〜127の特定の値で分割するスプリットポイントSPで鍵域分割し、スプリットポイントSP以上の領域(ノート変換領域(I))に含まれるノートナンバーのノートイベントに対しては第1の実施例の演奏補助処理による変換処理を行い、スプリットポイントSP未満の領域(ノート変換領域(II))に含まれるノートナンバーのノートイベントに対しては第2の実施例の演奏補助処理による変換処理を行うようにする。
図6(B)は、第2の変形例による演奏補助装置61の機能ブロック図である。
演奏補助装置61は、演奏信号入力部21、コード進行供給部22、ノート変換部(I)23a及びノート変換部(II)23bで構成される。演奏信号入力部21からの、スプリットポイントSP以上の演奏信号は、ノート変換部(I)23aに入力され、スプリットポイントSP未満のものは、ノート変換部(II)23bに入力される。
ノート変換部(I)23aは、例えば、前述の第1の実施例の演奏補助処理によるノート変換を行い、ノート変換部(II)23bは、前述の第2の実施例の演奏補助処理によるノート変換を行う。すなわち、高音域であるノート変換領域(I)では、単音で演奏されることが多いと考えられ、入力される演奏信号を個々に変換する第1の実施例の演奏補助処理を用いて変換を行う。一方、低音域であるノート変換領域(II)は、和音伴奏に用いられることが多いと考えられるので、入力される演奏信号を和音として変換する第2の実施例の演奏補助処理を用いて変換を行う。
以上のように、鍵盤の鍵域ごとに異なる変換方式を用いることにより、それぞれの変換方式の利点を活かしたノート変換を行うことが出来る。なお、スプリットポイントSPは、任意の位置に設定することができ、複数のスプリットポイントSPを設けることも出来る。その場合には、スプリットポイントSPによって分割される領域のそれぞれで行われるノート変換処理を指定するようにする。また、複数のスプリットポイントSPを設ける場合は、第1の変形例のように、無変換領域を設けるようにしてもよい。
なお、それぞれのノート変換部の行う処理は、お互いに異なるものであればどのようなものでもよく、例えば、ノート変換部(I)23aが、前述の第2の実施例の演奏補助処理によるノート変換を行い、ノート変換部(II)23bが、前述の第1の実施例の演奏補助処理によるノート変換を行うようにしてもよい。
図7は、この発明の第3の変形例を表す機能ブロック図である。
演奏補助装置71は、演奏信号入力部21、コード進行供給部22、ノート変換部23及び自動伴奏/付加音発生部24で構成される。ノート変換部23は、コード進行供給部22から入力されるコード進行に基づいて、演奏信号入力部21から入力される演奏信号を変換する。ノート変換部23での変換処理は、第1の実施例及び第2の実施例による演奏補助処理のいずれでもよく、第2の変形例のように、スプリットポイントSPを設けて、双方を用いるようにしてもよい。また、第1の変形例のように、無変換領域を設けるようにしてもよい。
自動伴奏/付加音発生部24は、コード進行供給部22から入力されるコード進行及びノート変換部23から供給される変換後の演奏信号に基づいて、自動伴奏及び又は付加音を発生する。自動伴奏/付加音発生部24及びノート変換部23には、共通のコード進行が供給されるので、変換された演奏信号に調和する自動伴奏及び付加音(例えば、変換された演奏信号の最高音に対してコードと該最高音に調和する1乃至複数音を付加する)を発生させることが出来る。
なお、演奏補助処理の修正対象として入力される演奏信号SIは、例えば、MIDI形式の演奏信号であり、少なくとも、ノートナンバーなどの音高情報を含む複数のノートイベント(ノートオン及びノートオフ)により構成される。それぞれのノートイベントは、通常、音高情報のほかに、発音長情報、音量情報等の該ノートイベントの発音態様を制御するための情報を含んでいる。この発明の第1及び第2の実施例では、演奏信号SI中の音高情報であるノートナンバーのみを変更する。これにより、発音長情報、音量情報等のその他の情報は、演奏者が意図したままで出力されるので、演奏者の感性を活かすことが出来る。
また、演奏補助処理の修正対象として入力される演奏信号SIは、必ずしも、音楽理論上の誤りを含むものに限らず、特定のジャンルの音楽としては音楽的に正しいものでもよい。その場合には、他の音楽ジャンルに対応する変換テーブルを選択することにより、該特定ジャンルの音楽に基づき演奏された演奏信号を、指定された音楽ジャンルに基づく演奏に変換することが出来る。
以上、この発明の実施例によれば、音楽的知識に乏しい演奏者であっても、音楽理論等を気にすることなく、音楽理論に沿った演奏を行うことが出来る。
また、さまざまな音楽ジャンルや楽器に対応した複数種類のコード発音分布テーブル又はコードトーン選択テーブルを用意することにより、幅広い音楽ジャンルへの対応や各楽器ごとの特長を活かした演奏を行うことが出来る。
なお、この発明の実施例では、入力された演奏信号を一旦C Major調に移調してから、変換したが、それぞれの調に対応するテーブルを用意することで、移調せずに入力された演奏信号をそのまま変換するようにしてもよいし、任意の数の調に対応するテーブルを持ち、指定された調から最も近い調のテーブルに基づいて変換するようにしてもよい。
なお、本実施例の演奏補助装置1は、電子楽器の形態に限らず、カラオケ装置や、ゲーム装置、携帯電話等の携帯型通信端末、自動演奏ピアノに適用してもよい。携帯型通信端末に適用した場合、端末のみで所定の機能が完結している場合に限らず、機能の一部をサーバ側に持たせ、端末とサーバとからなるシステム全体として所定の機能を実現するようにしてもよい。
また、電子楽器の形態を取った場合、その形態は実施例で説明したような鍵盤楽器に限らず、弦楽器タイプ、管楽器タイプ、打楽器タイプ等の形態でもよい。また、音源装置、自動演奏装置等を1つの電子楽器本体に内蔵したものに限らず、それぞれが別体の装置であり、MIDIや各種ネットワーク等の通信手段を用いて各装置を接続するものであってもよい。
また、本実施例は、本実施例に対応するコンピュータプログラム等をインストールした市販のコンピュータ等によって、実施させるようにしてもよい。
その場合には、本実施例に対応するコンピュータプログラム等を、CD−ROMやフロッピー(登録商標)ディスク等の、コンピュータが読み込むことが出来る記憶媒体に記憶させた状態で、ユーザに提供してもよい。
以上実施例に沿ってこの発明を説明したが、この発明はこれらに制限されるものではない。例えば、種々の変更、改良、組合せ等が可能なことは当業者に自明であろう。
<入力音変換システム>
この発明によるシステムは、ユーザ演奏の面からみた場合、上述のように、演奏補助システムを提供しているが、音楽データ処理の面からみた場合には、入力音変換システムということができる。以下においては、上述の演奏補助システムにデータ処理面の改良を加えた入力音変換システムについて説明する。
図8は、この発明の一実施例による入力音変換システムのハードウエア構成を示すブロック図である。このシステムの例では、入力音変換のための楽音情報処理装置(入力音変換装置)として、図8に示されるような構成を有する自動演奏機能付き電子楽器が用いられる。しかしながら、図8の入力音変換システムは、図1を簡略化して示しただけのものであり、図1の演奏補助システムの構成と何ら変るところはない。以下、図1との説明の重複を許すことにして、図8の構成について簡単に説明しておく。この入力音変換装置は、中央処理装置(CPU)31、読出専用メモリ(ROM)32、ランダムアクセスメモリ(RAM)33、外部記憶装置34、演奏操作部35、パネル操作部36、表示部37、音源38、通信インターフェース(通信I/F)39などが備えられ、これらの装置31〜39はバス40を介して互いに接続されている。
CPU31は、所定のソフトウエア・プログラムに従い、図示しないシステムタイマ(ST)によるクロックを利用して、入力音変換処理を含む各種楽音情報処理を実行し、入力音変換処理の際はシーケンサモジュールやノート変換モジュールなどの機能を果たす。ROM32には、このために、入力音変換処理などの楽音情報処理を実行するための各種制御プログラムや、コード進行データ、ノート変換テーブルなどが記憶されている。RAM33は、これらの処理に際して必要な各種データやパラメータを一時記憶するためのワーク領域として用いられ、例えば、ユーザの演奏に基づく入力音や発音中の出力音に関する種々の情報を保持することができる。
外部記憶装置34は、ハードディスク(HD)や、コンパクトディスク・リード・オンリィ・メモリ(CD−ROM)、フレキシブルディスク(FD)、光磁気(MO)ディスク、ディジタル多目的ディスク(DVD)、半導体メモリ等の記憶媒体を含み、このシステムで利用される入力音変換プログラムや、上述したコード進行データ、ノート変換テーブルなどを保存しておくことができる。
演奏操作部35は、例えば、演奏操作子と演奏入力検出回路から成り、ユーザによる演奏操作子の演奏操作に基づく入力音信号を演奏入力検出回路で処理して入力音情報(キーノート情報)としてシステムに導入するものである。以下の具体例では、演奏操作子には鍵盤が用いられ、演奏操作部35は“キーボード部”と呼ばれる。鍵盤の音域については、例えば、下及び上側スプリット点(lower split point, upper split point)で、低音側から高音側へ、ベース(Bass)鍵域、コード(Chord)鍵域、メロディ(Melody)鍵域というように、複数の鍵域に分けて使用することができる。なお、演奏操作子には、鍵盤に限らず、ユーザが演奏しようとする楽器のタイプ(弦楽器/管楽器など)に応じて、他の任意のタイプのものを用いることができる。
パネル操作部36はパネル操作子及び入力検出回路から成り、パネル操作子による設定/制御操作の内容を入力検出回路で検出してシステム内に導入する。パネル操作子は、各種キーやスイッチなどの操作子を備え、このシステムの動作状態を設定したり入力音変換に必要な各種情報を入力するのに用いられる。
表示部37は、これに接続されるディスプレイ(CRT、LCD等の表示器)41の表示内容や各種インジケータ(ランプ)の点灯状態をCPU31からの指令に従って制御し、操作部35,36の操作に対する表示援助を行う。
音源38は、モジュール化された音源部(TG)や効果付与DSPを含み、コード進行データや、音色情報、入力音を変換して得られるノート情報などに対応する楽音信号を生成する。音源38に接続されるサウンドシステム42は、D/A変換部やアンプ、スピーカを備え、楽音信号に基づく楽音を発生する。つまり、音源38及びサウンドシステム42により、この入力音変換システムで処理された出力音情報や音色情報、コード進行データに基づく楽音を発音する楽音生成部が形成される。
通信I/F39には、音楽情報に関する処理機能をもつ外部の機器(例えば、パーソナルコンピュータなど)43が接続され、外部機器43からは、コード進行データを含む各種音楽情報や制御プログラムなどを受信することができる。
なお、この入力音変換システムは、上述した電子楽器などの楽音情報処理に特化した専用の楽音情報処理装置の形態に限らず、鍵盤などの演奏入力装置や音源を備えたパーソナルコンピュータ(PC)を用いて“パーソナルコンピュータ+アプリケーションソフトウェア”の形態で実現することもできる。
〔1〕第1の入力音変換処理
この発明の一実施例による入力音変換システムにおいては、“キーオン処理”と呼ばれる音高変換処理(第1の入力音変換処理)に従って、演奏による入力音をコード情報や奏法に合う音高に変換することができる。図9は、この発明の一実施例による入力音変換システムにおけるノート変換モジュールとそれに関連するモジュールの関係を極く概略的に表わすモジュール関連図である。
ここで、図9を用いてこの発明の第1の入力音変換手法の概略を説明しておく。この入力音変換システムでは、シーケンサ部SQ及びキーボード部35で夫々コード情報及び入力音情報NTiを取得すると、ノート変換部NCは、各コードタイプに対応して同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブル(TB:図10)により、入力音情報NTiの音高をコード情報のコードタイプに合う音高に変換し、これを出力音情報NToとして音源部TGに出力する。この際、出力音情報NToの音高は、現在発音中の音の音高と重複しないように、直前の入力音情報(NTio)に対する現在の入力音情報NTiの音高の変化方向に従って制御される。また、入力音情報NTiから奏法が検出され、検出された奏法毎に異なる方法で、発音中の音情報の音高と重複する音高の音情報が音源部TGに出力されないように制御される。
キーボード部(演奏操作部)35は、入力音情報として、鍵盤の鍵(キー)をオン/オフする操作に応じたキーノート情報(キーオンノート番号)NTiを順次発生し、シーケンサモジュール(シーケンサ部)SQは、ROM32又は外部記憶装置34から読み出されたコード進行データに基づき、曲の進行に合わせたコード情報を発生する。これら鍵盤からのキーノート情報NTi及び曲の進行に合わせたコード情報はノート変換モジュール(ノート変換部)NCに入力される。
ノート変換モジュールNCは、現在のコード情報及び予め決められた変換ルールに基づいて、入力されたキーノート情報NTiを出力ノート情報NToに変換するキーオン処理を行い、このキーオン処理で得られた出力ノート情報NToは、音源モジュール(音源部)TG(音源38)に出力される。
また、キーオン処理時には、ノート変換モジュールNCは、システムタイマSTから時間情報を参照してキーノート情報NTiのキーオン時の時間(タイミング)を取得する。この時間取得は、例えば、後述するコード鍵域でのブロック/アルペジオ奏法判定のために行われ、今回のキーオン時間(タイミング)が、前回発音されたキーオン時間(タイミング)から所定時間〔例えば、80msec(ミリ秒)〕以内に発生されたときはブロック奏法と判定し、それ以外のときはアルペジオ奏法と判定する。
〔ノート変換テーブル〕
この発明の一実施例による入力音変換システムでは、キーオン処理において所望の音高変換を実現する1つの方法としてノート変換テーブルが用いられる。図10は、ノート変換時に使用するノート変換テーブルTBの一例を示す。
このノート変換テーブルTBは、各コードタイプに対応して、コードルートに従って音名を特定する音名特定情報の優先度を示すものであり、同時押鍵数によって鳴らす音と鳴らさない音が変化するように設定されている。図10の例では、音名特定情報として“コードの根音(ルート)からの距離”を用い、最左欄の各コードタイプ(Major,M7,M6,…)毎に、同時発音数に応じた優先度(テーブル内の「1」〜「4」)を“根音からの距離”に対応させて、そのときの同時発音数に応じた使用可能な音名を指示することができるようにしている。
“根音からの距離”は、図10右欄上に示すように、半音単位で“0”〜“11”に設定され、例えば、ルートが“C”のCmajコードの場合は、その下に示すように音名“C”〜“B”が対応する。テーブル内(図10右欄下)の数字については、「1」以上であり同時発音数(同じ鍵域内)以下の値のときに、その音をノート変換に使うことができ、「0」は使用不能を表わす。
つまり、テーブル内の「1」以上の数字(「1」,「2」,…)は、そのときの同時発音数を示す数値以下の範囲内でノート変換に使用可能であるという優先度を表わし、各行で最大の数字(例えば、コードタイプ“Major”の行では「3」)は最大同時発音数を表わす。例えば、同時発音数が“2”であれば、「1」及び「2」の付いた音をノート変換に使うことができる。また、例えば、キーノート情報NTiとしてCmajで“F♯4”が入力された場合、同時発音数が“1”のときは、直ちに、「1」の付いた音“E”(距離“4”)が検索されて対応するノート“E4”に変換されるが、同時発音数が“2”のときは、使用可能な「1」又は「2」のうち、入力音名“F♯4”(距離“6”)に近い「1」の音“G”(距離“7”)が検索されて、ノート“G4”に変換される。
また、コード情報を入力しなかったりコード情報を無視する設定がなされるなど、コード情報を利用しない場合には、コードタイプ“Cancel”が指示される。コードタイプ欄の“Cancel”に対応する最下行のオール「1」は、このように“Cancel”が指示された場合に、キーノート情報NTiがそのまま出力ノート情報NToとなり、実質的にノート変換しないことを表わす。
また、鍵域及び鍵の種類(黒鍵/白鍵)によって異なるノート変換テーブルを持つことができる。例えば、鍵域をベース鍵域、コード鍵域及びメロディ鍵域の3鍵域に分けた場合、6つ〔3鍵域×2種類(白鍵、黒鍵)〕のテーブルを用意しておく。このようにテーブルを分けることにより、全く異なる変換ルールを適用することができる。
〔発音中の音と同一又は近傍音高の発音回避〕
この発明の一実施例によるキーオン処理においては、ノート変換によって発音中の音高と同じ音高或いは近い音高に変換されて音高の重複が生じた場合、1つの重複回避策として、音域〔ベース、コード、メロディ鍵域〕又は奏法〔アルペジオ(Arpeggio)奏法、ブロック(Block)奏法〕に応じて異なる方法を採用する。つまり、同じ又は近い音高に変換された場合には、例えば、
「1.鳴らさない」、
「2.次の候補の音高を探す」(ノート変換テーブルの活用)
という回避方法があるが、1,2の何れの方法を採用するかを鍵域又は奏法で分ける。例えば、ベース鍵域については「鳴らさない」。コード鍵域でのアルペジオ奏法であると「次の候補の音高を探す」が、コード鍵域でのブロック奏法では「鳴らさない」。また、メロディ鍵域であれば「次の候補の音高を探す」。
なお、音高の重複を検出する際、近い音高の判断のための音高重複の検出範囲(インターバルリミット)は低い音高ほど大きくとる方が音楽的であるから、インターバルリミットを音域(ベース、コード、メロディ鍵域)に応じて分けるのが好ましい。この場合、鍵盤の種類(白鍵、黒鍵)でインターバルリミットを分けることで異なる変換結果を得ることもできる。例えば、黒鍵のときはテンションノートを期待しているとみなし、インターバルリミットを常に“0”にする。
演奏の音域がコード鍵域であるとき、前回のキーオン(「前回キーオン時間」)に対する今回のキーオン時間の差でアルペジオ奏法とブロック奏法の判定を行う。例えば、「前回キーオン時間」とのキーオン時間差が一定時間以内であればブロック奏法とみなし、この時間差が一定時間以上であればアルペジオ奏法とみなしてこれを記憶する。このとき、判定要素となる「前回キーオン時間」は、コード鍵域にて実際に発音している音或いは予定の音のオンタイミングを指す。コード鍵域にて新たに発音(予定)が決まれば、前回キーオン時間を更新する。この一定時間は、演奏者が設定してもよいし、テンポに追従して変化してもよい。
次の候補の音高を探す場合、次に近い音高を選んだときに、前の押鍵に対して新しい押鍵が上方になるか下方になるかを予想することが困難である。つまり、上行や下降フレーズが変換後も上行したり下降するとは限らないので違和感を感じる。そこで、この発明の一実施例においては、次の候補を探す場合に、変換後の音高より上方に探すか下方に探すかを、前回の押鍵によるキーオンノート番号(NTio)との比較で決定する。つまり、今回のキーオンノート番号NTiが前回のキーオンノート番号より低い場合には下方に検索を行い、高い場合には上方に検索を行う。また、同じ場合は、前回の方向を保持してもよいし、どちらかに決めてもよい。このような方法で検索方向を定めることにより、上行フレーズ又は下降フレーズを弾いた時に変換後の音高が逆転することがなくなる。
〔キーオン処理〕
図11及び図12は、この発明の一実施例によるキーオン処理の流れを示す。両図において、ステップ記号S1〜S10の付いた四角又は六角ブロックは処理内容を表わし、実線矢印は処理の進行を表わす。また、丸みのある4隅を有する四角形ブロックは情報を表わし、破線矢印は情報の活用を表わす。なお、この処理フロー例では、ノート変換テーブルTBを複数ある中から選択している。
まず、(今回)入力されたキーオンノート番号NTiから鍵域と種類(黒鍵/白鍵)を判定する(ステップS1)。また、鍵域を判定し(ステップS2)、鍵域情報を取得(更新)すると共に、鍵域ごとの同時押鍵数とインターバルリミット値を更新する。インターバルリミットは、例えば、ベース鍵域では“4”半音、コード鍵域では“1”半音、メロディ鍵域では“0”(考慮せず)の値とされる。また、コードタイプがCancelのときは常に“0”である。
次いで、鍵域と種類から、ノート変換に用いるテーブルを決定し(ステップS3)、決定されたテーブルTB、コード情報及び同時押鍵数から、変換後のノート番号NTcを導き(ステップS4)、更にインターバルリミット値と発音中ノート情報にてノート番号NTcの重複ノートチェックを行う(ステップS5)。
重複チェック(S5)で両ノートが重複していないと判定されると、変換後ノート番号NTcをそのまま出力ノート番号NToとして発音処理を行う(ステップS6)。発音処理後は、発音中ノート情報(図11)を変換後ノート番号NTcで更新し、前回の押鍵音NTio(図12)をキーオンノート番号NTiで更新し、発音処理されたノート番号NTcに対応する鍵域がコード鍵域であるときは、更に、前回キーオン時間(図12)をキーオンノートNTiのキーオンタイミングで更新する。つまり、発音する場合には、発音中ノート情報が更新され、コード鍵域であれば前回キーオン時間も更新される。
一方、両ノートが重複しているときは、ステップS7(図12)以下の重複ノートの回避処理を行う。重複ノートの回避処理では、まず、「鍵域・奏法」判定処理を行う(S7)。この「鍵域・奏法」判定処理では、まず、鍵域情報情報を参照して鍵域判定を行い、コード鍵域であると更に(今回)キーオン時間及び前回キーオン時間の時間差から奏法(アルペジオ/ブロック)を求め、求められたコード鍵域時の奏法又は他の鍵域情報(ベース/メロディ)から、前回ノートと重複している当該ノート番号NTcを発音させないか、或いは、次の候補の音高を探すかを判断する。
さて、「鍵域・奏法」判定処理(S7)において、ベース鍵域或いはブロック奏法(コード鍵域)と判定されたときは、当該ノート番号NTcを発音しない(ステップS8)。ここで、ブロック奏法は、複数鍵をまとめて弾いた状態を指す。なお、コードタイプがキャンセルの場合は「重複なし」とみなしてもよい。また、この判定で発音しないと決定された場合も前回の押鍵音NTioを更新する。つまり、発音する場合(S6)も発音しない場合(S8)も、前回押鍵音NTioの更新を行う。
一方、メロディ鍵域或いはアルペジオ奏法(コード鍵域)と判定されたときは、「上方・下方検索」処理(ステップS9)に進んで、次の候補の音高を検索する。ここで、アルペジオ奏法は、例えば、80ミリ秒以上前の発音押鍵から空けて弾いた状態を指す。次の候補を検索する場合、キーオンノート番号NTiを前回押鍵音NTioと音高比較し、両者音高の大小関係を維持するように、上方に検索するか下方に検索するかを決定する。
次に、決定された方向に応じてキーオンノート番号NTiを“+1”インクリメント又は“−1”デクリメントして更新し(ステップS10)、更新されたキーオンノート番号NTi’=NTi±1に対して、再度、ノート変換テーブルTBにてノート変換を行い新たな変換後ノート番号NTcを導く(図11:S4)。
そして、新たな変換後ノート番号NTcについて重複チェックを行い(図11:S5)、重複しないと判断されるノート番号が現れるまで、上方・下方検索、キーオンノート番号更新、ノート番号変換及び重複チェック(S9→S10→S4→S5)を繰返し、重複がなくなると発音処理(図11:S6)に進む。
上述したキーオン処理を次の(1),(2)の例に従って具体的に説明する。
(1)「コード“Cmaj”」でメロディ鍵域の演奏をした場合
1.まず、初めに、ユーザがメロディ鍵域内の音“A4”を演奏し、このとき、他に同時発音がないものとする。
1a.ノート変換テーブルの“Major”行を参照すると、演奏音“A4”(NTi)は、1個目の発音になるので、優先度「1」が付けられている音名“E”(ミ)に従って音高“E4”(NTc)に変換される。音高“E4”は、直ちに出力ノート情報NToとして発音されて発音中ノート情報となり、演奏音“A4”は前回の押鍵音NTioとなる〔S4→S5→S6〕。
2.“E4”の発音中にユーザがメロディ鍵域内の第2音“F4”を演奏する。
2a.2音の発音になるので、テーブルの“Major”行において、演奏音“F4”(NTi)の“F”(ファ)に対して、優先度「1」又は「2」の音名“E”(ミ)又は“G”(ソ)が選択可能であるが、音程の近い方“E”(ミ)が採用されて、音高“E4”が候補(変換後ノート番号NTc)になる〔S4〕。
2b.既に音高“E4”は発音中であるため、重複チェックで「重複あり」と判断される〔S5〕。
2c.メロディ鍵域であるため「上方・下方検索」が行われ、前回押鍵音NTioは“A4”であるから(音高F4<A4)、キーオンノート番号NTiを“−1”した更新後キーオンノート番号NTi’=“E4”にて、ノート変換テーブルTBを参照する〔S7→S9→S10→S4〕。
2d.ノート変換により“E”(ミ)から音高“E4”が候補になり、重複のため、更に、キーオンノート番号NTiを“−1”して、2a〜2cと同様の処理を繰り返す〔S5→S7→S9→S10→S4→S5→…〕。
2e.そして、更新後キーオンノート番号NTi’=“B3”になったとき、テーブルTBで音程の近い方に“G”(ソ)が得られるので、音高“G3”が候補になり出力ノート情報NToとなって発音される〔S4→S5→S6〕。
3.第1音“A4”がキーオフされ、第2音“F4”はキーオンのまま(出音は“G3”)の状態で、ユーザが第3音“B4”を演奏する。
3a.2音発音中なのでテーブルTB中の選択可能な音名“E”(ミ)又は“G”(ソ)のうち、音程の近い方“G”(ソ)が採用されて、音高“G4”が候補(変換後ノート番号NTc)となる〔S4〕。
3b.その時点で発音中の音高は“G3”であるため、音高“G4”は「重複していない」と判断され出力ノートNToとなって発音される〔S5→S6〕。
(2)「コード“GM7”」でコード鍵域の演奏をした場合
1.ユーザがコード鍵域内の音“F2”(NTi)を演奏し、このとき、他に同時発音はなく、また、前回キーオン時間も記録されていない。
1a.ノート変換テーブルTBの“M7”行における1音優先のテーブル値「1」の距離“11”〔Cmajの音名“B”(シ)に相当〕が選択され、距離“0”=ルート“G”で換算され、音高“F♯2”が、変換後ノートNTc→出力ノートNToとなって発音され発音中ノート情報となる〔S4→S5→S6〕。
1b.音高“F♯2”の発音により、前回キーオン時間には演奏音“F2”のキーオン時間が記録され、前回の押鍵音NTioも“F2”になる。
2.音“F2”のキーオンとほぼ同時に(例えば、80ミリ秒内に)、ユーザがコード鍵域内の音“E2”を演奏する。
2a.ノート変換テーブルTBの“M7”行より、距離“11”又は“4”の音名〔Cmajの音名“B”(シ)又は“E”(ミ)に相当〕が使用可能であるが、演奏音“E2”(NTi)の“E”は、GM7ではルート“G”(距離“0”)に対して長6度(距離“9”)の音になるため、“E”に近い距離“11”が選択され、距離“0”=ルート“G”で換算されて、音高“F♯2”が候補(変換後ノートNTc)となる〔S4〕。
2b.音高“F♯2”は現在発音中なので「重複あり」となり、「鍵域・奏法判定」で「ブロック奏法(コード鍵域)」と判定されて、発音されないが、前回の押鍵音NTioは演奏音“E2”に更新される(前回のキーオン時間は更新されない)〔S5→S7→S8〕。
3.音“F2”がキーオンされたまま、少し時間を空けて(例えば、100msec後に)、ユーザがコード鍵域内の音“C2”を演奏する。
3a.演奏音“C2”(NTi)の“C”は、ルート“G”に対して完全4度(距離“5”)の音になるため、テーブルTBの“M7”行で使用可能な距離“11”又は“4”のうち、距離“4”が近くなり、これを距離“0”=ルート“G”で換算されて、候補音高(NTc)は“B1”となる〔S4〕。
3b.音高“B1”は前の発音と重複していないので発音されて発音中ノート情報に追加されると共に、前回キーオン時間は演奏音“C2”の押鍵時間に、前回の押鍵音NTioも演奏音“C2”に更新される〔S5→S6〕。
4.両音“F2”,“C2”共にキーオンのまま、更に少し時間を空けて(例えば、更に100ミリ秒後)、ユーザがコード鍵域内の音“G2”を演奏する。
4a.テーブルTBの“M7”行より、距離“11”,“4”又は“7”の音名〔Cmajの音名“B”(シ),“E”(ミ)又は“G”(ソ)に相当〕が使用可能であるが、演奏音“G2”(NTi)の“G”は、GM7ではルート(距離“0”)なので、“G”に近い距離“11”の音が選択され、距離“0”=ルート“G”で換算されて、音高“F♯2”が候補(NTc)となる〔S4〕。
4b.音高“F♯2”は、既に第1音で発音中であるため重複しており、次の「鍵域・奏法判定」では「アルペジオ奏法(コード鍵域)」と判定され、「上方・下方検索」を行う〔S5→S7→S9〕。
4c.今回演奏音“G2”は、前回押鍵音NTioの“C2”よりも高い押鍵なので、“G2”から半音ずつ高い(“+1”)更新後ノートナンバーNTi’を想定しテーブルTBのM7より候補音高(NTc)を求めてチェックすることを、「重複なし」になるまで繰り返す〔S9→S10→S4→S5(繰返し)〕。
4d.更新後ノートナンバーNTi’に“A2”を想定したときに距離“4”の音が近くなるので、これをルート“G”に換算して“B2”が候補音高(NTc)になると、「重複なし」と判定されて“B2”が出力ノートNToとなって発音される〔S4→S5→S6〕。
〔第1の入力音変換処理における種々の実施態様〕
以上、図面を参照しつつ、この発明の入力音変換システムにおける第1の入力音変換処理の好適な実施の形態について説明したが、この発明の精神を逸脱しない範囲で種々の変更が可能であって、この発明は種々の態様で実施することができる。例えば、ノート変換テーブルは、複数で組み合わせ変更可能であってもよいし、編集可能であってもよく、種類を増やしてもよい。実施例では、テーブル参照の際に同時発音数を考慮して候補の音高を探すようにしているが、さらに、同時発音数毎のテーブルを持つようにしてもよい。
同時発音してはいけない距離(音高重複の検出範囲)については、ユーザにより設定が可能でもよいし、デフォルトで予め設定(固定)しておいてもよく、また、全音域共通にしてもよい。演奏音が、同じ音域でも、黒鍵か白鍵かで距離を変えてもよい。
同時発音してはいけない距離について、さらに、ローインターバルリミット(low interval limit:二つの音を密集した状態で低音部に移動した場合、倍音成分が干渉しあって音の濁りはじめるポイント)に基づいて決定してもよい。例えば、対象とする2音の間の音程が長2度の場合は“F2”と“E♭2”から、短3度の場合には“E♭2”と“C2”から、また、長7度の場合には“E2”と“F1”から低くなると、ローインターバルリミットに該当するものとする。
発音中の音高と重なる場合に重なり回避のために採られる奏法毎に異なる方法については、例えば、鳴らさない、オクターブずらす、隣のコード音に行く、或いは、テーブルを活用するなどという方法もある。つまり、実施例では、奏法はコード鍵域のみで、アルベジオ奏法時は「テーブルを活用する」方法を、ブロック奏法時は「鳴らさない」方法を割り当てているが、他の鍵域(メロディ鍵域、ベース鍵域)においても奏法を判別し、それぞれ適切な拳法を割り当てることができる。例えば、メロディ鍵域について、アルベジオ奏法時には「テーブルを活用する」割り当て、一方のブロック奏法時には「オクターブずらす」を割り当てる。また、ベース鍵域について、アルベジオ奏法時には「テーブルを活用する」を割り当て、ブロック奏法時には「隣のコード音に行く」を割り当てる、等々である。なお、奏法とこのような候補音を探す方法との組み合わせは上例に限らない。また、奏法の種類についても上例に限らない(例えば、直前の入力音がまだON状態であるが、入力のタイミングは直前の入力タイミングからある程度離れていたときには、レガート奏法とする、等々。)。なお、コードタイプが“Cancel”の場合には、重複などのチェックを行わずそのまま発音する。
演奏鍵盤の鍵域については、実施例の構成に限らない。例えば、メロディ鍵域とコード鍵域の2つのみなどでもよい。
奏法を判断する基準になる押鍵の時間差は、ユーザにより設定可能としてもよいし、デフォルトで予め設定(固定)しておいてもよい。また、テンポに応じて、例えば、16分音符相当などというように、割り出した時間でもよい。
1つの曲の演奏に適用されるコード情報の個数は、1つに限定されず、任意の数を採用することができる。また、コード情報は、実施例のように予め記憶されているものでもよいし、リアルタイムに入力されるものでもよい。
コード情報については、そのコードの機能を判別し、機能に応じて音高変換方法(テーブルなど)を変えてもよい。コードの機能に沿った音高に変換することが可能になる。また、変換後の重複回避などの制御においても、コードの機能を考慮してもよい。コードの機能を判別するためには、調情報或いはコード情報毎の度数情報が必要になる。ここで、調情報は、例えば、ユーザが装置上の操作子で設定したり、元になるコード情報の入ったデータに含まれているものを活用する等により取得する。度数情報は、何らかの方法で与えられた調情報を元に算出したり、供給されるコード情報に付加しておく等により取得する。
例を挙げると、次のとおりである:
〔a1〕Cmaj調でAmコードの場合、AmはVI度のコードでトニック(tonic :主和音)の機能なので、“C”に変換する。(例えば、トニックの機能では調の主音に変換する。)
〔b1〕Cmaj調でG7コードの場合、G7はV度のコードでドミナント(dominant:属和音)の機能なので、“G”か“B”に変換する。(例えば、ドミナントの機能では、コードのルート音かIII度の音に変換する。)
〔c1〕Cmaj調でDmコードの場合、DmはII度のコードでサブドミナント(subdominant :下属和音)の機能なので、“D”に変換する。(例えば、サブドミナントの機能では、コードのルート音に変換する。)
上述したものの変換例で、調が変わったときは、
〔a2〕Amin調でAmコードの場合、AmはI度のコードでトニックの機能なので、“A”に変換する。
〔b2〕Gmaj調でG7コードの場合、G7はI度のコードでトニックの機能なので、Gに変換する。
〔c2〕Fmaj調でDmコードの場合、DmはVI度のコードでトニックの機能なので、Fに変換する。
上記の変換例で、III度のコードをトニックの機能として扱うときには、
〔a3〕Cmaj調でEmajコードの場合、EmajはIII度のコードでトニックの機能なので、“C”に変換する。
〔b3〕Amaj調でEmajコードの場合、EmajはV度のコードでドミナントの機能なので、“E”か“G”に変換する。
〔c3〕Bmaj調でEmajコードの場合、EmajはIV度のコードでサブドミナントの機能なので“E”に変換する。
重複回避の制御にコードの機能を使うときは、例えば、Gmaj調でCmajコードで既に“G3”の音が発音されている上に、変換音高も“G3”である場合、CmajコードはIV度のコードでサブドミナントの機能なので、ルート音“C”を割り出し、変換音高の“G3”の代わりに“C3”を発音する。
〔2〕第2及び第3の入力音変換処理
この発明の一実施例による入力音変換システムにおいては、“キーオン処理(2)”と呼ばれる音高変換処理(第2及び第3の入力音変換処理)に従って、演奏による入力音をコード情報や音色などに合う音高に変換することができる。図13は、この発明の一実施例による入力音変換システムにおけるノート変換モジュールとそれに関連するモジュールの関係を極く概略的に表わすモジュール関連図である。
この入力音変換システムにおける第2の入力音変換処理では、端的にいうと、図13に示すように、ユーザによる実際の演奏に従って鍵盤35から入力される入力音高NTiを、ノート変換部NCにより、シーケンサSQからのコード情報に合った出力音高NToに変換する際に、ユーザによる鍵盤35の押鍵状態(音高入力状態)MCに応じて、基本音群の音高への変換或いは基本音群以外の音群の音高への変換が制御される。一具体例では、各コードタイプに対して変換可能な音名特定情報を示す音高変換テーブルとして、基本音群の音高に変換するタイプの第1テーブル(TBa,TBb,…)と、基本音群以外の音高に変換したり或いは基本音群の音高乃至基本音群以外の音高に変換するタイプの第2テーブル(TBt1,…;TBs)とを用意しておき、音高入力状態に応じてどちらのタイプのテーブルを使用するかを決定して、音高入力状態により基本音群以外の音高にも変換できるように制御する。
また、この入力音変換システムにおける第3の入力音変換処理では、音色毎に音高変換条件付け情報が記憶され、各コードタイプに対して変換可能な音名特定情報を示す音高変換テーブルが複数用意されている。このシステムの音高変換では、端的にいうと、ノート変換部NCは、音高変換テーブルを用いてユーザの鍵盤35の演奏による入力音高NTiをシーケンサSQからのコード情報に合う音高NToに変換し、この音高変換には音色情報により指示される音色VSを考慮する。例えば、指示された音色VSに対応して音高変換テーブル(NT,TT)を選択的に切り替えて音高変換を行い、また、当該音色VSに関する音高変換条件付け情報(SM〜RC)を元にして、当該テーブルで変換される音高NToを当該音色に合うように制御する。
以下、詳しく説明する。鍵盤部(演奏操作部)35は、入力音情報(入力音高情報)として、曲の進行に従い鍵盤上の鍵(キー)を順次オン/オフする操作に応じた入力キーオン/オフノート情報(キーオンノート番号)NTiを発生する。また、シーケンサ部(シーケンサモジュール)SQは、ROM32又は外部記憶装置34から読み出されるコード進行データに基づき、曲の進行に合わせたコード情報を発生する。これら鍵盤からのキーノート番号NTi及び曲の進行に合わせたコード情報はノート変換部(ノート変換モジュール)NCに入力される。
ノート変換モジュールNCは、コードタイプに対応して使用可能な音名特定情報が記録された音高変換テーブル(ノート変換テーブル:図15〜図16)を備えており、シーケンサモジュールSQ及び演奏操作部35から夫々コード情報及びキーオンノート番号NTiを取得すると、指示された音色VSに応じて選択される所定の音高変換テーブルを利用し、コード情報及び予め決められた変換ルールに基づき、入力されたキーオンノート番号NTiを出力ノート番号NToに変換し、これを出力音情報NToの音高として生成する「キーオン処理(2)」を行う。
このキーオン処理(2)では、出力音情報NToとして、入力音情報NTiの音高が音色VSやコードタイプに合う音高に変換され、その際、押鍵状態MCに応じてコード構成音などの基本音以外の音高にも変換することができるにように制御される。そして、キーオン処理(2)で生成された出力音情報NToは、音源モジュール(音源部)38に出力され、サウンドシステム42を介して発音される。
〔音色別変換情報〕
この発明の一実施例による入力音変換システムでは、キーオン処理(2)において指示された音色別に音高変換条件付け情報(以下、単に「変換情報」という。)を用いて、所望の音高変換が行われる。図14は、音色別変換情報の一例を示す。
音色別変換情報は、音色毎に音高変換の条件付けを行うための情報であり、この音色VSは、ユーザがパネル操作部35のボイス選択操作で設定したり、ROM32や外部記憶装置34などの記憶手段に記憶された音楽データ(プログラムチェンジ)から判別抽出することで取得される音色情報により指示することができる。この音色別変換情報には、例えば、図14に示すように、同時に発音させることができる楽音の最大数を表わす「可能最大同時発音数SM」、出力音情報NToの音高範囲の上限及び下限値を表わす「上限ノート番号NH」及び「下限ノート番号NL」、当該音色に特有の奏法に依存する「奏法条件RC」、通常のノート変換テーブルTBa,TBb,…及びテンション用のノート変換テーブルTBt1,TBt2,…を指定するための「通常テーブル(情報)NT」及び「テンションテーブル(情報)TT」などの情報があり、ギター、リコーダー(ソプラノ)、バイオリン、ピアノ、…等々、適用される音色の種別に対応して設定される。
可能最大同時発音数SMは、演奏しようとする音色の種別に応じて、演奏操作部(鍵盤部)35の同時押鍵数に対応して楽音生成部38−42で同時に発音されるべき楽音の数(同時発音数)をこの値以内に制限するために用いられ、上限及び下限ノート番号NH,NLは、当該音色種別に応じて、発音される楽音の音高を、両番号で表わされる音高範囲NH〜NL内の音域に制限するのに用いられる。
奏法条件RCは、当該音色に応じた奏法上の条件を表わす情報である。例えば、弦楽器の音色の場合、同時発音される楽音の全てが各弦音色につき1音ずつに割り当てられるか、各指の配置に無理がないか、等々の条件があり、ピアノ音色の場合にも、同時発音や発音移行時の各指の配置に無理がないかなどの条件がある。図示のギター音色の奏法条件RCの例では、実際のギターを想定して「ギター6弦分割」とし、同時発音される全音〔最大6音(SM=6)〕の夫々を6弦の何れかの弦に重複しないように割り当てる設定がなされる。
この発明の一実施例による入力音変換システムでは、キーオン処理(2)において所望の音高変換を実現するのにノート変換テーブルが用いられ、図14の例では、通常ノート変換テーブル(通常変換テーブル)及びテンション用ノート変換テーブル(テンション変換テーブル)という2種のノート変換テーブルを用いて、演奏操作(押鍵)状態に対応する基本楽音及びテンション付加用楽音の音高を得るようにしている。このために、複数の通常変換テーブルTBa,TBb,…及びテンション変換テーブルTBt1,TBt2,…が用意され、演奏出力に指定された音色に応じて、これらのテーブルの中から、それぞれ、特定の通常及びテンションノート変換テーブルが選択的に設定される。通常及びテンションテーブル情報NT,TTは、音色の種別に応じて設定されるべき通常及びテンション変換テーブルを指定する情報であり、例えば、テーブル番号でテーブルを指示する。
〔ノート変換テーブル〕
図15及び図16は、ノート変換テーブルのいくつかの例を示す。図14の第1欄に示すギター音色の例では、通常テーブル情報NTにより、基本楽音の音高変換のために、図15に示される通常変換テーブルTBaが指定され、テンション付加用楽音の音高変換のためには、テンションテーブル情報TTで図16(2)のテンション変換テーブルTBt1が指定される。また、図14第2欄のリコーダー(ソプラノ)の音色では、通常テーブル情報NTにて図16(1)の通常変換テーブルTBbを使用すべき旨が指示され、テンション変換テーブルには図16(2)のテンション変換テーブルTBt1を用いるように指示される。
ノート変換テーブルは、演奏操作(押鍵)に基づく入力音情報の音高NTiを所望の音高NTcに変換する際に、利用可能な音名と利用不能の音名を指示する情報をコードタイプ毎にコードルートに従って配列したものである。図15及び図16の例では、これらの情報は、コードタイプ毎に“コードルートからの距離”に従って所定数値のパターンで配列され、利用不能の音名を指定する情報は数値「0」で表わされる。これに対して、利用可能な音名を指定する情報は、特に「音名特定情報」と呼ばれ、同時押鍵数に応じた「1」以上の数値で表わされる。
図15のノート変換テーブル例で説明すれば、“コードルートからの距離”は、右欄上部に示すように、半音単位で“0”〜“11”に設定され、例えば、ルート=“C”のCmajコードの場合は、その下に示すように、音名“C”〜“B”が対応する(図16では例示を省略)。右欄下部に「1」以上の数値で表わされる音名特定情報は、最左欄の各コードタイプ(Major,M7,M6,…)毎に、ノート変換に使用可能であることを表わす。ノート変換に当っては、所定のコードタイプ行にて、入力音高(キーオンノート番号)NTiの音名に最も近い「1」以上の音名特定情報を探索し、探索された音名特定情報によって指示される音名から所望の音高(変換後ノート番号)NTcを求めることができる。
なお、コード情報を入力しなかったりコード情報を無視する設定がなされるなど、コード情報を利用しない場合には、各図のコードタイプ欄における最下行のコードタイプ“Cancel”が指示され、“Cancel”行に示されるオール「1」のパターンが適用される。“Cancel”が指示された場合は、キーオンノート番号NTiがそのまま変換後ノート番号NTc(=出力ノート番号NTo)となり、実質的にノート変換がなされない。
ノート変換テーブルは、上述の原理に従う種々のパターンを多数設けておくことにより、入力音に対して全く異なる音高変換ルールを適用することができる。例えば、通常の演奏操作(押鍵)に基づく入力音情報の音高をコード構成音の音高に変換するのにノート変換テーブルを用いることができる。このようなテーブルは「通常変換テーブル」と呼ばれ図15及び図16(1)に例示される。また、特定の演奏操作(押鍵)に基づく入力音情報の音高をコードのテンションノート(単にテンションともいう)に変換するのに、図16(2)に例示されるような「テンション変換テーブル」と呼ばれるノート変換テーブルを用いることもできる。
さて、図15に示す通常変換テーブルTBaは、同時押鍵数に応じた優先度があるパターンをもつ通常変換テーブルの一例であり、「0」以外で同時発音数以下の数字が付いている音名特定情報を使用することができる。つまり、音名特定情報の数字(「1」,「2」,…)は、同時発音数(同時に発音させるべき数=同時押鍵数)に対応しており、そのときの同時発音数以下の数値範囲内でノート変換に使用可能であるという優先度を表わす。また、各コードタイプの行では、最大の数字(例えば“Major”の行で「3」)は最大の同時発音数を表わし、同時押鍵数に応じて鳴らす音と鳴らさない音が変化するように設定されている。
例えば、同時発音数が“2”であれば、「1」及び「2」の付いた音をノート変換に使うことができる。また、例えば、キーオンノート番号NTiとしてCmajで“F♯4”が入力された場合、同時発音数が“1”のときは、直ちに、「1」の付いた音“E”(距離“4”)が検索されて対応するノート“E4”に変換されるが、同時発音数が“2”のときは、使用可能な「1」又は「2」のうち、入力音名“F♯4”(距離“6”)に近い「1」の音“G”(距離“7”)が検索されて、ノート“G4”に変換される。
図16(1)の通常変換テーブルTBbは、通常変換テーブルの他の例であり、同時押鍵数による優先度がないパターンになっており、数字「1」が付いている音名特定情報を使用することができる。このようなパターンの通常変換テーブルは、同時に1音しか鳴らすことができないリコーダのような管楽器タイプの音色のノート変換に適している。
図16(2)のテンション変換テーブルTBt1は、テンション変換テーブルの一例である。テンション変換テーブルは、特定の演奏操作状態での入力音情報から、数字「1」の音名特定情報の指示に基きコードのテンションを求めるのに用いられ、実際の使用に当っては通常変換テーブルと併用される。この場合、例えば、テーブル情報で指定された両テーブルを次の何れかの方法で切り換える:
〔例1〕白鍵操作による入力音情報に対して通常変換テーブルを適用し、黒鍵操作の入力音情報についてはテンション変換テーブルを適用する。
〔例2〕或る押鍵数までは通常変換テーブルを適用し、当該押鍵数を超えるとテンション変換テーブルを適用する。
〔例3〕押鍵タイミングが、直前の押鍵タイミングから所定時間〔例えば、100ミリ秒(msec)〕以上離れていれば、通常変換テーブルを適用し、それより近ければテンション変換テーブルを適用する。
ここで、〔例2〕のように、同時押鍵数が或る一定数までは入力音情報をコード構成音の中の何れかの音高に変換し、一定数を超えたときに入力音情報をコード構成音以外の音高も含めた音高に変換する場合は、単一のテーブルを利用することができる。図16(3)の総合変換テーブルTBsは、この場合に使用可能なテーブル例を示す。このテーブルTBsは、図15の通常変換テーブルTBaと同様に、同時発音数「1」〜「6」による優先度がある音名特定情報のパターンをもち、「0」以外で同時発音数以下の数字の音名特定情報が付いている音名を使用することができる。
この総合変換テーブルTBsにおいては、例えば、“Cmaj”コードの場合に、同時発音数が一定数「3」のときは、入力音情報は、通常変換テーブルTBaと同様に、コード構成音(基本音群)である“C”、“E”、“G”の中の何れかの音高に変換される。しかしながら、同時発音数が「3」を超える(“3”<同時発音数<可能最大同時発音数SM=“6”)ときは、コード構成音“C”、“E”、“G”及びコード構成音外の“B”、“D”、“A”の何れかの音名をもつ音高に変換される。この場合、条件によっては、基本音群の何れかの音高に変換されるかもしれないし、基本音群以外の音高に変換されるかもしれない。
〔キーオン処理(2)〕
図17及び図18は、この発明の一実施例によるキーオン処理(2)の流れを示す。両図において、ステップ記号“S21”〜“S35”の付いた四角又は六角ブロックは処理内容を表わし、実線矢印は処理の進行を表わす。また、丸みのある4隅を有する四角形ブロックは情報を表わし、破線矢印は情報の活用を表わす。
ユーザが演奏操作(押離鍵)を行うと、まず、演奏操作(押離鍵)状態を判定する(ステップS21)。この判定ステップでは、キーオンノート番号NTiを含む(今回の)押鍵音情報が入力され、同時押鍵数を更新する〔キーオン毎に“+1”(また、キーオフがあれば“−1”)〕と共に、採用されるテーブル切換え方法(上述の〔例1〕〜〔例3〕)に応じて、鍵種(黒鍵/白鍵)を判定したり或いは押鍵タイミング間隔を計測する(ステップS21)。
次いで、採用される演奏音の音色と押鍵状態判別結果MCから、ノート変換に用いるテーブルを決定する(ステップS22)。例えば、予めシステムにセットされた演奏音音色の種別VSに対応して、音色別変換情報(図14)における通常及びテンションテーブルNT,TTのテーブル番号で指定される通常及びテンション変換テーブルが選択される。次に、選択された両テーブルから、セットされたテーブル切換え方法の条件に従い判別された押鍵状態MCに応じて、何れのテーブルを使用するかが決定される。
続いて、後述する音高範囲チェック(ステップS26)で用いる上方及び下方検索フラグH.Lを共に“TRUE”にし(ステップS23)、決定されたテーブルを用いてコード情報及び同時押鍵数からキーオンノート番号NTiをノート番号NTcに変換する(ステップS24)。以後、変換されたノート番号NTcに関して、同時発音数チェック(ステップS25)、音高範囲チェック(ステップTS26)、重複ノートチェック(ステップS27)及び奏法チェック(ステップS28)を行う。
そして、全てのチェック(S25〜S28)で条件が満足されると、当該変換後ノート番号NTcについて発音処理を行い、出力ノート番号NToとして音源部38に出力する(ステップS29)。発音処理が行われた場合には、「発音中ノート情報」を更新すると共に「前回の押鍵音NTio」を今回のキーオンノート番号NTiで更新して(図18:ステップS30)、次の演奏操作を待つ。
まず、同時発音数チェック(S25)においては、音色別変換情報(図14)から、セットされた音色(種類)に対応する可能最大同時発音数SMを取得し、発音中ノート情報と今回のキーオン情報に基づく現在の同時発音数が、可能最大同時発音数SMにより示される同時発音数範囲内であるか否かを調べる。この判定の結果、制限内であれば音高範囲チェック(S26)に進むが、この制限範囲をオーバーした場合には“今回の押鍵については発音しない”ものと決定する(図18:ステップS31)。発音しない決定が行われた場合も、前回の押鍵音NTioを今回キーオンノート番号NTiで更新して(S30)次の演奏操作を待つ。
音高範囲チェック(S26)では、音色別変換情報(図14)から、セットされた音色(種類)に対応する上限及び下限ノート番号NH,NLを取得し、変換後ノート番号NTcが、両番号NH,NLにより示される音高範囲(音域)内であるか否かを調べる。この範囲チェックでは、変換後ノート番号Ntc<下限ノート番号NLの場合は、下方検索フラグLを“FALSE”にして下方への検索を禁止し、変換後ノート番号Ntc>上限ノート番号NHの場合には、上方検索フラグHを“FALSE”にして上方への検索を禁止する。
この音高範囲チェックで所定の音域内であれば重複ノートチェック(S27)に進むが、音域内でないときは、検索フラグH.Lの内容を調べて変換後音高の限界を判定する音高限界チェック(図18:ステップS32)を行う。すなわち、何れかの検索フラグH.Lが“TRUE”であれば、上下何れかの方向での検索が可能であると判定し、例えば、下方検索フラグL=“TRUE”なら下方検索を設定し、上方検索フラグH=“TRUE”なら上方検索を設定する(ステップS33)。この場合、設定された検索方向に応じてテーブル参照用ノート番号NTi’(当該押鍵当初はNTi’=NTi)を“±1”し(ステップS34)、ノート変換テーブルによりこのノート番号NTiを変換し(図17:S24)、新たに変換されたノート番号NTcにつき、再度、音高範囲チェック(S26)を行う。
一方、この限界チェック(S32)で両検索フラグH.L共に“FALSE”(H=L=“FALSE”)であれば、限界であると判断して“今回の押鍵については発音しない”ものと決定し(S31)、前回の押鍵音NTioを今回キーオンノート番号NTiで更新して(S30)次の演奏操作を待つ。
重複ノートチェック(S27)では、変換後ノート番号NTcが発音中ノート情報と重複しているか否かを判定する。なお、この重複チェックにおいて、同時発音数が“1”の場合は「重複なし」とみなす判断がなされる。また、コードタイプがCancelの場合は「重複なし」とみなしてもよい。この重複チェックにより両ノートが重複していないと判定されたときは、奏法チェック(S28)に進むが、両ノートが重複する場合は、ユーザの押鍵した方向に次の候補を検索する上方/下方検索(図18:ステップS35)に進む。
この上方/下方検索(S35)では、前回押鍵音情報NTioとキーオンノート番号NTiを比較して前回に対する今回の押鍵方向を判断し、この押鍵方向に応じて上方/下方検索を設定する。そして、この押鍵方向に応じてテーブル参照用ノート番号NTi’を“±1”し(S34)、このノート番号NTi’をノート変換テーブルで変換し(図17:S24)、新たに変換されたノート番号NTcについて、再度、重複ノートチェック(S27)を行う。
奏法チェック(S28)では、音色別変換条件情報(図14)から、変換後ノート番号NTcが、セットされた音色(種類)に対応する奏法条件RCに適合しているか否かを調べる。この奏法チェックには、例えば、ギター音色の場合、同時発音の全音が各弦につき1音ずつに割り当てられるか、各指の配置に無理がないか、などがある。なお、音色によっては奏法チェック自体がない場合があり(リコーダー)、また、「〔1〕第1の入力音変換処理」のように、奏法チェックにおいて、前回の押鍵音NTioとのタイミングにより発音の妥当性をチェックする手法などを採用してもよい。そして、奏法条件RCに適合しているときは(OK)前述した発音処理(S29)を行うが、適合していないときには(NG)今回の押鍵は発音しないものとし(図18:S31)、前回押鍵音情報NTioを今回キーオンノート番号NTiで更新して(S30)次の演奏操作を待つ。
〔テーブル活用例〕
ここで、図14の音色別変換情報のうち「ギター」音色を設定し〔例1〕に従って、白鍵操作に対応して図15の通常変換テーブルTBaを使用し、黒鍵操作に対して図16(2)のテーブルTBt1を使用する場合について、次の(1),(2)の例に従い、上述したキーオン処理(2)におけるノート変換テーブルの活用の仕方を具体的に説明する。
(1)「コード“Cmaj”」で可能最大同時発音数SM=“6”の場合
1.まず、他に同時発音がない状態で、ユーザが演奏操作部(鍵盤)35で第1音“A4”を演奏する。
1a.演奏音“A4”(NTi)は白鍵であり1個目の発音になるので、通常変換テーブルTBaの“Major”行を参照し〔S22〕、優先度「1」の音名特定情報が付いた音名“E”(ミ)に従って、音高“E4”(NTc)に変換される。音高“E4”は直ちに出力ノート番号NToとして発音されて発音中ノート情報となり、演奏音“A4”は前回の押鍵音NTioとなる〔S24→S29〕。
2.“E4”の発音中にユーザが第2音“F4”を演奏する。
2a.演奏音“F4”は白鍵で2音(可能最大同時発音数SM=“6音”以下)の発音になるので、同テーブルTBaの“Major”行において、音“F4”(NTi)の“F”(ファ)に対し優先度「1」又は「2」の音名“E”(ミ)又は“G”(ソ)が選択可能であるが、音程の近い方“E”(ミ)が採用され、音高“E4”が候補(変換後ノート番号NTc)になる〔S24,S25〕。
2b.音高“E4”は、既に発音中であるため、重複チェックで「重複あり」と判断される〔S27〕。
2c.そのため「上方/下方検索」〔S35〕が行われ、前回押鍵音NTioは“A4”であるから(音高F4<A4)、キーオンノート番号NTiを“−1”したテーブル参照用ノート番号NTi’=“E4”にて、テーブルTBaを参照する〔S34→S24〕。
2d.ノート変換により音名“E”(ミ)から音高“E4”が候補になるが、重複のため、更に、ノート番号NTi’を“−1”して、2a〜2cと同様の処理を繰り返す〔S27→S35→S34→S24→S27→…〕。
2e.そして、ノート番号NTi’=“B3”になったとき、テーブルTBaで音程の近い方に“G”(ソ)が得られるので〔S24〕、音高“G3”が候補になり出力ノート番号NToとなって発音される〔S27→S29〕。
3.第1音“A4”がキーオフされ、第2音“F4”はキーオンのまま(出音は“G3”)の状態で、ユーザが第3音“B4”を演奏する。
3a.演奏音“F4”も白鍵で2音発音中なので、同テーブルTBa中の選択可能な音名“E”(ミ)又は“G”(ソ)のうち音程の近い方“G”(ソ)が採用され、音高“G4”が候補(変換後ノート番号NTc)となる〔S24,S25〕。
3b.その時点で発音中の音高は“G3”であるため、音高“G4”は「重複していない」と判断され出力ノートNToとなって発音される〔S27→S29〕。
4.ユーザが、第2,3音“F4”,“B4”を押鍵したままで、第4音“C♯4”を演奏する。
4a.演奏音“C♯4”は黒鍵なので、テンション変換テーブルTBt1の“Major”行を参照し〔S22〕、音名特定情報「1」が付いた音名“D”(レ),“A”(ラ),“B”(シ)のうち、“C♯”に一番近い音名“D”が選択され、これに対応する音高“D4”(NTc)が出力音高候補となる〔S24〕。
4b.この時点で発音中のノートは音高“G3”,“G4”であるため、音高“D4”は、これらに重複せず、発音される〔S24→S29〕。
(2)「コード“GM7”」で可能最大同時発音数SM=“6”の場合
1.他に同時発音がない状態で、第1音“F2”(NTi)を演奏する。
1a.演奏音“F2”は白鍵であるため、通常変換テーブルTBaの“M7”行が適用される〔S22〕。テーブルTBaの“M7”行では、1音優先テーブル値「1」の音名特定情報が付いた音名は、ルート(根音)“G”(=距離“0”)からの距離が“11”半音上〔Cmajの音名“B”(シ)に相当〕、つまり、ルート“G”で換算して音名“F♯”となるから、演奏音“F2”と同じオクターブで、音高“F♯2”が変換後ノートNTc→出力ノートNToとなって発音され発音中ノート情報となる〔S24→S29〕。
2.第1音“F2”を押鍵したまま第2音“E♭2”を演奏する。
2a.演奏音“E♭2”は黒鍵であるため、テンション変換テーブルTBt1の“M7”行が適用される〔S22〕。テーブルTBt1の“M7”行において、音名特定情報「1」が付いたルート“G”からの距離が“2”,“6”,“8”半音上〔CM7の音名“D”,“F♯”,“A♭”に相当〕、つまり、ルート“G”で換算して、それぞれ、音名“A”,“C♯”,“E♭”がノート変換に使用可能であるが、ユーザの演奏音(NTi)は“E♭2”なので、音名“E♭”に対応する音高“E♭2”が候補(変換後ノートNTc)となる〔S24〕。
2b.音高“E♭2”は、発音中ノート情報“F♯2”と共に、可能最大同時発音数SM=“6音”以下の2音発音中となり〔S25〕、出力ノートNToとして発音される〔S26→S29〕。
〔第2及び第3の入力音変換処理における種々の実施態様〕
以上、図面を参照しつつ、この発明の入力音変換システムにおける第2及び第3の入力音変換処理の好適な実施の形態について説明したが、この発明の精神を逸脱しない範囲で種々の変更が可能であって、この発明は種々の態様で実施することができる。
特に、第2の入力音変換処理については、例えば、基本音群は、実施例のようにコード構成音だけではなく、基本音群とその他の音群などの分け方もできる。例えば、スケール音とノンスケール音で分ける、コードルートとそれ以外の音に分けるなどの方法がある。また、基本音群をコード構成音とした場合、コード構成音以外の音高は、実施例のようにコードのテンションであってもよいし、装飾音に使われやすいかもしれない音(例えばコード構成音の短2度下の音)でもよい。或いは、入力される演奏音そのままでもよい。
実施例の押鍵状態判別ステップ(S21)で基本音群以外も含めた音高に変換する押鍵状態かどうかを判定するのに、上述の活用例では〔例1〕のように「黒鍵か白鍵か」という違いで判定するようにしたが、これだけでなく、他の押鍵状態の違いでも判定することができる。すなわち、〔例2〕のように、演奏者の同時押鍵数を検出して押鍵数が或る一定値(例えば8音)を超えた場合や、〔例3〕の場合、或いは、押鍵ベロシティが或る一定値(例えば30)より弱い場合、鍵盤内の特定のキーや操作子を操作した場合、等々によって、基本音群以外を含めた音高に変換するようにしてもよい。なお、〔例2〕の場合には、図16(3)のような総合変換テーブルTBsの使用が可能であることはいうまでもない。
実施例では、コード構成音以外の音高に変換するためにテンション変換テーブルTBt1,TBt2,…を使用するようにしたが、計算などのアルゴリズムによって算出するようにしてもよい。例えば、入力(演奏)音高に一番近いコード構成音以外の音高にしたり、或いは、そのときのコードの9thで入力(演奏)音高に一番近い音高にするなどの方法を採用してもよい。また、例えば、基本音群をコード構成音とする場合、一旦、通常変換テーブルを用いてコード構成音に変換しておき、そこからテンションノートに加工するというように、“通常変換テーブル+計算アルゴリズム”という方法も採用することができる。
また、ノート変換テーブルは、複数で組み合わせは変更可能であってもよいし、編集可能であってもよい。さらに、変換テーブルの種類を増やしてもよい。例えば、基本音群をコード構成音とした場合、コード構成音以外の音高への変換であっても、ユーザの押鍵の仕方によって使用テーブルを変えてもよい。また、実施例では、変換テーブルを参照する際に同時発音数を考慮して候補の音高を探すようにしているが、さらに、同時発音数毎のテーブルを持つようにしてもよい。
実施例のキーオン処理(2)においては、ノート番号変換ステップ(S24)以降のステップでノート変換後情報(NTc)について各種チェックを行う例を挙げているが、こうしたチェックの種類はこれに限らない。また、「発音しない」(S31)場合の判定〔S25(制限オーバー),S28(奏法条件NG),S32(音高限界)〕も、これに限らない。なお、コードタイプがCancelの場合は、重複などのチェックを行わずそのまま発音してもよい。
音高変換に適用されるコード情報の個数は限定されない。また、コード情報は予め記憶されているものでもよいし、リアルタイムに入力されるものでもよい。
特に、第3の入力音変換処理については、例えば、音色別変換情報(図14)の内容は、ユーザ設定ができるようにしてもよい。
また、ノート変換テーブルは、複数で組み合わせは変更可能であってもよいし、編集可能であってもよい。さらに、変換テーブルの種類を増やしてもよい。また、実施例では、音色別変換情報(図14)を参照して変換テーブルを決めているが、音色毎に変換テーブルを用意しておいてもよい。これは、同時発音数チェック(S25)や範囲チェック(S26)、奏法チェック(S28)についても同様であり、各チェック処理の中で、音色を基にして必要な条件値を割り出してもよい。
同時押鍵数に対応するタイプのノート変換テーブル(TBa,TBs)について、実施例では、テーブルを参照する際に同時発音数を考慮して候補の音程を探すようにしているが、同時発音数毎のテーブルを持つようにしてもよい。
同時発音数チェック(S25)については、特に同時発音数を問わない音色であればスルー(“制限内”)にしてもよい。また、コードタイプがCancelの場合は、重複などのチェックを行わずそのまま発音してもよい。
音高範囲チェック(S26)において、音色別変換情報(NH,HL)で指定される音高範囲に変換後の音高(NTc)が収まらなかった(“範囲内でない”)場合の処理については、実施例では、限界チェック以下の処理(S32〜S34,S30)を行っているが、例えば、直ちに「発音しない」とする方法や、「1オクターブずらしてもう一度範囲チェック(S26)を行う」方法など、他の方法を採用することができる。
音高変換に適用されるコード情報の個数は限定されない。また、コード情報は予め記憶されているものでもよいし、リアルタイムに入力されるものでもよい。
〔まとめ〕
以上説明したように、この発明の演奏補助システムによれば、演奏者が音楽的な間違いを気にせずに演奏表現に気を配ること(注力)が可能な演奏補助装置を提供することができる。
この発明の入力音変換システムにおける第1の入力音変換処理によれば、ユーザ実演奏による入力音をコード対応の変換テーブルによりコードに合う音高に変換すると共に、変換された音高が現在発音中の音高と重複するときは、音域及び奏法に合わせて更には実演奏音の高低関係を維持するように発音を制御し、同じ音高の音が複数同時に発音状態にならないようにしているので、自然な聴感を得ることができる。
また、この発明の入力音変換システムにおける第2の入力音変換処理によれば、ユーザの実際の演奏による入力音をコードに合った音高に変換する際に、押鍵状態などの音高入力状態に基づき、基本音群(例えば、コード構成音やスケール音)或いは基本音群以外の音群(例えば、テンションや装飾音)の音高に変換されるように制御し、音高入力状態に応じて基本音群以外の音高にも変換できるようにしているので、ユーザの望むときに基本音群以外の音高も含んだ変化に富んだ演奏出力を得ることができる。
さらに、この発明の入力音変換システムにおける第3の入力音変換処理によれば、ユーザの実際の演奏による入力音をコードに合った音高に変換する際に、音色情報により指示される楽器音色によって、音高変換テーブルを選択的に切り替えたり、当該音色に対応する音高変換条件付け情報を元にして変換後の音高を当該音色に合うように制御するようにしているので、音色によって音高変換の内容を変更することで、より音色に合った演奏が可能になり、また、演奏者が特に意識することなく、指示された音色の楽器に固有の発音形態に近い演奏出力が得られる。
図1は、この発明の一実施例による演奏補助システムのハードウェア構成を示すブロック図である。 図2は、この発明の一実施例による演奏補助装置1の機能を表すブロック図である。 図3は、この発明の第1の実施例による演奏補助処理を説明するためのフローチャート、概念図、及びテーブルである。 図4は、この発明の第2の実施例による演奏補助処理を説明するためのフローチャート及びテーブルである。 図5は、この発明の第1の変形例を表す概念図及び機能ブロック図である。 図6は、この発明の第2の変形例を表す概念図及び機能ブロック図である。 図7は、この発明の第3の変形例を表す概念図及び機能ブロック図である。 図8は、この発明の一実施例による入力音変換システムのハードウエア構成ブロック図である。 図9は、この発明の一実施例による入力音変換システムの第1の音変換機能を極く概略的に説明するモジュール関連図である。 図10は、この発明の一実施例によるノート変換テーブルの一例である。 図11は、この発明の一実施例による音高変換処理〔“キーオン処理”〕の流れの一部を表わす図である。 図12は、この発明の一実施例による音高変換処理〔“キーオン処理”〕の流れの他部を表わす図である。 図13は、この発明の一実施例による入力音変換システムの第2及び第3の音変換機能を極く概略的に説明するモジュール関連図である。 図14は、ノート変換時に使用される音色別変換情報の一例である。 図15は、ノート変換時に使用されるノート変換テーブルの一例である。 図16は、ノート変換時に使用されるノート変換テーブルの他の例である。 図17は、この発明の一実施例による別の音高変換処理〔“キーオン処理(2)”〕の流れの一部を表わす図である。 図18は、この発明の一実施例による別の音高変換処理〔“キーオン処理(2)”〕の流れの他部を表わす図である。
符号の説明
1;51,61,71 演奏補助装置、
21 演奏信号入力部、
22 コード進行供給部、
23 ノート変換部、
24 自動伴奏/付加音発生部、
SQ コード情報CHを出力するシーケンサモジュール、
NC 入力音情報(キーオンノート番号)NTiを出力音情報(出力ノート番号)NToに変換するノート変換モジュール。

Claims (26)

  1. 修正対象となる演奏情報を入力する入力手段と、
    前記入力手段より入力される演奏情報の少なくともコード進行を指定する指定手段と、
    前記指定されるコード進行に基づき、前記演奏情報をその音域により変換特性を異ならせて音高変換する変換手段と
    を有する演奏補助装置。
  2. 前記変換手段は、音域により変換アルゴリズムが異なる請求項1に記載の演奏補助装置。
  3. 修正対象となる演奏情報を入力する入力手段と、
    前記入力手段より入力される演奏情報の少なくともコード進行を指定する指定手段と、
    前記指定されるコード進行に基づき、前記演奏情報を音高変換する変換手段と、
    前記変換手段による音高変換によって、前記演奏情報に含まれる同時又はほぼ同時に入力される複数音の音高が同一になる場合に、該複数音の音高のうちのいずれかを他の音高に再変換する再変換手段と
    を有する演奏補助装置。
  4. 修正対象となる演奏情報を入力する入力手段と、
    前記入力手段より入力される演奏情報の少なくともコード進行を指定する指定手段と、
    前記指定されるコード進行に基づき、前記演奏情報を、該演奏情報に含まれる同時又はほぼ同時に入力される音数と、該同時又はほぼ同時に入力される音の最低音から最高音の幅と、該最高音の前記指定されるコード進行におけるルートからの度数とに応じて音高変換する変換手段と
    を有する演奏補助装置。
  5. さらに、前記入力される演奏情報の音域を音高変換を行う音域と音高変換を行わない領域とのいずれかに指定する指定手段を有し、
    前記変換手段は、前記音高変換を行う音域では音高変換を行い、前記音高変換を行わない音域では音高変換を行わない
    請求項1〜4のいずれか1項に記載の演奏補助装置。
  6. さらに、前記変換手段により変換された演奏情報に基づき、該演奏情報に付加音を付加する付加手段とを有する請求項1〜5のいずれか1項に記載の演奏補助装置。
  7. 指定されるコード進行に基づき、演奏情報を音高変換するコンピュータにおける演奏補助処理であって、
    修正対象となる演奏情報を入力する入力手順と、
    前記入力手順より入力される演奏情報の少なくともコード進行を指定する指定手順と、
    前記指定されるコード進行に基づき、前記演奏情報をその音域により変換特性を異ならせて音高変換する変換手順と
    を有する演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
  8. 前記変換手順は、音域により変換アルゴリズムが異なる請求項7に記載の演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
  9. 指定されるコード進行に基づき、演奏情報を音高変換するコンピュータにおける演奏補助処理であって、
    修正対象となる演奏情報を入力する入力手順と、
    前記入力手順より入力される演奏情報の少なくともコード進行を指定する指定手順と、
    前記指定されるコード進行に基づき、前記演奏情報を音高変換する変換手順と、
    前記変換手順による音高変換によって、前記演奏情報に含まれる同時又はほぼ同時に入力される複数音の音高が同一になる場合に、該複数音の音高のうちのいずれかを他の音高に再変換する再変換手順と
    を有する演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
  10. 指定されるコード進行に基づき、演奏情報を音高変換するコンピュータにおける演奏補助処理であって、
    修正対象となる演奏情報を入力する入力手順と、
    前記入力手順より入力される演奏情報の少なくともコード進行を指定する指定手順と、
    前記指定されるコード進行に基づき、前記演奏情報を、該演奏情報に含まれる同時又はほぼ同時に入力される音数と、該同時又はほぼ同時に入力される音の最低音から最高音の幅と、該最高音の前記指定されるコード進行におけるルートからの度数とに応じて音高変換する変換手順と
    を有する演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
  11. さらに、前記入力される演奏情報の音域を音高変換を行う音域と音高変換を行わない領域とのいずれかに指定する指定手順を有し、
    前記変換手順は、前記音高変換を行う音域では音高変換を行い、前記音高変換を行わない音域では音高変換を行わない
    請求項7〜10のいずれか1項に記載の演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
  12. さらに、前記変換手順により変換された演奏情報に基づき、該演奏情報に付加音を付加する付加手順とを有する請求項7〜11のいずれか1項に記載の演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
  13. 楽音情報入力手段からの入力音情報を取得する入力音情報取得手段と、
    コード情報供給手段からコード情報を取得するコード情報取得手段と、
    各コードタイプに対応して、同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブルと、
    この音高変換テーブルを用いて、上記入力音情報の音高を、上記コード情報のコードタイプに合う音高に変換する音高変換手段と、
    この音高変換手段により変換される音高が現在発音中の音の音高と重複しないように制御する音高制御手段と
    を具備することを特徴とする入力音変換装置。
  14. 楽音情報入力手段からの入力音情報を取得する入力音情報取得手段と、
    コード情報供給手段からコード情報を取得するコード情報取得手段と、
    上記入力音情報の音高を、上記コード情報に合う音高に変換する音高変換手段と、
    変換された音高に基づく音情報を出力候補にすると共に、現在発音中の音情報があり且つ発音中の音の音高と上記出力候補の音情報の音高が重複するときには、上記入力音情報から奏法を検出し、検出された奏法に応じて、上記出力候補の音情報を発音しないようにする制御、及び、上記出力候補の音情報の音高に代えて、上記コード情報に合う他の音高を決定し、決定された音高の音情報を発音する制御の何れかを行う制御手段と
    を具備することを特徴とする入力音変換装置。
  15. 楽音情報入力手段からの入力音情報を取得する入力音情報取得手段と、
    コード情報供給手段からコード情報を取得するコード情報取得手段と、
    上記入力音情報の音高を、上記コード情報に合う音高に変換する音高変換手段と、
    現在発音中の音があるときに、現在変換中の入力音情報とこの直前の入力音情報との音高の高低関係に応じて、上記音高変換手段で変換される音高を該発音中の音の音高と重複しないように制御する制御手段と
    を具備することを特徴とする入力音変換装置。
  16. 各コードタイプに対応して、同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブルを具備する楽音情報処理装置に対して、
    楽音情報入力手段からの入力音情報を取得するステップと、
    コード情報供給手段からコード情報を取得するステップと、
    音高変換テーブルを用いて、上記入力音情報の音高を、上記コード情報のコードタイプに合う音高に変換する音高変換ステップと、
    この音高変換ステップで変換される音高が現在発音中の音の音高と重複しないように制御するステップと
    から成る手順を実行させる入力音変換プログラム。
  17. 楽音情報入力手段からの入力音情報を取得するステップと、
    コード情報供給手段からコード情報を取得するステップと、
    上記入力音情報の音高を、上記コード情報に合う音高に変換するステップと、
    変換された音高に基づく音情報を出力候補にすると共に、現在発音中の音情報があり且つ発音中の音の音高と上記出力候補の音情報の音高が重複するときには、上記入力音情報から奏法を検出し、検出された奏法に応じて、上記出力候補の音情報を発音しないようにする制御、及び、上記出力候補の音情報の音高に代えて、上記コード情報に合う他の音高を決定し、決定された音高の音情報を発音する制御の何れかを行うステップと
    から成る手順を楽音情報処理装置に実行させる入力音変換プログラム。
  18. 楽音情報入力手段からの入力音情報を取得するステップと、
    コード情報供給手段からコード情報を取得するステップと、
    上記入力音情報の音高を、上記コード情報に合う音高に変換する音高変換ステップと、
    現在発音中の音があるときに、現在変換中の入力音情報とこの直前の入力音情報との音高の高低関係に応じて、上記音高変換ステップで変換される音高を該発音中の音の音高と重複しないように制御するステップと
    から成る手順を情報処理装置に実行させる入力音変換プログラム。
  19. 楽音情報入力手段からの入力音情報の入力状態を判別する判別手段と、
    コード情報供給手段からコード情報を取得するコード取得手段と、
    上記入力音情報の音高を上記コード情報に合った音高に変換する音高変換手段であって、変換後の音高が、上記判別手段で判別された該入力音情報の入力状態に応じて、当該コード情報に対応する第1音群及び第2音群の何れかの音高になるように制御し、第1音群は所定の基本楽音の条件に合致する楽音のみから成り、第2音群は上記所定の基本楽音の条件に合致しない楽音を含むものと
    を具備することを特徴とする入力音変換装置。
  20. 楽音情報入力手段からの入力音情報の入力状態を判別する判別手段と、
    コード情報供給手段からコードタイプを表わすコード情報を取得するコード取得手段と、
    各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録され、入力音情報の音高を、音名特定情報が示す第1音群の音名に基づく音高に変換するための第1テーブルであって、第1音群は所定の基本楽音の条件に合致する楽音のみから成るもの、及び、入力音情報の音高を、音名特定情報が示す第2音群の音名に基づく音高に変換するための第2テーブルであって、第2音群は上記所定の基本楽音の条件に合致しない楽音を含むものから成る音高変換テーブルと、
    上記判別手段で判別された入力音情報の入力状態に応じて、当該入力音情報に対して第1及び第2テーブルの何れを使用するかを決定するテーブル決定手段と
    を具備することを特徴とする入力音変換装置。
  21. 楽音情報入力手段からの入力音情報の入力状態を判別する判別ステップと、
    コード情報供給手段からコード情報を取得するコード取得ステップと、
    上記入力音情報の音高を上記コード情報に合った音高に変換する音高変換ステップであって、変換後の音高が、上記判別ステップで判別された該入力音情報の入力状態に応じて、当該コード情報に対応する第1音群及び第2音群の何れかの音高になるように制御し、第1音群は所定の基本楽音の条件に合致する楽音のみから成り、第2音群は上記所定の基本楽音の条件に合致しない楽音を含むものと
    から成る手順を楽音情報処理装置に実行させる入力音変換プログラム。
  22. 各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録され、入力音情報の音高を、音名特定情報が示す第1音群の音名に基づく音高に変換するための第1テーブルであって、第1音群は所定の基本楽音の条件に合致する楽音のみから成るもの、及び、入力音情報の音高を、音名特定情報が示す第2音群の音名に基づく音高に変換するための第2テーブルであって、第2音群は上記所定の基本楽音の条件に合致しない楽音を含むものから成る音高変換テーブルを具備する楽音情報処理装置に対して、
    楽音情報入力手段からの入力音情報の入力状態を判別する判別ステップと、
    コード情報供給手段からコードタイプを表わすコード情報を取得するコード取得ステップと、
    上記判別ステップで判別された入力音情報の入力状態に応じて、当該入力音情報に対して第1及び第2テーブルの何れを使用するかを決定するテーブル決定ステップと
    から成る手順を実行させる入力音変換プログラム。
  23. 楽音情報入力手段から入力音情報を取得する入力音取得手段と、
    コード情報供給手段からコードタイプを表わすコード情報を取得するコード取得手段と、
    音色情報供給手段から音色情報を取得する音色情報取得手段と、
    各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録された複数の音高変換テーブルと、
    上記音色情報に応じて選択された音高変換テーブルを用いて、上記入力音情報の音高を上記コード情報に合う音高に変換する音高変換制御手段と
    を具備することを特徴とする入力音変換装置。
  24. 楽音情報入力手段から入力音情報を取得する入力音取得手段と、
    コード情報供給手段からコード情報を取得するコード取得手段と、
    音色情報供給手段から音色情報を取得する音色情報取得手段と、
    各音色に対応して音高変換条件付け情報を記憶する音色条件記憶手段と、
    上記音色情報で指示される音色に対応する音高変換条件付け情報に基づいて、上記入力音情報の音高を上記コード情報に合う音高に変換する音高変換手段と
    を具備することを特徴とする入力音変換装置。
  25. 各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録された複数の音高変換テーブルを具備する楽音情報処理装置に対して、
    楽音情報入力手段から入力音情報を取得するステップと、
    コード情報供給手段からコードタイプを表わすコード情報を取得するステップと、
    音色情報供給手段から音色情報を取得するステップと、
    上記音色情報に応じて選択された音高変換テーブルを用いて、上記入力音情報の音高を上記コード情報に合う音高に変換するステップと
    から成る手順を実行させる入力音変換プログラム。
  26. 各音色に対応して音高変換条件付け情報を記憶する音色条件記憶手段を具備する楽音情報処理装置に対して、
    楽音情報入力手段から入力音情報を取得するステップと、
    コード情報供給手段からコード情報を取得するステップと、
    音色情報供給手段から音色情報を取得するステップと、
    上記音色情報で指示される音色に対応する音高変換条件付け情報に基づいて、上記入力音情報の音高を上記コード情報に合う音高に変換するステップと
    から成る手順を実行させる入力音変換プログラム。
JP2003312111A 2002-09-04 2003-09-04 演奏補助装置、入力音変換装置及びそれらのプログラム Expired - Fee Related JP3906997B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003312111A JP3906997B2 (ja) 2002-09-04 2003-09-04 演奏補助装置、入力音変換装置及びそれらのプログラム

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2002258917 2002-09-04
JP2002354134 2002-12-05
JP2002354135 2002-12-05
JP2002361884 2002-12-13
JP2003312111A JP3906997B2 (ja) 2002-09-04 2003-09-04 演奏補助装置、入力音変換装置及びそれらのプログラム

Publications (2)

Publication Number Publication Date
JP2004206073A JP2004206073A (ja) 2004-07-22
JP3906997B2 true JP3906997B2 (ja) 2007-04-18

Family

ID=32831150

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003312111A Expired - Fee Related JP3906997B2 (ja) 2002-09-04 2003-09-04 演奏補助装置、入力音変換装置及びそれらのプログラム

Country Status (1)

Country Link
JP (1) JP3906997B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4556852B2 (ja) * 2005-11-24 2010-10-06 ヤマハ株式会社 電子楽器および電子楽器に適用されるコンピュータプログラム
JP4572839B2 (ja) * 2006-02-08 2010-11-04 ヤマハ株式会社 演奏補助装置及びプログラム
JP5162963B2 (ja) * 2007-05-24 2013-03-13 ヤマハ株式会社 即興演奏支援機能付き電子鍵盤楽器及び即興演奏支援プログラム
JP5104415B2 (ja) * 2008-03-07 2012-12-19 ヤマハ株式会社 自動演奏装置及びプログラム
JP5104414B2 (ja) * 2008-03-07 2012-12-19 ヤマハ株式会社 自動演奏装置及びプログラム
JP5574474B2 (ja) * 2008-09-09 2014-08-20 株式会社河合楽器製作所 アドリブ演奏機能を有する電子楽器およびアドリブ演奏機能用プログラム
JP5691132B2 (ja) * 2009-03-27 2015-04-01 ヤマハ株式会社 演奏補助装置
JP5750234B2 (ja) * 2010-04-20 2015-07-15 株式会社タイトー 音出力装置、音出力プログラム
WO2011136414A1 (ko) * 2010-04-30 2011-11-03 Yoo Soek Jong 화성학 연주조건 입력기 및 이를 채택한 화성학 연주 악기
JP5969421B2 (ja) * 2013-03-28 2016-08-17 株式会社エクシング 楽器音出力装置及び楽器音出力プログラム
CN108804665B (zh) * 2018-06-08 2022-09-27 上海掌门科技有限公司 用于推送信息、接收信息的方法和设备
JP7293653B2 (ja) * 2018-12-28 2023-06-20 ヤマハ株式会社 演奏補正方法、演奏補正装置およびプログラム

Also Published As

Publication number Publication date
JP2004206073A (ja) 2004-07-22

Similar Documents

Publication Publication Date Title
JP5162963B2 (ja) 即興演奏支援機能付き電子鍵盤楽器及び即興演奏支援プログラム
US8314320B2 (en) Automatic accompanying apparatus and computer readable storing medium
JP3906997B2 (ja) 演奏補助装置、入力音変換装置及びそれらのプログラム
US6294720B1 (en) Apparatus and method for creating melody and rhythm by extracting characteristic features from given motif
US6100462A (en) Apparatus and method for generating melody
JP4274272B2 (ja) アルペジオ演奏装置
JP3915807B2 (ja) 奏法自動判定装置及びプログラム
JP4614307B2 (ja) 演奏データ処理装置及びプログラム
JP4670686B2 (ja) コード表示装置及びプログラム
JP3724347B2 (ja) 自動作曲装置及び方法並びに記憶媒体
JP5125374B2 (ja) 電子音楽装置及びプログラム
JPS6256517B2 (ja)
JP4244504B2 (ja) 演奏制御装置
JP3704901B2 (ja) 自動演奏装置、自動演奏方法及び記録媒体
JP4003625B2 (ja) 演奏制御装置および演奏制御用プログラム
JP5104414B2 (ja) 自動演奏装置及びプログラム
JP4175364B2 (ja) アルペジオ発音装置およびアルペジオ発音を制御するためのプログラムを記録したコンピュータ読み取り可能な媒体
JP3800947B2 (ja) 演奏データ処理装置及び方法並びに記憶媒体
JPS6213677B2 (ja)
JP4900233B2 (ja) 自動演奏装置
JP4182889B2 (ja) コード構成音高決定装置及びプログラム
JP2024089976A (ja) 電子機器、電子楽器、アドリブ演奏方法及びプログラム
JP2626587B2 (ja) 自動演奏装置
JP2000172253A (ja) 電子楽器
JP5104293B2 (ja) 自動演奏装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061201

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: 20070109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070110

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3906997

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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: 20110126

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120126

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120126

Year of fee payment: 5

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20120126

Year of fee payment: 5

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: 20130126

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20140126

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees