JP4466576B2 - 電子管楽器及びそのプログラム - Google Patents
電子管楽器及びそのプログラム Download PDFInfo
- Publication number
- JP4466576B2 JP4466576B2 JP2006020704A JP2006020704A JP4466576B2 JP 4466576 B2 JP4466576 B2 JP 4466576B2 JP 2006020704 A JP2006020704 A JP 2006020704A JP 2006020704 A JP2006020704 A JP 2006020704A JP 4466576 B2 JP4466576 B2 JP 4466576B2
- Authority
- JP
- Japan
- Prior art keywords
- binary data
- state
- pitch
- data
- operator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
ここで、自然管楽器に特有の奏法の1つにオクターブ切り替えがある。オクターブ切り替えは、フルートのようなオクターブを切替えるための演奏用キーを備えない楽器において、「アンブッシャ」と呼ばれる呼気を吹入する下唇の動きを微妙に変えることによって、運指を固定したまま吹奏音のオクターブ等をコントロールする奏法を意味し、「オーバーブロー」や「リップスラー」などともいう。
特許文献1には、オクターブ切り替えを精緻に検出し得る電子管楽器の開示がある。この文献に開示された電子管楽器は、唄口内に離散的に設置した複数の呼気圧検出センサを通じて呼気の吹入の向きを検出する。そして、検出した向きに応じて現在のオクターブを特定した後、そのオクターブに従ったピッチの楽音信号の出力を音源へ指示するようになっている。
しかしながら、電子管楽器の演奏用キーの状態の組み合わせのパターンは極めて多く、これにアンブッシャを検出する呼気圧センサの状態を加えるとそのパターンの数は更に膨大なものになる。よって、それらの組み合わせの各々と対応するピッチをテーブルに収録するとデータ量もそれだけ大きくなってしまい、ピッチのサーチに要する時間を高速化しにくくなるという問題があった。
本発明は、このような背景の下に案出されたものであり、電子管楽器の操作に応じて音源から出力させる音のピッチを高速に特定し得るような仕組みを提供することを目的とする。
本願発明の第1実施形態について説明する。
本実施形態は、以下の2つの特徴を有する。
1つ目の特徴は、電子フルートの各操作子のオンとオフの状態の組み合わせをそれらの操作子の各々に1ビットずつを個別に割り当てたビット列からなるバイナリデータとして取り扱うこととした点である。
2つ目の特徴は、音源から出力させ得る音の各ピッチと、それらの各ピッチの音を出力するためにオンでなければならない操作子、オフでなければならない操作子、及びそのどちらでも構わない操作子を異なるビットパターンとして示すバイナリデータ対とを対応付けたテーブルを準備し、吹奏者により操作される各操作子の状態を個別に検出して得たバイナリデータとこのテーブルのバイナリデータの各対とを所定のアルゴリズムに従って順次照合していくことにより、音のピッチを一意に特定するようにした点である。
メンブレンスイッチ73は、図3に示すように、各々の表面に電極を有する上側電極シート73aと下側電極シート73bを、互いの表面同士がメンブレンスペーサ73cと感圧導電性ゴム73dを挟み込むように重ね合わせてなる。そして、下側電極シート73bの裏面は窪部の長手面に接着されている。
図4(a)に示すように、電子フルート1を吹奏する吹奏者は、自らの下唇をアクチエータ71の突起部74に接触させて唄口51へ息を吹入する。周知のように、感圧導電性ゴム73dは、圧縮すればするほどその圧縮方向の電気抵抗が小さくなるという性質を有している。アクチエータ71とリッププレート50の連結部位は弱い力で上方向に付勢されているので、アクチエータ71の突起部74に吹奏者の下唇が接触していなかったり或いは比較的弱い力で接触している状態では、感圧導電性ゴム73dの電気抵抗が無限大となって上側電極シート73aと下側電極シート73bの両接点間の電圧が最大になる。そして、吹奏者がピッチをオクターブアップさせるオクターブ切り替えを行う際は、図4(b)に示すように自らの下唇でアクチエータ71を強く押し下げるため、感圧導電性ゴム73dの電気抵抗が徐々に低くなって両接点間の電圧が低下する。よって、感圧導電性ゴム73dの両接点間に印加される電圧に応じて割り出される接触圧の閾値を好適に設定しておき、接触圧が閾値を跨いで遷移したか否かを参照すれば、オクターブ切り替えのタイミングを精緻に特定することができる。
キーセンサ92は、主管部20から足管部30にかけて設けられた各演奏用キー40の押下量を個別に検出し、検出した各キー毎の押下量を示す信号をA/D変換部93へ供給する。
ROM96は、運指テーブル96aと音源制御プログラム96eを記憶する。
「No.」のフィールドには、MIDIのキーコードを識別する番号が記憶される。「音名」のフィールドには、ピッチデータが記憶される。ピッチデータは、ピッチの高さを英語音名により表したデータである。
「必須運指」のフィールドには、必須運指バイナリデータを記憶する。必須運指バイナリデータは、16個の操作子の各々に1ビットずつを個別に割り当てた16桁のビット列であって、オン状態でなければならない操作子のビットを1にして残りのビットを0にしたビット列を表すデータである。
また、図に示すように、このテーブルの各レコードは、「音名」のフィールドに記憶されたピッチデータが示すピッチが高いものから順にソートされている。
図7は、運指表を示す図である。この運指表の列は、筐体の16個の操作子の各々を一意に識別すべく作成者により割り振られた16進数の符号(0乃至f)と対応する。具体的には、主管部20と足管部30に設けられた15個の演奏用キー40のうち頭管部10に最も近い演奏用キー40から最も遠いものに向かって順に「0、1、2、3、・・・e」の各符号が割り振られ、頭管部10のリッププレート50に「f」の符号が割り振られている。一方、運指表の行は、アコースティックなフルートにより鳴らすことができる音のピッチを示す各音名と対応する。
図に示す一連の処理は、図示しないシステムクロックにより発生されるクロック信号と同期して順次実行されるものである。
図において、CPU94は、呼気圧データ記憶領域に記憶されている呼気圧データが予め設定された呼気圧閾値を上回ったか否か判断する(S100)
ステップ100にて、呼気圧データが呼気圧閾値を上回ったと判断したCPU94は、押下量データ記憶領域に記憶された押下量データと接触圧データ記憶領域に記憶された接触圧データとに応じて特定されるピッチデータを運指テーブル96aから読み出す(S110)。このステップ110は本実施形態に特徴的なものであり、その詳細は図9を参照して後述する。
続いて、CPU94は、呼気圧データ記憶領域に記憶されている呼気圧データが呼気圧閾値を下回ったか否か判断する(S140)。
ステップ140にて呼気圧データが呼気圧閾値を下回っていないと判断したとき、CPU94は、ノートオフメッセージの供給を行わず楽音信号を出力させたまま次のステップへ進む。
ステップ160にて押下量データ記憶領域の記憶内容が書き換えられていると判断したときは、ステップ110に戻って変更後の運指と対応する別のピッチデータを読み出し、続くステップ130でそのピッチデータが示すピッチでの発音を指示するノートオンメッセージを音源97へ供給する。一方、押下量データ記憶領域の記憶領域が書き換えられていないと判断したときは、そのまま次のステップへ進む。
ステップ170にて接触圧データが接触圧閾値を跨いで変化したと判断しときは、ステップ110に戻って1オクターブのピッチ差を有する別のピッチデータを読み出し、続くステップ130でそのピッチデータが示すピッチでの発音を指示するノートオンメッセージを音源97へ供給する。一方、接触圧閾値を跨いで変化していなければステップ140へ戻る。
図8のステップ100にて、呼気圧データが呼気圧閾値を上回ったと判断したCPU94は、押下量データ記憶領域に記憶された各押下量データと接触圧データ記憶領域に記憶された接触圧データとを基に現在の運指を示すバイナリデータを生成する(S111)。具体的には、以下の手順で生成を行う。まず、押下量データ記憶領域に記憶されている15個の押下量データを、演奏用キー40のオンとオフの両状態を分かつべく予め設定された押下量閾値と順次比較し、押下量データが押下量閾値を上回ると「1」のビット、下回ると「0」のビットを出力していくことによって15桁のビットを生成する。なお、各押下量データと押下量閾値の比較は、運指表における「0乃至e」の各符号の割り振りと同じ順序、つまり、頭管部10に最も近い演奏用キー40の押下量データから順に行う。続いて、接触圧データ記憶領域に記憶されている接触圧データをリッププレート50のオンとオフの両状態を分かつべく予め設定された接触圧閾値と比較し、接触圧データが接触圧閾値を上回ると「1」のビット、下回ると「0」のビットを出力し、出力したビットを上述した15桁のビットの末尾に加える。これにより、オン状態になっている操作子に割り当てたビットを1にすると共にオフ状態になっている操作子に割り当てたビットを0にした16桁のバイナリデータが生成されることになる。
CPU94は、特定したレコードの「不問運指」のフィールドに記憶された不問運指バイナリデータとステップ111で生成したバイナリデータの論理積を演算する(S113)。
CPU94は、ステップ113における論理積の演算結果とステップ112で特定したレコードの「必須運指」のフィールドに記憶された必須運指バイナリデータとが一致するか否か判断する(S114)。
ステップ114で両者が一致すると判断したとき、CPU94は、現在特定しているレコードの「音名」のフィールドに記憶されたピッチデータを音源97から出力させる音のピッチを示すピッチデータとして読み出す(S116)。
本願発明の第2実施形態について説明する。
本実施形態は、第1実施形態において1つであった運指テーブルを、リッププレート50がオンとオフのどちらの状態でも同じピッチの音が鳴る運指のバイナリデータ対を取り纏めた第1運指テーブル、リッププレート50がオンの状態のときだけあるピッチの音が鳴る運指のバイナリデータ対を取り纏めた第2運指テーブル、及びリッププレート50がオンの状態のときとオフの状態のときとで1オクターブのピッチ差を有する別の音が鳴る運指のバイナリデータ対を取り纏めた第3運指テーブルの3つに分割し、第1、第2、第3の順番でテーブルを参照して行くことにより、ピッチデータをより高速にサーチできるようにした。
更に、本実施形態は、リッププレート50のオン又はオフの状態を検出すべく接触圧データと比較する接触圧閾値を予め設定しておいた所定の閾値幅(以下、この幅を「接触圧閾値幅」と呼ぶ)の中で変化させることにより、アコースティックなフルートにより近い感度でオクターブ切り替えのタイミングを特定できるようにした。
図11は、第1乃至第3運指テーブルを示す図であり、(a)が第1運指テーブル96bを、(b)が第2運指テーブル96cを、(c)が第3運指テーブル96dのデータ内容をそれぞれ示している。図に示すように、第1乃至第3運指テーブルの編成自体は図6に示したところと同様であり、テーブルを構成する各レコードの各々が、「No.」、「音名」、「不問運指」、「必須運指」の4つのフィールドを有している。
本実施形態においては、ピッチデータ読み出し処理の内容が図9に示したところと異なる。
図12は、ピッチデータ読み出し処理の詳細を示すフローチャートである。
図8のステップ100にて、呼気圧データが呼気圧閾値を上回ったと判断したCPU94は、押下量データ記憶領域に記憶されている15個の押下量データと押下量閾値とを順次比較し、それらの比較の結果を示す15桁のビット列を生成する(S117)。具体的には、押下量データ記憶領域に記憶されている15個の押下量データを運指表における「0乃至e」の各符号の割り振りと同じ順序で順次比較し、押下量データが押下量閾値を上回ると「1」のビット、下回ると「0」のビットを出力していくことによって15桁のビット列を生成する。
CPU94は、ステップ117で生成した15桁のビット列の末尾にステップ118で生成したビットを連結させることにより、現在の運指を表す16桁のバイナリデータを生成する(S119)。
一方、ステップ120においてサーチに失敗したとき、CPU94は、ステップ119で生成したバイナリデータを基に第2運指テーブル96cをサーチする(S121)。このステップのサーチも図9のステップ111乃至ステップ114に示したところと同様の手順で実行される。上述したように、第2運指テーブル96cはM個のレコードを有しているので、ステップ112乃至ステップ114のループをM回繰り返しても一致する必須運指バイナリデータが見つからなかったときはサーチ失敗となる。
図13において、CPU94は、第3運指テーブル96dの先頭のレコードを特定する(S1121)。
CPU94は、ステップ1122における論理積の演算結果とステップ1121で特定したレコードの「必須運指」のフィールドに記憶された必須運指バイナリデータとが一致するか否か判断する(S1123)。
続いて、CPU94は、接触圧閾値幅の上限値と下限値の間のスケールにステップ1125で得たカウント値を照らし合わせた相対値を線形補間により求める(S1126)。具体的には、接触圧閾値幅の上限値と下限値の間の差分をM等分した値とステップ1125で求めたカウント値の積を求め、その求めた積と下限値の和を相対値とする。よって、現在特定しているレコードが先頭のレコードに近いほど、言い換えればピッチが高いほど接触圧閾値の上限値に近い相対値が求まり、末端のレコードに近いほど下限値に近い相対値が求まることになる。
ステップ1127の比較を行った結果、接触圧データの方が接触圧閾値の相対値よりも大きかったとき、CPU94は、現在特定しているレコードの「音名」のフィールドに記憶されている両ピッチデータのうち高いオクターブの方のピッチデータを選択する(S1128)。一方、接触圧データの方が接触圧閾値の相対値よりも小さかったとき、CPU94は、現在特定しているレコードの「音名」のフィールドに記憶されている両ピッチデータのうち低いオクターブの方のピッチデータを選択する(S1129)。
図12において、第3運指テーブル96dのサーチが失敗すると、ステップ117に戻り、直前のクロックタイミングで書き換えられた押下量データ記憶領域及び接触圧データ記憶領域の記憶内容を基に以降の処理が再び繰り返される。
本願発明は、種々の変形実施が可能である。
上記実施形態において、不問運指バイナリデータは、オンとオフの何れの状態でも構わない操作子のビットを0にして残りのビットを1にしており、また、必須運指バイナリデータは、オンでなければならない操作子のビットを1にして残りのビットを0にしていたが、不問運指バイナリデータのビットを反転させたものを運指テーブルに収録してもよい。この変形例の場合、吹奏者の操作に応じて生成される現在の運指のバイナリデータの否定と不問運指バイナリデータの論理積が演算され、その演算結果と必須運指バイナリデータとが照合されることになる。
上記実施形態においては、吹奏者の下唇のリッププレートへの接触圧を基にオクターブアップの有無を検出していたが、唄口と唇の距離などの他の物理量を基にオクターブアップの有無の検出を行ってもよい。
第2実施形態では、第1乃至第3の3つの運指テーブルを準備し、それらを第1運指テーブルから順次参照していくことによって音のピッチを特定していた。これに対し、第2運指テーブルと第3運指テーブルを1つに纏めてもよい。つまり、リッププレートの状態が鳴る音に影響しない運指のバイナリデータ対を取り纏めた運指テーブルと、リッププレートの状態が鳴る音に影響する運指のバイナリデータ対を取り纏めた運指テーブルの2つに分割するのである。この変形例であっても、前者の運指テーブルから参照するようにするようにすれば、ピッチのサーチを高速化できる。
Claims (3)
- 各々がオンとオフの両状態の間を切り替わる複数の操作子と、
音のピッチを表すピッチデータと、前記各操作子のオン又はオフの状態の組み合わせをそれらの操作子に個別に割り当てた各ビットの配列により表すバイナリデータのセットであって、オン状態でなければならない操作子及びオフ状態でなければならない操作子に割り当てたビットを1にすると共にオン状態でもオフ状態でも構わない操作子に割り当てたビットを0にした第1のバイナリデータとオン状態でなければならない操作子に割り当てたビットを1にすると共にオフ状態でなければならない操作子及びオン状態でもオフ状態でも構わない操作子に割り当てたビットを0にした第2のバイナリデータとからなるセットとを対応付けて記憶した記憶手段と、
前記操作子の各々の状態を個別に検出し、オン状態になっている操作子に割り当てたビットを1にすると共にオフ状態となっている操作個に割り当てたビットを0にしたバイナリデータを生成する検出手段と、
前記検出手段によりバイナリデータが生成されると、前記記憶手段にてピッチデータと対応付けられたバイナリデータの各セットを順次特定する特定手段と、
前記特定手段によってバイナリデータのセットが特定されるたびに、特定されたセットの一方を成す第1のバイナリデータと前記生成されたバイナリデータの論理積を演算して得た新たなバイナリデータがそのセットの他方を成す第2のバイナリデータと一致するか否か判断する判断手段と、
前記新たなバイナリデータが第2のバイナリデータと一致すると前記判断手段が判断したとき、その第2のバイナリデータを含むセットと対応付けて前記記憶手段に記憶されたピッチデータが表すピッチの音を音源から出力させる音源制御手段と
を備えた電子管楽器。 - 請求項1に記載の電子管楽器において、
前記複数の操作子は、
吹奏者の下唇による接触の強さに応じてオンとオフの両状態の間を切り替わる唇操作子と、
各々が吹奏者の手指による押下の有無に応じてオンとオフの両状態の間を切り替わる複数の手指操作子と
を含む電子管楽器。 - 各々がオンとオフの両状態の間を切り替わる複数の操作子と、音のピッチを表すピッチデータと、前記各操作子のオン又はオフの状態の組み合わせをそれらの操作子に個別に割り当てた各ビットの配列により表すバイナリデータのセットであって、オン状態でなければならない操作子及びオフ状態でなければならない操作子に割り当てたビットを1にすると共にオン状態でもオフ状態でも構わない操作子に割り当てたビットを0にした第1のバイナリデータとオン状態でなければならない操作子に割り当てたビットを1にすると共にオフ状態でなければならない操作子及びオン状態でもオフ状態でも構わない操作子に割り当てたビットを0にした第2のバイナリデータとからなるセットとを対応付けて記憶した記憶手段と、前記操作子の各々の状態を個別に検出し、オン状態になっている操作子に割り当てたビットを1にすると共にオフ状態となっている操作個に割り当てたビットを0にしたバイナリデータを生成する検出手段とを備えた電子管楽器に、
前記検出手段によりバイナリデータが生成されると、前記記憶手段にてピッチデータと対応付けられたバイナリデータの各セットを順次特定する特定機能と、
前記特定機能によってバイナリデータのセットが特定されるたびに、特定されたセットの一方を成す第1のバイナリデータと前記生成されたバイナリデータの論理積を演算して得た新たなバイナリデータがそのセットの他方を成す第2のバイナリデータと一致するか否か判断する判断機能と、
前記新たなバイナリデータが第2のバイナリデータと一致すると前記判断機能が判断したとき、その第2のバイナリデータを含むセットと対応付けて前記記憶手段に記憶されたピッチデータが表すピッチの音を音源から出力させる音源制御機能と
を実現させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006020704A JP4466576B2 (ja) | 2006-01-30 | 2006-01-30 | 電子管楽器及びそのプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006020704A JP4466576B2 (ja) | 2006-01-30 | 2006-01-30 | 電子管楽器及びそのプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010003105A Division JP4894931B2 (ja) | 2010-01-08 | 2010-01-08 | 電子管楽器及びそのプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007199604A JP2007199604A (ja) | 2007-08-09 |
JP4466576B2 true JP4466576B2 (ja) | 2010-05-26 |
Family
ID=38454259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006020704A Expired - Fee Related JP4466576B2 (ja) | 2006-01-30 | 2006-01-30 | 電子管楽器及びそのプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4466576B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6202565B2 (ja) * | 2013-10-25 | 2017-09-27 | 宗一郎 井上 | 電子管楽器システム |
-
2006
- 2006-01-30 JP JP2006020704A patent/JP4466576B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2007199604A (ja) | 2007-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4462180B2 (ja) | 電子管楽器及びそのプログラム | |
US6765142B2 (en) | Electronic keyboard musical instrument | |
CN101329862A (zh) | 电子管乐器 | |
JP4320782B2 (ja) | 演奏制御装置、およびプログラム | |
US20210074252A1 (en) | Electronic wind instrument and control method thereof | |
JP4419966B2 (ja) | 電子管楽器及びそのプログラム | |
JP4466576B2 (ja) | 電子管楽器及びそのプログラム | |
JP4894931B2 (ja) | 電子管楽器及びそのプログラム | |
JP4361327B2 (ja) | 電子楽器の演奏評価装置 | |
US5925844A (en) | Piano with built-in electronic musical instrument | |
JPH0643867A (ja) | 電子楽器 | |
CN109559724B (zh) | 音阶转换装置、电子管乐器、音阶转换方法和存储介质 | |
JP4471697B2 (ja) | 電子楽器 | |
JP4305319B2 (ja) | 演奏情報生成装置、演奏情報記録装置及び鍵盤楽器 | |
JP4354546B2 (ja) | 楽器演奏動作検出と楽器演奏動作指導のための装置および方法、並びにそのプログラムを記録した記録媒体 | |
CN221175769U (zh) | 按标准钢琴琴键进行排布的电吹管 | |
JPS6237792B2 (ja) | ||
JP2011123239A (ja) | 演奏教習装置及びブログラム | |
JP6710432B2 (ja) | 楽音制御装置、電子楽器、楽音制御方法およびプログラム | |
JP4305320B2 (ja) | 演奏情報生成装置、演奏情報記録装置及び鍵盤楽器 | |
JP3690276B2 (ja) | 電子弦楽器 | |
JPH07104754A (ja) | 電子楽器組み込みピアノ | |
JP4274068B2 (ja) | 電子打楽器およびプログラム | |
JP2009139690A (ja) | 電子鍵盤楽器 | |
JP4675731B2 (ja) | 楽音発生装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081120 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091001 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091117 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100108 |
|
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: 20100202 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100215 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130305 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140305 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |