(57)【要約】  クライアント側のメディアプレゼンテーションが、欠落しているセグメントファイルがある場合に、連続的、または少なくとも実質的に連続的であり得るように、メディアプレゼンテーションにスケーラビリティが組み込まれることを可能にする、システム、方法、およびデバイスを提供する。ある実施形態では、1つまたは複数のセグメントファイルの損失は、欠落しているセグメントファイルに関連付けられるメディアプレゼンテーション間隔がクライアント側でスキップされることを必要としない場合がある。システム、方法、およびデバイスは、ライブストリーミングおよび/またはオンデマンドプレゼンテーションにおけるスケーラビリティを可能にする。
2016517675.tif 000002
【特許請求の範囲】
【請求項１】
メディアセグメントから時間的に重複しているスケーラブルセグメントのセットを導出するための手段であって、時間的に重複しているスケーラブルセグメントの前記セットの適切なサブセットが、前記適切なサブセットだけを使用して、品質しきい値で、またはそれを上回って、前記メディアセグメントをレンダリングすることを受信機デバイスで可能にするために十分な量のデータを含む手段、および
時間的に重複しているスケーラブルセグメントの前記セットを送信するための手段を備えるサーバと、
時間的に重複しているスケーラブルセグメントの前記セットの前記適切なサブセットを受信するための手段、
時間的に重複しているスケーラブルセグメントの前記セットのうちの少なくとも1つが損失されたと決定するための手段、および
時間的に重複しているスケーラブルセグメントの前記セットのうちの少なくとも1つが損失されたと決定することに応答して、前記品質しきい値で、またはそれを上回って、前記メディアセグメントをレンダリングするために、時間的に重複しているスケーラブルセグメントの前記受信された適切なサブセットを使用するための手段を備える受信機デバイスとを備える、システム。
【請求項２】
時間的に重複しているスケーラブルセグメントの前記セットの前記適切なサブセットを受信するための手段が、
少なくとも2つのセグメントファイル内の、時間的に重複しているスケーラブルセグメントの前記適切なサブセットを受信するための手段を備える、請求項1に記載のシステム。
【請求項３】
前記少なくとも2つのセグメントファイルの各々が、少なくとも2つのメディアセグメントから導出されたスケーラブルセグメントを含む、請求項2に記載のシステム。
【請求項４】
前記受信機デバイスが、
前記メディアセグメントから、時間的に重複しているスケーラブルセグメントの前記セットを導出するために使用された方式の表示を受信するための手段をさらに備える、請求項1に記載のシステム。
【請求項５】
時間的に重複しているスケーラブルセグメントの前記セットのうちの少なくとも1つが損失されたと決定することに応答して、前記品質しきい値で、またはそれを上回って、前記メディアセグメントをレンダリングするために、時間的に重複しているスケーラブルセグメントの前記受信された適切なサブセットを使用するための手段が、
前記受信された表示に基づいて、時間的に重複しているスケーラブルセグメントの前記受信された適切なサブセットを処理するための手段を備える、請求項4に記載のシステム。
【請求項６】
前記メディアセグメントから、時間的に重複しているスケーラブルセグメントの前記セットを導出するために使用された方式の表示を受信するための手段が、
前記表示を含むプレイリストファイルを受信するための手段を備える、請求項5に記載のシステム。
【請求項７】
前記受信機デバイスのクライアントが動的適応型HTTPストリーミング(DASH)クライアントであり、前記プレイリストファイルがメディアプレゼンテーション記述(MPD)である、請求項6に記載のシステム。
【請求項８】
時間的に重複しているスケーラブルセグメントの前記適切なサブセットが、1つのスケーラブルセグメントで構成される、請求項5に記載のシステム。
【請求項９】
時間的に重複しているスケーラブルセグメントの前記適切なサブセットが、複数のスケーラブルセグメントで構成される、請求項5に記載のシステム。
【請求項１０】
クライアントを含む受信機デバイス上にメディアを提示するための方法であって、
前記受信機デバイスの前記クライアントによって、
メディアセグメントから導出された、時間的に重複しているスケーラブルセグメントのセットの適切なサブセットを受信するステップであって、前記適切なサブセットが、前記クライアントが、前記適切なサブセットだけを使用して、品質しきい値で、またはそれを上回って、前記メディアセグメントをレンダリングすることを可能にするために十分な量のデータを含むステップと、
時間的に重複しているスケーラブルセグメントの前記セットのうちの少なくとも1つが損失されたと決定するステップと、
時間的に重複しているスケーラブルセグメントの前記セットのうちの少なくとも1つが損失されたと決定することに応答して、前記品質しきい値で、またはそれを上回って、前記メディアセグメントをレンダリングするために、時間的に重複しているスケーラブルセグメントの前記受信された適切なサブセットを使用するステップとを備える、方法。
【請求項１１】
時間的に重複しているスケーラブルセグメントのセットの適切なサブセットを受信するステップが、
少なくとも2つのセグメントファイル内の、時間的に重複しているスケーラブルセグメントの前記適切なサブセットを受信するステップを備える、請求項10に記載の方法。
【請求項１２】
前記少なくとも2つのセグメントファイルの各々が、少なくとも2つのメディアセグメントから導出されたスケーラブルセグメントを含む、請求項11に記載の方法。
【請求項１３】
前記受信機デバイスの前記クライアントによって、
前記メディアセグメントから、時間的に重複しているスケーラブルセグメントの前記セットを導出するために使用された方式の表示を受信するステップをさらに備える、請求項10に記載の方法。
【請求項１４】
前記品質しきい値で、またはそれを上回って、前記メディアセグメントをレンダリングするために、時間的に重複しているスケーラブルセグメントの前記受信された適切なサブセットを使用するステップが、
前記受信された表示に基づいて、時間的に重複しているスケーラブルセグメントの前記受信された適切なサブセットを処理するステップを備える、請求項13に記載の方法。
【請求項１５】
前記受信された表示が、時間的に重複しているスケーラブルセグメントの前記セットが、前記メディアセグメントを時間的に重複しているスケーラブルセグメントの前記セットに分割するために、前記メディアセグメントに時間的分割方式を適用することによって、前記メディアセグメントから導出されたことを示す、請求項14に記載の方法。
【請求項１６】
前記メディアセグメントから、時間的に重複しているスケーラブルセグメントの前記セットを導出するために使用された方式の表示を受信するステップが、
前記表示を含むプレイリストファイルを受信するステップを備える、請求項15に記載の方法。
【請求項１７】
前記受信機デバイスの前記クライアントが動的適応型HTTPストリーミング(DASH)クライアントであり、前記プレイリストファイルがメディアプレゼンテーション記述(MPD)である、請求項16に記載の方法。
【請求項１８】
前記受信された表示が、時間的に重複しているスケーラブルセグメントの前記セットが、前記メディアセグメントを時間的に重複しているスケーラブルセグメントの前記セットに分割するために、前記メディアセグメントに空間的分割方式を適用することによって、前記メディアセグメントから導出されたことを示す、請求項14に記載の方法。
【請求項１９】
前記メディアセグメントから、時間的に重複しているスケーラブルセグメントの前記セットを導出するために使用された方式の表示を受信するステップが、
前記表示を含むプレイリストファイルを受信するステップを備える、請求項18に記載の方法。
【請求項２０】
前記受信機デバイスの前記クライアントが動的適応型HTTPストリーミング(DASH)クライアントであり、前記プレイリストファイルがメディアプレゼンテーション記述(MPD)である、請求項19に記載の方法。
【請求項２１】
前記品質しきい値が、時間的に重複しているスケーラブルセグメントの前記セットを前記受信機デバイスに送信する際のバーストファイル損失の確率に基づく、請求項10に記載の方法。
【請求項２２】
前記品質しきい値が、前記受信機デバイスの前記クライアントが、ユーザが知覚可能な品質低下なしに、前記メディアセグメントをレンダリングするしきい値である、請求項10に記載の方法。
【請求項２３】
前記品質しきい値が、前記受信機デバイスの前記クライアントが、前記受信機デバイスの前記クライアントによる再生中に停止せずに、前記メディアセグメントをレンダリングするようなしきい値である、請求項10に記載の方法。
【請求項２４】
時間的に重複しているスケーラブルセグメントの前記適切なサブセットが、1つのスケーラブルセグメントで構成される、請求項10に記載の方法。
【請求項２５】
時間的に重複しているスケーラブルセグメントの前記適切なサブセットが、複数のスケーラブルセグメントで構成される、請求項10に記載の方法。
【請求項２６】
メモリと、
前記メモリに結合されたプロセッサとを備え、前記プロセッサが、請求項10から請求項25のいずれか一項に記載の方法を実行するためのプロセッサ実行可能命令で構成されている、受信機デバイス。
【請求項２７】
受信機デバイスのプロセッサに、請求項10から請求項25のいずれか一項に記載の方法を実行させるために、プロセッサ実行可能命令で構成された、非一時的プロセッサ可読媒体。
【請求項２８】
サーバによって、
メディアセグメントから時間的に重複しているスケーラブルセグメントのセットを導出するステップであって、時間的に重複しているスケーラブルセグメントの前記セットの適切なサブセットが、前記適切なサブセットだけを使用して、品質しきい値で、またはそれを上回って、前記メディアセグメントをレンダリングすることを受信機デバイスのクライアントで可能にするために十分な量のデータを含むステップを備える、方法。
【請求項２９】
サーバによって、
前記受信機デバイスに、時間的に重複しているスケーラブルセグメントの前記セットを送信するステップをさらに備える、請求項28に記載の方法。
【請求項３０】
前記受信機デバイスに、時間的に重複しているスケーラブルセグメントの前記セットを送信するステップが、
少なくとも2つのセグメントファイル内の前記受信機デバイスに、時間的に重複しているスケーラブルセグメントの前記セットを送信するステップを備える、請求項29に記載の方法。
【請求項３１】
前記少なくとも2つのセグメントファイルの各々が、少なくとも2つのメディアセグメントから導出されたスケーラブルセグメントを含む、請求項30に記載の方法。
【請求項３２】
メディアセグメントから、時間的に重複しているスケーラブルセグメントのセットを導出するステップが、
前記メディアセグメントを時間的に重複しているスケーラブルセグメントの前記セットに分割するために、前記メディアセグメントに時間的分割方式を適用するステップを備える、請求項28に記載の方法。
【請求項３３】
メディアセグメントから、時間的に重複しているスケーラブルセグメントのセットを導出するステップが、
前記メディアセグメントを、時間的に重複しているスケーラブルセグメントの前記セットに分割するために、前記メディアセグメントに空間的分割方式適用するステップを備える、請求項28に記載の方法。
【請求項３４】
前記受信機デバイスに、前記メディアセグメントから、時間的に重複しているスケーラブルセグメントの前記セットを導出するために使用された方式の表示を送信するステップをさらに備える、請求項28に記載の方法。
【請求項３５】
前記受信機デバイスの前記クライアントが、前記送信された表示に基づいて、時間的に重複しているスケーラブルセグメントの前記適切なサブセットを処理することによって、前記品質しきい値で、またはそれを上回って、前記メディアセグメントをレンダリングするために、時間的に重複しているスケーラブルセグメントの前記適切なサブセットを使用するように構成される、請求項34に記載の方法。
【請求項３６】
前記送信された表示が、時間的に重複しているスケーラブルセグメントの前記セットが、前記メディアセグメントを時間的に重複しているスケーラブルセグメントの前記セットに分割するために、前記メディアセグメントに時間的分割方式を適用することによって、前記メディアセグメントから導出されたことを示す、請求項35に記載の方法。
【請求項３７】
前記受信機デバイスに、前記メディアセグメントから、時間的に重複しているスケーラブルセグメントの前記セットを導出するために使用された方式の表示を送信するステップが、
前記受信機デバイスに、前記表示を含むプレイリストファイルを送信するステップを備える、請求項36に記載の方法。
【請求項３８】
前記受信機デバイスの前記クライアントが動的適応型HTTPストリーミング(DASH)クライアントであり、前記プレイリストファイルがメディアプレゼンテーション記述(MPD)である、請求項37に記載の方法。
【請求項３９】
前記送信された表示が、時間的に重複しているスケーラブルセグメントの前記セットが、前記メディアセグメントを時間的に重複しているスケーラブルセグメントの前記セットに分割するために、前記メディアセグメントに空間的分割方式を適用することによって、前記メディアセグメントから導出されたことを示す、請求項35に記載の方法。
【請求項４０】
前記メディアセグメントから、時間的に重複しているスケーラブルセグメントの前記セットを導出するために使用された方式の表示を受信するステップが、
前記表示を含むプレイリストファイルを受信するステップを備える、請求項39に記載の方法。
【請求項４１】
前記受信機デバイスの前記クライアントが動的適応型HTTPストリーミング(DASH)クライアントであり、前記プレイリストファイルがメディアプレゼンテーション記述(MPD)である、請求項40に記載の方法。
【請求項４２】
前記品質しきい値が、時間的に重複しているスケーラブルセグメントの前記セットを前記受信機デバイスに送信する際のバーストファイル損失の確率に基づく、請求項28に記載の方法。
【請求項４３】
前記受信機デバイスの前記クライアントが、前記品質しきい値で、ユーザが知覚可能な品質低下なしに、前記メディアセグメントをレンダリングするように構成される、請求項28に記載の方法。
【請求項４４】
前記受信機デバイスの前記クライアントが、前記品質しきい値で、前記受信機デバイスの前記クライアントによる再生中に停止せずに、前記メディアセグメントをレンダリングするように構成される、請求項28に記載の方法。
【請求項４５】
時間的に重複しているスケーラブルセグメントの前記適切なサブセットが、1つのスケーラブルセグメントで構成される、請求項28に記載の方法。
【請求項４６】
時間的に重複しているスケーラブルセグメントの前記適切なサブセットが、複数のスケーラブルセグメントで構成される、請求項28に記載の方法。
【請求項４７】
メモリと、
前記メモリに結合されたプロセッサとを備え、前記プロセッサが、請求項28から請求項46のいずれか一項に記載の方法を実行するためのプロセッサ実行可能命令で構成されている、サーバ。
【請求項４８】
サーバのプロセッサに、請求項28から請求項46のいずれか一項に記載の方法を実行させるために、プロセッサ実行可能命令で構成された、非一時的プロセッサ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動的適応型ＨＴＴＰストリーミングにおける、欠落しているメディアセグメントがある場合の回復力に関するものである。
【背景技術】
【０００２】
動的適応型HTTPストリーミング(「DASH」)は、セッションの制御がもっぱらクライアントの役目である、メディアコンテンツの搬送のためのメディアストリーミングモデルをサポートすることを意図するストリーミング標準である。クライアントは、1つまたは複数のDASH固有の機能を含み得るHTTPサーバであるDASHサーバから、ハイパーテキスト転送プロトコル(「HTTP」)を用いてデータを要求することができる。
【０００３】
DASHでは、各メディアセグメントは、隣接するメディアデータの集まりを表す。各メディアセグメントは、DASHサーバによってホストされるセグメントファイルに存在する。セグメントファイルは、1つ以上の隣接するメディアセグメントを連結したものである。
【０００４】
DASHは、オンデマンドストリーミングとライブストリーミングの両方をサポートする。オンデマンドストリーミングでは、メディアプレゼンテーションの任意の一部がフェッチ可能である場合、全体的なメディアプレゼンテーションは、DASHサーバからフェッチ可能である。ライブストリーミングでは、メディアプレゼンテーションの一部がDASHサーバからフェッチ可能である場合、全体的なメディアプレゼンテーションは、必ずしもフェッチ可能ではない。メディアプレゼンテーションの一部がフェッチ可能である場合、典型的には、プレゼンテーションのその一部の可用性ウィンドウによって制約される。典型的には、ライブストリームは、キャプチャされて、符号化されて、(ほぼ)リアルタイムでDASHサーバに送信される。したがって、ライブストリームは境界がなくてもよく、メディアプレゼンテーションの一部は将来DASHサーバからフェッチ可能になり得、以前はフェッチ可能であったメディアプレゼンテーションの一部はもはやフェッチ可能ではない場合がある。可用性ウィンドウは、メディアプレゼンテーションの一部がいつDASHサーバからフェッチ可能であるかという点で明確に境界を設定する。
【０００５】
ライブストリーミングでは、メディアプレゼンテーションは、典型的には、キャプチャされて、セグメントファイルに符号化されて、コンテンツソースによってオンザフライでDASHサーバに送信される。DASHサーバは、メディアプレゼンテーションの一部を、プレイリストファイル内のそれらの部分のセグメント可用性ウィンドウによって定義された時間にホストすることが必要である。DASHサーバは、典型的には、DASHサーバが受信するセグメントファイルの後処理を実行せず、DASHサーバの主な目的は、典型的には、セグメントファイル(セグメントファイル内に存在しない場合、メディアプレゼンテーションに対応するメタデータを含むファイルを含む)をホストして、プレイリストファイルを介して各セグメントファイルの記述および可用性ウィンドウをクライアントに信号伝達することである。
【０００６】
ライブストリーミングでは、DASHサーバは、それらの可用性ウィンドウの境界内のメディアプレゼンテーションの一部を求めるクライアントの要求を尊重しなければならない。DASHサーバは、可用性ウィンドウが経過したメディアプレゼンテーションの一部(ディスク上の空間を解放するために、DASHサーバが削除した可能性がある)、または、可用性ウィンドウがまだ到達していないメディアプレゼンテーションの一部(将来、DASHサーバは、メディアプレゼンテーションのそれらの一部をコンテンツソースから受信する)を求める要求を尊重する必要がない。
【０００７】
ライブストリーミングでは、典型的には、1)ライブシーンを連続的にキャプチャして、メディアプレゼンテーションの一部をセグメントファイルに符号化して、それらをDASHサーバにオンザフライで送信するコンテンツソース、2)クライアントのためのセグメントファイルを受信およびホストして、プレイリストファイル内のこれらのセグメントファイルの必要な情報を提供するDASHサーバ、および、3)セグメントファイルの可用性ウィンドウを制約した時間にDASHサーバからセグメントファイルをフェッチして、メディアプレゼンテーションを再生するクライアントがある。
【０００８】
DASHサーバとクライアントとの間の転送は、典型的には、それがHTTPを介する場合は信頼性が高いが、コンテンツソースとDASHサーバとの間の転送は信頼性が低い場合がある。この信頼性欠如によって、1つまたは複数のセグメントファイルがコンテンツソースからDASHサーバにドロップする場合がある。さらに、たとえDASHサーバとクライアントとの間の転送の信頼性が高くても、DASHサーバとクライアントとの間の転送メカニズムは、定期的に切断して再確立する必要があるため、一時的である場合がある。DASHサーバとクライアントとの間の転送が存在しない(たとえば、切断されている)時間の間、メディアセグメントの可用性ウィンドウはシフトした可能性がある。これによって、クライアントが、可用性ウィンドウが経過したセグメントをフェッチできなくなる場合がある。セグメントファイルが欠落している場合、クライアントは、欠落しているセグメントファイルに関連付けられるメディアプレゼンテーションの間隔をスキップする必要がある。このスキップによって、クライアントで、ライブ再生中に観察されたメディアプレゼンテーションが停止するなど、ユーザ経験の品質の低下がもたらされる場合がある。一例として、欠落しているセグメントおよびスキップは、エンコーダとDASHサーバとの間の強化されたマルチメディアブロードキャストマルチキャストサービス(「eMBMS」)リンクに問題が発生した場合、コンテンツソースとして機能するモバイルデバイスに問題が発生した場合、ならびに/または、セグメントがDASHサーバで利用可能ではなくなった後にDASHクライアントとDASHサーバとの間の転送接続に一時的な損失が生じた場合に生じ得る。
【発明の概要】
【課題を解決するための手段】
【０００９】
様々な実施形態のシステム、方法、およびデバイスは、クライアント側のメディアプレゼンテーションが、欠落しているセグメントファイルがある場合に、連続的、または少なくとも実質的に連続的であり得るように、メディアプレゼンテーションにスケーラビリティが組み込まれることを可能にする。ある実施形態では、1つまたは複数のセグメントファイルの損失は、欠落しているセグメントファイルに関連付けられるメディアプレゼンテーション間隔がクライアント側でスキップされることを必要としない場合がある。様々な実施形態のシステム、方法、およびデバイスは、ライブストリーミングおよび/またはオンデマンドプレゼンテーションにおけるスケーラビリティを可能にすることができる。
【００１０】
本明細書に組み込まれ、本明細書の一部を構成する添付の図面は、本発明の例示的な実施形態を示しており、上記で与えられた一般的な説明および以下で与えられる詳細な説明とともに、本発明の特徴を説明するために役立つ。
【図面の簡単な説明】
【００１１】
【図１】様々な実施形態での使用に適した通信ネットワークの通信システムのブロック図である。
【図２Ａ】例示的な従来技術のメディアプレゼンテーションを示す図である。
【図２Ｂ】例示的な従来技術のセグメントファイル割当て方式を示す図である。
【図３】ある実施形態による、スケーラブルセグメントに分割されたメディアセグメントを示す図である。
【図４】メディアセグメントを2つまたはそれ以上のスケーラブルセグメントに分割するための、ある実施形態方法を示すプロセスフロー図である。
【図５】スケーラブルセグメントを使用してメディアを提示するための、ある実施形態方法を示すプロセスフロー図である。
【図６】ある実施形態による、スケーラブルセグメントに分割され、セグメントファイルに割り当てられたメディアセグメントを示す図である。
【図７】メディアセグメントを2つまたはそれ以上のスケーラブルセグメントに分割するための別の実施形態方法を示すプロセスフロー図である。
【図８】ある実施形態による、スケーラブルセグメントに分割され、異なるスケーラブルセグメントを搬送するセグメントファイルに割り当てられたメディアセグメントを示す図である。
【図９】メディアセグメントを2つまたはそれ以上のスケーラブルセグメントに分割するための第3の実施形態方法を示すプロセスフロー図である。
【図１０】プレイリストファイルの潜在的な要素を示すデータ構造図である。
【図１１】様々な実施形態での使用に適した例示的なモバイルデバイスの構成要素図である。
【図１２】様々な実施形態での使用に適した、別の例示的なモバイルデバイスの構成要素図である。
【図１３】様々な実施形態での使用に適した例示的なサーバの構成要素図である。
【発明を実施するための形態】
【００１２】
添付の図面を参照して、様々な実施形態を詳細に説明する。可能な限り、図面を通じて、同じまたは同様の部分を指すために同じ参照番号が使用される。特定の例および実装形態に行われる参照は例示目的のためであり、本発明または特許請求の範囲を限定することを意図するものではない。
【００１３】
本明細書では、「例示的(exemplary)」という用語は、「例、事例、または実例として役立つ(serving as an example, instance, or illustration)」を意味するために使用される。「例示的」として本明細書に記載される任意の実装形態は、必ずしも他の実装形態よりも好ましい、または有利であると解釈されるべきではない。
【００１４】
本明細書で使用されるように、「モバイルデバイス(mobile device)」および「受信機デバイス(receiver device)」という用語は、本明細書では、セルラー電話、スマートフォン、パーソナルまたはモバイルマルチメディアプレーヤ、携帯情報端末(PDA)、ラップトップコンピュータ、タブレットコンピュータ、スマートブック、パームトップコンピュータ、ワイヤレス電子メール受信機、マルチメディアインターネット対応セルラー電話、ワイヤレスゲームコントローラ、パーソナルコンピュータ、テレビセットトップボックス、テレビ、ケーブルテレビ受信機、ならびにメディアコンテンツを提示するためのプログラマブルプロセッサと、メモリと、回路とを含む同様のパーソナル電子デバイスのうちのいずれか、またはすべてを指すために、交換可能に使用される。
【００１５】
本明細書では、様々な実施形態を、「サーバ(server)」という用語を使用して説明する。「サーバ」という用語は、マスタ交換サーバ、ウェブサーバ、メールサーバ、ドキュメントサーバ、コンテンツサーバ、または他の任意のタイプのサーバなどの、サーバとして機能することができる任意のコンピューティングデバイスを指すために使用される。サーバは、専用コンピューティングデバイスでもよく、サーバモジュールを含むコンピューティングデバイス(たとえば、コンピューティングデバイスをサーバとして動作させることができるアプリケーションを実行している)でもよい。サーバモジュール(たとえば、サーバアプリケーション)はフル機能サーバモジュールでもよく、またはモバイルデバイス上の動的データベース間に同期化サービスを提供するように構成された光またはセカンダリサーバモジュール(たとえば、光またはセカンダリサーバアプリケーション)でもよい。光サーバまたはセカンダリサーバは、モバイルデバイスに実装されて、それによって、本明細書に記載の機能を提供するために必要な範囲に限り、モバイルデバイスがインターネットサーバ(たとえば、エンタープライズ電子メールサーバ)として機能することを可能にすることができる、サーバタイプ機能のスリムダウンバージョンでもよい。
【００１６】
様々な実施形態のシステム、方法、およびデバイスは、クライアント側のメディアプレゼンテーションが、欠落しているセグメントファイルがある場合に、連続的、または少なくとも実質的に連続的であり得るように、メディアプレゼンテーションにスケーラビリティが組み込まれることを可能にする。ある実施形態では、1つまたは複数のセグメントファイルの損失は、欠落しているセグメントファイルに関連付けられるメディアプレゼンテーション間隔がクライアント側でスキップされることを必要としない場合がある。様々な実施形態のシステム、方法、およびデバイスは、ライブストリーミングおよび/またはオンデマンドプレゼンテーションにおけるスケーラビリティを可能にすることができる。さらに、様々な実施形態は、DASHストリーミングフレームワークに回復力を提供することができる。
【００１７】
様々な実施形態は、クライアント側のメディアプレゼンテーションが、欠落しているセグメントファイルがある場合に、連続的、または少なくとも実質的に連続的であるように、メディアプレゼンテーションにスケーラビリティが組み込まれることを可能にすることによって、現在のDASHストリーミング標準の問題を解決することができる。ある実施形態では、1つまたは複数のセグメントファイルの損失は、欠落しているセグメントファイルに関連付けられるメディアプレゼンテーション間隔がスキップされることを要求する必要がない。様々な実施形態が、ライブストリーミングのために特に有用であり得るが、オンデマンドプレゼンテーションに同様に適用可能でよい。
【００１８】
現在のDASHストリーミングおよび/または他の適応型HTTPフレームワーク(たとえば、スムースストリーミング、HTTPライブストリーミング等)では、様々な帯域幅の2つまたはそれ以上の利用可能な表現を、クライアントにとって利用可能にすることができる。クライアントは、クライアントに知られているパラメータに基づいて、特定の帯域幅で利用可能な表現を選択することが可能であってよい。一例として、クライアントは、利用可能なダウンロード帯域幅のクライアントの知覚に基づいて、特定の帯域幅の表現を選択することができる。
【００１９】
様々な実施形態は、表現ごとに回復力を提供することができる。ある実施形態では、スケーラビリティは、各スケーラブルセグメントが、メディアプレゼンテーション間隔の他のスケーラブルセグメントとは独立に復号され得るように、各表現内の各スケーラブルセグメントを個別に符号化することによって、メディアプレゼンテーション間隔に組み込まれ得る。ある実施形態では、スケーラブルセグメントを符号化するために使用されるスケーラビリティ方式が、クライアントに提供され得る。ある実施形態では、スケーラビリティ方式は、メディアプレゼンテーションを再構築するためにスケーラブルセグメントを利用するためのルールのセットを備え得る。ある実施形態では、クライアントは、スケーラブルセグメントが欠落していることを検出して、受信されたスケーラブルセグメントから欠落しているデータを推定するためにスケーラブル方式を使用することによって欠落しているスケーラブルセグメントを再構築することができる。
【００２０】
ある実施形態では、スケーラブルセグメントからメディアプレゼンテーション間隔を再構築するために必要なスケーラブルセグメントおよび/または他の情報を生成するために使用されるスケーラビリティ方式がクライアントに信号伝達され得る。スケーラビリティ方式表示および/または他の情報を使用して、クライアントは、スケーラブルセグメントからメディアプレゼンテーションを再構築することができる。ある実施形態では、スケーラビリティ方式および/または他の情報は、プレイリストファイル(たとえば、DASHメディアプレゼンテーション記述(「MPD」))内で信号伝達され得る。ある実施形態では、ルールは、スケーラブルセグメントを構築するために、コンテンツソースによって使用されたスケーラビリティ方式を示すことができる。ある実施形態では、クライアントは、完全なアクセスユニット、およびスケーラブルセグメントで構成される完全なメディアセグメントを構築する方法を、ルールから推論することが可能であってよい。ある実施形態では、ルールは、クライアントが、送信中に損失されなかったスケーラブルセグメントからのメディアセグメントを再構築することを支援することができる。一例として、ピクチャがx*yブロックに分割されてよく、x=y=1の場合、画素は、左上の画素が(0,0)であり、右上の画素が(0,C-1)であり、左下の画素が(R-1,0)であり、右下の画素が(R-1,C-1)であるように番号付けされてよい。様々な実施形態では、スケーラビリティは空間的に達成され得る。ある実施形態では、一連のスケーラブルセグメントは、ルールに従ってx* yのブロックにわたるインターリービングのサブ画像(たとえば、チェッカーボーディング)から構築され得る。空間的分割方式は、元の画像を再現するために相互にスーパーインポーズされ得る異なるフレームを含む、2つまたはそれ以上のスケーラブルセグメントを作成するために、メディアセグメント間隔に適用され得る。クライアントで2つまたはそれ以上のスケーラブルセグメントを再結合することによって、元のメディアセグメントの再生をもたらすことができるが、すべてに満たないスケーラブルセグメントの再生は、より低い解像度の画像の提示をもたらす場合がある。一例として、第1のルールは、それぞれが元の画像の半分の解像度である、2つの空
間的にチェッカーボード状に並べられたスケーラブルセグメントを生成することができる空間ルール「1X2」として識別され得る。「1X2」ルールによれば、あるスケーラブルセグメントは、すべての横の行とすべての偶数番目の縦の列に関連付けられるピクチャを備えることができ、他のスケーラブルセグメントは、すべての横の行とすべての奇数番目の縦の行に関連付けられるピクチャを備えることができる。別の例として、第2のルールは、それぞれが元の画像の半分の解像度である、2つの空間的にチェッカーボード状に並べられたスケーラブルセグメントを生成することができる空間ルール「2X1」として識別され得る。「2X1」ルールによれば、あるスケーラブルセグメントは、すべての縦の列とすべての偶数番目の横の行に関連付けられるピクチャを備えることができ、他のスケーラブルセグメントは、すべての縦の列とすべての奇数番目の横の行に関連付けられるピクチャを備えることができる。さらなる例として、第3のルールは、チェッカーボーディング方式を使用して、元の画像を、それぞれが元の4分の1の解像度である4つのピクチャに分割し得る空間ルール「2X2」として識別され得る。「2X2」ルールによれば、あるスケーラブルセグメントは画素4*i, 4*jに関連付けられてよく、あるスケーラブルセグメントは画素4*i、4*j+1に関連付けられてよく、あるスケーラブルセグメントは4*i+1、4*jに関連付けられてよく、あるスケーラブルセグメントは4*i+1、4*j+1に関連付けられてよい。
【００２１】
異なる分割方式/ルール、具体的には空間的分割方式/ルールの様々な実施形態が、本明細書で論じられる。空間的分割方式/ルールの議論は、様々な実施形態の態様をより良く説明するための例として提供されるにすぎず、決して様々な実施形態を限定することを意図するものではない。他の分割方式/ルールが様々な実施形態で使用されてよく、様々な実施例において、他の分割方式/ルールが、本発明の趣旨または範囲から逸脱することなしに置換されてもよい。一例として、時間的にスケーラビリティを達成することができる。時間的分割方式または時間的分割ルールは、メディアセグメントの異なるフレームなどのメディアセグメントの異なる部分を含む、2つまたはそれ以上のスケーラブルセグメントを作成するために、メディアセグメント間隔に適用され得る。このように、元のメディアセグメントよりも低いフレームレートを有する2つまたはそれ以上のスケーラブルセグメントを作成することができる。クライアントで2つまたはそれ以上のスケーラブルセグメントを再結合することによって、元のメディアセグメントの再生をもたらすことができるが、すべてに満たないスケーラブルセグメントの再生は、より低いフレームレートの提示をもたらす場合がある。異なる分割方式/ルールが論じられるが、本発明は、使用される方式/ルールによって制限されるべきではない。
【００２２】
ある実施形態では、分割方式はセグメントごとに適用され得る。分割方式がセグメントごとに適用されるある実施形態では、プレイリストファイルは、セグメントごとに作成された関連付けられるスケーラブルセグメントを示し得るセグメントごとに使用される分割方式、ならびに使用される分割方式を示している。別の実施形態では、分割方式は、表現ごとに適用され得る。分割方式が表現ごとに適用されるある実施形態では、第1の表現内のすべてのセグメントは、第1の分割方式を使用してスケーラブルセグメントに分割されてよく、第2の表現内のすべてのセグメントは、第2の分割方式を使用してスケーラブルセグメントに分割され得る。そのような実施形態では、プレイリストファイルは、表現ごとに使用される分割方式を示すことができる。ある実施形態では、分割方式は、適応セットごとに適用され得る。分割方式が適応セットごとに適用されるある実施形態では、すべての表現におけるすべてのセグメントは、同じ分割方式を使用して分割され得る。そのような実施形態では、プレイリストファイルは、必ずしも個々の表現ごとの分割方式を指定せずに、メディア全体の適応のための全体的な分割方式を示すことができる。
【００２３】
さらなる実施形態では、メディアセグメントのためのスケーラブルセグメントは、異なるセグメントファイルに転送され得る。別の実施形態では、異なるメディアセグメントのスケーラブルセグメントは、送信のために異なるセグメントファイルにインターリーブされ得る。スケーラブルセグメントの分割は、セグメントファイルの転送におけるネットワークの信頼性欠如にもかかわらず、クライアント側でメディア再生における回復力を可能にすることができる。
【００２４】
以下の説明は、一実施形態によるスケーラビリティと回復力増加を適用するための例示的な方法を示している。一例として、1000s(1000秒)の長さのプレゼンテーション、および30fps(1秒当たりのフレーム数)のフレームレートのビデオを含み、Di=10s(すべてのiについて、1≦i≦100)であるメディアプレゼンテーションの一部を考慮し、上式で、Diは間隔Tiに関連付けられる長さである。メディアプレゼンテーションは、間隔Ti (i=1、2、…、100)の連結でよい。すなわち、T1、T2、T3、…、T100は、示されているメディアプレゼンテーションの一部を構成し得る。
【００２５】
すべてのi(1≦i≦100)についてNi=2に設定すると、各メディアプレゼンテーション間隔Tiは、Si,1およびSi,2として識別される間隔Tiの各メディアセグメントの2つのスケーラブルセグメントに関連付けられ得る。これらの間隔に関連付けられる100個のセグメントファイルFj=(1≦j≦100)がある場合、セグメントファイルF2r-1は、S2r-1,1およびS2r,1、1≦r≦50におけるスケーラブルセグメントに関連付けられてよく、セグメントファイルF2rもまた、S2r-1,2、S2r,2、1≦2≦50におけるスケーラブルセグメントに関連付けられてよい。
【００２６】
スケーラブルセグメントSi,1は、ゼロとしてTiの開始から第1のアクセスユニットの相対的なオフセットで、15fpsでアクセスユニットを含んでよく、スケーラブルセグメントSi,2は、33msのTiの開始から第1のアクセスユニットの相対的なオフセットで、15fpsでアクセスユニットを含んでよい。
【００２７】
この例では、セグメントファイルF2r-1は、T2r-1の開始に対して約0ms、66ms、…、19933msのタイムスタンプを有するアクセスユニットを含み得る。セグメントファイルF2rは、T2r-1の開始に対して約33ms、100ms、…、19966msのタイムスタンプを有するアクセスユニットを含む。
【００２８】
したがって、スケーラブルセグメントS2r-1とS2rの両方がクライアントによって受信されると、間隔T2r-1およびT2rが30fpsで再生され得る。スケーラブルセグメントS2r-1とS2rのうちのちょうど1つが損失されると、間隔T2r-1およびT2rが15fps(30fpsよりも品質が低い)で再生され得るが、T2r-1およびT2rに対応するメディアプレゼンテーションはクライアントでスキップされない。したがって、クライアントがスケーラブルセグメントS2r-1とS2rのうちの1つを受信したので、メディアプレゼンテーションは、受信されたスケーラブルセグメントだけを使用して、定義された品質しきい値で、クライアントで再構築およびレンダリングされ得る。
【００２９】
別の例として、セグメントファイルF2rが欠落していると仮定する。次いで、T2r-1およびT2rに関連付けられるメディアプレゼンテーションが、T2r-1の開始に対して0ms、66ms、…、19933msのタイムスタンプのアクセスユニットで、15fpsでF2r-1から回復され得る。代わりにセグメントファイルF2r-1が欠落している場合、T2r-1およびT2rに関連付けられるメディアプレゼンテーションは、T2r-1の開始に対して66ms、100ms、…、19966msなどのタイムスタンプのアクセスユニットで、F2rを使用して依然として再生可能である。
【００３０】
図1は、様々な実施形態での使用に適した通信ネットワークシステム100を示している。通信ネットワークシステム100は、受信機デバイス102、1つまたは複数のセルラータワーまたは基地局104、1つまたは複数のワイヤレスアクセスポイント114、1つまたは複数のルータ109、ならびにインターネット110に接続されたサーバ108および112などの、複数のデバイスを含み得る。受信機デバイス102は、セルラータワーまたは基地局104との、CDMA、TDMA、GSM（登録商標）、PCS、3G、4G、LTE、または他の任意のタイプの接続を含む、1つまたは複数のセルラー接続106を介してデータを交換することができる。セルラータワーまたは基地局104は、インターネット110に接続し得るルータと通信していてよい。受信機デバイス102は、ワイヤレスアクセスポイント114との、Wi-Fi(登録商標)または他の何らかのタイプの接続を含む1つまたは複数の接続118を介して、データを交換することができる。ワイヤレスアクセスポイント114は、インターネット110に接続し得るルータと通信していてよい。受信機デバイス102は、1つまたは複数のワイヤード接続117を介して、インターネット110に接続し得るルータ109とデータを交換することができる。このように、セルラータワーまたは基地局104、ワイヤレスアクセスポイント114、ルータ109、および/またはインターネット110への接続を介して、受信機デバイス102とサーバ108および112との間でデータを交換することができる。ある実施形態では、サーバ108は、スケーラブルメディアセグメントを符号化することができるコンテンツソースサーバでよい。ある実施形態では、コンテンツソースサーバ108は、カメラなどのメディアキャプチャデバイス116からメディアを受信することができ、受信したメディアをスケーラブルメディアセグメントに符号化することができ、セグメントファイル内のスケーラブルセグメントをサーバ112に送信することができる。ある実施形態では、サーバ112は、コンテンツソースサーバ108からスケーラブルセグメントを受信して、受信機デバイス102へのスケーラブルセグメントのプロビジョニングを制御することができる、メディアサーバ(たとえば、DASHサーバ)でよい。
【００３１】
図2Aは、Ti(1≦i≦Z、上式でiは間隔の数と等しい)のような間隔Tiのメディアセグメントの連結が、全体的なメディアプレゼンテーションを構築する、例示的な従来技術のメディアプレゼンテーションを示している。Zは、メディアプレゼンテーションがライブストリームの場合には無限でよい。Diはメディアプレゼンテーション間隔Tiの長さでよい。セグメントファイルは、1つまたは複数のメディアプレゼンテーション間隔に関連付けられるデータを含み得る。現在のDASH標準ごとに、1つまたは複数のメディアセグメントがセグメントファイル内に存在し得るが、あるセグメントファイルによってマッピングされるメディアプレゼンテーション間隔は、別のセグメントファイルに関連付けられるメディアプレゼンテーション間隔と重複しない。現在のDASH標準では、異なるセグメントファイルによってマッピングされる時間間隔は、相互に排他的である。オンデマンドストリームは、全体的なメディアプレゼンテーションを含むために、1つの単一のセグメントファイルを有することができる。これは、メディアプレゼンテーション内の任意のセグメントがDASHサーバからフェッチされ得る場合、全体的なメディアプレゼンテーションがフェッチされ得るので、現在のビデオオンデマンド(「VOD」)ストリームにおいて許容可能である。
【００３２】
しかしながら、ライブストリーミングでは、全体的なメディアプレゼンテーションは、典型的には一度に利用できない場合がある。メディアプレゼンテーションを提供するDASHサーバは、ライブメディアシーンがキャプチャされて、セグメントファイルに符号化されて、コンテンツソースサーバからメディアプレゼンテーションを提供するサーバ(たとえば、DASHサーバ)に送信される時にリアルタイムに、またはほぼリアルタイムに、コンテンツソース(たとえば、コンテンツソースサーバ)からセグメントファイルを受信することができる。従来技術のシステムでは、図2Bに示されるように、各間隔Tiは単一のセグメントファイルに符号化され得る。
【００３３】
従来技術のシステムでは、図2Bに示されるFi(iはセグメントファイルの数と等しい)などのセグメントファイルが損失されるか、欠落している場合、セグメントファイルFiに含まれるすべてのメディアセグメントが損失される。Fiに対応する全体的なメディアプレゼンテーション間隔は、クライアントによってスキップされる必要がある。欠落しているセグメントファイルのために損失されたメディアプレゼンテーション間隔の境界を減少させるために、各セグメントファイルは、ちょうど1つのメディアセグメントを含み得る。しかしながら、あるメディアセグメントから、あるセグメントファイルへのマッピングは、従来技術のシステムでは、メディアプレゼンテーションの間隔は、欠落しているセグメントファイルが1つでもある場合、スキップされる必要があるという事実に対処しない。
【００３４】
様々な実施形態のシステム、方法、およびデバイスは、メディアプレゼンテーションにスケーラビリティを組み込む。ある実施形態では、欠落しているセグメントファイルがある場合に、連続的、または少なくとも実質的に連続的であり得るように、クライアント側のメディアプレゼンテーションにスケーラビリティが組み込まれ得る。ある実施形態では、スケーラビリティを組み込むために使用される方式は、クライアントに信号伝達され得る。様々な実施形態に従ってスケーラビリティを組み込むことによって、メディアプレゼンテーションにおける回復力を改善することができる。
【００３５】
図3は、ある実施形態による、スケーラブルセグメントSi,1からSi,Niに分割された間隔Tiのメディアセグメントを示している。ある実施形態では、メディアプレゼンテーション間隔Tiは、復号可能なスケーラブルセグメントSi,w(ここでは、1≦w≦Ni)とは独立に、Ni(ここでは、Ni>1であり、Niは正の整数である)に分割され得る。ある実施形態では、間隔Tiのスケーラブルセグメントは、「v」(1≦v≦Ni)スケーラブルセグメントの組合せが、メディアプレゼンテーション間隔Tiに対応するメディアプレゼンテーションを再生するために十分であるようなデータの集合でよい。ある実施形態では、メディアプレゼンテーション間隔を構築するために最低限必要な「v」の値、およびTiの「v」スケーラブルセグメントのサブセットは、間隔Tiに適用されるスケーラビリティ方式に依存する場合がある。ある実施形態では、メディアプレゼンテーション間隔を構築するために最低限必要な「v」の値、およびTiの「v」スケーラブルセグメントのサブセットは、メディアセグメントが定義された品質しきい値でレンダリングされ得るように選択され得る。例として、定義された品質しきい値は、クライアントによる再生中の停止などの、ユーザが知覚可能な品質低下をもたらすことなしにメディアセグメントがレンダリングされ得る品質レベルでよい。別の例として、定義された品質しきい値は、スケーラブルセグメントをレンダリングする際の帯域幅の仮想表現が、利用可能な次のより低いセグメントの品質表現の帯域幅を上回るような品質レベルでよい。たとえば、メディアセグメントの2Mbps表現および750kbps表現が利用可能な場合、2Mbpsのスケーラブルセグメントの定義された品質しきい値は1000kbpsに設定され得る。したがって、2Mbps表現のスケーラブルセグメントのうちの少なくとも1つを受信することによって、より低い品質の750kbps表現の完全なセグメントを受信することよりも高い品質の再生が可能になり得る。さらなる例として、定義された品質しきい値は、2つまたはそれ以上のスケーラブルセグメントを受信機デバイスに送信する際のバーストファイル損失の確率に少なくとも部分的に基づき得る。
【００３６】
図4は、メディアセグメントから2つまたはそれ以上のスケーラブルセグメントを導出するための実施形態方法400を示している。ある実施形態では、方法400の動作は、少なくとも1つのサーバ、たとえば、コンテンツソースサーバ108(図1)、メディアサーバ112(図1)、1つまたは複数の他のサーバ、あるいはそれらの組合せによって実行され得る。ブロック401で、コンテンツソースサーバ108は、コンテンツストリームの1つまたは複数のメディア表現を受信することができる。ある実施形態では、1つまたは複数のメディア表現は、カメラなどのメディアキャプチャデバイスによってキャプチャされるコンテンツストリームのメディア表現を生成しているエンコーダから受信され得る。一例として、カメラは、1920x1080画素で、メディアプレゼンテーション間隔Tiにわたる一連のピクチャとしてストリームをキャプチャすることができ、エンコーダは、750Mbpsの帯域幅および1500 Mbpsの帯域幅に適したメディア表現でストリームの符号化を生成することができる。表現は、スケーラブルセグメントを導出するために、コンテンツソースサーバ108にそれぞれ提供され得る。
【００３７】
ブロック402で、コンテンツソースサーバ108は、品質しきい値を定義することができる。ある実施形態では、品質しきい値は、クライアントアプリケーション(たとえば、DASH対応ビデオプレーヤ)によってセグメントをレンダリングするための、許容可能な品質レベルに対応する値でよい。一例として、品質しきい値は、品質しきい値を満たすメディアセグメントが、ユーザが知覚可能な品質低下(たとえば、メディアセグメントを出力している受信機デバイス上の、クライアントアプリケーションによる再生中の停止)なしにレンダリングされ得るように定義され得る。当然、他の実施形態では、品質しきい値は、品質しきい値を満たすメディアセグメントが、ユーザが知覚可能な品質低下とともにレンダリングされ得るように定義されてよく、それは(理想的ではないが)依然としてメディアセグメントのレンダリングがないよりも好ましい場合がある。ブロック404で、コンテンツソースサーバ108は、受信されたメディア表現内の、次のメディアセグメント(たとえば、次のメディアプレゼンテーション間隔Ti)を識別することができる。
【００３８】
ブロック406で、コンテンツソースサーバ108は、メディアセグメントから、複数のスケーラブルセグメントを導出することができる。望ましくは、ブロック406でメディアセグメントから導出されたスケーラブルセグメントの適切なサブセットは、受信機デバイス上のクライアントが、適切なサブセットだけを使用して(すなわち、ブロック406で導出されたすべてのスケーラブルセグメントは使用せずに)、品質しきい値で、またはそれを上回って、メディアセグメントをレンダリングすることを可能にするために十分な量のデータを含み得る。一例では、ブロック406で導出された各スケーラブルセグメントは、受信機デバイス上のクライアントが、そのスケーラブルセグメントだけを使用して(すなわち、ブロック406で導出された他のスケーラブルセグメントのいずれも使用せずに)、品質しきい値で、またはそれを上回って、メディアセグメントをレンダリングすることを可能にするために十分なデータの量を含み得る。別の例では、ブロック406で導出されたスケーラブルセグメントの適切なサブセットは、受信機デバイス上のクライアントが、適切なサブセットだけを使用して(すなわち、ブロック406で導出されたすべてのスケーラブルセグメントは使用せずに)、品質しきい値で、またはそれを上回って、メディアセグメントをレンダリングすることを可能にするための量のデータを集合的に含む、複数のスケーラブルセグメントを含み得る。
【００３９】
一実施形態では、ブロック406で、コンテンツソースサーバ108は、メディアからスケーラブルセグメントを導出するために、メディアセグメントをスケーラブルセグメントに分割することができる。一例として、表現のメディアセグメント間隔Tiは、一連の個々のスケーラブルセグメントに分割され得る。間隔Ti内の各ピクチャPi,k(1≦k≦K)は、「U」のより小さいピクチャ(たとえば、サブ画像)Pi,k,u(1≦u≦U)に分解され得る。U=4の場合、4つの個々のサブ画像は相互への依存なしに符号化されてよく、間隔Tiは、サブ画像の4つのシーケンスPi,k,1、Pi,k,2、Pi,k,3、Pi,k,4(1≦k≦K)を構成する4つの個々のスケーラブルセグメントに分割され得る。このように、スケーラブルセグメントは、4つの個々のプロセスから作成することができ、各スケーラブルセグメントは、他から独立していてよい。この例によって示されるように、ある実施形態では、クライアントによっていずれか1つのスケーラブルセグメントが受信される限り、他のスケーラブルセグメントが損失されるかもしれないが、各スケーラブルセグメントは相互に独立しているので、その間隔のメディアセグメントのバージョンはクライアントによって再生され得る。階層内のより上位層(拡張された層など)、および上位レベルが依存する下位層(基本層など)が別々に符号化される符号化方式では、下位層が損失された場合、上位層は有用ではないので、このソリューションの方が、それらの符号化方式よりも優れている(および、それらの符号化方式とは異なる)。
【００４０】
ブロック406で導出された複数のスケーラブルセグメントは、時間的に重複する場合がある。たとえば、一実施形態では、時間的に重複しているスケーラブルセグメントは、表現のメディアセグメント間隔Tiの期間にわたって重複するフレームを含み得る(たとえば、メディアセグメントが、より高い解像度でN数のフレームに対応し、各スケーラブルセグメントが、より低い解像度を有するフレームのN/Ni(ここでは、Niは、メディアセグメント間隔Tiにおけるスケーラブルセグメントの数)数に対応する場合)。また、たとえば、一実施形態では、時間的に重複しているスケーラブルセグメントは、表現のメディアセグメント間隔Tiの期間にわたって混在しているフレームを含み得る(たとえば、メディアセグメントがN数のフレームを含み、Ni = 2の場合、第1の時間的に重複しているスケーラブルセグメントはN/2フレームの第1のセットに対応し、第2の時間的に重複しているスケーラブルセグメントは、メディアセグメント間隔Tiの期間にわたってN/2フレームの第1のセットと繰返し交互になる、N/2フレームの異なる第2のセットに対応する)。
【００４１】
決定ブロック408で、コンテンツソースサーバ108は、メディア表現内にさらなるセグメントが残っているかどうかを決定することができる。さらなるセグメントが残っている場合(すなわち、決定ブロック408=「はい」)、上述のように、コンテンツソースサーバ108は、ブロック404で、メディア表現の次のセグメントを識別することができ、ブロック406で、コンテンツソースサーバ108は、メディアセグメントから複数のスケーラブルセグメントを導出することができる。分割方式が、ブロック404、406、および408を介してセグメントごとに適用されるある実施形態では、スケーラブルセグメントを作成するために、以前のセグメントに適用されたものと同じ分割方式およびルールが次のセグメントに適用されてもよく、スケーラブルセグメントを作成するために、異なる分割方式が適用されてもよい。分割方式が、ブロック404、406、および408を介して表現ごとに、または適応ごとに適用される実施形態では、以前のセグメントに適用されたものと同じ分割方式およびルールが次のセグメントに適用され得る。決定ブロック408で、コンテンツソースサーバ108は、スケーラブルセグメントに分割されるべきメディア表現内にさらなるセグメントが残っているかどうかを再び決定することができる。このように、受信されたメディア表現のいくつか、またはすべてのセグメントが、スケーラブルセグメントに分割され得る。
【００４２】
メディア表現内にさらなるメディアセグメントが残っていない場合(すなわち、決定ブロック408=「いいえ」)、コンテンツソースサーバ108は、スケーラブルセグメントを導出するために使用される少なくとも1つの方式を示す、およびスケーラブルセグメントを示す、プレイリストファイルを生成することができる。たとえば、ブロック410で、コンテンツソースサーバ108は、メディアセグメントを分割するために使用される方式を示す、およびスケーラブルセグメントを示すプレイリストファイルを生成することができる。ある実施形態では、プレイリストファイル(たとえば、MPD)は、各スケーラブルセグメントを作成するために使用される分割方式を示し、各スケーラブルセグメントを示すことができる。そのようなプレイリストファイルのスキーマの例の一部を以下に示す。
セグメントレベル
セグメント-1-*.3gp;  ルール:2X2、名前:a,b,c,d
セグメント-2-*.3gp;  ルール:1X2、名前:a,b
【００４３】
したがって、この例では、セグメント1に関連付けられる、およびルール「2X2」を使用して作成されたスケーラブルセグメントは、「Segment-1-a.3gp」、「Segment-1-b.3gp」、「Segment-1-c.3gp」、および「Segment-1-d.3gp」でよく、セグメント2に関連付けられる、およびルール「1X2」を使用して作成されたスケーラブルセグメントは、「Segment-2-a.3gp」、および「Segment-2-b.3gp」でよい。各スケーラブルセグメントを作成するために使用される分割方式の表示、および各スケーラブルセグメントの表示は、分割方式がセグメントごとに適用される実施形態において有用であってよい。
【００４４】
別の実施形態では、プレイリストファイル(たとえば、MPD)は、すべてのスケーラブルセグメントの分割方式を示し、各スケーラブルセグメントを示すことができる。そのようなプレイリストファイルのスキーマの例の一部を以下に示す。
表現:
ルール: 2X2、名前:a,b,c,d
セグメントレベル
セグメント-1-*.3gp
セグメント-2-*.3gp
【００４５】
したがって、この例では、表現におけるすべてのセグメントに関連付けられるスケーラブルセグメントは、同じルール「2X2」を使用して作成され、同じ数(たとえば、4つ)のスケーラブルセグメントをもたらす。したがって、セグメント1は、スケーラブルセグメント「Segment-1-a.3gp」、「Segment-1-b.3gp」、「Segment-1-c.3gp」、および「Segment-1-d.3gp」を有してよく、セグメント2は、スケーラブルセグメント「Segment-2-a.3gp」、「Segment-2-b.3gp」、「Segment-2-c.3gp」、および「Segment-2-d.3gp」を有してよい。表現全体に使用される分割方式の表示、および各スケーラブルセグメントの表示は、分割方式が表現ごとに適用される実施形態において有用であってよい。
【００４６】
さらなる実施形態では、プレイリストファイル(たとえば、MPD)は、すべての表現の分割方式を示し、各スケーラブルセグメントを示すことができる。そのようなプレイリストファイルのスキーマの例の一部を以下に示す。
適応セットレベル:
ルール:2X2、名前:a,b,c,d
【００４７】
したがって、この例では、適応のための任意の表現におけるすべてのセグメントに関連付けられるスケーラブルセグメントは、同じルール「2X2」を使用して作成され、同じ数(たとえば、4つ)のスケーラブルセグメントをもたらす。各スケーラブルセグメントの適応および表示のために使用される分割方式の表示は、分割方式が適応ごとに適用される実施形態において有用であってよい。
【００４８】
ブロック412で、コンテンツソースサーバ108は、プレイリストファイルを送信することができる。ある実施形態では、プレイリストファイルは、受信機デバイス上で動作しているクライアント(たとえば、DASH対応メディアプレーヤ)に送信され得る。一例として、プレイリストファイルは、プレイリストファイルをメディアサーバ112に送信しているコンテンツソースサーバ108によって、受信機デバイス上で動作しているクライアントに送信されてよく、クライアントが、メディアサーバ112にプレイリストを要求(たとえば、フェッチ)し(たとえば、HTTP Get()を介して)、クライアントが、メディアサーバ112からプレイリストファイルを受信する。別の例として、プレイリストファイルは、コンテンツソースサーバ108によってホストされて、クライアントからの要求に応答して、コンテンツソースサーバ108から受信機デバイス上で動作しているクライアントに直接送信され得る。別の例として、プレイリストファイルは、受信機デバイス上で動作しているクライアントにブロードキャストされ得る(たとえば、コンテンツソースサーバ108からプレイリストファイルを受信した後に、メディアサーバ112によってブロードキャストされる)。メディア表現がライブストリーミング用である、ある実施形態では、プレイリストファイルは、動的に生成、更新、および送信されてよい。ブロック414で、コンテンツソースサーバ108は、スケーラブルセグメントを送信することができる。ある実施形態では、スケーラブルセグメントは、受信機デバイス上で動作しているクライアント(たとえば、DASH対応メディアプレーヤ)に送信され得る。一例として、スケーラブルセグメントは、スケーラブルセグメントをメディアサーバ112に送信しているコンテンツソースサーバ108によって、受信機デバイス上で動作しているクライアントに送信されてよく、クライアントが、メディアサーバ112にスケーラブルセグメントを要求(たとえば、フェッチ)し(たとえば、HTTP Get()を介して)、クライアントが、メディアサーバ112から1つまたは複数のスケーラブルセグメントを受信する。別の例として、スケーラブルセグメントは、コンテンツソースサーバ108によってホストされて、クライアントからの要求に応答して、コンテンツソ
ースサーバ108から受信機デバイス上で動作しているクライアントに直接送信され得る。別の例として、コンテンツソースサーバ108は、スケーラブルセグメントをメディアサーバ112(受信機デバイスから遠隔にあってもよく、受信機デバイスに含まれるローカルメディアサーバでもよい)にブロードキャストすることができ、次いで、クライアントは、メディアサーバ112にスケーラブルセグメントを要求することができる。別の例として、メディアサーバ112は、コンテンツソースサーバ108からスケーラブルセグメントを受信した後に、またはコンテンツソースサーバ108は、スケーラブルセグメントを受信機デバイスにブロードキャストすることができる。
【００４９】
上述のように、スケーラブルセグメントを導出するために使用される少なくとも1つの方式を示すプレイリストが生成され得る。スケーラブルセグメントを導出するために使用される少なくとも1つの方式を示すプレイリストは、スケーラブルセグメントが導出される前、スケーラブルセグメントが導出された後、またはスケーラブルセグメントが導出されている間に生成され得る。さらに、プレイリストは、必要に応じて1回または複数回更新され得る。
【００５０】
図5は、スケーラブルセグメントを使用してメディアを提示するための実施形態方法500を示している。ある実施形態では、方法500の動作は、受信機デバイスのプロセッサ上で動作しているクライアントアプリケーション(たとえば、DASH対応メディアプレーヤ)によって実行され得る。
【００５１】
ブロック502で、クライアントは、プレイリストファイルを受信することができる。たとえば、ブロック502で、クライアントは、メディアセグメントをスケーラブルセグメントに分割するために使用される方式の表示を含むプレイリストファイルなどの、メディアセグメントからスケーラブルセグメントを導出するために使用される方式の表示を含むプレイリストファイルを受信することができる。ある実施形態では、プレイリストファイル(たとえば、MPD)は、メディアセグメントのためのスケーラブルセグメントを生成するために使用される1つまたは複数の分割方式および/またはルールの表示を含み得る。ある実施形態では、クライアントは、プレイリストファイルをホストしている可能性がある、メディアサーバ112および/またはコンテンツソースサーバ108に送信されたプレイリストファイルを求める要求に応答して、プレイリストファイルを受信することができる。別の実施形態では、クライアントは、メディアサーバ112、コンテンツソースサーバ108、または別のサーバからのブロードキャストを介して、プレイリストファイルを受信することができる。
【００５２】
ブロック504で、クライアントは、次のメディアセグメントのためのスケーラブルセグメントのうちのいくつか、またはすべてを要求することができ、そのスケーラブルセグメントは、ブロック406(図4)を参照して上述したように、メディアセグメントから導出されてよい。ある実施形態では、クライアントは、次のメディアセグメント(たとえば、スケーラブルセグメントを要求しているHTTP Get()を送信している)に対応するスケーラブルセグメントをホストしている可能性がある、メディアサーバ112および/またはコンテンツソースサーバ108からスケーラブルセグメントをフェッチすることによって、次のメディアセグメントのためのスケーラブルセグメントを要求することができる。一例として、クライアントは、ブロック502で受信されたプレイリストファイルに含まれるセグメントタイムライン情報に基づいて要求するために、次のメディアセグメントを識別することができる。さらに、クライアントは、どの表現上で要求するか決定を行うことができ(たとえば、利用可能な帯域幅、および/または他のパラメータに基づいて)、特定の選択された表現のためのスケーラブルセグメントだけを要求することができる。しかしながら、クライアントは、スケーラブルセグメントを要求する必要がなく、たとえば、ブロードキャストを介してスケーラブルセグメントを受信することができる(たとえば、コンテンツソースサーバ108によって直接ブロードキャストされるか、コンテンツソースサーバ108からスケーラブルセグメントを受信した後に、メディアサーバ112によってブロードキャストされる)。
【００５３】
ブロック506で、クライアントは、ブロック504で要求されたスケーラブルセグメントのうちの1つまたは複数を受信することができる。ホスティングサーバで欠落しているセグメント、送信干渉、転送接続損失、バースト損失などの様々な要因に基づいて、場合によっては、ブロック504で要求されたすべてのスケーラブルセグメントがクライアントによって受信されない場合がある。他の場合では、ブロック504で要求されたすべてのスケーラブルセグメントが受信され得る。ホスティングサーバとクライアントとの間の転送における問題のために、すべての要求されたスケーラブルセグメントをクライアントが受信しない可能性があるが、クライアントがすべての要求されたスケーラブルセグメントを受信しない場合、たとえば、要求されたスケーラブルセグメントを含む1つまたは複数のファイルが信頼性の低いネットワークリンクによってドロップされたために、ホスティングサーバ(たとえば、メディアサーバ112)が、ソースサーバ(たとえば、コンテンツソースサーバ108)からすべての要求されたスケーラブルセグメントを受信しなかったためである可能性がより高い。
【００５４】
決定ブロック508で、クライアントは、ブロック504で要求されたスケーラブルセグメントのうちの少なくとも1つが損失されたかどうかを決定することができる。一例として、クライアントは、任意の個々のスケーラブルセグメント要求のための要求についてのエラー応答(たとえば、HTTP 404エラーコード)を、メディアセグメントのための少なくとも1つの他のスケーラブルセグメントが損失されたという表示として処理することができる。別の例として、クライアントは、メディアセグメントのための少なくとも1つの他のスケーラブルセグメントが損失されたかどうかを識別するために、受信されたスケーラブルセグメントと、メディアセグメントのためのすべてのスケーラブルセグメントのリストとを比較することができる。
【００５５】
どのスケーラブルセグメントも損失されていない場合(すなわち、決定ブロック508=「いいえ」)、ブロック514で、クライアントは、完全な品質のメディアセグメントを生成するために、ブロック506で受信されたすべてのスケーラブルセグメントの受信された組合せを処理することができる。一例として、クライアントは、受信されたスケーラブルセグメントが導出される、完全な品質のメディアセグメントを再構築するために、受信されたスケーラブルセグメントを結合することができる。プロセスの一部としてスムージングステップが適用され得る。ある実施形態では、完全な品質のメディアセグメントの再構築を支援するために、クライアントは、完全な品質のメディアセグメントを生成するために、ブロック502で受信されたプレイリストファイルに示された導出方式(分割方式など)を使用することができる。ブロック516で、クライアントは、完全な品質のメディアセグメントをレンダリングすることができる。一例として、クライアントは、受信機デバイスのユーザインターフェース(たとえば、ディスプレイ、スピーカ等)上でメディアセグメントのコンテンツ(たとえば、ビデオおよび/またはオーディオ)を出力することができる。次いで、クライアントは、ブロック504に戻ることができる。
【００５６】
ブロック504でメディアセグメントのために要求された、少なくとも1つのスケーラブルセグメントが損失された場合(すなわち、決定ブロック508=「はい」)、ブロック510で、クライアントは依然として、しきい値品質メディアセグメントを生成するために、ブロック506で受信された1つまたは複数の要求されたスケーラブルセグメントを有利に処理することができる。しきい値品質メディアセグメントは、ブロック402(図4)で定義された品質しきい値などの定義された品質しきい値でもよく、それを上回ってもよい。一実施形態では、ブロック510で、クライアントは、しきい値品質メディアセグメントを生成するために、ブロック502で受信されたプレイリストファイル内に示される導出方式(たとえば、プレイリストファイル内に示された分割方式)に少なくとも部分的に基づいて、1つまたは複数の要求されたスケーラブルセグメントを処理することができる。
【００５７】
さらなる詳細では、上述のように、ブロック406(図4)でメディアセグメントから導出されたスケーラブルセグメントの適切なサブセットは、受信機デバイス上のクライアントが、適切なサブセットだけを使用して(すなわち、ブロック406で導出されたすべてのスケーラブルセグメントは使用せずに)、品質しきい値で、またはそれを上回って、メディアセグメントをレンダリングすることを可能にするために十分な量のデータを含み得る。さらに、上述のように、スケーラブルセグメントの適切なサブセットは、個々のスケーラブルセグメントで構成されてもよく、スケーラブルセグメントの組合せで構成されてもよい。したがって、少なくとも1つの要求されたスケーラブルセグメントが損失された場合(したがって、スケーラブルセグメントの適切なサブセットだけが図5のブロック506で受信される)、ブロック510で、スケーラブルセグメントのその受信された適切なサブセットは複製されてよく、スケーラブルセグメントの受信された適切なサブセットのコピーは、損失されたスケーラブルセグメントを置換するために使用され得る。別の例として、少なくとも1つの要求されたスケーラブルセグメントが損失された場合、ブロック510で、クライアントは、スケーラブルセグメントの受信された適切なサブセットの外挿によって、損失されたスケーラブルセグメントを構築することができる。1つの方法は、正常に受信された任意のスケーラブルセグメントに関連付けられる隣接する画素の平均化を実行することでよい。別の例として、ブロック510で、クライアントは、スケーラブルセグメントの受信された適切なサブセットの空間情報に基づいて、損失されたスケーラブルセグメント内の損失されたサブ画像ごとに複数の候補のサブ画像を生成することによって、1つまたは複数の損失されたスケーラブルセグメント内のピクチャを再構築して、次いで、損失されたスケーラブルセグメントを置換するための候補画像を選択するために、最低ピーク信号対ノイズ比(「PSNR」)などの選択基準を使用することができる。さらに、プロセスの一部としてスムージングステップが適用され得る。
【００５８】
ブロック512で、クライアントは、ブロック510で生成されたしきい値品質メディアセグメントをレンダリングすることができる。一例として、クライアントは、受信機デバイスのユーザインターフェース(たとえば、ディスプレイ、スピーカ等)上でしきい値品質メディアセグメントのコンテンツ(たとえば、ビデオおよび/またはオーディオ)を出力することができる。次いで、クライアントは、ブロック504に戻ることができる。
【００５９】
メディアセグメントのために生成されたすべてのスケーラブルセグメントが、同じセグメントファイルに記憶される必要はない。図6は、メディアセグメント間隔Tiから生成された各スケーラブルセグメントSi,1からSi,Niがそれら自体のそれぞれのセグメントファイル、セグメントファイル1からセグメントファイルNiに記憶される、実施形態転送方式を示している。このように、1つのセグメントファイルの損失は、1つのスケーラブルセグメントの損失をもたらすにすぎない場合がある。各セグメントファイルの送信間の遅延は、ネットワーク送信における信頼性欠如を説明することができる。
【００６０】
図7は、方法700では各スケーラブルセグメントが異なるセグメントファイルで送信され得ること以外は上述の方法400と類似している、スケーラブルセグメントを生成するための実施形態方法700を示している。ある実施形態では、方法700の動作は、少なくとも1つのサーバ、たとえば、コンテンツソースサーバ108(図1)、メディアサーバ112(図1)、1つまたは複数の他のサーバ、あるいはそれらの組合せによって実行され得る。ブロック401、402、404、406、408、410、および412で、少なくとも1つのサーバが、スケーラブルセグメントを生成するために、図4を参照して上述した方法400の同様の番号のブロックの動作を実行することができる。ブロック702で、少なくとも1つのサーバが、上記でブロック414を参照して説明した様々な方法を使用して、それら自体のそれぞれのセグメントファイル内のスケーラブルセグメントを送信することができる。
【００６１】
ある実施形態では、セグメントファイルは、異なるメディアセグメントに対応するスケーラブルセグメントを含み得る。このように、セグメントファイルの損失は、そのセグメントファイルに記憶された異なるメディアセグメントのスケーラブルセグメントの損失をもたらす場合がある。すべてのスケーラブルセグメントがメディアセグメント間隔を再生するために必要ではない場合があるので、1つまたは複数のセグメントファイルの損失は、スキップされるべきメディアセグメント間隔に対応するメディアの提示を必要としない場合がある。図8は、Rセグメントファイルにわたって分散されるスケーラブルセグメントを示している。たとえば、ai,j(1≦j≦R)は、Fj(1≦j≦R)内のTiのスケーラブルセグメントの数を示すことができるので、
【００６２】
【数１】
2016517675.tif 000003
【００６３】
である。ある実施形態では、ドロップされたスケーラブルセグメントTiの数は、間隔のNiスケーラブルセグメントが時間にわたってさらに分散されるように、コンテンツソースからのセグメントファイルの送信をインターリーブすることによって減少され得る。たとえば、スケーラブルセグメントSi,wおよびSi,w+1に関連付けられるセグメントファイルの送信間の遅延はYi,w(1≦w≦Ni-1)でよく、Si,1とSi,Niとの間の送信における総遅延は、
【００６４】
【数２】
2016517675.tif 000004
【００６５】
でよい。連続するネットワークドロップの期間が
【００６６】
【数３】
2016517675.tif 000005
【００６７】
未満である限り、依然として間隔Tiのメディアセグメントの再生が可能である場合がある。ネットワーク信頼性の欠如の期間がバーストで発生したが、ドロップされている複数のセグメントファイルをもたらす場合、このインターリービング送信方式は有用である可能性がある。
【００６８】
図9は、方法900では各スケーラブルセグメントが異なるメディアセグメントからのスケーラブルセグメントを含む異なるセグメントファイルで送信され得ること以外は上述の方法400と類似している、スケーラブルセグメントを生成するための実施形態方法900を示している。ある実施形態では、方法900の動作は、少なくとも1つのサーバ、たとえば、コンテンツソースサーバ108(図1)、メディアサーバ112(図1)、1つまたは複数の他のサーバ、あるいはそれらの組合せによって実行され得る。ブロック401、402、404、406、408、410、および412で、少なくとも1つのサーバが、スケーラブルセグメントを生成するために、図4を参照して上述した方法400の同様の番号のブロックの動作を実行することができる。ブロック902で、少なくとも1つのサーバが、上記でブロック414を参照して説明した様々な方法を使用して、異なるメディアセグメントからのスケーラブルセグメントを含む異なるセグメントファイル内のスケーラブルセグメントを送信することができる。一例として、スケーラブルセグメントは、異なるセグメントファイルにインターリーブされ得る。別の例として、スケーラブルセグメントは、異なるセグメントファイルに順次リストアップされ得る。
【００６９】
図10は、実施形態による、MPDなどのプレイリストファイル1002の要素を示すデータ構造図である。プレイリストファイル1002は、表現1012の表示などのメディア情報1004を含み得る。プレイリストファイル1002は、分割方式表示1006を含み得る。分割方式表示1006は、1つまたは複数の分割方式ID1014および再構築ルール1016を含み得る。プレイリストファイル1008は、スケーラブルセグメントリスト1008を含み得る。スケーラブルセグメントリスト1008は、スケーラブルセグメントID1018、対応する表現ID1020、スケーラブルセグメントの開始時刻1022、スケーラブルセグメントの終了時刻1022、および対応するメディアセグメントID1026を含み得る。プレイリストファイル1008は、メディアセグメントリスト1010を含み得る。メディアセグメントリスト1010は、メディアセグメントID1028、メディアセグメント開始時刻1030、メディアセグメント停止時刻1032、および対応するスケーラブルセグメントID1034を含み得る。プレイリストファイル1008は、各セグメントおよび/または各スケーラブルセグメントの順序をリストアップし得るセグメントタイムライン1035を含み得る。
【００７０】
様々な実施形態は、様々なモバイルデバイスのいずれかに実装されてよく、その例が図11に示されている。たとえば、モバイルデバイス1100は、内部メモリ1104および1110に結合されたプロセッサ1102を含み得る。内部メモリ1104および1110は、揮発性メモリでも不揮発性メモリでもよく、セキュアなメモリおよび/または暗号化されたメモリでもよく、セキュアではないメモリおよび/または暗号化されていないメモリでもよく、それらの任意の組合せでもよい。プロセッサ1102はまた、抵抗感知タッチスクリーン、静電容量感知タッチスクリーン、赤外線検知タッチスクリーン、または同等物などの、タッチスクリーンディスプレイ1106に結合され得る。さらに、モバイルデバイス1100のディスプレイはタッチスクリーン機能を有する必要がない。さらに、モバイルデバイス1100は、プロセッサ1102に接続されたワイヤレスデータリンクおよび/またはセルラー電話トランシーバ1116に接続され得る電磁放射を送受信するための1つまたは複数のアンテナ1108を有してよい。モバイルデバイス1100は、また、ユーザ入力を受信するための物理的なボタン1112aおよび1112bを含み得る。モバイルデバイス1100はまた、モバイルデバイス1100をオンおよびオフにするための電源ボタン1118を含み得る。
【００７１】
上述の様々な実施形態はまた、図12に示されるラップトップコンピュータ1210などの、様々なパーソナルコンピューティングデバイス内に実装され得る。多くのラップトップコンピュータは、上述のタッチスクリーンディスプレイを備えたモバイルコンピューティングデバイスに実装されたものと類似している、コンピュータのポインティングデバイスの役割を果たすタッチパッドタッチ面1217を含み、したがってドラッグ、スクロール、およびフリックジェスチャを受信することができる。ラップトップコンピュータ1210は、典型的には、揮発性メモリ1212、およびフラッシュメモリのディスクドライブ1212などの大容量不揮発性メモリに結合されたプロセッサ1211を含む。コンピュータ1210はまた、プロセッサ1211に結合された、フロッピー（登録商標）ディスク1214およびコンパクトディスク(CD)ドライブ1215を含み得る。コンピュータデバイス1210はまた、USBまたはFireWire(登録商標)コネクタソケット、あるいはプロセッサ1211をネットワークに結合するための他のネットワーク接続回路などの、データ接続を確立するために、または外部メモリデバイスを受けるために、プロセッサ1211に結合された、いくつかのコネクタポートを含み得る。ノートブックの構成では、コンピュータハウジングは、すべてプロセッサ1211に接続された、タッチパッド1217、キーボード1218、およびディスプレイ1219を含む。コンピューティングデバイスの他の構成は、よく知られているように、様々な実施形態とともに使用され得る、プロセッサに結合された(たとえば、USB入力を介して)コンピュータマウスまたはトラックボールを含み得る。
【００７２】
様々な実施形態はまた、図13に示されるサーバ1300などの、様々な商業的に利用可能なサーバデバイスのいずれかに実装され得る。そのようなサーバ1300は、典型的には、揮発性メモリ1302、およびディスクドライブ1303などの大容量不揮発性メモリに結合されたプロセッサ1301を含む。サーバ1300はまた、プロセッサ1301に結合された、フロッピーディスクドライブ、コンパクトディスク(CD)またはDVDディスクドライブ1306を含み得る。サーバ1300はまた、他のブロードキャストシステムコンピュータおよびサーバに結合されたローカルエリアネットワークなどの、ネットワーク1307とのネットワークインターフェース接続を確立するためにプロセッサ1301に結合された、ネットワークアクセスポート1304を含み得る。
【００７３】
プロセッサ1102、1211、および1301は、上述の様々な実施形態の機能を含む様々な機能を実行するためにソフトウェア命令(アプリケーション)によって構成され得る、任意のプログラマブルマイクロプロセッサ、マイクロコンピュータ、または複数のプロセッサチップでよい。いくつかのデバイスでは、ワイヤレス通信機能専用の1つのプロセッサ、および他のアプリケーションの実行専用の1つのプロセッサなどの、複数のプロセッサが提供され得る。典型的には、ソフトウェアアプリケーションは、アクセスされてプロセッサ1102、1211、および1301にロードされる前に、内部メモリ1104、1110、1212、1213、1302、および1303に記憶され得る。プロセッサ1102、1211、および1301は、アプリケーションソフトウェア命令を記憶するために十分な内部メモリを含み得る。多くのデバイスでは、内部メモリは、揮発性でもよく、フラッシュメモリなどの不揮発性でもよく、両方の混合でもよい。この説明の目的で、メモリへの一般的な参照は、内部メモリ、またはデバイスにプラグインされたリムーバブルメモリ、およびプロセッサ1102、1211、および1301自体の中のメモリを含む、プロセッサ1102、1211、および1301によってアクセス可能なメモリを指す。
【００７４】
上記の方法の説明およびプロセスフロー図は、単に説明のための例として提供され、様々な実施形態のステップが提示された順序で実行されなければならないことを要求または暗示するものではない。当業者によって理解されるように、上記の実施形態におけるステップの順序は、任意の順序で実行することができる。「その後(thereafter)」、「次いで(then)」、「次に(next)」などの用語は、ステップの順序を限定することを意図するものではなく、これらの用語は単に、本方法の説明を読者に案内するために使用される。さらに、たとえば、冠詞「a」、「an」、または「the」を使用する、単数形での請求項の要素への任意の言及は、その要素を単数に限定するものとして解釈されるべきではない。
【００７５】
本明細書で開示する実施形態に関して説明する様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実装され得る。ハードウェアおよびソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップについて、上記で一般的にそれらの機能に関して説明した。そのような機能がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、特定の適用例および全体的なシステムに課される設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本発明の範囲からの逸脱を引き起こすものと解釈されるべきではない。
【００７６】
本明細書で開示された態様に関して記載された様々な例示的な論理、論理ブロック、モジュール、および回路を実装するために使用されるハードウェアは、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタ論理、ディスクリートハードウェアコンポーネント、あるいは本明細書に記載された機能を実行するように設計されたそれらの任意の組合せで実装または実行することができる。汎用プロセッサはマイクロプロセッサであってよいが、代替として、プロセッサは任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械のいずれかでよい。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、あるいは他の何らかのそのような構成として実装され得る。代替として、いくつかのステップまたは方法は、所与の機能に固有の回路によって実行され得る。
【００７７】
1つまたは複数の例示的な態様では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せに実装され得る。ソフトウェアに実装される場合、機能は、1つまたは複数の命令あるいはコードとして、非一時的コンピュータ可読媒体または非一時的プロセッサ可読媒体上に記憶される。本明細書で開示された方法またはアルゴリズムのステップは、非一時的コンピュータ可読またはプロセッサ可読記憶媒体上に存在できるプロセッサ実行可能ソフトウェアモジュール内で具現化することができる。非一時的コンピュータ可読、サーバ可読、またはプロセッサ可読記憶媒体は、コンピュータまたはプロセッサによってアクセスされ得る任意の記憶媒体でよい。限定ではなく例として、そのような非一時的コンピュータ可読またはプロセッサ可読媒体は、RAM、ROM、EEPROM、フラッシュメモリ、CD-ROM、または他の光ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶デバイス、あるいは、命令またはデータ構造の形式で所望のプログラムコードを記憶するために使用され得る、およびコンピュータによってアクセスされ得る、他の任意の媒体を含み得る。本明細書で使用される場合、ディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)、レーザディスク、光ディスク、デジタル多用途ディスク(DVD)、フロッピーディスク、およびブルーレイディスクを含み、ディスク(disk)は、通常、磁気的にデータを再生し、ディスク(disc)は、レーザで光学的にデータを再生する。上記の組合せも、非一時的コンピュータ可読およびプロセッサ可読媒体の範囲内に含まれる。さらに、方法またはアルゴリズムの動作は、コンピュータプログラム製品に組み込まれ得る、非一時的プロセッサ可読媒体および/またはコンピュータ可読媒体上のコードおよび/または命令の、1つまたは任意の組合せ、あるいはそのセットとして存在し得る。
【００７８】
開示された実施形態の上記の説明は、いかなる当業者も本発明を作成または使用することを可能にするために提供される。これらの実施形態への様々な修正が当業者には容易に明らかであり、本明細書に定義された一般原理は、本発明の趣旨および範囲を逸脱することなしに他の実施形態に適用され得る。したがって、本発明は、本明細書に示された実施形態に限定されることを意図するものではなく、以下の特許請求の範囲ならびに本明細書で開示された原理および新規の特徴に矛盾しない最も広い範囲を与えられるものである。
【符号の説明】
【００７９】
100  通信ネットワークシステム
102  受信機デバイス
104  セルラータワーまたは基地局
106  セルラー接続
108  サーバ
108  コンテンツソースサーバ
109  ルータ
110  インターネット
112  サーバ
114  ワイヤレスアクセスポイント
116  メディアキャプチャデバイス
117  ワイヤード接続
118  接続
400  方法
401  ブロック
402  ブロック
404  ブロック
406  ブロック
408  決定ブロック
410  ブロック
412  ブロック
414  ブロック
500  方法
502  ブロック
504  ブロック
506  ブロック
508  ブロック
510  ブロック
514  ブロック
516  ブロック
700  方法
900  方法
902  ブロック
1002  プレイリストファイル
1004  メディア情報
1006  分割方式表示
1008  プレイリストファイル
1008  スケーラブルセグメントリスト
1010  メディアセグメントリスト
1012  表現
1014  分割方式ID
1016  再構築ルール
1018  スケーラブルセグメントID
1020  対応する表現ID
1022  スケーラブルセグメントの開始時刻
1022  スケーラブルセグメントの終了時刻
1026  対応するメディアセグメントID
1028  メディアセグメントID
1030  メディアセグメント開始時刻
1032  メディアセグメント停止時刻
1034  対応するスケーラブルセグメントID
1035  セグメントタイムライン
1100  モバイルデバイス
1102  プロセッサ
1104  内部メモリ
1106  タッチスクリーンディスプレイ
1108  アンテナ
1110  内部メモリ
1112a  物理的なボタン
1112b  物理的なボタン
1116  セルラー電話トランシーバ
1118  電源ボタン
1210  ラップトップコンピュータ
1210  コンピュータデバイス
1211  プロセッサ
1212  揮発性メモリ
1212  ディスクドライブ
1214  フロッピーディスク
1215  コンパクトディスク(CD)ドライブ
1217  タッチパッド
1218  キーボード
1219  ディスプレイ
1300  サーバ
1301  プロセッサ
1302  揮発性メモリ
1303  ディスクドライブ
1304  ネットワークアクセスポート
1306  コンパクトディスク(CD)またはDVDディスクドライブ
1307  ネットワーク
【図１】
2016517675.tif 000006
【図２Ａ】
2016517675.tif 000007
【図２Ｂ】
2016517675.tif 000008
【図３】
2016517675.tif 000009
【図４】
2016517675.tif 000010
【図５】
2016517675.tif 000011
【図６】
2016517675.tif 000012
【図７】
2016517675.tif 000013
【図８】
2016517675.tif 000014
【図９】
2016517675.tif 000015
【図１０】
2016517675.tif 000016
【図１１】
2016517675.tif 000017
【図１２】
2016517675.tif 000018
【図１３】
2016517675.tif 000019
【国際調査報告】
2016517675.tif 000020
2016517675.tif 000021
2016517675.tif 000022
2016517675.tif 000023
2016517675.tif 000024
2016517675.tif 000025