JP6758593B2 - 電子管楽器、楽音発生方法およびプログラム - Google Patents

電子管楽器、楽音発生方法およびプログラム Download PDF

Info

Publication number
JP6758593B2
JP6758593B2 JP2015187190A JP2015187190A JP6758593B2 JP 6758593 B2 JP6758593 B2 JP 6758593B2 JP 2015187190 A JP2015187190 A JP 2015187190A JP 2015187190 A JP2015187190 A JP 2015187190A JP 6758593 B2 JP6758593 B2 JP 6758593B2
Authority
JP
Japan
Prior art keywords
data
instruction
time
performance form
sensor
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.)
Active
Application number
JP2015187190A
Other languages
English (en)
Other versions
JP2017062325A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2015187190A priority Critical patent/JP6758593B2/ja
Publication of JP2017062325A publication Critical patent/JP2017062325A/ja
Application granted granted Critical
Publication of JP6758593B2 publication Critical patent/JP6758593B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

本発明は、循環呼吸奏法と同等の継続音を発生可能な電子管楽器、楽音発生方法およびプログラムに関する。
一般に電子管楽器では、アコースティック管楽器と同様のキー位置に音高指定用のスイッチ(音高キー)を設けておき、そのスイッチ操作によって楽音の音高を指定すると共に、マウスピース内に息圧を検出する圧力センサを設け、この圧力センサにより検出される息圧に応じて楽音の音量を決定するように構成されている。
この種の楽器として、例えば特許文献1には、マウスピースに接触するユーザの上唇および下唇の位置を検出し、検出した上唇位置および下唇位置に応じて生成されるパラメータに従って楽音形成することで例えばユーザの頬や咽の動きに従って発生楽音の音色を制御する技術が開示されている。
特開2000−122641号公報
ところで、上述した特許文献1に開示の技術では、マウスピースに接触するユーザの上唇および下唇の位置を検出して得たパラメータに基づきユーザの頬や咽の動きに応じた音色制御を実現するものであるが、呼吸する間も絶えず口から息を吐き出して息継ぎの無音時間を無くす循環呼吸奏法と同等の継続音を発生することが出来ないという問題がある。
本発明は、このような事情に鑑みてなされたもので、簡単に循環呼吸奏法と同等の継続音を発生することが出来る電子管楽器、楽音発生方法およびプログラムを提供することを目的としている。
本発明の電子管楽器は、
マウスピースに対して行われる演奏形態を検知し、演奏形態データを出力する演奏形態センサと、
前記演奏形態センサから出力された前記演奏形態データに基づいて楽音を制御する制御部と、
ユーザの指示に応じて、前記指示があった時点の前記演奏形態データを保持データとして保持する保持部と、
前記指示が解除される解除時点以降に、解除後の前記演奏形態データと前記保持データとから補間データを生成する補間部と、
を備え、
前記保持部は、前記指示が解除された時点以降の前記補間データを新しい保持データとして保持し、
前記制御部は、前記指示があった場合は、前記保持データに基づいて、前記指示があった時点以後の楽音を制御するとともに、前記指示の解除がなされた場合は、前記補間データに基づいて指示が解除された時点以後の楽音を制御し、前記保持部に保持された前記新しい保持データと前記解除時点以降に前記演奏形態センサから出力される前記演奏形態データとの差分が予め定められた値より小さくなった場合に、前記補間データに基づいた楽音の制御を終了する、
ことを特徴とする。
本発明の楽音方法は、
マウスピースに対して行われる演奏形態を検知し、演奏形態データを出力する演奏形態センサを備え、前記演奏形態センサから出力された前記演奏形態データに基づいて楽音を制御する電子管楽器で実行され、
ユーザの指示に応じて、前記指示があった時点の前記演奏形態データを保持データとして保持し、
前記指示があった場合は、前記保持データに基づいて、前記指示があった時点以後の楽音を制御し、
前記指示の解除される解除時点以降に、解除後の前記演奏形態データと前記保持データとから補間データを生成し、
前記指示が解除された時点以降の前記補間データを新しい保持データとして保持し、
前記指示の解除がなされた場合は、前記補間データに基づいて前記指示が解除された時点以後の楽音を制御し、前記保持部に保持された前記新しい保持データと前記解除時点以降に前記演奏形態センサから出力される前記演奏形態データとの差分が予め定められた値より小さくなった場合に、前記補間データに基づいた楽音の制御を終了する、
ことを特徴とする。
本発明のプログラムは、
マウスピースに対して行われる演奏形態を検知し、演奏形態データを出力する演奏形態センサを備え、前記演奏形態センサから出力された前記演奏形態データに基づいて楽音を制御する電子管楽器に搭載されるコンピュータに、
ユーザの指示に応じて、前記指示があった時点の前記演奏形態データを保持データとして保持するステップと、
前記指示があった場合は、前記保持データに基づいて、前記指示があった時点以後の楽音を制御するステップと、
前記指示の解除される解除時点以降に、解除後の前記演奏形態データと前記保持データとから補間データを生成するステップと、
前記指示が解除された時点以降の前記補間データを新しい保持データとして保持するステップと、
前記指示の解除がなされた場合は、前記補間データに基づいて前記指示が解除された時点以後の楽音を制御するステップと、
前記新しい保持データと、前記解除時点以降に前記演奏形態センサから出力される前記演奏形態データとの差分が予め定められた値より小さくなった場合に、前記補間データに基づいた楽音の制御を終了するステップと、
を実行させることを特徴とする。
本発明では、簡単に循環呼吸奏法と同等の継続音を発生することが出来る。
本発明の一実施形態である電子管楽器100の要部構造を示す外観図である。 マウスピース6の構造を示す断面図である。 電子管楽器100の電気的構成を示すブロック図である。 パワーオンイニシャライズ処理の動作を示すフローチャートである。 息圧検出処理の動作を示すフローチャートである。 息圧検出処理の動作を説明するための波形図である。 息圧データ処理の動作を示すフローチャートである。 唇位置データ処理の動作を示すフローチャートである。 唇位置データ処理の動作を説明するための波形図である。 リード歪データ処理の動作を示すフローチャートである。 リード歪データ処理の動作を説明するための波形図である。 メイン処理の動作を示すフローチャートである。
以下、図面を参照して本発明の実施形態について説明する。
A.構造
図1〜図2を参照して本発明の一実施形態である電子管楽器100の要部構造について説明する。図1は電子管楽器100の要部構造を示す外観図、図2はマウスピース6の構造を示す断面図である。図1において、サックス形状を為す本体1の正面には、運指操作(演奏操作)される音高キー2が設けられる。本体1の開口端3側の内部には、楽音を放音するスピーカ4が配設される。また、本体1には、電源をパワーオン・オフする電源スイッチの他、本体1の背面側に配設されるスイッチBSを含む各種操作スイッチ5を備える。息継ぎスイッチBSが意図するところについては追って述べる。
本体1の基端側には、マウスピース6が嵌着される。マウスピース6は、図2に図示するように、吹き口と対向する面側に息圧を検出する圧力センサ7を備えると共に、底面に配備されるリード8の裏面(上側)に歪みを検出する歪みゲージ9aおよび当該リード8の表面(下側)に唇位置を検出する静電センサ9bを有する。
B.構成
次に、図3を参照して電子管楽器100の電気的構成について説明する。図3は、電子管楽器100の電気的構成を示すブロック図である。図3において、息圧検出部10(息センサ)は、図2に図示した圧力センサ7を含み、当該圧力センサ7から出力される息圧信号をレベル増幅して次段のA/D変換部13に入力する。A/D変換部13に入力される息圧信号は、マウスピース6に吹き込まれる息圧を表す息圧データDpとしてサンプリングされる。なお、マウスピース6に吹きこまれる息の流量を検知することとしても良い。
リード歪検出部11は、図2に図示した歪みゲージ9aおよびブリッジ回路(不図示)から構成され、リード8の歪みに対応したリード歪信号を発生して次段のA/D変換部13に入力する。A/D変換部13に入力されるリード歪信号は、リード8に加わる反りや捩れに応じた歪み量を表すリード歪データDSとしてサンプリングされる。なお、マウスピースを咥える力(リードに対する圧力)を検知する圧力センサ(バイトセンサ)を用いても良い。
唇位置検出部12は、図2に図示した静電センサ9bを含み、当該静電センサ9bから出力される唇位置信号をレベル増幅して次段のA/D変換部13に入力する。A/D変換部13に入力される唇位置信号は、ユーザがマウスピース6を咥えた際に、リード8に接触する下唇の位置を表す唇位置データDLとしてサンプリングされる。なお、唇位置データDLが表す下唇の位置とは、リード8の先端を基準にして当該リード8に接触する下唇の位置を表現する。
A/D変換部13は、CPU14の制御の下に、上述した息圧信号、リード歪信号および唇位置信号をそれぞれ時分割にA/D変換して息圧データDp、リード歪データDSおよび唇位置データDLを発生する。なお、これら息圧データDp、リード歪データDSおよび唇位置データDLは、CPU14の制御の下に、RAM16のバッファエリアに一時記憶される。
本体1の正面に配列される音高キー2(図1参照)は、吹奏者の運指操作(押下操作)に応じた音高データを発生する。操作部5は、電源をパワーオン・オフする電源スイッチの他、息継ぎスイッチBSを含む各種操作スイッチを有し、操作されるスイッチ種に応じたスイッチイベントを発生する。操作部5が発生するスイッチイベントは、CPU14に取り込まれる。
CPU14は、息圧データDpが立ち上がった時点(後述する閾値Th1から閾値Th2を超えた時点)で、音高データおよび息圧データDpに対応したベロシティを含むノートオンイベントを発生して音源部17に送付する。CPU14は、音源部17が発音中の場合、息圧データDpに応じた音量制御と、リード歪データDSに応じた音色制御と、唇位置データDLに応じた音高制御とを指示する。CPU14は、息圧データDpが立ち下がった時点(後述する閾値Th2から閾値Th1へ下がった時点)で、音高データおよび息圧データDpに対応したベロシティを含むノートオフイベントを発生して音源部17に送付する。
また、CPU14は、息継ぎスイッチBSがオン設定されてからオフ設定されまでの間(発音持続区間)、当該息継ぎスイッチBSがオン設定された時点で発音中の楽音を持続発音させ、当該息継ぎスイッチBSがオフ設定されると、オン設定された時点で保持された息圧データDp、リード歪データDSおよび唇位置データDLを、それぞれ現在の息圧データDp、リード歪データDSおよび唇位置データDLに徐々に近づくように補間し、補間した息圧データDpに応じた音量制御、リード歪データDSに応じた音高制御および唇位置データDLに応じた音色制御を発音中の楽音に施す。これにより、ビギナーユーザでも簡単に循環呼吸奏法と同等の継続音を発生させ得る。
ROM15には、上記CPU14にロードされる各種プログラムデータが記憶される。各種プログラムとは、後述するパワーオンイニシャライズ処理、息圧検出処理、息圧データ処理、唇位置データ処理、リード歪データ処理およびメイン処理を含む。RAM16は、ワークエリアおよびバッファエリアを備える。RAM16のワークエリアは、CPU14の作業領域として用いられ、各種レジスタ・フラグが一時記憶される。RAM16のバッファエリアには、CPU14の制御の下に、A/D変換部13にてサンプリングされる息圧データDp、リード歪データDSおよび唇位置データDLが一時記憶される。
音源部17は、周知の波形メモリ読み出し方式にて構成される複数の発音チャンネル(MIDIチャンネル)を備え、CPU14から供給されるノートオン/ノートオフイベントに従って楽音波形データを発生する。音源部17では、CPU14より供給される息圧データDp、リード歪データDSおよび唇位置データDLに応じて、発生中の楽音の音量、音高および音色を制御する。サウンドシステム18は、音源部17から出力される楽音波形データをアナログ形式の楽音信号に変換し、当該楽音信号から不要ノイズを除去する等のフィルタリングを施した後、これを増幅してスピーカ4から放音させる。
C.動作
次に、図4〜図12を参照して、上述した電子管楽器100のCPU14の動作を説明する。以下では、CPU14が実行するパワーオンイニシャライズ処理、息圧検出処理、息圧データ処理、唇位置データ処理、リード歪データ処理およびメイン処理の各動作について述べる。なお、これら処理の動作説明において、ことわりが無い限り、動作の主体はCPU14である。
(1)パワーオンイニシャライズ処理の動作
図4は、パワーオンイニシャライズ処理の動作を示すフローチャートである。電源スイッチ操作でパワーオンされると、CPU14は図4に図示するステップSA1に進み、フラグNONF、フラグNOFF、フラグONF、フラグBPF、フラグLPFおよびフラグSPFをゼロリセットして初期化する。
なお、フラグNONFは、ノートオン発生の有無を示すフラグであり、ノートオン発生時に「1」がセットされ、それ以外では「0」となる。フラグNOFFは、ノートオフ発生の有無を示すフラグであり、ノートオフ発生時に「1」がセットされ、それ以外では「0」となる。フラグONFは、ノートオン中(発音中)であるか否かを示すフラグであり、ノートオン中に「1」がセットされ、それ以外では「0」となる。
フラグBPFは、息圧データDpを補間中(後述する)であるか否かを示すフラグであり、補間中に「1」がセットされ、それ以外では「0」となる。フラグLPFは、唇位置データDLを補間中(後述する)であるか否かを示すフラグであり、補間中に「1」がセットされ、それ以外では「0」となる。フラグSPFは、リード歪データDSを補間中(後述する)であるか否かを示すフラグであり、補間中に「1」がセットされ、それ以外では「0」となる。
続いて、ステップSA2では、後述する各ルーチン(息圧検出処理、息圧データ処理、唇位置データ処理、リード歪データ処理およびメイン処理)の動作周期を設定して本処理を終える。具体的には、息圧検出処理を32μs毎、息圧データ処理を10ms毎、唇位置データ処理を10ms毎、リード歪データ処理を10ms毎、メイン処理を1ms毎に各々実行させる。
(2)息圧検出処理の動作
図5は、息圧検出処理の動作を示すフローチャートである。本処理の実行タイミングになると、CPU14は、図5に図示するステップSB1に処理を進め、息継ぎスイッチBSがオン中であるか否かを判断する。息継ぎスイッチBSがオン中であると、判断結果は「YES」となり、本処理を終える。なお、息継ぎスイッチBSがオン中の場合、当該息継ぎスイッチBSがオン設定された時点の息圧データDpが初期値としてレジスタOld_Bressに保持される。
これに対し、息継ぎスイッチBSがオン中でなければ、上記ステップSB1の判断結果は「NO」になり、ステップSB2に進み、現在の息圧データDpを読み込む。次いで、ステップSB3では、フラグBPFが「1」、すなわち息圧データDpを補間中であるか否かを判断する。補間中でなければ、判断結果は「NO」になり、後述のステップSB7に処理を進める。
一方、息圧データDpを補間中であると、上記ステップSB3の判断結果が「YES」になり、ステップSB4に進む。ステップSB4では、上記ステップSB2で読みこんだ息圧データDpをレジスタTempにストアした後、このレジスタTempの値(現在の息圧データDp)と、レジスタOld_Bressに保持され、息継ぎスイッチBSがオン設定された時点の息圧データDpとの加算平均値を算出して補間した息圧データDpを取得し、さらにこの補間された息圧データDpを新たな基準値としてレジスタOld_Bressに更新登録する。
続いて、ステップSB5では、レジスタTempの現在の息圧データDpと、レジスタOld_Bressの補間された息圧データDpとの差分絶対値|Temp−Old_Bress|が充分に小さいか(殆ど「0」に近いか)否かを判断する。差分絶対値|Temp−Old_Bress|が大きければ、判断結果は「NO」になり、後述のステップSB7に進む。
これに対し、差分絶対値|Temp−Old_Bress|が充分に小さい(殆ど「0」に近い)場合には、上記ステップSB5の判断結果は「YES」になり、ステップSB6に進み、フラグBPFをゼロリセットして補間完了を表す。そして、ステップSB7では、息圧データDpが図6(a)に図示する閾値Th1あるいは閾値Th2に達した時間を記憶する。
次に、ステップSB8では、フラグONFが「0」(消音中)で、息圧データDpが閾値Th1を超えて今回閾値Th2を超えたか否か、つまりノートオンであるかどうかを判断する。ノートンオンならば、判断結果は「YES」になり、ステップSB9に進む。ステップSB9では、息圧データDpが閾値Th1から閾値Th2に達するまでの時間差t−on(図6(a)参照)をノートオンベロシティに変換すると共に、フラグNONFを「1」にセットして本処理を終える。
一方、ノートオンでなければ、上記ステップSB8の判断結果は「NO」になり、ステップSB10に進む。ステップSB10では、フラグONFが「1」(発音中)で、息圧データDpが閾値Th2以下で今回閾値Th1以下であるか否か、つまりノートオフであるかどうかを判断する。ノートオフでなければ、判断結果は「NO」になり、本処理を終えるが、ノートオフならば、判断結果は「YES」になり、ステップSB11に進む。ステップSB11では、息圧データDpが閾値Th2から閾値Th1に達するまでの時間差t−off(図6(a)参照)をノートオフベロシティに変換すると共に、フラグNOFFを「1」にセットして本処理を終える。
次に、図6(b)を参照して、上記ステップSB4〜SB6の補間処理について具体的に説明する。図6(b)は、マウスピース6に吹き込まれる息圧に応じて検出される息圧データDpの変化の一例を図示したものである。この図において、ユーザがノートオン中(発音中)に息継ぎスイッチBSをオン設定すると、その時点の息圧データDpが初期値としてレジスタOld_Bressに保持される。なお、息継ぎスイッチBSをオン設定してからオフ設定するまでの間は、レジスタOld_Bressに保持した息圧データDpに応じた音量で発音する発音持続区間となる。
そして、所定時間経過後にユーザが息継ぎスイッチBSをオフ設定すると、レジスタOld_Bressに保持した息圧データDpと、息継ぎスイッチBSをオフ設定した後の最初に読み込んだ息圧データDpとの加算平均値を算出して補間した息圧データDpを取得する。
以後、こうした加算平均値(補間された息圧データDp)と次に読みこまれる息圧データDpとの加算平均算出を繰り返し行うことによって、息継ぎスイッチBSがオン設定された時点の息圧データDpを徐々に現在の息圧データDpに近づけるように補間した息圧データDpを取得し、差分絶対値|Temp−Old_Bress|が殆ど「0」になると、補間処理を中止する。
こうすることで、図6(b)に図示するように、例えば息継ぎスイッチBSをオン設定した後に、ユーザが息切れして息継ぎを行ったとしても、息継ぎスイッチBSをオン設定した時点の息圧データDpで発音が持続される。そして、ユーザが息継ぎをして再度息を吹き込む過程で、息継ぎスイッチBSをオフ設定すると、息継ぎスイッチBSがオン設定された時点の息圧データDpを徐々に現在の息圧データDpに近づけるように補間した息圧データDpを取得し、この補間した息圧データDpで発音中の楽音の音量を制御するので、ビギナーユーザでも簡単に循環呼吸奏法と同等の継続音を発生させ得るようになっている。
(3)息圧データ処理の動作
図7は、息圧データ処理の動作を示すフローチャートである。本処理の実行タイミングになると、CPU14は、図7に図示するステップSC1に処理を進め、現在の息圧データDpが閾値Th1(図6(a)参照)より大きいか否かを判断する。息圧データDpが閾値Th1(図6参照)以下ならば、判断結果は「NO」になり、本処理を終える。
一方、息圧データDpが閾値Th1(図6参照)より大きければ、判断結果は「YES」になり、ステップSC2に進み、フラグONFが「1」、つまり発音中であるか否かを判断する。発音中でなければ、判断結果は「NO」になり、本処理を終えるが、発音中であれば、判断結果が「YES」になり、ステップSC3に進む。ステップSC3では、現在の息圧データDpを音源部17に送付する。なお、音源部17では、CPU14から送付される息圧データDpに応じて発音中の楽音の音量を制御する。
(4)唇位置データ処理の動作
図8は、唇位置データ処理の動作を示すフローチャートである。本処理の実行タイミングになると、CPU14は、図8に図示するステップSD1に処理を進め、息継ぎスイッチBSがオン中であるか否かを判断する。息継ぎスイッチBSがオン中であると、判断結果は「YES」となり、本処理を終える。なお、息継ぎスイッチBSがオン中の場合、当該息継ぎスイッチBSがオン設定された時点の唇位置データDLが初期値としてレジスタOld_Lip_2に保持される。
これに対し、息継ぎスイッチBSがオン中でなければ、上記ステップSD1の判断結果は「NO」になり、ステップSD2に進み、現在の唇位置データDLを読み込む。次いで、ステップSD3では、フラグLPFが「1」、すなわち唇位置データDLを補間中であるか否かを判断する。補間中でなければ、判断結果は「NO」になり、後述のステップSD7に処理を進める。
一方、唇位置データDLを補間中であると、上記ステップSD3の判断結果が「YES」になり、ステップSD4に進む。ステップSD4では、上記ステップSD2で読み込んだ現在の唇位置データDLをレジスタTempにストアした後、レジスタOld_Lip_2に保持されている唇位置データDLからレジスタTempの値(現在の唇位置データDL)を減算した値を1/4にした差分値DFVを算出する。そして、レジスタOld_Lip_2に保持されている唇位置データDLから差分値DFVを減算して補間した唇位置データDLを得る。さらに、補間した唇位置データDLを新たな基準値としてレジスタOld_Lip_2にストアする。
続いて、ステップSD5では、レジスタTempの現在の唇位置データDLと、レジスタOld_Lip_2の補間された唇位置データDLとの差分絶対値|Temp−Old_Lip_2|が充分に小さいか(殆ど「0」に近いか)否かを判断する。差分絶対値|Temp−Old_Lip_2|が大きければ、判断結果は「NO」になり、後述のステップSD7に進む。
これに対し、差分絶対値|Temp−Old_Lip_2|が充分に小さい(殆ど「0」に近い)場合には、上記ステップSD5の判断結果が「YES」になり、ステップSD6に進み、フラグLPFをゼロリセットして補間完了を表す。そして、ステップSD7に進み、現在の息圧データDpが閾値Th1(図6(a)参照)より大きいか否かを判断する。息圧データDpが閾値Th1(図6(a)参照)以下ならば、判断結果は「NO」になり、本処理を終える。
一方、息圧データDpが閾値Th1より大きければ、判断結果は「YES」になり、ステップSD8に進み、フラグONFが「1」、つまり発音中であるか否かを判断する。発音中でなければ、判断結果は「NO」になり、本処理を終えるが、発音中であれば、判断結果が「YES」になり、ステップSD9に進む。ステップSD9では、現在の唇位置データDLを音源部17に送付する。なお、音源部17では、CPU14から送付される唇位置データDLに応じて、例えばDCF(デジタル制御フィルタ)のカットオフ周波数を変化させて発音中の楽音の音色を制御する。
次に、図9を参照して、上記ステップSD4〜SD6の補間処理について具体的に説明する。図9は、唇位置データDLの変化の一例を図示したものである。この図において、ユーザがノートオン中(発音中)に息継ぎスイッチBSをオン設定すると、その時点の唇位置データDLが初期値としてレジスタOld_Lip_2に保持される。
そして、所定時間経過後にユーザが息継ぎスイッチBSをオフ設定すると、レジスタOld_Lip_2の唇位置データDL(初期値)から現在の唇位置データDLを減算した値を1/4にした差分値DFVを算出し、レジスタOld_Lip_2の唇位置データDL(初期値)から差分値DFVを減算して補間した唇位置データDLを得た後、この補間した唇位置データDLを新たな基準値としてレジスタOld_Lip_2に更新登録する。
以後、こうして補間された唇位置データDLと次に読み込まれる唇位置データDLとに基づいて補間処理を繰り返し行うことによって、息継ぎスイッチBSがオン設定された時点の唇位置データDLを徐々に現在の唇位置データDLに近づけように補間された唇位置データDLを取得し、差分絶対値|Temp−Old_Lip_2|が殆ど「0」になると、補間処理を中止する。
こうすることで、図9に図示するように、例えば息継ぎスイッチBSをオン設定した後に、ユーザが息切れして息継ぎを行ったとしても、息継ぎスイッチBSをオン設定した時点の唇位置データDLに従って発音中の楽音の音色制御が維持される。そして、ユーザが息継ぎをして再度息を吹き込む過程で、息継ぎスイッチBSをオフ設定すると、息継ぎスイッチBSがオン設定された時点の唇位置データを徐々に現在の唇位置データに近づけるように補間された唇位置データDLを取得し、この補間した唇位置データDLで発音中の楽音の音色を制御するので、ビギナーユーザでも簡単に循環呼吸奏法と同等の継続音を発生させ得るようになっている。
(5)リード歪データ処理の動作
図10は、リード歪データ処理の動作を示すフローチャートである。本処理の実行タイミングになると、CPU14は、図10に図示するステップSE1に処理を進め、息継ぎスイッチBSがオン中であるか否かを判断する。息継ぎスイッチBSがオン中であると、判断結果は「YES」となり、本処理を終える。なお、息継ぎスイッチBSがオン中の場合、当該息継ぎスイッチBSがオン設定された時点のリード歪データDSが初期値としてレジスタOld_Lip_1に保持される。
これに対し、息継ぎスイッチBSがオン中でなければ、上記ステップSE1の判断結果は「NO」になり、ステップSE2に進み、現在のリード歪データDSを読み込む。次いで、ステップSE3では、フラグSPFが「1」、すなわちリード歪データDSを補間中であるか否かを判断する。補間中でなければ、判断結果は「NO」になり、後述のステップSE7に処理を進める。
一方、リード歪データDLを補間中であると、上記ステップSE3の判断結果が「YES」になり、ステップSE4に進む。ステップSE4では、上記ステップSE2で読み込んだ現在のリード歪みデータDSをレジスタTempにストアした後、レジスタOld_Lip_1に保持されているリード歪データDSからレジスタTempの現在のリード歪データDSを減算した値を1/4にした差分値DFVを算出する。そして、レジスタOld_Lip_1のリード歪データDSから差分値DFVを減算して補間したリード歪データDSを得る。さらに、補間したリード歪データDSを新たな基準値としてレジスタOld_Lip_1にストアする。
続いて、ステップSE5では、レジスタTempの現在のリード歪データDSと、レジスタOld_Lip_1の補間された唇位置データDLとの差分絶対値|Temp−Old_Lip_2|が充分に小さいか(殆ど「0」に近いか)否かを判断する。差分絶対値|Temp−Old_Lip_1|が大きければ、判断結果は「NO」になり、後述のステップSE7に進む。
これに対し、差分絶対値|Temp−Old_Lip_1|が充分に小さい(殆ど「0」に近い)場合には、上記ステップSE5の判断結果が「YES」になり、ステップSE6に進み、フラグSPFをゼロリセットして補間完了を表す。そして、ステップSE7に進み、現在の息圧データDpが閾値Th1(図6(a)参照)より大きいか否かを判断する。息圧データDpが閾値Th1(図6(a)参照)以下ならば、判断結果は「NO」になり、本処理を終える。
一方、息圧データDpが閾値Th1より大きければ、判断結果は「YES」になり、ステップSE8に進み、フラグONFが「1」、つまり発音中であるか否かを判断する。発音中でなければ、判断結果は「NO」になり、本処理を終えるが、発音中であれば、判断結果が「YES」になり、ステップSE9に進む。ステップSE9では、現在のリード歪データDSを音源部17に送付する。なお、音源部17では、CPU14から送付されるリード歪データDSに応じて、例えば波形データの読み出し位相(読み出し速度)を変化させて発音中の楽音の音高を制御する。
次に、図11を参照して、上記ステップSE4〜SE6の補間処理について具体的に説明する。図11は、リード歪データDSの変化の一例を図示したものである。この図において、ユーザがノートオン中(発音中)に息継ぎスイッチBSをオン設定すると、その時点のリード歪データDSが初期値としてレジスタOld_Lip_1に保持される。
そして、所定時間経過後にユーザが息継ぎスイッチBSをオフ設定すると、レジスタOld_Lip_1のリード歪データDS(初期値)から現在のリード歪データDSを減算した値を1/4にした差分値DFVを算出し、レジスタOld_Lip_1のリード歪データDS(初期値)から差分値DFVを減算して補間したリード歪データDSを得た後、この補間したリード歪データDSを新たな基準値としてレジスタOld_Lip_1に更新登録する。
以後、こうして補間されたリード歪データDSと次に読み込まれるリード歪データDSとに基づいて補間処理を繰り返し行うことによって、息継ぎスイッチBSがオン設定された時点のリード歪データDSを徐々に現在のリード歪データDSに近づけように補間されたリード歪データDSを取得し、差分絶対値|Temp−Old_Lip_1|が殆ど「0」になると、補間処理を中止する。
こうすることで、図11に図示するように、例えば息継ぎスイッチBSをオン設定した後に、ユーザが息切れして息継ぎを行ったとしても、息継ぎスイッチBSをオン設定した時点のリード歪データDSに従って発音中の楽音の音高制御が維持される。そして、ユーザが息継ぎをして再度息を吹き込む過程で、息継ぎスイッチBSをオフ設定すると、息継ぎスイッチBSがオン設定された時点のリード歪データDSを徐々に現在のリード歪データDSに近づけるように補間されたリード歪データDSを取得し、この補間したリード歪データDSで発音中の楽音の音高を制御するので、ビギナーユーザでも簡単に循環呼吸奏法と同等の継続音を発生させ得るようになっている。
(6)メイン処理の動作
図12は、メイン処理の動作を示すフローチャートである。本処理の実行タイミングになると、CPU14は、図12に図示するステップSF1に処理を進め、フラグNONFが「1」、すなわちノートオンであるか否かを判断する。ノートオンならば、判断結果は「YES」になり、ステップSF2に進む。
ステップSF2では、音高キー2の運指操作で指定される音高データと、前述したステップSB9(図5参照)で取得したノートオンベロシティとを含むノートオンイベントを発生して音源部17に送付する。これにより、音源部17では、CPU14から受領したノートオンイベントに従った楽音波形データを発生する。
続いて、ステップSF3では、フラグONFを「1」にセットして発音中であることを表し、フラグNONFをゼロリセットする。次いで、ステップSF4では、息圧データDpに応じた音量制御、唇位置データDLに応じた音色制御およびリード歪データDSに応じた音高制御を音源部17に指示する。
次に、ステップSF5では、音高キー2を走査し、続くステップSF6では、音高キー2の走査結果に基づき運指変化の有無を判断する。運指変化が無ければ、判断結果は「NO」になり、後述のステップSB8に進む。一方、運指変化が有ると、上記ステップSF6の判断結果が「YES」になり、ステップSF7に進み、新たな運指で指定される音高データに基づき発音音高の変更を音源部17に指示する。
そして、ステップSF8では、息継ぎスイッチBSのスイッチイベントの有無を判断する。息継ぎスイッチBSが操作されず、当該息継ぎスイッチBSのスイッチイベントが発生しなければ、判断結果は「NO」になり、本処理を終える。
これに対し、息継ぎスイッチBSが操作され、当該息継ぎスイッチBSのスイッチイベントが発生すると、上記ステップSF8の判断結果が「YES」になり、ステップSF9に進む。ステップSF9では、発生したスイッチイベントがオンイベント/オフイベントの何れであるかを判別する。
オンイベントが発生した場合、すなわちオフ状態の息継ぎスイッチBSをオン設定するスイッチ操作が為されると、ステップSF10に進み、現在の息圧データDpをレジスタOld_Bressにストアし、現在のリード歪データDSをレジスタOld_Lip_1にストアし、現在の唇位置データDLをレジスタOld_Lip_2にストアする。そして、ステップSF11では、フラグBPF、フラグLPFおよびフラグSPFをそれぞれゼロリセットして本処理を終える。
これに対し、オフイベントが発生した場合、すなわちオン状態の息継ぎスイッチBSをオフ設定するスイッチ操作が為されると、ステップSF12に進み、フラグBPF、フラグLPFおよびフラグSPFにそれぞれ「1」をセットして息圧データDp、リード歪データDSおよび唇位置データDLを補間中である旨を表して本処理を終える。
さて一方、フラグNONFが「1」でない場合には、上述したステップSF1の判断結果が「NO」になり、ステップSF13に進む。ステップSF13では、フラグNOFFが「1」、すなわちノートオフであるか否かを判断する。ノートオフでなければ、判断結果は「NO」になり、本処理を終えるが、ノートオフならば、判断結果が「YES」になり、ステップSF14に進む。
ステップSF14では、音高キー2の運指操作で指定される音高データと、前述したステップSB11(図5参照)で取得したノートオフベロシティとを含むノートオフイベントを発生して音源部17に送付する。これにより、音源部17では、CPU14から受領したノートオフイベントに従った楽音波形データを消音する。そして、ステップSF15に進み、フラグONFおよびフラグNOFFを共にゼロリセットして本処理を終える。
以上説明したように、本実施形態では、息継ぎスイッチBSがオン設定されてからオフ設定されまでの間(発音持続区間)、当該息継ぎスイッチBSがオン設定された時点で発音中の楽音を持続発音させ、当該息継ぎスイッチBSがオフ設定されると、オン設定された時点で保持された息圧データDp、リード歪データDSおよび唇位置データDLを、それぞれ現在の息圧データDp、リード歪データDSおよび唇位置データDLに徐々に近づくように補間し、補間した息圧データDpに応じた音量制御、リード歪データDSに応じた音高制御および唇位置データDLに応じた音色制御を発音中の楽音に施す為、ビギナーユーザでも簡単に循環呼吸奏法と同等の継続音を発生させることが可能になる。
なお、上述の実施形態では、息継ぎスイッチBSのオンオフ操作で発音持続区間を指定する態様としたが、これに替えて、息継ぎスイッチBSのオン操作で発音持続区間の始まりを指定し、以後、息圧データDpが所定レベルを超えた時に発音持続区間の終わりを指定する態様とすることも可能である。このような態様にすれば、ユーザが息継ぎスイッチBSをオフ操作することなく自動的に発音持続区間の終わりを指定することが可能になる。
また、上述の実施形態では、線形補間演算により補間値を算出するようにしたが、これに限らず、例えば息圧データDpのようにレベル変化の幅が大きいデータについては非線形補間演算を施してより滑らかに繋がる補間値を取得し、一方、息圧データDpに比べてレベル変化の幅が小さいリード歪データDSや唇位置データDLについては線形補間演算を施すようにしても構わない。
以上、本発明の実施形態について説明したが、本発明はそれに限定されるものではなく、本願出願の特許請求の範囲に記載された発明とその均等の範囲に含まれる。
以下では、本願出願当初の特許請求の範囲に記載された各発明について付記する。
(付記)
[請求項1]
マウスピースに対して行われる演奏形態を検知し、演奏形態データを出力する演奏形態センサと、
前記演奏形態センサから出力された前記演奏形態データに基づいて楽音を制御する制御部と、
を備え、
前記制御部は、指示があった場合は、前記指示があった時点の前記演奏形態データに基づいて、前記指示があった時点以後の楽音を制御することを特徴とする電子管楽器。
[請求項2]
指示に応じて、前記指示があった時点の前記演奏形態データを保持データとして保持する保持部と、
前記指示が解除される解除時点以降に、前記演奏形態センサから出力される前記演奏形態データと、前記保持データとから補間データを生成する補間部と、を備え、
前記制御部は、前記指示の解除がなされた場合は、前記補間データに基づいて楽音を制御することを特徴とする請求項1に記載の電子管楽器。
[請求項3]
前記制御部は、前記指示があった時点から前記指示が解除された時点までの間、前記保持データに基づいて楽音を制御することを特徴とする請求項1又は2に記載の電子管楽器。
[請求項4]
前記演奏形態センサは、前記マウスピースから吹き込まれる息圧及び息の流量の少なくとも一方を検出する息センサと、前記マウスピースを咥える唇の位置を検出する唇位置検出センサと、及び前記マウスピースを咥える力を検出するバイトセンサの少なくとも1つを含むことを特徴とする請求項1乃至3の何れかに記載の電子管楽器。
[請求項5]
前記制御部は、前記息センサの出力に応じて前記楽音の音量を制御し、前記唇位置検出センサの出力に応じて前記楽音の音色を制御し、前記バイトセンサの出力に応じて前記楽音の音高を制御することを特徴とする請求項4に記載の電子管楽器。
[請求項6]
前記補間部は、前記保持部により保持された保持データと、前記指示が解除される解除時点以降に、前記演奏形態センサから出力される演奏形態データとの差分が充分に小さい場合に補間を終えることを特徴とする請求項2乃至5の何れかに記載の電子管楽器。
[請求項7]
マウスピースに対して行われる演奏形態を検知し、演奏形態データを出力する演奏形態センサを備える電子管楽器で実行され、
前記演奏形態センサから出力された前記演奏形態データに基づいて楽音を制御し、
指示があった場合は、前記指示があった時点の前記演奏形態データに基づいて、前記指示があった時点以後の楽音を制御する、
ことを特徴とする楽音発生方法。
[請求項8]
マウスピースに対して行われる演奏形態を検知し、演奏形態データを出力する演奏形態センサを備える電子管楽器に搭載されるコンピュータに、
前記演奏形態センサから出力された前記演奏形態データに基づいて楽音を制御するステップと、
指示があった場合は、前記指示があった時点の前記演奏形態データに基づいて、前記指示があった時点以後の楽音を制御するステップと、
を実行させることを特徴とするプログラム。
1 本体
2 音高キー
3 開口端
4 スピーカ
5 操作部
BS 息継ぎスイッチ
6 マウスピース
7 圧力センサ
8 リード
9a 歪みゲージ
9b 静電センサ
10 息圧検出部
11 リード歪検出部
12 唇位置検出部
13 A/D変換部
14 CPU
15 ROM
16 RAM
17 音源部
18 サウンドシステム
100 電子管楽器

Claims (6)

  1. マウスピースに対して行われる演奏形態を検知し、演奏形態データを出力する演奏形態センサと、
    前記演奏形態センサから出力された前記演奏形態データに基づいて楽音を制御する制御部と、
    ユーザの指示に応じて、前記指示があった時点の前記演奏形態データを保持データとして保持する保持部と、
    前記指示の解除される解除時点以降に、解除後の前記演奏形態データと前記保持データとから補間データを生成する補間部と、
    を備え、
    前記保持部は、前記指示が解除された時点以降の前記補間データを新しい保持データとして保持し、
    前記制御部は、前記指示があった場合は、前記保持データに基づいて前記指示があった時点以後の楽音を制御するとともに、前記指示の解除がなされた場合は、前記補間データに基づいて指示が解除された時点以後の楽音を制御し、前記保持部に保持された前記新しい保持データと前記解除時点以降に前記演奏形態センサから出力される前記演奏形態データとの差分が予め定められた値より小さくなった場合に、前記補間データに基づいた楽音の制御を終了する
    ことを特徴とする電子管楽器。
  2. 前記制御部は、前記指示があった時点から前記指示が解除される解除時点までの間、前記保持データに基づいて楽音を制御することを特徴とする請求項1に記載の電子管楽器。
  3. 前記演奏形態センサは、前記マウスピースから吹き込まれる息圧及び息の流量の少なくとも一方を検出する息センサと、前記マウスピースを咥える唇の位置を検出する唇位置検出センサと、及び前記マウスピースを咥える力を検出するバイトセンサの少なくとも1つを含むことを特徴とする請求項1または2の何れかに記載の電子管楽器。
  4. 前記制御部は、前記息センサの出力に応じて前記楽音の音量を制御し、前記唇位置検出センサの出力に応じて前記楽音の音色を制御し、前記バイトセンサの出力に応じて前記楽音の音高を制御することを特徴とする請求項3に記載の電子管楽器。
  5. マウスピースに対して行われる演奏形態を検知し、演奏形態データを出力する演奏形態センサを備え、前記演奏形態センサから出力された前記演奏形態データに基づいて楽音を制御する電子管楽器で実行され、
    ユーザの指示に応じて、前記指示があった時点の前記演奏形態データを保持データとして保持し、
    前記指示があった場合は、前記保持データに基づいて前記指示があった時点以後の楽音を制御し、
    前記指示の解除される解除時点以降に、解除後の前記演奏形態データと前記保持データとから補間データを生成し、
    前記指示が解除された時点以降の前記補間データを新しい保持データとして保持し、
    前記指示の解除がなされた場合は、前記補間データに基づいて前記指示が解除された時点以後の楽音を制御し、前記保持部に保持された前記新しい保持データと前記解除時点以降に前記演奏形態センサから出力される前記演奏形態データとの差分が予め定められた値より小さくなった場合に、前記補間データに基づいた楽音の制御を終了する
    ことを特徴とする楽音発生方法。
  6. マウスピースに対して行われる演奏形態を検知し、演奏形態データを出力する演奏形態センサを備え、前記演奏形態センサから出力された前記演奏形態データに基づいて楽音を制御する電子管楽器に搭載されるコンピュータに、
    ユーザの指示に応じて、前記指示があった時点の前記演奏形態データを保持データとして保持するステップと、
    前記指示があった場合は、前記保持データに基づいて前記指示があった時点以後の楽音を制御するステップと、
    前記指示の解除される解除時点以降に、解除後の前記演奏形態データと前記保持データとから補間データを生成するステップと、
    前記指示が解除された時点以降の前記補間データを新しい保持データとして保持するステップと、
    前記指示の解除がなされた場合は、前記補間データに基づいて前記指示が解除された時点以後の楽音を制御するステップと、
    前記新しい保持データと、前記解除時点以降に前記演奏形態センサから出力される演奏形態データとの差分が予め定められた値より小さくなった場合に、前記補間データに基づいた楽音の制御を終了するステップと、
    を実行させることを特徴とするプログラム。
JP2015187190A 2015-09-24 2015-09-24 電子管楽器、楽音発生方法およびプログラム Active JP6758593B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015187190A JP6758593B2 (ja) 2015-09-24 2015-09-24 電子管楽器、楽音発生方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015187190A JP6758593B2 (ja) 2015-09-24 2015-09-24 電子管楽器、楽音発生方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2017062325A JP2017062325A (ja) 2017-03-30
JP6758593B2 true JP6758593B2 (ja) 2020-09-23

Family

ID=58430126

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015187190A Active JP6758593B2 (ja) 2015-09-24 2015-09-24 電子管楽器、楽音発生方法およびプログラム

Country Status (1)

Country Link
JP (1) JP6758593B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS604994A (ja) * 1983-06-23 1985-01-11 カシオ計算機株式会社 吹奏型電子楽器
JPH01115794U (ja) * 1988-01-30 1989-08-03
JPH05134665A (ja) * 1992-02-03 1993-05-28 Casio Comput Co Ltd 電子管楽器
JPH0772853A (ja) * 1993-06-29 1995-03-17 Yamaha Corp 電子管楽器
US6538189B1 (en) * 2001-02-02 2003-03-25 Russell A. Ethington Wind controller for music synthesizers
JP3864784B2 (ja) * 2002-01-11 2007-01-10 ヤマハ株式会社 電子楽器および電子楽器用プログラム

