IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ディビックス, エルエルシーの特許一覧

特許7166311デジタルビデオストリーミングに関する適応バッファリングのためのシステムおよび方法
<>
  • 特許-デジタルビデオストリーミングに関する適応バッファリングのためのシステムおよび方法 図1
  • 特許-デジタルビデオストリーミングに関する適応バッファリングのためのシステムおよび方法 図2
  • 特許-デジタルビデオストリーミングに関する適応バッファリングのためのシステムおよび方法 図3
  • 特許-デジタルビデオストリーミングに関する適応バッファリングのためのシステムおよび方法 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-27
(45)【発行日】2022-11-07
(54)【発明の名称】デジタルビデオストリーミングに関する適応バッファリングのためのシステムおよび方法
(51)【国際特許分類】
   H04N 21/433 20110101AFI20221028BHJP
   H04N 21/438 20110101ALI20221028BHJP
   H04L 67/01 20220101ALI20221028BHJP
   H04L 67/2866 20220101ALI20221028BHJP
   H04L 67/00 20220101ALI20221028BHJP
【FI】
H04N21/433
H04N21/438
H04L67/01
H04L67/2866
H04L67/00
【請求項の数】 14
【外国語出願】
(21)【出願番号】P 2020108513
(22)【出願日】2020-06-24
(62)【分割の表示】P 2019512873の分割
【原出願日】2017-09-05
(65)【公開番号】P2020156111
(43)【公開日】2020-09-24
【審査請求日】2020-09-04
(31)【優先権主張番号】62/385,065
(32)【優先日】2016-09-08
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】518348942
【氏名又は名称】ディビックス, エルエルシー
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【弁理士】
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【弁理士】
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【弁護士】
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】アミット ビームセン スリ
【審査官】川中 龍太
(56)【参考文献】
【文献】特開2008-029005(JP,A)
【文献】米国特許出願公開第2014/0282792(US,A1)
【文献】特表2016-504797(JP,A)
【文献】特表2016-500504(JP,A)
【文献】特表2011-501489(JP,A)
【文献】特開2015-156604(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 - 21/858
H04L 67/01
H04L 67/2866
H04L 67/00
(57)【特許請求の範囲】
【請求項1】
再生デバイスであって、
メモリと、
ネットワークインターフェースと、
前記メモリ内に記憶された命令を読み出すプロセッサと
を備え、
前記命令は、
複数の代替ストリームに関する情報を含むマニフェストファイルを受信することであって、各代替ストリームは、他のストリームとは異なるビットレートを有する、ことと、
前記マニフェストファイルから各代替ストリームに対する最小バッファ時間を受信することであって、各代替ストリームの最小バッファ時間は、代替ストリームの再生の通常速度におけるデジタルビデオコンテンツの再生の中断を防止するための前記代替ストリームのデジタルメディアコンテンツの所定の再生時間である、ことと、
前記マニフェストファイルから各代替ストリームに対する低減された最小バッファ時間を決定することであって、各代替ストリームの低減された最小バッファ時間は、前記再生の通常速度における前記代替ストリームの最小バッファ時間を数値因子で割ったものであり、前記数値因子は1よりも大きい、ことと、
前記再生デバイスのバッファ内に第1の代替ストリームの前記デジタルビデオコンテンツをダウンロードすることと、
前記バッファ内の前記第1の代替ストリームのデジタルコンテンツの量が最初に前記低減された最小バッファ時間に到達するときに、前記デジタルビデオコンテンツの再生を開始することであって、前記開始された再生の速度は、前記第1の代替ストリームの通常速度を前記数値因子によって低減した速度と等しいスローモーション速度である、ことと
を行うように前記プロセッサに指示する、再生デバイス。
【請求項2】
前記デジタルビデオコンテンツをダウンロードすることはさらに、
前記マニフェストファイルから、エンコードされたメディアを含有するコンテナファイルの場所を抽出することと、
エンコードされたメディアを含有する前記コンテナファイルのポーションを要求することと
を含む、請求項1に記載の再生デバイス。
【請求項3】
前記デジタルビデオコンテンツは、DASH規格ファイルであり、前記最小バッファ時間は、メディア表現記述データ構造内に記憶される、請求項1に記載の再生デバイス。
【請求項4】
前記最小バッファ時間を低減させることはさらに、利用可能なデジタルビデオコンテンツを低減された速度で再生することによって、前記デジタルビデオコンテンツを減少させ、バッファを充填することを含む、請求項1に記載の再生デバイス。
【請求項5】
前記数値因子は、再生のために消費される前記デジタルビデオコンテンツの量を変化させる、請求項1に記載の再生デバイス。
【請求項6】
前記スローモーション速度は、前記数値因子に対応する、請求項1に記載の再生デバイス。
【請求項7】
デジタルビデオコンテンツの再生を提供するための方法であって、
メモリ内に記憶された命令を読み出すプロセッサを使用して、マニフェストファイルを受信することであって、前記マニフェストファイルは、複数の代替ストリームに関する情報を含み、各代替ストリームは、他のストリームとは異なるビットレートを有する、ことと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記マニフェストファイルから各代替ストリームに対する最小バッファ時間を受信することであって、各代替ストリームの最小バッファ時間は、代替ストリームの再生の通常速度におけるデジタルビデオコンテンツの再生の中断を防止するための前記代替ストリームのデジタルメディアコンテンツの所定の再生時間である、ことと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記マニフェストファイルから各代替ストリームに対する低減された最小バッファ時間を決定することであって、各代替ストリームの低減された最小バッファ時間は、前記再生の通常速度における前記代替ストリームの最小バッファ時間を数値因子で割ったものであり、前記数値因子は1よりも大きい、ことと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、再生デバイスのバッファ内に第1の代替ストリームの前記デジタルビデオコンテンツをダウンロードすることと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記バッファ内の前記第1の代替ストリームのデジタルコンテンツの量が最初に前記低減された最小バッファ時間に到達するときに、前記デジタルビデオコンテンツの再生を開始することであって、前記開始された再生の速度は、前記第1の代替ストリームの通常速度を前記数値因子によって低減した速度と等しいスローモーション速度である、ことと
を含む、デジタルビデオコンテンツの再生を提供するための方法。
【請求項8】
前記デジタルビデオコンテンツをダウンロードすることはさらに、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記マニフェストファイルから、エンコードされたメディアを含有するコンテナファイルの場所を抽出することと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、エンコードされたメディアを含有する前記コンテナファイルのポーションを要求することと
を含む、請求項7に記載のデジタルビデオコンテンツの再生を提供するための方法。
【請求項9】
前記デジタルビデオコンテンツは、DASH規格ファイルであり、前記最小バッファ時間は、メディア表現記述データ構造内に記憶される、請求項7に記載のデジタルビデオコンテンツの再生を提供するための方法。
【請求項10】
前記最小バッファ時間を低減させることはさらに、利用可能なデジタルビデオコンテンツを低減された速度で再生することによって、前記デジタルビデオコンテンツを減少させ、バッファを充填することを含む、請求項7に記載のデジタルビデオコンテンツの再生を提供するための方法。
【請求項11】
前記数値因子は、再生のために消費される前記デジタルビデオコンテンツの量を変化させる、請求項7に記載のデジタルビデオコンテンツの再生を提供するための方法。
【請求項12】
前記スローモーション速度は、前記数値因子に対応する、請求項7に記載のデジタルビデオコンテンツの再生を提供するための方法。
【請求項13】
前記メモリ内に記憶された前記命令はさらに、
前記バッファ内の前記第1の代替ストリームの前記デジタルコンテンツが前記最小バッファ時間に到達するまで、前記スローモーション速度での前記デジタルビデオコンテンツの再生を続けることと、
前記バッファ内の前記第1の代替ストリームの前記デジタルコンテンツが前記最小バッファ時間に到達するときに、前記再生の通常速度で前記デジタルビデオコンテンツを再生することと
を含む、請求項1に記載の再生デバイス。
【請求項14】
デジタルビデオコンテンツの再生を提供することはさらに、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記バッファ内の前記第1の代替ストリームの前記デジタルコンテンツが前記最小バッファ時間に到達するまで、前記スローモーション速度での前記デジタルビデオコンテンツの再生を続けることと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記バッファ内の前記第1の代替ストリームの前記デジタルコンテンツが前記最小バッファ時間に到達するときに、前記再生の通常速度で前記デジタルビデオコンテンツを再生することと
を含む、請求項7に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
(発明の分野)
本発明は、概して、適応ストリーミングに関し、より具体的には、デジタルビデオのストリーミングを適応的にバッファするシステムに関する。
【背景技術】
【0002】
(背景)
用語「メディアをストリーミングする」は、再生デバイス上におけるメディアの再生を説明しており、メディアは、サーバ上に記憶され、再生の間、ネットワークを経由して、再生デバイスに継続的に送信される。典型的には、再生デバイスは、メディアの次のポーションの受信に先立って、全てのバッファされたメディアの再生を完了するため、再生デバイスは、再生の間、任意の所与の時間において、十分な量のメディアをバッファ内に記憶し、再生の中断を防止する。適応ビットレートストリーミングまたは適応ストリーミングは、本ストリーミング条件(例えば、ユーザのネットワーク帯域幅およびCPU容量)をリアルタイムに検出すること、ならびにそれに応じてストリーミングされるメディアの品質を調節することを伴う。典型的には、ソースメディアは、複数のビットレートでエンコードされ、再生デバイスまたはクライアントは、利用可能なリソースに応じて、異なるエンコードのストリーミング間で切り替える。
【0003】
適応ストリーミングソリューションは、典型的には、RFC 2616として、Internet Engineering Task ForceおよびWorld Wide Web Consortiumによって公開されたハイパーテキスト転送プロトコル(HTTP)、またはRFC 2326として、Internet Engineering Task Forceによって公開されたリアルタイムストリーミングプロトコル(RTSP)のいずれかを利用して、サーバと再生デバイスとの間でメディアをストリーミングする。HTTPは、再生デバイスが、ファイル内のバイト範囲を要求することを可能にする、ステートレスプロトコルである。HTTPは、サーバが、再生デバイスから受信された要求に応答するために、情報を要求する再生デバイスの状態または再生デバイスによって要求されたバイト範囲に関する情報を記録することが要求されないため、ステートレスとして説明される。RTSPは、ストリーミングメディアサーバを制御するために使用されるネットワーク制御プロトコルである。再生デバイスは、メディアをストリーミングするサーバに、「再生」および「一時停止」等の制御コマンドを発行し、メディアファイルの再生を制御する。RTSPが利用されるとき、メディアサーバは、各クライアントデバイスの状態を記録し、クライアントデバイスから受信した命令およびクライアントの状態に基づいて、ストリーミングするためのメディアを判定する。
【0004】
適応ストリーミングシステムでは、ソースメディアは、典型的には、実際のビデオおよびオーディオデータを含有する、いくつかの代替ストリームを指示するトップレベルインデックスファイルとして、メディアサーバ上に記憶される。各ストリームは、典型的には、1つ以上のコンテナファイル内に記憶される。異なる適応ストリーミングソリューションは、典型的には、異なるインデックスおよびメディアコンテナを利用する。World Wide Web Consortiumによって開発された同期マルチメディア統合言語(SMIL)は、Microsoft Corporation(Redmond,Washington)によって開発されたIISスムーズストリーミング、およびAdobe Systems Incorporated(San Jose,California)によって開発されたフラッシュダイナミックストリーミングを含む、いくつかの適応ストリーミングソリューションにおいて、インデックスを作成するために利用される。Apple Computer Incorporated(Cupertino,California)によって開発されたHTTP適応ビットレートストリーミングは、典型的には、メディアコンテナファイルを識別する、URIのリストを含有するテキストファイルである、拡張M3U再生リストファイル(.M3U8)を使用して、インデックスファイルを実装する。最も一般に使用されるメディアコンテナ形式は、MPEG-4 Part 14(すなわち、ISO/IEC 14496-14)に規定されるMP4コンテナ形式、およびMPEG-2 Part 1(すなわち、ISO/IEC規格13818-1)に規定されるMPEGトランスポートストリーム(TS)コンテナである。MP4コンテナ形式は、IISスムーズストリーミングおよびフラッシュダイナミックストリーミングにおいて利用される。TSコンテナは、HTTP適応ビットレートストリーミングにおいて使用される。
【0005】
Matroskaコンテナは、オープン標準プロジェクトとしてMatroska非営利団体(Aussonne,France)によって開発されたメディアコンテナである。Matroskaコンテナは、拡張バイナリメタ言語(EBML)に基づき、これは、拡張マークアップ言語(XML)のバイナリ派生物である。Matroskaコンテナのデコードは、多くの消費者電子機器(CE)デバイスによってサポートされている。DivX,LLC(San Diego,California)によって開発されたDivX Plusファイル形式は、Matroskaコンテナ形式の拡張子を利用する(すなわち、Matroskaコンテナ形式規格に基づくが、Matroska形式内に規定されていない要素を含む)。
【0006】
インターネットを経由してメディアコンテンツの送達のための一貫した手段を提供するために、国際標準化機構(ISO)および国際電気標準会議(IEC)は、HTTP(DASH)規格を経由したダイナミック適応ストリーミングを推進している。DASH規格は、HTTPを使用したMPEGコンテンツの送達のためのメディアコンテンツおよびコンテンツの記述のための形式を規定する。DASHによると、表現のためのメディアコンテンツの各コンポーネントは、1つ以上のストリーム内に記憶される。ストリームのそれぞれは、セグメントに分割される。メディア表現記述(MPD)は、ストリームのそれぞれの内のセグメントについての情報と、再生の間にメディアコンテンツを表現するために必要とされる他の情報とを含む、データ構造である。再生デバイスは、再生のための適応ビットレートストリーミングを使用してメディアコンテンツのコンポーネントを取得するために、MPDを使用する。
【発明の概要】
【発明が解決しようとする課題】
【0007】
(発明の要約)
本発明のいくつかの実施形態による、デジタルビデオストリーミングに関する適応バッファリングのためのシステムおよび方法が、図示される。
【課題を解決するための手段】
【0008】
1つの実施形態は、再生デバイスを含み、再生デバイスは、メモリと、ネットワークインターフェースと、メモリ内に記憶される命令を読み出すプロセッサとを備え、命令は、再生デバイスのバッファ内にデジタルビデオコンテンツをダウンロードし、デジタルビデオコンテンツから最小バッファ時間を受信し、再生デバイスを使用してデジタルビデオコンテンツをスローモーション速度で再生し、スローモーション再生速度因子によって最小バッファ時間を低減させ、再生デバイスを使用して、低減された最小バッファ時間が到達されるまで、デジタルビデオコンテンツをスローモーション速度で再生し続け、再生デバイスを使用して、最小バッファ時間が到達されると、デジタルビデオコンテンツをスローモーション速度より速い速度で再生するようにプロセッサに指示する。
【0009】
さらなる実施形態では、デジタルビデオコンテンツをダウンロードすることはさらに、マニフェストを要求することと、マニフェストから、エンコードされたメディアを含有するコンテナファイルの場所を抽出することと、エンコードされたメディアを含有するコンテナファイルのポーションを要求することとを含む。
【0010】
別の実施形態では、バッファ内にダウンロードされたエンコードされたメディアを低減された最小バッファ時間と比較することと、エンコードされたメディアが低減された最小バッファ時間を超過するとき、再生デバイスを使用してエンコードされたメディアを再生することとである。
【0011】
なおもさらなる実施形態では、最小バッファ時間は、最小量のメディアをダウンロードし、バッファ内に記憶し、再生の中断を回避するための時間量である。
【0012】
さらに別の実施形態では、最小バッファ時間は、デジタルビデオコンテンツ内において、マニフェストと、インデックスファイルと、デジタルビデオコンテンツによって指示されるファイルとから成る群から選択される場所内に記憶される。
【0013】
さらにさらなる実施形態では、デジタルビデオコンテンツはさらに、マニフェストと、それぞれが代替のデジタルビデオストリームを含有する、複数のコンテナファイルとを含む。
【0014】
さらに別の実施形態では、代替のデジタルビデオストリームは、異なるビットレートでエンコードされるデジタルビデオストリームである。
【0015】
再びさらなる実施形態では、デジタルビデオコンテンツは、DASH規格ファイルであり、最小バッファ時間は、メディア表現記述データ構造内に記憶される。
【0016】
再び別の実施形態では、最小バッファ時間を低減させることはさらに、利用可能なデジタルビデオコンテンツを低減された速度で再生することによって、デジタルビデオコンテンツを減少させ、バッファを充填することを含む。
【0017】
さらに付加的な実施形態では、スローモーション再生速度因子は、再生のために消費されるデジタルビデオコンテンツの量を変化させる。
【0018】
別の付加的な実施形態では、スローモーション速度は、スローモーション再生速度因子に対応する。
【0019】
なおもさらにさらなる実施形態では、メモリ内に記憶された命令を読み出すプロセッサを使用して、再生デバイスのバッファ内にデジタルビデオコンテンツをダウンロードすることと、メモリ内に記憶された命令を読み出すプロセッサを使用して、デジタルビデオコンテンツから最小バッファ時間を受信することと、再生デバイスと、メモリ内に記憶された命令を読み出すプロセッサとを使用して、デジタルビデオコンテンツをスローモーション速度で再生することと、再生デバイスを使用して、メモリ内に記憶された命令を読み出すプロセッサを使用して、スローモーション再生速度因子によって最小バッファ時間を低減させることと、再生デバイスと、メモリ内に記憶された命令を読み出すプロセッサとを使用して、最小バッファ時間が到達されると、デジタルビデオコンテンツをスローモーション速度より速い速度で再生することとである。
【0020】
なおもさらに別の実施形態では、デジタルビデオコンテンツをダウンロードすることはさらに、メモリ内に記憶された命令を読み出すプロセッサを使用して、マニフェストを要求することと、メモリ内に記憶された命令を読み出すプロセッサを使用して、マニフェストからエンコードされたメディアを含有するコンテナファイルの場所を抽出することと、メモリ内に記憶された命令を読み出すプロセッサを使用して、エンコードされたメディアを含有するコンテナファイルのポーションを要求することとを含む。
【0021】
再びなおもさらなる実施形態では、メモリ内に記憶された命令を読み出すプロセッサを使用して、バッファ内にダウンロードされたエンコードされたメディアを低減された最小バッファ時間と比較することと、メモリ内に記憶された命令を読み出すプロセッサを使用して、エンコードされたメディアが低減された最小バッファ時間を超過するとき、再生デバイスを使用してエンコードされたメディアを再生することとである。
【0022】
再びさらに別の実施形態では、最小バッファ時間は、最小量のメディアをダウンロードし、バッファ内に記憶し、再生の中断を回避するための時間量である。
【0023】
さらなる実施形態では、最小バッファ時間は、デジタルビデオコンテンツ内において、マニフェストと、インデックスファイルと、デジタルビデオコンテンツによって指示されるファイルとから成る群から選択される場所内に記憶される。
【0024】
別の実施形態では、デジタルビデオコンテンツはさらに、マニフェストと、それぞれが代替のデジタルビデオストリームを含有する、複数のコンテナファイルとを含む。
【0025】
なおもさらなる実施形態では、代替のデジタルビデオストリームは、異なるビットレートでエンコードされるデジタルビデオストリームである。
【0026】
さらに別の実施形態では、デジタルビデオコンテンツは、DASH規格ファイルであり、最小バッファ時間は、メディア表現記述データ構造内に記憶される。
【0027】
さらにさらなる実施形態では、最小バッファ時間を低減させることはさらに、利用可能なデジタルビデオコンテンツを低減された速度で再生することによって、デジタルビデオコンテンツを減少させ、バッファを充填することを含む。
【0028】
さらに別の実施形態では、スローモーション再生速度因子は、再生のために消費されるデジタルビデオコンテンツの量を変化させる。
【0029】
再びさらなる実施形態では、スローモーション速度は、スローモーション再生速度因子に対応する。
本明細書は、例えば、以下の項目も提供する。
(項目1)
再生デバイスであって、
メモリと、
ネットワークインターフェースと、
前記メモリ内に記憶された命令を読み出すプロセッサと
を備え、
前記命令は、
再生デバイスのバッファ内にデジタルビデオコンテンツをダウンロードすることと、
前記デジタルビデオコンテンツから最小バッファ時間を受信することと、
前記再生デバイスを使用して前記デジタルビデオコンテンツをスローモーション速度で再生することと、
スローモーション再生速度因子によって前記最小バッファ時間を低減させることと、
前記再生デバイスを使用して、前記低減された最小バッファ時間が到達されるまで、前記デジタルビデオコンテンツを前記スローモーション速度で再生し続けることと、
前記再生デバイスを使用して、前記最小バッファ時間が到達されると、前記デジタルビデオコンテンツを前記スローモーション速度より速い速度で再生することと
を行うようにプロセッサに指示する、再生デバイス。
(項目2)
前記デジタルビデオコンテンツをダウンロードすることはさらに、
マニフェストを要求することと、
前記マニフェストから、エンコードされたメディアを含有するコンテナファイルの場所を抽出することと、
エンコードされたメディアを含有する前記コンテナファイルのポーションを要求することと
を含む、項目1に記載の再生デバイス。
(項目3)
前記バッファ内に前記ダウンロードされたエンコードされたメディアを前記低減された最小バッファ時間と比較することと、
前記エンコードされたメディアが前記低減された最小バッファ時間を超過するとき、前記再生デバイスを使用して、前記エンコードされたメディアを再生することと
をさらに含む、項目2に記載の再生デバイス。
(項目4)
前記最小バッファ時間は、最小量のメディアをダウンロードし、バッファ内に記憶し、再生の中断を回避するための時間量である、項目1に記載の再生デバイス。
(項目5)
前記最小バッファ時間は、前記デジタルビデオコンテンツ内において、マニフェストと、インデックスファイルと、前記デジタルビデオコンテンツによって指示されるファイルとから成る群から選択される場所内に記憶される、項目1に記載の再生デバイス。
(項目6)
前記デジタルビデオコンテンツはさらに、マニフェストと、それぞれが代替のデジタルビデオストリームを含有する、複数のコンテナファイルとを含む、項目5に記載の再生デバイス。
(項目7)
前記代替のデジタルビデオストリームは、異なるビットレートでエンコードされるデジタルビデオストリームである、項目7に記載の再生デバイス。
(項目8)
前記デジタルビデオコンテンツは、DASH規格ファイルであり、前記最小バッファ時間は、メディア表現記述データ構造内に記憶される、項目1に記載の再生デバイス。
(項目9)
前記最小バッファ時間を低減させることはさらに、利用可能なデジタルビデオコンテンツを低減された速度で再生することによって、前記デジタルビデオコンテンツを減少させ、バッファを充填することを含む、項目1に記載の再生デバイス。
(項目10)
前記スローモーション再生速度因子は、再生のために消費される前記デジタルビデオコンテンツの量を変化させる、項目1に記載の再生デバイス。
(項目11)
前記スローモーション速度は、前記スローモーション再生速度因子に対応する、項目1に記載の再生デバイス。
(項目12)
デジタルビデオコンテンツの再生を提供するための方法であって、
メモリ内に記憶された命令を読み出すプロセッサを使用して、再生デバイスのバッファ内にデジタルビデオコンテンツをダウンロードすることと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記デジタルビデオコンテンツから最小バッファ時間を受信することと、
前記再生デバイスと、メモリ内に記憶された前記命令を読み出す前記プロセッサとを使用して、前記デジタルビデオコンテンツをスローモーション速度で再生することと、
前記再生デバイスを使用して、メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、スローモーション再生速度因子によって前記最小バッファ時間を低減させることと、
前記再生デバイスと、メモリ内に記憶された前記命令を読み出す前記プロセッサとを使用して、前記最小バッファ時間が到達されると、前記デジタルビデオコンテンツを前記スローモーション速度より速い速度で再生することと
を含む、デジタルビデオコンテンツの再生を提供するための方法。
(項目13)
前記デジタルビデオコンテンツをダウンロードすることはさらに、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、マニフェストを要求することと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記マニフェストからエンコードされたメディアを含有するコンテナファイルの場所を抽出することと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、エンコードされたメディアを含有する前記コンテナファイルのポーションを要求することと
を含む、項目12に記載のデジタルビデオコンテンツの再生を提供するための方法。
(項目14)
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記バッファ内に前記ダウンロードされたエンコードされたメディアを前記低減された最小バッファ時間と比較することと、
メモリ内に記憶された前記命令を読み出す前記プロセッサを使用して、前記エンコードされたメディアが前記低減された最小バッファ時間を超過するとき、前記再生デバイスを使用して前記エンコードされたメディアを再生することと
をさらに含む、項目13に記載のデジタルビデオコンテンツの再生を提供するための方法。
(項目15)
前記最小バッファ時間は、最小量のメディアをダウンロードし、バッファ内に記憶し、再生の中断を回避するための時間量である、項目12に記載のデジタルビデオコンテンツの再生を提供するための方法。
(項目16)
前記最小バッファ時間は、前記デジタルビデオコンテンツ内において、マニフェストと、インデックスファイルと、前記デジタルビデオコンテンツによって指示されるファイルとから成る群から選択される場所内に記憶される、項目12に記載のデジタルビデオコンテンツの再生を提供するための方法。
(項目17)
前記デジタルビデオコンテンツはさらに、マニフェストと、それぞれが代替のデジタルビデオストリームを含有する、複数のコンテナファイルとを含む、項目16に記載のデジタルビデオコンテンツの再生を提供するための方法。
(項目18)
前記代替のデジタルビデオストリームは、異なるビットレートでエンコードされるデジタルビデオストリームである、項目17に記載のデジタルビデオコンテンツの再生を提供するための方法。
(項目19)
前記デジタルビデオコンテンツは、DASH規格ファイルであり、前記最小バッファ時間は、メディア表現記述データ構造内に記憶される、項目12に記載のデジタルビデオコンテンツの再生を提供するための方法。
(項目20)
前記最小バッファ時間を低減させることはさらに、利用可能なデジタルビデオコンテンツを低減された速度で再生することによって、前記デジタルビデオコンテンツを減少させ、バッファを充填することを含む、項目12に記載のデジタルビデオコンテンツの再生を提供するための方法。
(項目21)
前記スローモーション再生速度因子は、再生のために消費される前記デジタルビデオコンテンツの量を変化させる、項目12に記載のデジタルビデオコンテンツの再生を提供するための方法。
(項目22)
前記スローモーション速度は、前記スローモーション再生速度因子に対応する、項目12に記載のデジタルビデオコンテンツの再生を提供するための方法。
【図面の簡単な説明】
【0030】
図1図1は、本発明のある実施形態による、適応ビットレートストリーミングシステムのネットワーク図を例証する図である。
図2図2は、本発明のある実施形態による、適応ビットレートストリーミングシステムの再生デバイスを例証する図である。
図3図3は、本発明のある実施形態による、適応ビットレートストリーミングシステムのサーバを例証する図である。
図4図4は、本発明のある実施形態による、適応バッファリングプロセスを例証するフローチャートである。
【発明を実施するための形態】
【0031】
(発明の詳細な開示)
ここで、図面に目を向けると、本発明の多くの実施形態による、ビデオコンテンツの再生の間にデジタルビデオコンテンツの適応バッファリングを提供するためのシステムおよび方法が、図示される。いくつかの実施形態では、最小量のメディアが、再生の中断の可能性を許容可能なレベルに低減させるために、ビデオの再生の開始に先立ってバッファ内に記憶されることが所望される。種々の実施形態では、この最小量のメディアをダウンロードするための時間量は、最小バッファ時間(MBT)と称されることができる。MBTは、DASH規格のメディア表現記述(MPD)データ構造内に記憶されることができる。いくつかの実施形態では、MBTは、マニフェスト内および/またはMPDデータ構造のインデックスファイル内に含有されることができる。多くの他の実施形態では、MBTは、MPDデータ構造によって指示されたファイル内に含有されることができる。DASH規格の使用は、例証にすぎず、最小バッファ時間(またはその均等物)が、メディアマニフェスト内ならびに/もしくは他のメディアファイルタイプ内の種々の場所に記憶されることができることが、容易に明白であるはずである。
【0032】
再生速度の変化(すなわち、スローモーションおよび/または早送り)は、概して、再生のために消費されるメディアの量を変化させる。スローモーション再生は、通常の速度での再生と比較して、所与の時間量内で消費されるメディアの量を低減させる。本発明のいくつかの実施形態では、再生速度を低減させることは、プレーヤがより少ないバッファされたメディアを伴い、かつ再生中の割込みの可能性を有意に増加させることなく再生を開始することを可能にすることができる。
【0033】
例証的実施例として、本発明のいくつかの実施形態によるメディアは、8秒のMBTを有する。このメディアは、概して、再生の開始に先立って、メディアの8秒をバッファするであろう。同一のメディアが、1/2の速度でのスローモーションにおいて再生される場合、同一のメディアは、概して、4秒の低減されたMBTに基づいて再生を開始することができる。代替として、同一のメディアが、1/4の速度でのスローモーションにおいて再生される場合、同一のメディアは、2秒の低減されたMBTに基づいて再生を開始することができる。加えて、メディアが、1/8のスローモーション速度で再生されるとき、同一のメディアは、1秒の低減されたMBTに基づいて再生を開始することができる。これらは、実施例にすぎず、異なるメディアもまた、異なる速度で再生されることができることが、当業者に容易に明白であるはずである。
【0034】
本発明のいくつかの実施形態による、トリックプレイモードの間、オーディオ再生を提供する、適応ビットレートストリーミングシステムにおいて使用するためのソースビデオのエンコーディングと、適応ビットレートストリーミングを使用するトリックプレイモードでのメディアコンテンツの再生とが、以下にさらに議論される。
【0035】
適応ストリーミングシステムアーキテクチャ
ここで、図1に目を向けると、本発明のある実施形態による、適応バッファリングを提供する再生デバイスを含む、適応ストリーミングシステムが、図示される。適応ストリーミングシステム10は、ソースメディアをいくつかの代替ストリームとしてエンコードするように構成される、ソースエンコーダ12を含む。図示される実施形態では、ソースエンコーダは、サーバである。他の実施形態では、ソースエンコーダは、プロセッサと、ソースメディア(限定ではないが、ビデオ、オーディオ、および/または字幕を含む)のトランスコーディングを実施するための十分なリソースとを含む、任意の処理デバイスであることができる。典型的には、ソースエンコーディングサーバ12は、ストリームおよび/またはメタデータ情報を含有する複数のコンテナファイルへのトップレベルインデックスを生成し、そのうちの少なくとも複数は、代替ストリームである。代替ストリームは、同一のメディアコンテンツを異なる方法でエンコードする、ストリームである。多くの事例では、代替ストリームは、異なる最大ビットレートでメディアコンテンツ(限定ではないが、ビデオコンテンツおよび/またはオーディオコンテンツ等)をエンコードする。いくつかの実施形態では、ビデオコンテンツの代替ストリームは、異なる解像度および/または異なるフレームレートでエンコードされる。トップレベルインデックスファイルおよびコンテナファイルは、HTTPサーバ14にアップロードされる。種々の再生デバイスは、次いで、HTTPまたは別の適切なステートレスプロトコルを使用して、インターネット等のネットワーク16を介して、トップレベルインデックスファイル、他のインデックスファイル、ならびに/もしくはコンテナファイルのポーションを要求することができる。
【0036】
図示される実施形態では、再生デバイスは、パーソナルコンピュータ18、CEプレーヤ、および携帯電話20を含む。他の実施形態では、再生デバイスは、消費者電子機器デバイス、例えば、DVDプレーヤ、Blu-ray(登録商標)プレーヤ、テレビ、セットトップボックス、ビデオゲームコンソール、タブレット、およびHTTPを介してサーバに接続し、エンコードされたメディアを再生することが可能である他のデバイスを含むことができる。具体的アーキテクチャが、図1に示されるが、適応ビットレートストリーミングではなく、従来のストリーミングを実施するシステムを含む、種々のアーキテクチャのいずれかが、再生デバイスが、本発明の実施形態に従って、トップレベルインデックスファイルおよびコンテナファイルのポーションを要求することを可能にするように利用されることができる。
【0037】
再生デバイス
本発明の実施形態による、方法を提供し、かつシステムを構成するためのいくつかのプロセスが、再生デバイスによって実行される。本発明の実施形態による、プロセスを実施することができる、再生デバイス内の関連コンポーネントが、図2に示される。当業者は、再生デバイスが、本発明の説明される実施形態から逸脱することなく、簡潔にするために省略される他のコンポーネントを含んでもよいことを認識するであろう。再生デバイス200は、プロセッサ205と、不揮発性メモリ210と、揮発性メモリ215とを含む。プロセッサ205は、揮発性215または不揮発性メモリ210内に記憶される命令を実施し、メモリ内に記憶されるデータを操作する、プロセッサ、マイクロプロセッサ、コントローラ、またはプロセッサ、マイクロプロセッサ、ならびに/もしくはコントローラの組み合わせである。不揮発性メモリ210は、本発明の実施形態によるプロセスを含むプロセスを実施するように再生デバイス200を構成するために利用されるプロセッサ命令および/または利用されているプロセスのためのデータを記憶することができる。いくつかの実施形態によると、これらの命令は、再生デバイス上でメディアコンテンツの再生を実施する、再生アプリケーション内に含まれる。種々の実施形態によると、再生デバイスソフトウェアおよび/またはファームウェアは、具体的用途に適切な種々の非一過性コンピュータ可読媒体のいずれかに記憶され得る。
【0038】
サーバ
本発明の異なる実施形態による、適応ストリーミングシステム内で実施される種々のプロセスが、HTTPサーバ、ソースエンコードサーバ、および/またはローカルならびにネットワーク時間サーバによって実行される。本発明の実施形態による、これらのプロセスのうちの1つ以上を実施する、サーバ内の関連コンポーネントが、図3に示される。当業者は、サーバが、本発明の説明される実施形態から逸脱することなく、簡潔にするために省略される他のコンポーネントを含んでもよいことを認識するであろう。サーバ300は、プロセッサ305と、不揮発性メモリ310と、揮発性メモリ315とを含む。プロセッサ305は、揮発性315または不揮発性メモリ310内に記憶された命令を実施し、メモリ内に記憶されるデータを操作する、プロセッサ、マイクロプロセッサ、コントローラ、もしくはプロセッサ、マイクロプロセッサ、および/またはコントローラの組み合わせである。不揮発性メモリ310は、本発明の実施形態による、プロセスを含むプロセスを実施するようにサーバ300を構成するために利用されるプロセッサ命令および/または利用されているプロセスのためのデータを記憶することができる。いくつかの実施形態によると、メディアコンテンツのエンコーディングを実施するための命令は、エンコーディングアプリケーションの一部である。種々の実施形態では、サーバソフトウェアおよび/またはファームウェアは、具体的用途に適切な種々の非一過性コンピュータ可読媒体のいずれかに記憶されることができる。具体的サーバが、図3に図示されるが、任意の数のプロセスを実施するように構成される、種々のサーバのいずれも、本発明の実施形態に従って利用されることができる。本発明の多くの実施形態による、適応バッファリングプロセスが、下記に説明される。
【0039】
適応バッファリングプロセス
本発明の種々の実施形態による、適応バッファリングのためのプロセスが、図4に図示される。プロセス400は、デジタルビデオコンテンツから最小バッファ時間を受信することを含む(402)。デジタルビデオコンテンツは、(限定ではないが)DASH規格、MPEG-4、および/またはMatroskaコンテナを含む種々の形式のいずれかにエンコードされ、記憶されることができる。再生デバイスは、次いで、デジタルビデオコンテンツのダウンロードを開始することができる(404)。
【0040】
最小バッファ時間は、スローモーション再生速度因子の関数として、低減される(406)。多くの実施形態では、スローモーション再生速度因子の関数は、再生のために消費されるメディアの量を変化させることができる。種々の実施形態では、再生速度が遅いほど、最小バッファ時間の低減が、より大きくなる。例証的実施例として、本発明のいくつかの実施形態によるメディアは、8秒のMBTを有する。このメディアは、概して、再生の開始に先立って、メディアの8秒をバッファするであろう。同一のメディアが、1/2の速度でのスローモーションにおいて再生される場合、同一のメディアは、概して、4秒の低減されたMBTに基づいて再生を開始することができる。代替として、同一のメディアが、1/4の速度でのスローモーションにおいて再生される場合、同一のメディアは、概して、2秒の低減されたMBTに基づいて再生を開始することができる。加えて、メディアが、1/8のスローモーション速度で再生されるとき、同一のメディアは、概して、1秒の低減されたMBTに基づいて再生を開始することができる。これらは、実施例にすぎず、異なるメディアもまた、異なる速度で再生されることができることが、当業者に容易に明白であるはずである。
【0041】
デジタルビデオコンテンツは、スローモーションで再生し始まる(408)。多くの実施形態では、デジタルビデオコンテンツは、MBTバッファが満杯になると、再生し始まる。いくつかの他の実施形態では、MBTバッファが満杯になる前に、再生が、始まる。例証的実施例として、再生は、利用可能な帯域幅がデジタルビデオコンテンツのビットレートより大幅に高いとき、MBTバッファが75%満杯になると、始まり得る。これは、実施例にすぎず、デジタルビデオコンテンツの再生が、(限定ではないが)帯域幅、ビットレート、MBTバッファサイズ、再生速度因子、および/またはシステムハードウェア要件を含む、システム内の種々の因子に依存し得ることが、当業者に容易に明白であるはずである。
【0042】
スローモーションデジタルビデオコンテンツは、低減された最小バッファ時間が到達されるまで、再生し続ける(410)。デジタルビデオコンテンツを適応的にバッファリングするための種々のプロセスが、図4に関して上記に説明されるが、最小バッファ時間を低減させることが可能である種々のプロセスのいずれかが、本発明の種々の実施形態による、具体的な用途の要件に適切なものとして利用されることができる。
【0043】
本発明のいくつかの実施形態では、スローモーション再生速度および/または音声再生は、MBTが増加するにつれて、増加(もしくは漸増)し得る。本発明の多くの実施形態では、再生速度および/または音声再生は、再生速度ならびに/もしくは音声再生が、MBTが到達されたとき、最高速度になるであろうように、MBTが増加するにつれて、漸増し得る。
【0044】
本発明の他の実施形態では、プロセスは、バッファが閾値を下回り、バッファが回復し得るまで再生速度および/または音声再生を徐々に低減させるときを検出することができる。これは、(再生し、次いで、停止するビデオおよび/または音声ストリームと対照的な)再生における段階的な悪化を伴うビデオストリームならびに/もしくは音声ストリームの再生における停止を遅延させるように試み得る。概して、これは、より低いビットレートおよび/またはより低い品質のビデオストリームへの下方切替を遅らせる状況の中で生じ得る。代替として、ビデオおよび/または音声ストリームが、最も低い品質ストリームの状態である場合、再生は、より良好な帯域幅が達成され得るまで、速度を落とすことができる。一般的に、本発明の実施形態は、本発明の種々の実施形態に従って、再生を停止させるのではなく、スローモーション再生を通して、ストリーム配信の停止を可能な限り長く遅延させ、徐々に悪化させることができる。
【0045】
本発明は、ある具体的側面において説明されたが、多くの付加的修正および変形例が、当業者に明白となるであろう。したがって、本発明は、本発明の範囲および精神から逸脱することなく、それらが準拠する特定の規格内に規定されるもの以外の特徴をサポートする、エンコーダならびにデコーダの利用等、実装の種々の変更を含め、具体的に説明される以外にも実践されてもよいことを理解されたい。したがって、本発明の実施形態は、あらゆる点において、制限的ではなく、例証的と見なされるべきである。
図1
図2
図3
図4