JP5788101B2 - メディアデータのネットワークストリーミング - Google Patents

メディアデータのネットワークストリーミング Download PDF

Info

Publication number
JP5788101B2
JP5788101B2 JP2014534761A JP2014534761A JP5788101B2 JP 5788101 B2 JP5788101 B2 JP 5788101B2 JP 2014534761 A JP2014534761 A JP 2014534761A JP 2014534761 A JP2014534761 A JP 2014534761A JP 5788101 B2 JP5788101 B2 JP 5788101B2
Authority
JP
Japan
Prior art keywords
segment
media data
data
access point
stream access
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014534761A
Other languages
English (en)
Other versions
JP2014531878A (ja
Inventor
ゴードン・ケント・ウォーカー
マイケル・ジー・ルビー
Original Assignee
クアルコム,インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by クアルコム,インコーポレイテッド filed Critical クアルコム,インコーポレイテッド
Publication of JP2014531878A publication Critical patent/JP2014531878A/ja
Application granted granted Critical
Publication of JP5788101B2 publication Critical patent/JP5788101B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Description

本出願は、2011年10月5日に出願された米国仮出願第61/543,792号、および2012年9月19日に出願された米国仮出願第61/703,174号の利益を主張するものであり、これらの米国仮出願の各々の内容全体が参照によって本明細書に組み込まれている。
本開示は、符号化メディアデータの記憶および転送に関する。
デジタルビデオ機能は、デジタルテレビ、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップコンピュータまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、ビデオ会議デバイスなどを含む、幅広いデバイスに組み込まれ得る。デジタルビデオデバイスは、MPEG-2、MPEG-4、ITU-T H.263またはITU-T H.264/MPEG-4、Part 10、Advanced Video Coding(AVC)、来るべきHigh Efficiency Video Coding(HEVC)規格、およびそのような規格の拡張によって定義される規格に記載されるような、ビデオ圧縮技法を実装して、デジタルビデオ情報をより効率的に送信および受信する。
ビデオ圧縮技法は、空間的予測および/または時間的予測を実行して、ビデオシーケンスに固有の冗長性を低減または除去する。ブロックベースのビデオコーディングの場合、ビデオフレームまたはスライスがブロックに区分され得る。各ブロックはさらに区分され得る。イントラコード化(I)フレームまたはスライスにおけるブロックは、近接ブロックに関する空間的予測を使用して符号化される。インターコード化(PまたはB)フレームまたはスライスにおけるブロックは、同じフレームもしくはスライスにおける近接ブロックに関する空間的予測または他の参照フレームに関する時間的予測を使用し得る。
ビデオデータが符号化された後、ビデオデータは送信または記憶のためにパケット化され得る。ビデオデータは、ITU-T H.264/AVCのような、国際標準化機構(ISO)によるメディアファイルのフォーマットおよびその拡張などの、種々の規格のいずれかに準拠するビデオファイルへと、組み立てられ得る。そのようなパケット化されたビデオデータは、ネットワークストリーミングを使用したコンピュータネットワークを介した送信のような、種々の方法で転送され得る。
一般に、本開示は、ネットワークを通じてメディアデータをストリーミングするための技法について説明する。より詳細には、本開示の態様は、たとえば、動的適応ストリーミングオーバーHTTP(DASH)に従って、ネットワークを通じてメディアデータをストリーミングすることに関連するレイテンシを低減することに関する。いくつかの例では、本開示の技法は、セグメントの開始点においてストリームアクセスポイント(SAP)を欠くメディアデータのセグメントを形成するステップを含む。たとえば、1つまたは複数のセグメントは、セグメント全体にわたってSAPを欠くこと、またはセグメントの開始点以外の位置においてSAPを含むことがある。一例として、セグメントの開始点以外の位置におけるSAPが、強制SAP、すなわち、該当する規格によって規定されているSAPの代わりに使用され得る。
一例では、方法が、メディアデータの第1のセグメントを受信するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、メディアデータの第2のセグメントを受信するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第1のセグメントのメディアデータの少なくとも一部分に関連して、第2のセグメントのメディアデータの少なくとも一部分を復号するステップとを含む。
別の例では、デバイスが、メディアデータの第1のセグメントを受信するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、メディアデータの第2のセグメントを受信するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第1のセグメントのメディアデータの少なくとも一部分に関連して、第2のセグメントのメディアデータの少なくとも一部分を復号するステップとを行うように構成される1つまたは複数のプロセッサを含む。
別の例では、デバイスが、メディアデータの第1のセグメントを受信するための手段であって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、手段と、メディアデータの第2のセグメントを受信するための手段であって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠く、手段と、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第1のセグメントのメディアデータの少なくとも一部分に関連して、第2のセグメントのメディアデータの少なくとも一部分を復号するための手段とを含む。
別の例では、コンピュータ可読記憶媒体が、実行されると、プロセッサに、メディアデータの第1のセグメントを受信するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、メディアデータの第2のセグメントを受信するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第1のセグメントのメディアデータの少なくとも一部分に関連して、第2のセグメントのメディアデータの少なくとも一部分を復号するステップとを行わせる命令を記憶している。
別の例では、方法が、メディアデータの第1のセグメントを取得するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、第1のセグメントをクライアントデバイスに送るステップと、メディアデータの第2のセグメントを取得するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠き、第2のセグメントのメディアデータの少なくとも一部分は、第1のセグメントのメディアデータの一部分に関連してコード化される、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第2のセグメントをクライアントデバイスに送るステップとを含む。
別の例では、デバイスが、メディアデータの第1のセグメントを取得するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、第1のセグメントをクライアントデバイスに送るステップと、メディアデータの第2のセグメントを取得するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠き、第2のセグメントのメディアデータの少なくとも一部分は、第1のセグメントのメディアデータの一部分に関連してコード化される、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第2のセグメントをクライアントデバイスに送るステップとを行うように構成される1つまたは複数のプロセッサを含む。
別の例では、デバイスが、メディアデータの第1のセグメントを取得するための手段であって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、手段と、第1のセグメントをクライアントデバイスに送るための手段と、メディアデータの第2のセグメントを取得するための手段であって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠き、第2のセグメントのメディアデータの少なくとも一部分は、第1のセグメントのメディアデータの一部分に関連してコード化される、手段と、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第2のセグメントをクライアントデバイスに送るための手段とを含む。
別の例では、コンピュータ可読記憶媒体が、実行されると、プロセッサに、メディアデータの第1のセグメントを取得するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、第1のセグメントをクライアントデバイスに送るステップと、第2のセグメントを取得するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠き、第2のセグメントのメディアデータの少なくとも一部分は、第1のセグメントのメディアデータの一部分に関連してコード化される、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第2のセグメントをクライアントデバイスに送るステップとを行わせる命令を記憶している。
1つまたは複数の例の詳細が、以下の添付の図面および説明において述べられる。他の特徴、目的、および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。
ネットワークを通じてメディアデータをストリーミングするための技法を実施する、例示的なシステムを示すブロック図である。 本開示の態様による、例示的な取出しユニットを示すブロック図である。 例示的なマルチディアコンテンツの要素を示す概念図である。 本開示の態様による、ビデオデータの例示的なセグメントを示すブロック図である。 本開示の技法を実行するための例示的な方法を示すフローチャートである。 一連のコード化ビデオフレームおよびビデオフレームを含むセグメントを示す概念図である。 IDR間隔によって異なるエラー秒を示す実証的テスト結果を示すグラフである。 前方向誤り訂正(FEC)による実証的テスト結果の別の例を示すグラフである。 (プレゼンテーション時間における)様々なIDR間隔におけるセグメントのビットレートを示す実証的テスト結果を示すグラフである。 様々なピーク信号対雑音比(PSNR)を平均オピニオン評点(MOS)に対して示す1組のグラフである。 FECを伴う場合と伴わない場合の両方における様々なデータバースト間隔のエラー秒数を示す実証的テスト結果を示すグラフである。 様々なセグメント持続時間のIDR間隔の様々な例を示す概念図である。 ストリームアクセスポイント(SAP)を含まない表現の1つまたは複数のセグメントを送るための例示的な方法を示すフローチャートである。 DASHライブおよび低レイテンシライブプロファイルのデータ構成の例を示す概念図である。 物理層における例示的なDASHライブおよびDASH低レイテンシライブプロファイルのセグメント当たりビットレートを示す概念図である。 低レイテンシライブセグメントのピークツーピークビットレート変動を最小化するための技法を示す概念図である。 シーン変化IDRフレームが強制IDRフレームと同時に発生する、DASHライブおよびDASH低レイテンシライブプロファイルに対応する例示的な表現を示す概念図である。 同時に発生しないシーン変化IDRフレームが存在する場合におけるピークツーピークビットレート変動を最小化するための技法を示す概念図である。 シーン変化IDRフレームを考慮するほぼ最適な強制IDRピクチャシーケンスを示す概念図である。 本開示のいくつかの技法による表現を形成するための別の例示的な方法を示すフローチャートである。
一般に、本開示は、ネットワークを通じて、オーディオデータおよびビデオデータのようなマルチメディアデータをストリーミングするための技法について説明する。本開示の技法は、動的適応ストリーミングオーバーHTTP(DASH)に関連して使用され得る。本開示は、ネットワークストリーミングに関連して実行され得る様々な技法について説明し、それらの技法のいずれかまたはすべては、単独で、または任意の組合せで実施され得る。以下でより詳しく説明されるように、ネットワークストリーミングを実行する様々なデバイスは、本開示の技法を実施するように構成され得る。
DASHとネットワークを通じてデータをストリーミングするための同様の技法とに従って、(テキスト重畳または他のデータも含み得る、動画または他のオーディオ/ビデオコンテンツなどの)マルチメディアコンテンツが、種々の方法で、かつ種々の特性とともに符号化され得る。コンテンツ準備デバイスは、同じマルチメディアコンテンツの複数の表現を形成し得る。各表現は、コーディング特性およびレンダリング特性のような、特性の特定のセットに対応して、様々なコーディング能力およびレンダリング能力を有する種々の異なるクライアントデバイスによって使用可能なデータを提供することができる。その上、様々なビットレートを有する表現は、帯域幅の適応を可能にし得る。すなわち、クライアントデバイスは、現在利用可能な帯域幅の量を判定し、利用可能な帯域幅の量とともにクライアントデバイスのコーディング能力およびレンダリング能力に基づいて、表現を選択することができる。
いくつかの例では、コンテンツ準備デバイスは、表現のセットが共通の特性のセットを有することを示すことができる。コンテンツ準備デバイスは次いで、セット中の表現が帯域幅の適応に使用され得るので、セット中の表現が適応セットを形成することを示すことができる。場合によっては、適応セットは「表現グループ」と呼ばれることもある。セット中の表現は、ビットレート、解像度、および/またはフレームレートが異なり得るが、それ以外は実質的に同じ特性を共有し得る。このようにして、クライアントデバイスは、マルチメディアコンテンツの適応セットに関する共通の特性の様々なセットを判定し、クライアントデバイスのコーディング能力およびレンダリング能力に基づいて、適応セットを選択することができる。次いで、クライアントデバイスは、帯域幅の利用可能性に基づいて、選択された適応セット中の複数の表現を適応的に切り替えることができる。
コンテンツ準備デバイスは、3GPP(Third Generation Partnership Project)によって規定されたフォーマットによるメディアプレゼンテーション記述(MPD)ファイルなどのマニフェストファイルの様々な部分に別個のネットワークロケーションを提供することもできる。すなわち、マニフェストファイルの様々な部分は、たとえば、ユニフォームリソースロケータ(URL)などの様々なユニフォームリソース識別子(URI)によって独立してアドレス可能であり得る。マニフェストファイルの最初の部分は、マニフェストファイルの別の部分のURI、URL、または他のロケーション識別子を含み得る。たとえば、マニフェストファイルの第1の部分は、上記で説明したように適応セットの共通の特性の説明を含み得る。
適応セットの各々は、それぞれの適応セットにおける表現のメディアデータのロケーションを示すデータを含み得る、マニフェストファイルのそれぞれの異なる部分に関連付けられ得る。このようにして、クライアントデバイスは、マニフェストファイルの第1の部分を受信し、適切な適応セットを選択し、選択された適応セットに関するマニフェストファイルの別の部分を取り出し、選択されたグループの表現を選択し、マニフェストファイルの他の部分を使用して、選択された表現のデータを取り出すことができる。さらに、クライアントデバイスは、マニフェストファイルの他の部分、すなわち、選択された適応セットに固有の部分を使用して、変化するネットワーク帯域幅に適応することができる。
DASHは、ライブコンテンツ、すなわち、たとえばスポーツ行事、報道価値のある出来事、または視聴者が実質的にリアルタイムで見たいと思う他の事象の最中に生で記録されるメディアコンテンツのストリーミングの文脈で使用されることもある。たとえば、Enhanced Multimedia Broadcast Multicast Service(eMBMS)が、実質的にリアルタイムで形成されるDASHセグメントをストリーミングするために使用され得る。できるだけリアルタイムに近い状態でコンテンツを見ることを視聴者が望むので、レイテンシ(すなわち、事象が発生してから視聴者が事象を見ることができるようになるまでの遅延)を低減する技法が大いに望ましい。本開示は、以下でより詳細に説明するように、レイテンシを低減するために使用され得る技法について説明する。
メディアコンテンツの表現のセグメントのようなビデオファイルは、ISOベースメディアファイルフォーマット、Scalable Video Coding(SVC)ファイルフォーマット、Advanced Video Coding(AVC)ファイルフォーマット、Third Generation Partnership Project(3GPP)ファイルフォーマット、および/またはMultiview Video Coding(MVC)ファイルフォーマット、または他の同様のビデオファイルフォーマットのうちのいずれかに従ってカプセル化されたビデオデータに準拠し得る。
ISOベースメディアファイルフォーマットは、メディアの交換、管理、編集、および提示を支援するフレキシブルで拡張可能なフォーマットで提示するための、時限のメディア情報を格納するように設計される。ISOベースメディアファイルフォーマット(ISO/IEC14496-12:2004)は、時間に基づくメディアファイルのための一般的な構造を定義する、MPEG-4 Part-12で規定される。ISOベースメディアファイルフォーマットは、H.264/MPEG-4 AVCビデオ圧縮のサポートを定義されるAVCファイルフォーマット(ISO/IEC14496-15)、3GPPファイルフォーマット、SVCファイルフォーマット、およびMVCファイルフォーマットのようなファミリ中の、他のファイルフォーマットの基礎として使用される。3GPPファイルフォーマットおよびMVCファイルフォーマットは、AVCファイルフォーマットの拡張である。ISOベースメディアファイルフォーマットは、オーディオビジュアル表現のような、メディアデータの時限のシーケンスの、タイミング、構造、およびメディア情報を含む。ファイル構造は、オブジェクト指向であってよい。ファイルは、非常に簡単に基本的なオブジェクトに分解することができ、オブジェクトの構造はオブジェクトのタイプから示唆される。
ISOベースメディアファイルフォーマット(およびその拡張)に準拠するファイルは、「ボックス」と呼ばれる一連のオブジェクトとして形成され得る。ISOベースメディアファイルフォーマットにおけるデータがボックスに格納され得るので、ファイル内に他のデータが格納される必要はなく、ファイル内のボックスの外側にデータがある必要はない。これは、特定のファイルフォーマットによって要求される任意の最初の特徴を含む。「ボックス」は、一意のタイプの識別子および長さによって定義されたオブジェクト指向のビルディングブロックであり得る。通常は、1つのプレゼンテーションが1つのファイルに格納され、メディアプレゼンテーションは自己完結型である。動画コンテナ(動画ボックス)は、メディアのメタデータを格納することができ、ビデオおよびオーディオフレームは、メディアデータコンテナに格納されてよく、他のファイル中にあってもよい。
表現(運動シーケンス)は、セグメントと呼ばれることがあるいくつかのファイルに格納され得る。タイミング情報およびフレーミング(位置およびサイズの)情報は一般に、ISOベースメディアファイル中にあり、補助ファイルは基本的にあらゆるフォーマットを使用することができる。このプレゼンテーションは、プレゼンテーションを格納するシステムに対して「ローカル」であってよく、またはネットワークもしくは他のストリーム配信機構を介して提供されてよい。
随意のメタデータトラックを使用して、各トラックが有する「興味深い特性」のタグを各トラックにつけることができ、興味深い特性に関する各トラックの値(たとえば、各トラックのビットレート、画面サイズ、または言語)は、グループの他のメンバーとは異なり得る。トラック内のいくつかのサンプルは、特別な特性を有し得るか、または個々に識別され得る。その特性の一例は、同期ポイントである(ビデオIフレームであることが多い)。これらのポイントは、各トラックにおける特別なテーブルによって識別され得る。より一般的には、トラックサンプル間の依存性も、メタデータを使用して文書化され得る。メタデータは、ビデオトラックのように一連のファイルフォーマットサンプルとして構造化され得る。そのようなトラックは、メタデータトラックと呼ばれることがある。各メタデータサンプルは、メタデータステートメントとして構造化され得る。対応するファイルフォーマットサンプルまたはその構成要素であるサンプルについて尋ねられる可能性のある様々な質問に対応する様々な種類のステートメントがある。
メディアがストリーミングプロトコルを通じて配信されるとき、メディアをファイル内での表現方法から変更する必要があり得る。このことの一例は、メディアがリアルタイムトランスポートプロトコル(RTP)を通じて送信される場合である。ファイルにおいて、たとえば、各ビデオフレームは、ファイルフォーマットサンプルとして連続して記憶される。RTPにおいて、これらのフレームをRTPパケットに配置するには、使用されるコーデックに固有のパケット化ルールに従わなければならない。実行時にそのようなパケット化を計算するように、ストリーミングサーバが構成され得る。ただし、ストリーミングサーバの支援のためのサポートがある。
本開示の技法は、たとえば、動的適応ストリーミングオーバーHTTP(DASH)による、HTTPストリーミングなどのネットワークストリーミングプロトコルに適用可能であり得る。HTTPストリーミングにおいて、頻繁に使用される動作には、GETおよび部分GETがある。GET動作は、所与のユニフォームリソースロケータ(URL)または他の識別子、たとえばURIに関連付けられるファイル全体(DASHの文脈ではセグメントと呼ばれることが多い)を取り出す。部分GET動作は、入力パラメータとしてバイト範囲を受信し、ファイルまたはセグメントのうちの、受信されたバイト範囲に対応する連続した数のバイトを取り出す。したがって、部分GET動作は、ファイルまたはセグメント内の1つまたは複数の個々の動画フラグメントを取得できるので、動画フラグメントはHTTPストリーミングのために提供され得る。動画フラグメントにおいて、異なるトラックのいくつかのトラックフラグメントが存在し得ることに留意されたい。HTTPストリーミングにおいて、メディア表現は、再生のためにクライアントにとってアクセス可能な関連マルチメディアコンテンツのタイムラインを表す1つまたは複数のファイルまたはセグメントを含むデータの構造化された集合体であり得る。クライアントは、メディアデータ情報を要求およびダウンロードして、ユーザにストリーミングサービスを提示することができる。代替的に、DASHセグメントは、ブロードキャストまたはマルチキャストプロトコル、たとえばeMBMSを使用して配信され得る。
HTTPストリーミングを使用して3GPPデータをストリーミングする例では、マルチメディアコンテンツのビデオデータおよび/またはオーディオデータに関して複数の表現が存在し得る。そのような表現のマニフェストは、メディアプレゼンテーション記述(MPD)データ構造において定義され得る。メディア表現は、HTTPストリーミングクライアントデバイスにとってアクセス可能なデータの構造化された集合体に相当し得る。HTTPストリーミングクライアントデバイスは、メディアデータ情報を要求およびダウンロードして、クライアントデバイスのユーザにストリーミングサービスを提示することができる。メディア表現は、MPDの更新を含み得るMPDデータ構造で記述され得る。
マルチメディアコンテンツは、1つまたは複数の期間のシーケンスを格納し得る。期間は、MPDにおいてPeriod要素によって画定され得る。各期間は、MPDにおいて属性startを有し得る。MPDは、期間ごとにstart属性およびavailableStartTime属性を含み得る。ライブサービスの場合、期間のstart属性とMPD属性availableStartTimeとの合計が、UTCフォーマットによる期間の利用可能時間、特に、対応する期間における各表現の第1のメディアセグメントを指定し得る。オンデマンドサービスの場合、第1の期間のstart属性は0であり得る。任意の他の期間では、start属性は、対応する期間の開始時間と第1の期間の開始時間との間の時間オフセットを指定し得る。各期間は、次の期間の開始まで、または最後の期間の場合にはメディアプレゼンテーションの終了まで及び得る。期間開始時間は、正確であり得る。期間開始時間は、すべての先行期間のメディアの再生から生じる実際のタイミングを反映することができる。
各期間は、同じメディアコンテンツのための1つまたは複数の表現を格納し得る。表現は、オーディオデータまたはビデオデータの、多数の符号化バージョンの選択肢の1つであり得る。表現は、符号化のタイプなどの様々な特性によって、たとえば、ビデオデータのビットレート、解像度、および/またはコーデック、ならびにオーディオデータのビットレート、言語、および/またはコーデックによって異なり得る。表現という用語は、マルチメディアコンテンツのある特定の期間に対応し、ある特定の方法で符号化された、符号化オーディオデータまたは符号化ビデオデータのあるセクションを指すために使用され得る。
特定の期間の表現が、MPDにおいてgroup属性または適応セット属性によって示され得るグループまたは適応セットに割り当てられ得る。同じ適応セット中の表現は一般に、互いに代替物であると考えられる。たとえば、ある特定の期間のビデオデータの各表現は、同じ適応セットに割り当てられ得るので、表現のうちのいずれもが、対応する期間のマルチメディアコンテンツのビデオデータを表示するための復号のために、選択され得る。いくつかの例では、1つの期間内のメディアコンテンツは、存在する場合には適応セット0からの1つの表現、または各々の非ゼロの適応セットからの最大でも1つの表現の組合せのいずれかによって表され得る。ある期間の各表現のタイミングデータは、期間の開始時間に対して表され得る。
表現は、1つまたは複数のセグメントを含み得る。各表現は、初期化セグメントを含んでよく、または表現の各セグメントは、自己初期化するものであってよい。初期化セグメントは、存在する場合、表現にアクセスするための初期化情報を格納し得る。一般に、初期化セグメントは、メディアデータを格納しない。セグメントは、ユニフォームリソースロケータ(URL)などの識別子によって一意に参照され得る。MPDは、セグメントごとに識別子を提供することができる。いくつかの例では、MPDはまた、URLまたはURIによってアクセス可能なファイル内のセグメントのためのデータに対応し得る、range属性の形式で、バイト範囲を提供することができる。
各表現はまた、1つまたは複数のメディア構成要素を含んでよく、各メディア構成要素は、オーディオ、ビデオ、および/または時限のテキスト(たとえば、クローズドキャプションのための)のような、1つの個々のメディアタイプの符号化バーションに相当し得る。メディア構成要素は、1つの表現内の連続的なメディアセグメントの境界にわたって、時間的に連続的であり得る。
典型的には、DASH規格に準拠するセグメントは一般に、(1)固定ヘッダ、(2)データユニットへのポインタのテーブル、および(3)データユニット自体を含む3つの部分を有する。一例では、セグメントは、下に示すTable 1(表1)に従って形成され得る。
セグメントを送信する役割を担うデバイス(たとえば、サーバデバイス)は一般に、デバイスがポインタのテーブルを適切に構築できるように、データユニットのすべてのサイズがわかるまでセグメントヘッダを送信することができない。したがって、サーバデバイスは一般に、データユニットおよびポインタを組み立て、ヘッダを生成し、単一のユニットとして完全に形成されたセグメントを送信する。代替として、部分GET要求に応答して、サーバは、セグメントの部分(たとえば、指定されたバイト範囲)を送信することができる。しかしながら、本開示の技法の範囲外では、サーバデバイスは、セグメントが完全に形成された後にのみ、たとえば、一般にセグメントの最後に配置されるメディアフラグメントランダムアクセス(MFRA)ボックスが構築された後、部分GET要求を受信する。すなわち、クライアントデバイスが部分GET要求を提出するためには、クライアントデバイスは、MFRAボックス、またはセグメントの特定の部分のロケーションのインジケータ、たとえば瞬時デコーダリフレッシュ(IDR:instantaneous decoder refresh)ピクチャなどの特定のタイプのネットワーク抽象化層(NAL)ユニットのバイトロケーションの指示を有する同様のデータ構造のデータにアクセスする必要がある。
さらに、メディアデータのセグメントを受信するデバイス(たとえば、クライアントデバイス)は一般に、セグメントヘッダおよびデータユニットのすべてが受信されるまでセグメントを処理することができない。したがって、クライアントデバイスは一般に、(たとえば、ヘッダ全体、ポインタのテーブル、およびデータユニットを備えた)完全に形成されたセグメントを、セグメントを復号し表示する前に受信する。あるいは、クライアントデバイスは、上記で説明したように、MFRAボックスのデータを使用して、セグメントの部分(たとえば、1つまたは複数の指定されたバイト範囲)を取り出すことができる。しかしながら、この場合も、本開示の技法の範囲外において、クライアントデバイスによってセグメントの特定のバイト範囲にアクセスすることは、セグメントが完全に形成された後にのみ実行される。
セグメント全体がネットワークを通じてセグメントを送信する前に形成される(また、復号する前に受信される)例では、セグメントの送信とセグメントの復号/再生との間にセグメント1個分のレイテンシがもたらされる。すなわち、サーバデバイスは、セグメント全体を完全に形成し、セグメントをクライアントデバイスに送信する。クライアントデバイスは、完全に形成されたセグメントを受信し、ヘッダデータおよびポインタを使用して、完全なセグメントを復号し表示する。したがって、サーバデバイスが完全なセグメントを形成し、クライアントデバイスが再生前に完全なセグメントを受信するので、完全なセグメント1個分のレイテンシがもたらされる。
一例では、説明のために、セグメントが再生時間においてビデオデータの1秒を含み得る。すなわち、サーバデバイスは、セグメントにビデオデータの丸々1秒(すなわち、復号され、再生されるときに、1秒の再生持続時間をもたらし得るデータ量)をパッケージ化(たとえば、符号化およびカプセル化)し、1秒の長さのセグメントをクライアントデバイスに送信することができる。次いでクライアントデバイスは、1秒の長さのセグメントのヘッダおよびデータユニットのすべてを受信し、セグメントを表示する前にセグメント全体を復号する。したがって、クライアントデバイスが、完全なセグメントが受信されるまで復号/再生を開始しないので、1秒のレイテンシがもたらされ得る。
本開示の態様は一般に、メディアデータの1つまたは複数のセグメントをストリーミングすることに関連するレイテンシを低減することを対象とする。一例では、本開示の技法は、メディアデータのセグメントの送信スケジュールを最適化することを含む。すなわち、本開示の態様によれば、ネットワークを通じてセグメントを送信する役割を担うデバイス(たとえば、以下で図1に関してより詳細に説明するサーバデバイス)が、メディアデータを、ネットワークを通じて送信するのに適した複数のセグメントに分割することができ、この場合にセグメントは必ずしも独立して復号可能であるとは限らない。
たとえば、セグメントは、瞬時デコーダリフレッシュ(IDR)ピクチャ、クリーンランダムアクセス(CRA)ピクチャ、またはランダムアクセスに関連する他のそのようなピクチャなどのストリームアクセスポイント(SAP)を含む必要がない。代わりに、セグメントのうちの1つは、SAPを含むことができ、他のセグメントは、SAPに関連して、たとえば直接SAPに関連して、またはSAPに関連してコード化された他のビデオデータに関連してコード化されるビデオデータを含むことができる。それによって、コンテンツ準備デバイスは、セグメントの各々にSAPを含めることなく、素早くセグメントを作って送ることができる。このようにして、SAPを含まないセグメントを送ることによって、これらの技法に従ってコード化される表現のビットレートは依然として、各セグメントがSAPを含む表現のビットレートと実質的に同じものであり得るが、本開示の技法によれば、セグメントは格段に短い再生持続時間を表し得るので、レイテンシが低減され得る。
代替的に、セグメントはストリームアクセスポイントを含むが、その場所はセグメントの開始点ではない場合がある。概して、関連プロファイルは、ランダムアクセスを許容するために、IDRピクチャが必要とされる時間を指定し得る。関連規格によって指定された時間に発生するIDRピクチャは、「強制IDR」ピクチャと考えられ得る。具体的には、従来では、そのような強制IDRピクチャは、セグメントのすべてのピクチャが適切に復号され得るように、(復号順序による)セグメントの開始点において発生する。しかしながら、本開示は、ときにはビデオコーディングデバイスが、たとえばシーン変化に順応するために、セグメントに非強制IDRピクチャを挿入する場合があることを認識している。すなわち、ビデオエンコーダは、シーン変化に対応するピクチャをイントラコーディングすることが、そのピクチャをインターコーディングすることよりも有益であると判定する場合がある。本開示は、そのようなシーン変化IDRピクチャを、強制IDRピクチャの代替または追加として使用することを提案する。
すなわち、セグメントが、セグメントの開始点でIDRピクチャが必要とされること(すなわち、「強制IDR」)を関連規格が本来指示する時間に対応するとき、本開示の技法によるデバイスは、セグメントがセグメントの他の場所にIDRピクチャ(たとえば、シーン変化IDR)を含むかどうかを判定することができる。含む場合、デバイスは、セグメントにシーン変化IDRのみを含めて、強制IDRを省略することができる。このようにして、セグメントのビット割振りは、より効率的になることができ、セグメントは依然として、関連規格に事実上適合することができ、その理由は、クライアントデバイスがセグメントのシーン変化IDRからデータを復号し始めることができることにある。さらに、(クライアントデバイスがシーン変化IDRから開始していると仮定すると)本来的に復号可能ではない場合があるシーン変化IDRピクチャに先行するセグメントのデータの取出しを回避するために、クライアントデバイスがシーン変化IDRからストリームを開始できるように、シーン変化IDRに到達するためのバイト範囲またはバイトオフセットを示すデータが提供され得る。
本開示の他の態様によれば、サブセグメントは、サブセグメントヘッダおよび1つまたは複数のデータユニットを含み得る。サブセグメントヘッダは、サブセグメントのデータユニットを指すポインタのテーブルを含み得る。しかしながら、上記のように、サブセグメントのデータユニットは、先行するサブセグメントまたは将来のサブセグメントを参照することがある。たとえば、サブセグメントのデータユニットは、先行するサブセグメントまたは将来のサブセグメントのフレーム(あるいはスライス)を参照するPまたはBフレーム(あるいはPまたはBスライス)を含み得る。
いくつかの例では、そのようなサブセグメントは、独立して復号可能ではないことがある。すなわち、あるサブセグメントは必ずしも、当該先行サブセグメントに続くサブセグメントに対応し得る別のサブセグメントに含まれる参照情報なしに復号可能であるとは限らない。言い換えれば、サブセグメントは将来のサブセグメントを参照することがある。しかしながら、サブセグメントは、独立して復号可能な一定の情報を含んでいることがある。たとえば、サブセグメントは、独立して復号可能なビデオデータの1つまたは複数のIフレームを含んでいることがある。
本開示の態様によれば、サブセグメントは、サブセグメントヘッダおよび1つまたは複数のデータユニットを含み得る。サブセグメントヘッダは、サブセグメントのデータユニットを指すポインタのテーブルを含み得る。しかしながら、上記のように、サブセグメントのデータユニットは、先行するサブセグメントまたは将来のサブセグメントを参照することがある。たとえば、サブセグメントのデータユニットは、先行するサブセグメントまたは将来のサブセグメントのフレーム(あるいはスライス)を参照するPまたはBフレーム(あるいはPまたはBスライス)を含み得る。
いくつかの例では、各サブセグメントは、サブセグメントヘッダを含み得る。たとえば、サブセグメントヘッダは、ビデオ/オーディオ符号化フォーマット、品質レベルなどのような「固定」部分を含み得る。場合によっては、セグメントのヘッダデータ、ならびにサブセグメントヘッダのデータは、セグメント間および/またはサブセグメント間で変化しないことがある。したがって、本開示のいくつかの態様では、ヘッダデータが変化しているかどうかを示すフラグの値を、サーバデバイスは設定することができ、クライアントデバイスは解釈することができる。たとえば、サーバデバイスは、セグメントまたはサブセグメントヘッダが先行セグメントまたは先行サブセグメントと実質的に同様のデータまたは同じデータを含むことを示す「0」にフラグを設定し得る。サーバデバイスは、セグメントまたはサブセグメントヘッダが変化していることを示す「1」にフラグを設定し得る。さらに、クライアントデバイスは、フラグを受信し、あるセグメントから別のセグメントにかけてヘッダデータが変化しているかどうかを解釈することができる。
ビデオデータの複数のサブセグメントを生成し、サブセグメントが形成/符号化されるとそれらをすぐに送信することにより、レイテンシ(たとえば、ストリーミング環境におけるメディアデータの送信、受信、復号、および/または表示に関連するレイテンシ)を低減することができる。たとえば、クライアントデバイスは、サブセグメントの少なくとも一部分を、サブセグメントを受信すると直ちに復号し始めることができる。すなわち、サブセグメントのいくつかのデータユニットは、まだ受信されていない他のサブセグメントのデータユニットを参照し得るが、クライアントデバイスは、データユニットのうちのいくつか(たとえば、サブセグメントに含まれるIフレーム)を直ちに復号し始めることができる。さらに、クライアントデバイスは、一般にサブセグメントに続いてセグメントに関するヘッダを受信すると、セグメント全体を復号し、プレイアウトする準備ができる。
いくつかの例では、本開示の態様に従って複数のサブセグメントを生成し、1つのサブセグメントが形成されるとそれをすぐに送信することは、単にセグメント持続時間全体を短縮するよりも効率的であり得る。すなわち、説明のために上記で提供した例では、セグメントはビデオデータの1秒を含むことができ、これは丸々1秒のレイテンシをもたらし得る。すなわち、セグメントが送信前に完全に形成され、セグメントが再生前に完全に受信され、復号される場合に、丸々1秒のレイテンシがもたらされ得る。レイテンシを低減する1つの方法として、セグメントの持続時間全体を減らすことが考えられる。すなわち、サーバデバイスは、1秒のセグメントを符号化し、送信するのではなく、500ミリ秒のセグメントを符号化し、送信することができる。したがって、この例では、エンドツーエンドレイテンシが1秒から500ミリ秒に低減され得る。
しかしながら、セグメント持続時間を短縮することによってレイテンシを低減すると、ビットストリームにおけるオーバーヘッドデータの割合が増大する(たとえば、それにより効率性が低下する)ことがある。たとえば、上記のように、各セグメントは、セグメント持続時間に生成されるビデオ/オーディオサンプルの数とともにサイズが拡大する部分のほか、固定部分を含むヘッダを含む。セグメント持続時間の減少に伴い、ヘッダの固定部分がもたらす、データを送信することに関連するオーバーヘッドの部分が(比例して)大きくなり始める。一定のビットレートを仮定すれば、オーバーヘッドが増大するのに伴って、実際のメディアデータに使用されるビットが少なくなり得るので、総合効率が低下する。
さらに、いくつかの例では、メディアデータのセグメントは、別のセグメントを参照するのを回避するように構築され得る。すなわち、マルチメディアコンテンツの各セグメントは、いくつかの例では、他のセグメントのデータを参照せず(たとえば、あるセグメントのPフレームまたはBフレームは、別のセグメントのフレームを参照しない)、したがって独立して復号可能であり得る。したがって、そのような例では、セグメント持続時間を短縮するとき、Iフレームの数が増加する一方で、PフレームおよびBフレームの数が減少する。Iフレームが比例的に増加しているビデオデータは、たとえば、Pフレームおよび/またはBフレームの割合が大きくなっているビデオデータほどには、時間的冗長性を利用しない。したがって、所与の平均レートでは、Iフレームの数と表示されるビデオデータの知覚品質との間には反比例関係があり得る。すなわち、可変ビットレートを使用してコード化されているビデオデータは、より固定的なビットレートを使用してコード化されているビデオデータの場合よりも、高い知覚品質を示し得る。
したがって、本開示の態様を使用して、(所与のレートを有する)所与のセグメントの持続時間を維持しつつ、レイテンシを低減することもできる。すなわち、上記の1秒のセグメント持続時間の例において、本開示の態様は、1秒のセグメント持続時間を維持しつつ、セグメントの送信および復号/表示に関連するレイテンシを1秒未満に低減することに関係する。このようにして、メディアデータの知覚品質を維持しつつ、レイテンシを低減することもできる。
本開示の技法は、ブロードキャストネットワーク送信を介したDASHまたは他のストリーミングネットワークプロトコルによるマルチメディアデータの送信に使用され得る。たとえば、サーバデバイスは、ブロードキャストを介した1つまたは複数のクライアントデバイスへの送信に向けて、複数のサブセグメントを有するセグメントを準備することができる。クライアントデバイスは、いくつかの例では、上記で説明したようにセグメントのサブセグメントを含むブロードキャストネットワーク送信を受信することができる。
本開示は、レイテンシを低減するための他の技法についても説明する。具体的には、いくつかの例では、本開示の技法は、(再生時間の点で)比較的短いセグメントを利用するが、セグメントのサブセットのみにおいてストリームアクセスポイント(SAP)を提供することを提案する。このようにして、セグメントが形成されるとすぐにセグメントを送信することができ、クライアントデバイスは、セグメントのデータの復号および表示を、SAPを含むセグメントを受信するとすぐに開始することができる。概して、SAPは、ITU-T H.264/AVC(Advanced Video Coding)における瞬時デコーダリフレッシュ(IDR)ピクチャなどのランダムアクセスポイント(RAP)に対応し得る。いくつかの例では、オープンデコーダリフレッシュ(ODR)ピクチャまたはクリーンランダムアクセス(CRA)ピクチャも、ストリームアクセスポイントおよびランダムアクセスポイントとして使用され得る。
クライアントデバイスはさらに、必ずしもSAPを含む必要はない後続セグメントを受信し、たとえば、参照のために先行セグメントのSAP(またはSAPに関連してコード化された他のフレーム)のデータを利用して、これらの後続セグメントのデータを復号し、表示することができる。セグメントは、必ずしもSAPを含むとは限らないが、従来型のセグメントヘッダを有する従来型のセグメントとして構造化され得る。代替的に、変更されたセグメントヘッダに関して本明細書で説明する技法(たとえば、ヘッダデータが変化したどうかを示すフラグ、ならびに固定部分および変動部分を有するヘッダの使用)と同様の技法を、SAPを含むこと、または含まないことがある表現中のセグメントに適用することもできる。その上、いくつかの例では、セグメントのデータは、後続セグメントのデータに関連してコード化され得る。
図1は、ネットワークを通じてメディアデータをストリーミングするための技法を実施する、例示的なシステム10を示すブロック図である。この例では、システム10は、コンテンツ準備デバイス20、サーバデバイス60、およびクライアントデバイス40を含む。クライアントデバイス40およびサーバデバイス60は、インターネットを含み得るネットワーク74によって通信可能に結合される。いくつかの例では、コンテンツ準備デバイス20およびサーバデバイス60も、ネットワーク74もしくは別のネットワークによって結合されてよく、または直接通信可能に結合されてよい。いくつかの例では、コンテンツ準備デバイス20およびサーバデバイス60は、同じデバイスを含み得る。
図1の例では、コンテンツ準備デバイス20は、オーディオソース22およびビデオソース24を含む。オーディオソース22は、たとえば、オーディオエンコーダ26によって符号化されるべきキャプチャされたオーディオデータを表す電気信号を生成する、マイクロフォンを含み得る。あるいは、オーディオソース22は、以前に記録されたオーディオデータを記憶する記憶媒体、コンピュータ化されたシンセサイザのようなオーディオデータ生成器、またはオーディオデータの任意の他のソースを含み得る。ビデオソース24は、ビデオエンコーダ28によって符号化されるべきビデオデータを生成するビデオカメラ、以前に記録されたビデオデータで符号化された記憶媒体、コンピュータグラフィックスソースのようなビデオデータ生成ユニット、またはビデオデータの任意の他のソースを含み得る。コンテンツ準備デバイス20は必ずしも、すべての例においてサーバデバイス60に通信可能に結合されるとは限らないが、サーバデバイス60によって読み取られる別個の媒体に、マルチメディアコンテンツを記憶することができる。
生のオーディオデータおよびビデオデータは、アナログデータまたはデジタルデータを含み得る。アナログデータは、オーディオエンコーダ26および/またはビデオエンコーダ28によって符号化される前にデジタル化され得る。オーディオソース22は、話している参加者から、その参加者が話している間オーディオデータを取得することができ、ビデオソース24は、話している参加者のビデオデータを同時に取得することができる。他の例では、オーディオソース22は、記憶されたオーディオデータを含むコンピュータ可読記憶媒体を含んでよく、ビデオソース24は、記憶されたビデオデータを含むコンピュータ可読記憶媒体を含み得る。このようにして、本開示で説明される技法は、生の、ストリーミングの、リアルタイムのオーディオデータおよびビデオデータに、または、保管された、以前に記録されたオーディオデータおよびビデオデータに、適用され得る。
ビデオフレームに対応するオーディオフレームは一般に、ビデオフレーム内に格納されたビデオソース24によってキャプチャされたビデオデータと同じときに、オーディオソース22によってキャプチャされたオーディオデータを格納する、オーディオフレームである。たとえば、話している参加者が一般に話すことによってオーディオデータを生成している間、オーディオソース22はオーディオデータをキャプチャし、ビデオソース24は同時に、すなわちオーディオソース22がオーディオデータをキャプチャしている間に、話している参加者のビデオデータをキャプチャする。したがって、オーディオフレームは、1つまたは複数の特定のビデオフレームに時間的に対応し得る。したがって、ビデオフレームに対応するオーディオフレームは一般に、オーディオデータおよびビデオデータが同時にキャプチャされた状況に対応し、その状況に対して、オーディオフレームおよびビデオフレームがそれぞれ、同時にキャプチャされたオーディオデータおよびビデオデータを含む。
いくつかの例では、オーディオエンコーダ26は、各符号化オーディオフレームにおいて、符号化オーディオフレームのオーディオデータが記録された時間を表すタイムスタンプを符号化することができ、同様に、ビデオエンコーダ28は、各符号化ビデオフレームにおいて、符号化ビデオフレームのビデオデータが記録された時間を表すタイムスタンプを符号化することができる。そのような例では、ビデオフレームに対応するオーディオフレームは、タイムスタンプを含むオーディオフレームおよび同じタイムスタンプを含むビデオフレームを含み得る。コンテンツ準備デバイス20は、オーディオエンコーダ26および/またはビデオエンコーダ28がタイムスタンプを生成する場合に依拠するか、またはオーディオソース22およびビデオソース24がそれぞれオーディオデータおよびビデオデータをタイムスタンプに関連付けるために使用し得る、内部クロックを含むことができる。
いくつかの例では、オーディオソース22は、オーディオデータが記録された時間に対応するデータをオーディオエンコーダ26に送ることができ、ビデオソース24は、ビデオデータが記録された時間に対応するデータをビデオエンコーダ28に送ることができる。いくつかの例では、オーディオエンコーダ26は、符号化オーディオデータにおいて、符号化オーディオデータの相対時間的順序を示すが、オーディオデータが記録された絶対時間を必ずしも示すとは限らないシーケンス識別子を符号化することができ、同様に、ビデオエンコーダ28も、符号化ビデオデータの相対時間的順序を示すシーケンス識別子を使用することができる。同様に、いくつかの例では、シーケンス識別子がタイムスタンプにマップされるか、あるいはタイムスタンプと相関することがある。
オーディオエンコーダ26は一般に、符号化オーディオデータのストリームを生成する一方、ビデオエンコーダ28は、符号化ビデオデータのストリームを生成する。データの各々の個別のストリーム(オーディオかビデオかにかかわらず)は、エレメンタリストリームと呼ばれ得る。エレメンタリストリームは、表現の、単一のデジタル的にコード化された(場合によっては圧縮された)構成要素である。たとえば、表現の符号化されたビデオまたはオーディオの部分は、エレメンタリストリームであり得る。エレメンタリストリームは、ビデオファイル内にカプセル化される前に、パケット化されたエレメンタリストリーム(PES:packetized elementary stream)に変換され得る。同じ表現内で、ストリームIDが、あるエレメンタリストリームに属するPESパケットを他のエレメンタリストリームに属するPESパケットと区別するために使用され得る。エレメンタリストリームのデータの基本単位は、パケット化されたエレメンタリストリーム(PES)パケットである。したがって、コード化ビデオデータは一般に、エレメンタリビデオストリームに対応する。同様に、オーディオデータは、1つまたは複数のそれぞれのエレメンタリストリームに対応する。
多くのビデオコーディング規格のように、H.264/AVCは、シンタックス、セマンティクス、エラーのないビットストリームのための復号処理を定義し、これらのいずれもが、あるプロファイルまたはレベルに準拠する。H.264/AVCはエンコーダを規定しないが、エンコーダは、生成されたビットストリームがデコーダのための規格に準拠するのを保証する役割を課される。ビデオコーディング規格の文脈では、「プロファイル」は、アルゴリズム、機能、またはツールのサブセット、およびこれらに適用される制約に相当する。H.264規格によって定義されるように、たとえば、「プロファイル」は、H.264規格によって規定される全体のビットストリームシンタックスのサブセットである。「レベル」は、たとえば、デコーダメモリおよび計算のような、デコーダのリソース消費の制限に相当し、これは、ピクチャの解像度、ビットレート、およびマクロブロック(MB)処理速度に関連する。プロファイルは、profile_idc(プロファイルインジケータ)値によってシグナリングされ得るが、レベルは、level_idc(レベルインジケータ)値によってシグナリングされ得る。
たとえば、所与のプロファイルのシンタックスによって課される範囲内で、復号されるピクチャの規定されるサイズのようなビットストリーム中のシンタックス要素のとる値に応じて、エンコーダおよびデコーダの性能に大きい変動を要求することが依然として可能であることを、H.264規格は認める。多くの用途において、ある特定のプロファイル内でのシンタックスのすべての仮想的な使用を扱うことが可能なデコーダを実装するのは、現実的でも経済的でもないことを、H.264規格はさらに認める。したがって、H.264規格は、ビットストリーム中のシンタックス要素の値に課される制約の規定されたセットとして、「レベル」を定義する。これらの制約は、値に対する単純な制限であり得る。あるいは、これらの制約は、値の算術的な組合せの制約の形式(たとえば、1秒当たりに復号されるピクチャの数と、ピクチャの高さと、ピクチャの幅との積)をとり得る。個々の実装形態が、サポートされる各プロファイルに対して異なるレベルをサポートできることを、H.264規格はさらに実現する。
プロファイルに準拠するデコーダは普通、プロファイル中で定義されるすべての機能をサポートする。たとえば、コーディング機能として、Bピクチャコーディングは、H.264/AVCのベースラインプロファイルではサポートされないが、H.264/AVCの他のプロファイルではサポートされる。あるレベルに準拠するデコーダは、レベル中で定義された制限を超えるリソースを要求しない、あらゆるビットストリームを符号化することが可能であるべきである。プロファイルおよびレベルの定義は、互換性のために有用であり得る。たとえば、ビデオ送信の間、プロファイルとレベルの定義のペアが、送信セッション全体に対して取り決められ合意され得る。より具体的には、H.264/AVCにおいて、レベルは、たとえば、処理される必要があるマクロブロックの数、復号されたピクチャバッファ(DPB:decoded picture buffer)のサイズ、コード化ピクチャバッファ(CPB:coded picture buffer)のサイズ、垂直方向の運動ベクトルの範囲、2つの連続するMBあたりの運動ベクトルの最大の数に対する制限、および、Bブロックが8×8ピクセルよりも小さいサブマクロブロック区画を有し得るかどうかを定義することができる。このようにして、デコーダは、デコーダが適切にビットストリームを復号できるかどうかを判定することができる。
ITU-T H.261、H.262、H.263、MPEG-1、MPEG-2、H.264/MPEG-4 part 10、および来るべきHigh Efficiency Video Coding(HEVC)規格のようなビデオ圧縮規格は、時間的冗長性を低減するために、運動が補われた時間的予測を利用する。ビデオエンコーダ28のようなエンコーダは、いくつかの以前に符号化されたピクチャ(本明細書ではフレームとも呼ばれる)からの運動が補われた予測を使用して、運動ベクトルに従って現在のコード化ピクチャを予測することができる。通常のビデオコーディングには、3つの主要なピクチャタイプがある。それらは、イントラコード化ピクチャ(「Iピクチャ」または「Iフレーム」)、予測されたピクチャ(「Pピクチャ」または「Pフレーム」)、および双方向予測されたピクチャ(「Bピクチャ」または「Bフレーム」)である。Pピクチャは、時間的順序で現在のピクチャの前にある参照ピクチャを使用することができる。Bピクチャでは、Bピクチャの各ブロックは、1つまたは2つの参照ピクチャから予測され得る。これらの参照ピクチャは、時間的順序で現在のピクチャの前または後に位置し得る。
パラメータセットは一般に、シーケンスパラメータセット(SPS)中にシーケンス層ヘッダ情報を含み、ピクチャパラメータセット(PPS)中に頻繁には変化しないピクチャ層ヘッダ情報を含む。パラメータセットがあれば、この頻繁には変化しない情報は、各シーケンスまたはピクチャに対して繰り返される必要がなく、したがってコーディング効率が向上し得る。さらに、パラメータセットの使用が、ヘッダ情報の帯域外送信を可能にでき、エラーの復元を達成するための冗長な送信の必要がなくなる。帯域外送信では、パラメータセットのNALユニットが、他のNALユニットとは異なるチャネルで送信される。
図1の例では、コンテンツ準備デバイス20のカプセル化ユニット30は、ビデオエンコーダ28からのコード化ビデオデータを含むエレメンタリストリームと、オーディオエンコーダ26からのコード化オーディオデータを含むエレメンタリストリームとを受信する。いくつかの例では、ビデオエンコーダ28およびオーディオエンコーダ26は各々、符号化データからPESパケットを形成するためのパケタイザを含み得る。他の例では、ビデオエンコーダ28およびオーディオエンコーダ26は各々、符号化データからPESパケットを形成するためのそれぞれのパケタイザとインターフェースをとり得る。さらに他の例では、カプセル化ユニット30は、符号化オーディオデータおよび符号化ビデオデータからPESパケットを形成するためのパケタイザを含み得る。
ビデオエンコーダ28は、種々の方法でマルチメディアコンテンツのビデオデータを符号化して、ピクセル解像度、フレームレート、様々なコーディング規格に対する準拠、様々なコーディング規格のための様々なプロファイルおよび/もしくはプロファイルのレベルに対する準拠、1つもしくは複数の表示を有する表現(たとえば、2次元または3次元の再生用)、または他のそのような特性のような、様々な特性を有する様々なビットレートのマルチメディアコンテンツの様々な表現を生成することができる。本開示で使用されるような表現は、オーディオデータとビデオデータとの組合せ、たとえば、1つまたは複数のオーディオエレメンタリストリームと1つまたは複数のビデオエレメンタリストリームとを含み得る。各PESパケットは、PESパケットが属するエレメンタリストリームを特定する、stream_idを含み得る。カプセル化ユニット30は、様々な表現のビデオファイルへとエレメンタリストリームを組み立てる役割を担う。
カプセル化ユニット30は、オーディオエンコーダ26およびビデオエンコーダ28からの表現のエレメンタリストリームのためのPESパケットを受信し、PESパケットから対応するネットワーク抽象化層(NAL)ユニットを形成する。H.264/AVC(Advanced Video Coding)の例では、コード化ビデオセグメントはNALユニットへと編成され、NALユニットは、ビデオ電話、記憶、ブロードキャスト、またはストリーミングのような、「ネットワークフレンドリ」なビデオ表現のアドレッシング適用(addressing application)を実現する。NALユニットは、ビデオコーディング層(VCL)NALユニットおよび非VCL NALユニットに分類され得る。VCLユニットは、コア圧縮エンジンを格納してよく、ブロック、マクロブロック、および/またはスライスレベルのデータを含んでよい。他のNALユニットは、非VCL NALユニットであり得る。いくつかの例では、1つの時間インスタンスにおけるコード化ピクチャは、通常は一次コード化ピクチャとして提示され、1つまたは複数のNALユニットを含み得るアクセスユニットに格納され得る。
非VCL NALユニットは特に、パラメータセットのNALユニットおよびSEI NALユニットを含み得る。パラメータセットは、(シーケンスパラメータセット(SPS)中に)シーケンスレベルヘッダ情報を含み、(ピクチャパラメータセット(PPS)中に)頻繁には変化しないピクチャレベルヘッダ情報を含み得る。パラメータセット(たとえば、PPSおよびSPS)があれば、この頻繁には変化しない情報は、各シーケンスまたはピクチャに対して繰り返される必要がなく、したがってコーディング効率が向上し得る。さらに、パラメータセットの使用が、重要なヘッダ情報の帯域外送信を可能にでき、エラーの復元のための冗長な送信の必要がなくなる。帯域外送信の例では、パラメータセットのNALユニットが、SEI NALユニットなどの他のNALユニットとは異なるチャネルで送信され得る。
補足エンハンスメント情報(SEI)は、VCL NALユニットからコード化ピクチャサンプルを復号するために必要ではない情報を含み得るが、復号、表示、エラーの復元、および他の目的に関係するプロセスを支援し得る。SEIメッセージは、非VCL NALユニットに含まれ得る。SEIメッセージは、いくつかの標準仕様の規範的部分(normative part)であり、したがって、規格に準拠するデコーダの実装において常に必須であるわけではない。SEIメッセージは、シーケンスレベルSEIメッセージまたはピクチャレベルSEIメッセージであり得る。いくつかのシーケンスレベル情報は、SVCの例におけるスケーラビリティ情報SEIメッセージおよびMVCにおける表示スケーラビリティ情報SEIメッセージなどのSEIメッセージに含まれ得る。これらの例示的なSEIメッセージは、たとえば動作点の抽出および動作点の特性に関する情報を伝達することができる。さらに、カプセル化ユニット30は、表現の特性を記述するメディアプレゼンテーション記述子(MPD)などのマニフェストファイルを形成することができる。カプセル化ユニット30は、拡張可能マークアップ言語(XML)に従ってMPDをフォーマットすることができる。
カプセル化ユニット30は、マニフェストファイル(たとえば、MPD)とともに、マルチメディアコンテンツの1つまたは複数の表現のためのデータを、出力インターフェース32に提供することができる。出力インターフェース32は、ユニバーサルシリアルバス(USB)インターフェースのような記憶媒体へ書き込むためのネットワークインターフェースもしくはインターフェース、CDもしくはDVDのライターもしくはバーナー、磁気記憶媒体もしくはフラッシュ記憶媒体へのインターフェース、または、メディアデータを記憶もしくは送信するための他のインターフェースを含み得る。カプセル化ユニット30は、マルチメディアコンテンツの表現の各々のデータを出力インターフェース32に提供することができ、出力インターフェース32は、ネットワーク送信または記憶媒体を介してデータをサーバデバイス60に送信することができる。図1の例では、サーバデバイス60は、各々がそれぞれのマニフェストファイル66および1つまたは複数の表現68A〜68N(表現68)を含む様々なマルチメディアコンテンツ64を記憶する、記憶媒体62を含む。いくつかの例では、出力インターフェース32はネットワーク74にデータを直接送ることもできる。
いくつかの例では、本開示のいくつかの技法によれば、表現68のうちの1つまたは複数は、DASH低レイテンシライブプロファイルに準拠することができる。すなわち、表現68のうちの1つまたは複数は、セグメントの開始点においてストリームアクセスポイントを欠くセグメントを含むことができる。たとえば、1つまたは複数のセグメントは、ストリームアクセスポイントを完全に欠くこと、すなわちストリームアクセスポイントをまったく含まないことがある。追加または代替として、1つまたは複数のセグメントは、(復号順序による)セグメントの開始点以外の位置においてストリームアクセスポイントを含み得る。以下でより詳細に説明するように、これによりセグメントを形成し、コンテンツ準備デバイス20および/またはサーバデバイス60からクライアントデバイス40に対し、レイテンシを低減して送ることができる。
その上、DASH低レイテンシライブプロファイルに準拠する表現のセグメントは、DASHライブプロファイルに準拠する表現のセグメントよりも比較的短くなり得る。すなわち、DASH低レイテンシライブプロファイルのセグメントは、DASHライブプロファイルのセグメントによって表される再生時間の期間よりも短い再生時間の期間を表すことができる。したがって、DASH低レイテンシライブプロファイルのセグメントを、DASHライブプロファイルのセグメントよりも速く形成して送ることができ、これによりDASHライブプロファイルに関するレイテンシを低減することができる。
いくつかの例では、本開示のいくつかの態様によれば、カプセル化ユニット30は、本明細書で説明する技法に従ってデータのサブセグメントを形成するように構成され得る。すなわち、たとえば、カプセル化ユニット30は、メディアデータのセグメントを複数のサブセグメントに分割するように構成され得る。カプセル化ユニット30はサブセグメントを、サブセグメントが形成されるとすぐに出力インターフェース32に提供することができる。次いで、出力インターフェース32はサブセグメントを、ネットワーク74を介してクライアントデバイス40に送ることができる。
そのような例では、カプセル化ユニット30は、独立して復号可能ではないサブセグメントを生成し得る。すなわち、カプセル化ユニット30は、サブセグメントであって、当該先行サブセグメントに続くサブセグメントに対応し得る別のサブセグメントに含まれる参照情報なしに復号できるとは限らないサブセグメントを生成し得る。言い換えれば、カプセル化ユニット30は、将来のサブセグメントを参照するサブセグメントを形成することができる。
カプセル化ユニット30は、セグメントのすべてのサブセグメントに適用されるセグメントヘッダ、ならびにセグメントに含まれるサブセグメントの各々に関するサブセグメントヘッダを生成することができる。以下でより詳細に説明するように、サブセグメントヘッダは、サブセグメント内におけるデータユニットのロケーションを識別するポインタのテーブルを含み得る。さらに、カプセル化ユニット30は、セグメントヘッダデータが変化しているかどうか(たとえば、セグメントヘッダデータが、以前生成されたセグメントと異なるかどうか)を示すフラグを設定することができる。
いくつかの例では、表現68は、適応セットへと分割され得る。上述したように、場合によっては、適応セットは「表現グループ」と呼ばれることもある。すなわち、表現68の様々なサブセットは、コーデック、プロファイルおよびレベル、解像度、表示の数、セグメントのファイルフォーマット、たとえば話者による、復号され提示されるべき表現および/またはオーディオデータとともに表示されるべきテキストの言語または他の特性を特定し得るテキストタイプ情報、カメラの角度または適応セット中の表現の風景の現実世界のカメラの視野を表し得るカメラ角度情報、特定の視聴者に対するコンテンツの適切性を表すレーティング情報のような、特性のそれぞれの共通のセットを含み得る。
マニフェストファイル66は、特定の適応セットに対応する表現68のサブセットを示すデータ、さらには、適応セットの共通の特性を含み得る。マニフェストファイル66はまた、適応セットの個々の表現のための、ビットレートのような個々の特性を表すデータを含み得る。このようにして、適応セットは、簡略化されたネットワーク帯域幅の適応を行うことができる。適応セット中の表現は、マニフェストファイル66の適応セット要素の子要素を使用して示され得る。
サーバデバイス60は、要求処理ユニット70およびネットワークインターフェース72を含む。いくつかの例では、サーバデバイス60は、複数のネットワークインターフェースを含み得る。さらに、サーバデバイス60の機能のいずれかまたはすべてが、ルータ、ブリッジ、プロキシデバイス、スイッチ、または他のデバイスのような、コンテンツ配信ネットワークの他のデバイス上で実装され得る。いくつかの例では、コンテンツ配信ネットワークの中間デバイスは、マルチメディアコンテンツ64のデータをキャッシュし、サーバデバイス60の構成要素に実質的に準拠する構成要素を含み得る。一般に、ネットワークインターフェース72は、ネットワーク74を介してデータを送信および受信するように構成される。
要求処理ユニット70は、記憶媒体62のデータに対するネットワーク要求を、クライアントデバイス40のようなクライアントデバイスから受信するように構成される。たとえば、要求処理ユニット70は、R. Fielding他による、RFC 2616、「Hypertext Transfer Protocol-HTTP/1.1」、Network Working Group、IETF、1999年6月で説明されるような、ハイパーテキスト転送プロトコル(HTTP)バージョン1.1を実装することができる。すなわち、要求処理ユニット70は、HTTP GET要求または部分GET要求を受信して、それらの要求に応答してマルチメディアコンテンツ64のデータを提供するように構成され得る。要求は、たとえば、セグメントのURLを使用して、表現68のうちの1つのセグメントを特定することができる。いくつかの例では、要求はまた、セグメントの1つまたは複数のバイト範囲を特定することができ、したがって、部分GET要求を含む。要求処理ユニット70はさらに、表現68のうちの1つのセグメントのヘッダデータを提供するために、HTTP HEAD要求に対応するように構成され得る。いずれの場合でも、要求処理ユニット70は、クライアントデバイス40のような要求デバイスに、要求されたデータを提供するために、要求を処理するように構成され得る。
追加または代替として、要求処理ユニット70は、ブロードキャストまたはマルチキャストプロトコル、たとえばeMBMSを介してメディアデータを配信するように構成され得る。コンテンツ準備デバイス20は、DASHセグメントおよび/またはサブセグメントを、説明したのと実質的に同じ方法で作成することができるが、サーバデバイス60は、これらのセグメントまたはサブセグメントを、eMBMSまたは別のブロードキャストもしくはマルチキャストネットワークトランスポートプロトコルを使用して配信することができる。たとえば、要求処理ユニット70は、クライアントデバイス40からマルチキャストグループ参加要求を受信するように構成され得る。すなわち、サーバデバイス60は、マルチキャストグループに関連するインターネットプロトコル(IP)アドレスを、クライアントデバイス40を含む、特定のマルチメディアコンテンツ(たとえば、生の事象のブロードキャスト)に関連するクライアントデバイスに通知することができる。次にクライアントデバイス40は、マルチキャストグループに参加することを求める要求を提出することができる。この要求は、ネットワーク74、たとえばネットワーク74を構成するルータを通じて伝搬され、それによりルータに、マルチキャストグループに関連するIPアドレス宛のトラフィックを、クライアントデバイス40などの加入側クライアントデバイスに向けさせることができる。
図1の例で示されるように、マルチメディアコンテンツ64は、メディアプレゼンテーション記述(MPD)に対応し得る、マニフェストファイル66を含む。マニフェストファイル66は、様々な代替的な表現68(たとえば、品質が異なるビデオサービス)の説明を格納してよく、この説明は、たとえば、コーデック情報、プロファイル値、レベル値、ビットレート、および表現68の他の説明のための特性を含み得る。クライアントデバイス40は、メディアプレゼンテーションのMPDを取り出して、表現68のセグメントにどのようにアクセスするかを決定することができる。
特に、取出しユニット52は、クライアントデバイス40の構成データ(図示せず)を取り出して、ビデオデコーダ48の復号能力およびビデオ出力44のレンダリング能力を判定することができる。構成データはまた、クライアントデバイス40のユーザによって選択される言語の選好、クライアントデバイス40のユーザによって設定される深さの選好に対応する1つもしくは複数のカメラ視野、および/または、クライアントデバイス40のユーザによって選択されるレーティングの選好のいずれかまたはすべてを含み得る。取出しユニット52は、たとえば、HTTP GET要求および部分GET要求を提出するように構成されたウェブブラウザまたはメディアクライアントを含み得る。取出しユニット52は、クライアントデバイス40の1つまたは複数のプロセッサまたは処理ユニット(図示せず)によって実行される、ソフトウェア命令に対応し得る。いくつかの例では、取出しユニット52に関して説明された機能のすべてまたは一部は、ハードウェア、ハードウェアの組合せ、ソフトウェア、および/またはファームウェアで実装されてよく、必須のハードウェアは、ソフトウェアまたはファームウェアのための命令を実行するために提供され得る。
取出しユニット52は、クライアントデバイス40の復号能力およびレンダリング能力を、マニフェストファイル66の情報によって示される表現68の特性と比較することができる。取出しユニット52は最初に、マニフェストファイル66の少なくとも一部分を取り出して、表現68の特性を判定することができる。たとえば、取出しユニット52は、本開示の技法に従って、1つまたは複数の適応セットの特性を説明する、マニフェストファイル66の一部分を要求することができる。取出しユニット52は、クライアントデバイス40のコーディング能力およびレンダリング能力によって満たされ得る特性を有する、表現68のサブセット(たとえば、適応セット)を選択することができる。取出しユニット52は次いで、適応セット中の表現に対するビットレートを判定し、ネットワーク帯域幅の現在利用可能な量を判定し、ネットワーク帯域幅によって満たされ得るビットレートを有する表現のうちの1つからセグメントを取り出すことができる。
一般に、表現のビットレートが高くなると、ビデオ再生の品質が高くなる一方、表現のビットレートが低くなると、利用可能なネットワーク帯域幅が縮小したときに、ビデオ再生の品質が十分なものになり得る。したがって、利用可能なネットワーク帯域幅が比較的高いときには、取出しユニット52は、ビットレートが比較的高い表現からデータを取り出すことができ、利用可能なネットワーク帯域幅が低いときには、取出しユニット52は、ビットレートが比較的低い表現からデータを取り出すことができる。このようにして、クライアントデバイス40は、ネットワーク74を通じてマルチメディアデータをストリーミングすることができる一方、ネットワーク74の変化するネットワーク帯域幅の利用可能性に適応することもできる。
追加または代替として、取出しユニット52は、ブロードキャストまたはマルチキャストネットワークプロトコル、たとえばeMBMSまたはIPマルチキャストに従ってデータを受信するように構成され得る。そのような例では、取出しユニット52は、特定のメディアコンテンツに関連するマルチキャストネットワークグループに参加することを求める要求を提出することができる。取出しユニット52はマルチキャストグループに参加した後、サーバデバイス60またはコンテンツ準備デバイス20にさらなる要求を出すことなしに、マルチキャストグループのデータを受信することができる。取出しユニット52は、マルチキャストグループのデータが必要ではなくなったときにマルチキャストグループを離れること、たとえば再生を止めること、または異なるマルチキャストグループにチャネルを変えることを求める要求を出すことができる。
ネットワークインターフェース54は、選択された表現のセグメントのデータを受信し、取出しユニット52に提供することができ、次に取出しユニット52は、セグメントをカプセル化解除ユニット50に提供することができる。カプセル化解除ユニット50は、ビデオファイルの要素を、構成要素であるPESストリームへとカプセル化解除し、PESストリームをパケット化解除して符号化データを取り出し、たとえば、ストリームのPESパケットヘッダによって示されるように、符号化データがオーディオストリームの一部かビデオストリームの一部かに応じて、符号化データをオーディオデコーダ46またはビデオデコーダ48のいずれかに送信することができる。オーディオデコーダ46は、符号化オーディオデータを復号し、復号されたオーディオデータをオーディオ出力42に送信し、一方でビデオデコーダ48は、符号化ビデオデータを復号し、ストリームの複数の表示を含み得る復号されたビデオデータを、ビデオ出力44に送信する。
ビデオエンコーダ28、ビデオデコーダ48、オーディオエンコーダ26、オーディオデコーダ46、カプセル化ユニット30、取出しユニット52、およびカプセル化解除ユニット50は各々、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組合せのような、種々の適切な処理回路のいずれかとして、適宜実装され得る。ビデオエンコーダ28およびビデオデコーダ48の各々は、1つまたは複数のエンコーダまたはデコーダに含まれてよく、これらのいずれもが、結合されたビデオエンコーダ/デコーダ(コーデック)の一部として統合され得る。同様に、オーディオエンコーダ26およびオーディオデコーダ46の各々は、1つまたは複数のエンコーダまたはデコーダに含まれてよく、これらのいずれもが、結合されたコーデックの一部として統合され得る。ビデオエンコーダ28、ビデオデコーダ48、オーディオエンコーダ26、オーディオデコーダ46、カプセル化ユニット30、取出しユニット52、および/またはカプセル化解除ユニット50を含む装置は、集積回路、マイクロプロセッサ、および/または携帯電話のようなワイヤレス通信デバイスを含み得る。
本開示の態様は一般に、ネットワーク74を通じてサーバデバイス60からクライアントデバイス40にメディアデータの1つまたは複数のセグメントをストリーミングすることに関連するレイテンシを最小化することを対象とする。すなわち、本開示の態様によれば、サーバデバイス60は、メディアデータのセグメントを、ネットワーク74を通じた送信に適した複数のサブセグメントに分割することができる。この例では、サーバデバイス60はサブセグメントを、サブセグメントが形成されるとすぐに送信することができる。すなわち、サーバデバイス60は、サブセグメントを送信する前に、2つ以上のサブセグメントが形成されるのを待つ必要がない。さらに、サーバデバイス60は、サブセグメントを送信する前に、サブセグメントのすべてに関するヘッダデータが生成されるのを待つ必要がない。
サブセグメントの形成および/または送信など、サーバデバイス60に起因するいくつかの機能が、1つまたは複数の他の構成要素またはデバイスによって実行され得ることを理解されたい。すなわち、別の例では、コンテンツ準備デバイス20は、ネットワーク74を通じてサブセグメントを形成し、送る役割を担い得る。追加または代替として、いくつかの例によれば、コンテンツ準備デバイス20およびサーバデバイス60は、同じデバイスに高度に統合されるか、または組み込まれ得る。したがって、コンテンツ準備デバイス20、サーバデバイス60、またはそのようなデバイスの組合せはサブセグメントを準備し、サブセグメントが形成されるとそれらをすぐにクライアントデバイス40などのクライアントデバイスに送ることができる。さらに、そのようなデバイスは、ブロードキャストまたはマルチキャストネットワーク送信でサブセグメントを送ることができる。
クライアントデバイス40は、本開示の態様に従って形成されたサブセグメントを受信し、サブセグメントの少なくとも一部分を直ちに復号し始めるように構成され得る。すなわち、サブセグメントのいくつかのデータユニットは、まだ受信されていない他のサブセグメントのデータユニットを参照し得るが、クライアントデバイス40は、データユニットのうちのいくつか(たとえば、サブセグメントに含まれるIフレーム)を直ちに復号し始めることができる。さらに、クライアントデバイス40は、一般にサブセグメントに続いてセグメントに関するヘッダを受信すると、セグメント全体を復号し、プレイアウトする準備ができる。すなわち、クライアントデバイス40は一般に、セグメントに関するヘッダを受信する前に、セグメントのサブセグメントのすべてを受信する。
ビデオデータの複数のサブセグメントを生成し、サブセグメントが符号化されるとそれらをすぐに送信することで、サーバデバイス60によるセグメントの送信、ならびにクライアントデバイス40によるセグメントの受信、復号、および/または表示に関連するレイテンシを低減することができる。
同様に、他の例では、比較的短いセグメントを生成することで、セグメントの送信に関連するレイテンシを低減することもできる。これらのセグメントに対応するプレゼンテーション時間は、適応セット中の表現にわたって固定されてよいが、本明細書で説明するように、各セグメントは必ずしもSAPを含む必要はない。本開示のいくつかの技法によれば、コンテンツ準備デバイス20は、ライブメディアコンテンツを取得すること、すなわち、リアルタイムで発生している事象のオーディオコンテンツおよび/またはビデオコンテンツを記録すること、この記録されたコンテンツを符号化すること、記録されたコンテンツをネットワーク転送に向けて準備すること、ならびに記録されたコンテンツをサーバデバイス60に送ることができる。代替的に、コンテンツ準備デバイス20は、コンテンツをクライアントデバイス40に直接配信することができる。いずれの場合も、コンテンツ準備デバイス20は、少なくとも、SAPを含まないセグメントを形成することができる。
上記で説明したように、コンテンツ準備デバイス20は、従来型のセグメントよりも短い持続時間を有するセグメントを形成することによって、ブロードキャストまたはマルチキャストネットワーク送信に関連するレイテンシを低減するように構成され得る。たとえば、従来型のセグメントは、10秒の再生時間を表すビデオデータを含み得るが、コンテンツ準備デバイス20は、たった1秒の再生時間を表すセグメントを形成することができる。すなわち、これらのセグメント内に含まれるビデオデータは、復号され、対応するフレームレートで提示されるとき、1秒の再生に対応し得る。たとえば、対応するフレームレートが30フレーム毎秒である場合、コンテンツ準備デバイス20によって形成されるセグメントは、30フレームのビデオデータのためのデータ、ならびに対応する量のオーディオデータを含み得る。別の例として、対応するフレームレートが60フレーム毎秒である場合、コンテンツ準備デバイス20は、60フレームのビデオデータを表すコード化ビデオデータ、ならびに対応するオーディオデータを含むセグメントを形成することができる。これは、たとえば、10秒の再生を表すセグメントとは対照的であり、この場合、上述の例ではそれぞれ300フレームおよび600フレームのビデオデータを表すコード化データを含むことになる。
各セグメントによって表される再生持続時間を減らすことによって、コンテンツ準備デバイス20は完全に形成されたセグメントを、たとえばサーバデバイス60またはクライアントデバイス40に対し、特に生の事象を記録するときに、セグメントがより長い再生持続時間を表した場合よりも速く送ることができる。さらに、各セグメントはSAPを含む必要がないので、より短いセグメント(すなわち、比較的短い再生持続時間を表すセグメント)を含むビットストリームが、より長いセグメントを含むビットストリームと実質的に同様のビットレートを有し得る。このようにして、これらの技法は、レイテンシ、すなわち、コンテンツ準備デバイス20によって記録された事象の発生から、事象に対応する再生をクライアントデバイス40の視聴者が見ることができるようになる時間までの経過時間量を低減することに関係する利点を提供することができる。
このようにして、コンテンツ準備デバイス20およびサーバデバイス60は、マルチメディアデータを送るためのデバイスの一例を表し、このデバイスは、メディアデータの第1のセグメントを取得するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、第1のセグメントをクライアントデバイスに送るステップと、メディアデータの第2の後続セグメントを取得するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠き、第2のセグメントのメディアデータの少なくとも一部分は、第1のセグメントのメディアデータの一部分に関連してコード化される、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第2のセグメントをクライアントデバイスに送るステップとを行うように構成される1つまたは複数のプロセッサを含む。
同様に、クライアントデバイス40は、メディアデータを受信するためのデバイスの一例を表し、このデバイスは、メディアデータの第1のセグメントを受信するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、メディアデータの第2のセグメントを受信するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第1のセグメントのメディアデータの少なくとも一部分に関連して、第2のセグメントのメディアデータの少なくとも一部分を復号するステップとを行うように構成される1つまたは複数のプロセッサを含む。
第1のセグメントは、これらの例では、ストリームアクセスポイント、たとえば瞬間デコーダリフレッシュ(IDR)ピクチャ、クリーンランダムアクセス(CRA)ピクチャ、または他の同様のもの(たとえば、任意のイントラコード化ピクチャ(Iピクチャ))を含む完全に形成されたDASHセグメント(または他のメディアファイル)を含むことができる。第2のセグメントも、完全に形成されたDASHセグメントを含むことができるが、そのようなストリームアクセスポイントを含まなくてよい。このようにして、第2のセグメントの部分は、第1のセグメントの部分に関連してコード化(たとえば、符号化または復号)され得る。たとえば、第2のセグメントにおける1つまたは複数のピクチャは、第1のセグメントのピクチャ、たとえば、ストリームアクセスポイントまたはストリームアクセスポイントに関連してコード化されたピクチャに関連してインター予測モードコード化され得る。このようにして、第2のセグメントの1つまたは複数のピクチャは、第1のセグメントの1つまたは複数のピクチャを参照ピクチャとして使用することができる。
このようにして、第2のセグメントはストリームアクセスポイントを含む必要がない。これは、第2のセグメントを(第1のセグメントの参照のために)独立して復号可能ではないものにするが、これにより、第1のセグメントを素早くコード化、カプセル化して送り、それによりレイテンシ(すなわち、事象が発生したときから、クライアントデバイス40のユーザが事象を見ることができるようになるまでの遅延)を低減することもできる。たとえば、コンテンツ準備デバイス20および/またはサーバデバイス60は、第2のセグメントに関する十分なデータを取得する前に、たとえば第2のセグメントのキャプチャ、符号化およびカプセル化の前に、第1のセグメントを送ることができる。
上記で使用した「第1の」および「第2の」という用語は、名目的に言及するものであり、順序的に言及するものではないことを理解されたい。すなわち、「第1のセグメント」は、実際には、マルチメディアデータの順序的な第1のセグメントである必要はなく、代わりに、マルチメディアセグメントのストリームアクセスポイントを含む任意のセグメントであってよい。同様に、第2のセグメントは、第1のセグメントの直後にくる必要はなく、代わりに、第1のセグメントの部分に関連してコード化される部分を含む復号順序による第1のセグメントの後にくる任意のセグメントに対応してよい。第1のセグメントおよび第2のセグメントは、同じ再生持続時間、たとえば、約1秒の再生時間(プレゼンテーション時間とも呼ばれる)を表すことがあるが、表す必要はない。
図2は、取出しユニット52に関連する例示的な構成要素を示すブロック図である。図2の取出しユニット52は、取出しユニット52(図1)に対応するか、または別の異なる取出しデバイスに含まれ得る。この例では、取出しユニット52は、ストリーム管理ユニット80およびソース構成要素90を含む。ソース構成要素90は、メディアファイル記憶処理ユニット92、MPDパーシングユニット94、メディアファイル逆多重化(demux)ユニット96および適応ユニット98およびHTTPコントローラ100を含む。
一般に、取出しユニット52は、特定の通信プロトコルを使用して通信するか、または特定の物理媒体と対話するためのハードウェアおよび/またはソフトウェアを含むことができる。たとえば、取出しユニット52は、HTTPを実装し、HTTPスタックを使用してデータを受信することができ、このHTTPスタックは、TCP/IPならびにネットワークの他の層に関する他の通信プロトコルを含み得る。取出しユニット52は、たとえばサーバデバイス60に対しセグメント(またはセグメントの部分)を求めるHTTP GET要求または部分GET要求をさらに生成することができる。取出しユニット52はまた、ブロードキャストまたはマルチキャストネットワーク送信からデータを受信するために、ブロードキャストまたはマルチキャストプロトコル、たとえばeMBMSまたはIPマルチキャストを実装することができる。取出しユニット52は、送信のデータを取り出すために、ブロードキャストまたはマルチキャストネットワーク送信に加入するように構成され得る。
ソース構成要素90は、1つまたは複数のソースからマルチメディアコンテンツのデータを受信することができる。最初に、ソース構成要素90は、MPDファイルなどのマニフェストファイルを受信することができる。MPDパーシングユニット94は、MPDファイルをパースして、マルチメディアコンテンツの利用可能な表現、ならびに共通の特性を備える表現のグループを含む適応セットおよび表現の特性を判定することができる。時々、ソース構成要素90は、現在のマルチメディアコンテンツに関する更新されたMPDを受信することがあり、この場合、MPDパーシングユニット94は、更新されたMPDをパースし、更新された情報をストリーム管理ユニット80に提供することができる。いくつかの例では、ソース構成要素90は、表現のうちの少なくとも1つを選択することができる一方、他の例では、ソース構成要素90は表現情報をストリーム管理ユニット80に提供することができる。そのような例では、ストリーム管理ユニット80は、表現のうちの少なくとも1つを選択することができる。いずれの場合も、ソース構成要素90はストリーム管理ユニット80に、マルチメディアコンテンツに関するデータを取り出すためのダウンロード情報を送るよう求める要求を送ることができる。
ストリーム管理ユニット80は、選択された表現のデータの取出し元になるソースを選択するように構成され得る。ストリーム管理ユニット80は、いくつかの例では、ストリーム管理ユニット80がデータの取出し元になる特定のソースを選択することを示すいくつかの通知を受信することができる。たとえば、HTTP受信機およびスタックは、HTTP送信のためにストリーム管理ユニット80に利用可能なネットワーク帯域幅の推定量を提供し得る。ブロードキャスト受信機およびスタックは、選択された表現に対応するブロードキャスト送信のためのURLが利用可能であるかどうか、またブロードキャストがカバレージ内にあるかどうかの指示を提供することができる。ローカル記憶デバイスは、選択された表現に対応するローカルに記憶されたデータにURLが利用可能であるかどうかの指示を提供することができる。さらに、ストリーム管理ユニット80は、たとえば、ネットワークデータを受信するために、無線信号の強度を判定するために、クライアントデバイス40などのワイヤレスデバイスの1つまたは複数の無線から無線信号強度情報(RSSI)を受信することができる。
ストリーム管理ユニット80は、受信されたソース通知を分析して、マルチメディアコンテンツに関するデータの取出し元になるソースのうちの1つまたは複数を選択することができる。いくつかの例では、ストリーム管理ユニット80は、マルチメディアコンテンツの表現も選択する。ストリーム管理ユニット80はソース構成要素90から、MPDファイルから抽出された表現特性および表現のセグメントに関するURLなどの情報を受信することができる。情報は、バッファ占有および/または利用可能なスペースの指示、ならびにマルチメディアコンテンツの現在の再生時間をさらに含むことができる。受信されたソース通知とともにこの情報を使用して、ストリーム管理ユニット80は、マルチメディアコンテンツに関するデータ、たとえば、現在選択された表現のデータの取出し元になるソースを選択することができる。ストリーム管理ユニット80は、同じマルチメディアコンテンツについて時間とともに、表現および/または表現に関するデータの取出し元になるソースを適応的に切り替えることができる。
ストリーム管理ユニット80は、選択されたソース(および場合によっては、選択された表現)の指示をソース構成要素90に提供することができる。さらに、ストリーム管理ユニット80は、選択された表現のデータを選択されたソースから取り出すための情報を含むダウンロードコマンドを作成することができる。たとえば、ダウンロードコマンドは、ソースタイプの指示およびソース固有の情報を含み得る。たとえば、HTTP/1.1の場合、ダウンロードコマンドは、GETコマンドまたは部分GETコマンドに含まれる選択された表現のセグメントのURLの全経路を指定することができる。別の例として、ブロードキャストまたはマルチキャストネットワーク送信の場合、ダウンロードコマンドは、選択された表現のセグメントを受信するためにブロードキャストまたはマルチキャストグループのネットワークアドレスを指定することができる。このようにして、ストリーム管理ユニット80は、データの取出し元になる適切なソース、ならびに受信する表現の適切なセグメントを、ソース構成要素90から受信された情報および/または他の受信された情報に基づいて判定することができる。
ソース構成要素90は、ストリーム管理ユニット80から受信されたダウンロードコマンド情報に基づいて、選択された表現のデータを選択されたソースから取り出すための適切なコマンドを作成することができる。たとえば、ソース構成要素90は、HTTP GET要求もしくは部分GET要求、ブロードキャストもしくはマルチキャストグループに参加することを求める要求、またはローカル記憶媒体のデータを取り出すことを求める要求を生成することができる。
図2の例では、ソース構成要素90はメディアファイル逆多重化(demux)ユニット96を含み、これは受信されたデータを、たとえばそれぞれのオーディオストリームおよびビデオストリームに逆多重化することができる。メディアファイル記憶処理ユニット92は、受信されたデータを、取出しユニット52を含むデバイスのメモリ(図示せず)にバッファリングすることができる。メディアファイル記憶処理ユニット92は、逆多重化されたデータを、たとえば、オーディオデコーダ46およびビデオデコーダ48(図1)に提供することもできる。あるいは、メディアファイル記憶処理ユニット92は、取り出されたメディアデータを、データを逆多重化せずにクライアントデバイス40に提供することができる。
したがって、取出しユニット52は、様々な通信プロトコルに従って動作するように構成され得る。たとえば、取出しユニット52は、伝送制御プロトコル/インターネットプロトコル(TCP/IP)に従って動作するように構成されたネットワークインターフェースを含み得る。同じネットワークインターフェース(たとえば、ネットワークインターフェースの異なる要素)、または異なるインターフェースは、IPマルチキャストもしくはeMBMS、または他のブロードキャストもしくはマルチキャストネットワークプロトコルに従ってデータを受信するように構成され得る。取出しユニット52の別のインターフェースは、物理媒体からデータを受信するように構成され得る。そのようなインターフェースは、ユニバーサルシリアルバス(USB)インターフェース、DVDリーダー、ブルーレイプレーヤ、または物理媒体からデータを取り出すための他のそのようなインターフェースを含み得る。
取出しユニット52がHTTPに従ってデータを受信している例では、適応ユニット98がHTTPコントローラ100と通信して、帯域幅適応を実行することができる。たとえば、適応ユニット98は、HTTPコントローラ100と通信し、マルチメディアコンテンツに関するマニフェストファイルから、マルチメディアコンテンツのマルチメディアデータの取出し元になる表現を選択することができる。マニフェストファイルは、マルチメディアコンテンツの複数の表現を示す情報を含むことができ、複数の表現は、選択された表現を含むことができる。特に、マニフェストファイルは、表現のビットレートを記述している情報を含むことができ、それにより適応ユニット98は、ネットワーク帯域幅の現在利用可能な量を踏まえ、表現のビットレートに基づいて適切な表現を選択することができる。当然のこととして、上記で説明したように、ソース構成要素ではなくストリーム管理ユニットが表現を選択するように構成されてもよいことを理解されたい。さらに、いくつかの例では、ソース構成要素90およびストリーム管理ユニット80は機能的に統合され得る。
本開示の技法によれば、ソース構成要素90は、ブロードキャストネットワークデータまたはマルチキャストネットワークデータを受信するように構成され得る。たとえば、ソース構成要素90は、ブロードキャストまたはマルチキャストに従って受信されたデータを、メディアファイル記憶処理ユニット92を介してメモリ(図示せず)にバッファリングすることができる。適応ユニット98は、後続セグメントの取出し元になるソースを、たとえば測定された帯域幅に基づいて決定し、バッファリングされたデータに対応するソースの帯域幅が事実上無限であると判定し、それにより、バッファからデータを取り出すことを決定することができる。ブロードキャストまたはマルチキャストを介して受信されたデータは、ストリームアクセスポイントを含むコード化ビデオデータを表す第1のセグメントおよび第2のセグメントの開始点においてストリームアクセスポイントを欠くコード化ビデオデータを表す第2のセグメントを含み得る。メディアファイルdemuxユニット96は、第1のセグメントおよび第2のセグメントを、対応するメディアストリーム、たとえば、オーディオおよびビデオのパケット化されたエレメンタリストリームに逆多重化し、これらのエレメンタリストリームのパケットを、それぞれオーディオデコーダ46およびビデオデコーダ48に提供することができる。
図3は、例示的なマルチメディアコンテンツ102の要素を示す概念図である。マルチメディアコンテンツ102は、マルチメディアコンテンツ64(図1)、またはメモリ62に記憶された別のマルチメディアコンテンツに対応し得る。図3の例では、マルチメディアコンテンツ102は、メディアプレゼンテーション記述(MPD)104および複数の表現110〜120を含む。表現110は、任意選択のヘッダデータ112およびセグメント114A〜114N(セグメント114)を含み、一方で表現120は、任意選択のヘッダデータ122およびセグメント124A〜124N(セグメント124)を含む。文字Nが、便宜的に、表現110、120の各々の最後の動画フラグメントを指定するために使用される。いくつかの例では、表現110、120の間に、異なる数の動画フラグメントがあり得る。
MPD104は、表現110〜120とは別個のデータ構造を含み得る。MPD104は、図1のマニフェストファイル66に対応し得る。同様に、表現110〜120は、図1の表現68に対応し得る。一般に、MPD104は、コーディングおよびレンダリングの特性、適応セット、MPD104が対応するプロファイル、テキストタイプ情報、カメラ角度情報、レーティング情報、トリックモード情報(たとえば、時間的なサブシーケンスを含む表現を示す情報)、および/または離れた期間を検索するための情報(たとえば、再生中のメディアコンテンツへの、ターゲットを定めた広告の挿入)のような、表現110〜120の特性を一般に表す、データを含み得る。
ヘッダデータ112は、存在する場合、セグメント114の特性、たとえば、ランダムアクセスポイント(RAP、ストリームアクセスポイント(SAP)とも呼ばれる)の時間ロケーション、セグメント114のいずれがランダムアクセスポイントを含むか、セグメント114内のランダムアクセスポイントに対するバイトオフセット、セグメント114のユニフォームリソースロケータ(URL)、またはセグメント114の他の側面を表すことができる。ヘッダデータ122は、存在する場合、セグメント124の同様の特性を表すことができる。加えて、または代替的に、そのような特性はMPD104内に完全に含まれ得る。
セグメント114、124は、1つまたは複数のコード化ビデオサンプルを含み、ビデオサンプルの各々が、ビデオデータのフレームまたはスライスを含み得る。セグメント114のコード化ビデオサンプルの各々は、同様の特性、たとえば、高さ、幅、および帯域幅要件を有し得る。そのような特性は、MPD104のデータによって表され得るが、そのようなデータは図3の例には示されていない。MPD104は、本開示で説明されるシグナリングされた情報のいずれかまたはすべてが加えられた、3GPP仕様によって表されるような特性を含み得る。
セグメント114、124の各々は、固有のユニフォームリソースロケータ(URL)に関連付けられ得る。したがって、セグメント114、124の各々は、DASHのようなストリーミングネットワークプロトコルを使用して、独立して取出し可能であり得る。このようにして、クライアントデバイス40のような宛先デバイスは、HTTP GET要求を使用して、セグメント114または124を取り出すことができる。いくつかの例では、クライアントデバイス40は、HTTP部分GET要求を使用して、セグメント114または124の特定のバイト範囲を取り出すことができる。
本開示のいくつかの態様によれば、セグメント114、124の各々は、図4に関して図示し説明するように、複数のサブセグメントにさらに分割され得る。マルチメディアコンテンツ102が完全に形成された後、ヘッダデータ112、122は、いくつかの例では、上記で説明したようにIDR NALユニットなどの特定のNALユニットへのポインタを含み得る。しかしながら、本開示の技法に従って、表現110、120のサブセグメントが準備され次第送信されるとき、ヘッダデータ112、122は、セグメント114、124が完全に形成されるまで利用できない場合があることを理解されたい。それでも、本開示で論じるように、セグメント114、124のサブセグメントのデータは、ヘッダデータ112、122が利用可能になる前に送信され得る。
他の例では、セグメント114、124の各々は、サブセグメントに分割されることなく、従来型のセグメントヘッダを含むことができる。しかしながら、セグメント114、124のうちの1つまたは複数は必ずしも、ストリームアクセスポイント(SAP)とも呼ばれるランダムアクセスポイントを含む必要はない。(図1のクライアントデバイス40などの)クライアントデバイスは、SAPを含むセグメントにおいて表現110〜120のうちの1つのデータを受信し始めるように構成され得るが、表現の1つまたは複数の後続セグメントは必ずしもSAPを含む必要はない。たとえば、クライアントデバイスは、マルチキャストグループに参加することを求める要求を提出し、要求を提出した後、SAPを含むセグメント(たとえば、第1のセグメント)を受信することができる。クライアントデバイスはまた、第1のセグメントに続いてマルチキャストグループの別のセグメント(第2のセグメント)を受信することができるが、第2のセグメントは、SAPを含む必要はない。代わりに、第2のセグメントは、第1のセグメントに関連してコード化される少なくとも一部のデータを含み得る。
たとえば、セグメント114AはSAPを含むが、セグメント114BはSAPを含まない(すなわち、欠く)と仮定する。具体的には、この例ではセグメント114Bは、SAPを完全に欠いている。クライアントデバイス40(図1)は、セグメント114Aにおいて表現110のデータを受信し始め、セグメント114AのSAPにおいてデータを復号し始めることができる。クライアントデバイス40はまた、たとえばセグメント114Aのデータを復号している間、セグメント114Bを取り出すことができる。そのような例において、表現のセグメントは、再生時間の比較的短い期間(たとえば、1秒の再生時間)を表すことができる。
コンテンツ準備デバイス20は、適応セット内の表現110〜120にわたってSAPが位置調整されるように、表現110〜120を構築することができる。SAPは、必ずしも各適応セットにおいて同じ頻度で発生する必要はないが、位置調整され得る。たとえば、表現110は、1秒間隔でSAPを含むように構築されてよく、一方で表現120は、2秒間隔でSAPを含むように構築されてよく、この場合に時間間隔はプレゼンテーション時間に対応する。表現110および表現120が同じ適応セット内に含まれると仮定すると、セグメント114Aおよび124Aは、SAPで始まってよく、セグメント114BはSAPを含んでよく、セグメント124BはSAPを含む必要がない。セグメント114Bに続くセグメント(たとえば、図3に示されていないセグメント114C)もSAPを含んでよく、セグメント124Bに続くセグメント(たとえば、同じく図3に示されていないセグメント124C)はSAPを含んでよい。他の例では、同じ適応セットにおける表現のすべてのSAPは、SAPが同じ頻度で(すなわち、再生時間の点で同じ持続時間で)表現の各々において発生するように位置調整されてよく、かつ、SAPが同じ適応セットの表現の各々において同じプレゼンテーション時間に発生するようにフェーズ位置調整されてよい。
同じ適応セットの表現を、SAPがこれらの表現にわたって位置調整されるように構築することは、いくつかの利点を提供することができる。たとえば、そのような表現は、シームレスかつ単純なレート適応能力を提供することができる。また、同じ適応セットの表現においてSAPを位置調整することで、ビデオ符号化品質の劣化を回避することができる。
その上、コンテンツ準備デバイス20は、連続するSAP間の変動する時間を提供することができる。コンテンツ依存型のSAPの測位は、比較的高い品質のビデオをもたらすことができ、より優れた圧縮特性をもたらすことができる。コンテンツ準備デバイス20は、連続するSAP間の最大時間分離で構成され得る。その上、コンテンツ準備デバイス20は、連続するSAP間の最大時間を、たとえば、MPD104または表現ヘッダデータ、たとえばヘッダデータ112、122においてシグナリングすることができる。
いくつかの例では、セグメント114、124の各々は固定持続時間を有し得る。そのような例では、セグメント114、124は必ずしもSAPで始まる必要はない。セグメント114、124の各々は、そのような例では同じ量のプレゼンテーション時間、たとえば1秒(または他の適切なプレゼンテーション時間)を表すことができる。これらの例も、いくつかの利点を提供することができる。たとえば、セグメントに関するURLが、再生時間に応じて自動的に生成され得ると仮定すると、セグメントURLを予測するための手順は比較的簡単であり得る。最終的には、必要とされるセグメントが少なくなり得る。一方、コンテンツ準備デバイス20は、適応セットの表現を切り替えるためのセグメントインデクシングを提供することができる。
図4は、本開示の一態様による、例示的なセグメント200を示す概念図である。セグメント200は、図3に示すセグメント114および/または124に対応することができ、マルチメディアコンテンツ64(図1)、またはメモリ62に記憶された別のマルチメディアコンテンツの少なくとも一部分を含み得る。図4のいくつかの態様は、図1に示す構成要素に関して説明されることがあるが、セグメント200は、いくつかの異なる構成要素を有するいくつかの異なる環境で実装され得ることを理解されたい。
図4の例では、セグメント200は、セグメントヘッダ202、サブセグメント204A、サブセグメント204B(まとめてサブセグメント204と呼ぶ)、ならびに(省略記号によって示される)潜在的にいくつかの追加のサブセグメントを含む。本開示の態様によれば、セグメントヘッダ202は、セグメント200のすべてのサブセグメント204に共通する情報を含むことができる。たとえば、セグメントヘッダ202は、クライアントデバイス40などのデバイスがセグメント200を復号および/またはレンダリングするのを支援する一定の情報を含むことができる。すなわち、セグメントヘッダ202は、セグメント200のオーディオデータに関する符号化フォーマット、セグメント200のビデオデータに関する符号化フォーマット、セグメント200に関するビットレート、セグメント200に関する品質レベル、セグメント200のビデオデータの解像度、セグメント200のビデオデータのフレームレートなどを示すデータを含むことができる。本開示のいくつかの態様によれば、そのようなデータの一部分は、後述のようにサブセグメントヘッダに含まれ得る。いくつかの例では、セグメントヘッダ202は、すべてのサブセグメント204が送信された後に送信される。他の例では、セグメントヘッダ202は、サブセグメント204が送信される前に送信される。
いくつかの例では、本開示の態様によれば、セグメントヘッダ202は、セグメントヘッダ202のデータが変化しているかどうかを示すフラグを含み得る。すなわち、セグメントヘッダフラグは、セグメントヘッダ202のデータが以前受信され復号されたセグメントヘッダから変化しているかどうかを示すことができる。サーバデバイス60などのデバイスは、セグメントヘッダ202のデータが変化していないことを示す「0」にセグメントヘッダフラグを設定することができ、セグメントヘッダのデータが変化していることを示す「1」にセグメントヘッダフラグを設定することができる。ヘッダデータが変化していない場合(フラグ=0)、サーバデバイス60は、セグメントヘッダ202に追加情報を含めることを省略することができる。一方、ヘッダデータが変化している場合(フラグ=1)、サーバデバイス60は、セグメントヘッダフラグの後、ヘッダデータを含めることができる。
図4に示す例では、サブセグメント204Aは、それぞれデータユニット210Aおよび210B(まとめてデータユニット210)の相対ロケーションを識別するデータユニットポインタ208Aおよび208B(まとめてデータユニットポインタ208)を有するサブセグメントヘッダ206を含む。いくつかの例では、サブセグメントヘッダ206は、セグメントヘッダ202に関して上述したデータの一部分を含み得る。ただし、(たとえば、符号化フォーマットなどの)頻繁には変化しないデータは通常、サブセグメントヘッダ206に含まれない。
本開示のいくつかの態様によれば、サブセグメントヘッダ206は、サブセグメント204A内のデータユニット210の各々のオフセットを識別するデータユニットポインタ208のテーブルを含む。たとえば、オフセットは、サブセグメント204A内のデータユニットの相対位置を提供し得る。オフセットはまた、データユニットの復号されたデータを提示する際の適切な順序の指示を提供し得る(ただし、いくつかの例では、データユニットは、提示/表示順序では符号化されず、送信されないことがある)。
データユニット210は一般に、非VCL NALユニットまたはVCL NALユニットを含み、これらは符号化メディアデータを含み得る。メディアデータがビデオデータである例では、データユニット210は、ビデオデータのフレームまたはスライスを含むことができる。本開示の態様によれば、サブセグメント204Aなどのサブセグメントは、独立して復号可能ではないことがある。たとえば、データユニット210のうちの1つまたは複数は、1つまたは複数の他のサブセグメントに含まれる1つまたは複数のデータユニット(たとえば、サブセグメント204Bのデータユニット216など)を参照し得る。すなわち、データユニット210がビデオデータを含む例では、データユニット210のうちの1つまたは複数は、1つまたは複数の他のサブセグメントに含まれる1つまたは複数のデータユニットのビデオデータを参照するPフレームまたはBフレームとして符号化され得る。したがって、いくつかの例では、データユニット210のうちの1つまたは複数は、将来のサブセグメント(たとえば、Bフレーム)を参照し得る。ただし、データユニット210は、(たとえば、他のサブセグメントを参照せずに)独立して復号可能な一定の情報を含むこともできる。たとえば、データユニット210のうちの1つまたは複数は、独立して復号可能なビデオデータのIフレームであり得る。
図4に示す例では、サブセグメント204Bは、サブセグメント204Aと同様に構成される。すなわち、サブセグメント204Bは、データユニット216Aおよび216Bを識別するデータユニットポインタ214Aおよび214Bを有するサブセグメントヘッダ212を含む。いくつかの例では、本開示の態様によれば、上述のセグメントヘッダ202と同様に、サブセグメント204は、サブセグメントヘッダ206、212のデータが変化しているかどうかを示すフラグを含み得る。図4に示す例では、サブセグメントヘッダ212は、以前に受信されたサブセグメントヘッダ206のデータが変化しているかどうかを示すフラグ(たとえば、フラグ=0の場合、データは変化しておらず、フラグ=1の場合、データは変化している)を含むことができる。したがって、サブセグメントヘッダデータが変化しない例では、ヘッダデータによって消費されるビットの数が減少し得る。
本明細書で説明する技法に従ってセグメント200を利用することで、(たとえば、複数のサブセグメントを含まないセグメントと比較して)レイテンシを低減することができる。すなわち、本開示の態様によれば、サーバデバイス60またはコンテンツ準備デバイス20など、ネットワークを通じてセグメントを送信する役割を担うデバイス(あるいはサーバデバイス60とコンテンツ準備デバイス20の両方の機能を実装しているデバイス)はサブセグメント204Aを、サブセグメント204Aが形成されるとすぐに(たとえば、サブセグメント204Aの最後のデータユニットが受信/符号化されるとすぐに)送信することができる。すなわち、サーバデバイス60は、サブセグメント204Aを送信する前に、複数のサブセグメントが形成されるのを待つ必要がない。さらに、サーバデバイス60は、サブセグメント204Aを送信する前に、セグメントヘッダ202が完成するのを待つ必要がない。
サブセグメント204が形成/符号化されるとすぐにサブセグメント204を送信することで、クライアントデバイス40などのクライアントデバイスは、サブセグメント204を受信するとサブセグメント204の少なくとも一部分を直ちに復号し始めることができるので、レイテンシが低減され得る。すなわち、図4に示す例では、サブセグメント204Aのいくつかのデータユニット210は、サブセグメント204Bのデータユニット216のうちの1つまたは複数を参照することができる一方、クライアントデバイスはサブセグメント204Aのデータユニット210のうちのいくつか(たとえば、サブセグメント204Aに含まれるIフレーム)を直ちに復号し始めることができる。さらに、クライアントデバイス40は、一般にサブセグメント204A、204Bに続いてセグメント200に関するセグメントヘッダ202を受信すると、セグメント200全体を復号し、プレイアウトする準備ができる。すなわち、クライアントデバイス40は、サブセグメント204Aおよび204Bをすでに受信しており、セグメントヘッダ202を受信すると直ちに復号し始める準備ができる。
本開示の技法によれば、一例では、セグメント200は、下に示すTable 2(表2)に従って構成され得る。
本開示のいくつかの態様によれば、セグメント200は、ブロードキャストネットワーク送信を介してDASHまたは他のストリーミングネットワークプロトコルに従ってマルチメディアデータを送信するように構成され得る。たとえば、サーバデバイス60は、ブロードキャストを介した1つまたは複数のクライアントデバイス40への送信に向けて、複数のサブセグメント204を有するセグメント200を準備することができる。クライアントデバイス40は、いくつかの例では、上記で説明したようにセグメント200のサブセグメント204を含むブロードキャストネットワーク送信を受信することができる。
図4は、サブセグメント204Aおよび204Bが同様に構成されるものとして示しているが、いくつかの例では、表現のセグメントは同様に構成されたセグメントを含まない場合があることを理解されたい。たとえば、表現は、サブセグメントに分割されている1つまたは複数のセグメント、ならびに分割されない1つまたは複数のサブセグメントを含むことができる。
図5は、本開示で説明する技法による、例示的な方法を示すフローチャートである。図5の方法は、コンテンツ準備デバイス20およびクライアントデバイス40(図1)に関して説明しているが、他のデバイスが図5の方法の技法と同様の技法を実施できることを理解されたい。たとえば、サーバデバイス60またはコンテンツ配信ネットワークの1つもしくは複数のネットワークデバイスは、サーバデバイス60に起因する機能の一部または全部を実行することができる。
コンテンツ準備デバイス20(これは、クライアントデバイスにコンテンツを提供できるので、一般に「サーバデバイス」と呼ばれることがある)は最初に、マルチメディアコンテンツの表現に関するデータを取得する(260)ことができる。より具体的には、コンテンツ準備デバイス20は、マルチメディアコンテンツの所与の表現に関するメディアデータのセグメントを取得することができる。本開示のいくつかの態様によれば、コンテンツ準備デバイス20は、メディアデータのセグメントに関連するヘッダデータが変化しているかどうかを示すフラグを生成する(261)ことができる。すなわち、コンテンツ準備デバイス20は、セグメントのヘッダデータが以前に符号化されたセグメント(そのようなセグメントが存在する場合)のヘッダデータとは異なるかどうかを示すことができる。コンテンツ準備デバイス20は、ヘッダデータが変化していないことを示す「0」の値に、セグメントヘッダフラグを設定することができ、またはヘッダデータが異なる(たとえば、しかるべきヘッダデータが後に続く)ことを示す「1」の値に、セグメントヘッダフラグを設定することができる。
次いでコンテンツ準備デバイス20は、第1のサブセグメントを形成する(262)ことができる。たとえば、コンテンツ準備デバイス20は、第1のサブセグメントに含まれる1つまたは複数のデータユニットを識別するデータユニットポインタを含むサブセグメントヘッダを有する、図4に示すサブセグメント204と同様のサブセグメントを形成することができる。さらに、上記のように、サブセグメントは独立して復号可能ではないことがある。すなわち、第1のサブセグメントは、1つまたは複数の他のサブセグメント(ならびに、後述する第2のサブセグメントなどの将来のサブセグメント)の1つまたは複数のデータユニットを参照する1つまたは複数のデータユニットを含むことができる。
形成されると、コンテンツ準備デバイス20はクライアントデバイス40に第1のサブセグメントを送る(264)。本開示の態様によれば、コンテンツ準備デバイス20は、第1のサブセグメント(ならびに後続のサブセグメント)をブロードキャストすることができる。コンテンツ準備デバイス20が第1のサブセグメントを送信した後、クライアントデバイス40は、第1のサブセグメントを受信する(266)。いくつかの例では、クライアントデバイス40は、第1のサブセグメントを復号に向けて準備する(268)ことができる。たとえば、クライアントデバイス40は第1のサブセグメントを、セグメントヘッダデータを受信すると第1のセグメントが直ちに復号され得るように、復号に向けてバッファリングあるいは準備することができる。
さらに、コンテンツ準備デバイス20は、第2のサブセグメントを形成する(272)。第2のサブセグメントは、上述の第1のサブセグメントと同様の方法で形成され得る。形成後、コンテンツ準備デバイス20は、第2のサブセグメントを(サブセグメントヘッダデータとともに)クライアントデバイス40に送る(274)ことができる。次いでクライアントデバイス40は、第2のサブセグメントを受信する(276)。いくつかの例では、クライアントデバイス40は第2のサブセグメントを、第1のサブセグメントに関して上述した方法と同様の方法による復号に向けて準備する(278)ことができる。
第2のサブセグメントを形成し送信した後、コンテンツ準備デバイス20は、サブセグメントのすべて(たとえば、図5の例では、第1のサブセグメントおよび第2のサブセグメント)に適用可能なセグメントヘッダを形成する(280)ことができる。コンテンツ準備デバイス20はまた、クライアントデバイス40にセグメントヘッダを送る(282)ことができる。次いでクライアントデバイス40は、セグメントヘッダを受信し(284)、第1のサブセグメントおよび第2のサブセグメントを復号する(286)ことができる。すなわち、クライアントデバイス40は、以前に受信されたサブセグメントの各々を復号することができる。
このようにして、図5の方法は、マルチメディアデータのセグメントの第1のサブセグメントを受信するステップであって、第1のサブセグメントは、1つまたは複数のデータユニットの第1のセットおよび第1のサブセグメント内のデータユニットのロケーションを示すデータを含む第1のヘッダを含み、データユニットのうちの少なくとも1つは、セグメントの第2のサブセグメントのデータユニットを参照する、ステップを含む方法の例を表す。本方法はまた、第1のサブセグメントを受信した後、第2のサブセグメントを受信するステップであって、第2のサブセグメントは、1つまたは複数のデータユニットの第2のセットおよび第2のサブセグメント内のデータユニットのロケーションを示すデータを含む第2のヘッダを含む、ステップと、第1のサブセグメントおよび第2のサブセグメントを受信した後、セグメントを処理するステップとを含む。
さらに、図5の方法は、マルチメディアデータのセグメントの第1のサブセグメントを送るステップであって、第1のサブセグメントは、1つまたは複数のデータユニットの第1のセットおよび第1のサブセグメント内のデータユニットのロケーションを示すデータを含む第1のヘッダを含み、データユニットのうちの少なくとも1つは、セグメントの第2のサブセグメントのデータユニットを参照する、ステップを含む方法の例を表す。本方法はまた、第1のサブセグメントを送った後、第2のサブセグメントを送るステップであって、第2のサブセグメントは、1つまたは複数のデータユニットの第2のセットおよび第2のサブセグメント内のデータユニットのロケーションを示すデータを含む第2のヘッダを含む、ステップを含む。
図5に関して図示し説明したステップは、単に一例として提供されていることも理解されたい。すなわち、図5の方法のステップは、必ずしも図5に示す順序で実行される必要はなく、より少ない、追加の、または代替的なステップが実行されてよい。一例では、図5に関して図示し説明した方法は、第1のサブセグメントおよび第2のサブセグメントを含む。ただし、他の例では、メディアデータの3つ以上のサブセグメントを、サーバデバイスは準備することができる(また、クライアントデバイスは受信することができる)。
上記で説明したように、いくつかの例では、サブセグメントを使用してエンドツーエンドレイテンシを低減することができる。他の例では、すべてのセグメントを使用することができるが、1つまたは複数のセグメントはストリームアクセスポイント(SAP)を含む必要がない。SAPは一般に、クライアントデバイス40(図1)などのクライアントデバイスがビットストリームを取り出し始め、取り出されたデータを正常に復号し、レンダリングすることができる、ビットストリームにおけるポイントである。このようにして、SAPは、ISOベースメディアファイルフォーマットおよびその拡張に従ったファイルなどのファイルのランダムアクセスポイント(RAP)と同様のデータを含むことができる。SAPは、VCL層におけるIDRピクチャに関するデータを含むことができる。本開示の技法のいくつかの例によれば、表現の1つまたは複数のセグメントは、完全な従来型のセグメントヘッダを含み得るが、対応するSAPを含む必要はない。
図6は、一連のコード化ビデオフレーム300〜332を示す概念図である。図6は、この例ではフレーム300〜316がセグメント334に含まれ、一方でフレーム318〜332がセグメント336に含まれることも示している。フレームは、階層予測構造内の相対位置を示すために、異なるように陰影が付けられている。たとえば、フレーム300、316、および332は、フレーム300、316、332が階層予測構造の最上部にあることを表すために黒の陰影が付けられている。フレーム300、316、332は、たとえば、イントラコード化フレーム、または単一方向における他のフレームから予測されるインターコード化フレーム(たとえば、Pフレーム)を含むことができる。イントラコード化されるとき、フレーム300、316、332は、同じフレーム内のデータからのみ予測される。インターコード化されるとき、たとえば、フレーム316は、フレーム316からフレーム300への破線矢印によって示されるように、フレーム300のデータに関連してコード化され得る。
フレーム308、324は、フレーム300、316、および332に続く符号化階層における次であることを示すために、濃い陰影が付けられている。フレーム308、324は、双方向のインターモード予測符号化フレームを含むことができる。たとえば、フレーム308は、フレーム300および316のデータから予測されてよく、一方でフレーム324は、フレーム316および332のデータから予測されてよい。
フレーム304、312、320、および328は、フレーム308および324に続く符号化階層における次であることを示すために、薄い陰影が付けられている。フレーム304、312、320、および328も、双方向のインターモード予測符号化フレームを含むことができる。概して、符号化階層において相対的に低いフレームを、符号化階層において相対的に高いフレームのいずれかに関連して符号化することが、フレームが依然として参照フレームバッファに記憶されている限り可能である。たとえば、フレーム304は、フレーム300および308から予測されてよく、フレーム312は、フレーム308および316から予測されてよく、フレーム320は、フレーム316および324から予測されてよく、フレーム328は、フレーム324および332から予測されてよい。さらに、フレーム304のブロックがフレーム300およびフレーム316から予測されてもよいことを理解されたい。同様に、フレーム312のブロックがフレーム300および316から予測されてよいことを理解されたい。
フレーム302、306、310、314、318、322、326、および330は、これらのフレームが符号化階層において最低であることを示すために、白である。フレーム302、306、310、314、318、322、326、および330は、双方向のインターモード予測符号化フレームであり得る。フレーム302は、フレーム300および304から予測されてよく、フレーム306は、フレーム304および308から予測されてよく、フレーム310は、フレーム308および312から予測されてよく、フレーム314は、フレーム312および316から予測されてよく、フレーム318は、フレーム316および320から予測されてよく、フレーム322は、フレーム320および324から予測されてよく、フレーム326は、フレーム324および328から予測されてよく、フレーム330は、フレーム328および332から予測されてよい。
フレーム300〜332は、表示順序で示されている。すなわち、復号に続いて、フレーム300はフレーム302の前に表示され、フレーム302はフレーム304の前に表示され、以下同様である。しかしながら、符号化階層により、フレーム300〜332は、異なる順序で復号され得る。フレーム308を適切に復号するために、たとえば、フレーム316が、フレーム308の参照フレームとして働くために最初に復号される必要があり得る。同様に、フレーム308は、フレーム302〜306および310〜314のうちのいずれの参照フレームとしても働くことができ、したがって、フレーム302〜306および310〜314の前に復号される必要があり得る。
したがって、フレーム300〜332の符号化バージョンは、フレーム300〜332の符号化データを含むビットストリームにおいて相対復号順序で配置され得る。たとえば、フレーム300〜316は、次の順序でセグメント334内に配置され得る。300、316、328、304、312、302、306、310、314。同様に、フレーム318〜332は、次の順序でセグメント336内に配置され得る。332、324、320、328、318、322、326、330。他の順序による配置も可能である。
フレームが表示される時間をプレゼンテーション時間または表示時間と呼ぶことができ、一方でフレームが復号される時間を復号時間と呼ぶことができる。プレゼンテーション/表示時間は一般に、同じシーケンスの他のフレームに関連する時間的順序の指示を提供する。ビデオエンコーダ20はフレームに対し、フレームの表示時間(またはプレゼンテーション時間)を表すピクチャ順序カウント(POC)値と呼ばれる値を割り当てることができる。したがって、ビデオデコーダ30は、フレームのPOC値を使用して、復号の後のフレームのプレゼンテーション順序を決定することができる。
例として、フレーム300がイントラコード化されると仮定する。このようにすると、フレーム300は、ビットストリーム、たとえば、マルチメディアコンテンツの表現のSAPに対応し得る。本開示のいくつかの例によれば、セグメント334は、セグメント334がフレーム300〜316を含むように形成され得る。その上、いくつかの例では、フレーム318〜332を含むセグメント336が形成され得る。フレーム316は、フレーム300に関連してPフレームとしてコード化され得る。上記で説明したように、フレーム332は、たとえばフレーム316に関連してPフレームとしてインターコード化され得る。それでも、セグメント336は、セグメント336がフレーム318〜332を含むように形成され得る。フレーム332はインターコード化されるので、フレーム332がSAPではないと仮定すると、セグメント336は、SAPを欠くセグメントの一例を表す。
SAPを欠くセグメント336などのセグメントを提供することは、たとえばライブストリーミング環境においていくつかの利点を提供することができる。セグメントは、ライブストリーミング環境において、セグメントが比較的短い再生時間(たとえば、1秒のプレゼンテーション時間)に対応するように、(たとえば、コンテンツ準備デバイス20によって)提供され得る。セグメントの各々は、コンテンツ準備デバイス20がセグメントを形成して、セグメントを提供可能にするとすぐに、クライアントデバイス40などのクライアントへの配信のために、サーバデバイス60などのコンテンツサーバにファイルとして提供可能になり得る。
すべてのセグメントが必ずしもSAPを含む必要はない。コンテンツ準備デバイス20は、(たとえば、圧縮の点でビットストリームをより効率的にするために)コンテンツ主導の方法でビットストリームにSAPを置くように構成され得る。コンテンツ準備デバイス20はさらに、連続するSAP間の指定された最大プレゼンテーション時間差、たとえば(プレゼンテーション時間の点で)5秒で構成され得る。セグメントのシーケンスは、クライアントデバイス40などのクライアントデバイスが、任意のSAPで始まるビットストリームをプレイアウトし始めることができ、クライアントデバイスにおいて各セグメントに含まれるビデオの大部分を、セグメントがクライアントデバイスにおいて利用可能になるとすぐにプレイアウトすることができるという特性を有し得る。
別の例として、(復号順序または送信順序による)ビデオフレームシーケンスは、I、P、B、B、P、B、B、P、B、B、P、B、B、Iなどであり得る。この例示的なシーケンスでは、第1のセグメントは、最初の4つのフレームを含んでよく、第2のセグメントは、次の3つのフレームを含んでよく、第3のセグメントは、次の3つのフレームを含んでよく、第4のセグメントは、次の3つのフレームを含んでよく、次いで第5のセグメントは、第2のIフレームで始まってよい。クライアントデバイスは、第1のセグメントの受信により、最初の4つのフレームを再生し始めることができ、引き続き、第2のセグメントの受信により、次の3つのフレームを再生することができ、第3のフラグメントの受信により、次の3つのフレームを再生することができ、第4のフラグメントの受信により、次の3つのフレームを再生することができる。
したがって、この例でのエンドツーエンドレイテンシは、わずか4フレーム、すなわち、第1のセグメントに含まれるフレームであり、その理由は、第2のセグメントがエンコーダ側で形成され始めたばかりのときに、クライアントが第1のセグメントを潜在的にプレイアウトし始めることができることにある。さらに、クライアントデバイスが再生し始めると、ストリーミングは円滑に継続することができ、その理由は、各セグメントが、先行セグメント中のフレームが再生されているときに、遅れずに再生可能であり得ることにある。しかしながら、この例でのクライアントのための同調遅延は、4フレームを大きく超えることがあり、その理由は、ストリームに参加し、第1のIフレームのプレゼンテーション時間の後、ただし第2のIフレームの前のプレゼンテーション時間に開始したいと思うクライアントは通常、第5のセグメントを受信した後にのみ再生を開始することになることにある。
図7は、IDR間隔によって異なるエラー秒を示す実証的テスト結果を示すグラフである。この例では、セグメントは固定持続時間を有しており、各セグメントはIDR(すなわち、IDRに対応するSAP)で始まっている。1990年代にMPEG2デジタルビデオが出現し、ビデオコーデックがエラーに対して特にロバストなわけではないことが急速にわかった。破損または欠落したデータのコーデックバッファ存続期間が長くなるほど、途絶が明白になる。破損したデータをコーデックバッファから外しておくことが、主観的影響において非常に優れていることが比較的急速にわかった。すなわち、フリーズは一般に、他のアーティファクトよりも(主観的観測において)良い。パケット誤り率(PER)要件が10〜7%から約1%のPERに低下してから1年くらいの間、LTEのブロック誤り率(BLER)は、MPEG2トランスポートのPERに類似している。改善は、デコーダの下の層に、破損のポイントから、H.264の次の独立データリフレッシュ(IDR)フレーム、またはMPEG2における新しいピクチャグループ(GOP)までのすべてのデータを破棄させることによって、達成された。
これを達成する様々な方法があった。たとえば、MPEG2は、疑わしいパケットを識別したシグナリングビットを採用した。複数の専用モバイルマルチメディア物理層が出現し、エラーがある場合にモバイルビデオシステム性能を評価するための広く適用可能な方法が必要になった。採用された方式は、データ通信による昔から存在するメトリックであるエラー秒に基づいている。「エラー秒」は一般に、エラーを含む任意の秒全体である。この方法は、エラーにより失われたメディア秒のパーセンテージとなるように採用された。回復を宣言する前に受信される一定数の正しいパケットを必要とする方法の実装形態がある。この方法は、測定を行うために上位層シンタックスを理解する必要性を除去するが、概算である。例示的なメトリックは、5%の誤った時間(Erroneous Time)またはESR5である。
上記で説明したように、DASHマルチメディアコンテンツは、複数のセグメントを含む。図7の分析では、セグメント持続時間は、(プレゼンテーション時間の点で)IDR間隔に等しく設定されている。図7のグラフは、平均BLERが1%に近いトレースの750MHzにおけるTU-6 3km/時の誤った時間に対するIDR間隔(したがってセグメント持続時間)の影響を表している。結果は、6km(3)、2km(5)、および1km(3)のセル半径における11、51秒トレースの1ミリ秒間隔でのトレースSNRを評価することによって生成された。PHYバースト間隔は250ミリ秒であり、データバースト持続時間は41ミリ秒である。これは、5MHz、95%カバレージ、6kmセル、750MHzの800kbpsにおけるMCS18に近くなる。エラーを有するいずれのセグメントも、誤った時間(たとえば、エラー秒)としてカウントされる。平均5%未満の誤った時間は、0.250ミリ秒のセグメントで合致する。
図8は、前方向誤り訂正(FEC)による実証的テスト結果の別の例を示すグラフである。たとえば上記の図7の説明に関して、誤った時間の変動に対処するための様々な手法がある。一例では、リンクバジェットがセグメント持続時間に従って変更され得る。これは、0.25〜4秒のIDRレート/セグメント持続時間の範囲で必要C/Nの約0.4dBの変動をもたらし得る。
別の例として、アプリケーション層FECが適用され得る。これは、4秒でリンクバジェットに比較的わずかな(差し引きゼロの(wash))結果をもたらし得る。したがって、C/N利得は、容量損失をほぼ相殺することができる。図8の例示的なグラフに示すように、誤った時間は、約7%のFECレートではほぼ一定である。トレースは、ドップラーが当てはまる(2Hz)が、運動による非相関はない。
図9は、(プレゼンテーション時間における)様々なIDR間隔におけるセグメントのビットレートを示す実証的テスト結果を示すグラフである。図9に示す結果は、いくつかの典型的なコンテンツタイプ(たとえば、スポーツ、語り手の顔、動画など)にわたる平均35dBのピーク信号対雑音比(PSNR)のビデオに基づいている。この例に示すように、IDRの頻度が高いと、通常、対応するビットレートが上昇する。したがって、運動の多いシーケンスは、格段に高いビットレートを必要とし得る。
図10は、様々なピーク信号対雑音比(PSNR)を平均オピニオン評点(MOS)に対して示すグラフのセットを示している。これらのグラフに示すように、コンテンツ選択およびIDR配置方法は、MOS対PSNRに著しく影響し得る。
図11は、FECを伴う場合と伴わない場合の両方における様々なデータバースト間隔のエラー秒を示す実証的テスト結果を示すグラフである。図11のグラフに示すように、PHYにおけるデータバーストの頻度は、レイテンシと時間ダイバーシティの両方に影響を与え得る。ネットワークバッファ時間(バースト間の隔たり)は、エンドツーエンドレイテンシを線形的に増加させ得る。0.5秒を超えてインターバースト間隔が拡大すると、時間ダイバーシティが損なわれ得る。図11では、IDR間隔およびセグメント持続時間は、一定の5.12秒に設定されている。この例では、バースト間隔は、離散値0.32秒、0.640秒、1.28秒、2.56秒、5.12秒で評価される。この例では、5%のFECレートは、0.32秒のバースト期間で十分であり、それ以外は7%のレートが使用され得る。
800kbpsの送信に必要な平均時間は、PHYでデータがバーストされるレートとは無関係である。バースト持続時間は、バーストレートに反比例する。物理層の電力消費量は、バースト持続時間に応じて変わる。各バーストに関連する約10ミリ秒のウォームアップ時間がある。50ミリ秒のバースト(MCS18、800 kbps、320ミリ秒のバースト間隔)の場合、無線が約60ミリ秒にわたってオンであることにより、PHYに起因する電力消費量が20%増加する。しかしながら、ビデオを見ているときに、無線は、全デバイス消費量の約10%消費しているだけである。バックライトは、デバイス電力消費量を左右する。潜在的に、5.12秒のデータバースト間隔に対し0.320秒で約2%のデバイス消費量の増加がある。これらの推定は、メディアフローに基づいており、修正されることがある。
図12は、様々なセグメント持続時間のIDR間隔の様々な例を示す概念図である。図12に示すように、セグメント持続時間とIDR間隔(すなわち、SAP間隔)とは必ずしも等しくなければならないわけではない。図12の例は、2つの例示的な表現、たとえば、DASHの異なるプロファイルに対応する表現を示している。表現350は、本開示の技法のいくつかの例による例示的な表現に対応しており、SAP、たとえばIDRピクチャ、CRAピクチャ、または他のランダムアクセスポイントを含まないセグメントがある。すなわち、表現350は、それぞれSAP354、358を含むセグメント352A、352B(セグメント352)を含む。同様に、表現350は、SAPを含まないセグメント356A〜356D(セグメント356)を含む。一方、表現360は、DASHにおける従来型の表現の一例に対応しており、すべてのセグメントがSAPを含む。すなわち、表現360は、それぞれSAP364、366を含むセグメント362A、362B(セグメント362)を含む。
一般に、表現350、360の水平軸は、プレゼンテーション時間、すなわち、時間的な再生時間に対応する。したがって、表現350および360におけるSAP間の再生時間はほぼ等しい。すなわち、表現350におけるSAP354とSAP358との間のプレゼンテーション時間差は、表現360におけるSAP364とSAP366との間のプレゼンテーション時間差にほぼ等しい。しかしながら、表現350のセグメント352、356は、表現360のセグメント362よりも、プレゼンテーション時間の比較的短い持続時間を表している。このようにして、コンテンツ準備デバイス20は、表現350のセグメント352Aを、表現360のセグメント362Aよりも速く構築して送ることができる。
このようにして、表現350は、第1のストリームアクセスポイント(たとえば、SAP354)を含むメディアデータを含む第1のセグメント(たとえば、セグメント352A)およびストリームアクセスポイントを欠くメディアデータを含む第2のセグメント(たとえば、セグメント356A、356B)を含む表現の一例を表している。さらに、セグメント356Aおよび/または356Bのメディアデータは、セグメント352Aのメディアデータ、たとえばSAP354に関連してコード化され得る。たとえば、ビデオエンコーダまたはビデオデコーダは、SAP354、またはセグメント352Aの1つもしくは複数の他のピクチャを、セグメント356Aおよび/またはセグメント356Bの1つまたは複数のピクチャをコード化するときに参照ピクチャとして使用することができる。したがって、セグメント356A、356Bのメディアデータの少なくとも一部分は、セグメント352Aのメディアデータの少なくとも一部分に関連してコード化され得る。
クライアントデバイス40(図1)などのクライアントデバイスによって実行されるFLUTEスタックは、完全なファイルを無視することができる。本開示の例によれば、各ファイル(セグメント)は、IDRを含むこと、または含まないことがある。セグメント持続時間とIDR間隔とが(たとえば、表現360のように表現350において)同じである場合、アプリケーションFECの時間ダイバーシティが最大化することがあるが、レイテンシが線形的に増大することもある。一方、セグメントがIDR間隔よりもはるかに短い場合、FECの時間ダイバーシティは低減され得るが、レイテンシも低減され得る。IDR間隔は、セグメント持続時間に関係なくチャネル変更時間に線形的に影響を与え得る。
比較的小さい量のアプリケーションFEC(約7%)を追加すると、システムESR5パフォーマンス対セグメント持続時間が本質的に一定になり得る。リンクバジェットに対するアプリケーション層アウターコードの影響は、比較的ささいである。メディアフローの初期に、アウターコードのないストリーミングメディアの実行が積極的に検討されており、フィールドテストの後、この考えは、アウターFECを適用した場合の方が視覚的に優れたパフォーマンスとなるため、放棄された。ストリーミングメディアのアプリケーション層FECのオプションを維持することが有用であり得る。近接したIDR間隔は、急速なチャネル変更にとって有用であり得るが、それはレイテンシに直接影響しない。したがって、セグメントはIDR間隔よりも短く作られ得る。物理層データバースト間隔は、レイテンシおよび時間ダイバーシティに直接影響するので、コンテンツタイプごとのシステム動作がネットワーク内のすべてのロケーションで同じ場合、これは相応に指定され得る。MSP/CSA設定は、BVPSによって指定され得る。これらの例でのビットレートは、平均してまずまず(3.5〜4.0)のビデオ品質のコンテンツを反映している。スポーツの場合など、運動の多いビデオは、より高いビットレートを利用し得る。
図13は、ストリームアクセスポイント(SAP)を含まない表現の1つまたは複数のセグメントを送るための例示的な方法を示すフローチャートである。初めに、サーバデバイス60などのサーバデバイスは、SAPを含む、マルチメディアデータの第1のセグメントを取得する(400)ことができる。この例では、サーバデバイス60は、コンテンツ準備デバイス20(図1)からマルチメディアデータの第1のセグメントを受信することができる。代替的に、サーバデバイス60は、コンテンツ準備デバイス20に起因する機能を実行するように構成されてよく、この場合にサーバデバイス60は、第1のセグメントのビデオデータを符号化することができる。いずれの場合も、この例では、第1のセグメントはSAPを含むことができる。
図13の方法は、ストリーミングデータのライブブロードキャスト中に実行され得る。したがって、サーバデバイス60が第1のセグメントを取得するとすぐに、サーバデバイス60はクライアントデバイス40に第1のセグメントを送る(402)ことができる。サーバデバイス60はまた、SAPを欠く、マルチメディアデータの第2のセグメントを取得する(たとえば、受信するか、またはそのためのデータを符号化する)(408)ことができる。したがって、サーバデバイス60は、マルチメディアデータの第2の後続セグメントを取得する前に、クライアントデバイス60に第1のセグメントを送ることができる。第2のセグメントを取得した後、サーバデバイス60はクライアントデバイス40に第2のセグメントを送る(410)ことができる。
クライアントデバイス40が第1のセグメントを受信した(404)後、クライアントデバイス40は第1のセグメントを復号する(406)ことができる。さらに、クライアントデバイス40は、第1のセグメントの復号されたピクチャを、ピクチャが復号された後に表示することができる。その上、クライアントデバイス40は、たとえば、第1のセグメントの少なくとも一部分を復号した後、第2のセグメントを受信する(412)ことができる。具体的には、クライアントデバイス40は、後続ストリームアクセスポイントを受信する前に、第2のセグメントを受信し、復号することができる。このようにして、クライアントデバイス40は、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第2のセグメントを受信する前に第1のセグメントのコード化ビデオデータの少なくとも一部分を復号することができる。第2のセグメントを受信した後、クライアントデバイス40は、後続ストリームアクセスポイントが利用可能になる前に、第1のセグメントのデータに関連して、第2のセグメントの少なくとも一部分を復号する(414)ことができる。たとえば、第2のセグメントの少なくとも1つのフレームは、第1のセグメントの1つまたは複数のフレームに関連してインター予測コード化され得る。クライアントデバイス40は、第1のセグメントの1つまたは複数のフレームに関連して、第2のセグメントのこのフレームを復号することができる。
このようにして、図13の方法は、メディアデータの第1のセグメントを受信するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、メディアデータの第2のセグメントを受信するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第1のセグメントのメディアデータの少なくとも一部分に関連して、第2のセグメントのメディアデータの少なくとも一部分を復号するステップとを含む方法の一例を表している。具体的には、この例では、第2のセグメントは、ストリームアクセスポイントを欠く、すなわち、ストリームアクセスポイントをまったく含まない。
その上、図13の方法は、メディアデータの第1のセグメントを取得するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、第1のセグメントをクライアントデバイスに送るステップと、メディアデータの第2のセグメントを取得するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠き、第2のセグメントのメディアデータの少なくとも一部分は、第1のセグメントのメディアデータの一部分に関連してコード化される、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第2のセグメントをクライアントデバイスに送るステップとを含む方法の一例も表している。
図14は、DASHライブおよび低レイテンシライブプロファイルのデータ構成の例を示す概念図である。この例では、ライブプロファイルは、一例として、(黒の陰影が付けられた部分によって表される)メタデータ、(濃い陰影が付けられた部分によって表される)強制IDRピクチャ、および(薄い陰影が付けられた部分によって表される)0またはそれ以上のシーン変化IDRピクチャを含む5秒のセグメントを含む。すなわち、各セグメントは、復号され、予想フレームレートで再生されるとき、再生時間に相当する5秒に対応するのに十分なデータを含む。たとえば、通知されたフレームレートが60フレーム毎秒である場合、ライブプロファイルの各セグメントは、300フレームのデータを含み得る。図14の具体例では、ライブプロファイルは、1つのシーン変化IDRピクチャを含む第1のセグメントおよび2つのシーン変化IDRピクチャを含む第2のセグメントを含む。ライブプロファイルにおける各セグメントはまた、強制IDRピクチャで始まる。たとえば、対応するビデオコーディング規格は、再生時間に相当する5秒ごとにIDRピクチャが発生しなければならないことを規定し得る。
図14はまた、DASHの低レイテンシライブプロファイルの例示的なデータセットを示している。この例では、低レイテンシライブプロファイルの各セグメントは、再生に相当する1つのセグメントを表している。たとえば、通知されたフレームレートが60フレーム毎秒である場合、各セグメントは、60フレームのデータを含み得る。本開示の技法によれば、低レイテンシライブプロファイルのセグメントのピクチャは、それぞれがIDRピクチャで始まる必要はない。代わりに、低レイテンシライブプロファイルのセグメントのピクチャは、先行セグメントのIDRピクチャに関連してコード化され得る。すなわち、セグメントの開始点においてIDRピクチャを含まないセグメントのピクチャは、IDRピクチャに関連して、IDRピクチャに基づいてコード化されたピクチャに関連して、または独立して(たとえば、Iフレームとして)コード化され得る。各セグメントのメタデータは、セグメントヘッダ情報を含むことができる。各セグメントはIDRピクチャを含む必要がないので、低レイテンシライブプロファイルのデータは、ライブプロファイルと比較してレイテンシを低減することができ、その理由は、低レイテンシライブプロファイルのセグメントが、ライブプロファイルの対応するセグメントの前に送られ得ることにある。
一例では、DASHライブプロファイルを利用するように構成された(図1のクライアントデバイス40などの)クライアントデバイスは、クライアントデバイスがDASH低レイテンシライブプロファイルを利用するように構成されるときよりも多くのセグメント当たりビデオデータをバッファリングすることができる。たとえば、図14に示すように、DASHライブプロファイルはクライアントデバイスに対し、セグメント当たりビデオデータ5秒をバッファリングさせることができ、一方でDASH低レイテンシライブプロファイルはクライアントデバイスに対し、セグメント当たりビデオデータ1秒をバッファリングさせることができる。上記のように、バッファリングされる特定の時間量は、再生時間量に対応する。このようにして、DASH低レイテンシライブプロファイルは、同じストリームをより多くのセグメントに分割することができる。すなわち、図14に示すように、ライブプロファイルおよび低レイテンシライブプロファイルは、同じメディアコンテンツの異なる表現に対応し得る。さらに、本開示の技法によれば、DASHライブプロファイルは、各セグメントの開始点においてSAPまたはIDRピクチャを必要とし得る一方、DASH低レイテンシライブプロファイルは、そのような必要条件を省略することができる。すなわち、図14に示すように、DASH低レイテンシライブプロファイルに従って形成される表現は、1つまたは複数のセグメントの開始点においてIDRピクチャを欠いてよい。
図15は、物理層における例示的なDASHライブおよびDASH低レイテンシライブプロファイルのセグメント当たりビットレートを示す概念図である。DASH低レイテンシライブプロファイルは、レイテンシを低減することがあるが、セグメント間のデータサイズの変動を増大させることもある。たとえば、図15に示すように、DASH低レイテンシライブプロファイルのセグメントは、各セグメントのレートがさほど平坦ではない場合があるので、DASHライブプロファイルのセグメントよりも大きいサイズを有し得る。図15において、例として、IDRフレームおよび他のフレームは、サイズが固定であると仮定され、その割合は、様々なコンテンツタイプの平均に基づいている。
図16は、低レイテンシライブセグメントのピークツーピークビットレート変動を最小化するための技法を示す概念図である。一例では、複数のサービスが一緒に多重化され得る。総ビットレート変動はDASH低レイテンシライブプロファイルの場合、DASH低レイテンシライブプロファイルのセグメントロケーションに対して強制IDRピクチャのフェーズをずらすことによって最小化され得る。たとえば、図16に示すように、DASH低レイテンシライブプロファイルのセグメントごとに1つの強制IDRピクチャがずらされて挿入される。サービスが1つの集合にN個のストリームを有する場合、強制IDRピクチャのN個のフェーズが、DASHライブプロファイルのセグメント持続時間およびDASH低レイテンシライブプロファイルのセグメントの間の整数関係(integer relationship)に基づいて、ラウンドロビン式に挿入され得る。言い換えれば、図16では、DASHライブプロファイルのセグメントはDASH低レイテンシライブプロファイルのセグメントの長さの5倍であるので、5つの強制IDRピクチャがラウンドロビン式に挿入され得る。一構成では、DASHライブプロファイルのセグメントがあまりにも長くなるような多数のサービスがある場合、N個のサービスが複数のIDRピクチャのラウンドロビングループに分割され得る。さらに、強制IDRピクチャのラウンドロビンは厳密にNである必要はなく、強制IDRピクチャ間隔はNよりも大きくてよい。
このようにして、ソースデバイス、たとえばコンテンツ準備デバイス20またはサーバデバイス60は、サービスの集合を形成するステップであって、サービスの各々はそれぞれの複数のセグメントを含み、サービスのうちの1つは、第1のセグメントおよび第2のセグメントを含む複数のセグメントを含む、ステップを行うように構成されてよく、サービスの集合を形成するステップは、動的適応ストリーミングオーバーHTTP(DASH)ライブプロファイルサービスを含むようにサービスのうちの1つを形成するステップであって、DASHライブプロファイルサービスの第1のセグメントの第1のSAPは、第1のプレゼンテーション時間を有し、DASHライブプロファイルの第2のセグメントの第2のSAPは、第2のプレゼンテーション時間を有し、第1のセグメントおよび第2のセグメントは、DASHライブプロファイルサービス内で連続している、ステップと、それぞれのDASH低レイテンシライブプロファイルサービスを含むようにサービスのうちの1つまたは複数を形成するステップであって、それにより、第1のプレゼンテーション時間と第2のプレゼンテーション時間との間のプレゼンテーション時間において、DASH低レイテンシライブプロファイルサービスは、第1のプレゼンテーション時間と、第1のプレゼンテーション時間とは異なり、かつDASH低レイテンシライブプロファイルサービスの他のサービスの他のSAPのプレゼンテーション時間とは異なる第2のプレゼンテーション時間との間にあるプレゼンテーション時間を有するSAPを含む、ステップとを含む。
ソースデバイスはさらに、第1のプレゼンテーション時間と第2のプレゼンテーション時間との間にあるプレゼンテーション時間を有するSAPを含むDASH低レイテンシライブプロファイルサービスのセグメントが、シーン変化瞬間デコーダリフレッシュ(IDR)ピクチャを含まないとき、第1のセグメントが、DASH低レイテンシライブプロファイルサービスのセグメントの長さの倍数である長さを有するように、DASHライブプロファイルサービスを形成することができる。その上、ソースデバイスは、サービスの集合が、サービスのしきい値数を超える数のサービスを含むかどうかを判定することができ、サービスの数がサービスのしきい値数を超えるときに、集合を2つ以上の別個のサービス集合に分割することができる。
DASH低レイテンシライブプロファイルサービスのセグメントは、第1の長さを有してよく、ソースデバイスは、DASH低レイテンシライブプロファイルサービスの数と第1の長さとの積に第1の長さを加えた値に等しい長さを有するように、DASHライブプロファイルサービスの第1のセグメントを構築することができる。すなわち、第1の長さがKであり、サービスの数がNである場合、DASHライブプロファイルサービスの第1のセグメントの長さは、K*N+K、または(N+1)*Kの長さを有し得る。代替的に、DASHライブプロファイルサービスの第1のセグメントの長さは、(N+J)*K(Jは正の整数)であり得る。
サービスの集合が集合全体の第1のサブセットにすぎず、集合全体が比較的大きい場合、集合全体の第2のサブセットは、第1のサブセットのSAPのプレゼンテーション時間に対応するプレゼンテーション時間にSAPを含むことができる。このようにして、サービスの集合は、サービスの集合全体の第1のサブセットを含み、サービスの集合全体の第2のサブセットは、第1のサブセットのDASH低レイテンシライブプロファイルサービスのプレゼンテーション時間のうちの少なくともいくつかのプレゼンテーション時間にSAPを含むDASH低レイテンシライブプロファイルサービスを含む。すなわち、ソースデバイスは、サービスの集合が大きい場合に、セグメントごとのサービス集合当たりSAPの数を増大させ得る。
図17は、シーン変化IDRフレームが強制IDRフレームと同時に発生する、DASHライブおよびDASH低レイテンシライブプロファイルに対応する例示的な表現を示す概念図である。DASH低レイテンシライブプロファイルでは、(SAPの一例を表す)強制IDRフレームは、シーン変化IDRフレームと同時に発生する(すなわち、強制IDRフレームとシーン変化IDRフレームとが同じセグメント内にある)ことがあり得る。ソースデバイス、たとえばコンテンツ準備デバイス20またはサーバデバイス60(図1)は、IDRピクチャが必要とされると関連コーディング規格が規定する(再生時間で測定される)時にセグメントが発生していると判定し得る。しかしながら、ソースデバイスはさらに、セグメントがシーン変化IDRピクチャなどのIDRピクチャを含むと判定し得る。
したがって、強制IDRピクチャとシーン変化IDRピクチャの両方をセグメントに含めるのではなく、ソースデバイスは、シーン変化IDRピクチャを含めるだけであってよく、それにより、関連規格の要件に適合するとともに、セグメントのレート歪みメトリックを改善することができる。(復号順序による)セグメントのシーン変化IDRピクチャの前に発生したピクチャのデータは、先行セグメントのデータに関連してコード化され得る。ソースデバイスはさらに、シーン変化IDRピクチャに対するバイトオフセットなど、ランダムアクセスポイントとして、シーン変化IDRピクチャにアクセスするための情報を提供することができる。このようにして、クライアントデバイス40などのクライアントデバイスは、このデータを使用して、セグメントの開始点からではなく、シーン変化IDRピクチャからストリームを開始することができる。
DASH低レイテンシライブプロファイルでは、シーン変化IDRは再配置できない。一例では、このセグメントにおいて、DASH低レイテンシライブプロファイルに必要な能力を変化させることなく、強制IDRフレームがドロップされ得る(すなわち、ドロップされた強制IDRフレームの機能は、シーン変化IDRピクチャによって提供され得る)。DASH低レイテンシライブプロファイルは、IDRフレームまたはSAPで始まらないセグメントをサポートすることができる。一方、DASHライブプロファイルは、強制IDRフレームを保持することができる。この動作により、DASH低レイテンシライブプロファイルは、DASHライブプロファイルとは異なるものとなり得るが、符号化は単一の機能に委ねられるので、専用場所内アプリケーション(dedicated in-venue application)の問題は生じ得ない。しかしながら、将来のセグメント中のビデオピクチャを参照するビデオピクチャが回避される必要があり得るか、またはレイテンシの増大があり得る。
図18は、同時に発生しないシーン変化IDRフレームが存在する場合におけるピークツーピークビットレート変動を最小化するための技法を示す概念図である。一例として、シーン変化IDRピクチャは潜在的に、別のストリームの強制IDRフレームのラウンドロビン割当てと同時に発生し得る。一例では、強制IDRピクチャは、同じDASH低レイテンシライブプロファイルセグメント中の異なるストリーム上に2つのIDRピクチャが発生するのを防止するように、セグメント1個分だけ遅延し得る。この技法は、同じエンコーダによるDASHライブプロファイルおよびDASH低レイテンシライブプロファイルの基本的な同時生成に適合し得ない。別の例では、ラウンドロビングループにおけるサービスに2つ以上のシーン変化IDRピクチャがある場合、強制IDRピクチャ1つのみがドロップされること、または遅延することがある。前述のように強制IDRピクチャは、同じサービスにシーン変化IDRピクチャがある場合にドロップされてよく、または別のサービスの同じセグメントにシーン変化IDRピクチャがある場合に遅延してよい。
このようにして、ソースデバイス、たとえばコンテンツ準備デバイス20またはサーバデバイス60は、複数の異なる表現のうちの1つのセグメントがストリームアクセスポイントを含むときに、複数の異なる表現の他の表現の時間的に同じ位置にあるセグメントがストリームアクセスポイントを欠くように、複数の異なる表現のために複数のセグメントを形成するように構成され得る。
図19は、シーン変化IDRフレームを考慮するほぼ最適な強制IDRピクチャシーケンスを示す概念図である。DASH低レイテンシライブプロファイルサービスの集合におけるサービスの数を上回るケイデンス(cadence)でセグメントに強制IDRピクチャを挿入することにより、IDRピクチャを再配置する際の柔軟性を増大させることができる。一例では、セグメント当たりの所与のサービスにおけるIDRピクチャの見込み総数は、次式によって与えられ得る。
上式において、Cは、セグメントにおける強制IDRピクチャの挿入ケイデンス(insertion cadence)、Sは、セグメントにおけるシーン変化IDRピクチャ間の平均時間、Nは、集合におけるサービスの数である。レートを平坦にするための基本的な機構は、サービスの集合におけるセグメント当たり1つのIDRピクチャを実現することであるので、強制IDRピクチャ当たりセグメントの数を、サービスの数を上回るケイデンスまで増やすことで、セグメント当たり1つのIDRフレームという目標を達成できる確率が上昇し得る。しかしながら、目標は少なくともセグメント集合当たり1つのIDRピクチャを実現することであるので、この手法には限界があり得る。
たとえば、図19に示すように、4つのサービスがあり、シーン変化IDRピクチャまでの平均時間がセグメント7個分である場合、強制IDRピクチャケイデンスの持続時間は、持続時間に8個のセグメントが最適であり得る。この例では、名目上、セグメント1つおきに、集合のすべてのサービスに1つの強制IDRピクチャがあり得る。上記で説明した技法を使用して、強制IDRピクチャは、シーン変化IDRピクチャと同時に発生するときにシフトし得る。
図19に示す例において、強制IDRフレームロケーションにシーン変化IDRピクチャがまったく発生しないが、これは不定で、かつ可能性が低いことがある。しかしながら、この構成は、集合のセグメント当たり1つのIDRピクチャという目標を達成する。サービスのコンテンツが密接に相関する場合、シーン変化も密接に相関することがあり、説明する方法はさほど効果的ではないことがある。さらに、サービスのグループが大きい場合、目標は、集合セグメント当たり2つ以上のIDRピクチャに調整され得る。これは、サービスのプールが増加し得るので、複数のグループを有するよりも効果的であり得る。その上、サービスの数とセグメント当たりシーン変化IDRピクチャの確率との積が1に近づくとき、強制IDRピクチャのケイデンスが非常に大きくなり得る。
図20は、本開示のいくつかの技法による表現を形成するための別の例示的な方法を示すフローチャートである。この例では、サーバデバイス、たとえばコンテンツ準備デバイス20またはサーバデバイス60(図1)は、セグメントの開始点以外の位置においてSAPを含む少なくとも1つのセグメントを含む表現を形成する。具体的には、この例では、サーバデバイスは第1のセグメントのためのマルチメディアデータを受信する(450)。マルチメディアデータは、符号順序による第1のセグメントの開始点においてIDRピクチャを含み得る。代替的に、マルチメディアデータは、IDRピクチャを含まなくてよいが、サーバデバイスは、IDRピクチャとして第1のセグメントのためのピクチャをトランスコードし得る。したがって、サーバデバイスは、(符号順序による)第1のセグメントの開始点においてIDRピクチャを含むとともに、受信された残りのマルチメディアデータを含む第1のセグメントを作成する(452)ことができる。
次いでサーバデバイスは引き続き、(図20に示されていない)他のセグメントをコード化することができる。他のセグメントをコード化している間、サーバデバイスは第1のセグメントのIDRピクチャからの時間的距離を追跡することができる。この追跡に基づいて、サーバデバイスは、関連コーディング規格によって示されるように、次のIDRピクチャまでの時間的距離がいつ経過しているかを判定する(454)ことができる。たとえば、サーバデバイスは、他のセグメントに含まれているピクチャの数、ならびにマルチメディアデータの再生のフレームレートを追跡し、フレームレートおよびピクチャの数に基づいて、時間的距離がいつ経過しているかを判定することができる。
次いでサーバデバイスは、時間的距離をおいて第2のセグメントのためのマルチメディアデータを受信する(456)ことができる。1つまたは複数のセグメントは第1のセグメントを第2のセグメントから分離し得ること、ならびに図20の記述において「第1の」および「第2の」という用語は順序的にではなく名目的に使用されていることを理解されたい。サーバデバイスはさらに、第2のセグメントのマルチメディアデータがシーン変化IDRピクチャを含むと判定する(458)ことがある。その上、サーバデバイスは、マルチメディアデータが他のIDRピクチャ、たとえば、第2のセグメントのマルチメディアデータの開始点においてIDRピクチャをまったく含んでいないと判定することがある。
従来では、第2のセグメントは、第2のセグメントの開始点においてIDRピクチャを含み得るが、本開示の技法によれば、サーバデバイスはシーン変化IDRピクチャを、関連コーディング規格に適合するIDRピクチャとして扱うことができる。すなわち、第2のセグメントのシーン変化IDRピクチャを、追加の「強制IDR」ピクチャの代わりに使用することができる。したがって、サーバデバイスは、関連規格の規定にもかかわらず、第2のセグメントの開始点において第2のセグメントがIDRピクチャを欠くように、マルチメディアデータを含む第2のセグメントを形成することができる。第2のセグメントのマルチメディアデータは、シーン変化IDRピクチャを含むので、このシーン変化IDRピクチャは、特定の時間的規則性を伴って発生するIDRピクチャの関連規格の規定に適合し得る。
さらに、クライアントデバイス40(図1)などのクライアントデバイスは、第2のセグメントのデータを取り出す(462)ことができる。たとえば、クライアントデバイスは、シーン変化IDRピクチャにおいてネットワークストリーミングを開始することができる。したがってクライアントデバイスは、第2のセグメントの開始点においてネットワークストリーミングを開始するのではなく、代わりにシーン変化IDRピクチャにおいてネットワークストリーミングを開始することができる。サーバデバイスは、シーン変化IDRピクチャの開始点に対するバイト範囲オフセットを、たとえば、第1のセグメントおよび第2のセグメントに対応するマニフェストファイルにおいて通知することができる。したがって、クライアントデバイスは、バイトオフセットで始まる第2のセグメントのバイト範囲を指定して、部分GET要求を提出することができる。
クライアントデバイスは、シーン変化IDRピクチャに先行する第2のセグメントのデータを取り出すことができるが、取り出す必要はない。しかしながら、クライアントデバイスが、第2のセグメントでストリーミングを開始するとき、(復号順序による)第2のセグメントにおけるシーン変化IDRピクチャに先行するそのようなデータは、復号可能でないことがある。クライアントデバイスは、復号順序によるシーン変化IDRピクチャで始まる形で、第2のセグメントの受信されたデータを復号する(464)ことができる。クライアントデバイスはまた、復号後に第2のセグメントのピクチャの順序を表示順序に並べ替え、復号されたピクチャを表示することができる。
このようにして、図20の方法は、マルチメディアデータのセグメントを受信するステップであって、マルチメディアデータのセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、セグメントのメディアデータの少なくとも一部分を復号するステップとを含む方法の一例を表している。
図20の方法は、第2のセグメントで始まるランダムアクセスをクライアントデバイスが実行する一例を表している。しかしながら、他の例では、クライアントデバイスは、第1のセグメントと第2のセグメントの両方を受信することができる。そのような例では、方法は、メディアデータの第1のセグメントを受信するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、メディアデータの第2のセグメントを受信するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第1のセグメントのメディアデータの少なくとも一部分に関連して、第2のセグメントのメディアデータの少なくとも一部分を復号するステップとを含むことができる。具体的には、この例では、第2セグメントは、第1のストリームアクセスポイントと第2のストリームアクセスポイントの両方とは別個の第3のストリームアクセスポイントを含み、第3のストリームアクセスポイントは、第2のセグメントの開始点以外の位置において発生する。このようにして、第3のストリームアクセスポイントは、第1のストリームアクセスポイントの後であるが、第2のストリームアクセスポイントの前に発生する。第1のセグメントに関連して復号される第2のセグメントの部分は、復号順序によるシーン変化IDRに先行する1つまたは複数のピクチャに対応し得る。
図20の方法は、メディアデータの第1のセグメントを取得するステップであって、第1のセグメントのメディアデータは、第1のストリームアクセスポイントを含む、ステップと、第1のセグメントをクライアントデバイスに送るステップと、メディアデータの第2のセグメントを取得するステップであって、第2のセグメントのメディアデータは、第2のセグメントの開始点においてストリームアクセスポイントを欠き、第2のセグメントのメディアデータの少なくとも一部分は、第1のセグメントのメディアデータの一部分に関連してコード化される、ステップと、第1のストリームアクセスポイントの後、第2のストリームアクセスポイントが利用可能になる前に、第2のセグメントをクライアントデバイスに送るステップとを含む方法の一例も表している。
1つまたは複数の例では、本明細書で説明する機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶され、あるいはコンピュータ可読媒体を介して送信されてよく、かつハードウェアに基づく処理ユニットによって実行されてよい。コンピュータ可読媒体は、データ記憶媒体のような有形媒体、または、たとえば通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を支援する任意の媒体を含む通信媒体に相当する、コンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は一般に、(1)非一時的な有形コンピュータ可読記憶媒体または(2)信号波もしくは搬送波のような通信媒体に相当し得る。データ記憶媒体は、本開示で説明される技法を実装するための、命令、コード、および/またはデータ構造を取り出すために、1つもしくは複数のコンピュータまたは1つもしくは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であってよい。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令もしくはデータ構造の形態の所望のプログラムコードを記憶するために使用され、コンピュータによってアクセスされ得る任意の他の媒体を含み得る。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的な媒体を含まず、代わりに非一時的な有形記憶媒体を指すことを理解されたい。本明細書で使われる場合、ディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)、レーザーディスク(登録商標)、光ディスク、デジタル多用途ディスク(DVD)、フロッピー(登録商標)ディスク、およびブルーレイディスクを含み、ディスク(disk)は、通常、磁気的にデータを再生し、ディスク(disc)は、レーザーで光学的にデータを再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
命令は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または他の等価の集積論理回路もしくはディスクリート論理回路のような、1つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用される「プロセッサ」という用語は、前述の構造、または、本明細書で説明される技法の実装に適した任意の他の構造の、いずれをも指し得る。加えて、いくつかの態様では、本明細書で説明される機能は、符号化および復号のために構成された、専用のハードウェアモジュールおよび/またはソフトウェアモジュール内で提供されてよく、または、組み合わされたコーデックに組み込まれてよい。また、技法は、1つまたは複数の回路素子または論理素子において完全に実装されてもよい。
本開示の技法は、ワイヤレスハンドセット、集積回路(IC)、またはICのセット(たとえば、チップセット)を含む、多様なデバイスまたは装置において実装され得る。様々な構成要素、モジュール、またはユニットが、開示される技法を実行するように構成されるデバイスの機能的な側面を強調するために、本開示において説明されるが、必ずしも異なるハードウェアユニットによる実現を必要としない。むしろ上で説明されたように、様々なユニットは、コーデックハードウェアユニットへと組み合わされてよく、または、適切なソフトウェアおよび/またはファームウェアとともに、上で説明されたような1つまたは複数のプロセッサを含む相互動作可能なハードウェアユニットの集合によって与えられてよい。
様々な例が説明されてきた。これらの例および他の例は、以下の特許請求の範囲内にある。
10 システム
20 コンテンツ準備デバイス
22 オーディオソース
24 ビデオソース
26 オーディオエンコーダ
28 ビデオエンコーダ
30 カプセル化ユニット
32 出力インターフェース
40 クライアントデバイス
42 オーディオ出力
44 ビデオ出力
46 オーディオデコーダ
48 ビデオデコーダ
50 カプセル化解除ユニット
52 取出しユニット
54 ネットワークインターフェース
60 サーバデバイス
62 記憶媒体、メモリ
64 マルチメディアコンテンツ
66 マニフェストファイル
68 表現
68A 表現
68N 表現
70 要求処理ユニット
72 ネットワークインターフェース
74 ネットワーク
80 ストリーム管理ユニット
90 ソース構成要素
92 メディアファイル記憶処理ユニット
94 MPDパーシングユニット
96 メディアファイル逆多重化(demux)ユニット
98 適応ユニット

Claims (61)

  1. メディアデータを受信する方法であって、
    メディアデータの第1のセグメントを受信するステップであって、前記第1のセグメントの前記メディアデータは、第1のストリームアクセスポイントを含む、ステップと、
    メディアデータの第2のセグメントを受信するステップであって、前記第2のセグメントの前記メディアデータは、前記第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、
    前記第2のセグメントを受信する前に、前記第1のセグメントの前記メディアデータを復号するステップと、
    前記第1のストリームアクセスポイントを使用して前記第1のセグメントの前記メディアデータを復号した後、第2のストリームアクセスポイントを含むセグメントを受信する前に、前記第1のセグメントの前記メディアデータを参照して、前記第2のセグメントの前記メディアデータを復号するステップと
    を含む方法。
  2. 前記第2のセグメントはストリームアクセスポイントを欠く、請求項1に記載の方法。
  3. 前記第1のセグメントのコード化データは再生持続時間に対応し、前記第2のセグメントのコード化データは同じ再生持続時間に対応する、請求項1に記載の方法。
  4. 表現が、前記第1のセグメントおよび前記第2のセグメントを含む複数のセグメントを含み、前記複数のセグメントの各々は同じ再生持続時間を含む、請求項3に記載の方法。
  5. 前記第1のセグメントのコード化データは再生時間の第1の持続時間に対応し、前記第2のセグメントのコード化データは、前記第1の再生持続時間とは異なる第2の再生持続時間に対応する、請求項1に記載の方法。
  6. 前記ストリームアクセスポイントは、前記第1のセグメントの瞬間デコーダリフレッシュ(IDR)ピクチャを含む、請求項1に記載の方法。
  7. 前記第1のセグメントは、第1の動的適応ストリーミングオーバーHTTP(DASH)セグメントを含み、前記第2のセグメントは、前記第1のDASHセグメントとは異なる第2のDASHセグメントを含む、請求項1に記載の方法。
  8. 1つまたは複数のプロセッサを含む、メディアデータを受信するためのデバイスであって、
    前記1つまたは複数のプロセッサは、メディアデータの第1のセグメントを受信するステップであって、前記第1のセグメントの前記メディアデータは、第1のストリームアクセスポイントを含む、ステップと、
    メディアデータの第2のセグメントを受信するステップであって、前記第2のセグメントの前記メディアデータは、前記第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、
    前記第2のセグメントを受信する前に、前記第1のセグメントの前記メディアデータを復号するステップと、
    前記第1のストリームアクセスポイントを使用して前記第1のセグメントの前記メディアデータを復号した後、第2のストリームアクセスポイントを含むセグメントを受信する前に、前記第1のセグメントのデータを参照して、前記第2のセグメントの前記メディアデータを復号するステップと
    を行うように構成される、デバイス。
  9. 前記第2のセグメントはストリームアクセスポイントを欠く、請求項8に記載のデバイス。
  10. 前記第1のセグメントのコード化データは再生持続時間に対応し、前記第2のセグメントのコード化データは同じ再生持続時間に対応する、請求項8に記載のデバイス。
  11. 表現が、前記第1のセグメントおよび前記第2のセグメントを含む複数のセグメントを含み、前記複数のセグメントの各々は同じ再生持続時間を含む、請求項10に記載のデバイス。
  12. 前記第1のセグメントの前記メディアデータは、第1の再生時間を有するメディアデータに対応し、前記第2のセグメントの前記メディアデータは、前記第1の再生時間とは異なる第2の再生時間を有するメディアデータに対応する、請求項8に記載のデバイス。
  13. 前記第1のセグメントは、第1の動的適応ストリーミングオーバーHTTP(DASH)セグメントを含み、前記第2のセグメントは、前記第1のDASHセグメントとは異なる第2のDASHセグメントを含む、請求項8に記載のデバイス。
  14. メディアデータを受信するためのデバイスであって、
    メディアデータの第1のセグメントを受信するための手段であって、前記第1のセグメントは、第1のストリームアクセスポイントを含む、手段と、
    メディアデータの第2のセグメントを受信するための手段であって、前記第2のセグメントの前記メディアデータは、前記第2のセグメントの開始点においてストリームアクセスポイントを欠く、手段と、
    前記第2のセグメントを受信する前に、前記第1のセグメントの前記メディアデータを復号するための手段と、
    前記第1のストリームアクセスポイントを使用して前記第1のセグメントの前記メディアデータを復号した後、第2のストリームアクセスポイントを含むセグメントを受信する前に、前記第1のセグメントの前記メディアデータを参照して、前記第2のセグメントの前記メディアデータを復号するための手段と
    を含むデバイス。
  15. 前記第2のセグメントはストリームアクセスポイントを欠く、請求項14に記載のデバイス。
  16. 前記第1のセグメントのコード化データは再生持続時間に対応し、前記第2のセグメントのコード化データは同じ再生持続時間に対応する、請求項14に記載のデバイス。
  17. 前記第1のセグメントの前記メディアデータは、第1の再生時間を有するメディアデータに対応し、前記第2のセグメントの前記メディアデータは、前記第1の再生時間とは異なる第2の再生時間を有するメディアデータに対応する、請求項14に記載のデバイス。
  18. 前記第1のセグメントは、第1の動的適応ストリーミングオーバーHTTP(DASH)セグメントを含み、前記第2のセグメントは、前記第1のDASHセグメントとは異なる第2のDASHセグメントを含む、請求項14に記載のデバイス。
  19. 実行されると、プロセッサに、
    メディアデータの第1のセグメントを受信するステップであって、前記第1のセグメントの前記メディアデータは、第1のストリームアクセスポイントを含む、ステップと、
    メディアデータの第2のセグメントを受信するステップであって、前記第2のセグメントの前記メディアデータは、前記第2のセグメントの開始点においてストリームアクセスポイントを欠く、ステップと、
    前記第2のセグメントを受信する前に、前記第1のセグメントの前記メディアデータを復号するステップと、
    前記第1のストリームアクセスポイントを使用して前記第1のセグメントの前記メディアデータを復号した後、第2のストリームアクセスポイントを含むセグメントを受信する前に、前記第1のセグメントの前記メディアデータを参照して、前記第2のセグメントの前記メディアデータを復号するステップと
    を行わせる命令を記憶したコンピュータ可読記憶媒体。
  20. 前記第2のセグメントはストリームアクセスポイントを欠く、請求項19に記載のコンピュータ可読記憶媒体。
  21. 前記第1のセグメントのコード化データは再生持続時間に対応し、前記第2のセグメントのコード化データは同じ再生持続時間に対応する、請求項19に記載のコンピュータ可読記憶媒体。
  22. 前記第1のセグメントの前記メディアデータは、第1の再生時間を有するメディアデータに対応し、前記第2のセグメントの前記メディアデータは、前記第1の再生時間とは異なる第2の再生時間を有するメディアデータに対応する、請求項19に記載のコンピュータ可読記憶媒体。
  23. 前記第1のセグメントは、第1の動的適応ストリーミングオーバーHTTP(DASH)セグメントを含み、前記第2のセグメントは、前記第1のDASHセグメントとは異なる第2のDASHセグメントを含む、請求項19に記載のコンピュータ可読記憶媒体。
  24. メディアデータを送る方法であって、
    メディアデータの第1のセグメントを取得するステップであって、前記第1のセグメントは、第1のストリームアクセスポイントを含む、ステップと、
    前記第1のセグメントをクライアントデバイスに送るステップと、
    メディアデータの第2のセグメントを取得するステップであって、前記第2のセグメントの前記メディアデータは、前記第2のセグメントの開始点においてストリームアクセスポイントを欠き、前記第2のセグメントの前記メディアデータは、前記第1のセグメントの前記メディアデータを参照してコード化される、ステップと、
    前記第2のセグメントを送信する前に、前記第1のセグメントの前記メディアデータを符号化するステップと、
    前記第1のストリームアクセスポイントを使用して前記第1のセグメントの前記メディアデータを符号化した後、第2のストリームアクセスポイントを含むセグメントを送信する前に、前記第2のセグメントを前記クライアントデバイスに送るステップと
    を含む方法。
  25. 前記第2のセグメントはストリームアクセスポイントを欠く、請求項24に記載の方法。
  26. 前記第2のセグメントは、ストリームアクセスポイントが必要とされる時間的位置に対応すると判定するステップと、前記第2のセグメントの前記開始点以外の前記位置における前記ストリームアクセスポイントに対応するシーン変化瞬間デコーダリフレッシュ(IDR)ピクチャを、前記必要とされるストリームアクセスポイントとして扱うステップとをさらに含む、請求項24に記載の方法。
  27. サービスの集合を形成するステップであって、前記サービスの各々はそれぞれの複数のセグメントを含み、前記サービスのうちの1つは、前記第1および第2のセグメントを含む複数のセグメントを含む、ステップをさらに含み、サービスの前記集合を形成するステップは、
    第1のサービスを含むように前記サービスのうちの1つを形成するステップであって、前記第1のサービスの第1のセグメントの第1のSAPは、第1のプレゼンテーション時間を有し、前記第1のサービスの第2のセグメントの第2のSAPは、第2のプレゼンテーション時間を有し、前記第1のセグメントおよび前記第2のセグメントは、前記第1のサービスの中で連続している、ステップと、
    前記第1のサービスとは別個の、それぞれの複数のサービスを含むように前記サービスのうちの1つまたは複数を形成するステップであって、それにより、前記第1のプレゼンテーション時間と前記第2のプレゼンテーション時間との間のプレゼンテーション時間において、前記複数のサービスは、前記第1のプレゼンテーション時間と、前記第1のプレゼンテーション時間とは異なり、かつ前記複数のサービスの他のサービスの他のSAPのプレゼンテーション時間とは異なる前記第2のプレゼンテーション時間との間にあるプレゼンテーション時間を有するSAPを含む、ステップと
    を含む、請求項24に記載の方法。
  28. 前記第1のプレゼンテーション時間と前記第2のプレゼンテーション時間との間にある前記プレゼンテーション時間を有する前記SAPを含む前記複数のサービスのセグメントが、シーン変化瞬間デコーダリフレッシュ(IDR)ピクチャを含まないとき、第1のサービスを形成するステップは、前記複数のサービスの前記セグメントの長さの倍数である長さを有するように前記第1のセグメントを形成するステップを含み、前記倍数は1よりも大きい、請求項27に記載の方法。
  29. 前記倍数は、前記複数のサービスの数よりも大きいかまたはそれに等しい、請求項28に記載の方法。
  30. 前記複数のサービスのセグメントは第1の長さを有し、前記第1のサービスの前記第1のセグメントは、複数のサービスの数と前記第1の長さとの積に前記第1の長さを加えた値に等しい長さを有する、請求項27に記載の方法。
  31. サービスの前記集合は、サービスの集合全体の第1のサブセットを含み、サービスの前記集合全体の第2のサブセットは、前記第1のサブセットの前記複数のサービスの前記プレゼンテーション時間のうちの少なくともいくつかのプレゼンテーション時間にSAPを含む複数のサービスを含む、請求項27に記載の方法。
  32. サービスの前記集合は、サービスのしきい値数を超える数のサービスを含むかどうかを判定するステップと、
    サービスの前記数がサービスの前記しきい値数を超えるときに、前記集合を2つ以上の別個のサービス集合に分割するステップと
    をさらに含む、請求項27に記載の方法。
  33. 前記複数のサービスを形成するステップは、ラウンドロビン挿入に実質的に準拠する方法で前記SAPを挿入するステップと、前記複数のサービスの第1のサービスが、前記ラウンドロビン挿入に対応するプレゼンテーション時間以外のプレゼンテーション時間を有するシーン変化瞬間デコーダリフレッシュ(IDR)ピクチャを含むときに、前記複数のサービスの前記第1のサービスのために、前記ラウンドロビン挿入に対応する前記プレゼンテーション時間において前記複数のサービスの第2のサービスのSAPを挿入するステップとを含む、請求項27に記載の方法。
  34. 前記第1のセグメントを送るステップは、前記第2のセグメントを取得する前に前記第1のセグメントを送るステップを含む、請求項24に記載の方法。
  35. 動的適応ストリーミングオーバーHTTP(DASH)の低レイテンシライブプロファイルに準拠する表現を、前記表現が前記第1のセグメントおよび前記第2のセグメントを含むように形成するステップをさらに含む、請求項24に記載の方法。
  36. 前記第1のセグメントのコード化データは再生持続時間に対応し、前記第2のセグメントのコード化データは同じ再生持続時間に対応する、請求項24に記載の方法。
  37. 表現が、前記第1のセグメントおよび前記第2のセグメントを含む複数のセグメントを含む、請求項24に記載の方法。
  38. 前記第1のセグメントを取得するステップは、前記第1のセグメントをコンテンツ準備デバイスから受信するステップを含み、前記第2のセグメントを取得するステップは、前記第2のセグメントを前記コンテンツ準備デバイスから受信するステップを含む、請求項24に記載の方法。
  39. 前記第1のセグメントを取得するステップは、ライブ記録中にリアルタイムで前記第1のセグメントのためのメディアデータを受信するステップを含む、請求項24に記載の方法。
  40. 前記第1のセグメントを取得するステップは、前記第1のセグメントのためのメディアデータを符号化するステップを含み、前記第2のセグメントを取得するステップは、前記第2のセグメントのためのメディアデータを符号化するステップを含む、請求項24に記載の方法。
  41. 前記第2のセグメントのための前記メディアデータを符号化するステップは、前記第1のセグメントのためのデータに関連して、前記第2のセグメントのための前記メディアデータの少なくとも一部分を符号化するステップを含む、請求項40に記載の方法。
  42. 前記第1のセグメントは、第1の動的適応ストリーミングオーバーHTTP(DASH)セグメントを含み、前記第2のセグメントは、前記第1のDASHセグメントとは異なる第2のDASHセグメントを含む、請求項24に記載の方法。
  43. 1つまたは複数のプロセッサを含む、メディアデータを送るためのデバイスであって、前記1つまたは複数のプロセッサは、
    メディアデータの第1のセグメントを取得するステップであって、前記第1のセグメントの前記メディアデータは、第1のストリームアクセスポイントを含む、ステップと、
    前記第1のセグメントをクライアントデバイスに送るステップと、
    メディアデータの第2のセグメントを取得するステップであって、前記第2のセグメントの前記メディアデータは、前記第2のセグメントの開始点においてストリームアクセスポイントを欠き、前記第2のセグメントの前記メディアデータは、前記第1のセグメントの前記メディアデータを参照してコード化される、ステップと、
    前記第2のセグメントを送信する前に、前記第1のセグメントの前記メディアデータを符号化するステップと、
    前記第1のストリームアクセスポイントを使用して前記第1のセグメントの前記メディアデータを符号化した後、第2のストリームアクセスポイントを含むセグメントを送信する前に、前記第2のセグメントを前記クライアントデバイスに送るステップと
    を行うように構成される、デバイス。
  44. 前記第2のセグメントはストリームアクセスポイントを欠く、請求項43に記載のデバイス。
  45. 前記1つまたは複数のプロセッサは、前記第2のセグメントを取得する前に前記第1のセグメントを送るステップを行うように構成される、請求項43に記載のデバイス。
  46. 前記第1のセグメントのコード化データは再生持続時間に対応し、前記第2のセグメントのコード化データは同じ再生持続時間に対応する、請求項43に記載のデバイス。
  47. 表現が、前記第1のセグメントおよび前記第2のセグメントを含む複数のセグメントを含む、請求項43に記載のデバイス。
  48. 前記1つまたは複数のプロセッサは、前記第1のセグメントのためのメディアデータを符号化するステップと、前記第1のセグメントのためのデータに関連して、前記第2のセグメントのためのメディアデータを符号化するステップとを行うように構成される、請求項43に記載のデバイス。
  49. 前記第1のセグメントは、第1の動的適応ストリーミングオーバーHTTP(DASH)セグメントを含み、前記第2のセグメントは、前記第1のDASHセグメントとは異なる第2のDASHセグメントを含む、請求項43に記載のデバイス。
  50. メディアデータを送るためのデバイスであって、
    メディアデータの第1のセグメントを取得するための手段であって、前記第1のセグメントの前記メディアデータは第1のストリームアクセスポイントを含む、手段と、
    前記第1のセグメントをクライアントデバイスに送るための手段と、
    前記メディアデータの第2のセグメントを取得するための手段であって、前記第2のセグメントの前記メディアデータは、前記第2のセグメントの開始点においてストリームアクセスポイントを欠き、前記第2のセグメントの前記メディアデータは、前記第1のセグメントの前記メディアデータを参照してコード化される、手段と、
    前記第2のセグメントを送信する前に、前記第1のセグメントの前記メディアデータを符号化する手段と、
    前記第1のストリームアクセスポイントを使用して前記第1のセグメントの前記メディアデータを符号化した後、第2のストリームアクセスポイントを含むセグメントを送信する前に、前記第2のセグメントを前記クライアントデバイスに送るための手段と
    を含むデバイス。
  51. 前記第2のセグメントはストリームアクセスポイントを欠く、請求項50に記載のデバイス。
  52. 前記第1のセグメントを送るための前記手段は、前記第2のセグメントを取得する前に前記第1のセグメントを送るための手段を含む、請求項50に記載のデバイス。
  53. 表現が、前記第1のセグメントおよび前記第2のセグメントを含む複数のセグメントを含む、請求項50に記載のデバイス。
  54. 前記第1のセグメントを取得するための前記手段は、前記第1のセグメントのためのメディアデータを符号化するための手段を含み、前記第2のセグメントを取得するための前記手段は、前記第1のセグメントのためのデータに関連して、前記第2のセグメントのためのメディアデータを符号化するための手段を含む、請求項50に記載のデバイス。
  55. 前記第1のセグメントは、第1の動的適応ストリーミングオーバーHTTP(DASH)セグメントを含み、前記第2のセグメントは、前記第1のDASHセグメントとは異なる第2のDASHセグメントを含む、請求項50に記載のデバイス。
  56. 実行されると、プロセッサに、
    メディアデータの第1のセグメントを取得するステップであって、前記第1のセグメントの前記メディアデータは、ストリームアクセスポイントを含む、ステップと、
    前記第1のセグメントをクライアントデバイスに送るステップと、
    メディアデータの第2のセグメントを取得するステップであって、前記第2のセグメントの前記メディアデータは、前記第2のセグメントの開始点においてストリームアクセスポイントを欠き、前記第2のセグメントの前記メディアデータは、前記第1のセグメントの前記メディアデータを参照してコード化される、ステップと、
    前記第2のセグメントを送信する前に、前記第1のセグメントの前記メディアデータをコード化するステップと、
    前記第1のストリームアクセスポイントを使用して前記第1のセグメントの前記メディアデータをコード化した後、第2のストリームアクセスポイントを含むセグメントを送信する前に、前記第2のセグメントを前記クライアントデバイスに送るステップと
    を行わせる命令を記憶したコンピュータ可読記憶媒体。
  57. 前記第2のセグメントはストリームアクセスポイントを欠く、請求項56に記載のコンピュータ可読記憶媒体。
  58. 前記プロセッサに、前記第1のセグメントを送るステップを行わせる前記命令は、前記プロセッサに、前記第2のセグメントを取得する前に前記第1のセグメントを送るステップを行わせる命令を含む、請求項56に記載のコンピュータ可読記憶媒体。
  59. 表現が、前記第1のセグメントおよび前記第2のセグメントを含む複数のセグメントを含む、請求項56に記載のコンピュータ可読記憶媒体。
  60. 前記プロセッサに、前記第1のセグメントを取得するステップ行わせる前記命令は、前記プロセッサに、前記第1のセグメントのためのメディアデータを符号化するステップを行わせる命令を含み、前記プロセッサに、前記第2のセグメントを取得するステップ行わせる前記命令は、前記プロセッサに、前記第1のセグメントのためのデータに関連して、前記第2のセグメントのためのメディアデータを符号化するステップを行わせる命令を含む、請求項56に記載のコンピュータ可読記憶媒体。
  61. 前記第1のセグメントは、第1の動的適応ストリーミングオーバーHTTP(DASH)セグメントを含み、前記第2のセグメントは、前記第1のDASHセグメントとは異なる第2のDASHセグメントを含む、請求項56に記載のコンピュータ可読記憶媒体。