Also Published As

Publication number Publication date
JP2017062325A (ja) 2017-03-30

Similar Documents

Publication Publication Date Title
US10347222B2 (en) Musical sound generation method for electronic wind instrument
CN111986638B (zh) 电子管乐器、乐音生成装置、乐音生成方法、记录介质
JP6435644B2 (ja) 電子楽器、発音制御方法及びプログラム
JP2019012131A (ja) 電子管楽器、その電子管楽器の制御方法及びその電子管楽器用のプログラム
JPH0772853A (ja) 電子管楽器
JP6728843B2 (ja) 電子楽器、楽音発生装置、楽音発生方法及びプログラム
JP2021043261A (ja) 電子吹奏楽器
US5010801A (en) Electronic musical instrument with a tone parameter control function
JP6758593B2 (ja) 電子管楽器、楽音発生方法およびプログラム
JP7140083B2 (ja) 電子管楽器、電子管楽器の制御方法及びプログラム
JP2000122641A (ja) 電子管楽器
CN108573689B (zh) 电子乐器、乐音发生方法及记录介质
JP3684774B2 (ja) 演奏指示装置及びプログラムを記録した媒体
JP2016177119A (ja) 電子管楽器、楽音制御方法、およびプログラム
JP2020064187A (ja) 電子鍵盤楽器、方法およびプログラム
JP2015225271A (ja) 電子楽器、電子楽器の発音制御方法、およびプログラム
JP2007057725A (ja) 楽音制御装置および楽音制御処理のプログラム
JP6703304B2 (ja) 楽音制御装置、電子管楽器、楽音制御方法およびプログラム
JP2017167418A (ja) 電子管楽器、楽音発生方法およびプログラム
JP2009031457A (ja) 楽音発生装置および楽音発生処理プログラム
JP4452671B2 (ja) アシスト評価機能を有するカラオケ装置
JP6710432B2 (ja) 楽音制御装置、電子楽器、楽音制御方法およびプログラム
JP2005242230A (ja) カラオケ装置
JP7346865B2 (ja) 電子管楽器、楽音生成方法、及びプログラム
JP2009053432A (ja) ポルタメント制御装置およびポルタメント制御処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180823

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190618

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191025

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200114

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200310

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200816

R150 Certificate of patent or registration of utility model

Ref document number: 6758593

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150