(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下、図面に基づいて本発明の実施形態の例を説明する。
図1は、処理情報実行システム10の機能ブロック図の一例である。以下、本実施形態における端末接続装置を車載機として用いる場合の一例を説明する。
【0013】
処理情報実行システム10は、端末接続装置100と、端末装置102と、サーバ103とを備える。端末接続装置100は、車両101に搭載される、いわゆる車載機である。端末接続装置100は、PC(Personal Computer)、PDA(Personal Digital Assistant)、又はスマートフォン等の電子機器であってもよい。端末装置102は、PC又はスマートフォン等の電子機器である。サーバ103は、例えばサーバーコンピューター等であって、端末装置102や端末接続装置100に対して処理情報を含むデータを送信又は受信する。なお、本実施形態の処理情報実行システム10において、サーバ103及び車両101は必須の構成要素ではない。
【0014】
本実施形態における処理情報実行システム10では、端末接続装置100が有する処理情報が、端末接続装置100の入出力経路を用いて実行されるほか、端末装置102が有する処理情報が、端末接続装置100の入出力経路を用いて実行される。以下、処理情報がアプリケーションであるものとして説明する。
【0015】
入出力経路とは、音声や映像等の情報を入出力する経路である。入出力経路は、マイクやスピーカ等の入力装置又は出力装置毎に用いられる。
【0016】
端末接続装置100は、制御部110と、記憶部120と、通信装置130とを備える。制御部110は、入出力経路に対して適切なアプリケーションを割り当てる処理を制御する。記憶部120は、制御部110の処理に必要な情報を記憶する。通信装置130は、サーバ103や端末装置102等の外部機器との通信を仲介する。
【0017】
制御部110は、表示管理部111と、操作管理部112と、音声管理部113と、通信部114と、入出力経路割当部115とを備える。
【0018】
表示管理部111は、端末接続装置100が備える表示装置に対して、表示画面を表示させる。表示管理部111は、例えば後述するアプリ種別入力画面や、アプリ種別確認画面、又はアプリ種別変更画面等の表示画面を表示装置に対して表示させる。
【0019】
操作管理部112は、操作装置を介した入力等に基づく操作を受け付ける。音声管理部113は、スピーカやマイクを用いた音声情報の入出力を行う。音声管理部113は、音声を入出力するアプリケーションによる入出力の実行を制御する。通信部114は、外部機器との間で通信装置130を用いて情報の送受信を行う。
【0020】
入出力経路割当部115は、入出力経路の共用可否に関する入出力経路共用設定DB、及び入出力経路の使用状況に関する入出力経路使用状況管理DB等に基づいて、入出力経路に対してアプリケーションを割り当てるが、詳しくは後述する。
【0021】
記憶部120は、入出力制御設定記憶部121と、アプリ種別優先度記憶部122と、入出力経路共用設定記憶部123と、入出力経路状態記憶部124と、アプリ記憶部125とを有する。
【0022】
入出力制御設定記憶部121は、アプリケーションの種別であるアプリ種別に対して制御方法や優先度を関連付けた入出力制御設定DB(Database)121Aを記憶する。アプリ種別優先度記憶部122は、起動されているアプリケーションのアプリ種別と優先度とを管理するアプリ種別優先度管理DB122Aを記憶する。入出力経路共用設定記憶部123は、端末接続装置100が備える入出力経路が共用可能であるか否かを示す入出力経路共用設定DB123Aを記憶する。入出力経路状態記憶部124は、入出力経路の使用状態を示す入出力経路使用状況管理DB124Aを記憶する。各DBについては後述する。アプリ記憶部125は、アプリケーションを記憶する。
【0023】
通信装置130は、通信に用いるインターフェイスとして、HDMI(High-Definition Multimedia Interface:登録商標)131と、Bluetooth(登録商標)132と、USB(Universal Serial Bus)133と、無線LAN(Local Area Network)134とを含む。なお、通信装置130に含まれる通信用のインターフェイスは上述の例に限定されず、また上述の例に用いられるインターフェイスのすべてを含むものでなくてもよい。
【0024】
端末装置102は、制御部141と、連携部142と、記憶部143とを備える。制御部141は、端末接続装置100の入出力経路を用いたアプリケーションの実行を制御する。連携部142は、端末接続装置100を含む他の装置と通信を行う。連携部142は、端末接続装置100に対してアプリケーションを特定した処理要求を出力する。記憶部143は、制御部141による処理に必要な情報を記憶するほか、端末装置102において実行されるアプリケーションを記憶する。
【0025】
本実施形態では、端末装置102の連携部142により送信されたアプリケーションの処理要求を端末接続装置100の通信部114が受信すると、表示管理部111によりアプリ種別入力画面が表示され、ユーザによるアプリケーションの種別の入力を受け付ける。入出力経路割当部115は、入力された種別を用いて記憶部120を参照し、該種別と関連付けられた優先度と、該種別に応じた入出力経路に関する情報と、を用いて入出力経路を特定し、特定した入出力経路に対して処理要求に係るアプリケーションを割り当てる。これにより、アプリケーションの種別に応じた入出力経路をアプリケーションの実行に用いることができる。
【0026】
次に、記憶部120に記憶される各情報について説明する。
【0027】
図2は、入出力制御設定DB121Aの一例を示す図である。入出力制御設定DB121Aは、アプリ種別121Aa毎に、制御方法121Abと、割り込み可否121Acと、優先度121Adとを含む。
【0028】
アプリ種別121Aaは、アプリケーションを分類する種別を特定する情報である。アプリ種別には、例えば「外部機器(音声認識)」、「音声認識」、「ナビ」、及び「外部機器(音楽)」等が含まれる。
図2において、「外部機器」の文字列を有するアプリ種別121Aaは、端末装置102で実行されるアプリケーションを示すものであり、それ以外のアプリ種別121Aaは、端末接続装置100で実行されるアプリケーションを示すものである。
【0029】
制御方法121Abは、アプリケーションの実行中に他のアプリケーションの処理要求を受け付けた場合の、処理の制御方法を特定する情報である。制御方法121Abは、例えば「無音割り込み」、「MIX割り込み」、及び「常時」等が含まれる。
【0030】
「無音割り込み」は、アプリ種別121Aaにより特定される種別のアプリケーションを実行し、他のアプリケーションの処理を中断する制御方法である。実行中のアプリケーションの処理が終了すると、他のアプリケーションの処理を再開する。なお、アプリ種別121Aaに係るアプリケーションの実行に伴い、他のアプリケーションの処理を終了するものであってもよい。
【0031】
「MIX割り込み」は、アプリ種別121Aaに係る種別のアプリケーションの処理と、他のアプリケーションの処理とを並行させる制御方法である。例えば、音声出力を伴うアプリケーションの実行中に、他の音声出力を伴うアプリケーションを「MIX割り込み」させると、2つのアプリケーションにより出力される音声が重畳される。
【0032】
「常時」は、アプリ種別121Aaに係る種別のアプリケーションの処理を実行し、他のアプリケーションの処理を終了させる制御方法である。
【0033】
割り込み可否121Acは、アプリ種別121Aaに係る種別のアプリケーションが実行中である場合に、他のアプリケーションの処理の実行が可能か否かを特定する情報である。
【0034】
優先度121Adは、アプリ種別121Aaにより特定される種別のアプリケーションが他の種別のアプリケーションに対して優先的に実行可能か否かを判定するための情報であって、例えば優先度の値が小さいほど優先度が高いと判断される。優先度が高い種別のアプリケーションほど優先的に入出力経路を割り当てられる。また、優先度が高いアプリ種別121Aaと関連する制御方法121Abが、他のアプリ種別121Aaと関連する制御方法121Abよりも優先的に採用される。
【0035】
図3は、アプリ種別優先度管理DB122Aの一例を示す図である。アプリ種別優先度管理DB122Aは、アプリ種別122Aaと、優先度122Abとを含む。アプリ種別122Aaは、アプリケーションの分類を特定する情報であって、入出力制御設定DB121Aのアプリ種別121Aaと同様である。アプリ種別122Aaは、現時点で起動されているアプリケーションの種別である。優先度122Abは、アプリ種別121Aaの優先度であって、入出力制御設定DB121Aの優先度121Adと同様である。
【0036】
図3(A)に示すアプリ種別優先度管理DB122Aの例には、アプリ種別122Aaとして、「外部機器(音声認識)」、「音声認識」、「ナビ」、「音楽」、及び「一般」が含まれているため、該種別のアプリケーションが現在起動中であることが分かる。同様に、
図3(B)に示すアプリ種別優先度管理DB122Aの例を参照すると、「音声認識」、「ナビ」、「外部機器」、「音楽」、及び「一般」の種別のアプリケーションが現在起動中であることが分かる。また、
図3(C)に示すアプリ種別優先度管理DB122Aの例を参照すると、「音声認識」、「ナビ」、「音楽」、「一般」、及び「外部機器(デフォルト)」の種別のアプリケーションが現在起動中であることが分かる。
【0037】
図4は、入出力経路共用設定DB123Aの一例を示す図である。入出力経路共用設定DB123Aは、入出力経路123Aaと、共用可否123Abとを含む。
【0038】
入出力経路123Aaは、端末接続装置100が有する入出力経路を特定する情報である。入出力経路123Aaは、例えば「SPKR−1」、「SPKR−2」、「SPKR−3」、「PHONE」、「MIC−FRONT」、及び「SPKR−SUR」を含む。
【0039】
「SPKR−1」、「SPKR−2」、及び「SPKR−3」は、いずれもスピーカを用いた出力経路を分類したものである。「PHONE」は、フォンジャックを用いた出力経路を示す。「MIC−FRONT」は、マイクを用いた入力経路を示す。「SPKR−SUR」は、サラウンドスピーカを用いた出力経路を示す。以下、「スピーカ」の表記は、サラウンドスピーカでないスピーカの意で用いる。なお、入出力経路は上述の例に限定されない。
【0040】
共用可否123Abは、入出力経路123Aaが複数のアプリケーションで共用可能か否かを特定する情報である。
【0041】
なお、入出力経路123Aaの「MIC−FRONT」に対し、共用可否123Abに「不可」が関連付けられている。これは、例えばアプリケーションとして、車両内のスピーカアレイを活用したアクティブノイズリダクション(特定ノイズの低減)に該入出力経路を用いる場合には、広角の集音特性が得られるよう経路を調整するのに対し、音声認識に該入出力経路を用いる場合には、狭志向性の集音特性が得られるよう経路を調整する必要があるなど、動作するアプリケーションによって、異なる設定が所望される場合があるためである。
【0042】
また、入出力経路123Aaの「PHONE」に対し、共用可否123Abに「不可」が関連付けられているのは、後部座席用イヤホンについて出力経路として「PHONE」を用いる場合に、複数の音源による違和感が生じるのを防ぐためである。
【0043】
図5は、入出力経路使用状況管理DB124Aの一例を示す図である。入出力経路使用状況管理DB124Aは、入出力経路124Aaと、使用可否124Abと、アプリID124Acと、アプリ種別124Adとを含む。
【0044】
入出力経路124Aaは、入出力経路を特定する情報であって、入出力経路共用設定DB123Aの入出力経路123Aaと同様である。使用可否124Abは、入出力経路の使用が可能であるか否かを特定する情報である。例えば入出力経路に物理的な不具合が生じている場合等に、使用可否124Abに使用不可であることを特定する情報が記憶される。
【0045】
アプリID124Acは、入出力経路124Aaを用いてアプリケーションが実行されている場合に、実行しているアプリケーションを特定する識別情報である。アプリ種別124Adは、入出力経路を使用しているアプリケーションの種別を特定する情報である。アプリケーションが実行されていない場合は、アプリID124Ac及びアプリ種別124Adには何も記録されない。
【0046】
図5に示す入出力経路使用状況管理DB124Aには、実行中のアプリケーションのアプリ種別124Adとして、「外部機器(音楽)」、「ナビ」、及び「一般」が含まれている。これは、これらの種別に係るアプリケーションが現時点において実行されていることを示す。なお、これらのアプリ種別を用いて、
図2に示す入出力制御設定DB121Aを参照すると、「ナビ」のアプリ種別121Aaが最も優先度が高いため、該アプリ種別121Aaと関連する制御方法121Abである「MIX割り込み」が制御方法として用いられている。つまり、「外部機器(音楽)」、「ナビ」、及び「一般」の種別のアプリケーションによる出力が重畳されている。
【0047】
図6は、端末接続装置100のハードウェア構成例を示す図である。端末接続装置100は、演算装置11、メモリ12、外部記憶装置13、出力装置14、入力装置15、及び通信装置130を備え、各構成要素はバスにより接続されている。
【0048】
演算装置11はCPU(Central Processing Unit)等の中央演算装置であって、メモリ12又は外部記憶装置13に記録されたプログラムに従って処理を実行する。制御部110を構成する各処理部は、演算装置11がプログラムを実行することにより各々の機能を実現する。
【0049】
メモリ12は、RAM(Random Access Memory)又はフラッシュメモリ等の記憶装置であり、プログラムやデータが一時的に読み出される記憶エリアとして機能する。外部記憶装置13は、例えばHDD(Hard Disk Drive)等、書き込み及び読み出し可能な記憶メディアである。
【0050】
出力装置14は、アプリケーションの実行による出力処理を行う装置であって、例えばLCD(Liquid Crystal Display)等の表示装置等である。出力装置14は、スピーカ、サラウンドスピーカ、及びフォンジャックを含む。入力装置15は、ユーザーからの入力操作を受け付ける装置であり、例えばタッチパネル、キーボード、マウス、及びマイク等である。通信装置130は先述の通りである。他に、端末接続装置100は、CD(Compact Disk)やDVD(Digital Versatile Disk)等の可搬性のメディアから情報を入出力する装置である図示しない記憶媒体駆動装置を備えていてもよい。
【0051】
記憶部120は、メモリ12又は外部記憶装置13によりその機能が実現される。また、記憶部120は、ネットワーク上の記憶装置によってその機能が実現されてもよい。
【0052】
なお、端末接続装置100の各構成要素の処理は、1つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。また、端末接続装置100の各構成要素の処理は、1つのプログラムで実現されてもよいし、複数のプログラムで実現されてもよい。
【0053】
端末装置102は、端末接続装置100と同様のハードウェア構成を備えるため、端末装置102のハードウェア構成については、説明を省略する。
【0054】
次に、処理情報実行システム10において実行される入出力経路割当処理の動作について説明する。
【0055】
図7は、入出力経路割当処理の流れを示すフローチャートである。本処理は、端末接続装置100が起動を開始すると開始される。
【0056】
まず、入出力経路割当部115は、入出力経路の使用可否を特定する(ステップS11)。具体的には、入出力経路割当部115は、入出力経路に生じた物理的な不具合等の事象を検出し、不具合を検出した入出力経路を使用不可とし、それ以外の入出力経路を使用可能として特定する。
【0057】
次に、入出力経路割当部115は、入出力経路毎に、使用可否と、アプリIDと、アプリ種別とを関連付けて入出力経路使用状況管理DB124Aを生成する(ステップS12)。実行中のアプリケーションのアプリID及びアプリ種別は、アプリケーションの処理要求時等に入出力経路と関連付けられて、記憶部の図示しない領域に予め記憶されている。入出力経路割当部115は、入出力経路共用設定DB123Aに記憶された入出力経路毎に、ステップS11で特定された使用可否と、該入出力経路を使用しているアプリケーションを特定するアプリIDと、アプリ種別とを特定する。入出力経路割当部115は、特定した情報を用いて、入出力経路使用状況管理DB124Aを生成する。
【0058】
次に、通信部114は、外部機器と接続を開始しているか否かを判定する(ステップS13)。通信部114は、外部機器との接続を検知する。通信部114は、通信装置130のいずれかに外部機器が接続されている場合に、接続を開始していると判定する。
【0059】
通信部114が、外部機器と接続を開始していると判定しない場合(ステップS13で「NO」の場合)、通信部114は、処理をステップS16に進める。
【0060】
通信部114が、外部機器と接続を開始していると判定した場合(ステップS13で「YES」の場合)、通信部114は、外部機器の種別を特定する(ステップS14)。通信部114は、接続している外部機器から受信した情報に基づいて、外部機器の種別を特定する。例えば通信装置130としてBluetooth132を介して外部機器と接続している場合、通信部114は、外部機器から受け付けた情報からプロファイルを特定することにより、外部機器の種別を特定する。外部機器の種別は、例えばスマートフォン、PC、又はヘッドホン等の分類である。
【0061】
次に、通信部114は、外部機器の種別に応じて使用可否を設定する(ステップS15)。外部機器の種別によって、使用される入出力経路が一意に定まる場合がある。この場合、記憶部120の図示しない領域には、外部機器の種別と特定の入出力経路とが予め関連付けられて記憶されている。通信部114は、ステップS14で特定した外部機器の種別を用いて該領域を参照し、関連付けられた特定の入出力経路を使用可能な入出力経路、それ以外の入出力経路を使用不可の入出力経路とし、入出力経路使用状況管理DB124Aを更新する。なお、特定した外部機器の種別が入出力経路を特定しない場合は、通信部114は本ステップでは特段の処理を行わず、ステップS16に処理を進める。
【0062】
次に、入出力経路割当部115は、起動対象のアプリケーションがあるか否かを判定する(ステップS16)。具体的には、入出力経路割当部115は、操作管理部112に問合せ、処理要求のあったアプリケーションの存在を検出した場合に、起動対象のアプリケーションがあると判定する。
【0063】
なお、処理要求には、アプリケーションを特定する情報が含まれる。処理要求により特定されるアプリケーションは、端末装置102の記憶部143に記憶されたアプリケーションであってもよいし、端末接続装置100のアプリ記憶部125に記憶されたアプリケーションであってもよい。
【0064】
以下、ステップS16において検出された、処理要求に含まれるアプリケーションを、「入力アプリケーション」として説明する。入力アプリケーションがある場合、入出力経路割当部115は、ステップS16において入力アプリケーションのアプリIDを特定する。
【0065】
入出力経路割当部115が、起動対象のアプリケーションがあると判定しない場合(ステップS16で「NO」の場合)、入出力経路割当部115は、処理をステップS13に戻す。
【0066】
入出力経路割当部115が、起動対象のアプリケーションがあると判定する場合(ステップS16で「YES」の場合)、入出力経路割当部115は、アプリ起動処理を実行する(ステップS17)。アプリ起動処理については後述するが、本処理において、所定の条件を満たす場合に、実行対象となる入出力経路に入力アプリケーションが割り当てられ、入力アプリケーションが実行される。
【0067】
次に、入出力経路割当部115は、起動したアプリケーションに割り当てた入出力経路に関して、入出力経路状態記憶部124に情報を登録する(ステップS18)。入出力経路割当部115は、ステップS17で起動したアプリケーションを割り当てた入出力経路と、起動したアプリケーションのアプリIDと、アプリ種別と、ステップS11で特定した使用可否を示す情報とを、入出力経路使用状況管理DB124Aに登録する。
【0068】
また、入出力経路割当部115は、起動したアプリケーションのアプリ種別と、入出力制御設定DB121Aにおいて該アプリ種別と関連する優先度121Adとを用いて、アプリ種別優先度管理DB122Aを生成する。
【0069】
なお、ステップS17でアプリケーションが起動されない場合は、本ステップでは入出力経路状態記憶部124及びアプリ種別優先度記憶部122に情報が登録されない。出力経路割当判断部は、その後処理をステップS13に戻す。
【0070】
また、ステップS18において、入出力経路状態記憶部124に情報が登録された後、新たにアプリケーションの処理要求を入出力経路割当部が検出した場合には、ステップS16からステップS18の処理が繰り返される。
【0071】
図8は、アプリケーション起動処理の流れを示すフローチャート(その1)である。本処理は、
図7に示す入出力経路割当処理のステップS17の処理をより詳細に説明したものである。
【0072】
まず、入出力経路割当部115は、アプリ種別入力画面1220に対して入力されたアプリ種別を取得する(ステップS1701)。具体的には、表示管理部111によりアプリ種別入力画面1220が表示装置に表示され、操作管理部112がアプリ種別入力画面1220に対するアプリ種別の入力を受け付けると、入出力経路割当部115は入力されたアプリ種別を取得する。
【0073】
図10は、アプリ種別入力画面1220及びアプリ種別確認画面1230の一例を示す図である。
図10(A)はアプリ種別入力画面1220の一例を、
図10(B)はアプリ種別確認画面1230の一例を各々示す。アプリ種別入力画面1220は、入出力制御設定DB121Aのアプリ種別121Aaに含まれるアプリ種別を選択可能に表示する画面である。アプリ種別入力画面1220は、アプリ種別入力領域1221と、アプリ種別ボタン1222〜1225とを含む。なお、アプリ種別入力画面1220は、アプリ種別を示す文字列の直接入力を受け付けることにより、アプリ種別の入力を受け付けるものであってもよい。アプリ種別入力画面1220においてアプリ種別が入力されると、表示管理部111は、表示画面をアプリ種別確認画面1230に遷移させる。
【0074】
アプリ種別確認画面1230は、メッセージ表示領域1231を含む。メッセージ表示領域1231には、アプリ種別入力画面1220において入力されたアプリ種別を示す文字列が表示される。
【0075】
説明を
図8に戻す。次に、入出力経路割当部115は、入力アプリケーションの入出力経路を特定する(ステップS1702)。なお、記憶部120の図示しない領域には、アプリ種別に応じた入出力経路の候補を示す経路情報が記憶されている。
【0076】
図11は、経路情報の概要を示す図である。経路情報には、アプリ種別に応じてアプリケーションの入出力経路が一意に関連付けられている。入出力経路割当部115は、ステップS1701で取得したアプリ種別を用いて経路情報を参照し、関連する入出力経路を特定する。
【0077】
図8に説明を戻す。次に、入出力経路割当部115は、ステップS1702で特定した入出力経路が使用可能であるか否かを判定する(ステップS1704)。入出力経路割当部115は、ステップS1702で特定した入出力経路を示す情報を用いて入出力経路使用状況管理DB124Aを参照し、使用可否124Abが使用可能であることを示す情報であるか否かを判定する。
【0078】
入出力経路割当部115が、特定した入出力経路が使用可能であると判定しない場合(ステップS1704で「NO」の場合)、入出力経路割当部115は、本フローチャートの処理を終了する。次に、
図7に示すステップS18に処理が進められる。
【0079】
入出力経路割当部115が、特定した入出力経路が使用可能であると判定する場合(ステップS1704で「YES」の場合)、入出力経路割当部115は、ステップS1702で特定した入出力経路が共用不可であり、かつ競合するか否かを判定する(ステップS1705)。具体的には、入出力経路割当部115は、特定した入出力経路を示す情報を用いて入出力経路共用設定DB123Aを参照し、共用可否123Abが共用不可であることを示すか否かを特定する。
【0080】
また、入出力経路割当部115は、特定した入出力経路を示す情報を用いて入出力経路使用状況管理DB124Aのアプリ種別124Adを参照し、該入出力経路を使用している他のアプリケーションがあるか否かを特定する。入出力経路割当部115は、該入出力経路を使用している他のアプリケーションがある場合に、該入出力経路が競合すると判断する。
【0081】
以下、入出力経路が競合する場合に、該入出力経路を使用中の他のアプリケーションを「競合アプリケーション」として説明する。競合アプリケーションがある場合、ステップS1704において、入出力経路割当部115は、参照したアプリ種別124Adを競合アプリケーションのアプリ種別として特定する。
【0082】
入出力経路割当部115が、特定した入出力経路が共用不可であり、かつ競合すると判定する場合(ステップS1705で「YES」の場合)、入出力経路割当部115は、競合アプリケーションの優先度が入力アプリケーションの優先度よりも高いか否かを判定する(ステップS1707)。入出力経路割当部115は、競合アプリケーションのアプリ種別を示す情報と、ステップS1701で取得した入力アプリケーションとアプリ種別を示す情報と、を用いて入出力制御設定DB121Aを参照し、各々のアプリ種別に関連する優先度121Adを特定する。
【0083】
入出力経路割当部115は、入力アプリケーションの種別と対応する優先度と、競合アプリケーションの種別と対応する優先度とを比較し、競合アプリケーションの優先度が入力アプリケーションの優先度より高いか否かを判定する。
【0084】
入出力経路割当部115が、競合アプリケーションの優先度が入力アプリケーションの優先度よりも高いと判定する場合(ステップS1707で「YES」の場合)、競合アプリケーションの終了是非を利用者に確認する(ステップS1708)。入出力経路割当部115は、競合アプリケーションを終了してもよいか否かの選択の入力を受け付ける図示しない表示画面を表示装置に表示するよう、表示管理部111に通知する。
【0085】
次に、入出力経路割当部115は、終了が許可されたか否かを判定する(ステップS1709)。入出力経路割当部115は、ステップS1708で表示した画面に対する入力に基づいて、終了が許可されたか否かを判定する。
【0086】
入出力経路割当部115が、終了が許可されたと判定した場合(ステップS1709で「YES」の場合)、入出力経路割当部115は、競合アプリケーションを終了する(ステップS1710)。
【0087】
次に、入出力経路割当部115は、ステップS1702で特定した入出力経路に入力アプリケーションを割り当て、入力アプリケーションを実行する(ステップS1711)。その後、入出力経路割当部115は、本フローチャートの処理を終了する。次に、
図7に示すステップS18に処理が進められる。
【0088】
入出力経路割当部115が、終了が許可されたと判定しない場合(ステップS1709で「NO」の場合)、入出力経路割当部115は、入力アプリケーションが起動できなかった旨のメッセージを表示する(ステップS1712)。その後、入出力経路割当部115は、本フローチャートの処理を終了する。次に、
図7に示すステップS18に処理が進められる。
【0089】
ステップS1707において、入出力経路割当部115が、競合アプリケーションの優先度が入力アプリケーションの優先度よりも高いと判定しない場合(ステップS1707で「NO」の場合)、入出力経路割当部115は、競合アプリケーションを終了する(ステップS1713)。なお、入力アプリケーションのアプリ種別が競合アプリケーションのアプリ種別と一致する場合は、優先度は同一であるため、本ステップにおいて競合アプリケーションが終了される。
【0090】
次に、入出力経路割当部115は、ステップS1702で特定した入出力経路に入力アプリケーションを割り当て、入力アプリケーションを実行する(ステップS1714)。その後、入出力経路割当部115は、本フローチャートの処理を終了する。次に、
図7に示すステップS18に処理が進められる。
【0091】
ステップS1705において、入出力経路割当部115が、入出力経路が共用不可であり、かつ競合すると判定しない場合(ステップS1705で「NO」の場合)、入出力経路割当部115は、処理を
図9に示すステップS1715に進める。
【0092】
図9は、アプリケーション起動処理の流れを示すフローチャート(その2)である。入出力経路割当部115は、競合アプリケーションがあるか否かを判定する(ステップS1715)。入出力経路割当部115は、先述のステップS1705において参照したアプリ種別124Adを用いて、ステップS1702で特定した入出力経路を使用している他のアプリケーションがあるか否かを特定する。入出力経路割当部115は、該入出力経路を使用している他のアプリケーションがある場合に、該入出力経路が競合すると判断する。
【0093】
入出力経路割当部115が、競合アプリケーションがあると判定する場合(ステップS1715で「YES」の場合)、入出力経路割当部115は、競合アプリケーションの優先度が入力アプリケーションの優先度よりも高いか否かを判定する(ステップS1716)。ステップS1716で行われる処理は、ステップS1707と同様であるため、説明を省略する。
【0094】
入出力経路割当部115が、競合アプリケーションの優先度が入力アプリケーションの優先度よりも高いと判定する場合(ステップS1716で「YES」の場合)、入出力経路割当部115は、競合アプリケーションの割り込み可否が割り込み可であるか否かを判定する(ステップS1717)。具体的には、入出力経路割当部115は、ステップS1704で特定した競合アプリケーションのアプリ種別を用いて入出力制御設定DB121Aを参照し、アプリ種別121Aaと関連する割り込み可否121Acを特定する。入出力経路割当部115は、特定した割り込み可否121Acが示す情報に基づいて、競合アプリケーションが割り込み可であるか否かを判定する。
【0095】
入出力経路割当部115は、競合アプリケーションの割り込み可否が割り込み可であると判定する場合(ステップS1717で「YES」の場合)、入出力経路割当部115は、特定した入出力経路を入力アプリケーションに割り当て、競合アプリケーションの制御方法に基づいて入力アプリケーションを制御する(ステップS1718)。
【0096】
入出力経路が共用可能であり、かつ優先度の高い競合アプリケーションのアプリ種別が割り当て可であるため、入出力経路割当部115は、特定した入出力経路を入力アプリケーションと競合アプリケーションとで併用する。そのため、入出力経路割当部115は、ステップS1702で特定した入出力経路に入力アプリケーションを割り当てる。
【0097】
入出力経路割当部115は、優先度の高い競合アプリケーションのアプリ種別を用いて入出力制御設定DB121Aを参照し、アプリ種別121Aaと関連する制御方法121Abを特定する。入出力経路割当部115は、特定した制御方法に基づいて入力アプリケーションを実行する。その後、入出力経路割当部115は、本フローチャートの処理を終了する。次に、
図7に示すステップS18に処理が進められる。
【0098】
例えば、競合アプリケーションのアプリ種別と関連する制御方法が「無音割り込み」である場合、入出力経路割当部115は、入力アプリケーションの実行を中断させ、競合アプリケーションの実行を続ける。競合アプリケーションの実行が終了すると、入力アプリケーションの実行が再開される。
【0099】
また例えば、制御方法が「常時」である場合、入出力経路割当部115は、入力アプリケーションの実行を中止し、競合アプリケーションの実行を続ける。結果として、入力アプリケーションは起動されない。
【0100】
また例えば、制御方法が「MIX割り込み」である場合、入出力経路割当部115は、競合アプリケーションの実行と併せて、入力アプリケーションを実行する。例えば、特定した入出力経路が「SPKR_1」である場合、入力アプリケーションの実行に基づく音声と、競合アプリケーションの実行に基づく音声とが該出力経路から重畳して出力される。
【0101】
なお、制御方法が「MIX割り込み」である場合であって、ステレオによる出力に用いる経路を出力経路とする場合、入力アプリケーションの音声の出力に用いる音像定位と、競合アプリケーションの音声の出力に用いる音像定位とを異ならせて、出力を重畳させてもよい。具体的には、一方のスピーカにおいて、入力アプリケーションの出力の音圧を競合アプリケーションの出力の音圧よりも高く出力する。また、他方のスピーカにおいて、競合アプリケーションの出力の音圧を入力アプリケーションの音圧よりも高く出力する。これにより、入力アプリケーションによる音声と競合アプリケーションによる音声とが異なる音像定位で出力されるため、混合された音声を聞くことによるユーザの混乱を防ぐことができる。
【0102】
入出力経路割当部115は、競合アプリケーションの割り込み可否が割り込み可であると判定しない場合(ステップS1717で「NO」の場合)、入出力経路割当部115は、競合アプリケーションの終了是非を利用者に確認する(ステップS1719)。ステップS1719からステップS1723までの間に行われる処理は、ステップS1708からステップS1712までの間に行われる処理と同様であるため、説明を省略する。
【0103】
ステップS1716において、入出力経路割当部115が、競合アプリケーションの優先度が入力アプリケーションの優先度よりも高いと判定しない場合(ステップS1716で「NO」の場合)、入出力経路割当部115は、ステップS1702で特定した入出力経路に入力アプリケーションを割り当て、入力アプリケーションの制御方法に基づいて入力アプリケーションを実行する(ステップS1724)。その後、入出力経路割当部115は、本フローチャートの処理を終了する。次に、
図7に示すステップS18に処理が進められる。
【0104】
ステップS1715において、入出力経路割当部115が、競合アプリケーションがあると判定しない場合(ステップS1715で「NO」の場合)、入出力経路割当部115は、ステップS1702で特定した入出力経路に入力アプリケーションを割り当て、入力アプリケーションを実行する(ステップS1725)。その後、入出力経路割当部115は、本フローチャートの処理を終了する。次に、
図7に示すステップS18に処理が進められる。
【0105】
なお、
図11に示す経路情報は、アプリ種別と入出力経路が1対1で対応している。しかしながら、1つのアプリ種別に対して複数の入出力経路が対応付けられていてもよい。換言すれば、1つのアプリ種別に係るアプリケーションが複数の入出力経路を用いるものであってもよい。その際は、入力アプリケーションのアプリ種別と対応する各々の入出力経路について、
図7及び
図8に示す処理を実行する。
【0106】
例えば、アプリ種別が「音声認識」であるアプリケーションは、入出力経路として、「MIC−FRONT」、「SPKR_1」、「SPKR_2」、「SPKR_3」、及び「SPKR−SUR」と関連付けられるものであってもよい。この場合、該入出力経路の各々がステップS1702において順に特定され、
図7及び
図8に示す所定の場合に該アプリケーションが各々の入出力経路に割り当てられる。
【0107】
付言すると、アプリ種別が「音声認識」であるアプリケーションは、入力された音声に基づいて処理を行うものであり、基本的に音声出力を伴うものではない。にも関わらず、音声出力に用いる出力経路である「MIC−FRONT」、「SPKR_1」、「SPKR_2」、及び「SPKR_3」が経路情報において関連付けられているのは、これらの出力経路から音声が出力されるのを防ぐためである。何故なら、該出力経路を用いて他のアプリケーションまたは当該アプリケーションから音声が出力されれば、音声の入力に伴う処理の精度が低下してしまう。これを防ぐために、本例のように、音声出力を伴わないアプリ種別に対しても、出力経路が割り当てられていてもよい。
【0108】
また、本実施形態では、
図8のステップS1701において、起動対象の入力アプリケーションが検知された場合に、アプリ種別入力画面1220が表示された。しかしながら、ステップS13において、外部機器との接続が検知されたタイミングで、アプリ種別入力画面1220が表示されるものであってもよい。この場合、通信部114が外部機器との接続を検知すると、表示管理部111に通知を行う。表示管理部111は、通知に基づいて表示装置にアプリ種別入力画面1220を表示する。
【0109】
本実施形態により、入出力経路に競合が生じる場合においても、予め定められた優先度に基づいて入出力経路に対してアプリケーションの割り当てを行うことができる。また、アプリ種別によっては、他のアプリケーションと入出力経路を共有することができる。この場合についても、アプリ種別に応じた入出力処理を適切に行うことができる。
【0110】
(第1の変形例)
次に、第1の変形例について説明する。上述の実施形態では、経路情報において、アプリ種別に対して1又は複数の入出力経路が一意に定まっていた。第1の変形例では、経路情報において、アプリ種別に対して、入出力経路の候補となる1又は複数の入出力経路が予め定められており、入出力割当経路判断部は該入出力経路の中からアプリケーションを割り当てる候補の経路である候補経路を特定する。以下、上述の実施形態と異なる点について説明し、重複する点については説明を省略する。
【0111】
図12は、第1の変形例におけるアプリケーション起動処理の流れを示すフローチャートである。ステップS1701の処理は、上述の実施形態と同様である。
【0112】
次のステップにおいて、入出力経路割当部115は、経路情報のうち1つの入出力経路を候補経路として特定する(ステップS1703)。上述の実施形態と同様に、入出力経路割当部115は、ステップS1701で取得したアプリ種別を用いて経路情報を参照する。入出力経路割当部115は、アプリ種別に応じた経路情報の中から、1つの候補経路を特定する。
【0113】
図13は、第1の変形例における経路情報の一例を示す図である。
図13に示す経路情報は、1つのアプリ種別に対して1又は複数の入出力経路を含む1行の系列情報が関連付けられている。所定のアプリ種別に係るアプリケーションを実行する際には、1つの系列情報につき1つの入出力経路が特定される。入出力経路割当部115は、複数の入出力経路が1つの系列情報に含まれる場合、所定の順番で入出力経路を特定する。
【0114】
説明を
図12に戻す。次に、入出力経路割当部115は、処理をステップS1704に進める。ステップS1704からステップS1705の間に行われる処理は、上述の実施形態と同様である。
【0115】
ステップS1705において、入出力経路割当部115が、入出力経路が共用不可かつ競合していると判定する場合(ステップS1705で「YES」の場合)、入出力経路割当部115は、特定していない入出力経路がないか否かを判定する(ステップS1706)。入出力経路割当部115は、経路情報中、ステップS1701で特定したアプリ種別と関連する入出力経路のうち、ステップS1703で未だ候補経路として特定していない入出力経路がないか否かを判定する。
【0116】
入出力経路割当部115が、特定していない入出力経路がないと判定する場合(ステップS1706で「YES」の場合)、入出力経路割当部115は、処理をステップS1707に進める。ステップS1707から先の処理は、上述の実施形態と同様である。
【0117】
入出力経路割当部115が、特定していない入出力経路がないと判定しない場合(ステップS1706で「NO」の場合)、入出力経路割当部115は、処理をステップS1703に戻す。ステップS1703では、まだ特定されていない入出力経路が次の候補経路として特定される。
【0118】
なお、上述の実施形態と同様に、本変形例においてもアプリケーションが複数の入出力経路を用いるものであってもよい。この場合、例えば経路情報は、1つのアプリ種別に対し、アプリケーションの実行に用いる入出力経路の数の系列情報が関連付けられる。各々の系列情報は、1又は複数の入出力経路を候補として有する。端末接続装置100は、各々の系列情報について、
図12及び
図9に示すアプリケーション起動処理を実行する。
【0119】
本変形例によれば、複数の入出力経路のうちいずれかの入出力経路を用いてアプリケーションが実行可能である場合に、ある入出力経路が共有不可かつ競合する際には、他の入出力経路を候補経路として特定する。これにより、アプリケーションの実行が可能である入出力経路が複数ある場合に、共有不可でない入出力経路にアプリケーションを割り当てるなど、より柔軟にアプリケーションの入出力を行うことができる。
【0120】
(第2の変形例)
次に、第2の変形例について説明する。第2の変形例では、実行中のアプリケーションについて、端末装置102から種別の変更を受け付ける場合の処理である。以下、上述の実施形態と異なる点について説明し、重複する点については説明を省略する。
【0121】
図14は、第2の変形例における種別変更処理の流れを示すフローチャートである。本フローチャートは、端末装置102内のアプリケーションの実行中に、該アプリケーションについて端末接続装置100又は端末装置102が種別の変更指示の入力を受け付けると、処理が開始される。
【0122】
まず、入出力経路割当部115は、表示管理部112に対してアプリ種別変更画面1240を表示させる(ステップS2701)。操作管理部112が種別の変更指示を受け付けると、入出力経路割当部115に通知を行う。入出力経路割当部115は、表示管理部111に対してアプリ種別変更画面1240を表示装置を介して出力させる。
【0123】
図15は、アプリ種別変更画面1240の一例を示す図である。アプリ種別変更画面1240は、アプリ種別を選択可能に表示する画面である。アプリ種別変更画面1240は、アプリ種別入力領域1241と、アプリ種別ボタン1242〜1245とを含む。アプリ種別変更画面1240が、文字列の入力によりアプリ種別の変更を受け付けてもよい点は、アプリ種別入力画面1220に対する入力と同様である。アプリ種別変更画面1240においてアプリ種別が入力されると、アプリ種別確認画面に表示画面が遷移する。アプリ種別確認画面は、
図10(B)に示す画面と同様である。
【0124】
説明を
図14に戻す。次に、入出力経路割当部115は、アプリ種別変更画面1240に対するアプリ種別の入力を受け付ける(ステップS2702)。
【0125】
次に、入出力経路割当部115は、処理をステップS2703に進める。ステップS2703からステップS2714までの間に行われる処理、及びステップS2705において「NO」の場合に行われる処理については、
図8に示すステップS1702からステップS1714の間に行われる処理、及び
図9のフローチャートに示す処理と同様であるため、説明を省略する。
【0126】
本変形例によれば、アプリケーションの実行中に他の入出力経路を用いて処理を行うことを望む場合等に、アプリ種別の変更を受け付けることにより、ユーザーの意図に応じた入出力経路に対するアプリケーションの割り当てを行うことができる。これにより、ユーザーの意思に応じて柔軟に入出力経路に対してアプリケーションを割り当てることができる。
【0127】
(第3の変形例)
次に、第3の変形例について説明する。上述の実施形態では、アプリ種別を取得するためにアプリ種別入力画面1220を表示し、該画面に入力された情報からアプリ種別を取得した。本変形例では、端末装置102から送信されるアプリケーションの処理要求に、アプリ種別を特定する情報が含まれている。端末接続装置100は、端末装置102から取得した処理要求を参照して自動的にアプリ種別を特定する。以下、上述の実施形態と重複する点については説明を省略する。
【0128】
図16は、第3の変形例における入出力経路割当処理の流れを示すフローチャートである。
【0129】
まず、入出力経路割当部115は、入出力経路の使用可否を特定する(ステップS31)。ステップS31からステップS36までの間に行われる処理は、ステップS11からステップS16までの間に行われる処理と同様である。
【0130】
次に、入出力経路割当部115は、処理要求を解析し、アプリ種別を取得する(ステップS37)。
【0131】
次に、入出力経路割当部115は、表示管理部111を介して、アプリ種別通知画面1250を表示させる(ステップS38)。アプリ種別通知画面1250は、端末装置102から取得したアプリ種別をユーザーに通知するための表示画面である。
【0132】
図17は、アプリ種別通知画面1250の一例を示す図である。アプリ種別通知画面1250は、メッセージ表示領域1251を含む。メッセージ表示領域1251には、ステップS37で取得したアプリ種別を示す文字列が表示される。
【0133】
説明を
図16に戻す。その後、ステップS39からステップS40までの間に行われる処理は、上述の
図7に示すステップS17からステップS18までの間に行われる処理と同様であるため、説明を省略する。
【0134】
なお、本変形例のステップS40において、起動したアプリケーションに関する情報を入出力経路状態記憶部124に登録した後、新たにアプリケーションの処理要求が検出された場合には、ステップS36からステップS40の処理が繰り返される点は、上述の実施形態と同様である。その際、新たに処理要求を受け付けたアプリケーションについて、ステップS37において自動的にアプリ種別が取得される。
【0135】
また、本変形例では、入出力経路割当部115は、通信部114を介して端末装置102に対してアプリ種別を問い合わせ、アプリ種別を特定する情報を含む応答を受信することにより、アプリ種別を取得してもよい。これにより、ユーザーからのアプリ種別の入力を受け付ける手間が省け、効率性が向上する。
【0136】
以上、本発明に係る各実施形態及び変形例の説明を行ってきたが、本発明は、上記した実施形態の一例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態の一例は、本発明を分かり易くするために詳細に説明したものであり、本発明は、ここで説明した全ての構成を備えるものに限定されない。また、ある実施形態の一例の構成の一部を他の一例の構成に置き換えることが可能である。また、ある実施形態の一例の構成に他の一例の構成を加えることも可能である。また、各実施形態の一例の構成の一部について、他の構成の追加・削除・置換をすることもできる。また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、図中の制御線や情報線は、説明上必要と考えられるものを示しており、全てを示しているとは限らない。ほとんど全ての構成が相互に接続されていると考えてもよい。
【0137】
また、上記の処理情報実行システム10の機能構成は、理解を容易にするために、主な処理内容に応じて分類したものである。構成要素の分類の仕方や名称によって、本願発明が制限されることはない。処理情報実行システム10の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、1つの構成要素がさらに多くの処理を実行するように分類することもできる。