JP5961850B2 - ジャストインタイムの分散型ビデオキャッシュ - Google Patents
ジャストインタイムの分散型ビデオキャッシュ Download PDFInfo
- Publication number
- JP5961850B2 JP5961850B2 JP2015523261A JP2015523261A JP5961850B2 JP 5961850 B2 JP5961850 B2 JP 5961850B2 JP 2015523261 A JP2015523261 A JP 2015523261A JP 2015523261 A JP2015523261 A JP 2015523261A JP 5961850 B2 JP5961850 B2 JP 5961850B2
- Authority
- JP
- Japan
- Prior art keywords
- video
- source
- optimized
- key
- source file
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims description 56
- 238000005457 optimization Methods 0.000 claims description 56
- 230000004044 response Effects 0.000 claims description 54
- 238000006243 chemical reaction Methods 0.000 claims description 35
- 238000009826 distribution Methods 0.000 claims description 24
- 238000003860 storage Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims 2
- 238000013479 data entry Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 30
- 238000012545 processing Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 14
- 230000015654 memory Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 230000000977 initiatory effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1059—End-user terminal functionalities specially adapted for real-time communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/756—Media network packet handling adapting media to device capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2183—Cache memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23103—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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
- H04N21/23439—Processing 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 for generating different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
- H04N21/2396—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests characterized by admission policies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26613—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/647—Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
- H04N21/64784—Data processing by the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/18—Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
[背景]
[0012]ネットワーク提供者やメディアの提供元は、ビデオなどのソースファイルをモバイル機器にストリーミングする際の品質を向上させるための方法としてローカルキャッシュを使用することがある。ソースファイルが例えばビデオ最適化器によって変換及び最適化されると、ファイルはローカルキャッシュに保存することができる。ローカルでキャッシュすることにより、ビデオ最適化器は、変換されたソースファイル(又は最適化されたバージョンのソースファイル)を短期間記憶しておき、変換のためにソースファイルを再度取り出す必要なく、ユーザの要求(例えばビデオの再生やビデオのタイムラインにおけるスキップ)に応えることができる。したがって、ローカルキャッシュ構成を用いると、1回のセッション中に特定のユーザのために特定のファイルを繰り返し取り出して変換せずに済む。
[0021]次いで図1を参照すると、最適化されたビデオキャッシュのための例示的な通信環境100の高レベルブロック図が示される。環境100は、ユーザ機器110A及び110B(まとめてユーザ機器110と呼ぶ)、配信元サーバ170、経路選定装置130、ネットワークコントローラ140、ビデオ最適化器150、キャッシュデータベース160、並びにネットワーク120を含む。ネットワーク120は、ユーザ機器110、経路選定装置130、配信元サーバ170と、及び/又はビデオ最適化器150の間でデータを伝送する通信ネットワークである。一実施形態では、ネットワーク120は、ワイヤレスネットワーク及びインターネットを含む。
[0040]次いで図2を参照すると、ブロック図で例示的マシンの構成要素を示し、このマシンは、機械読み取り可能な媒体から命令を読出し、それをプロセッサ(又はコントローラ)で実行して、オンデマンドでリアルタイムにネットワークを監視し利用者を識別する本開示のシステムを実施することができる。具体的には、図2は、コンピュータシステム200の例示的形態をとるマシンの概略表現であり、コンピュータシステム200内では、マシンに本明細書に記載される方法論の1つ又は複数を行わせる命令224(例えばソフトウェア)を実行することができる。代替実施形態では、マシンは、独立した装置として動作するか、又は他のマシンに接続される(例えばネットワーク化する)ことができる。ネットワーク化された構成では、マシンは、サーバ/クライアント型のネットワーク環境ではサーバマシン若しくはクライアントマシンの能力内で動作するか、又はピアツーピア(又は分散)のネットワーク環境ではピアマシンとして動作することができる。
[0045]図3A〜3Dは、ユーザ機器に最適化されたビデオを提供するための例示的なイベント図を示す。図3Aは、具体的には、ソースファイル要求とその後に行われるデータベース照会の例を示す。図3B〜3Dは、ビデオ最適化器がデータベースからの種々の応答にどのように反応するかの各種実施形態を示す。ある実施形態ではビデオ最適化器は単にビデオ自体を変換し、他の実施形態では、ビデオ最適化器は要求を他のビデオ最適化器にリダイレクトしなければならない場合がある。図には、ユーザ機器110、ネットワークコントローラ140、ビデオ最適化器150、キャッシュデータベース160、及び配信元サーバ170が示される。経路選定装置(図3A〜3Dには示さない)が、ネットワーク120を介してこれらエンティティの1つ又は複数の間のトラフィックの流れを管理することができる。図3C及び図3Dでは、2つのビデオ最適化器150A及び150Bが存在する。これらのビデオ最適化器は互いと無関係に動作することができるが、共有ローカルキャッシュ155に記憶された最適化されたソースファイルを共有することもできる。
[0060]最適化されたビデオキャッシュの別の可能性はビデオプレビューのキャッシュである。完全な長さの最適化されたバージョンのソースファイルを多数ビデオ最適化器150にローカルにキャッシュするのではなく、さらに多くの数の部分的な長さの最適化されたバージョンを記憶することができる。したがって、各ビデオ最適化器150は、変換処理を開始する必要なしに、又は別の最適化器から最適化されたバージョンをストリーミングする必要なしに、多数の要求の処理を直接開始することができる。例えば、ビデオ最適化器150がユーザ機器110から要求される最適化されたバージョンのソースファイルのうち1分間の部分を記憶している場合、ストリームの滑らかな配信のために変換処理又はストリーミング処理を行う必要が生じる前にユーザがビデオを破棄する(例えば最初の30秒間以内に)と、それ以上の処理は必要なくなる。したがって、冒頭の数セグメントより先を視聴するユーザは多くないため、プレビューのキャッシュで最適化されたバージョンの最初の30〜60秒を記憶することにより、ネットワークで使用される要求及び帯域幅を減らすことができる。したがって、ユーザが視聴しないことが多いソースファイルのセグメントの変換及び記憶に追加的なプロセッサ帯域幅を費やす代わりに、ビデオ最適化器150は、短い最適化済みのビデオプレビューを作成することによって自身のコンテンツをより効率的に管理することができる。最適化されたビデオを短くすることにより、ビデオ最適化器150の同じ限られた記憶キャッシュでも、最適化されたバージョンのソースファイルをより多く記憶することができる。人気のあるファイルは、完全な長さの最適化されたバージョンとして記憶されることが可能であるが、ユーザの動向に追従してより頻繁に消去及び更新される。
[0065]図4は、キャッシュされたヘッダを使用した予測符号化の一実施形態の流れ図を示す。一実施形態では、図4に示す処理は、ヘッダを備えるソースファイルに対してビデオ最適化器150によって行われる。例えば、ヘッダは、MP4ファイル、AVIファイル、MPEGファイル、MOVファイル、MKVファイル、OGMファイル、及びその他の種類の媒体ファイルに生成することができる。説明を分かりやすくするために、以下の説明ではMP4のソースファイル及びヘッダを参照するが、他の種類の媒体ファイルも該当する可能性がある。MP4ソースファイルの最適化されたバージョンが生成される時に、元のソースファイル及び/又は元のソースファイルヘッダに基づいて、変換処理の開始前に予測ヘッダが作成される。予測ヘッダは、メディアプレーヤが最適化されたバージョンのソースファイルを認識して再生できるように、ソースファイルに関連する基本的な情報を含む。例えば、予測ヘッダは、送信元のプロファイル、フレーム/サンプルレート、フレームの種別、出力サンプルのサイズ、各出力フレームのサイズ、使用される符号化、圧縮率等の情報を含むことができる。予測ヘッダは、リアルタイムでストリーミングできるようにソースファイルが完全に変換される前に作成されるので、ビデオ最適化器150はヘッダに挿入する情報を予測しなければならない。その結果、ヘッダが含む、変換された媒体のフレームを変換するために必要な媒体コンテナの大きさの見積もりが大きく、又は小さくなり過ぎる場合がある。フレームサイズの過大な見積もりを補償するには、ビデオ最適化器150は、フレームを再度変換してその品質としたがってサイズを減らさなければならず、その結果、最適化されたバージョンのソースファイルに歪みが生じ、追加的な処理時間が必要となる可能性がある。フレームサイズの過小な見積もりを補償するには、事前に指定されたサイズに合わせるために冗長なビット又はデータをフレームに追加してフレームを埋める場合がある。そのため、ソースファイルの最適化されたバージョンは、過度に最適化されたフレームを含む可能性がある。
[0072]ここに開示される構成は、キャッシュデータベースを導入することにより、最適化器でソースファイルを再度変換する必要なしに、最適化されたソースファイルを迅速に取得し、ユーザ機器にストリーミングすることを可能にするという利点を有する。従来のシステムでは、ソースファイルは全く最適化せずにユーザ機器にストリーミングされるか(その場合は限られたネットワーク帯域幅の使用が非効率になる)、又は、ユーザがソースファイルを要求するたびにソースファイルが最適化される(その場合は各最適化器の処理能力の使用が非効率になる)かのどちらかである。最適化器はしばしば互いに独立しており、互いと無関係に動作するので、キャッシュデータベースの導入により、どのローカルキャッシュが特定の最適化されたソースファイルを保持しているかを判定するための中央の管理用の一覧が可能になる。したがって、最適化されたソースファイルをより迅速にユーザに提供することができ、再度変換する必要がない。
Claims (13)
- 最適化されたビデオキャッシングの方法であって、
複数のビデオ最適化サーバに記憶された一つまたは複数のソースファイルの複数の最適化されたバージョンに対応する複数の参照キーを含むキャッシュデータベースをビデオ最適化器によって保持するステップであり、各参照キーは、前記ソースファイルの前記最適化されたバージョンのパラメータを指定すると共に前記ソースファイルの識別子と前記ソースファイルの前記最適化されたバージョンを記憶するビデオ最適化サーバの識別子とを含む、ステップと、
前記ビデオ最適化器で前記ソースファイルを最適化する要求をクライアント機器から受信するステップであり、前記ソースファイルは配信元サーバに記憶されており、前記要求は、前記ソースファイルを最適化するためのパラメータを指定するキーと前記ソースファイルの識別子とを含む、ステップと、
前記キャッシュデータベースに対する照会を前記キーに基づいて生成するステップと、
前記キャッシュデータベースから、前記キーが前記データベースに保持されている参照キーと一致するかどうかを示す応答を受信するステップと、
前記キーが前記参照キーと一致することを示す前記キャッシュデータベースの応答に応答して、前記クライアント機器に前記ソースファイルの前記最適化されたバージョンを要求させるために、前記キーと前記参照キーによって指定された前記ビデオ最適化サーバのアドレスとを含むリダイレクト要求を前記クライアント機器へ送信するステップと、
を含む方法。 - 前記キーが前記参照キーと一致することを示す前記キャッシュデータベースの応答に応答して、
前記参照キーによって指定された前記ビデオ最適化サーバに、前記ビデオ最適化サーバに記憶されている前記ソースファイルの前記最適化されたバージョンの要求を送信するステップをさらに含む請求項1に記載の方法。 - 受信した前記ソースファイルの前記最適化されたバージョンの一部を記憶するステップをさらに含む請求項2に記載の方法。
- 前記参照キーによって指定された前記ビデオ最適化サーバに記憶されている前記ソースファイルの前記最適化されたバージョンの前記要求と共に、前記ビデオ最適化サーバに記憶されている前記最適化された前記ソースファイルを前記ビデオ最適化器で複製する要求を送信するステップと、
前記ビデオ最適化器に記憶されている前記ソースファイルの前記最適化されたバージョンを記憶するのに応答して、前記キャッシュデータベースを更新する命令を前記キャッシュデータベースに送信するステップと、
をさらに含む請求項2に記載の方法。 - 前記キーは、送信元署名を含み、前記送信元署名は、前記ソースファイルの一部分のハッシュである請求項1に記載の方法。
- 前記キャッシュデータベースは、前記ソースファイルの前記最適化されたバージョンを記憶している複数の最適化サーバを識別するデータエントリを含み、前記エントリは、前記キャッシュデータベースに送信される命令を通じて変更されて、前記ソースファイルの前記最適化されたバージョンが記憶されている場所を更新する請求項1に記載の方法。
- 記憶されている前記ソースファイルの前記最適化されたバージョンは、生成された最適化された前記ソースファイル全体のうち所定のセグメントを含む請求項1に記載の方法。
- 前記キーが、前記ソースファイルの前記最適化されたバージョンのどの参照キーとも一致しないことを示す前記キャッシュデータベースの応答に応答して、
前記ソースファイルの要求を前記配信元サーバに送信するステップと、
前記配信元サーバから前記ソースファイルをストリーミングするステップと、
所定の変換設定に基づいてストリームを変換し、前記ソースファイルの前記最適化されたバージョンを記憶することにより、前記ソースファイルの前記最適化されたバージョンを生成するステップと、
前記ソースファイルの前記最適化されたバージョンを前記クライアント機器で再生するためにストリーミングするステップと、
前記最適化サーバに記憶された前記最適化された前記ソースファイルに対応する参照キーで前記キャッシュデータベースを更新する命令を前記キャッシュデータベースに送信するステップと、
をさらに含む請求項1に記載の方法。 - 前記キーに含まれる前記ソースファイルの前記識別子が前記参照キーに含まれる前記ソースファイルの前記識別子と一致し、前記キーによって指定された最適化パラメータが前記ソースファイルの前記最適化されたバージョンの前記パラメータと一致するのに応答して、前記キーが前記参照キーと一致する、請求項1に記載の方法。
- 最適化されたビデオキャッシングのシステムであって、
プロセッサと、
実行可能コンピュータプログラム命令を記憶した非一時的なコンピュータ読み取り可能記憶媒体と、
を備え、
前記コンピュータプログラム命令は、実行されると前記プロセッサに、
複数のビデオ最適化サーバに記憶された一つまたは複数のソースファイルの複数の最適化されたバージョンに対応する複数の参照キーを含むキャッシュデータベースをビデオ最適化器によって保持させ、各参照キーは、前記ソースファイルの前記最適化されたバージョンのパラメータを指定すると共に前記ソースファイルの識別子と前記ソースファイルの前記最適化されたバージョンを記憶するビデオ最適化サーバの識別子とを含み、
前記ソースファイルを最適化する要求をクライアント機器から受信させ、前記ソースファイルは配信元サーバに記憶されており、前記要求は、前記ソースファイルを最適化するためのパラメータを指定するキーと前記ソースファイルの識別子とを含み、
前記キャッシュデータベースに対する照会を前記キーに基づいて生成させ、
前記キャッシュデータベースから、前記キーが前記データベースに保持されている参照キーと一致するかどうかを示す応答を受信させ、
前記キーが前記参照キーと一致することを示す前記キャッシュデータベースの応答に応答して、前記クライアント機器に前記ソースファイルの前記最適化されたバージョンを要求させるために、前記キーと前記参照キーによって指定された前記ビデオ最適化サーバのアドレスとを含むリダイレクト要求を前記クライアント機器へ送信させる、
システム。 - 前記キーが前記参照キーと一致することを示す前記キャッシュデータベースの応答に応答して、前記プロセッサに、
前記参照キーによって指定された前記ビデオ最適化サーバに、前記ビデオ最適化サーバに記憶されている前記ソースファイルの前記最適化されたバージョンの要求を送信させる命令をさらに含む請求項10に記載のシステム。 - 前記キーが、前記ソースファイルの前記最適化されたバージョンのどの参照キーとも一致しないことを示す前記キャッシュデータベースの応答に応答して、前記プロセッサに、
前記ソースファイルの要求を前記配信元サーバに送信させ、
前記配信元サーバから前記ソースファイルをストリーミングさせ、
所定の変換設定に基づいてストリームを変換し、前記ソースファイルの前記最適化されたバージョンを記憶することにより、前記ソースファイルの前記最適化されたバージョンを生成させ、
前記ソースファイルの前記最適化されたバージョンを前記クライアント機器で再生するためにストリーミングさせ、
前記最適化サーバに記憶された前記最適化された前記ソースファイルに対応する参照キーで前記キャッシュデータベースを更新する命令を前記キャッシュデータベースに送信させる、
命令をさらに含む請求項10に記載のシステム。 - 前記キーに含まれる前記ソースファイルの前記識別子が前記参照キーに含まれる前記ソースファイルの前記識別子と一致し、前記キーによって指定された最適化パラメータが前記ソースファイルの前記最適化されたバージョンの前記パラメータと一致するのに応答して、前記キーが前記参照キーと一致する、請求項10に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261673188P | 2012-07-18 | 2012-07-18 | |
US61/673,188 | 2012-07-18 | ||
PCT/US2013/051126 WO2014015168A2 (en) | 2012-07-18 | 2013-07-18 | Just-in-time distributed video cache |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2015530781A JP2015530781A (ja) | 2015-10-15 |
JP2015530781A5 JP2015530781A5 (ja) | 2015-12-10 |
JP5961850B2 true JP5961850B2 (ja) | 2016-08-02 |
Family
ID=49947523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015523261A Active JP5961850B2 (ja) | 2012-07-18 | 2013-07-18 | ジャストインタイムの分散型ビデオキャッシュ |
Country Status (6)
Country | Link |
---|---|
US (3) | US9154361B2 (ja) |
EP (1) | EP2875635B1 (ja) |
JP (1) | JP5961850B2 (ja) |
KR (1) | KR101629338B1 (ja) |
CN (1) | CN104604240B (ja) |
WO (1) | WO2014015168A2 (ja) |
Families Citing this family (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9819984B1 (en) | 2007-03-26 | 2017-11-14 | CSC Holdings, LLC | Digital video recording with remote storage |
US9094714B2 (en) | 2009-05-29 | 2015-07-28 | Cognitive Networks, Inc. | Systems and methods for on-screen graphics detection |
EP2706467A1 (en) * | 2012-09-05 | 2014-03-12 | Awingu Nv | Method for accessing a content item in a cloud storage system, and a corresponding cloud broker, cloud cache agent and client application |
WO2014037487A1 (en) * | 2012-09-07 | 2014-03-13 | Nokia Siemens Networks Oy | Mechanism and apparatus to perform cooperative resource management in wireless networks |
US8782285B1 (en) * | 2013-12-06 | 2014-07-15 | Limelight Networks, Inc. | Lazy transcoding and re-transcoding of media objects in an online video platform |
US20140115056A1 (en) * | 2012-10-22 | 2014-04-24 | Apple Inc. | Book thinning |
US8813245B1 (en) | 2013-01-25 | 2014-08-19 | Amazon Technologies, Inc. | Securing content using pipelines |
US9183049B1 (en) * | 2013-01-25 | 2015-11-10 | Amazon Technologies, Inc. | Processing content using pipelines |
US9219784B2 (en) | 2013-03-07 | 2015-12-22 | International Business Machines Corporation | Synchronization of a server side deduplication cache with a client side deduplication cache |
US9674255B1 (en) * | 2014-03-26 | 2017-06-06 | Amazon Technologies, Inc. | Systems, devices and methods for presenting content |
US9800904B2 (en) * | 2014-05-13 | 2017-10-24 | Piksel, Inc. | Media asset duplication |
US9525893B2 (en) * | 2014-05-28 | 2016-12-20 | Verizon Patent And Licensing Inc. | Methods and systems for managing storage of media program copies within a network digital video recording system |
CN104159249B (zh) * | 2014-07-30 | 2018-05-18 | 华为技术有限公司 | 一种业务数据管理的方法、装置及*** |
JP6331967B2 (ja) * | 2014-10-27 | 2018-05-30 | ソニー株式会社 | 通信装置および通信方法 |
US9936040B2 (en) | 2014-12-19 | 2018-04-03 | Citrix Systems, Inc. | Systems and methods for partial video caching |
US10165033B2 (en) * | 2014-12-30 | 2018-12-25 | Sling Media LLC | Live encoding for distribution of long tail media content |
US20160226790A1 (en) * | 2015-01-30 | 2016-08-04 | Comcast Cable Communications, Llc | Provisioning and managing resources |
CA2973740C (en) | 2015-01-30 | 2021-06-08 | Inscape Data, Inc. | Methods for identifying video segments and displaying option to view from an alternative source and/or on an alternative device |
US20160283436A1 (en) * | 2015-03-23 | 2016-09-29 | Comcast Cable Communications, Llc | Distributed microcaching for content delivery |
KR101668957B1 (ko) * | 2015-07-09 | 2016-10-24 | 라인 가부시키가이샤 | 통신 비용의 절감을 위한 컨텐츠 스트리밍 서비스 방법 및 시스템 |
BR112018000801A2 (pt) | 2015-07-16 | 2018-09-04 | Inscape Data Inc | sistema, e método |
US10080062B2 (en) | 2015-07-16 | 2018-09-18 | Inscape Data, Inc. | Optimizing media fingerprint retention to improve system resource utilization |
EP3323054A1 (en) * | 2015-07-16 | 2018-05-23 | Inscape Data, Inc. | Prediction of future views of video segments to optimize system resource utilization |
CA2992319C (en) | 2015-07-16 | 2023-11-21 | Inscape Data, Inc. | Detection of common media segments |
CN106612456A (zh) * | 2015-10-26 | 2017-05-03 | 中兴通讯股份有限公司 | 网络视频播放方法和***及用户终端、家庭流服务节点 |
US10462520B2 (en) * | 2016-02-25 | 2019-10-29 | Nippon Telegraph And Telephone Corporation | Pacing control device, pacing control method, and program |
JP6483044B2 (ja) * | 2016-03-17 | 2019-03-13 | Kddi株式会社 | 保持しているオブジェクトの変換を行う転送装置及びプログラム |
US10225309B1 (en) | 2016-03-22 | 2019-03-05 | Amazon Technologies, Inc. | Monitoring of media pipeline health using tracing |
US10200428B1 (en) | 2016-03-30 | 2019-02-05 | Amazon Technologies, Inc. | Unicast routing of a media stream to subscribers |
CN108243116B (zh) * | 2016-12-23 | 2021-09-14 | 华为技术有限公司 | 一种流量控制方法及交换设备 |
US10904329B1 (en) | 2016-12-30 | 2021-01-26 | CSC Holdings, LLC | Virtualized transcoder |
EP3410728A1 (en) * | 2017-05-30 | 2018-12-05 | Vestel Elektronik Sanayi ve Ticaret A.S. | Methods and apparatus for streaming data |
US10742736B2 (en) | 2017-12-19 | 2020-08-11 | Western Digital Technologies, Inc. | Integrated erasure coding for data storage and transmission |
US10649980B2 (en) * | 2018-03-07 | 2020-05-12 | Xanadu Big Data, Llc | Methods and systems for resilient, durable, scalable, and consistent distributed timeline data store |
US20190394512A1 (en) * | 2018-06-25 | 2019-12-26 | Verizon Digital Media Services Inc. | Low Latency Video Streaming Via a Distributed Key-Value Store |
US11695978B2 (en) | 2018-07-05 | 2023-07-04 | Mux, Inc. | Methods for generating video-and audience-specific encoding ladders with audio and video just-in-time transcoding |
US11653040B2 (en) * | 2018-07-05 | 2023-05-16 | Mux, Inc. | Method for audio and video just-in-time transcoding |
EP3797518A1 (en) * | 2018-08-21 | 2021-03-31 | Rovi Guides, Inc. | Systems and methods for real-time adaptive bitrate transcoding and transmission of transcoded media |
CN109639813B (zh) * | 2018-12-24 | 2022-04-12 | 北京京东尚科信息技术有限公司 | 视频文件传输处理方法及装置、电子设备和存储介质 |
US10972761B2 (en) | 2018-12-26 | 2021-04-06 | Purdue Research Foundation | Minimizing stall duration tail probability in over-the-top streaming systems |
US10803480B2 (en) | 2019-01-07 | 2020-10-13 | Alphonso Inc. | Bidding agent with optimized reach limitation |
US11151609B2 (en) | 2019-01-07 | 2021-10-19 | Alphonso Inc. | Closed loop attribution |
US10873785B2 (en) * | 2019-01-07 | 2020-12-22 | Alphonso Inc. | Content recommendation system and method-based implicit ratings |
US11037205B2 (en) | 2019-01-07 | 2021-06-15 | Alphonso Inc. | Bidding agent using ad opportunity source to limit ad reach |
CN109889919A (zh) * | 2019-03-27 | 2019-06-14 | 深圳市网心科技有限公司 | 一种视频转码方法、装置、***及介质 |
US11527266B2 (en) * | 2019-04-04 | 2022-12-13 | Wowza Media Systems, LLC | Artificial intelligence analysis of multimedia content |
CN110099293B (zh) * | 2019-04-30 | 2021-06-01 | 广州酷狗计算机科技有限公司 | 播放视频的方法、装置、设备及可读存储介质 |
US11133037B1 (en) | 2020-07-17 | 2021-09-28 | Idomoo Ltd | System and method for generating dynamic media |
CN112203031B (zh) * | 2020-08-12 | 2023-06-02 | 深圳市豪恩汽车电子装备股份有限公司 | 数字视频缓存***及方法 |
CN112770132B (zh) * | 2021-01-05 | 2023-01-24 | 北京东方网信科技股份有限公司 | 一种代理缓存中降低mp4视频出口流量的方法及*** |
US11284165B1 (en) | 2021-02-26 | 2022-03-22 | CSC Holdings, LLC | Copyright compliant trick playback modes in a service provider network |
US20220321623A1 (en) * | 2021-04-05 | 2022-10-06 | Ademco Inc. | Establishing a producer / consumer session in the cloud |
US11650957B2 (en) * | 2021-06-01 | 2023-05-16 | International Business Machines Corporation | Receiving at a cache node notification of changes to files in a source file system served from a cache file system at the cache node |
US11645238B2 (en) | 2021-06-01 | 2023-05-09 | International Business Machines Corporation | Notifying a cache file system of changes to files in a source file system served from the cache file system |
US11848990B2 (en) * | 2021-10-15 | 2023-12-19 | Siden, Inc. | Method and system for distributing and storing content using local clouds and network clouds |
US12003559B1 (en) * | 2023-05-15 | 2024-06-04 | Netflix, Inc. | Techniques for delivering current media content via content delivery networks |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE512880C2 (sv) * | 1998-07-03 | 2000-05-29 | Ericsson Telefon Ab L M | Ett cacheservernät |
US7028096B1 (en) * | 1999-09-14 | 2006-04-11 | Streaming21, Inc. | Method and apparatus for caching for streaming data |
US7636792B1 (en) * | 2001-07-13 | 2009-12-22 | Oracle International Corporation | Methods and systems for dynamic and automatic content creation for mobile devices |
US6954456B2 (en) * | 2001-12-14 | 2005-10-11 | At & T Corp. | Method for content-aware redirection and content renaming |
US8484282B2 (en) * | 2002-03-21 | 2013-07-09 | International Business Machines Corporation | High-speed content transformation engine |
US20030204602A1 (en) * | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
US20040098463A1 (en) * | 2002-11-19 | 2004-05-20 | Bo Shen | Transcoding-enabled caching proxy and method thereof |
US7188216B1 (en) * | 2002-12-13 | 2007-03-06 | Vignette Corporation | Method and system for an extensible caching framework |
US20070174471A1 (en) * | 2003-04-30 | 2007-07-26 | Cedric Van Rossum | Secure, continous, proxy-optimized, device-to-device data download reception system and method of use |
US20050165941A1 (en) * | 2004-01-22 | 2005-07-28 | Edward Eytchison | Methods and apparatuses for streaming content |
US20060190616A1 (en) * | 2005-02-04 | 2006-08-24 | John Mayerhofer | System and method for aggregating, delivering and sharing audio content |
FR2884671B1 (fr) * | 2005-04-19 | 2007-07-27 | Streamezzo Sa | Procede d'optimisation de la gestion d'un cache de serveur pouvant etre consulte par des terminaux clients de caracteristiques differentes |
US8181107B2 (en) * | 2006-12-08 | 2012-05-15 | Bytemobile, Inc. | Content adaptation |
WO2008098249A1 (en) * | 2007-02-09 | 2008-08-14 | Dilithium Networks Pty Ltd. | Method and apparatus for the adaptation of multimedia content in telecommunications networks |
US20100281042A1 (en) * | 2007-02-09 | 2010-11-04 | Novarra, Inc. | Method and System for Transforming and Delivering Video File Content for Mobile Devices |
US7962640B2 (en) * | 2007-06-29 | 2011-06-14 | The Chinese University Of Hong Kong | Systems and methods for universal real-time media transcoding |
US7818355B2 (en) * | 2007-11-07 | 2010-10-19 | Mills Brendon W | System and method for managing content |
US8145779B2 (en) * | 2008-04-08 | 2012-03-27 | Microsoft Corporation | Dynamic server-side media transcoding |
US8290036B2 (en) * | 2008-06-11 | 2012-10-16 | Optibase Technologies Ltd. | Method, apparatus and system for concurrent processing of multiple video streams |
US8706910B2 (en) * | 2008-10-28 | 2014-04-22 | Panzura, Inc. | Dynamically adaptive network-based data processing system and method |
JP2010273298A (ja) * | 2009-05-25 | 2010-12-02 | Broad Earth Inc | コンテンツ配信システム、配信制御装置及び配信制御プログラム |
CN102055964A (zh) * | 2009-11-11 | 2011-05-11 | 腾讯科技(深圳)有限公司 | 一种多媒体文件转码方法和转码器 |
US8516074B2 (en) * | 2009-12-01 | 2013-08-20 | Vantrix Corporation | System and methods for efficient media delivery using cache |
WO2011106009A1 (en) | 2010-02-26 | 2011-09-01 | Mobovivo, Inc. | Intelligent optimization of video encoding during video content delivery |
US9386116B2 (en) | 2010-05-13 | 2016-07-05 | Futurewei Technologies, Inc. | System, apparatus for content delivery for internet traffic and methods thereof |
WO2012016226A1 (en) * | 2010-07-30 | 2012-02-02 | Bytemobile, Inc. | Systems and methods for video cache indexing |
US8458362B2 (en) * | 2010-09-30 | 2013-06-04 | Comcast Cable Communications, Llc | Delivering content in multiple formats |
WO2012068489A1 (en) | 2010-11-18 | 2012-05-24 | Skyfire Labs, Inc. | Client-selected network services |
US9418353B2 (en) * | 2010-12-20 | 2016-08-16 | Akamai Technologies, Inc. | Methods and systems for delivering content to differentiated client devices |
US8639718B2 (en) * | 2011-12-02 | 2014-01-28 | Cisco Technology, Inc. | Systems and methods for client transparent video readdressing |
-
2013
- 2013-07-18 WO PCT/US2013/051126 patent/WO2014015168A2/en active Application Filing
- 2013-07-18 KR KR1020157004371A patent/KR101629338B1/ko active IP Right Grant
- 2013-07-18 CN CN201380046871.0A patent/CN104604240B/zh active Active
- 2013-07-18 EP EP13819265.3A patent/EP2875635B1/en active Active
- 2013-07-18 US US13/945,747 patent/US9154361B2/en active Active
- 2013-07-18 JP JP2015523261A patent/JP5961850B2/ja active Active
-
2015
- 2015-09-04 US US14/846,647 patent/US9800633B2/en active Active
-
2017
- 2017-09-15 US US15/706,664 patent/US10484442B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP2875635B1 (en) | 2019-09-04 |
US9800633B2 (en) | 2017-10-24 |
KR20150038170A (ko) | 2015-04-08 |
CN104604240A (zh) | 2015-05-06 |
US20180007105A1 (en) | 2018-01-04 |
JP2015530781A (ja) | 2015-10-15 |
CN104604240B (zh) | 2018-01-26 |
WO2014015168A2 (en) | 2014-01-23 |
US20140025837A1 (en) | 2014-01-23 |
WO2014015168A3 (en) | 2014-03-27 |
US10484442B2 (en) | 2019-11-19 |
EP2875635A2 (en) | 2015-05-27 |
US20150381677A1 (en) | 2015-12-31 |
US9154361B2 (en) | 2015-10-06 |
EP2875635A4 (en) | 2016-01-20 |
KR101629338B1 (ko) | 2016-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5961850B2 (ja) | ジャストインタイムの分散型ビデオキャッシュ | |
US20200162795A1 (en) | Systems and methods for internet video delivery | |
US10397293B2 (en) | Dynamic chunking for delivery instances | |
US8392615B2 (en) | Dynamic variable rate media delivery system | |
US8745262B2 (en) | Adaptive network content delivery system | |
US8301733B2 (en) | Dynamic chunking for delivery instances | |
US8612668B2 (en) | Storage optimization system based on object size | |
US20170149860A1 (en) | Partial prefetching of indexed content | |
EP2359536B1 (en) | Adaptive network content delivery system | |
US20060230170A1 (en) | Streaming media content delivery system and method for delivering streaming content | |
US8219556B2 (en) | Metadata collecting device, method and computer readable medium | |
US10375444B2 (en) | Partial video pre-fetch | |
US20170140443A1 (en) | Dynamic manifest generation for delivery instances | |
WO2016063161A1 (en) | Partial prefetching of indexed content | |
JP2023520648A (ja) | ネットワーク内でストリーミングされたコンテンツをクライアントデバイスのプレーヤ上で再生するための方法 | |
US11496803B2 (en) | Video stream switching service | |
CN111726339A (zh) | 一种直播流快速截图*** | |
WO2014137639A1 (en) | Dynamic chunking for delivery instances |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151022 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20151022 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20151022 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20151120 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160412 |
|
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: 20160531 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160603 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5961850 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |