(58)【調査した分野】(Int.Cl.,DB名)
接続の使用モードを検出することが、前記1つまたは複数の出力デバイスが前記ワイヤレス通信デバイスに接続されていることを示すホットプラグ検出(HPD)信号について前記接続を監視することを備え、前記HPD信号が検出されないときは、前記使用モードが非アクティブである、請求項1に記載の方法。
接続の使用モードを検出することが、前記少なくとも1つのアプリケーションの動作を監視することを備え、前記アプリケーションの前記動作が一時停止または停止のうちの1つであるときは、前記使用モードが非アクティブである、請求項1に記載の方法。
接続の使用モードを検出するために、前記1つまたは複数のプロセッサが、前記1つまたは複数の出力デバイスが前記ワイヤレス通信デバイスに接続されていることを示すホットプラグ検出(HPD)信号について前記接続を監視し、前記HPD信号が検出されないときは、前記使用モードが非アクティブである、請求項9に記載のデバイス。
接続の使用モードを検出するために、前記1つまたは複数のプロセッサが、前記少なくとも1つのアプリケーションの動作を監視し、前記アプリケーションの前記動作が一時停止または停止のうちの1つであるときは、前記使用モードが非アクティブである、請求項9に記載のデバイス。
接続の使用モードを検出するための前記手段が、1つまたは複数の出力デバイスが前記ワイヤレス通信デバイスに接続されていることを示すホットプラグ検出(HPD)信号について前記接続を監視するための手段を備え、前記HPD信号が検出されないときは、前記使用モードが非アクティブである、請求項17に記載のデバイス。
接続の使用モードを検出するための前記手段が、前記少なくとも1つのアプリケーションの動作を監視するための手段を備え、前記アプリケーションの前記動作が一時停止または停止のうちの1つであるときは、前記使用モードが非アクティブである、請求項17に記載のデバイス。
前記アプリケーションの前記動作が一時停止または停止のうちの1つであるとき、コンテンツ処理を短縮するための前記手段が、前記1つまたは複数の出力デバイスによって提示するために前記少なくとも1つのアプリケーションについてコンテンツ処理を前記複数の出力デバイスによって許容される最小解像度で実行するための手段を備える、請求項21に記載のデバイス。
前記プロセッサに接続の使用モードを検出させる前記命令が、前記プロセッサに、1つまたは複数の出力デバイスが前記ワイヤレス通信デバイスに接続されていることを示すホットプラグ検出(HPD)信号について前記接続を監視させる命令を備え、前記HPD信号が検出されないときは、前記使用モードが非アクティブである、請求項25に記載のコンピュータプログラム。
前記プロセッサに接続の使用モードを検出させる前記命令が、前記プロセッサに、前記少なくとも1つのアプリケーションの動作を監視させる命令を備え、前記アプリケーションの前記動作が一時停止または停止のうちの1つであるときは、前記使用モードが非アクティブである、請求項25に記載のコンピュータプログラム。
【発明を実施するための形態】
【0013】
詳細な説明
一般に、本開示は、マルチメディアアプリケーションを有するワイヤレス通信デバイス(WCD)に関連するバッテリー消費を低減するための技法に関する。本技法は、WCDと1つまたは複数の外部出力デバイスとの間のコンテンツ保護を伴うマルチメディアインターフェース接続、例えば、高精細度マルチメディアインターフェース(HDMI)の使用モードを検出することを含み得る。使用モードが非アクティブであるとき、コンテンツ処理またはコンテンツ保護処理のうちの少なくとも1つが、WCDによるマルチメディア処理からのバッテリー電力消費を低減するために短縮され得る。WCDは、出力デバイスによって提示するための1つまたは複数のメディアアプリケーションのためのコンテンツ処理および/または接続を介した出力デバイスへの処理済みコンテンツの安全な送信のためのコンテンツ保護処理を実行し得る。本開示の技法によれば、コンテンツ保護を伴うマルチメディアインターフェース接続の使用モードが非アクティブであるとき、WCDは、コンテンツ処理および/またはコンテンツ保護処理を短縮することによって、電力消費を低減し得る。
【0014】
図1は、ワイヤレス通信デバイス(WCD)102が1つまたは複数の外部マルチメディア出力デバイス104A〜104C(「出力デバイス104」)に接続されたワイヤレス通信システム100を示すブロック図である。WCD102は、プロセッサ112と、メモリ114と、1つまたは複数のマルチメディアアプリケーション116と、マルチメディアインターフェース118と、バッテリー120と、トランシーバ122と、ディスプレイ124とを含み得る。WCD102は、WCD102に関連するデバイスのタイプまたは機能に依存し得る他の構成要素を含み得ることを理解されたい。一例では、WCD102は、携帯電話、スマートフォン、タブレットコンピュータ、PDA、ポータブルメディアプレーヤなどの通信デバイスであってもよい。WCD102は、トランシーバ122を利用して、例えば、セルラーネットワーク、ローカルワイヤレスネットワークなどのネットワークを介して他のデバイスと通信し得る。
【0015】
コンテンツ保護を伴うマルチメディアインターフェースは、マルチメディアアプリケーションを含むデジタルマルチメディアデバイスにとって、一般的な、場合によっては必須のインターフェースになりつつある。コンテンツ保護を伴うマルチメディアインターフェースは、セットトップボックス、DVDプレーヤおよびBlu−Ray(登録商標)ディスクプレーヤ、デジタルビデオレコーダ、パーソナルコンピュータ、ビデオゲームコンソールなどのデジタルマルチメディアソースデバイスをデジタルテレビジョン、デジタルオーディオデバイス、コンピュータモニタ、ビデオプロジェクタ、およびマルチメディアコンテンツを出力および/または表示することが可能な他のデバイスなどの互換性があるデジタルマルチメディアシンクデバイス(本明細書では外部出力デバイスとも呼ばれる)と接続するために使用され得る。コンテンツ保護を伴うマルチメディアインターフェースは、ソースデバイスとシンクデバイスとの間のワイヤード接続またはワイヤレス接続をサポートし得る。ソースデバイスは、所与のシンクデバイス上で、シンクデバイスによって要求されるフォーマットで提示するためのマルチメディアコンテンツを処理する。コンテンツ保護を伴うマルチメディアインターフェースにより、ソースデバイスは、暗号化規格、例えば、高帯域幅デジタルコンテンツ保護(HDCP)を使用して、シンクデバイスによって提示するためのマルチメディアコンテンツを安全に送信して、無許可のユーザがコンテンツを受信するのを防止できる。マルチメディアインターフェースにおけるコンテンツ保護は、例えば、デバイス検出、認証、無効化、暗号化、およびリンク完全性チェックの追加の処理を必要とする。
【0016】
WCD102は、例えば、マルチメディアコンテンツを受信するスマートフォンまたはパッドを備え得る。
図1の図示の例では、WCD102は、提示のためにマルチメディアコンテンツを出力デバイス104に送信するために、コンテンツ保護を伴うマルチメディアインターフェース118を含む。このようにして、ユーザは、WCD102のローカルディスプレイ124よりもはるかに高いビデオ解像度またはより高い忠実度オーディオを提供することが可能な、デジタルテレビジョンまたはコンピュータモニタなどの出力デバイス104のうちの1つにコンテンツを提示させることができる。
【0017】
一例では、WCD102のマルチメディアインターフェース118は、高精細度マルチメディアインターフェース(HDMI)、ワイヤレスHDMI、モバイル高精細度リンク(MHL)、または安全なデジタルマルチメディアコンテンツを提供することが可能な別のインターフェースを含み得る。コンテンツ保護を伴うマルチメディアインターフェース118を有するWCD102が1つまたは複数の外部出力デバイス104に接続されているとき、WCD102は、外部出力デバイス104によって提示するためのマルチメディアアプリケーション116からのメディア(例えば、オーディオおよび/またはビデオ)コンテンツの処理を実行し得る。WCD102は、コンテンツ保護を伴うマルチメディアインターフェース接続106A、106B、および106C(「マルチメディアインターフェース接続106」)を介してマルチメディアコンテンツを出力デバイス104に安全に送信するためのコンテンツ保護処理も実行し得る。
【0018】
従来、コンテンツ保護を伴うマルチメディアインターフェースは、バッテリー使用に関する問題がほとんどまたはまったくないワイヤードデバイス(例えば、デスクトップコンピュータ)のみに含まれていた。本開示の技法は、コンテンツ保護を伴うマルチメディアインターフェース118における動作に必要な処理は、WCD102においてかなりの量のバッテリー電力を利用し得ることを認識する。本技法は、WCD102と1つまたは複数の出力デバイス104との間のコンテンツ保護を伴うマルチメディアインターフェース接続106の使用モードを検出することと、使用モードが非アクティブであるときに、コンテンツ処理またはコンテンツ保護処理のうちの少なくとも1つを短縮して、バッテリー消費を低減することとを含み得る。上述のように、コンテンツ処理は、ローカルディスプレイ124上または外部出力デバイス104上で提示するための、WCD102上で動作する1つまたは複数のマルチメディアアプリケーションからのマルチメディアコンテンツを準備することを含み得る。コンテンツ保護処理は、あるデバイスから別のデバイスへの、例えば、WCD102から外部出力デバイス104へのマルチメディアコンテンツの安全な送信を保証する処理を含み得る。コンテンツ保護処理は、例えば、マルチメディアコンテンツの暗号化を含み得る。マルチメディアコンテンツの安全な送信は、マルチメディアコンテンツが無許可の相手またはデバイスによってアクセスされないことを保証し得る。
【0019】
WCD102は、マルチメディアアプリケーション116などのプロセスとアプリケーションとを実行し得る。いくつかの例では、WCD102は、マルチメディアアプリケーション116によって生成されたマルチメディアコンテンツを表示するディスプレイ124(例えば、LCDスクリーン)を含み得る。WCD102のディスプレイ124は小さい場合があり、マルチメディアコンテンツが高解像度か低解像度かの違いを生じない場合があるので、WCD102のディスプレイ124は、マルチメディアコンテンツを低解像度で表示し得る。加えて、マルチメディアコンテンツを低解像度で表示することは、WCD102における処理電力を節約し得る。しかしながら、いくつかの例では、WCD102は、WCD102から受信されたマルチメディアアプリケーション116のマルチメディアコンテンツを提示し得る出力デバイス104に接続され得る。WCD102は、マルチメディアアプリケーション116のマルチメディアコンテンツを処理し、例えば、より大きいディスプレイ上での提示に適したより高い解像度でそのマルチメディアコンテンツを出力デバイス104に提供し得る。
【0020】
WCD102のプロセッサ112は、例えば、WCD102と外部出力デバイス104との間の外部接続を管理するためのアルゴリズムを含む1つまたは複数のアルゴリズムを実行するように動作可能であり得る。外部接続を管理するためのアルゴリズムは、メモリ114に記憶され得るか、またはプロセッサ112がアクセス可能な別個のモジュールに記憶され得る。一例では、プロセッサ112は、コンテンツ保護を伴うマルチメディアインターフェース118およびマルチメディアインターフェース接続106に関連する動作を管理して、バッテリー使用を低減するために、外部接続を管理するためのアルゴリズムを実行し得る。動作は、マルチメディアインターフェース118によって外部接続106、108、および110を介してWCD102から出力デバイス104に転送されたコンテンツのコンテンツ処理とコンテンツ保護処理とを含み得る。例えば、プロセッサ112は、本開示に記載する技法に従って、WCD102と外部出力デバイス104との間の接続106のうちの1つの使用モードを検出し、検出された使用モードが非アクティブであるときに、コンテンツ処理またはコンテンツ保護処理のうちの少なくとも1つを短縮し得る。
【0021】
メモリ114は、1つまたは複数のコンピュータ可読記憶媒体を含み得る。メモリ114は、情報の長期および短期記憶が可能な1つまたは複数の記憶デバイスを備え得る。メモリ114の短期記憶は、揮発性メモリとしても説明され得る。揮発性メモリの例としては、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、および当技術分野で知られている他の形態の揮発性メモリがある。メモリ104の長期記憶は、不揮発性メモリとしても説明され得る。そのような不揮発性記憶要素の例としては、磁気ハードディスク、光ディスク、フロッピー(登録商標)ディスク、フラッシュメモリ、または電気的プログラマブルメモリ(EPROM)もしくは電気消去可能プログラマブルメモリ
(EEPROM)(登録商標)の形態があり得る。一例では、メモリ114は、例えば、外部接続を管理するためのアルゴリズムなど、プロセッサ112によって実行するためのプログラム命令を記憶するために使用され得る。また、メモリ114は、プログラム実行中または動作中の情報を記憶するために、WCD102上で動作するソフトウェアおよび/またはアプリケーションによって使用され得る。
【0022】
マルチメディアアプリケーション116は、WCD102上で動作するアプリケーションであってもよく、ビデオおよび/またはオーディオコンテンツなどのマルチメディアコンテンツを提供し得る。マルチメディアアプリケーション116のいくつかの例は、ビデオおよび/またはオーディオ再生アプリケーション、ウェブTV、ウェブラジオなどであり得る。マルチメディアアプリケーション116によって提供されるコンテンツは、メモリ114(例えば、キャプチャされたビデオおよび/またはオーディオ)からまたは外部ソース(例えば、インターネット)から取得され得る。プロセッサ112は、WCD102のディスプレイ124上で提示するためのマルチメディアコンテンツを処理し得る。しかしながら、マルチメディアコンテンツをより高いビデオ解像度および/またはより高い忠実度オーディオを提供する出力デバイス104上に提示させることが望ましい場合がある。
【0023】
WCD102は、マルチメディアインターフェース118を介して1つまたは複数の出力デバイス104との接続106を確立し得る。マルチメディアインターフェース118は、安全なデジタルマルチメディアコンテンツを提供することが可能なコンテンツ保護を伴うマルチメディアインターフェースを備える。上述のように、コンテンツ保護を伴うマルチメディアインターフェースのいくつかの例は、HDMI、MHLなどであり得る。HDMIの例はこの説明の目的で使用されるが、本開示の技法はコンテンツ保護を伴う他のタイプのマルチメディアインターフェースに適用可能であり得ることを理解されたい。
【0024】
WCD102が1つまたは複数の出力デバイス104に接続されると、WCD102は、出力デバイス104上で提示するためのマルチメディアアプリケーション116からのマルチメディアコンテンツを処理し得る。また、WCD102は、マルチメディアインターフェース118を介した出力デバイス104へのマルチメディアコンテンツの安全な送信を保証するためのコンテンツ保護処理を実行し得る。上述のように、WCD102のプロセッサ112は、外部接続を管理するためのアルゴリズムを実行し得る。例えば、プロセッサ112は、WCD102と1つまたは複数の出力デバイス104との間の接続106の使用モードを検出し、検出された使用モードに基づいてマルチメディア処理を調整し得る。
【0025】
一例では、プロセッサ112は、1つまたは複数の出力デバイス104がWCD102に接続されているかどうかを判定する信号について接続106を監視し得る。一例では、信号はホットプラグ検出(HPD)信号とすることができる。例えば、HPD信号が接続上で検出されなかった場合、プロセッサ112は、1つまたは複数の出力デバイス104がもはやWCD102に接続されていないと判定し、接続の使用モードを非アクティブとして設定する。この例では、コンテンツ保護を伴うマルチメディアインターフェース接続106がアクティブ動作中に(すなわち、マルチメディアアプリケーション116の動作中に)切断された場合、プロセッサ112は、使用モードが非アクティブであると判定し、WCD102上の処理を短縮して、バッテリー120の電力を節約し得る。
【0026】
コンテンツ保護を伴うマルチメディアインターフェース接続106が切断されると、プロセッサ112は、一般に出力デバイス104上での提示に要求される高解像度でのマルチメディアコンテンツの処理を停止し得る。その代わりに、プロセッサ112は、WCD102のローカルディスプレイ124上での提示により適切で許容可能であり得る低解像度フォーマットでマルチメディアコンテンツを処理し得る。ローカルディスプレイ124は、出力デバイス104よりもはるかに低い解像度を有することがあり、コンテンツ処理にはるかに低いバッテリー電力を要求することもある。例えば、プロセッサ112は、WCD102のグラフィックス処理ユニット(GPU)を再構成して、ローカルディスプレイ124のためのコンテンツを処理し得る。マルチメディアコンテンツ処理を短縮することに加えて、プロセッサ
112は、コンテンツ保護を伴う切断されたマルチメディアインターフェース接続106のコンテンツ保護処理を中断することもあり、このことはやはり消費されるバッテリー電力の量を低減できる。
【0027】
別の例では、プロセッサ112は、WCD102上で動作するマルチメディアアプリケーション116のうちの1つの動作を監視して、マルチメディアアプリケーション116のうちの1つの状態を判定し得る。マルチメディアアプリケーションの状態は、再生中、一時停止、または停止であり得る。アプリケーションが一時停止または停止されている場合、プロセッサ112は、いかなるコンテンツもマルチメディアインターフェース接続106を介して送信されておらず、従って、使用モードは非アクティブであると判定する。次いで、プロセッサ112は、マルチメディアコンテンツの処理を短縮して、バッテリー電力を節約し得る。一般に、マルチメディアアプリケーション116のうちの1つが停止または一時停止されているとき、マルチメディアアプリケーションはディスプレイ上にブランクフレームまたは最後に表示されたフレームを提示する。例えば、本技法によれば、プロセッサ112は、ブランクフレームまたはマルチメディアアプリケーション116のうちの1つからの最後に表示されたフレームを、マルチメディアコンテンツを現在提示している出力デバイス104のうちの1つが許容可能な最小のデータ解像度で処理し得る。別の例では、プロセッサ112は、マルチメディアアプリケーション116のうちの1つからのコンテンツの処理を停止し、その代わりに、出力デバイス104によって提示するためのメモリ114からの低解像度テストパターンを処理し得る。出力デバイス104上で提示するためのマルチメディアコンテンツの解像度を下げると、コンテンツ処理のために消費されるバッテリー電力がはるかに少なくなる。
【0028】
加えて、マルチメディアアプリケーション116のうちの1つが一時停止または停止された場合、いかなる固有のまたは新しいコンテンツも接続を介して送信されていないので、プロセッサ112は、コンテンツ保護を伴うマルチメディアインターフェース接続106のコンテンツ保護処理を中断することがある。例えば、プロセッサ112は、デバイス検出処理、無効化処理、暗号化処理、およびリンク完全性チェック処理などの1つまたは複数のコンテンツ保護機能を中断し得る。保護する必要があるコンテンツが出力デバイス104に送信されていないときに、WCD102上での追加のコンテンツ保護処理を中断することは、バッテリー使用を著しく低減し得る。
【0029】
しかしながら、接続の使用モードがアクティブであるか非アクティブであるかにかかわらず、プロセッサ112は出力デバイス104の各々との認証処理を実行し続けることができる。認証処理は、WCD102が出力デバイス104の各々とのハンドシェークを実行することを必要とし、HDCP仕様の例では、最大7つのリピータと127のシンクデバイス(例えば、出力デバイス104)とを含み得る。出力デバイス104の各々との認証された接続を維持することによって、接続の使用モードが非アクティブであるときでも、WCD102は再認証処理に大量のバッテリー電力を使用することを回避し得る。
【0030】
図2は、コンテンツ保護を伴うマルチメディアインターフェース218を有するWCD202を含むワイヤレス通信システムの一例を示すブロック図である。
図2のWCD202は、
図1のWCD102の例示的なアーキテクチャを示す。
図2の例では、WCD202のコンテンツ保護を伴うマルチメディアインターフェース218は、HDMIを備え得る。コンテンツ保護を伴うマルチメディアインターフェース218は、安全なデジタルマルチメディアコンテンツを提供することが可能であってもよく、
図1の出力デバイス104と実質的に同様であり得る1つまたは複数の出力デバイス204上で提示するためのWCD202上のマルチメディアアプリケーションからのマルチメディアコンテンツを送信するためにWCD202によって使用され得る。一例では、出力デバイス204は、外部HDMI接続デバイスとすることができる。
【0031】
一例では、
図2が示すように、WCD202はいくつかの構成要素を含み得るが、WCD202のアーキテクチャは
図2に示すものに限定されない。WCD202は、いくつかの通信モジュールおよびユニット、例えば、モデム242と、WiFi244と、全地球測位システム(GPS)246と、Bluetooth(登録商標)(BT)248とを含み得る。通信モジュールおよびユニットは、通信目的の専用プロセッサであってもよいまたはWCD202の汎用プロセッサの一部であってもよい接続プロセッサ240によって管理され得る。また、WCD202は、周辺デバイスおよびインターフェースモジュール226と、セキュリティモジュール228と、クロックモジュール230と、バッテリーユニット232と、センサおよびユーザインターフェースデバイス234とを含み得る。バッテリーユニット232は、バッテリーモニタと、例えば、バッテリー220などのWCD202の電源を監視および管理するためのプラットフォームリソースおよび電源管理機能とを含み得る。外部メモリ238がWCD202内のいくつかのモジュールおよびユニットに接続され得る場合、WCD202は、外部メモリユニット238を利用して、その内部オンチップメモリ214を補完し得る。
【0032】
WCD202は、例えば、
図1のWCD102のマルチメディアアプリケーション116などのマルチメディアアプリケーションを含み得る、グラフィカル処理ユニット(GPU)およびアプリケーション252も含み得る。GPUおよびアプリ252は、マルチメディアコンテンツの処理および生成の動作中に、WCD202内のいくつかのユニットと対話し得る。アプリケーションプロセッサ236は、マルチメディアコンテンツの処理を行うことができ、WCD202に関連する汎用プロセッサの一部であってもよい。アプリケーションデータムーバ254は、データ、例えば、マルチメディアデータの適切なメモリロケーション(例えば、外部メモリ238および/またはオンチップメモリ214)への移動を管理できる。いくつかの例では、マルチメディアコンテンツは、ネットワークソース(例えば、インターネット)から取得され得るまたはWCD202内のセンサ(例えば、内蔵カメラ)によっておよび/または別のマルチメディアユニット(例えば、オーディオユニット250)から取得され得る。WCD202は、WCD202によって取得された符号化マルチメディアコンテンツを表示前に復号し得るオーディオ/ビデオデコーダ258も含み得る。マルチメディアコンテンツは、ディスプレイプロセッサおよびコントローラ256によって、表示のために処理され得る。いくつかの例では、マルチメディアコンテンツは、ディスプレイ224上でローカルに処理され、表示され得る。他の例では、マルチメディアコンテンツは、マルチメディアコンテンツがマルチメディアインターフェース218を介して送信される先の外部デバイス、例えば、出力デバイス204上で表示のために処理され得る。
【0033】
WCD202は、マルチメディアインターフェース218を介して1つまたは複数の出力デバイス204との接続を確立し得る。マルチメディアインターフェース218は、安全なデジタルマルチメディアコンテンツを提供することが可能なコンテンツ保護を伴うマルチメディアインターフェースであってもよい。マルチメディアインターフェース218は、保護されたマルチメディアコンテンツが外部デバイス(例えば、リピータ260および/または出力デバイス204)に送信される外部インターフェース208に接続され得る。外部インターフェース208は、外部インターフェースブリッジまたはドッキングステーションであってもよい。
【0034】
出力デバイス204は、WCD202上のGPUおよびアプリ252内のマルチメディアアプリケーションによって提供されるマルチメディアコンテンツを表示するために、WCD202に接続され得る。マルチメディアコンテンツは、出力デバイス204上での提示により適している、より高い解像度に処理され得る。出力デバイス204は、コンテンツ保護を伴うマルチメディアインターフェース218、例えば、HDMIを介してWCD202に接続され得る。ディスプレイプロセッサおよびコントローラ256は、WCD202と1つまたは複数の出力デバイス204との間のHDMI接続の使用モードを検出することによって、HDMI接続を管理し、検出された使用モードに基づいてマルチメディア処理を調整し得る。例えば、HDMI接続が非アクティブであるとき、ディスプレイプロセッサおよびコントローラ256は、上記で説明したように、WCD202によるバッテリー消費を低減するために、コンテンツ処理およびコンテンツ保護処理のうちの少なくとも1つを短縮し得る。
【0035】
HDMI接続のコンテンツ処理は、ローカルディスプレイ224上またはHDMI接続出力デバイス204上で提示するための、WCD202上で動作するGPUおよびアプリ252内の1つまたは複数のマルチメディアアプリケーションからのマルチメディアコンテンツを準備することを含み得る。HDMI接続のコンテンツ保護処理は、各外部デバイス、例えば、1つまたは複数の出力デバイス204またはリピータ260に対して、デバイス検出と、認証と、無効化と、暗号化と、リンク完全性チェックとを実行することを含み得る。この説明では、高帯域幅デジタルコンテンツ保護(HDCP)の例は、マルチメディアコンテンツのデジタル保護規格として利用され得る。しかしながら、他の形態のデジタルコンテンツ保護が利用され得ることを理解されたい。
【0036】
外部デバイスの検出の場合、HDMIコネクタは、リピータ(例えば、リピータ260)またはシンクデバイス(例えば、出力デバイス204)であり得る外部デバイスがHPDピン上で信号(例えば、+5VDC)を与えて、WCD202にディスプレイデータチャネル(DDC)クエリを開始させることを可能にするHPDピンを含み得る。DDCクエリは、外部HDMI接続出力デバイス204に問い合わせて、出力デバイス204のディスプレイ機能を判定し得る。また、DDCクエリは、出力デバイス204がHDCP準拠であるかどうかを判定し得る。一般に、HDMIソース(例えば、WCD202)では、HPDピンにおいて最小55mAを供給することを必要とし得る。
【0037】
WCD202が出力デバイス204を検出した後、WCDは出力デバイス204および/またはリピータ260を認証し得る。出力デバイス204の場合、DDCクエリに基づいて、WCD202は、出力デバイス204がマルチメディアコンテンツを受信するのを認証されたかどうかを判定し得る。認証は、出力デバイス204およびWCD202がその公開キーを公開することを含み得る。次いで、WCD202および出力デバイス204は、独立して、その秘密キーによって共通のセッションキーを得て、認証を完了する。出力デバイス204がマルチメディアコンテンツを受信するのを認証された場合、WCD202は出力デバイス204に送信されたマルチメディアコンテンツを暗号化して、盗聴を防止する。WCD202はリピータ260を同様に認証し得る。WCD202は、潜在的にすべてのダウンストリームHDMIデバイス(例えば、リピータ260および出力デバイス204)の再認証オーバーヘッドである再認証ペナルティを回避するために接続の完全性を維持し得る。例えば、HDCPは、WCD202が、7つのリピータ(例えば、リピータ260)を有する127もの数のシンクデバイス(例えば、出力デバイス204)、従って、最大7つのレベルで一緒に接続された最大127のデバイスに接続するのを可能にする。
【0038】
認証の後、マルチメディアコンテンツ内で提供されるシステム再更新メッセージ(System Renewability Message)(SRM)をWCD202がレビューする、無効化が行われ得る。SRMは、失効キー選択ベクトル(KSV)のリストを含み得る。次いで、WCD202は、失効KSVをリピータ260および/または出力デバイス204から取得されたダウンストリームKSVと比較し、保護されたマルチメディアコンテンツをSRM内にリストされたリピータ/出力デバイスに送信することを停止する。
【0039】
次いで、WCD202は、暗号化キーを使用して、マルチメディアコンテンツを暗号化し得る。例えば、WCD202は、セッションキーから得られ得る暗号値を用いて、マルチメディアコンテンツの排他的OR(XOR)をとり得る。また、リピータ260および/または出力デバイス204は、最初のセッションキーから得られた同じ暗号値を用いて、暗号化されたマルチメディアコンテンツのXORをとって、マルチメディアコンテンツを復号する。
【0040】
加えて、WCD202は、リピータ260および/または出力デバイス204とのリンクの完全性を定期的にチェックして、検証プロセスを使用することによってマルチメディアコンテンツの暗号化が信頼できることを保証し得る。例えば、WCD202は、128フレームごとにリピータ260および/または出力デバイス204によって与えられる16ビット完全性チェックを利用し得る。検証プロセスは、定期的に、例えば、1.5〜2.5秒ごとに行われ得る。ディスプレイプロセッサおよびコントローラ256は、HDMIデバイス(例えば、出力デバイス204)とWCD202との間の接続の状態に基づいてディスプレイ設定を構成し得る。一例では、出力デバイス204は、コンテンツ保護を伴うマルチメディアインターフェース接続218(例えば、HDMI)を介して接続され得る。WCD202上で動作するマルチメディアアプリケーションは、プロセッサ(例えば、ディスプレイプロセッサおよびコントローラ256)によって処理され得るマルチメディアコンテンツを提供し得る。出力デバイス204がWCD202に接続されると、マルチメディアコンテンツは、マルチメディアコンテンツを提示するための出力デバイス204の要件(例えば、より高い解像度、より高いオーディオ品質など)に対応するように処理され得る。マルチメディアコンテンツは、接続された出力デバイス204上で提示するために処理され、コンテンツ保護を伴うマルチメディアインターフェース218を介して出力デバイスに送信するためのコンテンツ保護のために処理される。
【0041】
出力デバイス204が切断されたまたはマルチメディアアプリケーションが一時停止もしくは停止された場合、マルチメディア
コンテンツの処理および/またはコンテンツ保護処理は消費されるバッテリー電力を低減するために短縮され得る。出力デバイス204が切断された場合、ディスプレイプロセッサおよびコントローラ256は、一般に出力デバイス204上で提示するのに必要な高解像度でのマルチメディアコンテンツの処理を停止し得る。その代わりに、ディスプレイプロセッサおよびコントローラ256は、ローカルディスプレイ224上での提示により適切で許容可能であり得る低解像度フォーマットでマルチメディアコンテンツを処理することができ、このことは、コンテンツ処理にはるかに少ないバッテリー電力を必要とし得る。マルチメディアコンテンツ処理を短縮することに加えて、コンテンツ保護処理はコンテンツ保護を伴う切断されたマルチメディアインターフェース接続のために中断されることがあり、このことはやはり消費されるバッテリー電力の量を低減できる。
【0042】
マルチメディアアプリケーションが一時停止または停止された場合、マルチメディアコンテンツの処理はバッテリー電力消費を低減するように変更され得る。一例では、ディスプレイプロセッサおよびコントローラ256は、ブランクフレームまたはマルチメディアアプリケーションからの最後に表示されたフレームを、マルチメディアコンテンツを提示している出力デバイス204が許容可能な最小のデータ解像度で処理し得る。別の例では、ディスプレイプロセッサおよびコントローラ256は、マルチメディアアプリケーションからのコンテンツの処理を停止し、その代わりに、出力デバイス204によって提示するためのメモリ214からの低解像度テストパターンを処理し得る。出力デバイス上で提示するためのマルチメディアコンテンツの解像度を下げると、コンテンツ処理のために消費されるバッテリー電力がはるかに少なくなる。コンテンツの処理を短縮することに加えて、いかなる固有のまたは新しいコンテンツも接続を介して送信されていないので、コンテンツ保護を伴うマルチメディアインターフェース接続のコンテンツ保護処理が中断されることがある。例えば、デバイス検出処理、無効化処理、暗号化処理、およびリンク完全性チェック処理などの1つまたは複数のコンテンツ保護機能が中断され得る。保護する必要があるコンテンツが送信されていないときにWCD202上での追加の処理を中断することは、バッテリー使用を著しく低減し得る。
【0043】
一時停止/停止することを可能にし得る、WCD202上で動作するマルチメディアアプリケーションの例としては、AUD/VIDファイル再生、WEB−TV(例えば、YouTube(登録商標))、WEBニュース(例えば、CNN)、WEBチューン(例えば、NPR)、オンラインゲームなどがある。上記で説明したように、本技法によれば、一時停止/停止をアサートすることは、マルチメディアコンテンツの処理を変更することになる場合がある。例えば、一時停止/停止は、出力デバイス204が許容可能な最小のマルチメディアコンテンツ解像度でHDMI接続を構成することになる場合がある。例えば、一時停止/停止は、AVMUTEをアサートすることによってHDMI接続を再構成することになる場合があり、このことは、出力デバイスに入力データの処理を停止させることに加えて、暗号化を停止することになる場合がある。
【0044】
加えて、従来のデバイス検出処理は、バッテリー電力を節約するために+5VDCをオフにし、HPDピン上の信号を無視することによって、中断され得る。この例では、WCD202は、遷移時間最短差動信号伝送方式(transition minimized differential signaling)(TMDS)差動ペアが終端したままであることをチェックすることによって、ダウンストリームHDMIデバイス(例えば、リピータ260および出力デバイス204)の存在を検出し続けることができる。TMDSは、HDMIのデータ伝送プロトコルであり、一時停止/停止状態中に終端され得る。WCD202は、受信したいかなるマルチメディアコンテンツも処理しないように出力デバイス204にシグナリングすることができ、場合によっては、オンチップメモリ214からのマルチメディアコンテンツをディスプレイ224上でのローカルディスプレイ用にキャッシュできる。また、WCD202はHDCP認証プロセスを停止し得る。最後に、このモードの間に、リンク完全性チェックおよび無効化処理が中断される場合があり、このことは消費されるバッテリー電力の量をさらに低減する。
【0045】
図3は、コンテンツ保護を伴うマルチメディアインターフェースを有するWCD内のバッテリー消費を低減するためのソフトウェアモデルを示すブロック図である。
図3の例では、例示的な例として、コンテンツ保護を伴うマルチメディアインターフェースはHDMIである。HDMIバッテリー消費低減ソフトウェアモデルは、ハードウェアプラットフォーム302と、ソフトウェアプラットフォーム304と、アプリケーション環境306とを含み得る。
図3のソフトウェアモデルの様々な部分は、例えば、WCD102に実装され、プロセッサ112によって制御/実行され得る。
【0046】
WCDのソフトウェアモデルは、ハードウェアプラットフォーム302と、ソフトウェアプラットフォーム304と、アプリケーション環境306とを含み得る。ハードウェアプラットフォーム302は、例えば、ネットワークアクセスユニット(例えば、モデム、WiFi(登録商標)、GPS、およびBT)と、配線およびインターフェース(例えば、ホットプラグ検出318)と、マルチメディアアクセラレータおよびインターフェースと、センサおよびユーザインターフェースデバイスと、プロセッサおよびメモリユニットと、クロック関連モジュールと、などを含み得る。
【0047】
ソフトウェアプラットフォーム304は、例えば、アプリケーションフレームワークアプリケーションプログラミングインターフェース(API)、オペレーティングシステムならびにメモリ管理およびセキュリティユニット、ローカエルエリアネットワーク(LAN)およびワイドエリアネットワーク(WAN)ネットワーキングユニット、ネットワークアクセスユニットに関連するプロトコル、グラフィックスユニット、マルチメディア(例えば、オーディオ、ビデオ、イメージング)プロトコル、システムライブラリおよびドライバ、バッテリー監視および管理モジュールなどのソフトウェアモジュールを含み得る。ソフトウェアプラットフォーム304は、例えば、システム構成モジュール314と、接続管理モジュール(例えば、HDMI接続マネージャ312およびHDMI完全性チェック316)とを含み得る。
【0048】
アプリケーション環境306は、ネイティブでハイレベルのオペレーティングシステムアプリケーションと、サードパーティの拡張および仮想マシンアプリケーションと、他のアプリケーションサービスおよび拡張とを含み得る。アプリケーション環境306は、例えば、アプリケーションランタイムマネージャ308と、アプリケーション登録モジュール310とを含み得る。
【0049】
マルチメディアアプリケーションに関連する処理は、アプリケーション環境306で実施され得る。そのような処理は、アプリケーションランタイムマネージャ308と、アプリケーション登録モジュール310とを含み得る。HDMI関連の処理を含むシステム構成に関連する処理は、ソフトウェアプラットフォーム304で実施され得る。ハードウェアプラットフォーム302は、コンテンツ保護を伴うマルチメディアインターフェース接続、例えば、HDMIを含む、様々なハードウェア構成要素およびインターフェースを含み得る。外部出力デバイスがWCDに接続されるとき、ホットプラグ検出318は、外部出力デバイスを検出し、デバイスに問い合わせて情報、例えば、出力デバイスのディスプレイ機能およびコンプライアンス情報を収集するために、HDMI接続マネージャ312によって使用され得る。上記で説明したように、HDMI完全性チェック316は、収集された情報を利用して、出力デバイスを認証し得る。
【0050】
次いで、上記で説明したように、HDMI接続マネージャ312は、マルチメディアアプリケーションからのマルチメディアコンテンツと、マルチメディアコンテンツ保護とに関連する処理を管理し得る。一例では、HDMI接続マネージャ312は、
図2のディスプレイプロセッサおよびコントローラ256の処理構成要素であってもよい。別の例では、HDMI接続マネージャは、ディスプレイ特有の動作および/または構成要素とは別個の処理構成要素であってもよい。マルチメディアコンテンツ保護は、デバイス検出と、認証と、暗号化と、無効化と、完全性チェックとを含む。HDMI完全性チェック316は、出力デバイスとのリンクの完全性を定期的にチェックすることができ、このことは、出力デバイスが切断されたかどうかをホットプラグ検出318を介して判定し得る。加えて、HDMI接続マネージャ312は、マルチメディアアプリケーションが一時停止または停止されたかどうかをホットプラグ検出318を介して判定し得る。
【0051】
出力デバイスが切断されたまたはマルチメディアアプリケーションが一時停止もしくは停止された場合、上記で説明したように、システム構成314は、使用モードを非アクティブに設定し、高解像度でのマルチメディアコンテンツ処理および/またはマルチメディアコンテンツ保護処理を短縮または中断し得る。マルチメディアコンテンツ処理および/またはマルチメディアコンテンツ保護処理を短縮することは、外部出力デバイスに関連するマルチメディアアプリケーション処理によって消費されるバッテリー電力の量を低減し得る。
【0052】
図4は、WCD内のコンテンツ保護を伴うマルチメディアインターフェースの例示的なディスプレイプロセッサおよびコントローラを示すブロック図である。
図4に示すシステムは、WCD(例えば、
図1のWCD102または
図2のWCD202)に実装され得る。一例では、外部出力デバイスは、コンテンツ保護を伴うマルチメディアインターフェース接続(例えば、HDMI)を介してWCDに接続され得る。上記で説明したように、HDMI接続のコンテンツ保護処理は、各外部デバイスに対して、デバイス検出と、認証と、無効化と、暗号化と、リンク完全性チェックとを実行することを含み得る。
【0053】
検出中に、システムコントローラ408は、出力デバイスからHPD信号410(例えば、+5VDC)をHPDピン上で受信し、WCDにディスプレイデータチャネル(DDC)クエリ412を開始させ得る。DDCクエリ412は、外部HDMI接続出力デバイスに問い合わせて、出力デバイスのディスプレイ機能を判定し得る。また、DDCクエリは、出力デバイス204がHDCP準拠であるかどうかを判定し得る。
【0054】
出力デバイスの検出後、認証を実行することができ、ここで、DDCクエリに基づいて、WCDは、出力デバイスがWCDからマルチメディアコンテンツを受信するのを認証されたかどうかを判定し得る。マルチメディアコンテンツは、WCD上のローカルソースからまたはビデオデータインターフェース404および/またはオーディオデータインターフェース406を介して1つまたは複数の外部ソースからオーディオ/ビデオジェネレータ414によって生成され得る。上記で説明したように、出力デバイスがマルチメディアコンテンツを受信するのを認証された場合、WCDは、暗号化セッションキーを使用して、出力デバイスに送信されたマルチメディアコンテンツを暗号化する。例えば、WCDは、セッションキーから得られた暗号値を用いてマルチメディアコンテンツのXORをとり得る、マルチプレクサおよびXORユニット416を含み得る。
【0055】
出力デバイスは、マルチメディアアプリケーションからのマルチメディアコンテンツを提示していてもよく、高解像度および/または高品質マルチメディアコンテンツは、デバイスとの接続が維持され、マルチメディアコンテンツが出力デバイスによって再生されている限り、HDMI送信機418を介して出力デバイスに送信され得る。上述したように、出力デバイスが接続されたまたはマルチメディアアプリケーションもしくは出力デバイスが一時停止もしくは停止された場合、マルチメディアコンテンツの処理はバッテリー電力消費を低減するように変更され得る。一例では、ビデオが一時停止または停止されると、ブランクフレームまたは最後に表示されたフレームが提示され得る。
【0056】
ビデオ処理中に、マルチメディアコンテンツはキャッシュされ、次いで、HDMI送信機418によって出力デバイスに送信するために処理され得る。例えば、ビデオコンテンツはビデオデータインターフェース404にキャッシュされ得、オーディオコンテンツはオーディオデータインターフェース406にキャッシュされ得る。一例では、マルチメディアアプリケーションが一時停止または停止されると、マルチメディアアプリケーションがマルチメディアコンテンツの再生を再開するまで、ブランクフレームが提示のために出力デバイスに送信され得る。別の例では、マルチメディアアプリケーションが一時停止または停止されると、最後に表示されたフレームが出力デバイス上に提示され得る。マルチメディアコンテンツが再生されていないので、マルチメディアアプリケーションが一時停止または停止されている間にディスプレイに送信されたフレームは、高解像度で表示される必要がない場合がある。キャッシュされたバージョンの最終フレームは、処理することなく出力デバイスに送信され得る。このようにして、フレームを処理して高解像度フレームを生成する必要がなくなった結果として、バッテリー電力が低減され得る。加えて、最終フレームまたはブランクフレームは、コンテンツ保護処理を実行する必要なしに送信され得、このことは、バッテリー消費をさらに低減し得る。
【0057】
図5は、コンテンツ保護を伴うマルチメディアインターフェースを有するWCD内のバッテリー電力消費を低減するための例示的な技法を示すフローチャートである。
図5に示す技法は、一例として、
図1のWCD102内のプロセッサ112に関して説明される。WCD102は、マルチメディアコンテンツを表示するために、外部出力デバイス104に接続され得る。WCD102上で動作するマルチメディアアプリケーションは、マルチメディアコンテンツを提供し得、マルチメディアコンテンツは、プロセッサによって処理されて、外部出力デバイス上で提示するための高解像度マルチメディアコンテンツを提供し得る。プロセッサ112は、アルゴリズムを実行するか、またはWCD102と出力デバイス104との間の外部接続を管理するモジュールを制御し得る。アルゴリズムは、接続を管理して、出力デバイス104に関連する動作に基づいてWCD102内のバッテリー電力消費を低減し得る。動作は、WCD102からコンテンツ保護を伴うマルチメディアインターフェース118を介して外部出力デバイス104に送信されたコンテンツのコンテンツ処理とコンテンツ保護処理とを実行することを含み得る。
【0058】
一例では、プロセッサ112は、アルゴリズムを実行して、WCD102と外部デバイス104との間の接続に関連する使用モードを検出し得る(602)。出力デバイスがコンテンツ保護を伴うマルチメディアインターフェース接続118を介してWCD102に接続され、新しいマルチメディアコンテンツが出力デバイス104に送信するために処理されているとき、使用モードはアクティブである。アルゴリズムは、接続に関連する信号、例えば、HPD信号を検出することによって、WCD102と出力デバイス104との間の接続を監視し得る。一例では、アクティブ動作中に(例えば、マルチメディアアプリケーションが動作している間に)信号が検出されなかった場合、アルゴリズムは、出力デバイスはもはや接続されていない(例えば、切断された、電源を切られた、など)と判定し得、使用モードを非アクティブに設定し得る。また、アルゴリズムはマルチメディアアプリケーションの動作を監視し得る。一例では、マルチメディアアプリケーションは一時停止または停止されており、いかなる新しいマルチメディアコンテンツも生成していないとアルゴリズムが判定した場合、アルゴリズムは使用モードを非アクティブに設定し得る。
【0059】
使用モードがアクティブである(604のいいえ(NO)分岐)場合、プロセッサ112は、使用される規格、例えば、HDCPと、インターフェース、例えば、HDMIとに従って、マルチメディアコンテンツおよびコンテンツ保護の処理を継続し得る(606)。使用モードが非アクティブである(604のはい(YES)分岐)場合、プロセッサ112は、マルチメディアコンテンツ処理およびコンテンツ保護に関して消費される電力の量を低減するために、マルチメディアコンテンツおよび/またはコンテンツ保護の処理を短縮し得る(608)。
【0060】
アクティブ動作中に1つまたは複数の外部デバイスが切断されたので使用モードが非アクティブである例では、プロセッサ112は、一般に切断された外部デバイス上で提示するのに必要な高解像度でのマルチメディアコンテンツの処理を停止し得る。その代わりに、プロセッサ112は、WCD102のローカルディスプレイ124上での提示により適切で許容可能であり得る低解像度フォーマットでマルチメディアコンテンツを処理し得る。マルチメディアコンテンツ処理を短縮することに加えてまたはその代わりに、プロセッサ112は、コンテンツ保護を伴う切断されたマルチメディアインターフェース接続118のコンテンツ保護処理を中断し得る。
【0061】
マルチメディアアプリケーションが一時停止または停止されたので使用モードが非アクティブである例では、プロセッサ112は、新しいコンテンツはマルチメディアインターフェース接続118を介して送信されていないと判定し得る。次いで、プロセッサ112は、ブランクフレームまたはマルチメディアアプリケーションからの最後に表示されたフレームを、外部出力デバイスが許容可能な最小のデータ解像度で処理することによって、マルチメディアコンテンツの処理を短縮し得る。別の例では、プロセッサ112は、マルチメディアアプリケーションからのコンテンツの処理を停止し、その代わりに、出力デバイス104によって提示するための、WCD102のメモリ114にキャッシュされた低解像度テストパターンまたはフレームを処理し得る。一時停止または停止中にフレームを低解像度で処理することに加えてまたはその代わりに、いかなる固有のまたは新しいコンテンツも接続を介して送信されていないので、プロセッサ112はコンテンツ保護を伴うマルチメディアインターフェース接続のコンテンツ保護処理を中断し得る。例えば、プロセッサ112は、1つまたは複数のコンテンツ保護機能(例えば、デバイス検出処理、無効化処理、暗号化処理、およびリンク完全性チェック処理)を中断し得る。
【0062】
図6は、コンテンツ保護を伴うマルチメディアインターフェース接続が非アクティブであるときに、WCDによってコンテンツ処理および/またはコンテンツ保護処理を短縮する例示的な技法を示すフローチャートである。
図6に示す技法は、
図2で説明したWCD202とWCDアーキテクチャとに対応し得る。WCD202は、提示および表示するためのマルチメディアコンテンツを提供することが可能なマルチメディアアプリケーションを含み得る。WCD202がいかなる外部出力デバイス204にも接続されていないとき、WCD202はローカルディスプレイ224上でマルチメディアコンテンツを表示し得る。マルチメディアコンテンツがローカルで表示されているとき、例えば、ディスプレイのサイズおよびバッテリー電力などの制限により、低解像度コンテンツはローカルディスプレイ224上で提示するのに許容可能であり得る。また、WCD202は、外部出力デバイス204に接続するために利用され得る、コンテンツ保護を伴うマルチメディアインターフェース218、例えば、HDMIを有し得る。
【0063】
出力デバイス204は、マルチメディアアプリケーションによって提供され、WCD202から送信されたマルチメディアコンテンツを提示することが可能なデバイスであってもよい。出力デバイス204は、ローカルディスプレイ要件とは異なるいくつかの提示およびディスプレイ要件を有し得る。例えば、マルチメディアコンテンツは、出力デバイス204上での許容可能な提示のために、より高い解像度で提供される必要があり得る。従って、WCD202は、マルチメディアコンテンツを処理して、出力デバイス204が要求する解像度および品質でコンテンツを提供することが可能な1つまたは複数のプロセッサを含み得る。加えて、マルチメディアコンテンツは、HDMIインターフェース218を介して送信するために処理されて、コンテンツ保護を提供し得る。コンテンツ処理とコンテンツ保護処理とを実行することは、マルチメディアコンテンツがローカルで提示されるときに、一般に消費されるよりも多くのバッテリー電力を消費し得る。
【0064】
「シンク」とも呼ばれる出力デバイス204は、コンテンツ保護を伴うマルチメディアインターフェース、例えば、HDMIを介してWCD202に接続され得る。HDMI接続のコンテンツ保護処理は、デバイス検出と、認証と、無効化と、暗号化と、リンク完全性チェックとを実行することを含み得る。その動作中、HDMIコネクタは、HDMIとシンク(例えば、出力デバイス204)が接続されているかどうかを検出し得る(702)。HDMIコネクタは、出力デバイスが検出されるように、リピータ/シンク(例えば、出力デバイス204)がHPD上で信号(例えば、+5VDC)を与えることを可能にするHPDピンを搭載し得る。デバイスが検出されなかった場合、すなわち、出力デバイスがWCDに接続されていない場合、本方法は、マルチメディアアプリケーションが動作している(すなわち、マルチメディアアプリケーションが動作中で、マルチメディアコンテンツを提供している)かどうかを判定し得る(704)。アプリケーションが動作していない場合、本方法は、外部出力デバイスへの接続が検出されるかどうかを定期的にチェックすることに戻り得る。アプリケーションは動作しているが、外部デバイスが接続されていない場合、すべての登録されたアプリケーションが停止または一時停止され得る(706)。言い換えれば、出力デバイスが接続されておらず、マルチメディアアプリケーションが動作中である場合、コンテンツ処理はローカルディスプレイ処理に切り替えられ、接続された出力デバイスが(702)で検出されるまで、コンテンツ保護処理は実行されない。
【0065】
(702)で外部出力デバイスが検出された場合、HDMIの管理は認証を実行し得る。デバイス検出中に、外部デバイスが接続されていると判定された場合、本方法は、外部デバイスがリピータを介して接続されているかどうかを判定し得る(708)。外部デバイスがリピータを介して接続されている場合、リピータは、リピータに接続された各外部出力デバイスを認証して、デバイスの適格性を判定し得る(710)。デバイスの適格性は、出力デバイスがWCDからマルチメディアコンテンツを受信するのを認証されているかどうかを含み得る。次いで、リピータは各デバイスの秘密キーと接続トポロジとをWCDに報告し得る(712)。次いで、本方法は、接続されたリピータおよびシンク(すなわち、出力デバイス)の最大数にまだ達していないかどうかと、検出されたデバイス(シンク)が失効デバイスのリストに載っているかどうかとを判定し得る(714)。例えば、HDCPでは、7つのリピータを有する最大127のシンクが出力デバイスとして許容される。従って、チェックは、7つ未満のリピータおよび127未満の出力デバイスがWCDに接続されているかどうかということであり得る。最大数のリピータまたは出力デバイスがWCDに接続されているか、または検出された出力デバイスが失効デバイスのリストに載っている場合、接続は確立されず、本方法は、外部出力デバイスへの接続が検出されるかどうかを定期的にチェックすることに戻り得る。最大数のリピータおよび出力デバイスにまだ達しておらず、検出された出力デバイスが失効デバイスのリストに載っていない場合、本方法は、WCDおよび出力デバイスが知っているセッションキーを使用したコンテンツの暗号化に進み得る(718)。
【0066】
外部出力デバイスがリピータを介して接続されていない場合、WCDは接続された出力デバイスを認証して、その適格性を判定し得る(716)。次いで、本方法は、WCDおよび出力デバイスが知っているセッションキーを使用したWCDによるマルチメディアコンテンツの暗号化に進み得る(718)。出力デバイスは、セッションキーを使用して、マルチメディアコンテンツを復号し、レンダリングすることを期待され得る。出力デバイスが接続され、認証されると、本方法は、コンテンツを提供している任意のマルチメディアアプリケーションが停止または一時停止されているかどうかをチェックし得る(720)。マルチメディアアプリケーションが停止または一時停止されている場合、HDMI接続は、マルチメディアコンテンツを最小解像度で処理するように構成され得、キャッシュされたコンテンツは外部出力デバイスに送信され得る(722)。例えば、キャッシュされたコンテンツは、ブランクフレームまたはビデオコンテンツの最後に提示されたフレームであり得るおよび/またはオーディオコンテンツはミュートに設定され得る。このようにして、コンテンツの処理が最小化され得、消費されるバッテリー電力の量が低減され得る。加えて、マルチメディアアプリケーションが停止または一時停止されている間、WCD202は、デバイス検出と、コンテンツ暗号化と、リンク完全性チェックと、無効化とを含むコンテンツ保護処理を停止または短縮し得る。
【0067】
マルチメディアアプリケーションが停止または一時停止されていない場合、本方法はリンク完全性チェックの実行を継続し得る。リンク完全性チェックの場合、本方法は、現在処理されているフレームが、最終チェック以来、完全性チェックが実行されるべき場所、例えば、フレーム128にあるかどうかをチェックすることを含み得る(724)。チェックが実行されるべきである場合、WCDは対応する出力デバイスとのリンクの完全性をチェックして、検証プロセスを使用することによって、マルチメディアコンテンツの暗号化が信頼できることを保証し得る(726)。例えば、ソース(例えば、WCD)は、128フレームごとに出力デバイスによって与えられる16ビット完全性チェックを利用し得る。検証プロセスは、定期的に、例えば、1.5〜2.5秒ごとに行われ得る。また、本方法は、出力デバイスが保護された(すなわち、暗号化された)マルチメディアコンテンツを正しく復号できるかどうかをWCDが判定すること(728)を含み得る。出力デバイスが同じセッションキーを有する場合、出力デバイスは保護されたマルチメディアコンテンツを正しく復号できる。出力デバイスが保護されたコンテンツを正しく復号することができないとWCDが判定した場合、本方法は、外部出力デバイスへの接続が検出されるかどうかを定期的にチェックすることに戻り得る。
【0068】
出力デバイスが保護されたコンテンツを正しく復号できるとWCDが判定した場合、WCDは、出力デバイスが失効デバイスであるかどうかを判定し得る(730)。デバイスのKSVがマルチメディアコンテンツ内で提供された任意のSRMにある場合、デバイスは失効する。出力デバイスが失効した場合、WCDは出力デバイスへのコンテンツ配信を停止し、そのKSVをパージし得る(732)。次いで、本方法は、外部出力デバイスへの接続が検出されるかどうかを定期的にチェックすることに戻り得る。出力
デバイスが失効していない場合、本方法は、シンクに送信するためのマルチメディアコンテンツの暗号化に戻り得る(718)。
【0069】
1つまたは複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され得る。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む、コンピュータデータ記憶媒体または通信媒体を含み得る。いくつかの例では、コンピュータ可読媒体は非一時的コンピュータ可読媒体を備え得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび/またはデータ構造を取り出すために1つまたは複数のコンピュータあるいは1つまたは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。
【0070】
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD−ROMまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを搬送または記憶するために使用され得、コンピュータによってアクセスされ得る任意の他の媒体など、非一時的媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。例えば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)およびブルーレイディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【0071】
コードは、1つまたは複数のデジタル信号プロセッサ(DSP)などの1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。従って、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明する技法の実装に適した任意の他の構造のいずれかを指す。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび/またはソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素中に十分に実装され得る。
【0072】
本開示の技法は、ワイヤレスハンドセット、集積回路(IC)、またはICのセット(例えば、チップセット)を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、適切なソフトウェアおよび/またはファームウェアとともに、上記で説明した1つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【0073】
本発明の様々な実施形態について説明した。これらおよび他の実施形態は以下の特許請求の範囲内に入る。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
[C1]
ワイヤレス通信デバイスのマルチメディア接続を管理する方法であって、
前記ワイヤレス通信デバイス内のプロセッサによって、前記ワイヤレス通信デバイスと1つまたは複数の出力デバイスとの間の、コンテンツ保護を伴うマルチメディアインターフェース接続を備える接続の使用モードを検出することと、
前記出力デバイスによって提示するための前記ワイヤレス通信デバイスの少なくとも1つのアプリケーションのためのコンテンツ処理を実行することと、
前記接続を介した前記出力デバイスへの前記処理済みコンテンツの安全な送信のためのコンテンツ保護処理を実行することと、
前記接続の前記使用モードが非アクティブであるときに、前記コンテンツ処理または前記コンテンツ保護処理のうちの少なくとも1つを短縮することとを備える方法。
[C2]
前記接続が、高精細度マルチメディアインターフェース(HDMI)接続を備える、請求項1に記載の方法。
[C3]
接続の使用モードを検出することが、前記1つまたは複数の出力デバイスが前記ワイヤレス通信デバイスに接続されていることを示すホットプラグ検出(HPD)信号について前記接続を監視することを備え、前記HPD信号が検出されないときは、前記使用モードが非アクティブである、請求項1に記載の方法。
[C4]
コンテンツ処理を短縮することが、前記HPD信号が検出されないときに、前記ワイヤレス通信デバイスによって提示するための前記ワイヤレス通信デバイスの前記少なくとも1つのアプリケーションのためのコンテンツ処理を低減された解像度で実行することを備える、請求項3に記載の方法。
[C5]
接続の使用モードを検出することが、前記少なくとも1つのアプリケーションの動作を監視することを備え、前記アプリケーションの前記動作が一時停止または停止のうちの1つであるときは、前記使用モードが非アクティブである、請求項1に記載の方法。
[C6]
コンテンツ処理を短縮することが、前記アプリケーションの前記動作が一時停止または停止のうちの1つであるとき、前記出力デバイス上で提示するための前記少なくとも1つのアプリケーションのためのコンテンツ処理を前記出力デバイスが許容する最小解像度で実行することを備える、請求項5に記載の方法。
[C7]
コンテンツ保護処理を短縮することが、デバイス検出処理、無効化処理、暗号化処理、およびリンク完全性チェック処理のうちの少なくとも1つを中断することを備える、請求項1に記載の方法。
[C8]
コンテンツ保護処理を実行することが、前記1つまたは複数の出力デバイスの各々との認証処理を実行することを備え、コンテンツ保護処理を短縮することが、前記接続の前記使用モードが非アクティブであるときに、再認証処理を回避するために前記接続を維持することを備える、請求項1に記載の方法。
[C9]
マルチメディア接続を管理することが可能なワイヤレス通信デバイスであって、
前記ワイヤレス通信デバイスと1つまたは複数の出力デバイスとの間の接続を形成する、コンテンツ保護を伴うマルチメディアインターフェースと、
前記ワイヤレス通信デバイスと1つまたは複数の出力デバイスとの間の前記接続の使用モードを検出し、前記出力デバイスによって提示するための前記ワイヤレス通信デバイスの少なくとも1つのアプリケーションのためのコンテンツ処理を実行し、前記接続を介した前記出力デバイスへの前記処理済みコンテンツの安全な送信のためのコンテンツ保護処理を実行し、前記接続の前記使用モードが非アクティブであるときに、前記コンテンツ処理または前記コンテンツ保護処理のうちの少なくとも1つを短縮する1つまたは複数のプロセッサとを備えるワイヤレス通信デバイス。
[C10]
前記接続が、高精細度マルチメディアインターフェース(HDMI)接続を備える、請求項9に記載のデバイス。
[C11]
接続の使用モードを検出するために、前記1つまたは複数のプロセッサが、前記1つまたは複数の出力デバイスが前記ワイヤレス通信デバイスに接続されていることを示すホットプラグ検出(HPD)信号について前記接続を監視し、前記HPD信号が検出されないときは、前記使用モードが非アクティブである、請求項1に記載のデバイス。
[C12]
前記HPD信号が検出されないときにコンテンツ処理を短縮するために、前記1つまたは複数のプロセッサが、前記ワイヤレス通信デバイスによって提示するための前記ワイヤレス通信デバイスの前記少なくとも1つのアプリケーションのためのコンテンツ処理を低減された解像度で実行する、請求項11に記載のデバイス。
[C13]
接続の使用モードを検出するために、前記1つまたは複数のプロセッサが、前記少なくとも1つのアプリケーションの動作を監視し、前記アプリケーションの前記動作が一時停止または停止のうちの1つであるときは、前記使用モードが非アクティブである、請求項9に記載のデバイス。
[C14]
前記アプリケーションの前記動作が一時停止または停止のうちの1つであるときにコンテンツ処理を短縮するために、前記1つまたは複数のプロセッサが、前記出力デバイス上で提示するための前記少なくとも1つのアプリケーションのためのコンテンツ処理を前記出力デバイスが許容する最小解像度で実行する、請求項13に記載のデバイス。
[C15]
コンテンツ保護処理を短縮するために、前記1つまたは複数のプロセッサが、デバイス検出処理、無効化処理、暗号化処理、およびリンク完全性チェック処理のうちの少なくとも1つを中断する、請求項9に記載のデバイス。
[C16]
コンテンツ保護処理を実行するために、前記1つまたは複数のプロセッサが、前記1つまたは複数の出力デバイスの各々との認証処理を実行し、コンテンツ保護処理を短縮するために、前記1つまたは複数のプロセッサが、前記接続の前記使用モードが非アクティブであるときに、再認証処理を回避するために前記接続を維持する、請求項9に記載のデバイス。
[C17]
マルチメディア接続を管理することが可能なワイヤレス通信デバイスであって、
前記ワイヤレス通信デバイスと1つまたは複数の出力デバイスとの間の、コンテンツ保護を伴うマルチメディアインターフェース接続を備える接続の使用モードを検出するための手段と、
前記出力デバイスによって提示するための前記ワイヤレス通信デバイスの少なくとも1つのアプリケーションのためのコンテンツ処理を実行するための手段と、
前記接続を介した前記出力デバイスへの前記処理済みコンテンツの安全な送信のためのコンテンツ保護処理を実行するための手段と、
前記接続の前記使用モードが非アクティブであるときに、前記コンテンツ処理または前記コンテンツ保護処理のうちの少なくとも1つを短縮するための手段とを備えるワイヤレス通信デバイス。
[C18]
前記接続が、高精細度マルチメディアインターフェース(HDMI)接続を備える、請求項17に記載のデバイス。
[C19]
接続の使用モードを検出するための前記手段が、1つまたは複数の出力デバイスが前記ワイヤレス通信デバイスに接続されていることを示すホットプラグ検出(HPD)信号について前記接続を監視するための手段を備え、前記HPD信号が検出されないときは、前記使用モードが非アクティブである、請求項17に記載のデバイス。
[C20]
前記HPD信号が検出されないときに、コンテンツ処理を短縮するための手段が、前記ワイヤレス通信デバイスによって提示するための前記ワイヤレス通信デバイスの前記少なくとも1つのアプリケーションのためのコンテンツ処理を低減された解像度で実行するための手段を備える、請求項19に記載のデバイス。
[C21]
接続の使用モードを検出するための前記手段が、前記少なくとも1つのアプリケーションの動作を監視するための手段を備え、前記アプリケーションの前記動作が一時停止または停止のうちの1つであるときは、前記使用モードが非アクティブである、請求項17に記載のデバイス。
[C22]
前記アプリケーションの前記動作が一時停止または停止のうちの1つであるとき、コンテンツ処理を短縮するための前記手段が、前記出力デバイス上で提示するための前記少なくとも1つのアプリケーションのためのコンテンツ処理を前記出力デバイスが許容する最小解像度で実行するための手段を備える、請求項21に記載のデバイス。
[C23]
コンテンツ保護処理を短縮するための前記手段が、デバイス検出処理、無効化処理、暗号化処理、およびリンク完全性チェック処理のうちの少なくとも1つを中断するための手段を備える、請求項17に記載のデバイス。
[C24]
コンテンツ保護処理を実行するための前記手段が、前記1つまたは複数の出力デバイスの各々との認証処理を実行するための手段を備え、コンテンツ保護処理を短縮するための前記手段が、前記接続の前記使用モードが非アクティブであるときに、再認証処理を回避するために前記接続を維持するための手段を備える、請求項17に記載のデバイス。
[C25]
命令を記憶したコンピュータ可読記憶媒体を備えるコンピュータプログラム製品であって、前記命令が、実行されると、ワイヤレス通信デバイスのプロセッサに、
ワイヤレス通信デバイスと1つまたは複数の出力デバイスとの間の、コンテンツ保護を伴うマルチメディアインターフェース接続を備える接続の使用モードを検出させ、
前記出力デバイスによって提示するための前記ワイヤレス通信デバイスの少なくとも1つのアプリケーションのためのコンテンツ処理を実行させ、
前記接続を介した前記出力デバイスへの前記処理済みコンテンツの安全な送信のためのコンテンツ保護処理を実行させ、
前記接続の前記使用モードが非アクティブであるときに、前記コンテンツ処理または前記コンテンツ保護処理のうちの少なくとも1つを短縮させる、コンピュータプログラム製品。
[C26]
前記接続が、高精細度マルチメディアインターフェース(HDMI)接続を備える、請求項25に記載のコンピュータプログラム製品。
[C27]
前記プロセッサに接続の使用モードを検出させる前記命令が、前記プロセッサに、1つまたは複数の出力デバイスが前記ワイヤレス通信デバイスに接続されていることを示すホットプラグ検出(HPD)信号について前記接続を監視させる命令を備え、前記HPD信号が検出されないときは、前記使用モードが非アクティブである、請求項25に記載のコンピュータプログラム製品。
[C28]
前記HPD信号が検出されないときに、前記プロセッサにコンテンツ処理を短縮させる前記命令が、前記プロセッサに、前記ワイヤレス通信デバイスによって提示するための前記ワイヤレス通信デバイスの前記少なくとも1つのアプリケーションのためのコンテンツ処理を低減された解像度で実行させる命令を備える、請求項27に記載のコンピュータプログラム製品。
[C29]
前記プロセッサに接続の使用モードを検出させる前記命令が、前記プロセッサに、前記少なくとも1つのアプリケーションの動作を監視させる命令を備え、前記アプリケーションの前記動作が一時停止または停止のうちの1つであるときは、前記使用モードが非アクティブである、請求項25に記載のコンピュータプログラム製品。
[C30]
前記アプリケーションの前記動作が一時停止または停止のうちの1つであるとき、前記プロセッサにコンテンツ処理を短縮させる前記命令が、前記プロセッサに、前記出力デバイス上で提示するための前記少なくとも1つのアプリケーションのためのコンテンツ処理を前記出力デバイスが許容する最小解像度で実行させる命令を備える、請求項29に記載のコンピュータプログラム製品。
[C31]
前記プロセッサにコンテンツ保護処理を短縮させる前記命令が、前記プロセッサに、デバイス検出処理、無効化処理、暗号化処理、およびリンク完全性チェック処理のうちの少なくとも1つを中断させる命令を備える、請求項25に記載のコンピュータプログラム製品。
[C32]
前記プロセッサにコンテンツ保護処理を実行させる前記命令が、前記プロセッサに、前記1つまたは複数の出力デバイスの各々との認証処理を実行させる命令を備え、前記プロセッサにコンテンツ保護処理を短縮させる前記命令が、前記プロセッサに、前記接続の前記使用モードが非アクティブであるときに、再認証処理を回避するために前記接続を維持させる命令を備える、請求項25に記載のコンピュータプログラム製品。