(58)【調査した分野】(Int.Cl.,DB名)
メディアパケットのうちの第1のメディアパケットの第1のレーティングレベルが、メディアパケットのうちの第2のメディアパケットの第2のレーティングレベルと異なる、請求項1に記載の装置。
プロセッサが、メディアパケットの第2の部分内のメディアコンテンツの代わりに、代替のメディアコンテンツをクライアントデバイス上でレンダリングするようにさらに構成された、請求項1に記載の装置。
メディアコンテンツが音声ストリームとビデオストリームの両方を含み、プロセッサがメディアコンテンツの第1のメディアストリームおよび第2のメディアストリームをレンダリングするようにさらに構成され、第1のメディアストリームが音声ストリームおよびビデオストリームの一方であり、第2のメディアストリームが音声ストリームおよびビデオストリームの他方であり、レーティングレベルが第2のメディアストリームのさらなるメディアパケットから省略され、レンダリングが、同一のタイムスタンプ情報を有する対応するメディアパケットの音声ストリームおよびビデオストリームを、第1のメディアストリームのレーティングレベルに基づいてクライアントデバイス上でレンダリングすることを含む、請求項1に記載の装置。
プロセッサが、メディアパケットの各々のレーティングレベルを、メディアパケットの各々に含まれるヘッダから決定するようにさらに構成された、請求項1に記載の装置。
【発明の概要】
【課題を解決するための手段】
【0006】
本開示の実施形態は、メディアコンテンツがパケットレベルでレーティングされるコンテンツ配信システムを対象とする。メディアサーバは、メディアコンテンツの各メディアセグメントに割り当てられたそれぞれのレーティングレベルを決定し、メディアパケットがメディアコンテンツに割り当てられたレーティングレベルを識別するようにメディアコンテンツをメディアパケットにパケット化するように構成されたプロセッサを含む。メディアサーバは、ネットワークに接続され、ネットワークを介してクライアントデバイスにメディアパケットをストリーミングするように構成された、インターフェースをさらに含む。
【0007】
他の実施形態では、装置は、ネットワークからメディアパケットを受信するように構成されたインターフェースと、許可レベルを記憶するように構成されたメモリと、許可レベルをメディアパケットの各々のレーティングレベルと比較するように構成されたプロセッサとを含む。プロセッサは、許可レベルがレーティングレベルよりも優位にあることを条件に、メディアパケット内のメディアコンテンツをクライアントデバイス上でレンダリングするようにさらに構成される。プロセッサは、許可レベルがレーティングレベルよりも劣位にあることを条件に、メディアパケット内のメディアコンテンツがクライアントデバイス上でレンダリングされることをブロックするようにさらに構成される。
【0008】
さらに他の実施形態では、方法は、ネットワークから、各々がメディアコンテンツを含むメディアパケットを受信し、メディアコンテンツに関連付けられたレーティングレベルを識別することを含む。方法は、クライアントデバイスに関連付けられた許可レベルをメディアパケットの各々のレーティングレベルと比較することと、許可レベルがレーティングレベルよりも優位にあることを条件に、メディアパケット内のメディアコンテンツをクライアントデバイス上でレンダリングすることと、許可レベルがレーティングレベルよりも劣位にあることを条件に、メディアパケット内のメディアコンテンツがクライアントデバイス上でレンダリングされることをブロックすることとをさらに含む。
【0009】
上記の装置/方法のいずれかのいくつかの実施形態において、メディアパケットは、メディア番組の少なくとも一部に対応する。
【0010】
上記の装置/方法のいずれかのいくつかの実施形態において、メディアパケットのうちの第1のメディアパケットの第1のレーティングレベルは、メディアパケットのうちの第2のメディアパケットの第2のレーティングレベルと異なる。
【0011】
上記の装置/方法のいずれかのいくつかの実施形態において、メディアパケットの各々のそれぞれのレーティングレベルに基づいて、メディアパケットの第1の部分内のメディアコンテンツがクライアントデバイス上でレンダリングされ、メディアパケットの第2の部分内のメディアコンテンツがクライアントデバイスにレンダリングされることがブロックされる。
【0012】
上記の装置/方法のいずれかのいくつかの実施形態において、メディアパケットの第2の部分内のメディアコンテンツの代わりに、代替のメディアコンテンツがクライアントデバイス上でレンダリングされる。
【0013】
上記の装置/方法のいずれかのいくつかの実施形態において、代替のメディアコンテンツがクライアントデバイスに格納される。
【0014】
上記の装置/方法のいずれかのいくつかの実施形態において、クライアントデバイスは、メディアサーバから代替のメディアコンテンツを受信する。
【0015】
上記の装置/方法のいずれかのいくつかの実施形態は、メディアパケットを受信し格納するために、クライアントデバイス内にバッファをさらに含む。
【0016】
上記の装置/方法のいずれかのいくつかの実施形態において、クライアントデバイスはさらに、メディアパケットがバッファから出力された後に、メディアパケットの各々のレーティングレベルを許可レベルと比較する。
【0017】
上記の装置/方法のいずれかのいくつかの実施形態において、クライアントデバイスはさらに、メディアパケットがバッファから出力される前に、メディアパケットの各々のレーティングレベルを許可レベルと比較する。
【0018】
上記の装置/方法のいずれかのいくつかの実施形態において、クライアントデバイスは、許可レベルよりも優位にある優位なレーティングレベルを有する少なくとも1つの許可されたメディアパケットを第2の部分に含めるために選択することを、少なくとも1つの許可されたメディアパケットと、許可レベルよりも劣位にある劣位のレーティングレベルを有する1つまたは複数のブロックされたメディアパケットとの、バッファにおけるそれぞれの位置に基づいて行う。
【0019】
上記の装置/方法のいずれかのいくつかの実施形態において、メディアコンテンツは音声ストリームとビデオストリームの両方を含む。
【0020】
上記の装置/方法のいずれかのいくつかの実施形態において、クライアントデバイスは、メディアコンテンツの第1のメディアストリームおよび第2のメディアストリームをレンダリングするようにさらに構成され、第1のメディアストリームは音声ストリームおよびビデオストリームの一方であり、第2のメディアストリームは音声ストリームおよびビデオストリームの他方である。この実施形態では、レーティングレベルが第2のメディアストリームのさらなるメディアパケットから省略され、同一のタイムスタンプ情報を有する対応するメディアパケットの音声ストリームおよびビデオストリームが、第1のメディアストリームのレーティングレベルに基づいてクライアントデバイス上でレンダリングされる。
【0021】
上記の装置/方法のいずれかのいくつかの実施形態において、許可レベルは、権限のあるユーザにより修正可能である。
【0022】
上記の装置/方法のいずれかのいくつかの実施形態において、メディアパケットの各々はヘッダを含み、レーティングレベルはヘッダに含まれる。
【0023】
上記の装置/方法のいずれかのいくつかの実施形態において、メディアパケットはリアルタイムプロトコル(RTP)パケットであり、ヘッダはRTPヘッダとRTPヘッダに付加された可変長の拡張とを含み、レーティングレベルは可変長の拡張に含まれる。
【発明を実施するための形態】
【0025】
図1に、パケットレベルのレーティングを用いてレーティングされたメディアコンテンツをレンダリングするためのコンテンツ配信システム100の一実施形態を示す。コンテンツ配信システム100は、メディアサーバ110およびクライアントデバイス150を含む。クライアントデバイス150は、たとえば、モバイルクライアントデバイス(たとえばスマートフォン、タブレットまたはその他のモバイルデバイス)、デスクトップクライアントデバイス(たとえばモニタが接続されたデスクトップコンピュータ)、テレビクライアントデバイス(たとえばスマートTVまたはテレビが接続されたセットトップボックス)、またはその他の種類のクライアントデバイスとすることができる。クライアントデバイス150は、ネットワーク140を介してメディアサーバ110に接続される。ネットワーク140は、たとえば、有線ネットワーク(たとえばインターネットプロトコル(IP)ネットワーク)、および無線ネットワーク(たとえばWiFi、WLAN、3G、4Gまたはその他の種類の無線ネットワーク)のうちの1つまたは複数を含むことができる。
【0026】
メディアサーバ110は、各々がデジタルメディアコンテンツ130(たとえば音声および/またはビデオコンテンツ)を含む、1つまたは複数のメディア番組120へのアクセスを与える。例として、限定はしないが、メディア番組120は、録音物、映画、テレビ番組、インターネットラジオ、インターネット音声/ビデオ番組、および/またはその他のマルチメディア番組を含むことができる。メディアサーバ110は、メディア番組120を記憶するためのメディア記憶デバイスを含むことができ、または要求されたメディア番組120を取得するための外部のメディア記憶デバイスに接続することができる。さらに、メディアサーバ110は、たとえばメディア制作デバイス、ウェブサーバ、ライセンスサーバ、およびクライアントデバイスへのメディアコンテンツの配信に関与するその他のネットワークデバイスを含む1つまたは複数のさらなるネットワークデバイスに統合するまたは(ローカルもしくはワイドエリアネットワークを介して)接続することができる。
【0027】
一実施形態では、クライアントデバイス150は、ネットワーク140を介してメディアサーバ110により提供されるメディア番組120のカタログにアクセスし閲覧することができ、(典型的にはクライアントデバイス150が認証された場合に)メディア番組120のうちの1つまたは複数を選択してダウンロードすることができる。特定のメディア番組120を選択した後、いくつかの実施形態では、クライアントデバイス150は、メディアサーバ110がクライアントデバイス150へのメディア番組120のダウンロードまたはストリーミングを開始する前に、メディア番組120についてのデジタル著作権管理(DRM:Digital Rights Management)ライセンスを取得する。メディアサーバ110は、クライアントデバイス150に1つまたは複数のダウンロード/ストリーミングの選択肢を与えることができる。たとえば、メディアサーバ110は、ネットワーク140および/またはクライアントデバイス150の帯域幅制限に適応する、メディア番組120の適応的ストリーミングを提供することができる。他の例として、メディアサーバは、メディア番組120のプログレッシブダウンロードを提供することができ、これによりクライアントデバイス150は、メディアコンテンツ130をキャッシュしてよりスムーズな視聴体験を行うことが可能となる。
【0028】
メディア番組120をダウンロードまたはストリーミングするために、メディアサーバ110は、メディア番組120のメディアコンテンツ130をメディアパケット135にパケット化する。さらに、メディアサーバ110は、コンテンツ130をパケット化する前に、メディアコンテンツ130をトランスコードおよび暗号化することができ、および/またはメディアコンテンツ130へのDRM制限を含めることができる。
【0029】
加えて、メディアサーバ110は、メディアパケット135の少なくとも一部に、そのメディアパケット135内のメディアコンテンツ130に関連付けられたレーティングレベル132をさらに含める。レーティングレベル132は、特定の視聴者に対するメディアコンテンツ130の適切性をレーティングする。一例示的実施形態では、MPAAレーティングシステムを用いて、レーティングレベル132を決定する。しかしながら、他の実施形態では、他のレーティングシステム、たとえばTVペアレンタルガイドラインシステムを用いて、レーティングレベル132を決定することができる。
【0030】
クライアントデバイス150は、そのクライアントデバイス150に対する許可レベル152を維持する。許可レベル152は、クライアントデバイスまたはクライアントデバイスの知られているユーザの種類に基づいて事前に格納することができ、またはパスワードなどを用いてクライアントデバイス150の権限のあるユーザにより入力することができる。一例示的実施形態では、権限のあるユーザは、ウェブベースのユーザインターフェース(許可レベル152のリモート設定用)、またはデバイスユーザインターフェース(たとえばデスクトップクライアントデバイス、モバイルクライアントデバイスまたはテレビクライアントデバイス上のグラフィカルユーザインターフェース)を介して許可レベル152を設定することができる。たとえば、権限のあるユーザは、リモートコントロールデバイスを用いて、セットトップボックス(STB)に接続されたテレビに関連付けられたSTBクライアントにアクセスすることで、許可レベル152を設定することができる。許可レベル152は、クライアントデバイスに永久的にプログラムすることができ、または権限のあるユーザにより修正可能とすることができる。たとえば、一実施形態では、権限のあるユーザは、クライアントデバイス150の予想される視聴者に基づいて許可レベル152を一時的に変更することができる。加えて、許可レベル152は、異なるレーティングシステムにマッピング可能な汎用の許可レベル、またはレーティングシステムごとの別個の許可レベルを含むことができる。
【0031】
クライアントデバイス150は、メディアサーバ110からネットワーク140を介してメディアパケット135を受信し、各メディアパケット135を検査して関連付けられたレーティングレベル132を確認する。特定のメディアパケット135がレーティングレベル132を含まない一実施形態では、クライアントデバイス150は、レーティングレベル132がないことを、特定の所定のレーティングレベル、たとえば最低のレーティングレベル(たとえば、全視聴者に適したメディアコンテンツ130に関連付けられた「G指定(G−rated)」)を示すものとして扱うことができる。他の実施形態では、レーティングレベル132は、同じレーティングレベル132を有するメディア番組120のセグメントの最初のメディアパケット135のみに含めることができる。そして、クライアントデバイス150は、最初のメディアパケット135に続いて受信された全てのメディアパケット135を、あるレーティングレベル132を含む他のメディアパケット135が受信されるまで、最初のメディアパケット135と同じレーティングレベル132を有するものとして扱うことができる。
【0032】
さらに、クライアントデバイス150は、各受信されたメディアパケット135のレーティングレベル132を、格納された許可レベル152と比較して、そのメディアパケット135内のメディアコンテンツをデバイス150上にレンダリング可能かを決定する。レーティングレベル132が許可レベル152よりも優位にある場合、クライアントデバイス150は、メディアパケット135内のメディアコンテンツ130をクライアントデバイス150上にレンダリングする。たとえば、メディアコンテンツは、クライアントデバイス150に統合または接続されたディスプレイ170およびスピーカー180に出力することができる。レーティングレベル132が許可レベル152よりも劣位にある場合、クライアントデバイス150は、メディアパケット135内のメディアコンテンツ130がクライアントデバイス150上にレンダリングされるのをブロックする。
【0033】
一例示的実施形態では、レーティングレベル132および許可レベル152は、特定のレーティングシステムの分類に対応する数値として表すことができる。たとえば、MPAAレーティングシステムを用いると、レーティングレベル132および許可レベル152は以下とすることができる:
【0035】
この実施形態では、レーティングレベル132が許可レベル152以下である場合、レーティングレベル132は許可レベル152よりも優位にある。たとえば、レーティングレベル132が「2」(「PG」に対応)であり、許可レベル152が「3」(「PG−13」に対応)である場合、メディアコンテンツ130をクライアントデバイス150上にレンダリングすることができる。同様に、レーティングレベル132が許可レベル152を超える場合、レーティングレベル132は許可レベル152よりも劣位にある。
【0036】
他の実施形態では、レーティングレベル132および許可レベル152は、他のメカニズムによって表すことができる。たとえば、レベル132および152は、レベル132および152の改ざんのリスクを防ぐまたは最小化するのに十分に複雑かつ長い文字列の16進数の鍵として表すことができる。
【0037】
さらに他の実施形態では、レーティングレベル132および許可レベル152は、定性的に互いと比較することができる。たとえば、コンテンツのレーティングレベル132が許可レベル152よりも制限的でないまたは若年の対象視聴者向けである場合に、レーティングレベル132は許可レベル152よりも優位とすることができる。
【0038】
さらに、クライアントデバイス150は、受信されたオリジナルのメディアコンテンツ130がブロックされている場合にクライアント150上にレンダリングされる代替のメディアコンテンツ160を格納することができる。代替のメディアコンテンツ160の例は、限定はされないが、事前に格納されるテキスト、画像、ビデオおよび/または音声のうちの1つまたは複数を含む。他の実施形態では、代替のメディアコンテンツ160は、オリジナルのメディアコンテンツ130と共に、またはクライアントデバイス150から要求があった場合に、メディアサーバ110から受信することができる。たとえば、メディアサーバ110は、オリジナルのメディアコンテンツ130と代替のメディアコンテンツ160の両方を実質的に同時にクライアントデバイス150にダウンロードまたはストリーミングすることができ、クライアントデバイス150は、オリジナルのメディアコンテンツ130および代替のメディアコンテンツ160から、関連付けられたレーティングレベル132およびクライアントデバイスの許可レベル152に基づいて選択することができる。
【0039】
代替のメディアコンテンツ160がクライアントデバイス150において利用できない実施形態では、クライアントデバイス150は、ブロックされたメディアパケットがレンダリングされたはずの時間の間に、いかなるコンテンツもレンダリングしない場合があり(たとえばユーザは無音声の黒い画面を体験する)、またはブロックされたメディアパケット135の1つまたは複数を破棄して、クライアントデバイス150上にいかなるコンテンツもレンダリングされない時間を最小化し、それによってユーザの視聴体験を最適化することができる。
【0040】
図2に、パケットレベルのレーティングを用いてメディアコンテンツをパケット化するためのメディアサーバ110の一実施形態の概略ブロック図を示す。メディアサーバ110は、プロセッサ200、メモリ210およびネットワークインターフェース220を含む。プロセッサ200は、メディアコンテンツ130を含むメディア番組120を処理して、1つまたは複数のクライアントデバイスにストリーミングまたはダウンロードするように動作可能である。メディア番組120はメモリ210に記憶することができ、または外部のメディア記憶デバイスから取得することができる。
【0041】
一例示的実施形態では、プロセッサ200は、メディア番組120のメディアコンテンツ130を複数のメディアパケット135a、135b...135Nにパケット化する。さらに、プロセッサ200は、コンテンツ130をパケット化する前に、メディアコンテンツ130をトランスコードおよび暗号化することができ、および/またはメディアコンテンツ130へのDRM制限を含めることができる。加えて、メディアパケット135a、135b...135Nの少なくとも一部に、プロセッサ200は、そのメディアパケット135a、135b...135N内のメディアコンテンツ130a、130b...130Nに関連付けられたそれぞれのレーティングレベル132a、132b...132Nをさらに含める。たとえば、一実施形態では、MPAAレーティングシステムを用いて、レーティングレベル132a、132b...132Nを決定する。しかしながら、他の実施形態では、他のレーティングシステム、たとえばTVペアレンタルガイドラインシステムを用いて、レーティングレベル132a、132b...132Nを決定することができる。
【0042】
さらなる例示的実施形態では、各メディアパケット135a、135b...135N内のメディアコンテンツ130a、130b...130Nのレーティングレベル132a、132b...132Nは、メディアコンテンツが特定のレーティングに従うように編集されるスタジオ制作段階においてメディアコンテンツ130a、130b...130Nに割り当てられたレーティングレベルに基づいて決定される。制作編集の一部として、レーティングラベルをメディア番組の特定のセグメントに割り当てることができ、割り当てられたレーティングラベルはメディアコンテンツ130と共に格納することができる。
【0043】
たとえば、
図3に示されるように、制作段階中に、メディア番組120の異なるセグメント300に、異なるレーティングレベル132をタグ付けするまたは埋め込むことができる。メディアセグメント300の長さは可変であり、メディアコンテンツ130に基づいて決定される。一例示的実施形態では、隣接するメディアセグメント300が異なるレーティングレベル132を有し、各メディアセグメント300が、同じレーティングレベル132を有する連続したメディアコンテンツ130を含むように、メディア番組120がメディアセグメント300に分割される。連続したメディアコンテンツ130は、メディア番組120内のシーンの一部または完全なシーンを形成し得る。他の例示的実施形態では、各メディアセグメント300が同じレーティングレベル132を有する1つまたは複数のシーンを含み、隣接するメディアセグメント300が異なるレーティングレベル132を有するように、レーティングレベル132がメディア番組120のシーンごとに決定される。さらに他の例示的実施形態では、各メディアセグメント300が特定のシーンに対応するように、レーティングレベル132がシーンごとに決定される。この実施形態では、隣接するメディアセグメント300が同じレーティングレベル132を有することがある。
【0044】
たとえば、
図3に示されるように、第1のメディアセグメント(MS1)に最低レーティングレベル(RL1)をタグ付することができ、これはMS1内のメディアコンテンツ130に対する「G」レーティングなどに対応する。第2のメディアセグメント(MS2)に最高レーティングレベルRL5をタグ付することができ、これはMS2内のメディアコンテンツ130の全てに対する「NC−17」レーティングなどに対応する。第3のメディアセグメント(MS3)にレーティングレベルRL2をタグ付することができ、これはMS3内のメディアコンテンツ130に対する「PG」レーティングなどに対応する。第4のメディアセグメント(MS4)にレーティングレベルRL1をタグ付することができ、これは同様にMS4内のメディアコンテンツ130に対する「G」レーティングに対応する。第5のメディアセグメント(MS5)にレーティングレベルRL3をタグ付することができ、これはMS5内のメディアコンテンツ130に対する「PG−13」レーティングなどに対応する。最後に、第6のメディアセグメント(MS6)にレーティングレベルRL1をタグ付することができ、これはMS6内のメディアコンテンツ130に対する「G」レーティングに対応する。
【0045】
メディアセグメント300および対応するレーティングレベル132がメディア制作段階の一部として決定されると、メディアコンテンツ130を、メディアセグメント識別子および関連付けられたレーティングレベルタグと共に格納することができる。その後、特定のメディアセグメント300内のメディアコンテンツ130は、1つまたは複数のメディアパケットにパケット化することができ、それらのメディアパケットのうちの1つまたは複数に、そのメディアセグメント300に対する割り当てられたレーティングレベル132を含めて、クライアントデバイスへ送信できるようにする。たとえば、一実施形態では、レーティングレベル132は、メディアセグメント300の各メディアパケットに含まれる。他の実施形態では、各メディアセグメント300内の最初のメディアパケットのみがレーティングレベル132を含み、クライアントデバイスは受信されたレーティングレベルをそのメディアセグメント300について受信された全てのメディアパケットに適用する。この実施形態では、メディアセグメント識別子を各メディアパケットに含めることもでき、またはクライアントデバイスは、異なるメディアレベルを含む他のメディアパケットが受信されるまで、受信されたレーティングレベルを続いて受信された全てのメディアパケットに適用することができる。
【0046】
図4Aに、メディアコンテンツ130および関連付けられたレーティングレベル132を含むメディアパケット400の一実施形態の概略図を示す。
図4Aに示されたメディアパケット400は、リアルタイムトランスポートプロトコル(RTP)パケットである。しかしながら、他の実施形態では、他のネットワークプロトコルを用いて、メディアコンテンツ130および関連付けられたレーティングレベル132を含むメディアパケットを送信またはストリーミングすることができる。他のネットワークプロトコルの例は、限定はされないが、リアルタイムストリーミングプロトコル(RTSP)、リアルタイムトランスポート制御プトロコル(RTCP:Real−Time Transport Control Protocol)、伝送制御プロトコル(TCP:Transmission Control Protocol)、ユニキャストプロトコル、マルチキャストプロトコル、たとえばインターネットグループ管理プロトコル(IGMP:Internet Group Management Protocol)またはプロトコル独立マルチキャスト(PIM:Protocol Independent Multicast)、およびピアツーピア(P2P:Peer−to−Peer)プロトコルを含むことができる。
【0047】
RTPパケット400は、ヘッダ410およびペイロード440(本体)を含む。メディアコンテンツ130は、RTPパケット400のペイロード440に含まれる。ヘッダ410は、固定ヘッダ420と、固定ヘッダ420に付加される任意選択の可変長のヘッダ拡張430とを含む。固定ヘッダ420は、全てのRTPパケット400に対して設けられた12オクテットの固定部分である。したがって、パケットレベルのレーティングをサポートしていないクライアントデバイスとの互換性を確保するために、一例示的実施形態では、レーティングレベル132がRTPパケット400のヘッダ拡張430に含まれる。一実施形態では、ヘッダ拡張430は、拡張430内の32ビットのワードの数をカウントする16ビット長のフィールドと、RTPパケット400内のメディアコンテンツ130のレーティングレベル132を識別する1つまたは複数の32ビットのワードとを含む。
【0048】
メディア番組の「G」指定のセグメントでは制限のない視聴が可能であるので、一実施形態では、「G」指定のコンテンツについては拡張ヘッダ430を排除することができる。この実施形態では、クライアントデバイスは、拡張430が存在しないことを視聴の許可を示すものとして扱い、拡張430を有さないRTPパケット400内のメディアコンテンツ130をクライアントデバイス上でレンダリングする。
【0049】
レーティングレベル132がRTPパケット400に含まれる実施形態では、固定ヘッダ420の最初のオクテットは、任意選択のヘッダ拡張430が固定ヘッダ420に付加されていることを示す。固定ヘッダ420の最初のオクテットが
図4Bに示されている。最初の2ビットは、RTPのバージョン(V)を識別する。一例示的実施形態では、パケットレベルのレーティングに利用されるRTPのバージョンは2である。値1がRTPの最初のドラフトバージョンにより使用され、値0が「vat」オーディオツールで最初に実装されたプロトコルにより使用される。第3のビットはパディング(P)ビットである。パディングビットが設定されている場合、パケットは1つまたは複数の追加のパディングオクテットを末尾に含み、これらはペイロードの一部ではない。パディングの最後のオクテットは、それ自体を含む、無視されるべきパディングオクテットの数を含む。パディングは、固定ブロックサイズのいくつかの暗号化アルゴリズムにより、または下位層のプロトコルデータユニットでいくつかのRTPパケットを搬送するために、必要となる場合がある。
【0050】
第4のビットは拡張(X)ビットである。拡張ビットが設定されている場合、固定ヘッダに、ヘッダ拡張が1つだけ続く。最初のオクテットの残りの4ビットはCSRCカウントを含み、これは固定ヘッダに続くCSRC識別子の数を示す。一例示的実施形態では、パケットがレーティングレベルを含む場合、Xビットが1に設定され、(
図4Aに示された)可変長の拡張430が、任意選択のCSRCリストに続いて固定ヘッダに付加される。
【0051】
音声コンテンツとビデオコンテンツの両方を含むマルチメディア番組について、音声コンテンツおよびビデオコンテンツは典型的には別々にストリーミングされる。たとえば、
図5に示されるように、音声ストリーム130aを含む第1のメディアパケット135aを第1のタイムスタンプ500aと共に送信することができ、ビデオストリーム130bを含む第2のメディアパケット135bを第2のタイムスタンプ500bと共に送信することができる。タイムスタンプ500aおよび500bはクライアントデバイスにより使用されて、音声およびビデオストリームの出力がクライアントデバイスにおいて正しく時間調整され、それによって音声ストリームがビデオストリームに同期される。したがって、同一のタイムスタンプ500aおよび500bを有する音声ストリーム130aおよびビデオストリーム130bは、実質的に同時に出力されて、クライアントデバイス上でレンダリングされる。一実施形態では、レーティングレベル132aおよび132bは、特定のメディア番組について、音声パケット135aとビデオパケット135aの両方に含まれる。この実施形態では、レーティングレベル132aおよび132bは、対応する音声パケット135aおよびビデオパケット135b(すなわち、同一のタイムスタンプ500aおよび500bを有する音声/ビデオパケット)の間で同一である。他の実施形態では、レーティングレベル132aは、(
図5に示されたように)音声パケット135aのみ、またはビデオパケット135bのみに含めることができ、クライアントデバイスは、同一のタイムスタンプ情報を有する音声パケットとビデオパケットの両方を、対応する音声/ビデオパケットの一方に含まれるレーティングレベルに基づいてレンダリングまたはブロックすることを決定することができる。
【0052】
特定の状況において、コンテンツプロバイダは、メディア番組の1つまたは複数の部分の異なるバージョンを制作することができる。たとえば、コンテンツプロバイダは、オリジナルのシーンよりも幅広い視聴者に適切であり得るオリジナルのシーンとは異なるレーティングレベルを有する代替のシーンを制作することができる。この状況では、コンテンツプロバイダは、代替のメディアコンテンツをオリジナルのメディアコンテンツと共に利用可能にし、代替のメディアコンテンツをメディア番組のデジタルストリームに含めることができる。
【0053】
たとえば、
図6に示されるように、オリジナルのメディアコンテンツ130および代替のメディアコンテンツ160をそれぞれ含むメディアパケット135aおよび135bを、クライアントデバイスにストリーミングすることができる。オリジナルのメディアコンテンツ130は、全視聴者には適切でないことがある第1のレーティングレベル132aを有し、代替のメディアコンテンツ160は、全視聴者に適切である第2のレーティングレベル132bを有する。一実施形態では、オリジナルのメディアパケット135aのパケット番号600を代替のメディアパケット135bに含めることで、代替のメディアコンテンツ160を含むメディアパケット135bを、オリジナルのメディアコンテンツ160を含むメディアパケット135aに関連付けることができる。他の実施形態では、クライアントデバイスがオリジナルのメディアコンテンツ130および代替のメディアコンテンツ160の一方のみをクライアントデバイス上でレンダリングすることを保証する他のメカニズムを用いて、オリジナルおよび代替のメディアコンテンツを互いに関連付けることができる。たとえば、オリジナルのメディアコンテンツおよび代替のメディアコンテンツ160のそれぞれのレーティングレベル132aおよび132bと、クライアントデバイスに割り当てられた許可レベルとに基づいて、クライアントデバイスは、オリジナルのメディアコンテンツ130または代替のメディアコンテンツ160の一方をそれ自体にレンダリングすることができる。
【0054】
図7に、パケットレベルのレーティングを用いてレーティングされたメディアコンテンツをレンダリングするためのクライアントデバイス150の一実施形態の概略ブロック図を示す。クライアントデバイス150は、プロセッサ700、メモリ710、インターフェース720、音声/ビデオ(A/V)出力730、バッファ740および入力750を含む。メモリ710は、クライアントデバイス150に割り当てられる許可レベル152を記憶する。
【0055】
許可レベル152は、クライアントデバイス150またはクライアントデバイス150の知られているユーザの種類に基づいて事前に記憶することができ、またはパスワードなどを用いてクライアントデバイス150の権限のあるユーザにより入力することができる。一例示的実施形態では、権限のあるユーザは入力750を用いて許可レベル152を設定することができ、入力750は、たとえば、リモートコントロールセンサ、キーボードまたはキーパッド、およびデバイスグラフィカルユーザインターフェース(たとえば、デスクトップクライアントデバイス、モバイルクライアントデバイスまたはテレビクライアントデバイス上のグラフィカルユーザインターフェース)とすることができる。他の実施形態では、権限のあるユーザは、許可レベル152をリモートで設定するためのウェブベースまたはその他の無線ユーザインターフェースを介して許可レベル152を設定することができる。
【0056】
許可レベル152は、クライアントデバイスに永久的にプログラムすることができ、または権限のあるユーザにより修正可能とすることができる。たとえば、一実施形態では、権限のあるユーザは、クライアントデバイス150の予想される視聴者に基づいて許可レベル152を一時的に変更することができる。加えて、許可レベル152は、異なるレーティングシステムにマッピング可能な汎用の許可レベル、またはレーティングシステムごとの別個の許可レベルを含むことができる。
【0057】
インターフェース720は、メディアコンテンツ130および関連付けられたレーティングレベル132を含むメディアパケット135を受信するためにネットワークに接続される。インターフェース720は、たとえば、有線ネットワークに接続された有線インターフェース、または無線ネットワークに接続された無線インターフェースとすることができる。ダウンロードされたメディアコンテンツ130に関して、インターフェース720は、メディアパケット135をプロセッサに700に提供して、処理してメモリ710に記憶できるようにし、それによって引き続き処理してクライアントデバイス150上にメディアコンテンツ130をレンダリングできるようにする。ストリーミングされたメディアコンテンツ130に関して、インターフェース720は、メディアパケット135をバッファ740に提供して、リアルタイム処理してA/V出力730を介して統合または接続されたディスプレイ170およびスピーカー180へ、メディアコンテンツ130をクライアントデバイス150上にレンダリングできるようにする。
【0058】
クライアントデバイス150上にメディアコンテンツ130をレンダリングする前に、プロセッサ700は、受信されたメディアコンテンツ130のレーティングレベル132を、クライアントデバイス150に割り当てられた許可レベル152と比較する。プロセッサ700はこの比較を、バッファ740の出力において(たとえばバッファ740を出たメディアパケットに対して)、またはバッファ740内で(たとえばバッファ740内の特定の位置におけるメディアパケットに対して)行うことができる。レーティングレベル132が許可レベル152よりも優位にある場合、クライアントデバイス150はメディアパケット135内のメディアコンテンツ130をクライアントデバイス150上にレンダリングする。しかしながら、レーティングレベル132が許可レベル152よりも劣位にある場合、クライアントデバイス150は、メディアパケット135内のメディアコンテンツ130がクライアントデバイス150にレンダリングされることをブロックする。
【0059】
一例示的実施形態では、メディアコンテンツ130のレンダリングがブロックされた場合、プロセッサ700は、ブロックされたメディアコンテンツ130の代わりに代替のコンテンツ160をクライアントデバイス150上にレンダリングする。代替のコンテンツ160はメモリ710に事前に記憶することができ、またはインターフェース720を介して受信することができる。事前に記憶される代替のメディアコンテンツ160の例は、限定はされないが、事前に記憶されるテキスト、画像、ビデオおよび/または音声のうちの1つまたは複数を含む。代替のメディアコンテンツ160がインターフェース720を介して受信される実施形態では、代替のメディアコンテンツ160はオリジナルのメディアコンテンツ130と共に、またはクライアントデバイス150から要求があった場合に受信することができる。たとえば、オリジナルのメディアコンテンツ130と代替のメディアコンテンツ160の両方を実質的に同時にクライアントデバイス150にダウンロードまたはストリーミングすることができ、プロセッサ700は、オリジナルのメディアコンテンツ130および代替のメディアコンテンツ160から、関連付けられたレーティングレベル132およびクライアントデバイスの許可レベル152に基づいて選択することができる。
【0060】
代替のメディアコンテンツ160がクライアントデバイス150において利用できない実施形態では、プロセッサ700は、ブロックされたメディアパケットがレンダリングされたはずの時間の間に、いかなるコンテンツもレンダリングしない場合があり(たとえばユーザは無音声の黒い画面を体験する)、またはブロックされたメディアパケット135の1つまたは複数を破棄して、クライアントデバイス150上にいかなるコンテンツもレンダリングされない時間を最小化し、それによってユーザの視聴体験を最適化することができる。
【0061】
図8に、関連付けられたレーティングレベル132に基づくブロックされたメディアコンテンツ130を有するメディア番組120の一実施形態の概略図を示す。メディア番組120は、
図3に示された、同じメディアセグメント300および関連付けられたレーティングレベル132を有するメディア番組に対応する。クライアントデバイスに付与された許可レベルがMPAAレベル2(すなわち「PG」)に対応すると仮定すると、
図8から分かるように、RL5のレーティングレベルを有するMS2、およびRL3のレーティングレベルを有するMS5内のメディアコンテンツ130が、クライアントデバイスへのレンダリングがブロックされる。したがって、MS2またはMS5に対応する各メディアパケット内のメディアコンテンツ130がブロックされる。
【0062】
再度
図7を参照すると、さらなる例示的実施形態では、プロセッサ700は、レーティングレベル132が許可レベル152よりも優位にある場合であっても、メディアコンテンツ130をブロックすることで、視聴体験をさらに最適化できるようにプログラムされる。たとえば、メモリ710は、メディア番組のいかなるメディアパケットもクライアントデバイスにレンダリングするために許可レベルよりも優位でなければならないメディア番組全体またはメディア番組の一部のうちのメディアコンテンツまたはメディアパケットの割合に対応する閾値をさらに維持することができる。一実施形態では、各レーティングレベルのメディアコンテンツの割合をダウンロード/ストリーミングの前に送信して、クライアントデバイスが閾値に基づいてダウンロード/ストリーミング処理を開始すべきかを決定できるようにすることができる。他の実施形態では、1つまたは複数のレーティングレベルにおけるメディアコンテンツの割合を、ダウンロード/ストリーミングの間に決定することができる。この実施形態では、プロセッサ700は、バッファ先読み機能を実行して、バッファ740の冒頭のコンテンツに基づいてストリーミングを続行すべきかを決定することができる。
【0063】
他の例として、プロセッサ700は、代替のコンテンツ160と許可されたメディアコンテンツ130との間で往復する画面のフリッカを防ぐようにプログラムすることができる。この例では、プロセッサ700は、メディアコンテンツ130自体のレーティングレベル132とは無関係に、バッファ740内の近傍のメディアパケットのレーティングレベルに基づいて、メディアパケット135内のメディアコンテンツ130がレンダリングされることをブロックすることができる。したがって、プロセッサ700は、プロセッサ700がバッファ740内の複数のパケットのレーティングレベル132を分析して、バッファ740における特定のメディアパケット135内のメディアコンテンツ130をブロックすべきかレンダリングすべきかを決定することを可能にするバッファ先読み機能を実行することができる。
【0064】
たとえば、
図9に示されるように、バッファ740は、複数のメディアパケット135を維持することができ、各々、それぞれのレーティングレベル132が関連付けられている。第1、第4、第5および第6のバッファ位置におけるメディアパケット135(MP1、MP4、MP5およびMP6)はRL5のレーティングレベルを有し、第2および第3のバッファ位置におけるメディアパケット(MP2およびMP3)はRL1のレーティングレベルを有する。RL1のレーティングレベルでは、典型的には関連付けられたメディアコンテンツをクライアントデバイス上でレンダリングすることができるが、高速なフリッカを防ぐために、MP2およびMP3内のメディアコンテンツをブロックすることができる。
【0065】
図10は、レーティングされたメディアコンテンツをクライアントデバイス上でレンダリングするための方法1000の一実施形態を示すフローチャートである。方法は1010から開始し、ここではメディアコンテンツおよび関連付けられたレーティングレベルを含むメディアパケットがクライアントデバイスにおいて受信される。1020において、メディアパケットのレーティングレベルが抽出され、1030において、レーティングレベルがクライアントデバイスに対する許可レベルと比較される。1040において、レーティングレベルが許可レベルよりも優位にある場合、1050において、メディアパケット内のメディアコンテンツがクライアントデバイス上でレンダリングされる。
【0066】
しかしながら、レーティングレベルが許可レベルよりも優位にない場合、1060において、メディアパケット内のメディアコンテンツは、クライアントデバイスへのレンダリングがブロックされる。1070において、代替のコンテンツが利用可能である(たとえば、事前に記憶されるまたは実質的に同時に受信される)場合、1080において、代替のメディアコンテンツがクライアントデバイス上でレンダリングされる。利用可能な代替のメディアコンテンツが存在しない場合、1090において、クライアントデバイス上でコンテンツがレンダリングされない。1095において、この処理は、受信されたメディアパケットごとに反復される。
【0067】
本明細書で使用され得るように、「プロセッサ」という用語は、単一の処理デバイスまたは複数の処理デバイスとして定義される。そのような処理デバイスは、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、マイクロコンピュータ、中央処理装置、フィールドプログラマブルゲートアレイ、プログラマブルロジックデバイス、論理回路、アナログ回路、デジタル回路、ならびに/あるいは、回路および/または動作命令のハードコーディングに基づいて(アナログおよび/またはデジタル)信号を操作する任意のデバイスとすることができる。さらに、プロセッサは、外部のメモリデバイスにアクセスする、および/または統合されたメモリデバイスを含むことができ、これは、単一のメモリデバイス、複数のメモリデバイス、および/または他のプロセッサの組み込み回路とすることができる。そのような統合されたメモリデバイスおよび/または外部のメモリデバイスは、読み出し専用メモリ、ランダムアクセスメモリ、揮発性メモリ、不揮発性メモリ、スタティックメモリ、ダイナミックメモリ、フラッシュメモリ、キャッシュメモリ、および/またはデジタル情報を記憶する任意のデバイスとすることができる。本明細書に記載のステップおよび/または機能の少なくとも一部に対応するハードコードされた命令および/または動作命令をメモリデバイスが記憶でき、プロセッサが実行できることに留意されたい。さらに、そのようなメモリデバイスは、製品に含めることができる。
【0068】
さらに、本明細書で使用され得るように、「実質的に」という用語は、その対応する用語についての業界で認められた公差、および/または項目間の相対性を与える。そのような業界で認められた公差は、1パーセント未満から50パーセントまでの範囲に及び、限定はされないが、成分値、集積回路工程変動、温度変動、立上りおよび立下り時間、ならびに/あるいは熱雑音に対応する。そのような項目間の相対性は、数パーセントの差から等級(magnitude)の差までに及ぶ。
【0069】
また、本明細書で使用され得るように、「に結合される」および/または「結合する」および/またはという用語は、項目間の直接結合、および/または介在項目を介した項目間の間接結合を含み(たとえば項目は、限定はされないが、構成要素、要素、回路、および/またはモジュールを含む)、ここで間接結合に関して、介在項目は、信号の情報を修正しないが、その電力レベルを調整する場合がある。さらに、本明細書で使用され得るように、推論結合(すなわち、ある要素が推論により他の要素に結合される)は、「に結合される」と同様に、2つの項目間の直接および間接結合を含む。本明細書で使用され得るように、「するように動作可能である」という用語は、項目が、説明された機能または必要な対応する機能のうちの1つまたは複数を実行するための処理モジュール、データ、入力、出力などのうちの1つまたは複数を含み、説明された機能または必要な対応する機能を実行するための1つまたは複数の他の項目への推論結合をさらに含み得ることを示す。また、本明細書で使用され得るように、「に接続される」および/または「接続する」または「相互接続する」という用語は、ノード/デバイス間の直接接続またはリンク、および/または介在項目を介したノード/デバイス間の間接接続を含む(たとえば項目は、限定はされないが、構成要素、要素、回路、モジュール、ノード、デバイスなどを含む)。さらに、本明細書で使用され得るように、推論接続(すなわち、ある要素が推論により他の要素に接続される)は、「に接続される」と同様に、2つの項目間の直接および間接接続を含む。
【0070】
1つまたは複数の実施形態の様々な機能および特徴の特定の組み合わせが本明細書に明示的に記載されているが、これらの特徴および機能の他の組み合わせも同様に可能である。本開示は、本明細書で開示された特定の例に限定されず、これらの他の組み合わせを明示的に組み込んでいる。