(57)【要約】  電子コンテンツに関するデジタル著作権管理保護の無効化を防ぐための技法が提供される。これらの技法による方法は、コンテンツストリームを受信するステップと、コンテンツストリームからサンプルを取得するステップと、コンテンツストリームからのサンプルに基づいてヒストグラムを生成するステップと、ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツを含むとしてコンテンツストリームを分類するステップと、非オーディオコンテンツを含むとしてのコンテンツストリームの分類に応じて、コンテンツストリームの部分を修正するステップとを含む。コンテンツストリームは、コンテンツストリーム内に含まれたオーディオコンテンツが再生可能な状態に留まると同時に、コンテンツスストリーム内に含まれたいずれかのビデオが再生不可能にレンダリングされるように修正され得る。
2018514993.tif 000002
【特許請求の範囲】
【請求項１】
電子コンテンツに関するデジタル著作権管理保護の無効化を防ぐための方法であって、
コンテンツストリームを受信するステップと、
前記コンテンツストリームからサンプルを取得するステップと、
前記コンテンツストリームからの前記サンプルに基づいてヒストグラムを生成するステップと、
前記ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツを含むとして前記コンテンツストリームを分類するステップと、
非オーディオコンテンツを含むとしての前記コンテンツストリームの分類に応じて、前記コンテンツストリームの部分を修正するステップと
を含む、方法。
【請求項２】
前記コンテンツストリームの前記部分を前記修正するステップが、
前記コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるように、前記コンテンツストリームを修正するステップ
を含む、請求項1に記載の方法。
【請求項３】
前記コンテンツストリームの前記部分を前記修正するステップが、
前記コンテンツストリーム内に含まれたオーディオコンテンツが最小限に聞き取れるオーディオアーティファクトを伴って再生可能な状態に留まるように前記コンテンツストリームを修正するステップ
を含む、請求項1に記載の方法。
【請求項４】
前記コンテンツストリームの前記部分を前記修正するステップが、
前記コンテンツストリームの1つまたは複数の最下位ビットを修正するステップ
を含む、請求項1に記載の方法。
【請求項５】
オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを前記分類するステップが、
前記ヒストグラムの最高サンプル間隔が空であるかどうかを決定するステップ
をさらに含む、請求項1に記載の方法。
【請求項６】
オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを前記分類するステップが、
前記ヒストグラムがベル形状を含むこと、または前記ヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとして前記コンテンツストリームを分類するステップ
をさらに含む、請求項5に記載の方法。
【請求項７】
前記コンテンツストリームからの前記サンプルに基づいて前記ヒストグラムを前記生成するステップが、
前記コンテンツストリームの各オーディオチャネルに関してそれぞれのヒストグラムを生成するステップ
をさらに含む、請求項1に記載の方法。
【請求項８】
オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを前記分類するステップが、
前記ヒストグラムがベル形状を含むこと、または前記それぞれのヒストグラムのすべての最高サンプル間隔が空であることに応じて、オーディオコンテンツとして前記コンテンツストリームを分類するステップ
をさらに含む、請求項7に記載の方法。
【請求項９】
装置であって、
コンテンツストリームを受信するための手段と、
前記コンテンツストリームからサンプルを取得するための手段と、
前記コンテンツストリームからの前記サンプルに基づいてヒストグラムを生成するための手段と、
前記ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツを含むとして前記コンテンツストリームを分類するための手段と、
非オーディオコンテンツとしての前記コンテンツストリームの分類に応じて、前記コンテンツストリームの部分を修正するための手段と
を含む、装置。
【請求項１０】
前記コンテンツストリームの前記部分を前記修正するための手段が、
前記コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるように前記コンテンツストリームを修正するための手段
を含む、請求項9に記載の装置。
【請求項１１】
前記コンテンツストリームの前記部分を前記修正するための手段が、
前記コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるように前記コンテンツストリームを修正するための手段
を含む、請求項9に記載の装置。
【請求項１２】
オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを前記分類するための手段が、
前記ヒストグラムの最高サンプル間隔が空であるかどうかを決定するための手段
をさらに含む、請求項9に記載の装置。
【請求項１３】
オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを前記分類するための手段が、
前記ヒストグラムがベル形状を含むこと、または前記ヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとして前記コンテンツストリームを分類するための手段
をさらに含む、請求項12に記載の装置。
【請求項１４】
前記コンテンツストリームからの前記サンプルに基づいて前記ヒストグラムを前記生成するための手段が、
前記コンテンツストリームの各オーディオチャネルに関してそれぞれのヒストグラムを生成するための手段
をさらに含む、請求項9に記載の装置。
【請求項１５】
オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを前記分類するための手段が、
前記ヒストグラムがベル形状を含むこと、または前記それぞれのヒストグラムのすべての最高サンプル間隔が空であることに応じて、オーディオコンテンツとして前記コンテンツストリームを分類するための手段
をさらに含む、請求項14に記載の装置。
【請求項１６】
プロセッサ
を含む、コンピューティングデバイスであって、前記プロセッサが、
コンテンツストリームを受信し、
前記コンテンツストリームからサンプルを取得し、
前記コンテンツストリームからの前記サンプルに基づいてヒストグラムを生成し、
前記ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを分類し、
非オーディオコンテンツとしての前記コンテンツストリームの分類に応じて、前記コンテンツストリームの部分を修正する
ように構成される、コンピューティングデバイス。
【請求項１７】
前記コンテンツストリームの前記部分を修正するように構成された前記プロセッサが、
前記コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるように前記コンテンツストリームを修正する
ようにさらに構成される、請求項16に記載のコンピューティングデバイス。
【請求項１８】
前記コンテンツストリームの前記部分を修正するように構成された前記プロセッサが、
前記コンテンツストリーム内に含まれたオーディオコンテンツが最小限に聞き取れるオーディオアーティファクトを伴って再生可能な状態に留まるように前記コンテンツストリームを修正する
ようにさらに構成される、請求項16に記載のコンピューティングデバイス。
【請求項１９】
前記コンテンツストリームの前記部分を修正するように構成された前記プロセッサが、
前記コンテンツストリームの1つまたは複数の最下位ビットを修正する
ようにさらに構成される、請求項16に記載のコンピューティングデバイス。
【請求項２０】
オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを分類するように構成された前記プロセッサが、
前記ヒストグラムの最高サンプル間隔が空であるかどうかを決定する
ようにさらに構成される、請求項16に記載のコンピューティングデバイス。
【請求項２１】
オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを分類するように構成された前記プロセッサが、
前記ヒストグラムがベル形状を含むこと、または前記ヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとして前記コンテンツストリームを分類する
ようにさらに構成される、請求項20に記載のコンピューティングデバイス。
【請求項２２】
前記コンテンツストリームからの前記サンプルに基づいて、前記ヒストグラムを生成するように構成された前記プロセッサが、
前記コンテンツストリームの各オーディオチャネルに関してそれぞれのヒストグラムを生成する
ようにさらに構成される、請求項16に記載のコンピューティングデバイス。
【請求項２３】
オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを分類するように構成された前記プロセッサが、
前記ヒストグラムがベル形状を含むこと、または前記それぞれのヒストグラムのすべての最高サンプル間隔が空であることに応じて、オーディオコンテンツとして前記コンテンツストリームを分類する
ようにさらに構成される、請求項22に記載のコンピューティングデバイス。
【請求項２４】
電子コンテンツに関するデジタル著作権管理保護の無効化を防ぐためのコンピュータ可読命令を記憶した非一時的コンピュータ可読記録媒体であって、コンピュータに、
コンテンツストリームを受信させ、
前記コンテンツストリームからサンプルを取得させ、
前記コンテンツストリームからの前記サンプルに基づいてヒストグラムを生成させ、
前記ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツを含むとして前記コンテンツストリームを分類させ、
非オーディオコンテンツとしての前記コンテンツストリームの分類に応じて、前記コンテンツストリームの部分を修正させる
ように構成された命令を含む、非一時的コンピュータ可読記録媒体。
【請求項２５】
前記コンピュータに、前記コンテンツストリームの前記部分を修正させるように構成された前記命令が、前記コンピュータに、
前記コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるように前記コンテンツストリームを修正させる
ように構成された命令をさらに含む、請求項24に記載の非一時的コンピュータ可読記録媒体。
【請求項２６】
前記コンピュータに、前記コンテンツストリームの前記部分を修正させるように構成された前記命令が、前記コンピュータに、
前記コンテンツストリーム内に含まれたオーディオコンテンツが最小限に聞き取れるオーディオアーティファクトを伴って再生可能な状態に留まるように前記コンテンツストリームを修正させる
ように構成された命令をさらに含む、請求項24に記載の非一時的コンピュータ可読記録媒体。
【請求項２７】
前記コンピュータに、オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを分類させるように構成された前記命令が、前記コンピュータに、
前記ヒストグラムの最高サンプル間隔が空であるかどうかを決定させる
ように構成された命令をさらに含む、請求項24に記載の非一時的コンピュータ可読記録媒体。
【請求項２８】
前記コンピュータに、オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを分類させるように構成された前記命令が、前記コンピュータに、
前記ヒストグラムがベル形状を含むこと、または前記ヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとして前記コンテンツストリームを分類させる
ように構成された命令をさらに含む、請求項27に記載の非一時的コンピュータ可読記録媒体。
【請求項２９】
前記コンピュータに、前記コンテンツストリームからの前記サンプルに基づいて前記ヒストグラムを生成させるように構成された前記命令が、前記コンピュータに、
前記コンテンツストリームの各オーディオチャネルに関してそれぞれのヒストグラムを生成させる
ように構成された命令をさらに含む、請求項24に記載の非一時的コンピュータ可読記録媒体。
【請求項３０】
前記コンピュータに、オーディオコンテンツまたは非オーディオコンテンツとして前記コンテンツストリームを分類させるように構成された前記命令が、前記コンピュータに、
前記ヒストグラムがベル形状を含むこと、または前記それぞれのヒストグラムのすべての最高サンプル間隔が空であることに応じて、オーディオコンテンツとして前記コンテンツストリームを分類させる
ように構成された命令をさらに含む、請求項29に記載の非一時的コンピュータ可読記録媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
ほとんどの従来型のデジタル著作権管理(DRM)方式(コンテンツ配信およびリンク保護プロトコル)は、プレミアムコンテンツストリームのオーディオサブストリームとビデオサブストリームの両方に関して同じ鍵およびナンスを使用し、通常、オーディオストリームおよびビデオストリームを区別するための何らかの手段を提供しない。そのようなDRM方式のいくつかの例は、Google Widevine、MicrosoftのPlayread、および高帯域幅デジタルコンテンツ保護(HDCP:High-bandwidth Digital Content Protection)を含む。
【０００２】
モバイルフォン、セットトップボックス、およびDRM保護コンテンツを処理するように構成された他のデバイスなど、多くのデバイスは、信頼できるコンテンツ保護モジュールを含み、ビデオコンテンツに関するDRM保護が弱体化されるのを防ぐことを意図する、保護されたビデオ処理経路を実装する。しかしながら、同様の保護は、一般に、オーディオ処理経路上で提供されない。オーディオコンテンツは、非暗号化されて、検証なしに、デバイスのハイレベルオペレーティングシステム(HLOS)に公開される。攻撃者はこの弱点を活用して非暗号化ビデオコンテンツを取得することができるが、これは、オーディオ処理経路は、非暗号化されているコンテンツが実際にオーディオコンテンツであるかどうかを実際に決定しないためである。攻撃者は、所望のビデオコンテンツがオーディオコンテンツであることをデバイスの信頼できるコンテンツ保護モジュールに指示することによって、またはビデオコンテンツをオーディオコンテンツでインターリーブすることによって、ビデオコンテンツに関する保護を無効化することができる。ビデオコンテンツは、次いで、非暗号化されて、HLOSに提供され、それによって、ビデオコンテンツに関するDRM保護を無効化し、非暗号化ビデオコンテンツに対する無制限アクセスを可能にすることになる。攻撃者は、ビデオコンテンツの部分をオーディオコンテンツでインターリーブして暗号化コンテンツを取得し、非暗号化ビデオコンテンツを再構築することによって、DRM保護されたビデオコンテンツのビデオコンテンツ全体を潜在的に取得することができる。この手法は、攻撃者が、ビデオコンテンツの部分をオーディコンテンツで複数回インターリーブして非暗号化ビデオコンテンツ全体を取得することを必要とし得るが、ビデオコンテンツ全体が取得されると、攻撃者は何のDRM保護もなしにコンテンツを自由に配信することができる。
【０００３】
MPEG-1もしくはMPEG-2のレイヤIII(MP3)またはアドバンストオーディオコーディング(AAC)コンテンツとともに使用できる従来型の解決策は、コンテンツストリームの全帯域幅を限定して、そのコンテンツストリーム内のフレーム開始を検出することを含む。フレームは最大長を有し、フレームヘッダがストリーミングされているコンテンツのタイプに関して予想される長さの範囲内で発生しない場合、データは非オーディオコンテンツとしてフラグ付けされ得る。しかしながら、フレームヘッダを監視するとき、データ破壊を考慮に入れる必要があり、したがって、非オーディオコンテンツを含むとしてコンテンツストリームをフラグ付けするかどうかを決定する前に、データの価値がある複数のフレームが監視されるべきある。非オーディオとして所定の数のフレームがフラグ付けされた後で、コンテンツのストリーミングを破棄することができる。別の解決策は、ランダムデータとしてビデオをモデル形成することである。しかしながら、この手法は非常に計算集約的であり、限定された処理能力および限定されたオンボード電源を有し得るモバイルデバイス上での使用には適さない場合がある。
【０００４】
しかしながら、上記で論じた技法は、パルスコード変調(PCM)オーディオフォーマット、具体的には、オーディオコンテンツは線形PCM非圧縮オーディオとしてストリーミングされるが、ビデオは依然として圧縮フォーマットで送信される状況では役立たない。PCMオーディオコンテンツは、オーディオコンテンツストリームをビデオコンテンツストリームと区別するために使用できるMP3フォーマットまたはAACフォーマットのような何らかの識別可能なヘッダを含まない生データである。コンテンツストリームを分析して、ストリームのスペクトルを決定し、ストリームがノイズに近すぎるスペクトルを有する場合、非オーディオコンテンツとしてコンテンツストリームを分類する試みが行われている。しかしながら、この手法は、特に、処理リソースと電力消費の両方の点で制約され得るモバイルデバイスでは計算量が多すぎる。この手法はまた、ホワイトノイズまたはピンクノイズと同様であるか、または著しい歪みを提示する部分を含むオーディオコンテンツの拒絶を引き起こすことになる。そのような特性を備えたオーディオは、オーディオコンテンツにおいて時々生じ、従来の技法を使用すると、そのようなコンテンツの再生は、ビデオコンテンツとして誤ってマークされて中断されることになる。
【発明の概要】
【課題を解決するための手段】
【０００５】
本開示による、電子コンテンツに関するデジタル著作権管理保護の無効化を防ぐための方法は、コンテンツストリームを受信するステップと、コンテンツストリームからサンプルを取得するステップと、コンテンツストリームからのサンプルに基づいてヒストグラムを生成するステップと、ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツを含むとしてコンテンツストリームを分類するステップと、非オーディオコンテンツを含むとしてのコンテンツストリームの分類に応じて、コンテンツストリームの部分を修正するステップとを含む。
【０００６】
そのような方法の実装形態は、次の特徴のうちの1つまたは複数を含み得る。コンテンツストリームの部分を修正するステップは、コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるようにコンテンツストリームを修正するステップを含む。コンテンツストリームの部分を修正するステップは、コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるようにコンテンツストリームを修正するステップを含む。コンテンツストリームの部分を修正するステップは、コンテンツストリームの1つまたは複数の最下位ビットを修正するステップを含む。オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するステップは、ヒストグラムの最高サンプル間隔が空である(empty)かどうかを決定するステップをさらに含む。オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するステップは、ヒストグラムがベル形状を含むこと、またはヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとしてコンテンツストリームを分類するステップをさらに含む。コンテンツストリームからのサンプルに基づいてヒストグラムを生成するステップは、コンテンツストリームの各オーディオチャネルに関してそれぞれのヒストグラムを生成するステップを含む。オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するステップは、ヒストグラムがベル形状を含むこと、または各それぞれのヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとしてコンテンツストリームを分類するステップを含む。
【０００７】
本開示による装置は、コンテンツストリームを受信するための手段と、コンテンツストリームからサンプルを取得するための手段と、コンテンツストリームからのサンプルに基づいてヒストグラムを生成するための手段と、ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツを含むとしてコンテンツストリームを分類するための手段と、非オーディオコンテンツとしてのコンテンツストリームの分類に応じて、コンテンツストリームの部分を修正するための手段とを含む。
【０００８】
そのような装置の実装形態は、以下の特徴のうちの1つまたは複数を含み得る。コンテンツストリームの部分を修正するための手段は、コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるようにコンテンツストリームを修正するための手段を含む。コンテンツストリームの部分を修正するための手段は、コンテンツストリームの1つまたは複数の最下位ビットを修正するための手段を含む。コンテンツストリームの部分を修正するための手段は、コンテンツストリーム内に含まれたオーディオコンテンツが最小限に聞き取れるオーディオアーティファクトを伴って再生可能な状態に留まるようにコンテンツストリームを修正するための手段を含む。オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するための手段は、ヒストグラムの最高サンプル間隔が空であるかどうかを決定するための手段を含む。オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するための手段は、ヒストグラムがベル形状を含むこと、またはヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとしてコンテンツストリームを分類するための手段をさらに含む。コンテンツストリームからのサンプルに基づいてヒストグラムを生成するための手段は、コンテンツストリームの各オーディオチャネルに関してそれぞれのヒストグラムを生成するための手段を含む。オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するための手段は、ヒストグラムがベル形状を含むこと、またはそれぞれのヒストグラムの各々の最高サンプル間隔が空であることに応じて、オーディオコンテンツとしてコンテンツストリームを分類するための手段を含む。
【０００９】
本開示による、コンピューティングデバイスは、コンテンツストリームを受信し、コンテンツストリームからサンプルを取得し、コンテンツストリームからのサンプルに基づいてヒストグラムを生成し、ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類し、非オーディオコンテンツとしてのコンテンツストリームの分類に応じて、コンテンツストリームの部分を修正するように構成されたプロセッサを含む。
【００１０】
そのようなコンピューティングデバイスの実装形態は、次の特徴のうちの1つまたは複数を含み得る。コンテンツストリームの部分を修正するように構成されたプロセッサは、コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるようにコンテンツストリームを修正するようにさらに構成される。コンテンツストリームの部分を修正するように構成されたプロセッサは、コンテンツストリームの1つまたは複数の最下位ビットを修正するようにさらに構成される。コンテンツストリームの部分を修正するように構成されたプロセッサは、コンテンツストリーム内に含まれたオーディオコンテンツが最小限に聞き取れるオーディオアーティファクトを伴って再生可能な状態に留まるようにコンテンツストリームを修正するようにさらに構成される。オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するように構成されたプロセッサは、ヒストグラムの最高サンプル間隔が空であるかどうかを決定するようにさらに構成される。オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するように構成されたプロセッサは、ヒストグラムがベル形状を含むこと、またはヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとしてコンテンツストリームを分類するようにさらに構成される。コンテンツストリームからのサンプルに基づいてヒストグラムを生成するように構成されたプロセッサは、コンテンツストリームの各オーディオチャネルに関してそれぞれのヒストグラムを生成するようにさらに構成される。オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するように構成されたプロセッサは、ヒストグラムがベル形状を含むこと、またはそれぞれのヒストグラムの各々の最高サンプル間隔が空であることに応じて、オーディオコンテンツとしてコンテンツストリームを分類するようにさらに構成される。
【００１１】
本開示による、電子コンテンツに関するデジタル著作権管理保護の無効化を防ぐためのコンピュータ可読命令を記憶した、非一時的コンピュータ可読媒体は、コンピュータに、コンテンツストリームを受信させ、コンテンツストリームからサンプルを取得させ、コンテンツストリームからのサンプルに基づいてヒストグラムを生成させ、ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツを含むとしてコンテンツストリームを分類させ、非オーディオコンテンツとしてのコンテンツストリームの分類に応じて、コンテンツストリームの部分を修正させるように構成された命令を含む。
【００１２】
そのような非一時的コンピュータ可読媒体の実装形態は、以下の特徴のうちの1つまたは複数を含み得る。コンピュータにコンテンツストリームの部分を修正させるように構成された命令は、コンピュータに、コンテンツストリーム内に含まれたビデオコンテンツが再生不可能にレンダリングされるようにコンテンツストリームを修正させるように構成された命令を含む。コンピュータにコンテンツストリームの部分を修正させるように構成された命令は、コンピュータにコンテンツストリームの1つまたは複数の最下位ビットを修正させるように構成された命令を含む。コンピュータにコンテンツストリームの部分を修正させるように構成された命令は、コンピュータに、コンテンツストリーム内に含まれたオーディオコンテンツが最小限に聞き取れるオーディオアーティファクトを伴って再生可能な状態に留まるようにコンテンツストリームを修正させるように構成された命令を含む。コンピュータにオーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類させるように構成された命令は、コンピュータにヒストグラムの最高サンプル間隔が空であるかどうかを決定させるように構成された命令を含む。コンピュータにオーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類させるように構成された命令は、コンピュータに、ヒストグラムがベル形状を含むこと、またはヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとしてコンテンツストリームを分類させるように構成された命令を含む。コンピュータにコンテンツストリームからのサンプルに基づいてヒストグラムを生成させるよう構成された命令は、コンピュータにコンテンツストリームの各オーディオチャネルに関してそれぞれのヒストグラムを生成させるように構成された命令を含む。コンピュータにオーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類させるように構成された命令は、コンピュータに、ヒストグラムがベル形状を含むこと、または各それぞれのヒストグラムの最高サンプル間隔が空であることに応じて、オーディオコンテンツとしてコンテンツストリームを分類させるように構成された命令を含む。
【図面の簡単な説明】
【００１３】
【図１】本明細書で論じる技法を実装するのに適する可能性がある、ある例示的なネットワークアーキテクチャのブロック図である。
【図２】図1内に示したコンピューティングデバイスを実装するために使用され得るある例示的なコンピューティングデバイスのブロック図である。
【図３】コンピューティングデバイスの機能モジュールを示す、図2内に示したコンピューティングデバイスの機能ブロック図である。
【図４】本明細書で論じる技法による、意図されたオーディオコンテンツのデジタル著作権保護の無効化を防ぐために、意図された(purported)オーディオコンテンツを分類するためのある例示的なプロセスの流れ図である。
【図５】本明細書で論じる技法による、オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するためのある例示的なプロセスの流れ図である。
【図６】本明細書で論じる技法による、ヒストグラムを生成するためのある例示的なプロセスの流れ図である。
【図７】本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。
【図８】本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。
【図９】本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。
【図１０】本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。
【図１１】本明細書で論じる技法による、オーディオコンテンツまたは非オーディオコンテンツとして、複数のチャネルを有するコンテンツストリームを分類するためのある例示的なプロセスの流れ図である。
【図１２】本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。
【発明を実施するための形態】
【００１４】
保護された電子コンテンツ内のオーディオセキュリティ領域およびビデオセキュリティ領域の交差を防ぐための対策を提供する技法が開示される。本明細書で開示する技法は、攻撃者が、保護方式を無効化するために、オーディオコンテンツとしてデジタル著作権保護されたビデオコンテンツを渡すのを防ぐ。本明細書で開示する技法は、ビデオコンテンツがオーディオコンテンツとして渡される可能性がある場合を識別するために、コンテンツストリームの1つまたは複数のチャネルからのオーディオコンテンツをサンプリングまたはモデル形成するために使用され得る。非オーディオコンテンツがコンテンツストリームの1つまたは複数のチャネル内に含まれることが疑われる場合、コンテンツストリームの部分は、コンテンツストリーム内に含まれたいずれかのビデオコンテンツが再生不可能にレンダリングされるように改変され得る。コンテンツストリームの部分に行われる変更は、ビデオコンテンツとしてオーディオコンテンツが誤ってフラグ付けされた場合、コンテンツストリームに行われた変更が、オーディオ品質に若干影響を及ぼすが、オーディオコンテンツを再生不可能にレンダリングしないようなものである。コンテンツストリーム内に含まれたオーディオコンテンツは、最小限に聞き取れるオーディオアーティファクトを伴って再生可能な状態に留まる。本明細書で開示する技法はPCMオーディオコンテンツおよび/または他のオーディオタイプのコンテンツストリームとともに使用可能であるが、これはこれらの技法はオーディオコンテンツを識別するためにフレームヘッダに依存しないためである。さらに、本明細書で開示する技法は、計算量が多すぎず、制限された処理電力および/または電力制約を有し得るモバイルデバイス上で実装され得る。
【００１５】
例示的なネットワーク環境
図1は、本明細書で論じる技法を実装するのに適する可能性がある、ある例示的なネットワークアーキテクチャのブロック図である。本明細書で示す特定の構成は、単に、本明細書で開示する技法が使用され得る1つのネットワーク構成の例である。さらに、そのようなネットワークアーキテクチャの実装形態は、本明細書で示さず、明瞭さのために省略された追加の要素を含むことができる。例示的なネットワークアーキテクチャは、本明細書で開示する技法が実装され得るコンピューティングデバイスが動作し得るネットワークアーキテクチャの一例を提供するが、コンピューティングデバイスは、他のデバイスとネットワーク化可能であっても、可能でなくてもよい独立型デバイスとして動作するように構成されることも可能である。さらに、コンピューティングデバイスは、携帯式であってよく、または、移動されることが可能であるが、一般に、頻繁に移動されない、セットトップボックスまたはデスクトップコンピューティングシステムなど、半固定ロケーションにおいて設置されてもよい。
【００１６】
コンピューティングデバイス120は、ユーザ機器(UE)、移動局、端末、アクセス端末、加入者ユニット、局などと呼ばれるモバイル通信デバイスであってもよい。コンピューティングデバイス120は、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、ゲームコンソール、着用可能なデバイス(スマートウォッチなど)、または、ロングタームエボリューション(LTE)ワイヤレス通信プロトコル、WiFiワイヤレス通信プロトコル、およびWiMAXワイヤレス通信プロトコルを含むがこれに限定はされない1つまたは複数のワイヤレス通信プロトコルを使用して通信するように構成されたワイヤレス送信機を含む他のデバイスとすることができる。コンピューティングデバイス120は、他のタイプのワイヤレス通信プロトコルをサポートするようにも構成され得、複数の異なるワイヤレス通信プロトコルをサポートするように構成され得る。コンピューティングデバイス120のワイヤレス送信機は、他のコンピューティングデバイス120、ワイヤレス送信機115、および/または1つもしくは複数のワイヤレス基地局140にデータを送り、かつ/あるいはこれらからデータを受信するように構成され得る。
【００１７】
コンピューティングデバイス120は、ワイヤレス送信機115およびワイヤレス基地局140などの1つまたは複数のワイヤレス基地局またはワイヤレスアクセスポイントからの信号を測定し、ワイヤレス基地局のタイミング測定値(たとえば、到着時刻(TOA: time of arrival)または観測到達時間差(OTDOA: observed time difference of arrival)の)、信号強度測定値(たとえば、受信信号強度インジケーション(RSSI: Receive Signal Strength Indication))、RTT(ラウンドトリップ時間)、および/または信号品質測定値を入手するようにも構成され得る。擬似乱数測定値、タイミング測定値、信号強度測定値、および/または信号品質測定値は、コンピューティングデバイス120のロケーション推定値を導出するのに使用され得る。ロケーション推定は、位置推定、位置決定などとも呼ばれ得る。2つの地上ワイヤレス送信機115aおよび115bが、この例に示されている。しかし、他の実装形態において、より多数またはより少数のワイヤレス送信機115が含まれる場合がある。コンピューティングデバイス120は、衛星170、ワイヤレス基地局140、および/またはワイヤレス送信機115のうちの1つまたは複数からの信号の組合せを使用してコンピューティングデバイス120の位置を判定するようにも構成され得る。
【００１８】
ワイヤレス送信機115の各々は、IEEE 802.11ワイヤレス通信標準規格を使用して動作するように構成されたWLANワイヤレスアクセスポイントを含むことができる。しかし、いくつかの実装形態において、ワイヤレス送信機115の一部またはすべてが、他のワイヤレス通信プロトコルを利用するように構成され得、いくつかのネットワーク環境が、複数のタイプのワイヤレス送信機115を含む場合がある。さらに、ワイヤレス送信機115が、送信機として識別されるが、ワイヤレス送信機115は、データをワイヤレスに送り、かつ/または受信するように構成されたトランシーバとすることができる。ワイヤレス送信機115は、ネットワーク110にブロードバンド接続を提供するバックホール接続を介してネットワーク110に接続され得る。ネットワーク110は、インターネットおよび/または1つもしくは複数のネットワークの組合せとすることができる。たとえば、ワイヤレス送信機115は、特定の実装形態内で使用されるブロードバンドサービスのタイプに応じて、DSLモデムまたはケーブルモデムに接続され得る。ワイヤレス送信機115は、モバイル通信ネットワークプロバイダに関連付けられ得、ネットワーク110を介してモバイル通信ネットワークプロバイダのネットワーク(図示せず)と通信するように構成され得る。ワイヤレス送信機115のカバレージエリアは、ワイヤレス基地局140などの1つもしくは複数のマクロセル基地局のカバレージエリアまたは1つもしくは複数の多の地上トランシーバのカバレージエリアと重複してよい。
【００１９】
ワイヤレス基地局140は、複数のコンピューティングデバイス120にワイヤレスネットワーク接続性を提供するように構成され得る。ワイヤレス基地局140は、マクロセル基地局または他のタイプの基地局を含むことができる。ワイヤレス基地局140は、ワイヤレス送信機115よりはるかに広いカバレージエリアを有することができ、または、ワイヤレス送信機115によって提供されるカバレージエリアと同様のサイズまたはより小さいサイズを有するカバレージエリアを提供する地上トランシーバとすることができる。ワイヤレス基地局140は、1つまたは複数のワイヤレス通信プロトコルを使用して通信するように構成され得る。図1内に示す例は、単一のワイヤレス基地局140を含むが、他の実装形態においては、ネットワーク環境は、少なくとも部分的に重複することのできるカバレージエリアを有する複数のワイヤレス基地局140を含む可能性が高い。
【００２０】
コンピューティングデバイス120は、衛星170aおよび170bなどの1つまたは複数の衛星170から信号を受信し、測定し、衛星170の擬似乱数測定値を入手するように構成された全地球的航法衛星システム(GNSS)受信機を含むように構成され得る。衛星170は、米国の全地球測位システム(GPS)、欧州のガリレオシステム、ロシアのGLONASSシステム、または何らかの他のGNSSとすることのできる全地球航法衛星システム(GNSS)の一部とすることができる。GNSS受信機は、複数のGNSSシステムに属する衛星170からの信号を検出し、受信するようにも構成され得る。たとえば、衛星170aは、GPSシステムに属すことができ、衛星170bは、ガリレオシステムに属すことができる。本明細書で示す例示的なネットワークアーキテクチャは、2つの衛星170だけを示すが、他の実装形態は、使用可能なより多数またはより少数の衛星を有することができ、1つまたは複数のGNSSシステムに関連する衛星を有することができ、コンピューティングデバイス120に可視の衛星の個数は、コンピューティングデバイス120の現在の地理的ロケーションおよび衛星170の軌道に依存する可能性がある。
【００２１】
ロケーションサーバ160は、コンピューティングデバイス120にロケーションサービスを提供するように構成され得る。たとえば、ロケーションサーバ160は、暦情報および/またはコンピューティングデバイス120がコンピューティングデバイス120の位置を決定するのに使用できる他の情報を提供するように構成され得る。ロケーションサーバ160は、コンピューティングデバイス120の位置を決定する際にコンピューティングデバイス120を支援するようにも構成され得る。たとえば、ロケーションサーバ160は、コンピューティングデバイス120においてワイヤレス送信機115および/またはワイヤレス基地局140から受信された信号の信号測定値を受信し、これらの信号に基づいてコンピューティングデバイス120の位置を決定するように構成され得る。ロケーションサーバ160は、図1内に示す例示的な実装形態において単一のエンティティとして表されているが、本明細書で論じるロケーションサーバ160によって実行される論理機能は、複数のネットワークエンティティによって実装され得る。
【００２２】
コンテンツサーバ180は、1つまたは複数の介在するネットワーク接続を介してコンピューティングデバイス120と通信するように構成され得る。コンテンツサーバ180は、オーディオおよび/またはビデオコンテンツなど、電子コンテンツをコンピューティングデバイス120に提供するように構成され得る。コンテンツサーバ180は、コンテンツをコンピューティングデバイス120にプッシュし、かつ/またはコンテンツに対する要求をコンピューティングデバイス120から受信するように構成され得る。コンテンツに対するアクセスは、1つまたは複数のデジタル著作権管理方式を使用して保護することができ、コンピューティングデバイス120は、コンピューティング120上で、または場合によっては、外部のディスプレイデバイスおよび/またはオーディオ再生デバイスなど、コンピューティングデバイス120に関連するデバイス上で聴取または閲覧され得るように、保護されたコンテンツを解読するように構成され得る。
【００２３】
図1内に示す例示的なネットワーク構成は、単に、本明細書で開示する技法が実装され得るネットワークの1つの可能な構成の一例である。他のネットワーク構成は、図1内に示さない追加要素を含むことができ、様々な構成要素が、図1内に示すものとは異なる構成において相互接続され得る。さらに、上記で論じたように、コンピューティングデバイス120は、コンピューティングデバイス120が図1内に示すワイヤレス接続の代わりに、またはそれに加えて、ネットワーク110に対するワイヤード接続を有するように実装され得る。さらに、コンピューティングデバイス120は、図1内に示すモバイルデバイスなど、コンピューティングデバイス120の実装形態と対照的に、移動されることが可能であるが、一般に、同じロケーションに留まる、セットトップボックス、サーバコンピュータシステム、またはデスクトップなど、比較的固定されたロケーション内に留まるように構成され得る。
【００２４】
例示的なハードウェア
図2は、図1内に示したコンピューティングデバイス120を実装するために使用され得るコンピューティングデバイスのブロック図である。コンピューティングデバイス120は、図4〜図12内に示すプロセスを少なくとも部分的に実装するために使用され得る。コンピューティングデバイス120は、デジタル著作権管理保護コンテンツにアクセスし、デバイスのユーザがそのようなコンテンツを消費することを可能にするように構成され得る、ラップトップコンピュータシステムまたは他のパーソナルコンピュータシステム、タブレットコンピュータ、モバイルフォン、スマートフォン、ゲームコンソール、着用可能なデバイス(たとえば、スマートウォッチ、ヘッドマウントデバイスなど)および/または他のタイプのコンピューティングデバイスを含むが、これらに限定されない様々なタイプのコンピューティングデバイスであり得る。コンピューティングデバイス120は、一般に、固定ロケーションまたは半固定ロケーション内に留まるが、必要な場合、移動されることが可能な、セットトップボックス、デスクトップコンピュータシステム、コンピュータサーバ、または他のタイプのコンピューティングデバイスを含み得る。
【００２５】
コンテンツは、コンピューティングデバイス120が、デバイスのユーザがコンテンツにアクセスし、それをコンピューティングデバイス120のユーザに出力され得るオーディオおよび/またはビデオコンテンツストリームにレンダリングすることが許可されるかどうかを決定するように構成され得る、オーディオ成分もしくはビデオ成分、またはそれらの組合せを含み得る。コンテンツは暗号化されることが可能であり、コンピューティングデバイス120は、コンテンツを解読し、かつ/またはディスプレイ、スピーカー、ヘッドフォン出力、またはそれらの組合せなど、コンピューティングデバイス120の様々な入力/出力構成要素および/または外部デバイスにストリーミングされ得る形態にコンテンツを変換するための、コンテンツに対する他の動作を実行するように構成され得る。たとえば、コンピューティングデバイス120は、コンテンツを解読し、ワイヤード接続またはワイヤレス接続を介してコンテンツを別のデバイスに提供するように構成され得る。たとえば、コンピューティングデバイス120は、解読されたコンテンツを外部のディスプレイデバイスおよび/またはオーディオ再生デバイスに提供するように構成され得る。コンピューティングデバイス120は、コンテンツがコンピューティングデバイス120のHLOSに公開されるのに先立って、コンテンツに対して図4〜図12内に示す様々なプロセスを実行するように構成され得る。
【００２６】
コンピューティングデバイス120は、バス201によってお互いに接続された、汎用プロセッサ210と、ワイヤレスインターフェース225と、GNSSインターフェース265と、非一時的メモリ260とを含むコンピュータシステムを含む。コンピューティングデバイス120の他の実装形態は、図2の例示的な実装形態内には示されていない追加の要素を含むことができ、かつ/または図2内に示す例示的な実施形態内に示された要素のすべてを含んでいるとは限らない場合がある。コンピューティングデバイス120のいくつかの実装形態は、GNSSインターフェース265および/またはワイヤレスインターフェース225を含まなくてよい。コンピューティングデバイス120は、ワイヤレスインターフェース225の代わりに、またはそれに加えて、ワイヤードネットワークインターフェースを含み得る。コンピューティングデバイス120は、セットトップボックス、デスクトップコンピューティングデバイス、またはモバイルフォン、タブレットコンピュータ、着用可能なデバイス、またはモバイルデバイスと呼ばれる場合もある他のそのようなデバイスなど、移動されることが可能であるが、一般に、携帯用であることが意図されない他のデバイスとして実装され得る。
【００２７】
ワイヤレスインターフェース225は、ワイヤレス受信機、送信機、トランシーバ、および/またはコンピューティングデバイス120が、WWAN、WLAN、および/または他のワイヤレス通信プロトコルを使用して、データを送り、かつ/または受信することを可能にする他の要素を含むことができる。ワイヤレスインターフェース225は、複数のワイヤレス通信標準規格を使用して、ワイヤレス信号を送信し、受信することができる1つまたは複数のマルチモードモデムを含むことができる。ワイヤレスインターフェース225は、ワイヤレス送信機115、ワイヤレス基地局140、および/またはワイヤレス通信プロトコルを使用して通信するように構成された他のワイヤレスデバイスへ/から通信を送り、受信するためのアンテナ234に信号線232によって接続される。図2内に示すコンピューティングデバイス120は、単一のワイヤレスインターフェース225および単一のアンテナ234を含むが、コンピューティングデバイス120の他の実装形態は、複数のワイヤレスインターフェース225および/または複数のアンテナ234を含むことができる。
【００２８】
入出力インターフェース270は、コンピューティングデバイス120に対するデータ入力および/またはデータ出力を提供することのできる1つまたは複数のポートおよび/または他のインターフェースを提供することができる。たとえば、入出力インターフェース270は、ユニバーサルシリアルバス(USB)ポートおよび/または外部デバイスをコンピューティングデバイス120に接続するのに使用できる他のタイプのポートなど、1つまたは複数のポートを含むことができる。入出力インターフェース270は、ボタン、スイッチ、キーパッド、タッチスクリーン、および/またはユーザから入力を受信するための他の手段など、1つまたは複数の入力デバイスをも含むことができる。入出力インターフェース270は、スクリーン、スピーカー、ヘッドフォンポート、および/またはそのようなコンテンツを出力するための他の手段など、オーディオおよび/またはビジュアルコンテンツを出力するための1つまたは複数の手段をも含むことができる。
【００２９】
GNSSインターフェース265は、コンピューティングデバイス120が1つまたは複数のGNSSシステムに関連する送信機から信号を受信することを可能にするワイヤレス受信機および/または他の要素を含むことができる。GNSSインターフェース265は、図1内に示した衛星170などのGNSS送信機から信号を受信するためのアンテナ274に信号線272によって接続される。コンピューティングデバイス120は、コンピューティングデバイス120の位置を決定するために、GNSSシステムに関連する衛星および他の送信機に関連する衛星から受信された信号を使用するように構成され得る。コンピューティングデバイス120は、コンピューティングデバイス120の位置を決定するために、ワイヤレス送信機115および/またはワイヤレス基地局140から受信された信号と併用して、GNSSシステムに関連する衛星および他の送信機から受信された信号を使用するようにも構成され得る。
【００３０】
プロセッサ210は、インテリジェントデバイス、たとえば、Intel(登録商標) Corporation、またはAMD(登録商標)によって製造されるものなどのパーソナルコンピュータ中央処理装置(CPU)、マイクロコントローラ、特定用途向け集積回路(ASIC)、その他とすることができる。メモリ260は、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、またはそれらの組合せを含むことができる非一時的ストレージデバイスである。メモリ260は、本明細書で説明する機能を実行するようにプロセッサ210を制御するための命令を含むプロセッサ可読プロセッサ実行可能ソフトウェアコードを記憶することができる(ただし、記述ではソフトウェアが機能を実行すると読まれる場合がある)。ソフトウェアは、ネットワーク接続を介してダウンロードされること、ディスクからアップロードされることなどによってメモリ260にロードされ得る。さらに、ソフトウェアは、直接的に実行可能ではなく、たとえば実行前にコンパイルを必要とする場合がある。
【００３１】
メモリ260内のソフトウェアは、ワイヤレス送信機115、ワイヤレス基地局140、他のコンピューティングデバイス120、および/またはワイヤレス通信するように構成された他のデバイスへのデータの送出および/またはそれらからのデータの受信を実装することを含む様々なアクションをプロセッサ210が実行することを可能にするように構成される。メモリ260内のソフトウェアはまた、プロセッサ210が図4〜図12内で示すプロセスのすべて、またはそれらのうちの1つまたは複数の一部分を実行することを可能にするように構成される。本明細書で開示する例で、ソフトウェアにおいて実装される機能モジュールは、代替的に、ハードウェアにおいて、またはハードウェアとソフトウェアの組合せにおいて実装され得る。
【００３２】
図3は、図2内に示したメモリ260の機能モジュールを示す、図2内に示したコンピューティング120の機能ブロック図である。たとえば、コンピューティングデバイス120は、コンテンツ保護モジュール362とデータアクセスモジュール366とを含み得る。コンピューティングデバイス120は、コンピューティングデバイス120に他の機能性を提供する1つまたは複数の追加の機能モジュールを含むこともできる。図3内に示された機能モジュールは、図3内に示すように、プロセッサ210によって実行されるソフトウェアとして実装され得、または、ハードウェアまたはハードウェアとソフトウェアとの組合せにおいて実装され得る。図2および図3内に示すコンピューティングデバイス120は、図4〜図12内に示すプロセスに関連してコンピューティングデバイス120を実装するのに使用され得る。プロセッサ210は、本明細書で論じるコンピューティングデバイス120の様々なモジュールを実装するための手段を提供することもでき、ファームウェアにおいて実装された1つまたは複数のモジュールに関連して動作することができる。
【００３３】
コンテンツ保護モジュール362は、図4〜図12内に示すプロセスを実装するための手段を提供することができる。コンテンツ保護モジュール362は、デジタル著作権管理保護コンテンツを処理するように構成されたコンピューティングデバイス120上でセキュアな処理環境の一部として実装され得る。コンテンツ保護モジュール362は、コンピューティングデバイス120のセキュアな処理環境の外部で実装されることも可能であり、コンテンツ保護モジュール362は、セキュアな処理環境がコンピューティングデバイス120またはセキュアな処理環境の外部で動作しているアプリケーションのハイレベルオペレーティングシステム(HLOS)に公開するコンテンツストリームを分析するように構成され得る。本明細書で開示する技法は、コンテンツがコンピューティングデバイス120上のアプリケーションによって利用され得るように、デジタル著作権管理保護コンテンツ上に設けられたデジタル権利管理保護から発表されるとき、オーディオコンテンツが非圧縮フォーマットで出力される任意のタイプのコンテンツストリームに使用され得る。
【００３４】
コンテンツ保護モジュール362は、オーディオコンテンツを含むことが意図されたコンテンツストリームを分析し、オーディオコンテンツまたは非オーディオコンテンツを含むとしてオーディオストリームを分類するように構成され得る。コンテンツ保護モジュール362は、コンテンツストリームからサンプルを取得し、コンテンツストリームの1つまたは複数のヒストグラムを構築して、オーディオコンテンツストリームまたは非オーディオコンテンツストリームとしてコンテンツストリームを分類することができる。コンテンツ保護モジュール362は、コンテンツストリームが非オーディオコンテンツを含むとしてフラグ付されることに応じて、コンテンツストリームの部分を修正するように構成され得る。コンテンツ保護モジュール362は、コンテンツストリームがオーディオコンテンツを実際に含む場合、コンテンツストリーム内に含まれたいずれかのビデオコンテンツが再生不可能にレンダリングされることになると同時に、オーディオコンテンツの品質が劣化しすぎないように、コンテンツストリームの部分を修正するように構成され得る。コンテンツ保護モジュール362によって修正されるコンテンツストリームの部分は、そこからサンプルが取得されたコンテンツストリームの部分に対応し得るか、または取得されたサンプルに対応するコンテンツストリームの部分に追加される部分またはその代わりの部分を含み得る。コンテンツ保護モジュール362は、攻撃者がビデオコンテンツに関するDRM保護を無効化することを試みる際に、攻撃者が1つまたは複数のチャネル上のビデオコンテンツを1つまたは複数のチャネル上のオーディオコンテンツでインターリーブすることを防ぐために、マルチチャネルコンテンツストリームならびに単一のチャネルコンテンツストリーム上で、本明細書で開示する技法を実行するように構成され得る。
【００３５】
データアクセスモジュール366は、メモリ260および/またはコンピューティングデバイス120に関連する他のデータストレージデバイス内にデータを記憶するように構成され得る。データアクセスモジュール366は、メモリ260および/またはコンピューティングデバイス120に関連する他のデータストレージデバイス内のデータにアクセスするようにも構成され得る。データアクセスモジュール366は、コンピューティングデバイス120の他のモジュールおよび/または構成要素から要求を受信し、メモリ260および/またはコンピューティングデバイス120に関連する他のデータストレージデバイス内にデータを記憶するように、かつ/あるいはそれらの中に記憶されたデータにアクセスするように構成され得る。
【００３６】
例示的な実装形態
図4は、本明細書で論じる技法による、意図されたオーディオコンテンツのデジタル著作権保護の無効化を防ぐために、意図されたオーディオコンテンツを分類するためのある例示的なプロセスの流れ図である。図4内に示すプロセスは、別段示されない限り、図1〜図3内に示したコンピューティングデバイス120を使用して実装され得る。コンピューティングデバイス120のコンテンツ保護モジュール362は、別段示されない限り、図4内に示すプロセスの様々な段階を実行するための手段を提供することができる。
【００３７】
コンピューティングデバイス120は、プレミアムコンテンツストリームのオーディオサブストリームとビデオサブストリームの両方に関して同じ鍵とナンスの両方を使用することが可能なデジタル権利管理方式によって保護されるコンテンツに対するアクセスを提供することができる。多くのデバイスは、デジタルコンテンツを保護するために使用されるDRM方式の要件に適合するために、保護されたビデオ処理経路を含み得るが、多くのそのような方式は、保護されたオーディオ処理経路に関して同様の要件を有さない。攻撃者は、コンテンツストリームを解読するようにデバイスを操るために、オーディオコンテンツを含むサブストリームとして、ビデオコンテンツを含むサブストリームを渡し、コンテンツをコンピューティングデバイス120のハイレベルオペレーティングシステム(HLOS)に公開することによって、DRM方式の無効化を試みることができる。
【００３８】
コンテンツストリームを受信することができる(段階405)。コンテンツストリームは、オーディオコンテンツを含むことが意図されたプレミアムコンテンツストリームのサブストリームであり得る。コンテンツ保護モジュール362は、オーディオコンテンツになることが意図された、保護されたコンテンツのサブストリームを受信するように構成され得る。コンテンツストリームは、コンテンツストリームがオーディオコンテンツであることを示してタグ付けされ得るか、またはさもなければ、マークされ得る。しかしながら、保護されたコンテンツのサブストリームは、攻撃者が、オーディオコンテンツとしてコンテンツストリームをマークすることによって、復号するようにコンピューティングデバイス120を操ったビデオコンテンツを含む場合がある。しかしながら、コンテンツの非暗号化サブストリームは、コンテンツをデバイスのHLOSに公開するのに先立って、コンテンツ保護モジュール362によって検査され得る。コンテンツ保護モジュール362は、オーディオコンテンツまたは非オーディオコンテンツのいずれかとしてコンテンツストリーム内のコンテンツを分類するように構成され得、コンテンツ保護モジュール362は、コンテンツストリームが非オーディオコンテンツを含むとの決定に応じて、不可逆的な方法でコンテンツストリームを改変するように構成され得る。
【００３９】
コンテンツストリームからサンプルを取得することができる(段階410)。コンテンツストリームは、パルスコード変調(PCM)フォーマット、または、オーディオコンテンツのアナログ波形を概算することができるデジタルサンプルを含む他のデジタルフォーマットのオーディオコンテンツを含み得る。コンテンツストリームは、サンプルによって表されたオーディオコンテンツのそれぞれの部分におけるオーディオ波形の振幅値を含むアナログ波形の一連のサンプルを含み得る。サンプルをオーディオストリームのコンテンツのスペクトル分析から取得することもできる。当技術分野において様々なタイプのスペクトル分析技法が知られており、コンテンツストリームに適用され得る。スペクトル分析から取得されたサンプルは、振幅、大きさ、位相値、またはオーディオストリームのスペクトル分析によって生成された他の値を表し得る。異なるコンテンツストリームからのサンプルは異なるビット深度を有し得る。ビットの数を指すビット深度は、各サンプルの振幅または他の値を表す。一部のコンテンツストリームは、可変ビット深度を有するサンプルを含み得る。コンテンツ保護モジュール362は、コンテンツ保護モジュール362がオーディオコンテンツストリームまたは非オーディオコンテンツストリームとしてコンテンツストリームを分類するために使用することができる、コンテンツストリームからのサンプルのサブセットを選択するように構成され得る。
【００４０】
コンテンツストリームから取得されたサンプルに基づいてヒストグラムを生成することができる(段階415)。コンテンツストリームから取得されたサンプル内の周波数分布を表すヒストグラムを生成することができる。コンテンツ保護モジュール362は、コンテンツストリーム内に存在し得るサンプル値の範囲を一連の間隔にビニングするように構成され得る。各間隔は、振幅、またはコンテンツストリームから取得されたサンプル内に含まれ得る他のサンプル値のサブセットを表し得る。特定のヒストグラム内に含まれたビンまたは間隔の数は、間隔の幅が変化し得るように変化し得る。ヒストグラムを生成するための様々な技法を使用することができる。ヒストグラム内に含まれたビンまたは間隔の数および/または各ビンまたは間隔内に含まれた値の範囲は、サンプルデータのタイプに依存し得る。予想されるサンプルデータが振幅値を含む場合、オーディオ信号の振幅は所定の範囲内に入ると期待することができ、その範囲を間隔数に分割して、ヒストグラムを生成することができる。スペクトル分析データがサンプル内に含まれる場合、オーディオサンプルに関して予想される値の範囲は、コンテンツストリームに適用されるスペクトル分析のタイプに依存し得、コンテンツ保護モジュール362は、ヒストグラムを生成するための間隔にサンプルデータを分割するように構成され得る。
【００４１】
図6〜図10および図12内に示す例示的なプロセスを使用して、オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するために使用されるヒストグラムを生成することができる。コンテンツ保護モジュール362は、特定のタイプの非圧縮オーディオコンテンツに関するヒストグラムを生成するための特定の技法を利用するように構成され得るか、または図6〜図10および図12内に示す技法および/または他の技法など、ヒストグラムを生成するための所定のプロセスのプールから選択するように構成され得る。コンテンツ保護モジュール362は、アルゴリズムを使用して、そのようなプロセスのプールから各コンテンツストリームに関するヒストグラムを生成するための技法を選択するように構成されてもよい。コンテンツ保護モジュール362は、各コンテンツストリームに関する異なるヒストグラム生成プロセスを選択するように構成され得る。たとえば、コンテンツ保護モジュール362は、ラウンドロビン方法を使用することができるか、または使用されるべきプロセスをランダムに選択することができる。
【００４２】
ヒストグラムに基づいて、オーディオコンテンツまたは非オーディオコンテンツを含むとしてコンテンツストリームを分類することができる(段階420)。コンテンツ保護モジュール362は、ヒストグラムの形状を対称ベルカーブ形状と比較して、ヒストグラム上のサンプルの分布がそのような形状を示すかどうかを決定するように構成され得る。オーディオコンテンツストリームから取得されたサンプルがそのような分布を示す可能性は高く、ゼロから離れたサンプル値よりもゼロに近いサンプル値がより頻繁に生じる。ビデオコンテンツストリームから取得されたサンプルは、一般に、そのような分布を示さない。したがって、コンテンツ保護モジュール362は、分布がベルカーブのような形状を有することに応じて、オーディオコンテンツであることが意図されたコンテンツストリームをオーディオコンテンツとして分類するように構成され得る。コンテンツ保護モジュール362は、ヒストグラムの最高間隔(highest interval)が空である(empty)かどうかを決定するように構成され得る。ヒストグラムの最高間隔は、コンテンツが実際にオーディオコンテンツである場合、サンプリングされたコンテンツが非常に音の大きなオーディオコンテンツになる場合を表す。典型的なオーディオコンテンツは、この音が大きなコンテンツを含まないことになるが、オーディオコンテンツストリームとして渡されているビデオコンテンツまたは他の非オーディオコンテンツは、ヒストグラムの最高間隔内に入るサンプルを含み得る。コンテンツ保護モジュール362は、ヒストグラムの形状がベル形状であるか、またはヒストグラムの最高間隔が空である場合、オーディオコンテンツとしてコンテンツストリームを分類するように構成され得る。図5および図11は、オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するために使用され得る例示的なプロセスを示す。
【００４３】
コンテンツストリームは複数のチャネルを含むことができ、コンテンツ保護モジュール362は、各チャネル上のサンプルを収集し、各チャネルに関してヒストグラムを生成し、各ヒストグラムの最高間隔が空であるかどうかを決定するように構成され得る。この手法を使用して、攻撃者が1つまたは複数の第1のチャネル上のオーディオコンテンツを1つまたは複数の第2のチャネル上のビデオコンテンツでインターリーブすることを防ぐことができる。いずれかのチャネルが、空でない最高サンプル間隔を含む場合、コンテンツ保護モジュール362は、非オーディオコンテンツを含むとしてコンテンツストリームを分類するように構成され得る。
【００４４】
非オーディオコンテンツを含むとしてのコンテンツストリームの分類に応じて、コンテンツストリームの部分を修正することができる(段階425)。コンテンツ保護モジュール362は、コンテンツストリームをHLOSに公開する前に、コンテンツストリームの部分を改変するように構成され得る。コンテンツ保護モジュール362は、コンテンツストリームから取得されたサンプルのうちのいくつかまたはすべてを改変し、コンテンツストリーム内のサンプルを置換し、改変されたコンテンツストリームをコンピューティングデバイス120のHLOSに提供するように構成され得る。
【００４５】
オーディオコンテンツストリームは、概して、コンテンツに対する改変により寛大であるが、ビデオストリームに対するそのような改変は、ビデオコンテンツプレーヤのすべてではないとしても、ほとんどのビデオコンテンツプレーヤによってビデオストリームを再生不可能にレンダリングする可能性がある。非ビデオコンテンツを含むとして誤ってフラグ付けされたコンテンツストリームに対する改変は、何らかのノイズをオーディオコンテンツストリーム内にもたらし得るが、一般に、ストリームを再生不可能にレンダリングするか、またはユーザ経験を著しく低下させるようにオーディオストリームを著しく劣化させない。したがって、コンテンツ保護モジュール362は、攻撃者が、ビデオコンテンツに関するDRM保護を無効化するために、オーディオコンテンツとしてビデオコンテンツを渡すことを防ぐために、非オーディオコンテンツを含むと考えられるコンテンツストリームの部分を改変することができる。
【００４６】
コンテンツ保護モジュール362は、コンテンツストリームの各サンプルの1つまたは複数の最下位ビットをゼロアウトし、修正されたコンテンツストリームをHLOSに提供するように構成され得る。コンテンツ保護モジュール362は、コンテンツストリームの各サンプルの1つまたは複数の最下位ビットをランダム値または疑似ランダム値と置換し、修正されたコンテンツストリームをHLOSに提供するように構成され得る。コンテンツ保護モジュール362は、サンプル全体に小さいランダム値を加算するように構成されてもよい。ランダム値は、極端なサンプルが飽和するように選択され得る。コンテンツ保護モジュール362は、置換されるべきではないサンプルのビットのハミングコードを決定し、置換されるべきビットをサンプルの残りに関して決定されたハミングコードのパリティと置換するように構成されてもよい。コンテンツ保護モジュール362は、一定値をサンプルのすべてに加算するように、かつ/または一定値の所定のプールから選択された一定値をサンプルの各々に加算するように構成されてもよい。さらに他の実装形態では、コンテンツ保護モジュール362は、そのような一定値のプールから選択され得るある一定値をコンテンツストリーム全体のコンテンツに加算するように構成され得る。コンテンツ保護モジュール362は、1つまたは複数のオーディオ効果をコンテンツストリームに加えるように構成されてもよい。オーディオ効果は、所定のオーディオ効果であってよく、またはオーディオ効果のプールから選択されてもよい。1つまたは複数のオーディオ効果はオーディオコンテンツストリームのオーディオ品質に著しい影響を及ぼさないが、コンテンツストリーム内に含まれたいずれかのビデオコンテンツが再生不可能にレンダリングされることになるように、コンテンツストリームにかなりの数の変更を行うことになるように、1つまたは複数のオーディオ効果を選択することができる。他の技術を実装することも可能である。コンテンツ保護モジュール362は、コンテンツストリームの部分を修正するための異なる技法を交互させ、攻撃者が、コンテンツストリームのどの部分が改変されているかを認識し、コンテンツ保護方式を妨害する試みにおいて、オーディオコンテンツとして識別されているビデオコンテンツの回復を試みる際に行われた変更を取り消すことを試みることが可能であることを妨害するように構成され得る。
【００４７】
コンテンツ保護モジュール362は、非オーディオコンテンツを含むと疑われるコンテンツストリームのチャネルのうちのいくつかまたはすべてを改変するように構成され得る。たとえば、コンテンツ保護モジュール362は、インターリーブされたビデオコンテンツを潜在的に含むとして識別されたチャンネル上だけのコンテンツの部分を改変するように構成され得る。図11内に示すプロセス段階1105を使用して、どのチャネルが空ではない最高間隔を有するヒストグラムを有するかを識別することができる。他の実装形態では、コンテンツ保護モジュール362は、コンテンツストリームがコンテンツストリーム内に含まれたチャネルのうちの1つの上にインターリーブされたビデオコンテンツを含み得るという表示に応じて、コンテンツストリームのチャネルのすべてまたはサブセットの部分を改変するように構成され得る。コンテンツ保護モジュール362は、インターリーブされたビデオコンテンツが再生可能であることを防ぐと同時に、コンテンツストリーム内に含まれたオーディオコンテンツの品質が著しく劣化しないように、コンテンツストリームの部分を改変するように構成され得る。
【００４８】
本物のオーディオを含むコンテンツが上記で論じた技法を利用して非オーディオコンテンツとして潜在的に誤識別される場合がある。しかしながら、そのような誤識別は、オーディオコンテンツの音が非常に大きい場合、または複数のチャネルを有するコンテンツストリームの少なくとも1つのチャネルの音が非常に大きい場合に生じる可能性が最も高い。サンプルの1つまたは複数の最下位ビットを修正することによってオーディオコンテンツ内にノイズをもたらすことは、コンテンツストリームに対する可聴効果をほとんど生み出さないはずである。この概念を示すために、段階415において生成されたヒストグラムが4つの等しいビットおよび120デシベル(dB)の範囲を含んだ場合、ヒストグラムの上位間隔内に入るサンプルは少なくとも90dBの強度を有することになる。サンプルの最下位ビットを修正することによって、6dB未満の強度を有するノイズがサンプルにもたらされた場合、もたらされたノイズはサンプルを少なくとも84dB下回ることになる。したがって、ノイズは事実上不可聴になる。可能なサンプルの範囲、ヒストグラムにおいて使用される間隔数、および加えられるノイズの強度レベルは、これらの概念を示す例であり、本明細書で開示する技法をこれらの特定の値に限定することを意図しない。
【００４９】
図5は、本明細書で論じる技法による、オーディオコンテンツまたは非オーディオコンテンツとしてコンテンツストリームを分類するためのある例示的なプロセスの流れ図である。図5内に示すプロセスは、別段示されない限り、図1〜図3内に示したコンピューティングデバイス120を使用して実装され得る。コンピューティングデバイス120のコンテンツ保護モジュール362は、別段示されない限り、図5内に示すプロセスの様々な段階を実行するための手段を提供することができる。図5内に示すプロセスは、図4内に示したプロセスの段階420を実装するために使用され得る。
【００５０】
ヒストグラムがベル形状を有するかどうかを決定することができる(段階505)。コンテンツ保護モジュール362は、ヒストグラムの形状を対称ベルカーブ形状と比較して、ヒストグラム上のサンプルの分布がそのような形状を示すかどうかを決定するように構成され得る。オーディオコンテンツストリームから取得されたサンプルがそのような分布を示す可能性は高く、ゼロから離れたサンプル値よりもゼロに近いサンプル値がより頻繁に生じる。ビデオコンテンツストリームから取得されたサンプルは、一般に、そのような分布を示さない。したがって、コンテンツ保護モジュール362は、分布がベルカーブのような形状を有することに応じて、オーディオコンテンツであることが意図されたコンテンツストリームをオーディオコンテンツとして分類するように構成され得る。
【００５１】
ヒストグラムの最高間隔が空であるかどうかを決定することができる(段階510)。コンテンツ保護モジュール362は、ヒストグラムの最高間隔が空であるかどうかを決定するように構成され得る。ヒストグラムの最高間隔は、サンプリングされたコンテンツが、非常に音の大きいオーディオコンテンツになり、一般に、ほとんどのオーディオコンテンツに関して空になるが、コンテンツストリームが非オーディオコンテンツを含む場合にはデータを含み得る場合を表す。ヒストグラムの最高間隔が空である場合、コンテンツは、オーディオコンテンツである可能性が高く、そのように処理され得る。コンテンツ保護モジュール362は、コンテンツストリームの部分に何の変更も行わずに、コンテンツストリームがコンピューティングデバイス120のHLOSに提供されることを可能にするように構成され得る。
【００５２】
ヒストグラムがベル形状を有すると決定されているかどうか、またはヒストグラムの最高間隔が空であると決定されているかどうかを決定することができる(段階515)。段階505のテストまたは段階510のテストのいずれかが真である場合、コンテンツ保護モジュール362は、オーディオコンテンツを含むとしてコンテンツストリームを分類するように構成され得る。コンテンツ保護モジュール362は、段階510がオプションであるように構成され得る。そのような実装形態では、コンテンツ保護モジュール362は、ヒストグラム内に示されたサンプルの分布がベル形状を有するかどうかに基づいて、コンテンツストリームの分類を行うように構成され得る。コンテンツストリームがビデオコンテンツを含む場合、サンプルの分布は、一般に、より均一に分布されることになる。オーディオコンテンツは一般に、サンプルクラスタが約ゼロ値であり、ゼロ値からいずれの方向でも減少する分布を有することになる。
【００５３】
ヒストグラムがベル形状を有さないこと、またはヒストグラムの最高間隔が空でないことに応じて、非オーディオコンテンツを含むとしてコンテンツストリームを分類することができる(段階520)。上記で論じたように、コンテンツ保護モジュール362は、段階505で実行されたテストと、段階510で実行されたテストの両方が結果として偽を返すことに応じて、非オーディオコンテンツを含むとしてコンテンツを分類するように構成され得る。段階510(オプションである)でテストが実行されない実装形態では、コンテンツ保護モジュール362は、段階505において実行されたテストが結果として偽を返すことに応じて、非オーディオコンテンツを含むとしてコンテンツストリームを分類するように構成され得る。
【００５４】
ヒストグラムがベル形状を有するか、またはヒストグラムの最高間隔が空であることに応じて、オーディオコンテンツを含むとしてコンテンツストリームを分類することができる(段階525)。上記で論じたように、コンテンツ保護モジュール362は、段階505で実行されたテストまたは段階510で実行されたテストのいずれかが結果として真を返すことに応じて、オーディオコンテンツを含むとしてコンテンツを分類するように構成され得る。
【００５５】
図6は、本明細書で論じる技法による、ヒストグラムを生成するためのある例示的なプロセスの流れ図である。図6内に示すプロセスは、別段示されない限り、図1〜図3内に示したコンピューティングデバイス120を使用して実装され得る。コンピューティングデバイス120のコンテンツ保護モジュール362は、別段示されない限り、図6内に示すプロセスの様々な段階を実行するための手段を提供することができる。図6内に示すプロセスは、図4内に示すプロセスの段階415を実装するために使用され得る。
【００５６】
サンプルに関する範囲を決定することができる(段階605)。コンテンツ保護モジュール362は、コンテンツストリームから収集されたサンプルが分布され得る範囲を決定するように構成され得る。コンテンツ保護モジュール362は、コンピューティングデバイス120のメモリ260内に記憶された所定の範囲情報からこの情報を取得するように構成され得る。所定の範囲情報は、コンピューティングデバイス120上でアクセスおよび解読され得る様々なタイプのプレミアムコンテンツ内に存在し得る予想される音の強度の範囲で表現され得るか、またはサンプルがコンテンツストリームのスペクトル分析から取得される場合、他の尺度で表現され得る。コンテンツストリームは、コンテンツストリームに関して予想される範囲を識別する情報を含み得る。コンテンツストリームは、コンテンツストリーム内に含まれることが意図されたコンテンツのタイプを識別する情報に関連付けられてもよく、コンテンツ保護モジュール362は、コンピューティングデバイス120のメモリ260内に記憶された所定の範囲情報内のコンテンツストリームに関する適切な範囲をルックアップするように構成され得る。サンプルがコンテンツストリームからの振幅情報を含む場合、所定の範囲は、人間の聴覚が区別することが可能な音の強度の一般的な範囲に基づき得る。一般に、この範囲は、およそ-20dBから140dBに及ぶ範囲のデシベル値で表現され、この範囲の上部における音は、痛みを与えるに十分な強度であり、範囲の下部における音は多くの人にとって不可聴であり得る。サンプルがコンテンツストリームのスペクトル分析から取得された他の情報を含む場合、範囲情報は、コンテンツストリームに適用されたスペクトル分析技法に依存し得る。コンテンツ保護モジュール362は、コンテンツストリームを処理するために使用されたスペクトル分析技法に基づいて、適切な範囲情報を選択するように構成され得る。コンテンツ保護モジュール362は、プロセッサ210またはコンピューティングデバイス120の別のモジュールから、実行されたスペクトル分析のタイプを識別する情報を取得するように構成され得るか、またはコンテンツストリームに関するスペクトル分析を実行するように構成され得、したがって、コンテンツストリームに関して実行されたタイプのスペクトル分析に対する
アクセスをすでに有することになる。
【００５７】
中間間隔がゼロ値を中心とする、奇数の等しい間隔に範囲を分割することができる(段階610)。コンテンツ保護モジュール362は、段階605で決定された範囲を奇数の等しい間隔に分割するように構成され得る。コンテンツ保護モジュール362は、メモリ260またはコンピューティングデバイス120の別のメモリロケーション内に記憶された間隔値に基づいて決定され得る所定の間隔数に範囲を分割するように構成され得る。代替的に、使用すべき間隔数はコンテンツ保護モジュール362にハードコーディングされ得る。コンテンツ保護モジュール362は、ランダムアルゴリズムまたは疑似ランダムアルゴリズムを使用して、範囲が分割されるべき所定の間隔数を選択するように構成されてもよい。コンテンツ保護モジュール362は、範囲が分割されるべき間隔数に上限を設けるように構成され得る。コンテンツ保護モジュール362は、中央間隔がゼロ値を中心とするように、所定の間隔数に範囲を再分割するように構成され得る。コンテンツ保護モジュール362は、コンテンツストリーム内の異なるチャネルに関して異なる間隔数を使用するように、または間隔数が決定されると、コンテンツストリームに関して同じ間隔数を使用するように構成され得る。コンテンツ保護モジュール362は、いくつかの実装形態では、不等にサイズ決定された間隔に範囲を分割するように構成されてもよい。コンテンツ保護モジュール362は、メモリ260から間隔の各々に関する間隔サイズを取得するように構成され得る。コンテンツ保護モジュール362は、ランダムアルゴリズムまたは疑似ランダムアルゴリズムを使用して間隔サイズを生成するように構成されてもよい。
【００５８】
コンテンツストリームから収集されたサンプルと、決定された間隔とに基づいて、ヒストグラムを生成することができる(段階615)。コンテンツ保護モジュール362は、ヒストグラムが段階605で決定された範囲にわたるサンプルの分布を表すように、その間隔内に入る各サンプルに関する各間隔に関連するカウンタを増分するように構成され得る。コンテンツ保護モジュール362は、ヒストグラムを使用して、オーディオコンテンツを含むとして、または非オーディオコンテンツを含むとしてコンテンツストリームを分類するように構成され得る。
【００５９】
図7は、本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。図7内に示すプロセスは、別段示されない限り、図1〜図3内に示したコンピューティングデバイス120を使用して実装され得る。コンピューティングデバイス120のコンテンツ保護モジュール362は、別段示されない限り、図7内に示すプロセスの様々な段階を実行するための手段を提供することができる。図7内に示すプロセスは、図4に示したプロセスの段階415を実装するために使用され得る。
【００６０】
サンプルに関する範囲を決定することができる(段階705)。コンテンツ保護モジュール362は、コンテンツストリームから収集されたサンプルが分布され得る範囲を決定するように構成され得る。コンテンツ保護モジュール362は、コンピューティングデバイス120のメモリ260内に記憶された所定の範囲情報からこの情報を取得するように構成され得る。所定の範囲情報は、コンピューティングデバイス120上でアクセスおよび解読され得る様々なタイプのプレミアムコンテンツ内に存在し得る予想される音の強度の範囲で表現され得るか、またはサンプルがコンテンツストリームのスペクトル分析から取得される場合、他の尺度で表現され得る。コンテンツストリームは、コンテンツストリームに関して予想される範囲を識別する情報を含み得る。コンテンツストリームは、コンテンツストリーム内に含まれることが意図されたコンテンツのタイプを識別する情報に関連付けられてもよく、コンテンツ保護モジュール362は、コンピューティングデバイス120のメモリ260内に記憶された所定の範囲情報内のコンテンツストリームに関する適切な範囲をルックアップするように構成され得る。サンプルがコンテンツストリームからの振幅情報を含む場合、所定の範囲は、人間の聴覚が区別することが可能な音の強度の一般的な範囲に基づき得る。一般に、この範囲は、およそ-20dBから140dBに及ぶ範囲のデシベル値で表現され、この範囲の上部における音は、痛みを与えるに十分な強度であり、範囲の下部における音は多くの人にとって不可聴であり得る。サンプルがコンテンツストリームのスペクトル分析から取得された他の情報を含む場合、範囲情報は、コンテンツストリームに適用されたスペクトル分析技法に依存し得る。コンテンツ保護モジュール362は、コンテンツストリームを処理するために使用されたスペクトル分析技法に基づいて、適切な範囲情報を選択するように構成され得る。コンテンツ保護モジュール362は、プロセッサ210またはコンピューティングデバイス120の別のモジュールから、実行されたスペクトル分析のタイプを識別する情報を取得するように構成され得るか、またはコンテンツストリームに関するスペクトル分析を実行するように構成され得、したがって、コンテンツストリームに関して実行されたタイプのスペクトル分析に対する
アクセスをすでに有することになる。
【００６１】
2つの中間間隔がゼロ値に隣接する、偶数の等しい間隔に範囲を分割することができる(段階710)。コンテンツ保護モジュール362は、段階605で決定された範囲を偶数の等しい間隔に分割するように構成され得る。コンテンツ保護モジュール362は、メモリ260またはコンピューティングデバイス120の別のメモリロケーション内に記憶された間隔値に基づいて決定され得る所定の間隔数に範囲を分割するように構成され得る。代替的に、使用すべき間隔数はコンテンツ保護モジュール362にハードコーディングされ得る。コンテンツ保護モジュール362は、ランダムアルゴリズムまたは疑似ランダムアルゴリズムを使用して、範囲が分割されるべき所定の間隔数を選択するように構成されてもよい。コンテンツ保護モジュール362は、範囲が分割されるべき間隔数に上限を設けるように構成され得る。コンテンツ保護モジュール362は、2つの中央間隔がゼロ値を中心とするように、範囲を所定の間隔数に再分割するように構成され得る。コンテンツ保護モジュール362は、コンテンツストリーム内の異なるチャネルに関して異なる間隔数を使用するように、または間隔数が決定されると、コンテンツストリームに関して同じ間隔数を使用するように構成され得る。コンテンツ保護モジュール362は、いくつかの実装形態では、不等にサイズ決定された間隔に範囲を分割するように構成されてもよい。コンテンツ保護モジュール362は、メモリ260から間隔の各々に関する間隔サイズを取得するように構成され得る。コンテンツ保護モジュール362は、ランダムアルゴリズムまたは疑似ランダムアルゴリズムを使用して間隔サイズを生成するように構成されてもよい。
【００６２】
コンテンツストリームから収集されたサンプルと、決定された間隔とに基づいて、ヒストグラムを生成することができる(段階715)。コンテンツ保護モジュール362は、ヒストグラムが段階605で決定された範囲にわたるサンプルの分布を表すように、その間隔内に入る各サンプルに関する各間隔に関連するカウンタを増分するように構成され得る。コンテンツ保護モジュール362は、ヒストグラムを使用して、オーディオコンテンツを含むとして、または非オーディオコンテンツを含むとしてコンテンツストリームを分類するように構成され得る。
【００６３】
図8は、本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。図8内に示すプロセスは、別段示されない限り、図1〜図3内に示したコンピューティングデバイス120を使用して実装され得る。コンピューティングデバイス120のコンテンツ保護モジュール362は、別段示されない限り、図8内に示されたプロセスの様々な段階を実行するための手段を提供することができる。図8内に示すプロセスは、図4に示されるプロセスの段階415を実装するために使用され得る。
【００６４】
サンプルに関する範囲を決定することができる(段階805)。コンテンツ保護モジュール362は、コンテンツストリームから収集されたサンプルが分布され得る範囲を決定するように構成され得る。コンテンツ保護モジュール362は、コンピューティングデバイス120のメモリ260内に記憶された所定の範囲情報からこの情報を取得するように構成され得る。所定の範囲情報は、コンピューティングデバイス120上でアクセスおよび解読され得る様々なタイプのプレミアムコンテンツ内に存在し得る予想される音の強度の範囲で表現され得るか、またはサンプルがコンテンツストリームのスペクトル分析から取得される場合、他の尺度で表現され得る。コンテンツストリームは、コンテンツストリームに関して予想される範囲を識別する情報を含み得る。コンテンツストリームは、コンテンツストリーム内に含まれることが意図されたコンテンツのタイプを識別する情報に関連付けられてもよく、コンテンツ保護モジュール362は、コンピューティングデバイス120のメモリ260内に記憶された所定の範囲情報内のコンテンツストリームに関する適切な範囲をルックアップするように構成され得る。サンプルがコンテンツストリームからの振幅情報を含む場合、所定の範囲は、人間の聴覚が区別することが可能な音の強度の一般的な範囲に基づき得る。一般に、この範囲は、およそ-20dBから140dBに及ぶ範囲のデシベル値で表現され、この範囲の上部における音は、痛みを与えるに十分な強度であり、範囲の下部における音は多くの人にとって不可聴であり得る。サンプルがコンテンツストリームのスペクトル分析から取得された他の情報を含む場合、範囲情報は、コンテンツストリームに適用されたスペクトル分析技法に依存し得る。コンテンツ保護モジュール362は、コンテンツストリームを処理するために使用されたスペクトル分析技法に基づいて、適切な範囲情報を選択するように構成され得る。コンテンツ保護モジュール362は、プロセッサ210またはコンピューティングデバイス120の別のモジュールから、実行されたスペクトル分析のタイプを識別する情報を取得するように構成され得るか、またはコンテンツストリームに関するスペクトル分析を実行するように構成され得、したがって、コンテンツストリームに関して実行されたタイプのスペクトル分析に対する
アクセスをすでに有することになる。
【００６５】
最低間隔がゼロ値に隣接する絶対値間隔に周波数範囲を分割することができる(段階810)。コンテンツ保護モジュール362は、段階605で決定された範囲を、最低間隔がゼロに隣接する正値範囲を有する一連の間隔に分割するように構成され得る。コンテンツ保護モジュール362は、メモリ260またはコンピューティングデバイス120の別のメモリロケーション内に記憶された間隔値に基づいて決定され得る所定の間隔数に範囲を分割するように構成され得る。代替的に、使用すべき間隔数はコンテンツ保護モジュール362にハードコーディングされ得る。コンテンツ保護モジュール362は、ランダムアルゴリズムまたは疑似ランダムアルゴリズムを使用して、範囲が分割されるべき所定の間隔数を選択するように構成されてもよい。コンテンツ保護モジュール362は、範囲が分割されるべき間隔数に上限を設けるように構成され得る。コンテンツ保護モジュール362は、最低間隔がゼロ値に隣接するように、所定の間隔数に範囲を再分割するように構成され得る。コンテンツ保護モジュール362は、コンテンツストリーム内の異なるチャネルに関して異なる間隔数を使用するように、または間隔数が決定されると、コンテンツストリームに関して同じ間隔数を使用するように構成され得る。コンテンツ保護モジュール362は、いくつかの実装形態では、不等にサイズ決定された間隔に範囲を分割するように構成されてもよい。コンテンツ保護モジュール362は、メモリ260から間隔の各々に関する間隔サイズを取得するように構成され得る。コンテンツ保護モジュール362は、ランダムアルゴリズムまたは疑似ランダムアルゴリズムを使用して間隔サイズを生成するように構成されてもよい。
【００６６】
コンテンツストリームから収集されたサンプルと、決定された間隔とに基づいて、ヒストグラムを生成することができる(段階815)。コンテンツ保護モジュール362は、ヒストグラムが段階805で決定された範囲にわたるサンプルの分布を表すように、サンプルの絶対値がその間隔内に入る各サンプルに関する各間隔に関連するカウンタを増分するように構成され得る。コンテンツ保護モジュール362は、ヒストグラムを使用して、オーディオコンテンツを含むとして、または非オーディオコンテンツを含むとしてコンテンツストリームを分類するように構成され得る。
【００６７】
図9は、本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。図9内に示すプロセスは、別段示されない限り、図1〜図3内に示したコンピューティングデバイス120を使用して実装され得る。コンピューティングデバイス120のコンテンツ保護モジュール362は、別段示されない限り、図9内に示すプロセスの様々な段階を実行するための手段を提供することができる。図9内に示すプロセスは、図4に示されるプロセスの段階415を実装するために使用され得る。
【００６８】
サンプルに関する範囲を決定することができる(段階905)。コンテンツ保護モジュール362は、コンテンツストリームから収集されたサンプルが分布され得る範囲を決定するように構成され得る。コンテンツ保護モジュール362は、コンピューティングデバイス120のメモリ260内に記憶された所定の範囲情報からこの情報を取得するように構成され得る。所定の範囲情報は、コンピューティングデバイス120上でアクセスおよび解読され得る様々なタイプのプレミアムコンテンツ内に存在し得る予想される音の強度の範囲で表現され得るか、またはサンプルがコンテンツストリームのスペクトル分析から取得される場合、他の尺度で表現され得る。コンテンツストリームは、コンテンツストリームに関して予想される範囲を識別する情報を含み得る。コンテンツストリームは、コンテンツストリーム内に含まれることが意図されたコンテンツのタイプを識別する情報に関連付けられてもよく、コンテンツ保護モジュール362は、コンピューティングデバイス120のメモリ260内に記憶された所定の範囲情報内のコンテンツストリームに関する適切な範囲をルックアップするように構成され得る。サンプルがコンテンツストリームからの振幅情報を含む場合、所定の範囲は、人間の聴覚が区別することが可能な音の強度の一般的な範囲に基づき得る。一般に、この範囲は、およそ-20dBから140dBに及ぶ範囲のデシベル値で表現され、この範囲の上部における音は、痛みを与えるに十分な強度であり、範囲の下部における音は多くの人にとって不可聴であり得る。サンプルがコンテンツストリームのスペクトル分析から取得された他の情報を含む場合、範囲情報は、コンテンツストリームに適用されたスペクトル分析技法に依存し得る。コンテンツ保護モジュール362は、コンテンツストリームを処理するために使用されたスペクトル分析技法に基づいて、適切な範囲情報を選択するように構成され得る。コンテンツ保護モジュール362は、プロセッサ210またはコンピューティングデバイス120の別のモジュールから、実行されたスペクトル分析のタイプを識別する情報を取得するように構成され得るか、またはコンテンツストリームに関するスペクトル分析を実行するように構成され得、したがって、コンテンツストリームに関して実行されたタイプのスペクトル分析に対する
アクセスをすでに有することになる。
【００６９】
範囲を重複間隔に分割することができる(段階910)。図6〜図8内に示した技法と対照的に、図9内に示す技法では、コンテンツ保護モジュール362は、隣接する間隔に部分的に重複する間隔を分割するように構成され得る。コンテンツ保護モジュール362は、いくつの間隔に範囲を分割すべきかを決定するために段階610、710、および810に関して論じた技法のうちの1つを実行するように構成され得る。コンテンツ保護モジュール362は、間隔が所定の割合だけ、または何らかの所定の値だけ重複するように間隔を選択するように構成され得る。コンテンツ保護モジュール362は、これらの値でハードコーディングされてよく、またはコンピューティングデバイス120のメモリ260からまたはコンピューティングデバイス120の別のメモリからこれらの値を取得するように構成されてもよい。
【００７０】
コンテンツストリームから収集されたサンプルと、決定された間隔とに基づいて、ヒストグラムを生成することができる(段階915)。コンテンツ保護モジュール362は、ヒストグラムが段階605で決定された範囲にわたるサンプルの分布を表すように、その間隔内に入る各サンプルに関する各間隔に関連するカウンタを増分するように構成され得る。コンテンツ保護モジュール362は、ヒストグラムを使用して、オーディオコンテンツを含むとして、または非オーディオコンテンツを含むとしてコンテンツストリームを分類するように構成され得る。
【００７１】
図10は、本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。図10内に示すプロセスは、別段示されない限り、図1〜図3内に示したコンピューティングデバイス120を使用して実装され得る。コンピューティングデバイス120のコンテンツ保護モジュール362は、別段示されない限り、図10内に示すプロセスの様々な段階を実行するための手段を提供することができる。図10内に示すプロセスは、コンテンツストリームが2つ以上のチャネルを含む、図4内に示したプロセスの段階415を実装するために使用され得る。
【００７２】
コンテンツストリームを送信するために使用されているチャネルを決定することができる(段階1005)。コンテンツ保護モジュール362は、コンテンツストリームを送信するためにいくつのチャネルが使用されているかを決定するように構成され得る。コンテンツストリームを送信するために使用され得るチャネルの数は、コンテンツストリームのフォーマットに応じて異なってよく、送信されるべきコンテンツに基づいて異なってもよい。コンテンツ保護モジュール362は、コンテンツストリーム自体に関連する、かつ/またはコンテンツストリーム自体内に含まれた情報に基づいて、コンテンツストリームを送信するためにいくつのチャネルが使用されているかを決定するように構成され得る。コンテンツ保護モジュール362は、コンテンツストリームのフォーマットを決定することによって、かつそのフォーマットによってサポートされ得るチャネルの数をルックアップすることによって、コンテンツストリームの数を決定するように構成されてもよい。コンテンツ保護モジュール362は、コンピューティングデバイスのメモリ260内のフォーマット情報をルックアップするように、かつ/またはインターネットまたは他のネットワーク接続を介して外部ソースからフォーマット情報を取得するように構成され得る。たとえば、アドバンスドオーディオコーディング(AAC)規格に従ってコーディングされたコンテンツストリームは、他の関連するオーディオチャネルおよびデータストリームに加えて、1つのストリーム内に48ものチャネルを含み得る。コンテンツ保護モジュール362は、特定のコンテンツストリーム内でどのチャネルが使用されているかを識別するように構成可能であり、その結果、これらのチャネル上で送信されているコンテンツをサンプリングして、攻撃者がこれらのチャネルのうちの1つまたは複数の上でビデオコンテンツをインターリーブすることを試みたかどうかを決定することができる。AAC規格は、本明細書で開示する技法において使用され得る様々なオーディオ規格の一例である。本明細書で開示する技法は、複数のオーディオチャネルを含み得る規格を含めて、他のコーディング規格に適用され得る。
【００７３】
コンテンツストリームを送信するために使用されているチャネルの各々に関してヒストグラムを生成することができる(段階1010)。コンテンツ保護モジュール362は、上記で論じたように、各チャネルに関してヒストグラムを生成するように構成され得る。たとえば、コンテンツ保護モジュールは、図6〜図9内に示したプロセスのうちの1つを使用して各チャネルに関してヒストグラムを生成するように構成され得る。コンテンツ保護モジュール362は、ヒストグラムを使用して、オーディオコンテンツを含むとして、または非オーディオコンテンツを含むとしてコンテンツストリームを分類するように構成され得る。
【００７４】
図11は、本明細書で論じる技法による、オーディオコンテンツまたは非オーディオコンテンツとして、複数のチャネルを有するコンテンツストリームを分類するためのある例示的なプロセスの流れ図である。図11内に示すプロセスは、別段示されない限り、図1〜図3内に示したコンピューティングデバイス120を使用して実装され得る。コンピューティングデバイス120のコンテンツ保護モジュール362は、別段示されない限り、図11内に示されたプロセスの様々な段階を実行するための手段を提供することができる。図11内に示すプロセスは、図4に示したプロセスの段階420を実装するために使用され得る。図11内に示すプロセスは、段階415を実装するために図10が使用される場合など、マルチチャネルコンテンツストリームの各チャネルに関してヒストグラムが生成されている、図4内に示したプロセスの段階420を実装するために使用され得る。
【００７５】
オーディオコンテンツチャネルの各それぞれの1つに関連するヒストグラムの各々に関する最高間隔を検査して、間隔が空であるかどうかを決定することができる(段階1105)。コンテンツ保護モジュール362は、コンテンツストリーム内に含まれたチャネルの各々に関連するヒストグラムに関して、ヒストグラムの最高間隔が空であるかどうかを決定するように構成され得る。ヒストグラムの最高間隔は、サンプリングされたコンテンツが、非常に音の大きいオーディオコンテンツになり、一般に、ほとんどのオーディオコンテンツに関して空になるが、コンテンツストリームが非オーディオコンテンツを含む場合にはデータを含み得る場合を表す。ヒストグラムの最高間隔が空である場合、コンテンツは、オーディオコンテンツである可能性が高く、そのように処理され得る。
【００７６】
オーディオコンテンツチャネルのうちの各それぞれの1つに関連するヒストグラムの各々に関する最高間隔が空であるかどうかを決定することができる(段階1110)。コンテンツ保護モジュール362が、チャネルのすべてに関して最高間隔が空であったと決定した場合、プロセスは段階1120に続くことができる。さもなければ、コンテンツ保護モジュール362は、段階1115のプロセスを続けるように構成され得る。
【００７７】
ヒストグラムのうちの少なくとも1つの最高間隔が空でないことに応じて、非オーディオコンテンツを含むとしてコンテンツストリームを分類することができる(段階1115)。コンテンツ保護モジュール362は、ビデオコンテンツが非オーディオコンテンツを含むとして潜在的にインターリーブされている可能性があるチャネルを含むいずれかのコンテンツストリームを分類するように構成され得る。コンテンツは、実際にオーディオコンテンツであり得るが、デジタル著作権管理保護の考えられる無効化を防ぐために、コンテンツ保護モジュール362は、オーディオ品質を著しく損なうべきではないが、コンテンツストリーム内に存在するビデオコンテンツの復号を防ぐような形でそれらのコンテンツストリームを改変することができるように、いずれかの疑わしいコンテンツストリームにフラグ付けするように構成され得る。
【００７８】
ヒストグラムのすべての最高間隔が空であることに応じて、オーディオコンテンツを含むとしてコンテンツストリームを分類することができる(段階1120)。コンテンツ保護モジュール362は、ヒストグラムのすべてが空の最高間隔を含む場合、オーディオコンテンツを含むとしてコンテンツストリームを分類することができるが、これは、攻撃者が、オーディオコンテンツとともにビデオコンテンツを解読するようにコンピューティングデバイス120を操るために、ビデオコンテンツをオーディオコンテンツストリームでインターリーブすることによって、コンテンツに関するデジタル著作権保護を無効化することを試みている場合、そのような発生の可能性は低いためである。
【００７９】
図12は、本明細書で論じる技法による、ヒストグラムを生成するための別の例示的なプロセスの流れ図である。図12内に示すプロセスは、別段示されない限り、図1〜図3内に示したコンピューティングデバイス120を使用して実装され得る。図12内に示すプロセスは、ヒストグラムを生成するのに先立って、サンプルからDCオフセットを除去するために使用され得る。DCオフセットはゼロからの平均振幅変位を表す。DCオフセットは、オーディオ信号をデジタル信号に変換する間に固定電圧オフセットとして導入され得る。コンピューティングデバイス120のコンテンツ保護モジュール362は、別段示されない限り、図12内に示すプロセスの様々な段階を実行するための手段を提供することができる。図12内に示すプロセスは、図4に示したプロセスの段階415を実装するために使用され得る。図12内に示すプロセスの部分を図8のプロセスの部分と組み合わせて、ヒストグラム生成するのに先立って、DCオフセットが除去されていることを確実にすることができる。たとえば、図12内で示すプロセスの段階805または810に先立って段階1205および1210を実行することができる。段階1205および1210で実行される処理は、図6、図7、および図9内で示したプロセスに先立って実行されてもよい。図12内で示すプロセスは、複数のチャネルを含むコンテンツストリーム内の各チャネルに関して実行され得る。
【００８０】
各チャネルに関するサンプルの平均を決定することができる(段階1205)。コンピューティングデバイス120のコンテンツ保護モジュール362は、図4内に示したプロセスの段階410でコンテンツストリームから収集されたサンプルの平均を決定するように構成され得る。この平均を使用して、コンテンツストリーム内に存在するDCオフセットを推定することができる。
【００８１】
計算された平均をサンプルの各々から減算して、調整されたサンプルを生成することができる(段階1210)。コンテンツ保護モジュール362は、段階410で収集されたサンプルの各々から段階1205で決定された平均値を減算して、DCオフセットを除去した、またはDCオフセットの少なくとも近似値を除去した、調整されたサンプルを生成するように構成され得る。
【００８２】
調整されたサンプルに基づいてヒストグラムを生成することができる(段階1215)。コンテンツ保護モジュール362は、上記で論じたように、ヒストグラムを生成するように構成され得る。たとえば、コンテンツ保護モジュールは、図6〜図9内に示したプロセスのうちの1つを使用してヒストグラムを生成するように構成され得る。コンテンツ保護モジュール362は、ヒストグラムを使用して、オーディオコンテンツを含むとして、または非オーディオコンテンツを含むとしてコンテンツストリームを分類するように構成され得る。
【００８３】
本明細書で説明した方法は、用途に応じて様々な手段によって実装され得る。たとえば、これらの方法は、ハードウェア、ファームウェア、ソフトウェア、またはそれらの任意の組合せにおいて実装されてよい。ハードウェア実装形態の場合、処理ユニットは、1つまたは複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、本明細書で説明した機能を実行するように設計された他の電子ユニット、またはそれらの組合せ内で実施され得る。
【００８４】
ファームウェアおよび/またはソフトウェアの実装形態の場合、これらの方法は、本明細書で説明した機能を実行するモジュール(たとえば、手順、機能など)を用いて実装されてもよい。命令を有形に具現化するいずれの機械可読媒体も、本明細書で説明した方法を実装する際に使用され得る。たとえば、ソフトウェアコードは、メモリ内に記憶され、プロセッサユニットによって実行され得る。メモリは、プロセッサユニット内またはプロセッサユニットの外部に実装されてもよい。本明細書で使用される場合、「メモリ」という用語は、任意のタイプの長期、短期、揮発性、不揮発性、または他のメモリを指し、特定のメモリのタイプもしくはメモリの数、または媒体のタイプに限定されるものではない。有形の媒体は、ランダムアクセスメモリ、磁気ストレージ、光学記憶媒体のような、機械可読媒体の1つまたは複数の物品を含む。
【００８５】
ファームウェアおよび/またはソフトウェアにおいて実施される場合に、機能は、コンピュータ可読媒体上の1つまたは複数の命令またはコードとして記憶され得る。例は、データ構造体を用いて符号化されたコンピュータ可読媒体、およびコンピュータプログラムを用いて符号化されたコンピュータ可読媒体を含む。コンピュータ可読媒体は、物理的なコンピュータ記憶媒体を含む。記憶媒体は、コンピュータによってアクセス可能な任意の利用可能な媒体であり得る。限定ではなく、例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくはそれ以外の光ディスクストレージ、磁気ディスクストレージもしくはそれ以外の磁気ストレージデバイス、または命令またはデータ構造の形式で所望のプログラムコードを記憶するために用いることができ、かつコンピュータによってアクセスできる任意の他の媒体を含むことができ、disk(ディスク)およびdisc(ディスク)は、本明細書で用いられるときに、コンパクトディスク(disc)(CD)、レーザディスク(disc)、光ディスク(disc)、デジタルバーサタイルディスク(disc)(DVD)、フロッピディスク(disk)およびブルーレイディスク(disc)を含み、diskは、通常、データを磁気的に再生し、一方、discは、レーザを用いてデータを光学的に再生する。上記の組合せはまた、コンピュータ可読媒体の範囲内に含まれるものとする。そのような媒体はまた、機械可読であり得る非一時的媒体の例を提供し、コンピュータは、そのような非一時的媒体から読み取ることができる機械の一例である。
【００８６】
本明細書で論じた一般的な原理は、本開示または特許請求の範囲の精神または範囲から逸脱することなく、他の実装に適用されてよい。
【符号の説明】
【００８７】
110  ネットワーク
115  ワイヤレス送信機
115a  地上ワイヤレス送信器
115b  地上ワイヤレス送信器
120  コンピューティングデバイス
140  ワイヤレス基地局
160  ロケーションサーバ
170  衛星
170a  衛星
170b  衛星
180  コンテンツサーバ
201  バス
210  汎用プロセッサ
225  ワイヤレスインターフェース
232  信号線
234  アンテナ
260  非一時的メモリ、メモリ
265  GNSSインターフェース
270  入出力インターフェース
272  信号線
274  アンテナ
362  コンテンツ保護モジュール
366  データアクセスモジュール
【図１】
2018514993.tif 000003
【図２】
2018514993.tif 000004
【図３】
2018514993.tif 000005
【図４】
2018514993.tif 000006
【図５】
2018514993.tif 000007
【図６】
2018514993.tif 000008
【図７】
2018514993.tif 000009
【図８】
2018514993.tif 000010
【図９】
2018514993.tif 000011
【図１０】
2018514993.tif 000012
【図１１】
2018514993.tif 000013
【図１２】
2018514993.tif 000014
【国際調査報告】
2018514993.tif 000015
2018514993.tif 000016