以下、本発明の実施の形態について、図面を参照しながら説明する。図1は、本発明に係るネットワークシステム1の全体の構成を表している。図1に示されるように、ネットワークシステム1には、放送局8が所定の場所に設置されており、この放送局8は、所定の範囲内において地上波ディジタルワンセグ放送波や地上波ディジタル放送波、地上波ディジタルラジオ放送波を送信する。本発明に係る情報処理装置に適用可能な携帯電話機2は、内蔵される地上波ディジタルワンセグ・ラジオ受信部(例えば図4の地上波ディジタルワンセグ・ラジオ受信部49)を介して、この放送局8からの地上波ディジタルワンセグ放送波や地上波ディジタル放送波、地上波ディジタルラジオ放送波を受信する。
また、ネットワークシステム1には、固定無線局である基地局3が設置されており、この基地局3には、移動無線局である携帯電話機2が例えばW−CDMA(Wideband-Code Division Multiple Access)と呼ばれる符号分割多元接続方式によって無線接続される。
また基地局3は、有線回線を介して公衆回線網4に接続されており、公衆回線網4には、インターネットサービスプロバイダのアクセスサーバ5が接続されている。アクセスサーバ5には、ネットワーク6を介して放送用コンテンツサーバ7などが接続されている。
携帯電話機2の近傍には、本発明に係る端末装置として適用可能なヘッドセット9が配置されている。ヘッドセット9は、携帯電話機2から無線通信を用いて転送されたオーディオデータ(地上波ディジタルワンセグ放送波や地上波ディジタルラジオ放送波によるオーディオデータも含む)を受信し、リアルタイムに再生することができる。なお、ヘッドセット9には、携帯電話機2に対して無線通信を介してリモート操作することが可能なリモコン10が設けられている。なお、リモコン10やサイドキー16などような操作メディアを「外部操作部」と定義する。
図2は、本発明に係る情報処理装置として適用可能な携帯電話機2の外観の構成を表している。なお、図2[A]は、携帯電話機2を約180度に見開いたときの正面から見た外観の構成を表しており、図2[B]は、携帯電話機2を見開いたときの側面から見た外観の構成を表している。
図2[A]および[B]に示されるように、携帯電話機2は、中央のヒンジ部11を境に第1の筐体12と第2の筐体13とがヒンジ結合されており、ヒンジ部11を介して矢印X方向に折り畳み可能に形成される。携帯電話機2の内部の所定の位置には、送受信用のアンテナ(後述する図4のアンテナ44)が設けられており、内蔵されたアンテナを介して基地局3との間で電波を送受信する。
第1の筐体12には、その表面に「0」乃至「9」の数字キー、発呼キー、リダイヤルキー、終話・電源キー、クリアキー、および電子メールキーなどの操作キー14が設けられており、操作キー14を用いて各種指示を入力することができる。
第1の筐体12には、操作キー14として上部に十字キーと確定キーが設けられており、ユーザが十字キーを上下左右方向に操作することにより当てられたカーソルを上下左右方向に移動させることができる。具体的には、第2の筐体13に設けられた液晶ディスプレイ17に表示されている電話帳リストや電子メールのスクロール動作、簡易ホームページのページ捲り動作および画像の送り動作などの種々の動作を実行する。
また、確定キーを押下することにより、種々の機能を確定することができる。例えば第1の筐体12は、ユーザによる十字キーの操作に応じて液晶ディスプレイ17に表示された電話帳リストの複数の電話番号の中から所望の電話番号が選択され、確定キーが第1の筐体12の内部方向に押圧されると、選択された電話番号を確定して電話番号に対して発呼処理を行う。
さらに、第1の筐体12には、十字キーと確定キーの左隣に電子メールキーが設けられており、電子メールキーが第1の筐体12の内部方向に押圧されると、メールの送受信機能を呼び出すことができる。十字キーと確定キーの右隣には、ブラウザキーが設けられており、ブラウザキーが第1の筐体12の内部方向に押圧されると、Webページのデータを閲覧することが可能となる。なお、十字キーと確定キーの左右隣に設けられた電子メールキーおよびブラウザキーは、液晶ディスプレイ17に表示される画面により例えば「Yes」や「No」などの種々の機能をもつことが可能であるため、それぞれ、soft1キーおよびsoft2キーと呼ばれる。
また、第1の筐体12には、操作キー14の下部にマイクロフォン15が設けられており、マイクロフォン15によって通話時のユーザの音声を集音する。また、第1の筐体12には、携帯電話機2の操作を行うサイドキー16が設けられている。
一方、第2の筐体13には、その正面に液晶ディスプレイ17(メインディスプレイ)が設けられており、電波の受信状態、電池残量、電話帳として登録されている相手先名や電話番号及び送信履歴等の他、電子メールの内容、簡易ホームページ、CCD(Charge Coupled Device)カメラ(後述する図3のCCDカメラ20)で撮像した画像、外部のコンテンツサーバ(図示せず)より受信したコンテンツ、メモリカード(後述する図4のメモリカード46)に記憶されているコンテンツを表示することができる。また、液晶ディスプレイ17の上部の所定の位置にはスピーカ18が設けられており、これにより、ユーザは音声通話することが可能である。
図3は、本発明に係る情報処理装置として適用可能な携帯電話機2の他の外観の構成を表している。図3の携帯電話機2の状態は、図2の携帯電話機2の状態から矢印X方向に回動させた状態である。なお、図3[A]は、携帯電話機2を閉じたときの正面から見た外観の構成を表しており、図3[B]は、携帯電話機2を閉じたときの側面から見た外観の構成を表している。
第2の筐体13の上部には、CCDカメラ20が設けられており、これにより、所望の撮影対象を撮像することができる。CCDカメラ20の下部には、サブディスプレイ21が設けられており、現在のアンテナの感度のレベルを示すアンテナピクト、携帯電話機2の現在の電池残量を示す電池ピクト、現在の時刻などが表示される。
サブディスプレイ21の下部には、さらに、静電タッチパッド23が設けられる。静電タッチパッド22は、見かけ上一枚のタッチパッドになっているが、図示せぬセンサが複数個所に設けられており、ユーザがセンサの付近をタッチすると、センサがそれを検知し、巻戻し機能、早送り機能、音量ダウン動作、音量アップ動作、再生動作、および一時停止動作などが実行される。
図4は、本発明に係る情報処理装置として適用可能な携帯電話機2の内部の構成を表している。図4に示されるように、携帯電話機2は、第1の筐体12及び第2の筐体13の各部を統括的に制御する主制御部31に対して、電源回路部32、操作入力制御部33、画像エンコーダ34、カメラインタフェース部35、LCD(Liquid Crystal Display)制御部36、多重分離部38、変復調回路部39、音声コーデック40、および記憶部47がメインバス41を介して互いに接続されるとともに、画像エンコーダ34、画像デコーダ37、多重分離部38、変復調回路部39、音声コーデック40、および記録再生部45が同期バス42を介して互いに接続されて構成される。
主制御部31は、CPU(Central Processing Unit)、ROM(Read Only Memory)、およびRAM(Random Access Memory)などからなり、CPUは、ROMに記憶されているプログラムまたは記憶部47からRAMにロードされた各種のアプリケーションプログラムに従って各種の処理を実行するとともに、種々の制御信号を生成し、各部に供給することにより携帯電話機2を統括的に制御する。RAMは、CPUが各種の処理を実行する上において必要なデータなどを適宜記憶する。なお、主制御部31には、現在の日付と時刻を正確に計測するタイマが内蔵されている。
携帯電話機2は、主制御部31の制御に基づいて、音声通話モード時にマイクロフォン15で集音した音声信号を音声コーデック40によってディジタル音声信号に変換、圧縮し、これを変復調回路部39でスペクトラム拡散処理し、送受信回路部43でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナ44を介して送信する。
また、携帯電話機2は、音声通話モード時にアンテナ44で受信した受信信号を増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部39でスペクトラム逆拡散処理し、音声コーデック40によって伸張し、アナログ音声信号に変換した後、変換されたアナログ音声信号をスピーカ18を介して出力する。
さらに、携帯電話機2は、データ通信モード時に電子メールを送信する場合、操作キー14の操作によって入力された電子メールのテキストデータを操作入力制御部33を介して主制御部31に送出する。主制御部31は、テキストデータを変復調回路部39でスペクトラム拡散処理し、送受信回路部43でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナ44を介して基地局3へ送信する。
これに対して携帯電話機2は、データ通信モード時に電子メールを受信する場合、アンテナ44を介して基地局3から受信した受信信号を変復調回路部39でスペクトラム逆拡散処理して元のテキストデータを復元した後、LCD制御部36を介して液晶ディスプレイ17に電子メールとして表示する。
携帯電話機2は、データ通信モード時に画像信号を送信する場合、CCDカメラ20で撮像された画像信号をカメラインタフェース部35を介して画像エンコーダ34に供給する。
画像エンコーダ34は、CCDカメラ20から供給された画像信号を、例えばMPEG(Moving Picture Experts Group)4などの所定の符号化方式によって圧縮符号化することにより符号化画像信号に変換し、変換された符号化画像信号を多重分離部38に送出する。このとき同時に携帯電話機2は、CCDカメラ20で撮像中にマイクロフォン15で集音した音声を音声コーデック40を介してディジタルの音声信号として多重分離部38に送出する。
多重分離部38は、画像エンコーダ34から供給された符号化画像信号と音声コーデック40から供給された音声信号とを所定の方式で多重化し、その結果得られる多重化信号を変復調回路部39でスペクトラム拡散処理し、送受信回路部43でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナ44を介して送信する。
これに対して、携帯電話機2では、データ通信モード時に、Webページのデータを受信することができる。
また、携帯電話機2は、データ通信モード時に例えばWebページなどにリンクされた動画像ファイルのデータを受信する場合、アンテナ44を介して基地局3から受信した受信信号を変復調回路部39でスペクトラム逆拡散処理し、その結果得られる多重化信号を多重分離部38に送出する。
多重分離部38は、多重化信号を分離することにより符号化画像信号と音声信号とに分け、同期バス42を介して符号化画像信号を画像デコーダ37に供給すると共に音声信号を音声コーデック40に供給する。画像デコーダ37は、符号化画像信号をMPEG4などの所定の符号化方式に対応した復号化方式でデコードすることにより再生動画像信号を生成し、生成された再生動画像信号をLCD制御部36を介して液晶ディスプレイ17に供給する。これにより、例えば、Webページなどにリンクされた動画像ファイルに含まれる動画像データが表示される。
このとき同時に音声コーデック40は、音声信号をアナログ音声信号に変換した後、これをスピーカ18に供給し、これにより、例えば、Webページなどにリンクされた動画像ファイルに含まる音声信号が再生される。
記憶部47は、例えば、電気的に書換えや消去が可能な不揮発性メモリであるフラッシュメモリ素子やHDD(Hard Disc Drive)などからなり、主制御部31のCPUにより実行される種々のアプリケーションプログラムや種々のデータ群を格納している。
音楽制御部48は、記憶部47に記憶されているオーディオデータの再生動作および一時停止動作や、巻戻し機能、早送り機能、音量ダウン動作、音量アップ動作などの実行を制御する。
リモコン通信部49は、例えばブルートゥース(Bluetooth(登録商標))による無線通信を行うモジュールなどからなり、携帯電話機2の近傍に存在するヘッドセット9(特に、ヘッドセット9に設けられたリモコン10)などと無線通信を行う。勿論、ブルートゥース以外の無線通信(例えば赤外線通信)を用いるようにしてもよい。
地上波ディジタルワンセグ受信部50は、放送局8からの地上波ディジタルワンセグ放送波や地上波ディジタルラジオ放送波を受信し、受信された地上波ディジタルワンセグ放送波や地上波ディジタルラジオ放送波を多重分離部38または記憶部47に供給する。FMラジオ受信部51は、図示せぬ放送局から送信されてきたFMラジオを受信する。
ところで、携帯電話機2においてアプリケーションプログラムを起動して動作させる場合、例えば図5(A)に示されるように、アプリケーションプログラムAが1つだけ動作しているとき、音声出力デバイスとしてのスピーカ18やヘッドセット9のスピーカの利用が、アプリケーションプログラムAによって占有されるだけでなく、ユーザにより操作キー14が操作されることによるキー入力の受け付けも、アプリケーションプログラムAによって占有される。すなわち、液晶ディスプレイ17にはアプリケーションプログラムAに関する画面が表示されており、ユーザは、操作キー14を表示画面上において操作することにより、アプリケーションプログラムAに対する操作を入力することができる。
次に、その後、アプリケーションプログラムBが起動されると、例えば図5(B)に示されるように、液晶ディスプレイ17にはアプリケーションプログラムBが表示されるとともに、これまでのアプリケーションプログラムAによる占有がアプリケーションプログラムBに移転し、音声出力デバイスとしてのスピーカ18やヘッドセット9のスピーカの利用が、アプリケーションプログラムBによって占有されるだけでなく、ユーザにより操作キー14が操作されることによるキー入力の受け付けも、アプリケーションプログラムBによって占有されるようになる。このとき、アプリケーションプログラムAは、アプリケーションプログラムBの動作が終了しない限り、液晶ディスプレイ17の画面上には復帰せず、機能的には停止状態となる。
なお、図5の例の場合、図5(A)におけるアプリケーションプログラムAは、フォアグランド(所定の機能を有するアプリケーションプログラムが画面に表示されている状態)で起動するアプリケーションプログラムといい、一方、図5(B)におけるアプリケーションAは、バックグランド(所定の機能を有するアプリケーションプログラムが画面に表示されていない状態)で起動するアプリケーションプログラムという。
近年、例えば図5に示されるアプリケーションプログラムの基本動作に加えて、例えばユーザがメールを読みながら音楽再生を同時に行ったり、WebブラウザによるWebページの閲覧を行いながら音楽再生を同時に行う動作が必要とされてきており、バックグラウンドで起動されながら音声出力を音声出力デバイスを介して行うことが要求されてきている。
例えば図6(A)に示されるように、音楽制御機能を有するアプリケーションプログラム(音楽プレイヤー)がフォアグラウンドで起動される場合、音声出力デバイスとしてのスピーカ18やヘッドセット9のスピーカの利用が、フォアグラウンドで起動される音楽制御機能を有するアプリケーションプログラムによって占有されるだけでなく、ユーザにより操作キー14が操作されることによるキー入力の受け付けも、そのアプリケーションプログラム(音楽プレイヤー)によって占有される。
一方、例えば図6(B)に示されるように、音楽制御機能を有するアプリケーションプログラム(音楽プレイヤー)がバックグラウンドで起動される場合、音声出力デバイスとしてのスピーカ18やヘッドセット9のスピーカの利用だけが、バックグラウンドで起動される音楽制御機能を有するアプリケーションプログラムによって占有され、ユーザにより操作キー14が操作されることによるキー入力の受け付けは、そのアプリケーションプログラム(音楽プレイヤー)によって占有されない。このとき、液晶ディスプレイ17には他のアプリケーションプログラム(待受けアプリ)に関する画面が表示されており、ユーザにより操作キー14が操作されることによるキー入力の受け付けは、フォアグランドで起動される待受け機能を有するアプリケーションプログラム(待受けアプリ)によって占有されている。従って、ユーザは、操作キー14を表示画面上において操作することにより、他のアプリケーションプログラムに対する操作を入力することができる。なお、図6(A)から図6(B)に遷移する場合には、所定のキーを1回押下すること、または複数のキーを所定回押すことによって遷移できる。
図6(B)に示されるようにバックグラウンドで音声出力デバイスを介して音声出力可能なアプリケーションプログラムとして、例えばオーディオデータを聞くことができる音楽制御機能や、地上波ディジタル放送波、地上波ディジタルラジオ放送波、およびFMラジオ放送波を受信することができる機能、FMラジオを受信することができる機能などのマルチメディア機能を有するアプリケーションプログラムが存在する。
このような音声出力デバイスを用いるマルチメディア機能に関しては、例えばユーザの頭部などに装着されたヘッドセット9のリモコン10によって制御することが可能であり、例えば図7に示されるように、各マルチメディア機能を有するアプリケーションプログラムが、携帯電話機2においてリモコン10から受信された所定のコマンド(共通化されたコマンド)をそれぞれ解釈し、解釈されたコマンドに基づいて所定の動作を実行する。
ところで、携帯電話機2に搭載される、音声出力デバイスを用いるマルチメディア機能の多様化に伴って、ユーザの利便性を向上させるために、フォアグラウンドまたはバックグラウンドにおいて複数のマルチメディア機能を有するアプリケーションプログラムを多重に起動する方法が提案されている。この方法を利用する場合、次の第1乃至第3の前提条件に拡張する必要がある。
第1の前提条件とは、例えばフォアグラウンド(所定の機能を有するアプリケーションプログラムが画面に表示されている状態)またはバックグラウンド(所定の機能を有するアプリケーションプログラムが画面に表示されていない状態)と、アクティブ(操作キー14の操作を原則として受け付け可能にする状態)またはインアクティブ(操作キー14の操作を原則として受け付け不可能にする状態)による4つの組み合わせのうちのいずれか1つの組み合わせで、各マルチメディア機能を有するアプリケーションプログラムが動作するという条件である。
第2の前提条件とは、フォアグラウンドにアクティブで起動されるマルチメディア機能を有するアプリケーションプログラムは0もしくは1であり、フォアグラウンドにインアクティブで起動されるマルチメディア機能を有するアプリケーションプログラムは0もしくは1(又はそれ以上でもよい)であり、バックグラウンドにアクティブで起動されるマルチメディア機能を有するアプリケーションプログラムは0もしくは1であり、バックグラウンドにインアクティブで起動されるマルチメディア機能を有するアプリケーションプログラムはマルチメディア機能の最大数(例えば5つなど)以下である(すなわち、0から5まで)という条件である。
第3の前提条件とは、フォアグランドにおいて1つマルチメディア機能を有するアプリケーションプログラムが動作する場合、バックグラウンドにおいても、その他のマルチメディア機能を有するアプリケーションプログラムが動作し得るという条件である。
この新たな前提条件に従うと、例えば図8(A)および(D)に示されるように、音声出力を行うアプリケーションプログラムがフォアグランドに存在したり、あるいは、例えば図8(C)および(F)に示されるように、音声出力を行うアプリケーションプログラムがバックグランドに存在したりするだけでなく、それに加えて、例えば図8(B)および(E)に示されるように、液晶ディスプレイ17において異なるアプリケーションプログラムに関する画面が分割された領域に同時に表示されるとともに、いずれか一方のアプリケーションプログラムに対する入力が受け付けられるような場合も考えられる。
なお、図8(A)の例においては、「音楽プレイヤー」がフォアグラウンド(アクティブ)で起動しており、「待受けアプリ」がバックグラウンド(インアクティブ)で動作している(音楽プレイヤーアプリが音声出力デバイスによって音声を出力する権利(音声出力デバイスによって音声を使用する権利)を持っている)。図8(B)の例においては、「メールアプリ」がフォアグラウンド(アクティブ)、「音楽プレイヤー」がバックグラウンド(インアクティブ)で起動する(音楽プレイヤーアプリが音声出力デバイスによって音声を出力する権利を持っている)。図8(C)の例においては、「着信アプリ」がフォアグラウンド(アクティブ)、「音楽プレイヤー」がバックグラウンド(インアクティブ)で起動する(着信アプリが音声出力デバイスによって音声を出力する権利を持っている)。図8(D)の例においては、「音楽プレイヤーアプリ」がフォアグラウンド(アクティブ)、「待受けアプリ」がバックグラウンド(インアクティブ)で起動する(待受けアプリが音声出力デバイスによって音声を出力する権利を持っている)。図8(E)の例においては、「地デジアプリ」がフォアグラウンド(アクティブ)、「音楽プレイヤー」がバックグラウンド(インアクティブ)で起動する(地デジアプリが音声出力デバイスによって音声を出力する権利を持っている)。図8(F)の例においては、「メールアプリ」がフォアグラウンド(アクティブ)、「音楽プレイヤー」がバックグラウンド(インアクティブ)で起動する(音楽プレイヤーアプリが音声出力デバイスによって音声を出力する権利を持っている)。
なお、アプリケーションプログラムは、単なる“メール”や“ブラウザ”のような機能単位ではなく、“着信の際のアプリ(着信アプリ)”や“メール受信する際のアプリ(メール受信アプリ)”、といったような更に下位のアプリの単位を交えたものであってもよい。
このように、例えば音楽制御機能を有するアプリケーションプログラムに対しては図9に示されるような状態となり、キーの入力の受け付けの可否や音声出力の可否のパターンが従来に比べて格段に多くなる。そして、フォアグラウンドまたはバックグラウンドにおいて複数のマルチメディア機能を有するアプリケーションプログラムを多重に起動すると、音声出力デバイスを用いるマルチメディア機能を有するアプリケーションプログラムがフォアグラウンドまたはバックグラウンドで複数(携帯電話機2に搭載されているマルチメディア機能の最大数まで)存在することとなる。
すなわち、例えば音楽制御機能を有するアプリケーションプログラム(音楽プレイヤー)がバックグラウンドで起動される場合に、その後にFMラジオを受信する機能を有するアプリケーションプログラム(FMアプリ)が起動され、さらに、FMラジオを受信する機能を有するアプリケーションプログラム(FMアプリ)がバックグラウンドで起動されたときには、例えば図10に示されるように、フォアグラウンドまたはバックグラウンドで複数のアプリケーションプログラムが双方存在することとなる。このことは、フォアグラウンドまたはバックグラウンドにおいて音声出力を行うアプリケーションプログラムはシステム上1つであるにもかかわらず、リモコン10からのコマンドをリモコン通信部49を介して取得するアプリケーションプログラムは複数であることを意味している。
このとき、主制御部31のCPUにより実現されるリソース管理機能によって、音声出力デバイスとしてのスピーカ18やヘッドセット9のスピーカの利用が、順次、音楽制御機能を有するアプリケーションプログラム(音楽プレイヤー)、FMラジオを受信する機能を有するアプリケーションプログラム(FMアプリ)、地上波ディジタルワンセグ放送波を受信する機能を有するアプリケーションプログラム(地デジアプリ)によってされるように管理される。
なお、音声出力デバイスとしてのスピーカ18やヘッドセット9のスピーカの利用が、音楽制御機能を有するアプリケーションプログラム(音楽プレイヤー)によって占有されている場合、FMラジオを受信する機能を有するアプリケーションプログラム(FMアプリ)が新たに起動されると、FMアプリが主制御部31のCPUにより実現されるリソース管理機能に対してリソース確保要求を行い、その後、音楽プレイヤーがリソース解放を行うとともに、FMアプリがリソースである音声出力デバイス(例えばスピーカ18やヘッドセット9のスピーカなど)によって音声を出力する権利をリソース管理機能から取得し、音楽プレイヤーによる占有からFMアプリによる占有に移転される。
そして、同様に、地上波ディジタルワンセグ放送波を受信する機能を有するアプリケーションプログラム(地デジアプリ)が新たに起動されると、地デジアプリが主制御部31のCPUにより実現されるリソース管理機能に対してリソース確保要求を行い、その後、FMアプリがリソース解放を行うとともに、地デジアプリがリソースである音声出力デバイス(例えばスピーカ18やヘッドセット9のスピーカなど)によって音声を出力する権利をリソース管理機能から取得し、FMアプリによる占有から地デジアプリによる占有に移転される。
このように、フォアグラウンドまたはバックグラウンドにおいて複数のマルチメディア機能を有するアプリケーションプログラムを多重に起動すると、どのアプリケーションプログラムに対してリモコン制御を行うか否かが不明確となり、リモコン制御を行うことが困難となってしまう。
特に、(1)フォアグラウンドにインアクティブで起動される音声出力機能を含むマルチメディア機能を有するアプリケーションプログラムと、(2)フォアグラウンドにアクティブで起動される音声出力機能を含むマルチメディア機能を有するアプリケーションプログラムとが同時に存在している場合であって、(1)のアプリケーションプログラムの音声出力を行っている場合が存在したときに、リモコン操作がなされると、従来の方法であるとこのような状況に対応するルールが存在しないことから、どちらのアプリケーションに対するリモコン操作として受け付けるべきかの判定が難しい。
また、例えば図10の場合に、後優先のアプリケーションプログラムに対してリモコン制御を行うようにすることも考えられるが、割り込み事由や、ユーザの操作に基づかないアプリの割込みに対して、様々な場合を考慮しなければならない。例えばフォアグラウンドで起動しているアクティブのアプリ1とインアクティブのアプリ2とがあり、ユーザにより操作キー14又はサイドキー16が操作されることにより(例えば長押し)、アプリ1がインアクティブに、かつ、アプリ2がアクティブに変更された場合において、リモコン10の操作がなされると、これもまた、どちらのアプリケーションに対するリモコン操作として受け付けるべきかの判定が難しい。
そこで、例えば図11に示されるように、リモコン通信部49においてヘッドセット9のリモコン10からのコマンドを受信した後、フォアグラウンドまたはバックグラウンドで起動されている特定のアプリケーションプログラムに対してのみ、受信されたコマンドを通知するのではなく、フォアグラウンドまたはバックグラウンドで起動されているすべて(あるいは複数)のアプリケーションプログラムに対して、受信されたコマンドを通知するようにする。
これにより、フォアグラウンドまたはバックグラウンドで複数のアプリケーションプログラムが多重に起動されていたとしても、リソース管理機能により音声出力の権利を獲得しているアプリケーションプログラムは1つしかないことから、アプリケーションプログラム側においてリモコンからのコマンドに対する動作を行ってよいか否かを判断することが可能となる。従って、マルチメディア機能が多重に起動されている場合であっても、リモコンによる制御を好適に行うことが可能となる。
以下、この方法を用いた携帯電話機2におけるリモコン制御処理について説明する。図12のフローチャートを参照して、図4の携帯電話機2におけるリモコン制御処理について説明する。
ステップS1において、ユーザによりヘッドセット9のリモコン10が操作されると、リモコン通信部49は、例えばブルートゥースなどの無線通信を介して、リモコン10からのコマンドを受信する。リモコン通信部49は、受信されたリモコン10からのコマンドをメインバス41を介して主制御部31に供給する。
ステップS2において、主制御部31のCPUは、リモコン通信部49から供給されたリモコン10からのコマンドを取得し、取得されたリモコン10からのコマンドを、フォアグラウンドまたはバックグランドにおいて動作する各アプリケーションプログラムに対してそれぞれ通知する。例えば図11の場合、リモコン10からのコマンドが、フォアグラウンドまたはバックグランドにおいて動作する地デジアプリ、FMアプリ、および音楽プレイヤーなどのアプリケーションプログラムに対してそれぞれ通知される。なお、ステップS2において、リモコン10から取得したコマンドは複数のアプリケーションプログラムに通知されるが、これは、起動している全てのアプリケーションプログラムに対して通知することであってもよいし、所定の条件に合致する複数のアプリケーションプログラムに対して通知することであってもよいし、音声出力を伴う全てのアプリケーションプログラムに対して通知することであってもよい。図11の例においては、音出力を伴う全てのアプリケーションプログラムに対してリモコン10から取得したコマンドを通知している。
ステップS3において、主制御部31のCPUは、フォアグラウンドまたはバックグランドにおいて動作する各アプリケーションプログラムをそれぞれ実行し、音声出力デバイス(例えばヘッドセット9のスピーカやスピーカ18など)によって音声を出力する権利をリソース管理機能から獲得しているか否かを判定する。
例えば図11の場合、現在、音声出力デバイスによって音声を出力する権利を、地上波ディジタルワンセグ放送波を受信する機能を有するアプリケーションプログラム(地デジアプリ)がリソース管理機能から獲得しており、音声出力デバイスの利用はこのアプリケーションプログラムに占有されていることから、地デジアプリにおいては、音声出力デバイスによって音声を出力する権利をリソース管理機能から獲得していると判定される。一方、その他のアプリケーションプログラム(例えばFMアプリウや音楽プレイヤーなど)においては、音声出力デバイス(例えばヘッドセット9のスピーカやスピーカ18など)によって音声を出力する権利をリソース管理機能から獲得していないと判定される。
ステップS3において音声出力デバイスによって音声を出力する権利を獲得していると判定された場合、主制御部31のCPUはステップS4で、リソース管理機能によって音声出力デバイスにより音声を出力する権利を獲得しているアプリケーションプログラムを実行し、通知されたリモコン10からのコマンドに応じて所定の動作を実行する。すなわち、通知されたコマンドが例えば図7に示された表に基づいて解釈され、解釈されたコマンドに基づいて所定の動作が実行される(S4)。例えば、地デジアプリがフォアグラウンドで起動して音声出力デバイスに音声を出力する権利をリソース管理機能から獲得していると判断した場合において、リモコン10によって”forward”相当するあるキーを押下されたと認識した場合には、テレビのチャンネル選択において次の局を選択する操作を行うこととなる(図7の「地デジアプリ」・「FG」・「次局」)。また、例えば、FMアプリがバックグラウンドで起動して音声出力デバイスによって音声を出力する権利をリソース管理機能から獲得していると判断した場合において、リモコンによって”play”相当するあるキーを押下されたと認識した場合には、FM局の選局を停止する操作を行うこととなる(図7の「FMアプリ」・「BG」・「選局停止」)。 例えば図11の場合、リソース管理機能によって音声出力デバイスにより音声を出力する権利を獲得しているアプリケーションプログラム(地デジアプリ)が実行され、通知されたコマンド(例えば“STOP”)が解釈され(図7の表に基づけば、「地デジアプリ」・「BG」・「アプリ終了」)、解釈されたコマンドに基づいて所定の動作が実行される(地デジアプリの“アプリ終了”)。
一方、ステップS3において音声出力デバイスによって音声を出力する権利をリソース管理機能から獲得していないと判定された場合、主制御部31のCPUはステップS5で、リソース管理機能によって音声出力デバイスにより音声を出力する権利を獲得していないアプリケーションプログラムを実行し、通知されたリモコン10からのコマンドを破棄する。
例えば図11の場合、リソース管理機能によって音声出力デバイスにより音声を出力する権利を獲得していないアプリケーションプログラムとしてのFMアプリや音楽プレイヤーが実行され、通知されたリモコン10からのコマンドが破棄される。
なお、地デジアプリが終了された場合、地デジアプリによる音声出力デバイス(例えばヘッドセット9のスピーカやスピーカ18など)によって音声を出力する権利が、次に優先度の高い音声出力を行うアプリに移る。つまり、地デジアプリによる音声出力デバイスの占有が解放されるとともに、FMアプリがリソース管理機能によって音声出力デイバスから音声を出力する権利を獲得させ、FMアプリによる音声出力によって音声出力デバイスの占有が開始される。これにより、FMアプリによる音声出力が開始されるとともに、その時点からFMアプリに関してリモコン10による制御が開始される。例えば、図11の例においては、各アプリ起動の優先度が「待受けアプリ」→「地デジアプリ」→「FMアプリ」→「音楽プレイヤー」の順となっており(図の上にあるほど優先度が高いと判断される)、地デジアプリが終了すると、次に優先度の高い音声出力を伴うアプリはFMアプリとなる。
これにより、マルチメディア機能が多重に起動されている場合であっても、リモコン10による制御を好適に行うことができる。従って、マルチメディア機能が多重に起動されている場合であっても、ユーザが所望するマルチメディア機能に対してリモコン10を用いた操作を行うことができ、マルチメディア機能を利用する際の利用性および操作性を向上させることができる。
ところで、図12のフローチャートを参照して説明したリモコン制御処理においては、リモコン通信部49においてヘッドセット9のリモコン10からのコマンドを受信した後、フォアグラウンドまたはバックグラウンドで起動されている複数のアプリケーションプログラムに対して、受信されたコマンドを通知するようにして、アプリケーションプログラム側においてリモコンからのコマンドに応じた動作を行うか否かを判断するようにしたが、このような場合に限られず、例えば図13に示されるように、リソース管理機能から、音声出力デバイス(例えばヘッドセット9のスピーカやスピーカ18など)によって音声を出力する権利をどこが持っているかの状況を電源投入時から通知してもらうようにしておき、その通知を受け取る度にリソースを現在獲得しているアプリケーションプログラムをリソース管理機能に問い合わせるとともに、その後、リモコンからのコマンドを受信したとき、受信されたリモコンからのコマンドをリソースを現在獲得しているアプリケーションプログラムに通知するようにしてもよい。これにより、フォアグラウンドまたはバックグラウンドで起動されているすべてのアプリケーションプログラムに対して受信されたコマンドを通知する必要がなくなることから、マルチメディア機能が多重に起動されている場合であっても、リモコン10による制御をより好適に行うことが可能となる。以下、この方法を用いた携帯電話機2におけるリモコン制御処理について説明する。
図14のフローチャートを参照して、図4の携帯電話機2におけるリモコン制御処理について説明する。ステップS11において、主制御部31のCPUは、フォアグラウンドまたはバックグラウンドで起動されているいずれかのアプリケーションプログラムからのリソースを確保するための確保要求を取得すると、リソース管理機能を実行し、現在のアプリケーションプログラムによるリソースとしての音声出力デバイスの占有の解放を行うとともに、現在音声出力デバイスによって音声を出力する権利が獲得されているアプリケーションプログラムによる占有から、新たに確保要求を行ったアプリケーションプログラムによる占有に移転する。
そして、主制御部31のCPUは、例えば図13に示されるように、リソース管理機能を実行し、アプリケーションプログラムにおけるリソースとしての音声出力デバイスの獲得状況が変化した旨をリモコン通信部49に通知する。
例えば図13の例の場合、現在音声出力デバイスによって音声を出力する権利がリソース管理機能から獲得されているアプリケーションプログラムが音楽プレイヤーであり、新たに確保要求を行ったアプリケーションプログラムが地デジアプリであるときに、音楽プレイヤーによる占有から地デジによる占有に移転されたとする。このとき、リソース管理機能が実行され、アプリケーションプログラムにおけるリソースとしての音声出力デバイスの獲得状況が変化した旨がリモコン通信部49に通知される。
ステップS12において、リモコン通信部49は、アプリケーションプログラムにおけるリソースとしての音声出力デバイスの獲得状況が変化した旨を主制御部31から取得すると、現在、リソースが獲得されているアプリケーションプログラムをリソース機能に問い合わせる。
例えば図13の場合、音楽プレイヤーによる占有から地デジによる占有に移転されたとすると、リモコン通信部49は、現在、リソースが獲得されているアプリケーションプログラム(音声出力デバイスによって音声を出力する権利がリソース管理機能から獲得されているアプリケーションプログラム)をリソース機能に問い合わせ、問い合わせの結果、現在リソースが獲得されているアプリケーションプログラムが地デジアプリであることを取得する。
ステップS13において、その後、ユーザによりヘッドセット9のリモコン10が操作されると、リモコン通信部49は、例えばブルートゥースなどの無線通信を介して、リモコン10からのコマンドを受信する。リモコン通信部49は、受信されたリモコン10からのコマンドをメインバス41を介して主制御部31に供給する。
ステップS14において、主制御部31のCPUは、リモコン通信部49から供給されたリモコン10からのコマンドを取得し、取得されたリモコン10からのコマンドを、問い合わせの結果、現在リソースが獲得されているアプリケーションプログラム音声出力デバイスによって音声を出力する権利がリソース管理機能から獲得されているに対してそれぞれ通知する。例えば図13の場合、リモコン10からのコマンドが、現在リソースが獲得されている地デジアプリに対してそれぞれ通知される。
ステップS15において、主制御部31のCPUは、リソース管理機能によって音声出力デバイスにより音声を出力する権利が獲得されているアプリケーションプログラムを実行し、通知されたリモコン10からのコマンドに応じて所定の動作を実行する。すなわち、通知されたコマンドが解釈され、解釈されたコマンドに基づいて所定の動作が実行される。
例えば図13の場合、リソース管理機能によって音声出力デバイスにより音声を出力する権利を獲得しているアプリケーションプログラム(地デジアプリ)が実行され、通知されたコマンドが解釈され、解釈されたコマンドに基づいて所定の動作が実行される。
これにより、フォアグラウンドまたはバックグラウンドで起動されているすべてのアプリケーションプログラムに対して受信されたコマンドを通知する必要がなくなることから、マルチメディア機能が多重に起動されている場合であっても、リモコン10による制御をより好適に行うことができる。従って、マルチメディア機能が多重に起動されている場合であっても、ユーザが所望するマルチメディア機能に対してリモコン10を用いた操作を行うことができ、マルチメディア機能を利用する際の利用性および操作性をより向上させることができる。
なお、本発明は、携帯電話機2以外にも、PDA(Personal Digital Assistant)、パーソナルコンピュータ、携帯型ゲーム機、携帯型音楽再生機、携帯型動画再生機、その他の情報処理装置にも適用することができる。
なお、本発明の実施形態においては、リモコン10から送られたコマンドをリモコン通信部49が受信し、そのリモコン通信部49が受信したコマンドに対して現在起動中のアプリケーションプログラムのいずれかに対するコマンドとして動作させることとしている。しかし、本発明はこれに限定されず、本発明のリモコン10に代えて、例えばサイドキー16から送られたキー押下のコマンドをリモコン通信部49に相当する別の機能に受け持たせ、上記と同様の機能を実施することも可能である。サイドキー16に本発明を適用すると、例えば、図11の例では、キー14における操作はフォアグラウンドで動作している「待受けアプリ」に対してキー操作可能であり、サイドキー16における操作は「地デジアプリ」に対する操作となる。また、サイドキー16だけでなく他のキー操作に適用してもよい。
また、本発明では音声出力デバイスに音声を出力する権利を持っている/いないかに応じて、リモコンなどにおける外部操作部(又は外部でなくともサイドキーなどの他のキーでもよい)からの操作の情報を、どのアプリケーションプログラムに渡すべきかを判断したが、これは、音声出力デバイスによって音声を出力する権利を持っているか否か(権利を持っている/いない)に限定されることはない。例えば、音声出力を行うデバイスが複数存在する情報処理端末(音声出力デバイスAと音声出力デバイスBとがあるとする)において、音声出力デバイスAに音声を出力する権利を持っている/いないかの判断を行い、それに応じて操作の情報をどのアプリケーションに渡すべきかを判断してもよい。また、音声出力デバイスだけでなく、例えば映像出力デバイスの一部分(全部でもよい)に表示する権利を持っているか否かで判断するといったように、他のデバイスの権利を持っているか否かで判断してもよい。
また、本発明の実施形態において説明した一連の処理は、ソフトウェアにより実行させることもできるが、ハードウェアにより実行させることもできる。
さらに、本発明の実施形態では、フローチャートのステップは、記載された順序に沿って時系列的に行われる処理の例を示したが、必ずしも時系列的に処理されなくとも、並列的あるいは個別実行される処理をも含むものである。
1…ネットワークシステム、2…携帯電話機、3…基地局、4…公衆回線網、5…アクセスサーバ、6…ネットワーク、7…放送用コンテンツサーバ、8…放送局、9…ヘッドセット、10…リモコン、11…ヒンジ、12…第1の筐体、13…第2の筐体、14…操作キー、15…マイクロフォン、16…サイドキー、17…液晶ディスプレイ、18…スピーカ、19a乃至19d…磁気センサ、20…CCDカメラ、21…サブディスプレイ、22…静電タッチパッド、31…主制御部、32…電源回路部、33…操作入力制御部、34…画像エンコーダ、35…カメラI/F部、36…LCD制御部、37…画像デコーダ、38…多重分離部、39…変復調回路部、40…音声コーデック、41…メインバス、42…同期バス、43…送受信回路部、44…アンテナ、45…記録再生部、46…メモリカード、47…記憶部、48…音楽制御部、49…リモコン通信部、50…地上波ディジタルワンセグ・ラジオ受信部、51…FMラジオ受信部。