JP2014534761A 2011-10-05 2012-10-05 メディアデータのネットワークストリーミング Expired - Fee Related JP5788101B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201161543792P 2011-10-05 2011-10-05
US61/543,792 2011-10-05
US201261703174P 2012-09-19 2012-09-19
US61/703,174 2012-09-19
US13/644,336 2012-10-04
US13/644,336 US9843844B2 (en) 2011-10-05 2012-10-04 Network streaming of media data
PCT/US2012/058922 WO2013052780A1 (en) 2011-10-05 2012-10-05 Network streaming of media data

Publications (2)

Publication Number Publication Date
JP2014531878A JP2014531878A (ja) 2014-11-27
JP5788101B2 true JP5788101B2 (ja) 2015-09-30

Family

ID=48042837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014534761A Expired - Fee Related JP5788101B2 (ja) 2011-10-05 2012-10-05 メディアデータのネットワークストリーミング

Country Status (7)

Country Link
US (1) US9843844B2 (ja)
EP (1) EP2764704A1 (ja)
JP (1) JP5788101B2 (ja)
KR (1) KR101607225B1 (ja)
CN (1) CN103931204B (ja)
IN (1) IN2014CN02159A (ja)
WO (1) WO2013052780A1 (ja)

Families Citing this family (133)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
EP2357732B1 (en) 2002-10-05 2022-04-06 QUALCOMM Incorporated Systematic encoding and decoding of chain reaction codes
KR101170629B1 (ko) 2003-10-06 2012-08-02 디지털 파운튼, 인크. 단일 송신기 또는 다중 송신기를 갖는 통신 시스템의 에러 정정 다중-스테이지 코드 생성기 및 디코더
EP1743431A4 (en) 2004-05-07 2007-05-02 Digital Fountain Inc SYSTEM FOR DOWNLOADING AND RECORDING AND CONTINUOUS READING OF FILES
US9136983B2 (en) 2006-02-13 2015-09-15 Digital Fountain, Inc. Streaming and buffering using variable FEC overhead and protection periods
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US11303684B2 (en) * 2006-09-14 2022-04-12 Opentv, Inc. Methods and systems for data transmission
AU2008298602A1 (en) 2007-09-12 2009-03-19 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) * 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US8930991B2 (en) * 2009-11-19 2015-01-06 Gregory Philpott System and method for delivering content to mobile devices
US9485546B2 (en) 2010-06-29 2016-11-01 Qualcomm Incorporated Signaling video samples for trick mode video representations
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9706006B2 (en) * 2011-07-19 2017-07-11 Infosys Limited System and method of context aware adaption of content for a mobile device
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9357275B2 (en) * 2011-09-06 2016-05-31 Qualcomm Incorporated Network streaming of coded video data
US9565476B2 (en) * 2011-12-02 2017-02-07 Netzyn, Inc. Video providing textual content system and method
US8976814B2 (en) * 2011-12-09 2015-03-10 General Electric Company Method of transporting data from sending node to destination node
US8977704B2 (en) * 2011-12-29 2015-03-10 Nokia Corporation Method and apparatus for flexible caching of delivered media
US10218756B2 (en) * 2012-01-06 2019-02-26 Comcast Cable Communications, Llc Streamlined delivery of video content
US10671585B2 (en) * 2012-01-31 2020-06-02 Pure Storage, Inc. Storing indexed data to a dispersed storage network
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
JP6275691B2 (ja) 2012-04-18 2018-02-07 グーグル エルエルシー 任意の時点でストリーミングメディアにコンテンツを挿入する方法及びシステム
US10616297B2 (en) * 2012-07-09 2020-04-07 Futurewei Technologies, Inc. Content-specific identification and timing behavior in dynamic adaptive streaming over hypertext transfer protocol
US9883011B2 (en) * 2012-10-12 2018-01-30 Canon Kabushiki Kaisha Method and corresponding device for streaming video data
US9357239B2 (en) * 2012-11-16 2016-05-31 Adobe Systems Incorporated Converting live streaming content to video-on-demand streaming content
US9961415B2 (en) 2013-01-24 2018-05-01 Google Llc Method and system for identifying events in a streaming media program
US9680689B2 (en) 2013-02-14 2017-06-13 Comcast Cable Communications, Llc Fragmenting media content
US9648320B2 (en) * 2013-02-22 2017-05-09 Comcast Cable Communications, Llc Methods and systems for processing content
AU2014223523B2 (en) * 2013-02-27 2016-11-17 Apple Inc. Adaptive streaming techniques
US9854017B2 (en) * 2013-03-15 2017-12-26 Qualcomm Incorporated Resilience in the presence of missing media segments in dynamic adaptive streaming over HTTP
US9781576B2 (en) * 2013-04-05 2017-10-03 Iheartmedia Management Services, Inc. Segmented WANcasting
US9338209B1 (en) * 2013-04-23 2016-05-10 Cisco Technology, Inc. Use of metadata for aiding adaptive streaming clients
JP2015012305A (ja) * 2013-06-26 2015-01-19 ソニー株式会社 コンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システム
US8762564B1 (en) * 2013-07-10 2014-06-24 Mdialog Corporation Method and system for dynamically selecting, assembling and inserting content into stream media
RU2655744C2 (ru) * 2013-07-17 2018-05-30 Сони Корпорейшн Устройство подачи содержания, способ подачи содержания, программа, оконечное устройство и система подачи содержания
CN105519130B (zh) 2013-07-19 2019-03-08 索尼公司 信息处理装置和方法
US20150032854A1 (en) * 2013-07-24 2015-01-29 Futurewei Technologies Inc. System and method for network-assisted adaptive streaming
EP2835982B1 (en) * 2013-08-06 2017-12-20 THEO Technologies A method for playing a media stream in a browser application
WO2015022434A1 (en) * 2013-08-16 2015-02-19 Bitmovin Gmbh Apparatus and method for constant quality optimization for adaptive streaming
US20150089073A1 (en) * 2013-09-25 2015-03-26 Ericsson Television Inc System and method for effectuating fast channel change in an adpative streaming environment
US10225319B2 (en) * 2013-09-30 2019-03-05 Telefonaktiebolaget Lm Ericsson (Publ) System and method of a link surfed http live streaming broadcasting system
FR3011415A1 (fr) * 2013-10-01 2015-04-03 Orange Procede de diffusion d'identifiants de sources multicast
US9807452B2 (en) 2013-10-07 2017-10-31 Samsung Electronics Co., Ltd. Practical delivery of high quality video using dynamic adaptive hypertext transport protocol (HTTP) streaming (DASH) without using HTTP in a broadcast network
US9270721B2 (en) 2013-10-08 2016-02-23 Qualcomm Incorporated Switching between adaptation sets during media streaming
US20150121224A1 (en) * 2013-10-28 2015-04-30 At&T Intellectual Property I, L.P. Method and System to Control a Seek Position of Multimedia Content Using a Rotatable Video Frame Graphic
KR101752435B1 (ko) * 2013-11-01 2017-07-03 엘지전자 주식회사 방송 신호를 송신하는 장치, 방송 신호를 수신하는 장치, 방송 신호를 송신하는 방법 및 방송 신호를 수신하는 방법
JP2017504996A (ja) * 2013-11-27 2017-02-09 インターデイジタル パテント ホールディングス インコーポレイテッド メディアプレゼンテーション記述
US20150172066A1 (en) * 2013-12-13 2015-06-18 Qualcomm Incorporated Practical implementation aspects of unicast fetch for http streaming over embms
US9699229B2 (en) * 2014-01-16 2017-07-04 Qualcomm Incorporated Robust live operation of dash
JP2015136059A (ja) 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
JP2015136057A (ja) * 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
JP2015136058A (ja) * 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
US9900362B2 (en) 2014-02-11 2018-02-20 Kiswe Mobile Inc. Methods and apparatus for reducing latency shift in switching between distinct content streams
CN106464313B (zh) * 2014-03-24 2020-03-31 瑞典爱立信有限公司 在移动网络中使用协调多点的分段传送
US20150294374A1 (en) * 2014-04-11 2015-10-15 Comcast Cable Communications, Llc Methods And Systems For Providing Content
JP6419848B2 (ja) * 2014-06-30 2018-11-07 ディッシュ テクノロジーズ エル.エル.シー.DISH Technologies L.L.C. 帯域幅最適化のための適応的データセグメント配信調停
US20160014439A1 (en) * 2014-07-14 2016-01-14 Cisco Technology Inc. Indexing of Video Assets
US20160041993A1 (en) * 2014-08-05 2016-02-11 Time Warner Cable Enterprises Llc Apparatus and methods for lightweight transcoding
CN105376641B (zh) * 2014-08-26 2018-03-09 无锡天脉聚源传媒科技有限公司 一种将音视频文件流化的装置和方法
US9986007B2 (en) * 2014-09-23 2018-05-29 Futurewei Technologies, Inc. Ownership identification, signaling, and handling of content components in streaming media
MX2017005085A (es) * 2014-10-22 2018-01-30 Arris Entpr Llc Reduccion de latencia de transmision de velocidad binaria adaptativa.
JP2016092837A (ja) * 2014-10-30 2016-05-23 株式会社東芝 映像圧縮装置、映像再生装置および映像配信システム
US10666698B1 (en) 2014-12-19 2020-05-26 Amazon Technologies, Inc. Bit rate selection for streaming media
US10708331B1 (en) 2014-12-19 2020-07-07 Amazon Technologies, Inc. Generating requests for streaming media
BR112017015841B1 (pt) 2015-02-04 2024-01-30 Telefonaktiebolaget Lm Ericsson (Publ) Dispositivo para decodificar amostras de ponto de acesso aleatório dependente, dispositivo para gerar um arquivo de recipiente de mídia, métodos relacionados e arquivo de recipiente de mídia
EP3257252A1 (en) * 2015-02-09 2017-12-20 Bitmovin GmbH Client, live-streaming server and data stream using an information on a current segment of a sequence of segments
US10270823B2 (en) * 2015-02-10 2019-04-23 Qualcomm Incorporated Low latency video streaming
KR102111572B1 (ko) * 2015-02-13 2020-05-15 에스케이텔레콤 주식회사 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치
US9800903B2 (en) * 2015-04-09 2017-10-24 Dejero Labs Inc. Systems, devices and methods for distributing data with multi-tiered encoding
US9973562B2 (en) * 2015-04-17 2018-05-15 Microsoft Technology Licensing, Llc Split processing of encoded video in streaming segments
CA2983891A1 (en) * 2015-05-20 2016-11-24 Nxt Solutions Ag Iptv in managed networks
CN104935845A (zh) * 2015-05-25 2015-09-23 深圳创维-Rgb电子有限公司 一种电视用蓝牙低音箱的实现方法及系统
US9961544B2 (en) * 2015-05-26 2018-05-01 Skullcandy, Inc. Personalized media delivery
US10412461B2 (en) 2015-06-12 2019-09-10 Cable Television Laboratories, Inc. Media streaming with latency minimization
US10554713B2 (en) * 2015-06-19 2020-02-04 Microsoft Technology Licensing, Llc Low latency application streaming using temporal frame transformation
TWI736542B (zh) * 2015-08-06 2021-08-21 日商新力股份有限公司 資訊處理裝置、資料配訊伺服器及資訊處理方法、以及非暫時性電腦可讀取之記錄媒體
KR102477464B1 (ko) * 2015-11-12 2022-12-14 삼성전자주식회사 무선 통신 시스템에서 음성 패킷의 크기를 제어하기 위한 장치 및 방법
KR102476207B1 (ko) * 2015-11-12 2022-12-08 삼성전자주식회사 반도체 장치의 동작 방법 및 반도체 시스템
EP3398346A1 (en) * 2015-12-28 2018-11-07 Koninklijke KPN N.V. Video streams
KR102125162B1 (ko) 2016-02-16 2020-06-22 노키아 테크놀로지스 오와이 미디어 캡슐화 및 캡슐 해제 기법
US10742707B2 (en) * 2016-04-29 2020-08-11 Ittiam Systems (P) Ltd. Low latency multimedia streaming system and method
CN106303682B (zh) * 2016-08-09 2019-09-20 华为技术有限公司 频道切换的方法、装置、终端及服务器
US10218986B2 (en) * 2016-09-26 2019-02-26 Google Llc Frame accurate splicing
US10063612B2 (en) * 2016-09-30 2018-08-28 Amazon Technologies, Inc. Request-based encoding for streaming content portions
CN107888993B (zh) * 2016-09-30 2020-11-06 华为技术有限公司 一种视频数据的处理方法及装置
US10367874B2 (en) * 2016-11-04 2019-07-30 Verizon Patent And Licensing Inc. MPEG-DASH delivery over multicast
US10999613B1 (en) * 2017-02-19 2021-05-04 Look At Me, Inc System and method for intelligent delivery of segmented media streams
GB2560953A (en) * 2017-03-30 2018-10-03 Nokia Technologies Oy Video Streaming
EP3393129A1 (en) * 2017-04-21 2018-10-24 Alcatel-Lucent España, S.A. Multimedia content delivery with reduced delay
GB2563275B (en) 2017-06-09 2019-10-09 Sony Interactive Entertainment Inc Image processing device and system
US10652166B2 (en) * 2017-06-27 2020-05-12 Cisco Technology, Inc. Non-real time adaptive bitrate recording scheduler
CN107342098B (zh) * 2017-07-20 2019-11-26 青岛海信电器股份有限公司 音频播放方法及装置
US10594758B2 (en) * 2017-12-15 2020-03-17 Cisco Technology, Inc. Latency reduction by sending audio and metadata ahead of time
WO2019165431A1 (en) 2018-02-26 2019-08-29 Colin York Smith Systems and methods for broadcasting digital data to a plurality of receivers
US11892996B1 (en) 2019-07-16 2024-02-06 Splunk Inc. Identifying an indexing node to process data using a resource catalog
US10567780B2 (en) * 2018-06-14 2020-02-18 Telefonaktiebolaget Lm Ericsson (Publ) System and method for encoding 360° immersive video
CN108989884A (zh) * 2018-08-01 2018-12-11 浙江齐聚科技有限公司 直播视频延迟性能测试方法、装置、设备和存储介质
US11314532B2 (en) * 2018-10-11 2022-04-26 Citrix Systems, Inc. Systems and methods for traffic optimization via system on chip of intermediary device
WO2020086452A1 (en) * 2018-10-22 2020-04-30 Radiant Communications Corporation Low-latency video internet streaming for management and transmission of multiple data streams
US10863211B1 (en) * 2018-11-12 2020-12-08 Amazon Technologies, Inc. Manifest data for server-side media fragment insertion
JP7292901B2 (ja) * 2019-02-27 2023-06-19 キヤノン株式会社 送信装置、送信方法、及びプログラム
US10979477B1 (en) 2019-03-26 2021-04-13 Amazon Technologies, Inc. Time synchronization between live video streaming and live metadata
US10880585B1 (en) * 2019-06-12 2020-12-29 Amazon Technologies, Inc. Split-and-stitch media content encoding
CN110475156B (zh) * 2019-09-10 2022-05-03 广州虎牙科技有限公司 一种视频延迟值的计算方法及装置
US11831879B2 (en) * 2019-09-20 2023-11-28 Comcast Cable Communications, Llc Methods, systems, and apparatuses for enhanced adaptive bitrate segmentation
US11539960B2 (en) 2019-10-01 2022-12-27 Sony Interactive Entertainment Inc. Game application providing scene change hint for encoding at a cloud gaming server
US11020661B2 (en) 2019-10-01 2021-06-01 Sony Interactive Entertainment Inc. Reducing latency in cloud gaming applications by overlapping reception and decoding of video frames and their display
US11865434B2 (en) 2019-10-01 2024-01-09 Sony Interactive Entertainment Inc. Reducing latency in cloud gaming applications by overlapping receive and decode of video frames and their display at the client
US11446572B2 (en) * 2019-10-01 2022-09-20 Sony Interactive Entertainment Inc. Early scan-out of server display buffer at flip-time for cloud gaming applications
US11524230B2 (en) 2019-10-01 2022-12-13 Sony Interactive Entertainment Inc. Encoder tuning to improve tradeoffs between latency and video quality in cloud gaming applications
TWI713362B (zh) * 2019-12-17 2020-12-11 瑞昱半導體股份有限公司 多媒體內容播放裝置與多媒體內容播放方法
US11829415B1 (en) 2020-01-31 2023-11-28 Splunk Inc. Mapping buckets and search peers to a bucket map identifier for searching
US11449371B1 (en) 2020-07-31 2022-09-20 Splunk Inc. Indexing data at a data intake and query system based on a node capacity threshold
US11615082B1 (en) 2020-07-31 2023-03-28 Splunk Inc. Using a data store and message queue to ingest data for a data intake and query system
US11609913B1 (en) 2020-10-16 2023-03-21 Splunk Inc. Reassigning data groups from backup to searching for a processing node
US11489898B1 (en) * 2021-07-07 2022-11-01 Tencent America LLC Method and apparatus for segment-based split and merge functions for parallel processing of media
US11809395B1 (en) * 2021-07-15 2023-11-07 Splunk Inc. Load balancing, failover, and reliable delivery of data in a data intake and query system

Family Cites Families (531)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3909721A (en) 1972-01-31 1975-09-30 Signatron Signal processing system
US4365338A (en) 1980-06-27 1982-12-21 Harris Corporation Technique for high rate digital transmission over a dynamic dispersive channel
US4965825A (en) 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4589112A (en) 1984-01-26 1986-05-13 International Business Machines Corporation System for multiple error detection with single and double bit error correction
US4901319A (en) 1988-03-18 1990-02-13 General Electric Company Transmission system with adaptive interleaving
GB8815978D0 (en) 1988-07-05 1988-08-10 British Telecomm Method & apparatus for encoding decoding & transmitting data in compressed form
US5136592A (en) 1989-06-28 1992-08-04 Digital Equipment Corporation Error detection and correction system for long burst errors
US5421031A (en) 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
US7594250B2 (en) 1992-04-02 2009-09-22 Debey Henry C Method and system of program transmission optimization using a redundant transmission sequence
US5701582A (en) 1989-08-23 1997-12-23 Delta Beta Pty. Ltd. Method and apparatus for efficient transmissions of programs
US5455823A (en) 1990-11-06 1995-10-03 Radio Satellite Corporation Integrated communications terminal
US5164963A (en) 1990-11-07 1992-11-17 At&T Bell Laboratories Coding for digital transmission
US5465318A (en) 1991-03-28 1995-11-07 Kurzweil Applied Intelligence, Inc. Method for generating a speech recognition model for a non-vocabulary utterance
US5379297A (en) 1992-04-09 1995-01-03 Network Equipment Technologies, Inc. Concurrent multi-channel segmentation and reassembly processors for asynchronous transfer mode
EP0543070A1 (en) 1991-11-21 1993-05-26 International Business Machines Corporation Coding system and method using quaternary codes
US5371532A (en) 1992-05-15 1994-12-06 Bell Communications Research, Inc. Communications architecture and method for distributing information services
US5425050A (en) 1992-10-23 1995-06-13 Massachusetts Institute Of Technology Television transmission system using spread spectrum and orthogonal frequency-division multiplex
US5372532A (en) 1993-01-26 1994-12-13 Robertson, Jr.; George W. Swivel head cap connector
EP0613249A1 (en) 1993-02-12 1994-08-31 Altera Corporation Custom look-up table with reduced number of architecture bits
DE4316297C1 (de) 1993-05-14 1994-04-07 Fraunhofer Ges Forschung Frequenzanalyseverfahren
AU665716B2 (en) 1993-07-05 1996-01-11 Mitsubishi Denki Kabushiki Kaisha A transmitter for encoding error correction codes and a receiver for decoding error correction codes on a transmission frame
US5590405A (en) 1993-10-29 1996-12-31 Lucent Technologies Inc. Communication technique employing variable information transmission
JP2576776B2 (ja) 1993-11-10 1997-01-29 日本電気株式会社 パケット伝送方法・パケット伝送装置
US5517508A (en) 1994-01-26 1996-05-14 Sony Corporation Method and apparatus for detection and error correction of packetized digital data
CA2140850C (en) 1994-02-24 1999-09-21 Howard Paul Katseff Networked system for display of multimedia presentations
US5566208A (en) 1994-03-17 1996-10-15 Philips Electronics North America Corp. Encoder buffer having an effective size which varies automatically with the channel bit-rate
US5432787A (en) 1994-03-24 1995-07-11 Loral Aerospace Corporation Packet data transmission system with adaptive data recovery method
US5757415A (en) 1994-05-26 1998-05-26 Sony Corporation On-demand data transmission by dividing input data into blocks and each block into sub-blocks such that the sub-blocks are re-arranged for storage to data storage means
US5802394A (en) 1994-06-06 1998-09-01 Starlight Networks, Inc. Method for accessing one or more streams in a video storage system using multiple queues and maintaining continuity thereof
US5739864A (en) 1994-08-24 1998-04-14 Macrovision Corporation Apparatus for inserting blanked formatted fingerprint data (source ID, time/date) in to a video signal
US5568614A (en) 1994-07-29 1996-10-22 International Business Machines Corporation Data streaming between peer subsystems of a computer system
US5668948A (en) 1994-09-08 1997-09-16 International Business Machines Corporation Media streamer with control node enabling same isochronous streams to appear simultaneously at output ports or different streams to appear simultaneously at output ports
US5926205A (en) 1994-10-19 1999-07-20 Imedia Corporation Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program
US5659614A (en) 1994-11-28 1997-08-19 Bailey, Iii; John E. Method and system for creating and storing a backup copy of file data stored on a computer
US5617541A (en) 1994-12-21 1997-04-01 International Computer Science Institute System for packetizing data encoded corresponding to priority levels where reconstructed data corresponds to fractionalized priority level and received fractionalized packets
JP3614907B2 (ja) 1994-12-28 2005-01-26 株式会社東芝 データ再送制御方法及びデータ再送制御システム
JP3651699B2 (ja) 1995-04-09 2005-05-25 ソニー株式会社 復号化装置及び符号化復号化装置
EP0823153A4 (en) 1995-04-27 1999-10-20 Stevens Inst Technology HIGH INTEGRITY TRANSPORT METHOD FOR TIME-CRITICAL MULTIMEDIA NETWORK APPLICATIONS
US5835165A (en) 1995-06-07 1998-11-10 Lsi Logic Corporation Reduction of false locking code words in concatenated decoders
US5805825A (en) 1995-07-26 1998-09-08 Intel Corporation Method for semi-reliable, unidirectional broadcast information services
US6079041A (en) 1995-08-04 2000-06-20 Sanyo Electric Co., Ltd. Digital modulation circuit and digital demodulation circuit
JP3167638B2 (ja) 1995-08-04 2001-05-21 三洋電機株式会社 ディジタル変調方法と復調方法及びディジタル変調回路と復調回路
US5754563A (en) 1995-09-11 1998-05-19 Ecc Technologies, Inc. Byte-parallel system for implementing reed-solomon error-correcting codes
KR0170298B1 (ko) 1995-10-10 1999-04-15 김광호 디지탈 비디오 테이프의 기록 방법
US5751336A (en) 1995-10-12 1998-05-12 International Business Machines Corporation Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems
JP3305183B2 (ja) 1996-01-12 2002-07-22 株式会社東芝 ディジタル放送受信端末装置
US6012159A (en) 1996-01-17 2000-01-04 Kencast, Inc. Method and system for error-free data transfer
US5936659A (en) 1996-01-31 1999-08-10 Telcordia Technologies, Inc. Method for video delivery using pyramid broadcasting
US5903775A (en) 1996-06-06 1999-05-11 International Business Machines Corporation Method for the sequential transmission of compressed video information at varying data rates
US5745504A (en) 1996-06-25 1998-04-28 Telefonaktiebolaget Lm Ericsson Bit error resilient variable length code
US5940863A (en) 1996-07-26 1999-08-17 Zenith Electronics Corporation Apparatus for de-rotating and de-interleaving data including plural memory devices and plural modulo memory address generators
US5936949A (en) 1996-09-05 1999-08-10 Netro Corporation Wireless ATM metropolitan area network
KR100261706B1 (ko) 1996-12-17 2000-07-15 가나이 쓰도무 디지탈방송신호의 수신장치와 수신 및 기록재생장치
US6011590A (en) 1997-01-03 2000-01-04 Ncr Corporation Method of transmitting compressed information to minimize buffer space
US6141053A (en) 1997-01-03 2000-10-31 Saukkonen; Jukka I. Method of optimizing bandwidth for transmitting compressed video data streams
US6044485A (en) 1997-01-03 2000-03-28 Ericsson Inc. Transmitter method and transmission system using adaptive coding based on channel characteristics
EP0854650A3 (en) 1997-01-17 2001-05-02 NOKIA TECHNOLOGY GmbH Method for addressing a service in digital video broadcasting
US5946357A (en) 1997-01-17 1999-08-31 Telefonaktiebolaget L M Ericsson Apparatus, and associated method, for transmitting and receiving a multi-stage, encoded and interleaved digital communication signal
US5983383A (en) 1997-01-17 1999-11-09 Qualcom Incorporated Method and apparatus for transmitting and receiving concatenated code data
US6014706A (en) 1997-01-30 2000-01-11 Microsoft Corporation Methods and apparatus for implementing control functions in a streamed video display system
US6115420A (en) 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
DE19716011A1 (de) 1997-04-17 1998-10-22 Abb Research Ltd Verfahren und Vorrichtung zur Informationsübertragung über Stromversorgungsleitungen
US6226259B1 (en) 1997-04-29 2001-05-01 Canon Kabushiki Kaisha Device and method for transmitting information device and method for processing information
US5970098A (en) 1997-05-02 1999-10-19 Globespan Technologies, Inc. Multilevel encoder
US5844636A (en) 1997-05-13 1998-12-01 Hughes Electronics Corporation Method and apparatus for receiving and recording digital packet data
JP4110593B2 (ja) 1997-05-19 2008-07-02 ソニー株式会社 信号記録方法及び信号記録装置
JPH1141211A (ja) 1997-05-19 1999-02-12 Sanyo Electric Co Ltd ディジタル変調回路と変調方法、ディジタル復調回路と復調方法
WO1998053454A1 (fr) 1997-05-19 1998-11-26 Sanyo Electric Co., Ltd. Modulation et demodulation numeriques
US6128649A (en) 1997-06-02 2000-10-03 Nortel Networks Limited Dynamic selection of media streams for display
US6081907A (en) 1997-06-09 2000-06-27 Microsoft Corporation Data delivery system and method for delivering data and redundant information over a unidirectional network
US5917852A (en) 1997-06-11 1999-06-29 L-3 Communications Corporation Data scrambling system and method and communications system incorporating same
KR100240869B1 (ko) 1997-06-25 2000-01-15 윤종용 이중 다이버서티 시스템을 위한 데이터 전송 방법
US5933056A (en) 1997-07-15 1999-08-03 Exar Corporation Single pole current mode common-mode feedback circuit
US6175944B1 (en) 1997-07-15 2001-01-16 Lucent Technologies Inc. Methods and apparatus for packetizing data for transmission through an erasure broadcast channel
US6047069A (en) 1997-07-17 2000-04-04 Hewlett-Packard Company Method and apparatus for preserving error correction capabilities during data encryption/decryption
US6904110B2 (en) 1997-07-31 2005-06-07 Francois Trans Channel equalization system and method
US6178536B1 (en) 1997-08-14 2001-01-23 International Business Machines Corporation Coding scheme for file backup and systems based thereon
FR2767940A1 (fr) 1997-08-29 1999-02-26 Canon Kk Procedes et dispositifs de codage et de decodage et appareils les mettant en oeuvre
EP0903955A1 (en) 1997-09-04 1999-03-24 STMicroelectronics S.r.l. Modular architecture PET decoder for ATM networks
US6088330A (en) 1997-09-09 2000-07-11 Bruck; Joshua Reliable array of distributed computing nodes
US6134596A (en) 1997-09-18 2000-10-17 Microsoft Corporation Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates
US6272658B1 (en) 1997-10-27 2001-08-07 Kencast, Inc. Method and system for reliable broadcasting of data files and streams
US6073250A (en) 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
US6081918A (en) 1997-11-06 2000-06-27 Spielman; Daniel A. Loss resilient code with cascading series of redundant layers
US6163870A (en) 1997-11-06 2000-12-19 Compaq Computer Corporation Message encoding with irregular graphing
US6195777B1 (en) 1997-11-06 2001-02-27 Compaq Computer Corporation Loss resilient code with double heavy tailed series of redundant layers
US6081909A (en) 1997-11-06 2000-06-27 Digital Equipment Corporation Irregularly graphed encoding technique
JP3472115B2 (ja) 1997-11-25 2003-12-02 Kddi株式会社 マルチチャンネルを用いるビデオデータ伝送方法及びその装置
US6243846B1 (en) 1997-12-12 2001-06-05 3Com Corporation Forward error correction system for packet based data and real time media, using cross-wise parity calculation
US5870412A (en) 1997-12-12 1999-02-09 3Com Corporation Forward error correction system for packet based real time media
US6849803B1 (en) 1998-01-15 2005-02-01 Arlington Industries, Inc. Electrical connector
US6097320A (en) 1998-01-20 2000-08-01 Silicon Systems, Inc. Encoder/decoder system with suppressed error propagation
US6226301B1 (en) 1998-02-19 2001-05-01 Nokia Mobile Phones Ltd Method and apparatus for segmentation and assembly of data frames for retransmission in a telecommunications system
US6141788A (en) 1998-03-13 2000-10-31 Lucent Technologies Inc. Method and apparatus for forward error correction in packet networks
US6278716B1 (en) 1998-03-23 2001-08-21 University Of Massachusetts Multicast with proactive forward error correction
US6459811B1 (en) 1998-04-02 2002-10-01 Sarnoff Corporation Bursty data transmission of compressed video data
US6185265B1 (en) 1998-04-07 2001-02-06 Worldspace Management Corp. System for time division multiplexing broadcast channels with R-1/2 or R-3/4 convolutional coding for satellite transmission via on-board baseband processing payload or transparent payload
US6067646A (en) 1998-04-17 2000-05-23 Ameritech Corporation Method and system for adaptive interleaving
US6018359A (en) 1998-04-24 2000-01-25 Massachusetts Institute Of Technology System and method for multicast video-on-demand delivery system
US6445717B1 (en) 1998-05-01 2002-09-03 Niwot Networks, Inc. System for recovering lost information in a data stream
US6421387B1 (en) 1998-05-15 2002-07-16 North Carolina State University Methods and systems for forward error correction based loss recovery for interactive video transmission
US6937618B1 (en) 1998-05-20 2005-08-30 Sony Corporation Separating device and method and signal receiving device and method
US6333926B1 (en) 1998-08-11 2001-12-25 Nortel Networks Limited Multiple user CDMA basestation modem
EP1110344A1 (en) 1998-09-04 2001-06-27 AT&T Corp. Combined channel coding and space-block coding in a multi-antenna arrangement
US6415326B1 (en) 1998-09-15 2002-07-02 Microsoft Corporation Timeline correlation between multiple timeline-altered media streams
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US7243285B2 (en) 1998-09-23 2007-07-10 Digital Fountain, Inc. Systems and methods for broadcasting information additive codes
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US6320520B1 (en) 1998-09-23 2001-11-20 Digital Fountain Information additive group code generator and decoder for communications systems
US6704370B1 (en) 1998-10-09 2004-03-09 Nortel Networks Limited Interleaving methodology and apparatus for CDMA
IT1303735B1 (it) 1998-11-11 2001-02-23 Falorni Italia Farmaceutici S Acidi ialuronici reticolati e loro usi medici.
US6408128B1 (en) 1998-11-12 2002-06-18 Max Abecassis Replaying with supplementary information a segment of a video
US7157314B2 (en) 1998-11-16 2007-01-02 Sandisk Corporation Vertically stacked field programmable nonvolatile memory and method of fabrication
JP2000151426A (ja) 1998-11-17 2000-05-30 Toshiba Corp インターリーブ・デインターリーブ回路
US6166544A (en) 1998-11-25 2000-12-26 General Electric Company MR imaging system with interactive image contrast control
US6876623B1 (en) 1998-12-02 2005-04-05 Agere Systems Inc. Tuning scheme for code division multiplex broadcasting system
ES2185244T3 (es) 1998-12-03 2003-04-16 Fraunhofer Ges Forschung Aparato y procedimiento para transmitir informacion y aparato y procedimiento para recibir informacion.
US6637031B1 (en) 1998-12-04 2003-10-21 Microsoft Corporation Multimedia presentation latency minimization
US6496980B1 (en) 1998-12-07 2002-12-17 Intel Corporation Method of providing replay on demand for streaming digital multimedia
US6223324B1 (en) 1999-01-05 2001-04-24 Agere Systems Guardian Corp. Multiple program unequal error protection for digital audio broadcasting and other applications
JP3926499B2 (ja) 1999-01-22 2007-06-06 株式会社日立国際電気 畳み込み符号軟判定復号方式の受信装置
US6618451B1 (en) 1999-02-13 2003-09-09 Altocom Inc Efficient reduced state maximum likelihood sequence estimator
US6041001A (en) 1999-02-25 2000-03-21 Lexar Media, Inc. Method of increasing data reliability of a flash memory device without compromising compatibility
WO2000052600A1 (fr) 1999-03-03 2000-09-08 Sony Corporation Emetteur, recepteur, systeme d'emetteur/recepteur, procede de transmission et procede de reception
US6785323B1 (en) 1999-11-22 2004-08-31 Ipr Licensing, Inc. Variable rate coding for forward link
US6499060B1 (en) * 1999-03-12 2002-12-24 Microsoft Corporation Media coding for loss recovery with remotely predicted data units
US6466698B1 (en) 1999-03-25 2002-10-15 The United States Of America As Represented By The Secretary Of The Navy Efficient embedded image and video compression system using lifted wavelets
US6535920B1 (en) 1999-04-06 2003-03-18 Microsoft Corporation Analyzing, indexing and seeking of streaming information
JP3256517B2 (ja) 1999-04-06 2002-02-12 インターナショナル・ビジネス・マシーンズ・コーポレーション 符号化回路、回路、パリティ生成方法及び記憶媒体
US6609223B1 (en) 1999-04-06 2003-08-19 Kencast, Inc. Method for packet-level fec encoding, in which on a source packet-by-source packet basis, the error correction contributions of a source packet to a plurality of wildcard packets are computed, and the source packet is transmitted thereafter
US6804202B1 (en) 1999-04-08 2004-10-12 Lg Information And Communications, Ltd. Radio protocol for mobile communication system and method
US7885340B2 (en) 1999-04-27 2011-02-08 Realnetworks, Inc. System and method for generating multiple synchronized encoded representations of media data
FI113124B (fi) 1999-04-29 2004-02-27 Nokia Corp Tiedonsiirto
MY130203A (en) 1999-05-06 2007-06-29 Sony Corp Methods and apparatus for data processing, methods and apparatus for data reproducing and recording media
KR100416996B1 (ko) 1999-05-10 2004-02-05 삼성전자주식회사 이동 통신시스템에서 라디오링크프로토콜에 따른 가변 길이의 데이터 송수신 장치 및 방법
AU5140200A (en) 1999-05-26 2000-12-18 Enounce, Incorporated Method and apparatus for controlling time-scale modification during multi-media broadcasts
US6229824B1 (en) 1999-05-26 2001-05-08 Xm Satellite Radio Inc. Method and apparatus for concatenated convolutional endcoding and interleaving
US6154452A (en) 1999-05-26 2000-11-28 Xm Satellite Radio Inc. Method and apparatus for continuous cross-channel interleaving
JP2000353969A (ja) 1999-06-11 2000-12-19 Sony Corp デジタル音声放送の受信機
US6577599B1 (en) 1999-06-30 2003-06-10 Sun Microsystems, Inc. Small-scale reliable multicasting
IL141800A0 (en) 1999-07-06 2002-03-10 Samsung Electronics Co Ltd Rate matching device and method for a data communication system
US6643332B1 (en) 1999-07-09 2003-11-04 Lsi Logic Corporation Method and apparatus for multi-level coding of digital signals
JP3451221B2 (ja) 1999-07-22 2003-09-29 日本無線株式会社 誤り訂正符号化装置、方法及び媒体、並びに誤り訂正符号復号装置、方法及び媒体
US6279072B1 (en) 1999-07-22 2001-08-21 Micron Technology, Inc. Reconfigurable memory with selectable error correction storage
US6453440B1 (en) 1999-08-04 2002-09-17 Sun Microsystems, Inc. System and method for detecting double-bit errors and for correcting errors due to component failures
JP2001060934A (ja) 1999-08-20 2001-03-06 Matsushita Electric Ind Co Ltd Ofdm通信装置
US6430233B1 (en) 1999-08-30 2002-08-06 Hughes Electronics Corporation Single-LNB satellite data receiver
US6332163B1 (en) 1999-09-01 2001-12-18 Accenture, Llp Method for providing communication services over a computer network system
JP4284774B2 (ja) 1999-09-07 2009-06-24 ソニー株式会社 送信装置、受信装置、通信システム、送信方法及び通信方法
US7529806B1 (en) 1999-11-04 2009-05-05 Koninklijke Philips Electronics N.V. Partitioning of MP3 content file for emulating streaming
JP2001094625A (ja) 1999-09-27 2001-04-06 Canon Inc データ通信装置、データ通信方法及び記憶媒体
EP1131930B1 (en) 1999-09-27 2007-01-17 Koninklijke Philips Electronics N.V. Partitioning of file for emulating streaming
US20050160272A1 (en) 1999-10-28 2005-07-21 Timecertain, Llc System and method for providing trusted time in content of digital data files
US6523147B1 (en) 1999-11-11 2003-02-18 Ibiquity Digital Corporation Method and apparatus for forward error correction coding for an AM in-band on-channel digital audio broadcasting system
US6678855B1 (en) 1999-12-02 2004-01-13 Microsoft Corporation Selecting K in a data transmission carousel using (N,K) forward error correction
US6748441B1 (en) 1999-12-02 2004-06-08 Microsoft Corporation Data carousel receiving and caching
US6798791B1 (en) 1999-12-16 2004-09-28 Agere Systems Inc Cluster frame synchronization scheme for a satellite digital audio radio system
US6487692B1 (en) 1999-12-21 2002-11-26 Lsi Logic Corporation Reed-Solomon decoder
US6965636B1 (en) 2000-02-01 2005-11-15 2Wire, Inc. System and method for block error correction in packet-based digital communications
US20020009137A1 (en) 2000-02-01 2002-01-24 Nelson John E. Three-dimensional video broadcasting system
WO2001057667A1 (en) 2000-02-03 2001-08-09 Bandwiz, Inc. Data streaming
US7304990B2 (en) 2000-02-03 2007-12-04 Bandwiz Inc. Method of encoding and transmitting data over a communication medium through division and segmentation
IL140504A0 (en) 2000-02-03 2002-02-10 Bandwiz Inc Broadcast system
JP2001251287A (ja) 2000-02-24 2001-09-14 Geneticware Corp Ltd ハードウエア保護内部秘匿鍵及び可変パスコードを利用する機密データ伝送方法
DE10009443A1 (de) 2000-02-29 2001-08-30 Philips Corp Intellectual Pty Empfänger und Verfahren zum Detektieren und Dekodieren eines DQPSK-modulierten und kanalkodierten Empfangssignals
US6765866B1 (en) 2000-02-29 2004-07-20 Mosaid Technologies, Inc. Link aggregation
US6384750B1 (en) 2000-03-23 2002-05-07 Mosaid Technologies, Inc. Multi-stage lookup for translating between signals of different bit lengths
JP2001274776A (ja) 2000-03-24 2001-10-05 Toshiba Corp 情報データ伝送システムとその送信装置及び受信装置
US6510177B1 (en) 2000-03-24 2003-01-21 Microsoft Corporation System and method for layered video coding enhancement
WO2001076077A2 (en) 2000-03-31 2001-10-11 Ted Szymanski Transmitter, receiver, and coding scheme to increase data rate and decrease bit error rate of an optical data link
US6473010B1 (en) 2000-04-04 2002-10-29 Marvell International, Ltd. Method and apparatus for determining error correction code failure rate for iterative decoding algorithms
US8572646B2 (en) 2000-04-07 2013-10-29 Visible World Inc. System and method for simultaneous broadcast for personalized messages
DE60121930T2 (de) 2000-04-08 2007-07-26 Sun Microsystems, Inc., Santa Clara Methode zum streamen einer einzelnen medienspur zu mehreren clients
US6631172B1 (en) 2000-05-01 2003-10-07 Lucent Technologies Inc. Efficient list decoding of Reed-Solomon codes for message recovery in the presence of high noise levels
US6742154B1 (en) 2000-05-25 2004-05-25 Ciena Corporation Forward error correction codes for digital optical network optimization
US6738942B1 (en) 2000-06-02 2004-05-18 Vitesse Semiconductor Corporation Product code based forward error correction system
US6694476B1 (en) 2000-06-02 2004-02-17 Vitesse Semiconductor Corporation Reed-solomon encoder and decoder
GB2366159B (en) 2000-08-10 2003-10-08 Mitel Corp Combination reed-solomon and turbo coding
US6834342B2 (en) 2000-08-16 2004-12-21 Eecad, Inc. Method and system for secure communication over unstable public connections
KR100447162B1 (ko) 2000-08-19 2004-09-04 엘지전자 주식회사 래디오 링크 콘트롤(rlc)에서 프로토콜 데이터 유닛(pdu) 정보의 길이 지시자(li) 처리방법
JP2002073625A (ja) 2000-08-24 2002-03-12 Nippon Hoso Kyokai <Nhk> 放送番組に同期した情報提供の方法、サーバ及び媒体
US7340664B2 (en) 2000-09-20 2008-03-04 Lsi Logic Corporation Single engine turbo decoder with single frame size buffer for interleaving/deinterleaving
US6486803B1 (en) 2000-09-22 2002-11-26 Digital Fountain, Inc. On demand encoding with a window
US7031257B1 (en) 2000-09-22 2006-04-18 Lucent Technologies Inc. Radio link protocol (RLP)/point-to-point protocol (PPP) design that passes corrupted data and error location information among layers in a wireless data transmission protocol
US7151754B1 (en) 2000-09-22 2006-12-19 Lucent Technologies Inc. Complete user datagram protocol (CUDP) for wireless multimedia packet networks using improved packet level forward error correction (FEC) coding
US7490344B2 (en) 2000-09-29 2009-02-10 Visible World, Inc. System and method for seamless switching
US6411223B1 (en) 2000-10-18 2002-06-25 Digital Fountain, Inc. Generating high weight encoding symbols using a basis
US7613183B1 (en) 2000-10-31 2009-11-03 Foundry Networks, Inc. System and method for router data aggregation and delivery
US6694478B1 (en) 2000-11-07 2004-02-17 Agere Systems Inc. Low delay channel codes for correcting bursts of lost packets
US6732325B1 (en) 2000-11-08 2004-05-04 Digeo, Inc. Error-correction with limited working storage
US20020133247A1 (en) 2000-11-11 2002-09-19 Smith Robert D. System and method for seamlessly switching between media streams
US7072971B2 (en) 2000-11-13 2006-07-04 Digital Foundation, Inc. Scheduling of multiple files for serving on a server
US7240358B2 (en) 2000-12-08 2007-07-03 Digital Fountain, Inc. Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources
EP1342363B9 (en) 2000-12-15 2012-09-12 BRITISH TELECOMMUNICATIONS public limited company Transmission and reception of audio and/or video material
US7447791B2 (en) 2000-12-15 2008-11-04 British Telecommunications Public Limited Company Transmission and reception of audio and/or video material
US6850736B2 (en) 2000-12-21 2005-02-01 Tropian, Inc. Method and apparatus for reception quality indication in wireless communication
US7143433B1 (en) 2000-12-27 2006-11-28 Infovalve Computing Inc. Video distribution system using dynamic segmenting of video data files
US20020085013A1 (en) 2000-12-29 2002-07-04 Lippincott Louis A. Scan synchronized dual frame buffer graphics subsystem
NO315887B1 (no) 2001-01-04 2003-11-03 Fast Search & Transfer As Fremgangsmater ved overforing og soking av videoinformasjon
US8595340B2 (en) 2001-01-18 2013-11-26 Yahoo! Inc. Method and system for managing digital content, including streaming media
DE10103387A1 (de) 2001-01-26 2002-08-01 Thorsten Nordhoff Windkraftanlage mit einer Einrichtung zur Hindernisbefeuerung bzw. Nachtkennzeichnung
FI118830B (fi) 2001-02-08 2008-03-31 Nokia Corp Tietovirran toisto
US6868083B2 (en) 2001-02-16 2005-03-15 Hewlett-Packard Development Company, L.P. Method and system for packet communication employing path diversity
US20020129159A1 (en) 2001-03-09 2002-09-12 Michael Luby Multi-output packet server with independent streams
KR100464360B1 (ko) 2001-03-30 2005-01-03 삼성전자주식회사 고속 패킷 데이터 전송 이동통신시스템에서 패킷 데이터채널에 대한 효율적인 에너지 분배 장치 및 방법
US20020143953A1 (en) 2001-04-03 2002-10-03 International Business Machines Corporation Automatic affinity within networks performing workload balancing
US6785836B2 (en) 2001-04-11 2004-08-31 Broadcom Corporation In-place data transformation for fault-tolerant disk storage systems
US6820221B2 (en) 2001-04-13 2004-11-16 Hewlett-Packard Development Company, L.P. System and method for detecting process and network failures in a distributed system
US7010052B2 (en) 2001-04-16 2006-03-07 The Ohio University Apparatus and method of CTCM encoding and decoding for a digital communication system
US7035468B2 (en) 2001-04-20 2006-04-25 Front Porch Digital Inc. Methods and apparatus for archiving, indexing and accessing audio and video data
TWI246841B (en) 2001-04-22 2006-01-01 Koninkl Philips Electronics Nv Digital transmission system and method for transmitting digital signals
US20020191116A1 (en) 2001-04-24 2002-12-19 Damien Kessler System and data format for providing seamless stream switching in a digital video recorder
US6497479B1 (en) 2001-04-27 2002-12-24 Hewlett-Packard Company Higher organic inks with good reliability and drytime
US7962482B2 (en) 2001-05-16 2011-06-14 Pandora Media, Inc. Methods and systems for utilizing contextual feedback to generate and modify playlists
US6633856B2 (en) 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US7076478B2 (en) 2001-06-26 2006-07-11 Microsoft Corporation Wrapper playlists on streaming media services
US6745364B2 (en) 2001-06-28 2004-06-01 Microsoft Corporation Negotiated/dynamic error correction for streamed media
US6895547B2 (en) 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
US6928603B1 (en) 2001-07-19 2005-08-09 Adaptix, Inc. System and method for interference mitigation using adaptive forward error correction in a wireless RF data transmission system
US6961890B2 (en) 2001-08-16 2005-11-01 Hewlett-Packard Development Company, L.P. Dynamic variable-length error correction code
US7110412B2 (en) 2001-09-18 2006-09-19 Sbc Technology Resources, Inc. Method and system to transport high-quality video signals
FI115418B (fi) 2001-09-20 2005-04-29 Oplayo Oy Adaptiivinen mediavirta
US6990624B2 (en) 2001-10-12 2006-01-24 Agere Systems Inc. High speed syndrome-based FEC encoder and decoder and system using same
US7480703B2 (en) 2001-11-09 2009-01-20 Sony Corporation System, method, and computer program product for remotely determining the configuration of a multi-media content user based on response of the user
US7003712B2 (en) 2001-11-29 2006-02-21 Emin Martinian Apparatus and method for adaptive, multimode decoding
US7363354B2 (en) 2001-11-29 2008-04-22 Nokia Corporation System and method for identifying and accessing network services
JP2003174489A (ja) 2001-12-05 2003-06-20 Ntt Docomo Inc ストリーミング配信装置、ストリーミング配信方法
FI114527B (fi) 2002-01-23 2004-10-29 Nokia Corp Kuvakehysten ryhmittely videokoodauksessa
EP1670260A3 (en) 2002-01-23 2010-03-03 Nokia Corporation Grouping of image frames in video coding
US7483489B2 (en) 2002-01-30 2009-01-27 Nxp B.V. Streaming multimedia data over a network having a variable bandwith
US7249291B2 (en) 2002-02-15 2007-07-24 Digital Fountain, Inc. System and method for reliably communicating the content of a live data stream
JP4126928B2 (ja) 2002-02-28 2008-07-30 日本電気株式会社 プロキシサーバ及びプロキシ制御プログラム
JP4116470B2 (ja) 2002-03-06 2008-07-09 ヒューレット・パッカード・カンパニー メディア・ストリーミング配信システム
FR2837332A1 (fr) 2002-03-15 2003-09-19 Thomson Licensing Sa Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants
EP1495566A4 (en) 2002-04-15 2005-07-20 Nokia Corp RLP LOGIC LAYER OF A COMMUNICATION STATION
US6677864B2 (en) 2002-04-18 2004-01-13 Telefonaktiebolaget L.M. Ericsson Method for multicast over wireless networks
JP3689063B2 (ja) 2002-04-19 2005-08-31 松下電器産業株式会社 データ受信装置及びデータ配信システム
JP3629008B2 (ja) 2002-04-19 2005-03-16 松下電器産業株式会社 データ受信装置及びデータ配信システム
US20030204602A1 (en) 2002-04-26 2003-10-30 Hudson Michael D. Mediated multi-source peer content delivery network architecture
US7177658B2 (en) 2002-05-06 2007-02-13 Qualcomm, Incorporated Multi-media broadcast and multicast service (MBMS) in a wireless communications system
US7200388B2 (en) 2002-05-31 2007-04-03 Nokia Corporation Fragmented delivery of multimedia
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
ES2445761T3 (es) 2002-06-11 2014-03-05 Digital Fountain, Inc. Descodificación de códigos de reacción en cadena mediante inactivación
WO2003105484A1 (en) 2002-06-11 2003-12-18 Telefonaktiebolaget L M Ericsson (Publ) Generation of mixed media streams
US6956875B2 (en) 2002-06-19 2005-10-18 Atlinks Usa, Inc. Technique for communicating variable bit rate data over a constant bit rate link
JP4120461B2 (ja) 2002-07-12 2008-07-16 住友電気工業株式会社 伝送データ生成方法及び伝送データ生成装置
AU2003252347A1 (en) 2002-07-31 2004-03-11 Sharp Kabushiki Kaisha Data communication device, its intermittent communication method, program describing its method, and recording medium on which program is recorded
JP2004070712A (ja) 2002-08-07 2004-03-04 Nippon Telegr & Teleph Corp <Ntt> データ配信方法,データ配信システム,分割配信データ受信方法,分割配信データ受信装置および分割配信データ受信プログラム
AU2002319335B2 (en) 2002-08-13 2008-12-04 Nokia Corporation Symbol interleaving
US6985459B2 (en) 2002-08-21 2006-01-10 Qualcomm Incorporated Early transmission and playout of packets in wireless communication systems
WO2004030273A1 (ja) 2002-09-27 2004-04-08 Fujitsu Limited データ配信方法、システム、伝送方法及びプログラム
JP3534742B1 (ja) 2002-10-03 2004-06-07 株式会社エヌ・ティ・ティ・ドコモ 動画像復号方法、動画像復号装置、及び動画像復号プログラム
EP2357732B1 (en) 2002-10-05 2022-04-06 QUALCOMM Incorporated Systematic encoding and decoding of chain reaction codes
JP2004135013A (ja) 2002-10-10 2004-04-30 Matsushita Electric Ind Co Ltd 伝送装置及び伝送方法
FI116816B (fi) 2002-10-14 2006-02-28 Nokia Corp Median suoratoisto
US8320301B2 (en) 2002-10-25 2012-11-27 Qualcomm Incorporated MIMO WLAN system
US7289451B2 (en) 2002-10-25 2007-10-30 Telefonaktiebolaget Lm Ericsson (Publ) Delay trading between communication links
WO2004040831A1 (en) 2002-10-30 2004-05-13 Koninklijke Philips Electronics N.V. Adaptative forward error control scheme
JP2004165922A (ja) 2002-11-12 2004-06-10 Sony Corp 情報処理装置および方法、並びにプログラム
WO2004047444A1 (en) * 2002-11-15 2004-06-03 Thomson Licensing S.A. Method and system for staggered statistical multiplexing
GB0226872D0 (en) 2002-11-18 2002-12-24 British Telecomm Video transmission
ATE410029T1 (de) 2002-11-18 2008-10-15 British Telecomm Videoübertragung
KR100502609B1 (ko) 2002-11-21 2005-07-20 한국전자통신연구원 Ldpc 코드를 이용한 부호화기 및 부호화 방법
US7086718B2 (en) 2002-11-23 2006-08-08 Silverbrook Research Pty Ltd Thermal ink jet printhead with high nozzle areal density
JP2004192140A (ja) 2002-12-09 2004-07-08 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP2004193992A (ja) 2002-12-11 2004-07-08 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
US8135073B2 (en) 2002-12-19 2012-03-13 Trident Microsystems (Far East) Ltd Enhancing video images depending on prior image enhancements
US7164882B2 (en) 2002-12-24 2007-01-16 Poltorak Alexander I Apparatus and method for facilitating a purchase using information provided on a media playing device
US7293222B2 (en) 2003-01-29 2007-11-06 Digital Fountain, Inc. Systems and processes for fast encoding of hamming codes
US7525994B2 (en) 2003-01-30 2009-04-28 Avaya Inc. Packet data flow identification for multiplexing
US7756002B2 (en) 2003-01-30 2010-07-13 Texas Instruments Incorporated Time-frequency interleaved orthogonal frequency division multiplexing ultra wide band physical layer
US7231404B2 (en) 2003-01-31 2007-06-12 Nokia Corporation Datacast file transmission with meta-data retention
US7062272B2 (en) 2003-02-18 2006-06-13 Qualcomm Incorporated Method and apparatus to track count of broadcast content recipients in a wireless telephone network
EP1455504B1 (en) 2003-03-07 2014-11-12 Samsung Electronics Co., Ltd. Apparatus and method for processing audio signal and computer readable recording medium storing computer program for the method
JP4173755B2 (ja) 2003-03-24 2008-10-29 富士通株式会社 データ伝送サーバ
US7610487B2 (en) 2003-03-27 2009-10-27 Microsoft Corporation Human input security codes
US7266147B2 (en) 2003-03-31 2007-09-04 Sharp Laboratories Of America, Inc. Hypothetical reference decoder
JP2004343701A (ja) 2003-04-21 2004-12-02 Matsushita Electric Ind Co Ltd データ受信再生装置、データ受信再生方法及びデータ受信再生処理プログラム
US7408486B2 (en) 2003-04-21 2008-08-05 Qbit Corporation System and method for using a microlet-based modem
US7113773B2 (en) 2003-05-16 2006-09-26 Qualcomm Incorporated Reliable reception of broadcast/multicast content
JP2004348824A (ja) 2003-05-21 2004-12-09 Toshiba Corp Eccエンコード方法、eccエンコード装置
US8161116B2 (en) 2003-05-23 2012-04-17 Kirusa, Inc. Method and system for communicating a data file over a network
JP2004362099A (ja) 2003-06-03 2004-12-24 Sony Corp サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
MXPA05013237A (es) 2003-06-07 2006-03-09 Samsung Electronics Co Ltd Aparato y metodo para la organizacion e interpretacion de datos multimedia en un medio de grabacion.
KR101003413B1 (ko) 2003-06-12 2010-12-23 엘지전자 주식회사 이동통신 단말기의 전송데이터 압축/해제 방법
US7603689B2 (en) 2003-06-13 2009-10-13 Microsoft Corporation Fast start-up for digital video streams
RU2265960C2 (ru) 2003-06-16 2005-12-10 Федеральное государственное унитарное предприятие "Калужский научно-исследовательский институт телемеханических устройств" Способ передачи информации с использованием адаптивного перемежения
US7391717B2 (en) 2003-06-30 2008-06-24 Microsoft Corporation Streaming of variable bit rate multimedia content
US20050004997A1 (en) 2003-07-01 2005-01-06 Nokia Corporation Progressive downloading of timed multimedia content
US8149939B2 (en) 2003-07-07 2012-04-03 Samsung Electronics Co., Ltd. System of robust DTV signal transmissions that legacy DTV receivers will disregard
US7254754B2 (en) 2003-07-14 2007-08-07 International Business Machines Corporation Raid 3+3
KR100532450B1 (ko) 2003-07-16 2005-11-30 삼성전자주식회사 에러에 대해 강인한 특성을 가지는 데이터 기록 방법,이에 적합한 데이터 재생 방법, 그리고 이에 적합한 장치들
US20050028067A1 (en) 2003-07-31 2005-02-03 Weirauch Charles R. Data with multiple sets of error correction codes
CN1868157B (zh) 2003-08-21 2011-07-27 高通股份有限公司 无线链路控制层上的前向纠错编码方法和相关装置
US8694869B2 (en) 2003-08-21 2014-04-08 QUALCIMM Incorporated Methods for forward error correction coding above a radio link control layer and related apparatus
US7609762B2 (en) * 2003-09-07 2009-10-27 Microsoft Corporation Signaling for entry point frames with predicted first field
IL157886A0 (en) 2003-09-11 2009-02-11 Bamboo Mediacasting Ltd Secure multicast transmission
IL157885A0 (en) 2003-09-11 2004-03-28 Bamboo Mediacasting Ltd Iterative forward error correction
JP4183586B2 (ja) 2003-09-12 2008-11-19 三洋電機株式会社 映像表示装置
JP4988346B2 (ja) 2003-09-15 2012-08-01 ザ・ディレクティービー・グループ・インコーポレイテッド ビデオネットワークにおける適応トランスコーディング及び速度変換のための方法及びシステム
KR100608715B1 (ko) 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
EP1521373B1 (en) 2003-09-30 2006-08-23 Telefonaktiebolaget LM Ericsson (publ) In-place data deinterleaving
US7559004B1 (en) 2003-10-01 2009-07-07 Sandisk Corporation Dynamic redundant area configuration in a non-volatile memory system
KR101170629B1 (ko) 2003-10-06 2012-08-02 디지털 파운튼, 인크. 단일 송신기 또는 다중 송신기를 갖는 통신 시스템의 에러 정정 다중-스테이지 코드 생성기 및 디코더
US7614071B2 (en) 2003-10-10 2009-11-03 Microsoft Corporation Architecture for distributed sending of media data
US7516232B2 (en) 2003-10-10 2009-04-07 Microsoft Corporation Media organization for distributed sending of media data
WO2005036811A2 (en) 2003-10-14 2005-04-21 Matsushita Electric Industrial Co., Ltd. Data converter
US7650036B2 (en) 2003-10-16 2010-01-19 Sharp Laboratories Of America, Inc. System and method for three-dimensional video coding
US7168030B2 (en) 2003-10-17 2007-01-23 Telefonaktiebolaget Lm Ericsson (Publ) Turbo code decoder with parity information update
EP1528808A3 (en) 2003-10-27 2008-03-26 Matsushita Electric Industrial Co., Ltd. Apparatus for receiving a broadcast signal
JP2005136546A (ja) 2003-10-29 2005-05-26 Sony Corp 送信装置および方法、記録媒体、並びにプログラム
EP1528702B1 (en) 2003-11-03 2008-01-23 Broadcom Corporation FEC (forward error correction) decoding with dynamic parameters
JP4787167B2 (ja) 2003-12-01 2011-10-05 デジタル ファウンテン, インコーポレイテッド サブシンボル・ベース符号を使用する消去からのデータの保護
US7428669B2 (en) 2003-12-07 2008-09-23 Adaptive Spectrum And Signal Alignment, Inc. Adaptive FEC codeword management
US7574706B2 (en) 2003-12-15 2009-08-11 Microsoft Corporation System and method for managing and communicating software updates
US7590118B2 (en) 2003-12-23 2009-09-15 Agere Systems Inc. Frame aggregation format
JP4536383B2 (ja) 2004-01-16 2010-09-01 株式会社エヌ・ティ・ティ・ドコモ データ受信装置およびデータ受信方法
KR100770902B1 (ko) 2004-01-20 2007-10-26 삼성전자주식회사 고속 무선 데이터 시스템을 위한 가변 부호율의 오류 정정부호 생성 및 복호 장치 및 방법
JP4321284B2 (ja) 2004-02-03 2009-08-26 株式会社デンソー ストリーミングデータ送信装置、および情報配信システム
US7599294B2 (en) 2004-02-13 2009-10-06 Nokia Corporation Identification and re-transmission of missing parts
US7609653B2 (en) 2004-03-08 2009-10-27 Microsoft Corporation Resolving partial media topologies
US20050207392A1 (en) 2004-03-19 2005-09-22 Telefonaktiebolaget Lm Ericsson (Publ) Higher layer packet framing using RLP
US7240236B2 (en) 2004-03-23 2007-07-03 Archivas, Inc. Fixed content distributed data storage using permutation ring encoding
JP4433287B2 (ja) 2004-03-25 2010-03-17 ソニー株式会社 受信装置および方法、並びにプログラム
US8683535B2 (en) 2004-03-26 2014-03-25 Broadcom Corporation Fast channel change
US8842175B2 (en) * 2004-03-26 2014-09-23 Broadcom Corporation Anticipatory video signal reception and processing
US20050216472A1 (en) 2004-03-29 2005-09-29 David Leon Efficient multicast/broadcast distribution of formatted data
WO2005096301A1 (en) 2004-03-30 2005-10-13 Koninklijke Philips Electronics N.V. System and method for supporting improved trick mode performance for disc-based multimedia content
TW200534875A (en) 2004-04-23 2005-11-01 Lonza Ag Personal care compositions and concentrates for making the same
FR2869744A1 (fr) 2004-04-29 2005-11-04 Thomson Licensing Sa Methode de transmission de paquets de donnees numeriques et appareil implementant la methode
US7633970B2 (en) 2004-05-07 2009-12-15 Agere Systems Inc. MAC header compression for use with frame aggregation
EP1743431A4 (en) 2004-05-07 2007-05-02 Digital Fountain Inc SYSTEM FOR DOWNLOADING AND RECORDING AND CONTINUOUS READING OF FILES
US20050254575A1 (en) 2004-05-12 2005-11-17 Nokia Corporation Multiple interoperability points for scalable media coding and transmission
US20060037057A1 (en) 2004-05-24 2006-02-16 Sharp Laboratories Of America, Inc. Method and system of enabling trick play modes using HTTP GET
US8331445B2 (en) 2004-06-01 2012-12-11 Qualcomm Incorporated Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques
US20070110074A1 (en) 2004-06-04 2007-05-17 Bob Bradley System and Method for Synchronizing Media Presentation at Multiple Recipients
US8112531B2 (en) 2004-07-14 2012-02-07 Nokia Corporation Grouping of session objects
US7139660B2 (en) 2004-07-14 2006-11-21 General Motors Corporation System and method for changing motor vehicle personalization settings
US8544043B2 (en) 2004-07-21 2013-09-24 Qualcomm Incorporated Methods and apparatus for providing content information to content servers
US7409626B1 (en) 2004-07-28 2008-08-05 Ikanos Communications Inc Method and apparatus for determining codeword interleaver parameters
US7376150B2 (en) 2004-07-30 2008-05-20 Nokia Corporation Point-to-point repair response mechanism for point-to-multipoint transmission systems
US7590922B2 (en) 2004-07-30 2009-09-15 Nokia Corporation Point-to-point repair request mechanism for point-to-multipoint transmission systems
US7930184B2 (en) 2004-08-04 2011-04-19 Dts, Inc. Multi-channel audio coding/decoding of random access points and transients
US7721184B2 (en) 2004-08-11 2010-05-18 Digital Fountain, Inc. Method and apparatus for fast encoding of data symbols according to half-weight codes
JP4405875B2 (ja) 2004-08-25 2010-01-27 富士通株式会社 エラー訂正用データの生成方法及び生成装置並びに生成プログラム及び同プログラムを格納したコンピュータ読み取り可能な記録媒体
JP2006074335A (ja) 2004-09-01 2006-03-16 Nippon Telegr & Teleph Corp <Ntt> 伝送方法、伝送システム及び伝送装置
JP4576936B2 (ja) 2004-09-02 2010-11-10 ソニー株式会社 情報処理装置、情報記録媒体、コンテンツ管理システム、およびデータ処理方法、並びにコンピュータ・プログラム
JP2006115104A (ja) 2004-10-13 2006-04-27 Daiichikosho Co Ltd 高能率符号化された時系列情報をパケット化してリアルタイム・ストリーミング送信し受信再生する方法および装置
US7529984B2 (en) 2004-11-16 2009-05-05 Infineon Technologies Ag Seamless change of depth of a general convolutional interleaver during transmission without loss of data
US7751324B2 (en) 2004-11-19 2010-07-06 Nokia Corporation Packet stream arrangement in multimedia transmission
BRPI0518304A2 (pt) 2004-11-22 2008-11-11 Thomson Res Funding Corp mÉtodo e aparelho para mudar canal em sistema dsl
EP1817859A1 (en) 2004-12-02 2007-08-15 THOMSON Licensing Adaptive forward error correction
KR20060065482A (ko) 2004-12-10 2006-06-14 마이크로소프트 코포레이션 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스
JP2006174045A (ja) 2004-12-15 2006-06-29 Ntt Communications Kk 画像配信装置、プログラム及び方法
JP2006174032A (ja) 2004-12-15 2006-06-29 Sanyo Electric Co Ltd 画像データ伝送システム、画像データ受信装置及び画像データ送信装置
US7398454B2 (en) 2004-12-21 2008-07-08 Tyco Telecommunications (Us) Inc. System and method for forward error correction decoding using soft information
JP4391409B2 (ja) 2004-12-24 2009-12-24 株式会社第一興商 高能率符号化された時系列情報をリアルタイム・ストリーミング送信し受信再生する方法と受信装置
CN101116306A (zh) 2005-02-08 2008-01-30 艾利森电话股份有限公司 在分组交换网络上的按需多频道流会话
US7822139B2 (en) 2005-03-02 2010-10-26 Rohde & Schwarz Gmbh & Co. Kg Apparatus, systems, methods and computer products for providing a virtual enhanced training sequence
US20090222873A1 (en) 2005-03-07 2009-09-03 Einarsson Torbjoern Multimedia Channel Switching
US8028322B2 (en) 2005-03-14 2011-09-27 Time Warner Cable Inc. Method and apparatus for network content download and recording
US7219289B2 (en) 2005-03-15 2007-05-15 Tandberg Data Corporation Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same
US7418649B2 (en) 2005-03-15 2008-08-26 Microsoft Corporation Efficient implementation of reed-solomon erasure resilient codes in high-rate applications
US7450064B2 (en) 2005-03-22 2008-11-11 Qualcomm, Incorporated Methods and systems for deriving seed position of a subscriber station in support of unassisted GPS-type position determination in a wireless communication system
JP4487028B2 (ja) 2005-03-31 2010-06-23 ブラザー工業株式会社 配信速度制御装置、配信システム、配信速度制御方法、及び配信速度制御用プログラム
US7715842B2 (en) 2005-04-09 2010-05-11 Lg Electronics Inc. Supporting handover of mobile terminal
CN101120593A (zh) 2005-04-13 2008-02-06 诺基亚公司 可扩展性信息的编码、存储和信号发送
JP4515319B2 (ja) 2005-04-27 2010-07-28 株式会社日立製作所 コンピュータシステム
US7961700B2 (en) 2005-04-28 2011-06-14 Qualcomm Incorporated Multi-carrier operation in data transmission systems
US8683066B2 (en) 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
JP2006319743A (ja) 2005-05-13 2006-11-24 Toshiba Corp 受信装置
MX2007014744A (es) 2005-05-24 2008-02-14 Nokia Corp Metodo y aparatos para transmision/recepcion jerarquica en transmision digital.
US7676735B2 (en) 2005-06-10 2010-03-09 Digital Fountain Inc. Forward error-correcting (FEC) coding and streaming
US7644335B2 (en) 2005-06-10 2010-01-05 Qualcomm Incorporated In-place transformations with applications to encoding and decoding various classes of codes
JP2007013436A (ja) 2005-06-29 2007-01-18 Toshiba Corp 符号化ストリーム再生装置
US20070006274A1 (en) 2005-06-30 2007-01-04 Toni Paila Transmission and reception of session packets
JP2007013675A (ja) 2005-06-30 2007-01-18 Sanyo Electric Co Ltd ストリーミング配信システム及びサーバ
US7725593B2 (en) 2005-07-15 2010-05-25 Sony Corporation Scalable video coding (SVC) file format
US20070022215A1 (en) 2005-07-19 2007-01-25 Singer David W Method and apparatus for media data transmission
ATE514246T1 (de) 2005-08-19 2011-07-15 Hewlett Packard Development Co Andeutung von verlorenen segmenten über schichtgrenzen
US7924913B2 (en) 2005-09-15 2011-04-12 Microsoft Corporation Non-realtime data transcoding of multimedia content
US20070067480A1 (en) 2005-09-19 2007-03-22 Sharp Laboratories Of America, Inc. Adaptive media playout by server media processing for robust streaming
US20070078876A1 (en) 2005-09-30 2007-04-05 Yahoo! Inc. Generating a stream of media data containing portions of media files using location tags
US7720062B2 (en) 2005-10-05 2010-05-18 Lg Electronics Inc. Method of processing traffic information and digital broadcasting system
US7164370B1 (en) 2005-10-06 2007-01-16 Analog Devices, Inc. System and method for decoding data compressed in accordance with dictionary-based compression schemes
CN100442858C (zh) 2005-10-11 2008-12-10 华为技术有限公司 分组网络中多媒体实时传输的唇同步方法及其装置
US7720096B2 (en) 2005-10-13 2010-05-18 Microsoft Corporation RTP payload format for VC-1
JP4727401B2 (ja) 2005-12-02 2011-07-20 日本電信電話株式会社 無線マルチキャスト伝送システム、無線送信装置及び無線マルチキャスト伝送方法
US8340098B2 (en) * 2005-12-07 2012-12-25 General Instrument Corporation Method and apparatus for delivering compressed video to subscriber terminals
JP4456064B2 (ja) 2005-12-21 2010-04-28 日本電信電話株式会社 パケット送信装置、受信装置、システム、およびプログラム
US8185794B2 (en) 2006-01-05 2012-05-22 Telefonaktiebolaget L M Ericsson (Publ) Media container file management
US8214516B2 (en) 2006-01-06 2012-07-03 Google Inc. Dynamic media serving infrastructure
CN101390399B (zh) 2006-01-11 2010-12-01 诺基亚公司 可伸缩视频编码中的图片的后向兼容聚合
US7817865B2 (en) 2006-01-12 2010-10-19 Lg Electronics Inc. Processing multiview video
WO2007086654A1 (en) 2006-01-25 2007-08-02 Lg Electronics Inc. Digital broadcasting system and method of processing data
RU2290768C1 (ru) 2006-01-30 2006-12-27 Общество с ограниченной ответственностью "Трафиклэнд" Система медиавещания в инфраструктуре оператора мобильной связи
US7262719B2 (en) 2006-01-30 2007-08-28 International Business Machines Corporation Fast data stream decoding using apriori information
GB0602314D0 (en) 2006-02-06 2006-03-15 Ericsson Telefon Ab L M Transporting packets
US8990153B2 (en) 2006-02-07 2015-03-24 Dot Hill Systems Corporation Pull data replication model
EP1985022B1 (en) 2006-02-08 2011-06-08 Thomson Licensing Decoding of raptor codes
US9136983B2 (en) 2006-02-13 2015-09-15 Digital Fountain, Inc. Streaming and buffering using variable FEC overhead and protection periods
US20070200949A1 (en) 2006-02-21 2007-08-30 Qualcomm Incorporated Rapid tuning in multimedia applications
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
JP2007228205A (ja) 2006-02-23 2007-09-06 Funai Electric Co Ltd ネットワークサーバ
US8320450B2 (en) 2006-03-29 2012-11-27 Vidyo, Inc. System and method for transcoding between scalable and non-scalable video codecs
US8358704B2 (en) * 2006-04-04 2013-01-22 Qualcomm Incorporated Frame level multimedia decoding with frame information table
WO2007127741A2 (en) 2006-04-24 2007-11-08 Sun Microsystems, Inc. Media server system
US20080010153A1 (en) 2006-04-24 2008-01-10 Pugh-O'connor Archie Computer network provided digital content under an advertising and revenue sharing basis, such as music provided via the internet with time-shifted advertisements presented by a client resident application
US7640353B2 (en) 2006-04-27 2009-12-29 Microsoft Corporation Guided random seek support for media streaming
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US7525993B2 (en) 2006-05-24 2009-04-28 Newport Media, Inc. Robust transmission system and method for mobile television applications
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
TWM302355U (en) 2006-06-09 2006-12-11 Jia-Bau Jeng Fixation and cushion structure of knee joint
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US20100211690A1 (en) 2009-02-13 2010-08-19 Digital Fountain, Inc. Block partitioning for a data stream
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
JP2008011404A (ja) 2006-06-30 2008-01-17 Toshiba Corp コンテンツ処理装置及びコンテンツ処理方法
JP4392004B2 (ja) 2006-07-03 2009-12-24 インターナショナル・ビジネス・マシーンズ・コーポレーション パケット回復のための符号化および復号化技術
EP2044528A4 (en) 2006-07-20 2013-03-06 Sandisk Technologies Inc CONTENT DISTRIBUTION SYSTEM
US7711797B1 (en) 2006-07-31 2010-05-04 Juniper Networks, Inc. Optimizing batch size for prefetching data over wide area networks
US8209736B2 (en) 2006-08-23 2012-06-26 Mediatek Inc. Systems and methods for managing television (TV) signals
KR101021831B1 (ko) 2006-08-24 2011-03-17 노키아 코포레이션 미디어 파일에서 트랙 관계를 표시하는 시스템 및 방법
US20080066136A1 (en) 2006-08-24 2008-03-13 International Business Machines Corporation System and method for detecting topic shift boundaries in multimedia streams using joint audio, visual and text cues
US8335873B2 (en) * 2006-09-14 2012-12-18 Opentv, Inc. Method and systems for data transmission
JP2008109637A (ja) 2006-09-25 2008-05-08 Toshiba Corp 動画像符号化装置及びその方法
EP2084928B1 (en) 2006-10-30 2017-08-23 LG Electronics Inc. Method of performing random access in a wireless communication system
JP2008118221A (ja) 2006-10-31 2008-05-22 Toshiba Corp 復号装置及び復号方法
WO2008054100A1 (en) 2006-11-01 2008-05-08 Electronics And Telecommunications Research Institute Method and apparatus for decoding metadata used for playing stereoscopic contents
WO2008061164A2 (en) 2006-11-14 2008-05-22 Qualcomm Incorporated Systems and methods for channel switching
US8027328B2 (en) 2006-12-26 2011-09-27 Alcatel Lucent Header compression in a wireless communication network
EP4213033A1 (en) 2007-01-05 2023-07-19 DivX, LLC Video distribution system including progressive playback
EP2122874A1 (en) 2007-01-09 2009-11-25 Nokia Corporation Method for supporting file versioning in mbms file repair
US20080172430A1 (en) 2007-01-11 2008-07-17 Andrew Thomas Thorstensen Fragmentation Compression Management
MX2009000619A (es) 2007-01-11 2009-04-16 Panasonic Corp Metodo para la reproduccion de truco de datos multimedia en flujo y encriptados.
KR20080066408A (ko) 2007-01-12 2008-07-16 삼성전자주식회사 3차원 영상 처리 장치 및 방법
US9344362B2 (en) 2007-01-12 2016-05-17 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QOS control algorithm and apparatus for IPV6 label switching using the format
US8135071B2 (en) 2007-01-16 2012-03-13 Cisco Technology, Inc. Breakpoint determining for hybrid variable length coding using relationship to neighboring blocks
US7721003B2 (en) 2007-02-02 2010-05-18 International Business Machines Corporation System and method to synchronize OSGi bundle inventories between an OSGi bundle server and a client
US7805456B2 (en) 2007-02-05 2010-09-28 Microsoft Corporation Query pattern to enable type flow of element types
US20080192818A1 (en) 2007-02-09 2008-08-14 Dipietro Donald Vincent Systems and methods for securing media
US20080232357A1 (en) 2007-03-19 2008-09-25 Legend Silicon Corp. Ls digital fountain code
JP4838191B2 (ja) 2007-05-08 2011-12-14 シャープ株式会社 ファイル再生装置、ファイル再生方法、ファイル再生を実行させるプログラム及びそのプログラムを記録した記録媒体
JP2008283571A (ja) 2007-05-11 2008-11-20 Ntt Docomo Inc コンテンツ配信装置、コンテンツ配信システム、およびコンテンツ配信方法
US8275002B2 (en) 2007-05-14 2012-09-25 Samsung Electronics Co., Ltd. Broadcasting service transmitting apparatus and method and broadcasting service receiving apparatus and method for effectively accessing broadcasting service
MX2009012361A (es) 2007-05-16 2009-12-01 Thomson Licensing Aparato y metodo para codificar y descodificar señales.
EP2153670A4 (en) 2007-06-11 2011-03-09 Samsung Electronics Co Ltd METHOD AND DEVICE FOR GENERATING HEADLINE INFORMATION ON A STEREOSCOPIC IMAGE
EP2174502A2 (en) 2007-06-26 2010-04-14 Nokia Corporation System and method for indicating temporal layer switching points
US7917702B2 (en) 2007-07-10 2011-03-29 Qualcomm Incorporated Data prefetch throttle
JP2009027598A (ja) 2007-07-23 2009-02-05 Hitachi Ltd 映像配信サーバおよび映像配信方法
US8327403B1 (en) 2007-09-07 2012-12-04 United Video Properties, Inc. Systems and methods for providing remote program ordering on a user device via a web server
AU2008298602A1 (en) 2007-09-12 2009-03-19 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
US8233532B2 (en) 2007-09-21 2012-07-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Information signal, apparatus and method for encoding an information content, and apparatus and method for error correcting an information signal
US8346959B2 (en) 2007-09-28 2013-01-01 Sharp Laboratories Of America, Inc. Client-controlled adaptive streaming
KR101446359B1 (ko) 2007-10-09 2014-10-01 삼성전자주식회사 이동 통신 시스템에서 맥 프로토콜 데이터 유닛의 생성과 분리 장치 및 방법
US8706907B2 (en) 2007-10-19 2014-04-22 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8635360B2 (en) 2007-10-19 2014-01-21 Google Inc. Media playback point seeking using data range requests
US20090125636A1 (en) 2007-11-13 2009-05-14 Qiong Li Payload allocation methods for scalable multimedia servers
EP2215595B1 (en) 2007-11-23 2012-02-22 Media Patents S.L. A process for the on-line distribution of audiovisual contents with advertisements, advertisement management system, digital rights management system and audiovisual content player provided with said systems
US8543720B2 (en) 2007-12-05 2013-09-24 Google Inc. Dynamic bit rate scaling
TWI355168B (en) 2007-12-07 2011-12-21 Univ Nat Chiao Tung Application classification method in network traff
JP5385598B2 (ja) 2007-12-17 2014-01-08 キヤノン株式会社 画像処理装置及び画像管理サーバ装置及びそれらの制御方法及びプログラム
US9313245B2 (en) 2007-12-24 2016-04-12 Qualcomm Incorporated Adaptive streaming for on demand wireless services
KR101506217B1 (ko) * 2008-01-31 2015-03-26 삼성전자주식회사 스테레오스코픽 영상의 부분 데이터 구간 재생을 위한스테레오스코픽 영상 데이터스트림 생성 방법과 장치, 및스테레오스코픽 영상의 부분 데이터 구간 재생 방법과 장치
EP2086237B1 (en) 2008-02-04 2012-06-27 Alcatel Lucent Method and device for reordering and multiplexing multimedia packets from multimedia streams pertaining to interrelated sessions
US8151174B2 (en) 2008-02-13 2012-04-03 Sunrise IP, LLC Block modulus coding (BMC) systems and methods for block coding with non-binary modulus
US7984097B2 (en) 2008-03-18 2011-07-19 Media Patents, S.L. Methods for transmitting multimedia files and advertisements
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US20090257508A1 (en) 2008-04-10 2009-10-15 Gaurav Aggarwal Method and system for enabling video trick modes
EP2263341B1 (en) 2008-04-14 2018-09-19 Amazon Technologies, Inc. Method and apparatus for performing random access procedures
WO2009127961A1 (en) 2008-04-16 2009-10-22 Nokia Corporation Decoding order recovery in session multiplexing
US8855199B2 (en) 2008-04-21 2014-10-07 Nokia Corporation Method and device for video coding and decoding
EP2286585A4 (en) 2008-05-07 2015-06-17 Digital Fountain Inc FAST CHANNEL CHANGE AND HIGH QUALITY CONTINUOUS FLOW BROADCAST PROTECTION ON A BROADCAST CHANNEL
WO2009140208A2 (en) 2008-05-12 2009-11-19 Swarmcast, Inc. Live media delivery over a packet-based computer network
JP5022301B2 (ja) 2008-05-19 2012-09-12 株式会社エヌ・ティ・ティ・ドコモ プロキシサーバおよび通信中継プログラム、並びに通信中継方法
CN101287107B (zh) 2008-05-29 2010-10-13 腾讯科技(深圳)有限公司 媒体文件的点播方法、系统和设备
US8370887B2 (en) 2008-05-30 2013-02-05 Microsoft Corporation Media streaming with enhanced seek operation
US20100011274A1 (en) 2008-06-12 2010-01-14 Qualcomm Incorporated Hypothetical fec decoder and signalling for decoding control
US8775566B2 (en) * 2008-06-21 2014-07-08 Microsoft Corporation File format for media distribution and presentation
US8387150B2 (en) 2008-06-27 2013-02-26 Microsoft Corporation Segmented media content rights management
US8468426B2 (en) 2008-07-02 2013-06-18 Apple Inc. Multimedia-aware quality-of-service and error correction provisioning
US8539092B2 (en) 2008-07-09 2013-09-17 Apple Inc. Video streaming using multiple channels
US20100153578A1 (en) 2008-07-16 2010-06-17 Nokia Corporation Method and Apparatus for Peer to Peer Streaming
US8638796B2 (en) 2008-08-22 2014-01-28 Cisco Technology, Inc. Re-ordering segments of a large number of segmented service flows
US8325796B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
US8370520B2 (en) 2008-11-24 2013-02-05 Juniper Networks, Inc. Adaptive network content delivery system
US20100169303A1 (en) 2008-12-31 2010-07-01 David Biderman Playlists for real-time or near real-time streaming
US8743906B2 (en) 2009-01-23 2014-06-03 Akamai Technologies, Inc. Scalable seamless digital video stream splicing
BRPI1007163A2 (pt) 2009-01-26 2018-09-25 Thomson Licensing compactação de quadro para codificação de vídeo
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US8621044B2 (en) 2009-03-16 2013-12-31 Microsoft Corporation Smooth, stateless client media streaming
US8909806B2 (en) 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
US9807468B2 (en) 2009-06-16 2017-10-31 Microsoft Technology Licensing, Llc Byte range caching
US8903895B2 (en) 2009-07-22 2014-12-02 Xinlab, Inc. Method of streaming media to heterogeneous client devices
US8355433B2 (en) 2009-08-18 2013-01-15 Netflix, Inc. Encoding video streams for adaptive video streaming
US20120151302A1 (en) 2010-12-10 2012-06-14 Qualcomm Incorporated Broadcast multimedia storage and access using page maps when asymmetric memory is used
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
WO2012037635A1 (en) 2009-09-02 2012-03-29 Nortel Networks Limited Mac packet data unit construction for wireless systems
US20110096828A1 (en) 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
WO2011039617A1 (en) 2009-09-29 2011-04-07 Nokia Corporation System, method and apparatus for dynamic media file streaming
US9438861B2 (en) 2009-10-06 2016-09-06 Microsoft Technology Licensing, Llc Integrating continuous and sparse streaming data
JP2011087103A (ja) 2009-10-15 2011-04-28 Sony Corp コンテンツ再生システム、コンテンツ再生装置、プログラム、コンテンツ再生方法、およびコンテンツサーバを提供
CN107911332B (zh) 2009-11-04 2021-01-08 阿莫泰克有限公司 媒体内容流播的方法、系统和计算机可读介质
KR101786050B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 전송 방법 및 장치
KR101786051B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치
CN101729857A (zh) 2009-11-24 2010-06-09 中兴通讯股份有限公司 一种接入视频服务的方法及视频播放系统
CN102687518B (zh) 2009-12-11 2016-06-01 诺基亚技术有限公司 用于流媒体文件内表示的描述和定时的装置及方法
KR101624013B1 (ko) 2010-02-19 2016-05-24 텔레폰악티에볼라겟엘엠에릭슨(펍) 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치
WO2011102791A1 (en) 2010-02-19 2011-08-25 Telefonaktiebolaget L M Ericsson (Publ) Method and arrangement for representation switching in http streaming
JP5071495B2 (ja) 2010-03-04 2012-11-14 ウシオ電機株式会社 光源装置
EP3783822A1 (en) 2010-03-11 2021-02-24 Electronics and Telecommunications Research Institute Method and apparatus for transceiving data in a mimo system
US8543724B2 (en) * 2010-04-30 2013-09-24 Digital Keystone, Inc. Methods and apparatuses for a projected PVR experience
US20110280311A1 (en) 2010-05-13 2011-11-17 Qualcomm Incorporated One-stream coding for asymmetric stereo video
US9497290B2 (en) 2010-06-14 2016-11-15 Blackberry Limited Media presentation description delta file for HTTP streaming
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
KR20120010089A (ko) * 2010-07-20 2012-02-02 삼성전자주식회사 Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치
US9131033B2 (en) 2010-07-20 2015-09-08 Qualcomm Incoporated Providing sequence data sets for streaming video data
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US8711933B2 (en) * 2010-08-09 2014-04-29 Sony Computer Entertainment Inc. Random access point (RAP) formation using intra refreshing technique in video coding
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
KR101737325B1 (ko) 2010-08-19 2017-05-22 삼성전자주식회사 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치
US8615023B2 (en) 2010-10-27 2013-12-24 Electronics And Telecommunications Research Institute Apparatus and method for transmitting/receiving data in communication system
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US20120208580A1 (en) 2011-02-11 2012-08-16 Qualcomm Incorporated Forward error correction scheduling for an improved radio link protocol
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery

