以下、本発明に係る電子機器、電子機器の制御方法及び制御プログラム、並びに、当該電子機器を備えた音響システムを実施するための形態について、図面を参照しながら詳しく説明する。
<音響システム>
図1は、本発明に係る電子機器を備えた音響システムの一実施形態を示す外観図である。ここでは、音響システムに適用される電子機器の一例として、それぞれ特定の音響機能を備えた電子鍵盤楽器(電子キーボード)等の電子楽器と、スマートデバイスと呼ばれるスマートフォンやタブレット端末等の情報機器とを適用した場合について説明する。
図1に示すように、本発明に係る音響システムは、少なくとも、電子鍵盤楽器等の電子楽器(第1の電子機器)100と、スマートフォンやタブレット端末等の情報機器(第2の電子機器)200と、を有し、双方がオーディオケーブル(又は、ラインケーブル)300を介して接続されている。
電子楽器100は、例えば図1に示すように、楽器本体の一面側に、演奏操作子としての複数の鍵を有し音高を指定するための鍵盤102と、音量調整や音色選択、その他の機能選択等の操作を行うためのスイッチ類が配列された操作パネル104と、音量や音色、設定情報、その他各種の情報等を表示する表示パネル106と、を備えている。また、電子楽器100は、上記の鍵盤102や操作パネル104を操作することにより生成される楽音や、情報機器200から送信されるオーディオ信号に基づく楽音、また、オーディオ信号の受信状況や電子楽器100の動作状態に基づいて、情報機器200の動作状態を制御するための特定の制御音を発音する発音部108と、オーディオケーブル300を介して接続される情報機器200からのオーディオ信号を受信(入力)するための外部端子110と、を備えている。
情報機器200は、例えば図1に示すように、機器本体の一面側に、情報機器200における各種の動作や機能、設定等を指示するためのボタンスイッチやタッチスイッチを有する操作スイッチ202と、電子楽器100に送信するデータや情報機器200における各種の動作や機能、設定等に関連する情報を表示する表示パネル204と、を備えている。また、情報機器200は、電子楽器100から発音された制御音や、通話動作や録音動作の際に音声や楽音、外音等を受音するマイク206と、楽音再生動作や通話動作の際に楽音や音声を発音する発音部208と、オーディオケーブル300を介して接続される電子楽器100にオーディオ信号を送信(出力)するための外部端子210と、を備えている。
このような電子楽器100及び情報機器200を備えた音響システムにおいて、電子楽器100と情報機器200とがオーディオケーブル300等の通信ケーブルを介して接続され、情報機器200から電子楽器100に所定のデータがオーディオ信号の形態で片方向に送信される。また、電子楽器100において情報機器200から送信されたデータの受信状況や電子楽器100における動作状態等に応じて、情報機器200との間で予め取り決めた特定の音信号を有する制御音が発音され、情報機器200において当該制御音を受音、解析することにより、上記のデータの受信状況や動作状態等に応じた処理が実行される。
以下、本実施形態に適用される電子楽器100及び情報機器200の機能構成とそれぞれの処理動作について詳しく説明する。
(電子楽器)
図2は、本実施形態に適用される電子楽器のハードウェアの構成例を示すブロック図である。
電子楽器100は、例えば図2に示すように、CPU(中央演算処理装置)114と、ROM(リードオンリーメモリ)116と、RAM(ランダムアクセスメモリ)118と、表示パネル106を備える表示部120と、鍵盤102や操作パネル104に設けられたスイッチ類を備える操作部122と、外部端子110に接続されたADC(アナログ・デジタル変換回路)112とを有し、それぞれがシステムバス134に直接接続されている。また、電子楽器100は、音源部であるDSP(デジタルシグナルプロセッサ;音源LSI)126及びADC124と、発音部であるDAC(デジタル・アナログ変換回路)128、パワーアンプ130及びスピーカ132とを有し、入力側にADC124、出力側にDAC128が接続されたDSP126が、システムバス134に直接接続されている。
上記のような構成において、CPU114は、電子楽器100の各部の動作を制御するためのメインプロセッサであって、ROM116に記憶された所定の制御プログラムを読み出して、RAM118をデータ領域及びワーク領域として使用しながら実行することにより、電子楽器100における各種の制御動作を実行する。
具体的には、CPU114は、鍵盤102や操作パネル104を有する操作部122を操作することにより入力される操作情報や、外部端子110を介して電子楽器100の外部機器(情報機器200)から送信されるオーディオ信号に基づいて、楽音の音高や音量、音色等を設定し、音源部であるDSP126により楽音波形データを出力させて、発音部108のスピーカ132から、所望の音響効果が付与された楽音を発音させる制御を行う。また、CPU114は、外部端子110を介して情報機器200から送信されるオーディオ信号の受信状況(例えば、エラー発生状況)や電子楽器100の動作状態等に応じて、情報機器200に対する制御の必要性や制御の種類(例えば、エラーの種類)を判定して、情報機器200との間で予め取り決めた、情報機器200が認識可能な音信号を有する制御音を音源部のDSP126により生成させて発音部108のスピーカ132から発音させる制御を行う。なお、電子楽器100におけるオーディオ信号の受信状況や電子楽器100の動作状態等に応じて制御音を発音する制御については、詳しく後述する。
ROM116は、音源部のDSP126において実行される楽音の生成処理に使用される全ての音色の波形データやパラメータデータ、CPU114やDSP126において実行される制御プログラムのプログラムデータ、音楽データ、その他各種の設定データを記憶している。特に、ROM116は、情報機器200から送信されるオーディオ信号の受信状況や電子楽器100の動作状態等を判別するための参照リスト(後述する「エラー判別リスト」に対応する)と、その判別結果に基づく情報機器200に対する制御の必要性や制御の種類と制御音となる音信号の特性とが相互に関連付けられた参照リスト(後述する「制御音設定リスト」に対応する)とを記憶している。ここで、ROM116は、その一部がCPU114に内蔵されて、制御プログラムが予めCPU114に組み込まれているものであってもよい。
RAM118は、ROM116に記憶された制御プログラムに基づいて、CPU114やDSP126において所定の制御動作を実行する際に使用する、又は、生成される各種データを一時的に記憶するデータ領域やワーク領域を備える。ROM116及びRAM118を含むメモリ部は、その一部が電子楽器100に対して着脱可能(すなわち、差し替え可能)な構成を有しているものであってもよい。
表示部120は、文字や数字、イラスト等を表示可能な液晶ディスプレイ(LCD)や有機ELディスプレイ(ELD)等の表示パネル106を有し、操作部122における入力操作や、電子楽器100の内部で実行される処理等に基づいて、各種の情報が表示される。操作部122は、鍵盤102や操作パネル104を有し、ユーザ(演奏者)が押鍵やスイッチ操作を行うことにより操作情報をCPU114に出力する。
外部端子110は、情報機器200にオーディオケーブル300を介して接続されるオーディオ入力端子であって、情報機器200から送信されるアナログ信号のオーディオ信号が外部端子110により受信された後、ADC112によりデジタル信号(デジタルデータ)に変換されてCPU114やDSP126における所定の処理に利用される。ここで、外部端子110を介して受信されたオーディオ信号は、電子楽器100の演奏モードに応じて、リアルタイムでの楽音再生動作に利用されたり、ROM116やRAM118を含むメモリ部に音楽データや電子楽器100の動作状態を設定又は制御するデータとして記憶(ダウンロード保存)された後に楽音再生動作に利用されたりする。
音源部のDSP126は、CPU114からの命令に基づいて、操作部122により指示された鍵の音高に対応する波形データをROM116から読み出して、又は、外部からADC124を介して取り込んで、楽音に音響効果を付与する信号処理を行い、楽音波形データとして出力する。また、音源部のDSP126は、CPU114からの命令に基づいて、予め設定された特性を有する音信号波形データを生成して出力する。発音部108のDAC128、パワーアンプ130及びスピーカ132は、DSP126から出力される楽音波形データや音信号波形データをDAC128によりアナログ信号(アナログ楽音波形信号)に変換した後、パワーアンプ130により所定の信号レベルに増幅してスピーカ132から楽音や制御音として機器外部に発音する。
(情報機器)
図3は、本実施形態に適用される情報機器のハードウェアの構成例を示すブロック図である。
情報機器200は、例えば図3に示すように、CPU214と、ROM216と、RAM218と、表示パネル204を備える表示部220と、ボタンスイッチやタッチスイッチ等の操作スイッチ202の他、表示パネル204の前面に設けられるタッチパネルを備える操作部222と、通信インターフェイス(通信I/F)部224とを備え、それぞれがシステムバス232に直接接続されている。また、情報機器200は、マイク206を有する受音部226と、外部端子210に接続されたオーディオ信号出力部212と、発音部208のスピーカ230に接続されたDAC228とを備え、それぞれがシステムバス232に直接接続されている。
上記のような構成において、CPU214は、情報機器200の各部の動作を制御するためのメインプロセッサであって、ROM216に記憶された所定の制御プログラムを読み出して、RAM218をデータ領域及びワーク領域として使用しながら実行することにより、情報機器200における各種の制御動作を実行する。
具体的には、CPU214は、操作スイッチ202やタッチパネルを有する操作部222を操作することにより入力される操作情報に基づいて、所定の情報処理動作や通話動作、録音動作等の各種の動作や機能を実行する制御を行う。また、CPU214は、外部端子210を介して電子楽器100にオーディオ信号を送信することにより、電子楽器100においてリアルタイムで、又は、ダウンロード保存した後に所望の楽音を発音させる制御を行う。また、CPU214は、電子楽器100のスピーカ132から発音された音を、受音部226のマイク206を介して受音し、電子楽器100との間で予め取り決めた特定の音信号を有する制御音を検出した場合に、当該制御音となる音信号の特性を解析することにより、予め設定された制御動作を実行する。なお、情報機器200において受音した制御音に基づいて実行される制御動作については、詳しく後述する。
ROM216は、CPU214において実行される制御プログラムのプログラムデータや、当該プログラムにおいて使用されるデータ、その他各種の設定データを記憶している。特に、ROM216は、受音部226により受音した制御音に基づいて電子楽器100におけるデータの受信状況や動作状態等を判別するための参照リスト(後述する「エラー種判別リスト」に対応する)や、上記の判別結果と情報機器200における制御動作とが相互に関連付けられた参照リスト(後述する「エラー対処リスト」に対応する)を記憶している。
RAM218は、ROM216に記憶された制御プログラムに基づいて、CPU214において所定の制御動作を実行する際に使用する、又は、生成される各種データを一時的に記憶するデータ領域やワーク領域を備える。ここで、ROM216は、その一部がCPU214に内蔵されて、制御プログラムが予めCPU214に組み込まれているものであってもよい。また、ROM216及びRAM218を含むメモリ部は、その一部が情報機器200に対して着脱可能(すなわち、差し替え可能)な構成を有しているものであってもよい。
表示部220は、文字や数字、画像等を表示可能な液晶ディスプレイや有機ELディスプレイ等の表示パネル204を有し、操作部222における入力操作や、情報機器200の内部で実行される処理等に基づいて、各種の情報が表示される。特に、表示部220は、受音部226のマイク206を介して受音した制御音をCPU214により解析した結果や、その解析結果に基づいて実行される、又は、実行が促される動作に関する報知情報が表示される。なお、表示部220において表示される報知情報の具体例については後述する。
操作部222は、操作スイッチ202や表示パネル204に一体的に設けられたタッチパネルを有し、ユーザがスイッチ操作や入力操作を行うことにより操作情報をCPU214に出力する。受音部226は、情報機器200における通話動作や録音動作等の際に、機器外部の音声や楽音、外音等をマイク206により受音する。また、受音部226は、電子楽器100から発音された制御音をマイク206により受音し、CPU214における解析処理に利用する。ここで、受音部226は、広く市販されているスマートフォンやタブレット端末等の情報機器において、マイクとして一般的に搭載されている構成が適用される。
通信I/F部224は、情報機器200の外部の通信機器との間で、ROM216及びRAM218を含むメモリ部に記憶される各種のデータの送信又は受信を行う。ここで、通信I/F部224を介して行われる通信は、例えば各種の有線や無線を用いた通信方法を適用して、情報機器200と外部の通信機器とを直接接続してデータを送受信するものであってもよいし、インターネット等のネットワークを介してデータを送受信するものであってもよい。また、メモリカード等の記憶媒体を用いてデータを受け渡しするものであってもよい。
外部端子210は、電子楽器100にオーディオケーブル300を介して接続されるオーディオ出力端子であって、CPU214からの命令に基づいて、オーディオ信号出力部212によりアナログ信号に変換されたオーディオ信号を電子楽器100に送信する。ここで、アナログ信号のオーディオ信号を出力する外部端子210は、広く市販されているスマートフォンやタブレット端末等の情報機器において、イヤホンジャックとして一般的に搭載されている構成が適用される。
発音部208のDAC228及びスピーカ230は、情報機器200における楽音再生動作や通話動作等の際に、CPU214からの命令に基づいて、DAC228によりアナログ信号に変換されたオーディオ信号をスピーカ132から機器外部に発音する。ここで、上記のオーディオ信号出力部212とDAC228とを単一の共通構成として、CPU214からの命令に基づいて、外部端子210又はスピーカ230から選択的にオーディオ信号を出力するものであってもよい。
なお、本実施形態においては、本発明に係る音響システムに適用される電子楽器(第1の電子機器)100の一例として電子鍵盤楽器を示し、また、情報機器(第2の電子機器)200の一例としてスマートフォンやタブレット端末を示したが、本発明はこれに限定されるものではない。すなわち、本発明は、第1の電子機器として、少なくともオーディオケーブルを介してオーディオ信号が入力される外部端子(オーディオ端子)と、オーディオ信号を出力する第2の電子機器の動作を制御するための制御音を生成する機能と、制御音を発音する発音手段とを備えているものであればよい。具体的には、第1の電子機器として、上述した電子鍵盤楽器や電子管楽器、電子弦楽器等の電子楽器の他に、例えばスマートフォンやタブレット端末等のスマートデバイス、パーソナルコンピュータ、オーディオ機器、電子辞書、携帯型や据置型のゲーム機等の種々の電子機器を適用することができる。また、本発明は、第2の電子機器として、少なくともオーディオケーブルを介してオーディオ信号を出力する外部端子(オーディオ端子)と、第1の電子機器から発音される制御音を受音する受音手段と、制御音に基づく所定の処理を実行する機能とを備えているものであればよい。具体的には、第2の電子機器として、上述したスマートフォンやタブレット端末等のスマートデバイスの他に、例えばパーソナルコンピュータ、携帯型や据置型のゲーム機等の種々の電子機器を適用することができる。
<音響システムの制御方法>
次に、本実施形態に係る音響システムの制御方法について、図面を参照して説明する。ここでは、情報機器200からオーディオケーブル300を介してアナログ信号のオーディオ信号の形態でデータを送信して、電子楽器100において当該データに基づいてリアルタイムで楽音を再生、或いは、ダウンロード後に楽音を再生する場合について説明する。ここで、以下に示す一連の制御処理は、電子楽器100のCPU114及びDSP126、並びに、情報機器200のCPU214において、それぞれ所定の制御プログラムを実行することにより実現されるものである。なお、情報機器200としてスマートデバイスを適用する場合には、制御プログラムは本実施形態に係る音響システムを構築するためにアプリケーションプログラム(以下、「アプリ」と略記する)としてROM216にインストールされたものであってもよい。
(メインルーチン)
図4は、本実施形態に係る音響システムの制御方法のメインルーチンを示すフローチャートである。
本実施形態に係る音響システムの制御方法においては、概略、以下のような処理動作が実行される。まず、ユーザが電子楽器100及び情報機器200を起動すると、それぞれのCPU114、214は図4に示すメインルーチンを起動し、電子楽器100及び情報機器200の各部を初期化する初期化処理を実行する(ステップS402)。
次いで、初期化処理の完了後に、ユーザが電子楽器100及び情報機器200の外部端子110、210にオーディオケーブル300を接続し(ステップS404)、双方の操作部122、222を操作してデータ転送モードに設定することにより、CPU114、214は情報機器200から電子楽器100にデータの転送(送信)が可能な状態に移行する(ステップS406)。ここで、電子楽器100及び情報機器200の動作状態を、データ転送モードに移行させる方法は、上記のように操作部122、222における操作によるものであってもよいし、オーディオケーブル300が双方の外部端子110、210に接続された状態をCPU114、214により検出して自動的に移行するものであってもよい。
次いで、データ転送モードの設定後に、ユーザが情報機器200の操作部222を操作して所望のデータを指定することにより、情報機器200からオーディオケーブル300を介して電子楽器100に、所望のデータがオーディオ信号として送信されるデータ転送処理が実行される(ステップS408)。ここで、本実施形態に係るデータ転送処理においては、電子楽器100のCPU114が情報機器200から送信されるデータ(オーディオ信号)の受信状況や当該データに基づく電子楽器100の動作状態を監視、判別する転送エラー検出動作を実行するとともに、当該転送エラー検出動作に伴って電子楽器100から発音される制御音を、情報機器200のCPU214が監視、解析してエラー状態等に対処する転送エラー対処動作を実行する。これらの転送エラー検出動作及び転送エラー対処動作は、データ転送処理の実行中に電子楽器100及び情報機器200において略同時並行して実行される。
次いで、電子楽器100において情報機器200から送信されたデータに基づいて、或いは、ユーザが鍵盤102や操作パネル104等の操作部122を操作することにより取得される操作情報に基づいて、楽音再生動作が実行される(ステップS410)。ここで、楽音再生動作は上記のデータ転送処理により情報機器200から送信されたデータを受信しつつ当該データに基づいて楽音をリアルタイムで再生するリアルタイム再生を行うものであってもよいし、情報機器200から送信されたデータをROM116やRAM118を含むメモリ部に記憶し、データ転送処理の終了後に当該データに基づいて楽音を再生するダウンロード再生を行うものであってもよい。
次に、上述した情報機器200から電子楽器100へのデータ転送処理中に実行される各動作について、具体的に説明する。
(転送エラー検出動作)
図5は、本実施形態に係る音響システムの制御方法に適用される電子楽器の転送エラー検出動作を示すフローチャートである。図6は、本実施形態に係る電子楽器の転送エラー検出動作に適用されるエラー判別リストの一例を示す図である。図7は、本実施形態に係る電子楽器の転送エラー検出動作に適用される制御音設定リストの一例を示す図である。
本実施形態に係る充電システムの制御方法に適用される転送エラー検出動作においては、図5に示すフローチャートのように、まず、電子楽器100のCPU114はデータ転送処理の実行中に、オーディオケーブル300を介して情報機器200から送信されるデータ(オーディオ信号)の受信状況を逐次監視する(ステップS502)。ここで、CPU114は外部端子110及びADC112を介して電子楽器100に入力されるオーディオ信号を有するデータに予め設定されたエラーが存在しているか否かを、常時或いは定期的に監視する(ステップS506)。
そして、CPU114はデータ転送処理の実行中(ステップS504のNo)に、受信したデータにエラーを検出した場合(ステップS506のYes)には、検出されたエラーが予め設定されたどの種類のエラーに相当するかを判別するエラー判別処理を実行する(ステップS508)。また、情報機器200から送信されるデータが不正に中断する等、データ転送処理が正常に終了しなかった場合(ステップS504のNo)においても、CPU114はエラーを検出して(ステップS506のYes)、エラー判別処理を実行する(ステップS508)。
一方、データ転送処理の実行中(ステップS504のNo)に、受信したデータにエラーが検出されない場合(ステップS506のNo)には、ステップS502~S506の処理動作を繰り返し実行する。そして、データ転送処理が正常に終了した場合(ステップS504のYes)には、CPU114は転送エラー検出動作を終了して図4に示したメインルーチンに戻る。
エラー判別処理においては、CPU114はエラーの種類とエラーの詳細内容とを予め対応付けたエラー判別リストに基づいて、ステップS504、S506において検出されたエラーの種類を判別する。具体的には、CPU114は例えば図6(a)に示すように、エラーの詳細内容として、電子楽器100がデータ受信状態にあるにも拘わらず情報機器200からデータが転送されていない状態を検出した場合には、エラーの種類を「接続エラー」であると判別する。このようなエラーは、例えばオーディオケーブル300が電子楽器100や情報機器200の外部端子110、210に正しく接続されておらず抜けている場合や、情報機器200側のプログラム(アプリ)における通信音量が小さ過ぎて正常にデータ転送ができないレベルである場合等に発生する。
また、CPU114は例えば図6(b)に示すように、エラーの詳細内容として、情報機器200からデータは転送されているものの、データの情報が間違っている(又は、正しくないコマンドを受信した)状態を検出した場合には、エラーの種類を「データエラー」であると判別する。このようなエラーは、例えば電子楽器100や情報機器200の電源状況が悪く、データが通信途中で化けてしまっている場合や、情報機器200から送信されるデータ(元データ)の値が間違っている場合等に発生する。
また、CPU114は例えば図6(c)に示すように、エラーの詳細内容として、通信音量レベルが適正値で無い状態を検出した場合には、エラーの種類を「音量エラー」であると判別する。このようなエラーは、例えば情報機器200側のプログラム(アプリ)の音量設定が小さ過ぎたり大き過ぎたりする場合等に発生する。
また、CPU114は例えば図6(d)に示すように、エラーの詳細内容として、保存したいデータの容量が、電子楽器100のメモリ残量を超えている状態を検出した場合には、エラーの種類を「メモリフル」であると判別する。このようなエラーは、例えば電子楽器100のメモリ部の残容量が不足している場合等に発生する。
また、CPU114は例えば図6(e)に示すように、エラーの詳細内容として、転送されるデータの容量が一度に転送できる規定値を超えている状態を検出した場合には、エラーの種類を「サイズオーバー」であると判別する。このようなエラーは、例えば情報機器200から送信されるデータ(元データ)の容量設定や送信指定が間違っている場合等に発生する。
また、CPU114は例えば図6(f)に示すように、エラーの詳細内容として、転送されるデータを電子楽器に正しく保存できなかった状態を検出した場合には、エラーの種類を「保存エラー」であると判別する。このようなエラーは、例えば電子楽器100側のメモリが正常でない場合や、破損している場合等に発生する。なお、このような保存エラーの発生は、近年メモリが高品質化していることから極めて希少になっている。
次いで、CPU114はエラー判別処理(ステップS508)において判別されたエラーの種類に基づいて、特定の音信号を有する制御音を設定する制御音設定処理を実行する(ステップS510)。ここで、制御音は、電子楽器100における楽音再生動作の際に使用されていないMIDI信号のノートナンバーに対応する音高の音信号を適用する。例えば88鍵の電子鍵盤楽器においては、MIDI信号のノートナンバーの全範囲0~127のうち、ノートナンバー21~108を楽音再生に使用しているため、ノートナンバー0~20と109~127は使用されていない。CPU114は楽音再生に使用されているノートナンバー21~108に対応する音高の周波数(第1の周波数)を避けて、楽音再生に使用されていない(すなわち、鍵盤102に割り当てられていない)ノートナンバー0~20及び109~127対応する音高の周波数(第2の周波数)の音信号を制御音として適用する。CPU114はこれらのノートナンバー0~20及び109~127と、エラー判別処理において判別されたエラーの種類とを予め対応付けた制御音設定リストに基づいて、制御音に適用する音信号を設定する。ここで、制御音に適用する音信号は情報機器200が認識可能な音信号であり、制御音設定リストにおける各設定事項の対応関係は、予め外部機器である情報機器200との間で取り決められて、電子楽器100のROM116及び情報機器200のROM216に予め記憶されている。
具体的には、CPU114は例えば図7の制御音設定リストに示すように、エラー判別処理において判別されたエラーの種類が「接続エラー」である場合には、制御音としてノートナンバーが例えば112に対応する音高(周波数約5274Hz)の音信号を適用し、エラーの種類が「データエラー」である場合には、制御音としてノートナンバーが例えば116に対応する音高(周波数約6645Hz)の音信号を適用する。また、CPU114はエラーの種類が「音量エラー」である場合には、制御音としてノートナンバーが例えば119に対応する音高(周波数約7902Hz)の音信号を適用し、エラーの種類が「メモリフル」である場合には、制御音としてノートナンバーが例えば122に対応する音高(周波数約9397Hz)の音信号を適用する。ここで、制御音に適用されるノードナンバーは、それぞれに対応する音信号が上述した特定の周波数を中心としてある程度の広がり(帯域)を有しているため、エラーの種類ごとにこれらの帯域が重ならない音高を有するノートナンバーが選択される。これにより、楽音再生時に発音される音信号と制御音に設定される音信号の混同を避けることができる。
次いで、CPU114は制御音設定処理(ステップS510)において設定された制御音を、音源部のDSP126により生成させて発音部108のスピーカ132から発音させる(ステップS512)。発音された制御音は、情報機器200において実行される転送エラー対処動作に利用される。
ここで、スピーカ132から発音される制御音に適用された音信号の音高が、外音(環境音)に含まれている周波数である場合には、情報機器200において実行される転送エラー対処動作において、制御音と外音とが混同されてしまい制御音が正確に検知、解析できない場合も考えられる。そこで、CPU114は制御音設定処理において設定された制御音が情報機器200において認識可能であることに加え、制御音をスピーカ132から発音する際に、外音では観測されない(又は、存在しない)特殊なリズムや発音時間、音量に設定する発音特性の制御を行ったり、変調処理を施して特殊な信号波形(パルス幅等)に変形させたりする信号特性の制御を行う。これにより、情報機器200において、外音(環境音)との混同を避けて制御音を良好に検知することができる。なお、このような制御音の発音特性や信号特性は、エラーの種類ごとに異なるように設定するものであってもよい。
また、CPU114はステップS512の制御音の発音動作に略同時並行して、上述したエラー判別処理により判別されたエラーの種類に対応したエラー情報(報知情報)を電子楽器100の表示パネル106に表示する。ここで、電子楽器100に搭載される表示パネル106は電子楽器100の小型化や製品コストの削減のため、低機能で表示ドット数が少ないものが適用されることが多く、表示可能な文字数や桁数が制約されている場合がある。そのため、上記のエラー表示を含め表示パネル106における表示は、一般に簡潔な文言や略語、記号、イラスト等が用いられている。
具体的には、CPU114は図6(a)に示すようにエラーの種類が「接続エラー」である場合には、表示パネル106のエラー表示として例えば「ReCV Err」という略語を表示し、図6(b)に示すように「データエラー」である場合には、例えば「Data Err」という略語を表示し、図6(c)に示すように「音量エラー」である場合には、例えば「AppVol +」、「AppVol -」という略語を表示する。また、CPU114は図6(d)に示すようにエラーの種類が「メモリフル」である場合には、表示パネル106のエラー表示として例えば「Mem Full」という略語を表示し、図6(e)に示すように「サイズオーバー」である場合には、例えば「SizeOver」という略語を表示し、図6(f)に示すように「保存エラー」である場合には、例えば「Save Err」という略語を表示する。
なお、CPU114はステップS512の制御音の発音動作に略同時並行して、上述したエラー情報を表示パネル106に表示するとともに、或いは、当該エラー情報の表示に替えて、例えば上述したエラー判別処理により判別されたエラーの種類に対応して個別に設定された発光パターンで、表示パネル106のバックライトや操作パネル104に配置された所定の発光部を発光させるものであってもよい。これにより、エラーの発生状況をユーザに迅速かつ的確に報知することができる。
そして、CPU114はスピーカ132から制御音を発音させた後、転送エラー検出動作を終了して図4に示したメインルーチンに戻る。その後、後述するエラー対処動作によりエラーが解消されてデータ転送処理が再度実行された場合には、CPU114は転送エラー検出動作を再度実行する。
(転送エラー対処動作)
図8は、本実施形態に係る音響システムの制御方法に適用される情報機器の転送エラー対処動作を示すフローチャートである。図9は、本実施形態に係る情報機器の転送エラー対処動作に適用されるエラー対処リストの一例を示す図である。
本実施形態に係る充電システムの制御方法に適用される転送エラー対処動作においては、図8に示すフローチャートのように、まず、情報機器200のCPU214はデータ転送処理の実行中に、電子楽器100から発音される制御音を受音部226のマイク206により逐次監視する(ステップS802)。ここで、CPU214はマイク206を介して受音した外音の中に、上述した転送エラー検出動作において各種のエラー状態に対応付けられた全てのノートナンバーを含む周波数域に属する音信号、或いは、制御音の発音時に設定された発音特性や信号特性に一致する音信号が存在するか否かを、常時或いは定期的に監視する(ステップS806)。
なお、この制御音の監視状態においては、電子楽器100と情報機器200とが比較的近接して配置され、電子楽器100から発音された制御音を情報機器200のマイク206により正常かつ適切に受音することができる範囲に位置していることが望ましい。具体的には、電子楽器100のスピーカ132の近傍に情報機器200の載置場所を設けて適切な位置を指定するものであってもよいし、ケーブル長が比較的短い専用のオーディオケーブル300を電子楽器100の専用付属品(純正品)として提供することにより、オーディオケーブル300を情報機器200に接続したときに、情報機器200が電子楽器100のスピーカ132から適切な範囲に位置するように指定するものであってもよい。
そして、CPU214はデータ転送処理の実行中(ステップS804のNo)に、受音した外音の中から、電子楽器100との間で予め取り決めた特定の音信号を有する制御音に設定されている音信号を検出した場合には、電子楽器100からエラー状態に応じて発音された制御音を検知したと判定して(ステップS806のYes)、当該制御音の音信号を解析する制御音解析処理を実行し(ステップS808)、どの種類のエラーが発生しているかを判別するエラー種判別処理を実行する(ステップS810)。
一方、データ転送処理の実行中(ステップS804のNo)に、受音した外音に制御音が検知されない場合(ステップS806のNo)には、ステップS802~S806の処理動作を繰り返し実行する。そして、データ転送処理が正常に終了した場合(ステップS804のYes)には、CPU214は転送エラー対処動作を終了して図4に示したメインルーチンに戻る。
制御音解析処理においては、CPU214は制御音として受音した音信号の特性を解析する。具体的には、CPU214は上述した転送エラー検出動作においてエラーの種類に対応して制御音に設定された音信号の周波数や、当該音信号の発音時に設定されたリズムや発音時間、音量等の発音特性や信号波形等の信号特性を抽出して、どの要素がエラーに関連付けられたものであるかを解析する。このような解析処理は、電子楽器100側で実行される制御音設定処理に用いられる制御音設定リストの周波数や制御音の発音時に設定される発音特性や信号特性に関する情報を、情報機器200側がROM216やRAM218を含むメモリ部に予め記憶して共有化していることにより実現される。
次いで、エラー種判別処理においては、CPU214は制御音解析処理により抽出された制御音の周波数や発音特性、信号特性に基づいて、エラーの種類を判別するとともに、当該エラーの対処方法を特定する。具体的には、CPU214は制御音の周波数とエラーの種類とを予め対応付けたエラー種判別リストに基づいて、抽出された周波数や発音特性、信号特性に対応付けられたエラーの種類を判別する。例えば制御音となる音信号の音高(周波数)がエラーに関連付けられている場合には、CPU214は電子楽器100側で実行される制御音設定処理に用いられる制御音設定リスト(図7参照)と同等の情報を有するエラー種判別リストに基づいて、エラーの種類(接続エラー、データエラー、音量エラー、メモリフル等)を判別する。
次いで、CPU214はエラーの種類とそれぞれの対処方法とが関連付けられたエラー対処リストに基づいて、制御音から判別されたエラーの対処方法を特定してエラー対処処理(特定動作)を実行する(ステップS812)。具体的には、例えば図9(a)に示すように、判別されたエラーの種類が「接続エラー」の場合には、CPU214はエラー対処方法として情報機器200から電子楽器100へのデータ転送を中止するとともに、情報機器200の表示パネル204に例えば「オーディオケーブルが端子に正しく接続されているか確認してください。」というメッセージ(報知情報)を表示して、ユーザにオーディオ端子の接続状態の確認を促す。なお、「接続エラー」は、情報機器200側のプログラムにおける通信音量が小さ過ぎて正常にデータ転送ができないレベルである場合にも発生するが、この場合のエラー対処方法としてCPU214は、後述する「音量エラー」の場合と同様に、情報機器200の内部で音量を自動的に調節する。
また、例えば図9(b)に示すように、判別されたエラーの種類が「データエラー」の場合には、CPU214はエラー対処方法として情報機器200から電子楽器100へのデータを自動的に再転送するとともに、表示パネル204に例えば「転送がうまく完了されませんでした。再度、転送し直します。」というメッセージを表示して、ユーザにエラー対処動作の実行中であることを報知する。ここで、CPU214はデータの再転送を複数回実行しても転送が完了しなかった場合には、表示パネル204に例えば「データが正しくない可能性があります。」というメッセージを表示して、ユーザにデータ転送の中止を促す。
また、例えば図9(c)に示すように、判別されたエラーの種類が「音量エラー」の場合には、CPU214はエラー対処方法として情報機器200のプログラムの音量を自動的に調節するとともに、表示パネル204に例えば「通信音量レベルの調整中・・・」というメッセージを表示して、ユーザにエラー対処動作の実行中であることを報知する。ここで、CPU214はプログラムの音量設定が小さ過ぎる場合には、音量を順次大きくする制御を行い、音量設定が大き過ぎる場合には、音量を順次小さくする制御を行う。
また、例えば図9(d)に示すように、判別されたエラーの種類が「メモリフル」の場合には、CPU214はエラー対処方法として情報機器200から電子楽器100へのデータ転送を中止するとともに、情報機器200の表示パネル204に例えば「メモリがいっぱいです。保存データを削除してメモリを確保してください。」というメッセージ(報知情報)を表示して、ユーザにメモリデータを消去してメモリ残量の増加を促したり、メモリ残量内のサイズの小さい別のデータの転送を促したりする。
また、例えば図9(e)に示すように、判別されたエラーの種類が「サイズオーバー」の場合には、CPU214はエラー対処方法として情報機器200から電子楽器100へのデータ転送を中止するとともに、情報機器200の表示パネル204に例えば「規定のサイズを超えています。このデータは転送できません。」というメッセージ(報知情報)を表示して、ユーザに転送データの容量設定の変更を促したり、規定値以下のサイズの小さい別のデータの転送を促したりする。
また、例えば図9(f)に示すように、判別されたエラーの種類が「保存エラー」の場合には、CPU214はエラー対処方法として情報機器200から電子楽器100へのデータ転送を中止するとともに、情報機器200の表示パネル204に例えば「楽器の保存機能が故障している可能性があります。別の保存番号で再度試して下さい。」というメッセージ(報知情報)を表示して、ユーザに保存エリアの再選択を促す。
そして、CPU214はエラーの種類に対応したエラー対処処理を実行した後、転送エラー対処動作を終了して図4に示したメインルーチンに戻る。その後、一連のエラー対処動作によりエラーが解消されてデータ転送処理が再度実行された場合には、CPU214は転送エラー対処動作を再度実行する。
(比較例との作用効果の対比)
次に、比較例を示して本実施形態の作用効果の優位性について説明する。
図10は、音響システムにおけるエラー対処方法の比較例(エラー対処リスト)を示す図である。
一般に、電子楽器と情報機器とをオーディオケーブルを介して接続し、情報機器から電子楽器にオーディオ信号を有するデータを転送する場合に発生するエラーは、例えば図6のエラー判別リストに示したものが考えられる。ここで、情報機器から電子楽器にのみデータが送信され、電子楽器から情報機器にデータを送信することができない片方向通信が適用されたシステムにおいては、データ転送時のエラーの発生状況を受信側の電子楽器側で把握することはできるが、送信側の情報機器で把握することはできなかった。そのため、エラーを解消するための対処方法は、例えば図10に示すように、ユーザが電子楽器の表示パネルに表示された情報を確認して、エラーの種類ごとに電子楽器や情報機器に対して所定の対処方法を実行する必要があり、ユーザの操作負担が大きかった。特に、電子楽器100に搭載される表示パネルに表示可能な文字数や桁数が制約されている場合には、例えば図6(a)~(f)に示したように、エラーの発生状況が略語や記号により表示されるため、ユーザはエラーの発生に気づきにくいうえ、図10に示したような対処方法を即座に把握することができなかった。そのため、迅速なエラー対処ができないうえ、対処方法に対する混乱を招いて適切なエラー対処が行われなかったりする場合があった。
これに対して、本実施形態においては、電子楽器100と情報機器200とをオーディオケーブル300を介して接続し、情報機器200から電子楽器100に一方向にオーディオ信号を送信する音響システムにおいて、電子楽器100によりオーディオ信号の受信状況を監視し、エラーが発生した場合にはエラーの種類に応じた特定の制御音を発音し、情報機器200により電子楽器100から発音された制御音を受音してエラーの種類に応じた対処動作を実行する。このように、データ転送時のエラーの発生状況を電子楽器100から情報機器200にフィードバックすることにより、簡易な構造で実質的に双方向のデータ通信を行うことができる。これにより、エラーの発生状況やエラーの種類ごとの対処方法を情報機器200側に詳しく表示してユーザに適切なエラー対処を促したり、情報機器200が適切なエラー対処を自動で実行したりすることができるので、エラー対処のためのユーザの操作負担やストレスを軽減することができるとともに、迅速なエラー対処を行うことができる。
なお、本実施形態に示した音響システムの制御方法において、電子楽器100において実行される制御音設定処理においては、図7に示した制御音設定リストに基づいて、エラーの種類ごとに予め対応付けられた1つのノートナンバーの音信号を制御音に適用して、1つの種類のエラーに対して1つの制御音を設定する場合について説明した。本発明はこれに限定されるものではなく、複数の種類のエラーに対して1つの制御音を設定するものであってもよい。すなわち、制御音設定リストに示したように、エラーの種類ごとに異なるノートナンバーが対応付けられているので、データ転送処理の実行中に、複数の種類のエラーが同時に発生した場合には、それぞれのエラーの種類に対応する各ノートナンバーの音信号を抽出し、それらを合成した複合音を制御音に適用する。これにより、転送エラー対処動作において、1つの制御音で複数の種類のエラーに対応することができる。
また、制御音設定処理において設定される制御音は、エラーの種類ごとに対応付けられたノートナンバーの音信号のみを適用した場合について説明したが、本発明はこれに限定されるものではない。すなわち、制御音は、少なくとも、発生したエラーの種類に対応付けられたノートナンバーの音信号を含むものであればよく、例えば発生したエラーに対応付けられた音信号と、他の種類のエラーに対応付けられておらず、かつ、帯域が重ならないノートナンバーの音信号(例えば、楽音再生に使用されているノートナンバーの音信号でもよい)とを、合成した複合音を制御音に適用するものであってもよい。これにより、楽音の再生中にも制御音を発音して、情報機器200の動作を制御することができる。
さらに、制御音設定処理において設定される制御音は、MIDI信号のノートナンバーのうち、楽音再生動作の際に使用されていないノートナンバーの音信号を適用する場合について説明した。本発明はこれに限定されるものではなく、楽音再生に使用されている全てのノートナンバーに対応する音高を含む周波数域以外の音信号を、制御音として適用するものであれば、可聴域に属するものであってもよいし不可聴域に属するものであってもよい。この場合、制御音として適用される音信号の周波数は、情報機器200として適用される、スマートフォンやタブレット端末等のスマートデバイスに搭載されている受音手段であるマイクにより認識可能(検知可能)な範囲に設定される。
次に、上述した実施形態の変形例について説明する。
<変形例1>
上述した実施形態においては、情報機器200から電子楽器100に所定のデータがオーディオケーブル300を介して片方向に送信される音響システムにおいて、電子楽器100により検出したエラーに対応付けた特定の音信号を有する制御音を発音し、情報機器200において受音、解析することにより、情報機器200に発生したエラーの種類を送信して対処を促す処理を行う制御方法を説明した。
本変形例においては、上述した実施形態に示した音響システムが実質的に双方向のデータ通信を実現できることに着目して、電子楽器100から発音される制御音として、上述したエラーの発生状況や種類以外の情報を対応付けたことを特徴としている。これにより、電子楽器100における操作パネル104等のスイッチ類を通常と同様に操作することにより、当該操作に対応付けられた音信号を有する制御音を発音させて、情報機器200における動作を制御したり、プログラム(アプリ)の設定値を変更したりすることができる。
具体的には、例えば情報機器200から送信されるオーディオ信号に基づいて電子楽器100において楽音をリアルタイムで再生する際に、操作パネル104等の音量を増減する[+]や[-]のスイッチの操作信号に対応付けた音信号を、制御音として適用することにより、電子楽器100のスイッチ操作により情報機器200における音量設定を調整する。そして、当該調整された音量設定を有するオーディオ信号を電子楽器100に送信することにより、電子楽器100における音量が変更設定されて楽音再生に反映される。
また、例えば情報機器200から送信されるオーディオ信号に基づいて電子楽器100において楽音をリアルタイムで再生する際に、電子楽器100と情報機器200における楽音の再生状態を含む通信状態を管理する処理であるキーボードリンク処理(キーボードリンク処理プログラム)の実行をON又はOFF設定するスイッチの制御信号に対応付けた音信号を、制御音として適用することにより、電子楽器100のスイッチ操作により情報機器200におけるキーボードリンク処理の実行のON又はOFF設定が制御される。
また、情報機器200から送信されるオーディオ信号に基づいて電子楽器100において楽音をリアルタイムで再生する際に、当該楽音のテンポ(再生速度)に対応させて制御音の発音と消音の間隔を対応付けることにより、電子楽器100のスイッチ操作により情報機器200のマイクにより受音した制御音の発音、消音の間隔に基づいて、情報機器200におけるテンポ設定を調整する。そして、当該調整されたテンポ設定を有するオーディオ信号を電子楽器100に送信することにより、電子楽器100におけるテンポが変更設定されて楽音再生に反映される。
また、情報機器200から送信されるオーディオ信号に基づいて電子楽器100において楽音をリアルタイムで再生する際に、例えば音響効果の一種であるトランスポーズ機能をON又はOFF設定するスイッチの制御信号に対応付けた音信号を、制御音として適用することにより、電子楽器100のスイッチ操作により情報機器200におけるトランスポーズ機能のON又はOFF(機能の付与の可否)設定を制御する。そして、当該制御された機能設定を有するオーディオ信号を電子楽器100に送信することにより、電子楽器100におけるトランスポーズ機能のON又はOFFが設定されて楽音再生に反映される。
<変形例2>
図11は、本実施形態に適用される電子楽器のハードウェアの変形例を示すブロック図である。
上述した実施形態においては、図2に示したように、電子楽器100の外部端子110がADC112を介してシステムバス134に接続された構成を有している場合について説明した。ここで、ADC112は、外部端子110を介して情報機器200から送信されるアナログ信号のオーディオ信号について、信号の振幅の大きさ(信号レベル)を測定して適正値に補正するキャリブレーション処理を行う場合に必要な構成である。また、ADC112は、楽音再生のためのデータと、電子楽器100における動作状態を設定、制御するためのデータとを、オーディオ信号を併用して送信する場合に必要な構成である。
本変形例においては、例えば図11に示すように、電子楽器100の外部端子110がシステムバス134に直接接続された構成を有している。すなわち、図2に示した電子楽器100の構成において、ADC112を省略した構成を有している。このようなADC112を省略した構成は、外部端子110を介して情報機器200から送信されるアナログ信号のオーディオ信号がノイズや減衰等の影響を受けることなく、安定した適正な波形を有している場合(すなわち、キャリブレーション処理を行う必要がない場合)や、オーディオ信号を電子楽器100における動作状態を設定、制御するためのデータ送信にのみ使用する場合に適用することができる。これにより、電子楽器100の構成及び制御動作を簡略化することができる。なお、このような構成は、上述したアナログ信号のオーディオ信号を送信するオーディオケーブル300に替えて、デジタル信号の送信が可能な通信ケーブルを外部端子110に接続して、情報機器200からデジタル信号のオーディオ信号やデータを送信する場合にも適用することができる。
以上、本発明のいくつかの実施形態について説明したが、本発明は、上述した実施形態に限定されるものではなく、特許請求の範囲に記載された発明とその均等の範囲とを含むものである。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
(付記)
[1]
一方向にデータが送信される通信手段を介して外部機器から受信した信号に基づいて動作状態を設定する設定手段と、
楽音を発音する発音手段と、
前記設定手段により設定された動作状態に応じて、前記発音手段による楽音の発音を制御する第1の発音制御手段と、
前記外部機器の特定動作を制御する必要があると判断された場合に、前記外部機器が認識可能な音であって、前記特定動作を制御する制御音を、前記発音手段により発音させる第2の発音制御手段と、
を備えた電子機器。
[2]
前記通信手段は、通信ケーブルであり、
前記外部機器の特定動作を制御する必要があるか否かを判定する判定手段を更に備え、
前記第2の発音制御手段は、前記判定手段により前記外部機器の特定動作を制御する必要があると判断された場合に、前記外部機器が認識可能な音であって、前記特定動作を制御する制御音を、前記発音手段により発音させる、
[1]に記載の電子機器。
[3]
前記通信ケーブルは、オーディオケーブルであり、
前記オーディオケーブルを介して受信したオーディオ信号に対応する楽音を、前記発音手段により発音させる第3の発音制御手段を更に備え、
前記設定手段は、前記オーディオケーブルを介して受信したオーディオ信号を変換して得られるデジタルデータに基づいて前記動作状態を設定する、
[2]に記載の電子機器。
[4]
前記判定手段は、前記外部機器による前記通信ケーブルを介した信号の送信動作を制御する必要があるか否かを判定し、
前記第2の発音制御手段は、前記判定手段により前記外部機器の送信動作を制御する必要があると判断された場合に、前記外部機器との間で予め取り決めた音であって、前記送信動作を制御する制御音を、前記発音手段により発音させる、
[2]または[3]に記載の電子機器。
[5]
前記判定手段は、前記外部機器により実行される特性動作の制御の種類を判定し、
前記第2の発音制御手段は、前記判定手段により判定された制御の種類の夫々に対応して、前記外部機器との間で予め取り決めた複数の音の中から、前記判定手段により判定された制御の種類に対応する音を選択して、前記制御音として前記発音手段により発音させる、
[2]乃至[4]のいずれかに記載の電子機器。
[6]
前記判定手段は、前記通信ケーブルを介した信号の受信に関連するエラーを検出し、
前記第2の発音制御手段は、前記エラーに対処するための制御の種類を含む、
[5]に記載の電子機器。
[7]
ユーザに音高を指定する操作を行わせる操作部と、
前記操作部の操作により指定された音高の楽音を、前記発音手段により発音させる第4の発音制御手段と、を更に備える、
[1]乃至[6]のいずれかに記載の電子機器。
[8]
前記第2の発音制御手段は、前記外部機器との間で予め取り決めた音であって、前記操作部の操作により指定可能な音高とは異なる音高の音を、前記制御音として前記発音手段により発音させる、
[7]に記載の電子機器。
[9]
前記第2の発音制御手段は、前記発音手段から発音される楽音に含まれる第1の周波数を避けるようにして決められた第2の周波数の音を、前記制御音として前記発音手段により発音させる、
[1]乃至[8]のいずれかに記載の電子機器。
[10]
前記第2の発音制御手段は、前記楽音の発音に使用されていないMIDI信号のノートナンバーの音を、前記制御音として発音させる、
[9]に記載の電子機器。
[11]
発光部と、
前記外部機器の特定動作を制御する必要があると判断された場合に、特定の発光パターンで前記発光部を発光させる発光制御手段と、を更に備える、
[2]乃至[6]のいずれかに記載の電子機器。
[12]
[1]乃至[11]のいずれかに記載の電子機器である第1の電子機器と、前記外部機器である第2の電子機器とを含む音響システム。
[13]
前記第2の電子機器は、
前記通信手段を介して前記第1の電子機器に前記データを送信するデータ送信手段と、
前記第1の電子機器から発音された音を受音する受音手段と、
前記受音手段により受音した音が、前記第1の電子機器との間で予め取り決めた前記制御音であると判断された場合に、前記制御音に応じて前記特定動作を実行して、前記データ送信手段による前記第1の電子機器への前記データの送信を制御する特定動作制御手段と、を備える、
[12]に記載の音響システム。
[14]
一方向にデータが送信される通信手段を介して外部機器から受信した信号に基づいて設定された動作状態に応じて、発音手段による楽音の発音を制御し、
前記外部機器の特定動作を制御する必要があると判断された場合に、前記外部機器が認識可能な音であって、前記特定動作を制御する制御音を、前記発音手段により発音させる、
電子機器の制御方法。
[15]
コンピュータに、
一方向にデータが送信される通信手段を介して外部機器から受信した信号に基づいて動作状態を設定させ、
前記設定された動作状態に応じて、発音手段による楽音の発音を制御させ、
前記外部機器の特定動作を制御する必要があると判断された場合に、前記外部機器が認識可能な音であって、前記特定動作を制御する制御音を、前記発音手段により発音させる、
電子機器の制御プログラム。