Also Published As

Publication number Publication date
CN103931204A (zh) 2014-07-16
CN103931204B (zh) 2017-12-29
KR101607225B1 (ko) 2016-04-11
IN2014CN02159A (ja) 2015-05-29
WO2013052780A1 (en) 2013-04-11
US20130091251A1 (en) 2013-04-11
US9843844B2 (en) 2017-12-12
KR20140084142A (ko) 2014-07-04
EP2764704A1 (en) 2014-08-13
JP2014531878A (ja) 2014-11-27

Similar Documents

Publication Publication Date Title
JP5788101B2 (ja) メディアデータのネットワークストリーミング
JP6342457B2 (ja) コード化ビデオデータのネットワークストリーミング
JP5964972B2 (ja) 複数のソースからのマルチメディアデータのストリーミング
JP5937275B2 (ja) ネットワークストリーミングのための失われたメディアデータの置換
KR101558116B1 (ko) 코딩된 멀티미디어 데이터의 네트워크 스트리밍 동안의 표현들 사이의 전환
US10938872B2 (en) Processing interactivity events for streaming media data
US9699229B2 (en) Robust live operation of dash
EP3257255A1 (en) Low latency video streaming
JP2018526845A (ja) DASHクライアントQoEメトリックのミドルウェア配信
US20150095450A1 (en) Utilizing multiple switchable adaptation sets for streaming media data
WO2020072792A1 (en) Initialization set for network streaming of media data
US11943501B2 (en) Dynamic resolution change hints for adaptive streaming
US20210344992A1 (en) Calculating start time availability for streamed media data

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150602

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150629

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150728

R150 Certificate of patent or registration of utility model

Ref document number: 5788101

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees