JP4273165B2 - コンテンツのストリーミングに使用するための改善された起動方法および装置 - Google Patents

コンテンツのストリーミングに使用するための改善された起動方法および装置 Download PDF

Info

Publication number
JP4273165B2
JP4273165B2 JP2008029720A JP2008029720A JP4273165B2 JP 4273165 B2 JP4273165 B2 JP 4273165B2 JP 2008029720 A JP2008029720 A JP 2008029720A JP 2008029720 A JP2008029720 A JP 2008029720A JP 4273165 B2 JP4273165 B2 JP 4273165B2
Authority
JP
Japan
Prior art keywords
media content
bit rate
communication link
server device
client device
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
JP2008029720A
Other languages
English (en)
Other versions
JP2008187723A5 (ja
JP2008187723A (ja
Inventor
イー.カルビル スコット
ブハット サンジャイ
イー.クレメッツ アンダース
バッターベリー トロイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2008187723A publication Critical patent/JP2008187723A/ja
Publication of JP2008187723A5 publication Critical patent/JP2008187723A5/ja
Application granted granted Critical
Publication of JP4273165B2 publication Critical patent/JP4273165B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • 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/63Control 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/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • 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/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Television Signal Processing For Recording (AREA)

Description

本発明は、概してストリーミングメディア装置に関し、より詳細には、コンテンツをストリーミングする際に改善されたエンドユーザ起動時間を提供するための方法および装置に関する。
本出願は、「Fast Dynamic Measurement of Connection Bandwidth」と題する同時係属の米国特許出願第09/636,004号(2000年8月9日提出)に関連しており、参照により本明細書に組み込むものとする。
今日、ほとんどすべてのコンピュータユーザはテレビ放送メディアに十分に慣れている。新たなテレビジョンチャンネルを要求すると、一般的にその新たなチャンネルが極めて迅速に表示される(レンダリングされる)。従来のラジオ放送局に対しても同じことが言える。
しかしながら、従来型のインターネットストリーミング対象コンテンツではこの同じことが言えない。ストリーミングメディアは、典型的には、インターネットやその他同様のネットワークを介してサーバ装置からクライアント装置に提供される。さまざまな技術的理由のため、こうしたエンドユーザの体験は、たとえば、レンダリングにおけるデータの到着遅れ/再送信により体験されるようなポーズにより格下げとなっている可能性がある。しかし、こうしたポーズはランダムに起きる傾向にあり、またある種の構成では極めて稀にしか起こらない。しかし、ほとんどのエンドユーザがストリーミングメディアプログラムを選択するたびごとに体験しているようなポーズ、すなわち起動時間の遅れ、がある。
この不首尾な起動の体験により、ストリーミングメディアの多くの市場分野での採用が抑制される傾向にある。さらに、エンドユーザはこのテクノロジーを使用したいと考える時間の長さを短縮させる傾向にある。したがって、チャンネルの「サーフィン(surfing)」は、従来のストリーミング技法ではほとんど受容しがたいものである。
米国特許出願第09/636,004号明細書
このため、エンドユーザが体験する起動時間を大幅に短縮させることができる改善されたストリーミングメディアの方法および装置が必要とされている。
本発明のある態様によれば、エンドユーザが体験する起動時間を大幅に短縮させた改善されたストリーミングメディアの方法および装置を提供する。
一例として、上述の必要性その他は、本発明のある種の実施態様に従ったシステムにより満足される。このシステムは、通信リンクを介して動作可能に接続されたクライアント装置とサーバ装置を含んでいる。クライアント装置は、通信リンクを介してサーバ装置に少なくとも1つの起動要求を送信するように構成されている。この起動要求は、クライアント装置に提供されるストリーミング可能なメディアコンテンツ、この通信リンクと関連付けられた通信リンクバンド幅、および符号化ビットレートを超えるビットレートであるがほぼ該通信リンクバンド幅を超えないようにして提供される所望のストリーミング可能なメディアコンテンツの量を識別させている。サーバ装置は、少なくとも該量のストリーミング可能なメディアコンテンツをバッファリングし、かつ該量のバッファリングしたストリーミング可能なメディアコンテンツをこれより大きなビットレートで送信するように構成されている。該量のバッファリングしたストリーミング可能なメディアコンテンツを送信した後、サーバ装置は、ストリーミング可能なメディアコンテンツの後続する部分を符号化ビットレートとほぼ等しいビットレートでクライアント装置に送信する。クライアント装置は受信したストリーミング可能なメディアコンテンツをバッファリングすること、およびこのバッファリングしたストリーミング対象メディアコンテンツを引き続きレンダリングすること、を行うように構成されている。
ある種の実施態様によれば、そのサーバ装置は、該量のバッファリングしたストリーミング可能なメディアコンテンツ内で離散的レンダリング点を位置特定し、かつこの離散的レンダリング点を始点とする送信を開始する。
ある種の別の実施態様によれば、クライアント装置によりその通信リンクバンド幅が決定される。
本発明のさまざまな方法および装置は、添付の図面に関連して取り上げている以下の詳細な説明を参照することによってさらに完全に理解されよう。
図面を見ると、同じ参照番号は同じ要素を表しており、本発明を適当なコンピュータ環境で実施されるようにして図示している。必須ではないが、本発明の各種部分を、コンピュータその他同様の装置(たとえば、パーソナルコンピュータ(PC)、ワークステーション、ポータブル式コンピュータ、サーバ、複数のプロセッサ、メインフレームコンピュータ、ワイヤレス通信基地局、ハンドへルド型通信デバイス、ストリーミング対象メディアプレーヤ、セットトップボックス、などの形態をとることができる)により実行されるような、プログラムモジュールなどコンピュータ実行可能な命令に関する概括的コンテクストで記述している。
一般に、プログラムモジュールは、特定のタスクを実行するかまたは特定の抽象的データタイプを実施させているような、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含んでいる。本発明のさまざまな例示的な実施態様はまた、通信ネットワークを介してリンクさせたリモート処理装置によりタスクを実行させている分散型コンピュータ環境で実施することもできる。分散型コンピュータ環境では、プログラムモジュールをローカルとリモートの両方のメモリ記憶デバイス内に配置することができる。
本明細書で用いる際には、「ロジック(logic)」という語は、たとえば、ソフトウェア、ファームウェア、ハードウェアおよび/またはこれらの任意の組合せを含む任意の形態のロジックおよび必要なサポート要素に当てはめるとする意図である。
図1は、適当なコンピュータ環境120の一例を表しており、引き続き記載する方法および装置の各部分はこの環境上で実施することができる。
例示的なコンピュータ環境120は、適当なコンピュータ環境の単なる一例に過ぎず、本明細書に記載した改善された方法および装置の使用や機能性の範囲に対する限定の示唆を意図するものでは全くない。さらにまた、コンピュータ環境120は、コンピュータ環境120で図示している任意の一構成要素または構成要素の任意の組合せに関連する任意の依存関係や要件を有するものと解釈すべきでもない。
本明細書に示す改善された方法および装置は、その他多くの汎用型および/または専用型コンピュータのシステム環境または構成を用いて使用可能である。
図1に示すように、コンピュータ環境120は、コンピュータ130の形態をした汎用コンピュータ装置を含んでいる。コンピュータ130の構成要素には、1つまたは複数のプロセッサまたは処理装置132、システムメモリ134、およびシステムメモリ134を含めさまざまなシステムコンポーネントをプロセッサ132と結合させているバス136を含むことがある。
バス136は、メモリバスまたはメモリコントローラ、周辺バス、高速グラフィックス(accelerated graphics)ポート、およびさまざまなバスアーキテクチャの任意のものを用いたプロセッサまたはローカルバスを含め、任意の幾つかのタイプのバス構造のうちの1つまたは複数個を表している。限定ではなく一例として、こうしたアーキテクチャには、業界標準アーキテクチャ(ISA)バス、マイクロチャンネルアーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ベザ(Video Electronics Standards Association:VESA)ローカルバス、およびメザニン(Mezzanine)バスとも呼ばれる周辺コンポーネント相互接続(PCI)バスが含まれる。
コンピュータ130は、典型的にはさまざまなコンピュータ可読メディアを含む。こうしたメディアは、コンピュータ130がアクセスできる利用可能な任意のメディアとすることができ、またこうしたメディアには、揮発性および不揮発性の両メディア、取外し可能なメディアおよび取外し不可能なメディアが含まれる。
図1では、システムメモリ134は、ランダムアクセスメモリ(RAM)140などの揮発性メモリ、および/または読出し専用メモリ(ROM)138などの不揮発メモリの形態をしたコンピュータ可読メディアを含んでいる。基本入出力システム(BIOS)142は(たとえば、起動時における)コンピュータ130内の構成要素間での情報の転送を支援する基本ルーチンを含んでおり、ROM138内に格納されている。RAM140は、典型的には、プロセッサ132により即座にアクセスできる、かつ/またはプロセッサ132による現在の動作の基本となっているような、データおよび/またはプログラムモジュールを含んでいる。
コンピュータ130はさらに、取外し可能/取外し不可能で、揮発性/不揮発性のその他のコンピュータ記憶メディアを含むことができる。たとえば、図1は、取外し不可能で不揮発性の磁気メディアに対する読出しと書込みをするためのハードディスクドライブ144(図示せず、典型的には「ハードドライブ(hard drive)」と呼ぶ)と、取外し可能で不揮発性の磁気ディスク148に対する読出しと書込みをするための磁気ディスクドライブ146(たとえば、「フロッピー(登録商標)ディスク」)と、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAMあるいはその他の光学メディアなど取外し可能で不揮発性の光ディスク152に対する読出しや書込みをするための光ディスクドライブ150とを図示している。ハードディスクドライブ144、磁気ディスクドライブ146、および光ディスクドライブ150はそれぞれ、1つまたは複数のインタフェース154によりバス136に接続されている。
ドライブ類や関連するコンピュータ可読メディアにより、コンピュータ読取り可能な命令、データ構造、プログラムモジュール、およびその他のデータに対する不揮発性記憶がコンピュータ130に提供される。本明細書に記載した例示的な環境は、ハードディスク、取外し可能な磁気ディスク148および取外し可能な光ディスク152を利用しているが、当業者であれば、磁気カセット、フラッシュメモリカード、ディジタル式ビデオディスク、ランダムアクセス記憶装置(RAM)、読取り専用記憶装置(ROM)、その他など、コンピュータによりアクセス可能なデータを格納することができる別の種類のコンピュータ可読メディアもこの例示的な動作環境で使用できることを理解することとなろう。
ハードディスク、磁気ディスク148、光ディスク152、ROM138、またはRAM140には、たとえば、オペレーティングシステム158、1つまたは複数のアプリケーションプログラム160、その他のプログラムモジュール162、およびプログラムデータ164を含めいくつかのプログラムモジュールを格納することができる。
本明細書に記載した改善された方法および装置は、オペレーティングシステム158、1つまたは複数のアプリケーションプログラム160、その他のプログラムモジュール162、および/またはプログラムデータ164内で実施することができる。
ユーザはキーボード166やポインティングデバイス168(たとえば、「マウス」)などの入力デバイスを介してコマンドおよび情報をコンピュータ130に提供することができる。その他の入力デバイス(図示せず)としては、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送アンテナ、シリアルポート、スキャナ、カメラ、などが含まれることがある。これらおよびその他の入力デバイスは、バス136と結合したユーザ入力インタフェース170を介して処理装置132に接続されているが、パラレルポート、ゲームポート、ユニバーサルシリアルバス(USB)などその他のインタフェースやバス構造により接続することもできる。
さらに、モニタ172やその他の種類のディスプレイ装置は、ビデオアダプタ174などのインタフェースを介してバス136と接続されている。モニタ172のほかに、パーソナルコンピュータは、典型的には、出力周辺インタフェース175を介して接続することができるスピーカやプリンタなどその他の周辺出力装置(図示せず)を含んでいる。
コンピュータ130は、リモートコンピュータ182など1つまたは複数のリモートコンピュータとの論理接続を用いてネットワーク環境で動作させることができる。リモートコンピュータ182は、コンピュータ130に関して本明細書に記載した要素および特徴のうちの多くまたはすべてを含むことができる。
図1に示す論理接続は、ローカルエリアネットワーク(LAN)177および一般のワイドエリアネットワーク(WAN)179である。こうしたネットワーク環境は、オフィス、全企業規模のコンピュータネットワーク、イントラネット、インターネットにおいてごく一般的である。
LANネットワーク環境で使用する場合、コンピュータ130はネットワークインタフェースまたはアダプタ186を介してLAN177に接続されている。WANネットワーク環境で使用する場合、そのコンピュータは、典型的には、モデム178、またはWAN179を介して通信を確立するためのその他の手段、を含んでいる。モデム178は、内蔵の場合や外付けの場合があるが、ユーザ入力インタフェース170やその他の適当な機構を介してシステムバス136と接続させることができる。
図1には、インターネットを介したWANの具体的な実施態様を表している。図1では、コンピュータ130は、インターネット180を介して少なくとも1つのリモートコンピュータ182との通信を確立させるためにモデム178を利用している。
ネットワーク環境では、コンピュータ130に関して表したプログラムモジュール、またはその一部分は、遠隔のメモリ記憶デバイス内に格納することができる。したがって、たとえば図1に示すように、リモートアプリケーションプログラム189はリモートコンピュータ182のメモリ装置上に置くことができる。図示しかつ説明しているネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立する別の手段も使用できることを理解されたい。
ここで、ネットワーク204に動作可能に結合されると共に、そこから同じくネットワーク204に動作可能に結合されているクライアント装置206までメディアをストリーミングさせるように構成されているサーバ装置202を有している例示的なストリーミングメディアシステム200の1つを表している図2を参照する。
ストリーミングメディアシステム200は、クライアント中心の構成で配置されており、この配置において、クライアント装置206はサーバ装置202上のストリーミングメディアプログラムを選択し、ある具体的な高速起動を所望することを指定し、かつストリーミングメディアを搬送するための通信リンクに関する情報をサーバ装置202に提供している。この方式により、クライアント装置206はストリーミングメディア処理およびサーバ装置202を制御することができる。より詳細には以下で記載するが、ストリーミングメディアを制御する際に、クライアント装置206はサーバ装置202に対して、最初の時間期間中にそのメディアの符号化ビットレートを超えるデータビットレートでメディアをストリーミングさせている。これにより、クライアント装置206はデータを迅速に受信して、より早くレンダリング処理を開始することが可能となる。
このことは、たとえば、Nathaniel Polishに対して公布された米国特許第5,963,202号に提示されているシステムおよび方法などビデオオンデマンドを提供するために使用される従来のサーバ中心のソリューションではなかったことである。こうしたサーバ中心のシステムでは、クライアント装置ではなくサーバ装置がビデオデータ転送を制御している。したがって、たとえば、サーバは、その通信リンクを介してどれだけの量のビデオデータを転送できるのか、および累進的ダウンロード(progressive download)の間のどの時点で転送をすべきであるかを判定することが必要となる。サーバ中心のシステムの欠点のうちの1つは、各クライアント装置ごとに、そのクライアント装置内の通信リンクおよびデータバッファの状態をサーバにより監視する必要があることである。累進的ビデオダウンロード技法は家庭内やホテルのビデオオンデマンドシステムのためには効果的であることもあるが、この技法は、たとえば、インターネット、企業内イントラネット、ワイドエリアネットワーク、ワイヤレスネットワークなど、さらに大きなネットワーク環境では恐らく非効率と判定されることとなろう。
図2に戻ると、図示したように、サーバ202はメディアサーバ208を含んでいる。メディアサーバ208は、高速起動ロジック210を含むと共に、バッファ212に動作可能に結合されている。図示のように、この例では、メディアサーバは、メディア記憶デバイス216へのアクセスを提供している第1のインタフェース214に動作可能に結合されている。メディアサーバ208はさらに、放送メディア装置220(ビデオカメラで表している)へのアクセスを提供している第2のインタフェース218に動作可能に結合されている。メディアサーバ208は第3のインタフェース222を介してネットワーク204に動作可能に結合されている。別の実施態様では、インタフェース214、218および/または222を何らかの方法で組み合わせることがあることを理解されたい。
その名称が示唆するように、メディアサーバ208は、クライアント装置206にストリーミングメディアを処理するか、さもなければ提供するように構成されている。このタスクを達成させるには、メディアサーバ208はインタフェース222およびネットワーク204を介してクライアント装置206と情報をやり取りしている。サーバ装置202とクライアント装置206の間で通信を提供するために使用する技法およびプロトコルはよく知られており、したがって、詳細に至るまで記載していない。
メディアサーバ208はストリーミングメディアプログラムのクライアント装置206への利用可能性を識別する。この例では、メディアサーバ208は、2つのソースからの、すなわちメディア記憶デバイス216と放送メディア装置220からの、ストリーミングメディアプログラムにアクセスし/受け取っている。メディア記憶デバイス216は、たとえば、1つまたは複数の磁気ディスクドライブ、1つまたは複数の光ディスクドライブ、その他などのデータ記憶デバイスを表している。ここで、メディア記憶デバイス216は、メディアサーバ208がメディアを「オンデマンドで」クライアント装置206にストリーミングできるように構成されている。本明細書で使用する場合、「オンデマンド(on-demand)」とは、そのメディアがメディア記憶デバイス216内に格納され、それ以降ストリーミングで利用可能の状態となり後続の時刻において再生できることを意味している。したがって、たとえば、以前のニュースプログラムはメディア記憶デバイス216上にその全体を記録かつ格納しておき、引き続いてオンデマンドで利用可能とすることができる。
これと反対に、放送メディア装置220は、大量には格納されておらず、その全体が格納されていないことが確実なメディアを表している。一例として、リアルタイムまたは概してリアルタイムで放送されているニュースプログラムが挙げられる。したがって、こうしたメディアプログラムはオンデマンドで利用可能とはならない。クライアント装置206がこの放送メディアのストリームを選択した場合には、ストリーミングメディアはニュースプログラム内でほぼ放送中にある点に「ジャンプ(jump)」することになる。
バッファ212は、メディアサーバ208がストリーミング処理の支援のためにメディアデータを一時的に格納するために使用している。バッファ208は、典型的には、ランダムアクセスメモリを含むことになる。
図のように、クライアント装置206はメディアクライアント224を含んでいる。メディアクライアント224は、インタフェース232およびネットワーク204を介したサーバ装置202からのストリーミングメディアの選択、受信、およびレンダリングを支援するように構成されている。このタスクをさらに達成させるために、メディアクライアント224は高速起動ロジック226およびレンダリング装置228を含んでいる。メディアクライアント224はさらに、バッファ230に動作可能に結合されている。バッファ230は、典型的には、ランダムアクセスメモリを含んでいる。レンダリング装置228は、ストリーミング対象メディアデータを処理すること、およびこのデータをクライアント装置206や受信したメディアで適用可能となるようにレンダリングするように構成されている。レンダリング処理はよく知られており、この詳細については本発明の範囲を超えている。
この例示的なストリーミングメディアシステムを念頭に置きながら、ここで、この詳細な説明はメディアクライアント224、およびサーバ装置202内の高速起動ロジック210および対応するクライアント装置206内の高速起動ロジック226の機能に焦点を当てることにする。
メディアクライアント224では、さまざまな理由からストリーミングデータのバッファリングが必要となる。たとえば、バッファリングによりクライアント装置206は、コンテンツのパケットが紛失したときに連続再生に影響を与えることなく再送の要求および首尾よい取得が可能となる。バッファリングによりさらに、ジッタを有していたり、バンド幅レスポンスが一貫していないようなネットワーク上での再生をスムーズにすることができる。極めて高効率の圧縮テクノロジーでは、復元を開始できるようになるまでに、クライアント上にかなりの長さのコンテンツ(たとえば、1つのフレーム全体または複数のフレーム全体)を存在させることが必要となることが多い。こうした問題点のすべてが、メディアクライアント224によりコンテンツをバッファリングする必要性に寄与している。
圧縮テクノロジーおよびコンテンツの種類に応じて、バッファリングは1秒未満から数十秒までのいずれにも変更することができる。従来のある種のメディアプレーヤでは、たとえば、コンテンツの概して5秒分をバッファリングしてからレンダリングの開始が可能となる。従来のストリーミングメディアサーバはコンテンツを符号化ビットレートで伝達するように設計されているため、エンドユーザはバッファを満たしてレンダリングを開始するのに少なくとも5秒間待つ必要がある。
ほとんどのクライアント装置では接続したときに放送メディアがすでに起動しているのが典型的であるため、クライアント装置は、バッファリング処理の開始前でさえ待機を要することがある。たとえば、現在使用されている典型的な圧縮テクノロジーでは、そのストリーム内のある離散点でバッファリングを開始することが必要である。クライアント装置が個別に従来の放送ストリームに加入している場合、そのクライアント装置はバッファリング処理の開始前であってもストリームの形で現れるのをこうした離散点のうちの1つで待機することが必要となる。離散点の頻度は、使用する圧縮テクノロジー、コンテンツの種類、またさらにコンテンツの特性に応じて劇的に変動することがある。こうした離散的なバッファリング点の頻度は、1秒当たり数回から16秒以下の各秒数ごとに一度程度まで変動することがある。
従来のストリーミングメディアクライアントが先ず離散的エントリー点を発見するために待機し、次いでバッファが満たされるために待機しなければならないとすると、ストリーミングメディア放送をレンダリングしようと試みる際にユーザはかなりの遅延を体験することが多い。本発明のある種の態様では、クライアント装置のバッファ(複数のこともある)を満たすのに要する時間を大幅に短縮させ、かつ最終的に放送およびオンデマンドの両方のコンテンツでレンダリングを高速で開始できる傾向にあるような方法および装置を提供する。したがって、たとえば、ある例示的な実施態様では、利用可能な追加のネットワークバンド幅を利用してコンテンツのストリーミングを加速させ、これに応じてクライアント装置のバッファ(複数のこともある)をより高速で満たしている。このことから、「高速起動(fast startup)」という用語となる。
本発明のある種の態様では、たとえば、マイクロソフトメディアサーバ(MMS)、リアルタイムストリーミングプロトコル(RTSP)、ハイパーテキスト転送プロトコル(HTTP)、その他など従来のストリーミングプロトコルの用法/シンタックスを拡張することにより、さまざまな高速起動の方法および装置を実施することができる。
参照により本明細書に組み込む「Fast Dynamic Measurement of Connection Bandwidth」と題する同時係属の米国特許出願第09/636,004号(2000年8月9日提出)には、ストリーミングメディアの実際の送達を要求する前にメディアクライアント224によりクライアント装置206とサーバ装置202の間に存在するバンド幅を決定することができるような技法についてより詳細に記載されている。このバンド幅はリンクバンド幅という名称で知られている。
基本的には、接続バンド幅の高速で動的な計測では、単一のパケット対を利用してクライアント装置206とサーバ装置202の間のバンド幅を計算している。この計算は、パケット対(packet-pair)技法に基づいている。このバンド幅計測は極めて迅速である。パケットがネットワーク204を横切る行程において、通信装置とモデムはパケットを圧縮することがある。この圧縮によりパケットのサイズが小さくなり、このためこうした縮小したパケットを用いたバンド幅計算は歪みを受けることがある。この歪みを回避するため、この接続バンド幅に対する高速で動的な計測では、圧縮不可能なパケットを利用している。より具体的には、この計測は極めてエントロピックなパケットを利用している。したがって、パケットをその行程の途中で圧縮することはできない。さらに、パケットがネットワーク204を横切る行程において、パケットには、ルート変更(reroute)、遅延、ルート誤り(misroute)、その他が起きることがある。これら時々刻々の遅延のために時々刻々のバンド幅計算が不良となることがある。この問題は、メディアクライアント224の位置において最新の計測値を追尾している履歴リスト(図示せず)を用いることにより改善される。次いで、メディアクライアント224は、履歴リストからその中央値を決定することができる。この中央値がリンクバンド幅を表している。
これはリンクバンド幅を決定するための例示的な一技法を表したものである。当業者であれば、他の技法を用いてもリンクバンド幅をある程度の確実性で決定することができることを理解するであろう。
メディアクライアント224はたとえば、セッション記述プロトコル(SDP)など従来のプロトコルを用いてメディアサーバ208との通信および利用可能なストリーミングメディアの所在および特性を識別することができる。
したがってこの方式により、メディアクライアント224は、リンクバンド幅と、そのストリーミングメディアプログラム内の個々のストリーム(複数のストリームのこともある)のバンド幅を決定することができる。したがって、メディアクライアント224内の高速起動ロジック226は、初めにそのコンテンツの符号化ビットレートと比べてより速いレートでコンテンツをストリーミングすることを要求することができる。この高速起動の要求は、メディアサーバ208の高速起動ロジック210により処理されている。
再生速度が通常であると仮定すると、コンテンツを符号化ビットレートを超えるレートでストリーミングすることは、クライアントバッファ230内のデータ量の大きさが時間の経過に伴って増加することを意味する。バッファ230のメモリ量が限定されていると、そのコンテンツの符号化ビットレートと比べてより速いレートでコンテンツを無期限にストリーミングすることは望ましくない。その代わり、クライアントのバッファ230はストリーミング処理の開始時点での高速レートで十分に満たされ、引き続きこのストリーミングレートはメディアプログラム(ファイル)の符号化ビットレートに概して一致するように変更される。この設計は、追加のリンクバンド幅を利用してバッファ230に追加のメモリを必要とせずにクライアントバッファ230が迅速に満たされるという恩恵を有している。
メディアサーバ208内にある高速起動ロジック210は、コンテンツをより高速レートでストリーミングすることにより高速起動要求に応じるように構成されている。生中継ビデオフィードなどの放送メディアの場合では、高速起動ロジック210はストリーミング放送メディアの一部を一時的にサーババッファ212に格納する。この方式では、サーバ装置202に新たなクライアント装置を接続させた場合に、その放送ストリームの符号化ビットレートを超えるレートでコンテンツパケットの送信を受けることができる。
したがって、たとえばある実施態様で、そのコンテンツが16kbpsで符号化されているとすると、高速起動ロジック210は放送メディアの直前の10秒分をバッファ212内に格納することになる。したがって、この例示的なバッファリング処理では、20キロバイトのメモリが必要となる。このため、放送が開始となった後で接続したクライアント装置は、16kbpsと比べてかなり速いレートで概して最大約10秒分のコンテンツを要求することができる。
これは単に一例に過ぎず、別の実施態様では、そのバッファリング処理で、バッファ212内に格納する放送メディアの量はより長いことやより短いことがある。
起動ロジック210はさらに、新たなクライアントを放送に接続した際にバッファ212からのコンテンツパケットの送信をどこから開始すべきかをインテリジェントに決定するように構成されている。たとえば、放送プログラムが進行中であり、かつ新たなクライアントをサーバ202に接続すると仮定してみる。起動ロジック210によりバッファ212内に直前の10秒分のコンテンツがバッファリング済みであるとすると、高速起動ロジック210は、理論的には、ConnectTimeclientX−10からConnectTimeclientXまでの時間から概して任意の時点でコンテンツの送信を開始することが可能である。
しかし、コンテンツのストリーミングを10秒バッファの先頭の時点で開始することは、メディアクライアント224が必要とする離散的開始点がConnectTimeclientX−10の時点にあるコンテンツに含まれないことがあるため問題となる可能性がある。典型的には、ある種のストリーミング対象コンテンツでは、メディアクライアント224は、たとえば、ある種のフレーム境界や「キーフレーム」などストリーミング対象データ内の離散点でしかコンテンツのレンダリングを開始することができない。一例として、MPEGストリームでは、Iフレームはキーフレームであるが、Pフレームはキーフレームではない。別の例として、2つのキーフレーム302と複数のその他のフレーム304とを含んだメディアストリームの一部分300を模式的に表している図3を参照してみる。図のように、キーフレーム302同士の間に長いレンダリング時間期間306を設けることができる。
このため、起動ロジック210は、バッファリングしたコンテンツを選択的にスキャンして、新たなクライアント装置に対するストリーミング処理を開始させるべき離散点の位置特定、および/またはさもなければ識別/追尾をするように、有利に構成されている。この離散点はバッファ212内の最も初めにある離散点とすることが好ましい。
伝搬待ち時間がバッファリングしたリストからのコンテンツの送信開始時点を決定するための別のファクタである。本質的には古い(すなわち、バッファリングしてある)コンテンツを新たなクライアント装置に送信しており、かつそのイベントが実況中継放送であることがあるため、時間シフトを導入している。高速起動ロジック210(および、メディアサーバ208)によりもたらされるこの時間シフトの大きさは、実施済みのバッファリング量、および新たなクライアント装置に送信するコンテンツに関して選択した開始点と関連を持つ。
クライアントは放送中の任意の時点でランダムに接続を行うことができ、またこの例で用いている10秒バッファリストは「滝(waterfall)」や「引窓(sliding window)」に類似するようにして絶えず変化している。したがって、符号化ビットレートを超えるレート、およびコンテンツ送信用の開始点で送信されるコンテンツの量は、時間の経過に伴って変動することになる。さらに、各クライアント装置は異なるリンクバンド幅を有するため、加速させた送信レートも変動することがある。各クライアント装置では、クライアント側バッファの設定値が異なることさえあり得る。これらのファクタのすべてから、クライアント装置はレンダリング処理の間に同期しないことになることが含意される。
サーバ202に接続するクライアント装置が利用可能な追加のネットワークバンド幅を十分に有していない場合は、コンテンツバッファリスト内で利用可能な最も初めにある点の送信では、具体的な当該クライアント装置に対する伝搬待ち時間が不必要に増加することがある。したがって、サーバ装置202は(さらに詳細には高速起動ロジック210は)、起動時間を最小とする必要と伝搬時間を最小とする必要とを「バランスさせる」ように構成されている。たとえば、伝搬待ち時間と起動待ち時間を最小にするという対立する要件をバランスさせるのを手助けするため、次式と同様のロジックを利用することができる。
AccelDuration=RequestedAccelDuration−(AccelRate*RequestedAccelDuration)

RequestedAccelDuration:要求される加速期間
AccelRate:(コンテンツの符号化ビットレート)/(リンクバンド幅)の比
AccelDuration:サーババッファから送信されるコンテンツ量
上の例示的ロジックでは、そのコンテンツの符号化ビットレートが利用可能なリンクバンド幅に近づくにつれて、サーババッファ212から送信される「タイムシフトさせた」コンテンツの量は本質的には低下する。
オンデマンドコンテンツでは、高速起動ロジック210は、クライアント装置206を接続したときに既存のバッファがないこと以外は、その放送台本と同様に構成される。したがって、高速起動ロジック210はバッファリストを迅速に構築して高速起動要求を満足させる。典型的なメディア記憶デバイス216ではクライアント装置206が要求しているものと比べてより高速のレートでオンデマンドコンテンツを転送することができるためにこのことが可能となる。
ある例示的な実施態様では、加速バッファリングを要求するためにクライアント装置206により使用される実際のプロトコル機構でヘッダの使用が不可欠である。一例として、RTSPプロトコルでは、ヘッダ「X−Accelerate−Streaming」を規定し、これをPLAYコマンドと共に使用する。このヘッダは、加速の持続時間に対するクライアント要求および加速のために使用するバンド幅に関する情報を含んでいる。たとえば、典型的な「X−Accelerate−Streaming」ヘッダにはクライアントが「AccelDuration=10000;AccelBandwidth=1048576」を含めていることがある。これにより、クライアントが1,048,576ビット毎秒のレートで加速された10,000ms分のコンテンツを得ることを希望する旨がサーバに伝達される。
HTTPプロトコルでは、たとえば、クライアントの高速起動ロジック226はGETコマンド内で通常用いられるPRAGMAヘッダにおいて高速起動パラメータを指定するための指示文を利用することができる。下記のテキストは、高速起動を要求するGET要求内のサンプルPRAGMAヘッダのコンテンツを表している。
「LinkBW=2147483647、AccelBW=1048576、AccelDuration=10000」
この例示的な要求では、クライアント側の高速起動ロジック226はサーバ側の高速起動ロジック210に対して、そのリンクバンド幅が2,147,483,647ビット毎秒であるが、10,000msの持続時間にわたって1,048,576ビット毎秒のレートで加速されたコンテンツを希望しているのみであることを伝達している。
ここで、クライアント装置206で使用するのに適当な処理400を表している流れ図である図4を参照する。ステップ402において、メディアクライアント224はメディアサーバ208に接続される。ステップ404において、高速起動ロジック226は、たとえば上述のようにしてリンクバンド幅を決定する。ステップ406において、メディアクライアント224はメディアサーバ208に対して、個々のコンテンツストリームのバンド幅を含め、利用できるストリーミング可能なコンテンツに関する情報を要求する。
ステップ408において、高速起動ロジック226は高速起動ロジック210にストリーミング可能なコンテンツを要求する。ステップ410において、高速起動ロジック226は最初に高速ストリーミングビットレート、さらに続いてより低速なストリーミングビットレートを選択する。高速起動ロジック226はさらに、最初の高速ストリーミングビットレートで送信されることになるストリーミング対象メディアの量を決定する。
たとえば、バッファ230の設定値、リンクバンド幅、およびコンテンツの符号化ビットレートに基づいて、高速起動ロジック226はバッファ230を迅速に満たすためにコンテンツ送信の加速要求を提出すべきか否かを判定することができる。クライアント装置206が高速起動を要求することに決定した場合は、サーバ装置202からのコンテンツの転送を開始させる最後のコマンドにカスタムヘッダシンタックスを付加することができる。
その後、ステップ410において、メディアクライアント224はメディアサーバ208からのストリーミング対象コンテンツの受信を開始する。ステップ412において、そのコンテンツの先頭部分は、符号化ビットレートを超える最初のより高速なストリーミングビットレートで受信される。続いて、ステップ414において、ストリーミング対象コンテンツの次の部分が符号化ビットレートにほぼ等しいより低速なストリーミングビットレートで受信される。
ここで、サーバ装置202で使用するのに適当な処理500を表している流れ図である図5を参照する。ステップ502において、メディアサーバ208はクライアント接続要求を処理し、クライアントによるストリーミング可能なコンテンツに関する情報の要求に応答する。ステップ504において、高速起動ロジック210はストリーミングメディアを高速起動させるようにとのクライアント装置206から受信した要求に応答する。ステップ506において、要求されたストリーミング可能なコンテンツがオンデマンドコンテンツであれば、高速起動ロジック210は、メディア記憶デバイス216から必要なコンテンツを取り込むことによりその高速起動要求を満足させることを試みる。
別法として、要求されたストリーミング可能なコンテンツが放送コンテンツを含む場合には、ステップ508においてコンテンツは、高速起動ロジック210は高速起動ロジック226から受け取った高速起動パラメータを用いて、その放送コンテンツのどの点でバッファ212からのストリーミングを開始できるかを決定している。可能である場合、高速起動ロジック210は、バッファリスト内の離散的開始点でストリーミングを開始し、メディアクライアント224が有用なコンテンツパケットを直ちにバッファリングを開始できるようにすることが好ましい。
次に、ステップ510において、高速起動ロジック210は、適用可能なコンテンツを、先ずはより高速のストリーミングビットレートでストリーミングし、続いて、ステップ512において、より低速のストリーミングビットレートでストリーミングする。
ここで、要求された高速起動によるストリーミングメディアプログラムに関連付けられた例示的な送信ビットレート値602を表している時間軸グラフ600である図6を参照する。時刻t0において、クライアント装置206はストリーミングメディアプログラムを要求する。これに応答して、サーバ装置202はバッファリングしたコンテンツのアクセスを開始する。時刻t1において、サーバ装置202は高速ストリーミングビットレートでコンテンツの送信を開始する。この例では、概して時刻t2において、クライアント装置206はそのコンテンツのレンダリングを開始するのに十分なストリーミング対象メディアの受信およびバッファリングを終えている。時刻t3において、サーバ装置202はクライアント装置206が要求した高速起動データの要求量を転送し終えている。したがって、ストリーミングビットレートはほぼ符号化ビットレートまで低下される。
たとえば、クライアント装置のリンクバンド幅が約700kbpsであっても、コンテンツパケットが通常約56kbpsの固定レートでストリーミングされるものと仮定してみる。上述した高速起動の状況では、要求に応じて、そのメディアの最初の約10秒間を含んだコンテンツパケットは概してリンクバンド幅レートでストリーミングすることができる。この時点で、これに概して0.8秒の時間がかかっていることになる。その後、残りのコンテンツパケットをより低速の符号化ビットレートでストリーミングする。
この例では、その一巡時間が持続時間内で適度に短ければ、メディアサーバ208は、要求が出された後概して0.1秒で高速起動ストリームを開始させることになる。メディアクライアント224は最初の要求に続く約0.5秒の時点で約5秒間分のストリーミングメディアプログラムを受信し終えていることになり、ほぼ当該時点でレンダリングを開始することができる。要求される10秒間分の高速起動ストリーミング対象メディアは、最初の要求に続く約0.9秒の時点で受信し終えていることになる。この時点で、レンダリング装置228は約0.4秒間分のコンテンツをレンダリングし終えていることになり、また、約9.6秒間分のコンテンツがバッファ230内に格納されていることになる。
したがって、この例では、その起動時間が5秒以上から約1秒未満まで短縮された。さらに、クライアント装置206は約10秒間分のバッファリングしたコンテンツを保持することが可能となる。この追加のバッファリングによりクライアント装置206は、たとえばジッタやその他ネットワークの一時的休止(brownout)の潜在的な延長などによる短いポーズを回避することができる。
本発明のさまざまな方法および装置に関するいくつかの好ましい実施態様について添付の図面で図示すると共に上述した詳細な説明において説明したが、本発明は開示した例示的な実施態様に限定されるものではなく、むしろ特許請求の範囲に列挙し規定した本発明の精神を逸脱することなく多くの配置変更、修正および代替が可能であることを理解されたい。
本発明のいくつかの実施態様による、ストリーミング対象メディアの提供、受信、および/または、さもなければ通信に使用するのに適した、コンピュータの形態をした例示的装置を表したブロック図である。 本発明のいくつかの実施態様による、サーバ装置およびクライアント装置を有する例示的なストリーミングメディアシステムを表したブロック図である。 本発明のいくつかの実施態様による、図2のストリーミングメディアシステムでのストリーミングに適した例示的なコンテンツストリームを表した概要図である。 本発明のいくつかの実施態様による、図2のクライアント装置において使用するのに適した例示的なクライアント中心のメディアストリーミング処理の流れ図である。 本発明のいくつかの実施態様による、図2のサーバ装置において使用するのに適した例示的な高速起動メディアストリーミング処理の流れ図である。 本発明のいくつかの実施態様による、図2のストリーミングメディアシステムに関連付けられた例示的な高速起動ストリーミングメディア送信に関する送信データビットレートを表している時間軸図表である。
符号の説明
120 適当なコンピュータ環境
130 コンピュータ
132 プロセッサ、処理装置
134 システムメモリ
136 バス
138 読出し専用メモリ(ROM)
140 ランダムアクセスメモリ(RAM)
142 基本入出力システム(BIOS)
144 ハードディスクドライブ
146 磁気ディスクドライブ
148 磁気ディスク
150 光ディスクドライブ
152 光ディスク
154 インタフェース
158 オペレーティングシステム
160 アプリケーションプログラム
162 その他のプログラムモジュール
164 プログラムデータ
166 キーボード
168 ポインティングデバイス
170 ユーザ入力インタフェース
172 モニタ
174 ビデオアダプタ
175 出力周辺インタフェース
177 ローカルエリアネットワーク(LAN)
178 モデム
179 ワイドエリアネットワーク(WAN)
180 インターネット
182 リモートコンピュータ
186 ネットワークインタフェース、ネットワークアダプタ
189 リモートアプリケーションプログラム
200 ストリーミングメディアシステム
202 サーバ装置
204 ネットワーク
206 クライアント装置
208 メディアサーバ
210 高速起動ロジック
212 バッファ
214 第1のインタフェース
216 メディア記憶デバイス
218 第2のインタフェース
220 放送メディア装置
222 インタフェース
224 メディアクライアント
226 高速起動ロジック
228 レンダリング装置
230 バッファ

Claims (26)

  1. クライアント装置が通信リンクを介してサーバ装置からストリーミング可能なメディアコンテンツを受信するための方法であって、
    前記方法は、
    前記メディアコンテンツの加速送信用のビットレート及び加速送信期間を特定するステップであって、前記加速送信用のビットレートとは、前記メディアコンテンツの符号化ビットレートを越えるビットレートであって、前記メディアコンテンツ受信時に利用可能な通信リンクバンド幅を超えないビットレートを示し、前記加速送信期間とは、前記メディアコンテンツの受信開始からの期間であって、前記加速送信用のビットレートで前記メディアコンテンツを受信する期間を示すステップと、
    バッファの設定値、前記クライアント装置と前記サーバ装置間の通信リンクバンド幅及び前記メディアコンテンツの符号化ビットレートに基づいて高速起動要求を行うか否かを決定し、該高速起動要求を前記通信リンクを介して前記サーバ装置に送信するステップであって、前記高速起動要求とは、前記加速送信用のビットレート及び加速送信期間で前記メディアコンテンツの送信を要求するコマンドを示すステップと
    を含むことを特徴とする方法。
  2. さらに、前記クライアント装置が、
    前記加速送信用のビットレートで送信されたメディアコンテンツを前記通信リンクを介して前記サーバ装置から受信するステップを実行しながら、
    前記受信したメディアコンテンツをバッファリングするステップと、
    引き続いて、前記バッファリングしたストリーミング対象メディアコンテンツをレンダリングするステップと
    を実行することを特徴とする請求項1に記載の方法。
  3. 前記加速送信用のビットレートで送信されたメディアコンテンツを前記通信リンクを介して前記サーバ装置から受信するステップがさらに、
    最初に、離散的レンダリング点に関連付けられたストリーミング対象メディアコンテンツを受信するステップ
    を含むことを特徴とする請求項2に記載の方法。
  4. 前記離散的レンダリング点がキーフレームを含むことを特徴とする請求項3に記載の方法。
  5. 前記利用可能な通信リンクバンド幅が前記クライアント装置により能動的に決定されていることを特徴とする請求項1に記載の方法。
  6. 前記ストリーミング可能なメディアコンテンツが、オンデマンドメディアコンテンツおよび放送メディアコンテンツを含むストリーミング可能なメディアコンテンツの群から選択されることを特徴とする請求項1に記載の方法。
  7. 前記クライアント装置は、少なくとも1つのセッション記述プロトコル(SDP)メッセージを前記サーバ装置に送信することによって、受信する前記メディアコンテンツを特定することを特徴とする請求項1に記載の方法。
  8. 前記高速起動要求を前記サーバ装置に送信するステップは、MMS、リアルタイムストリーミングプロトコル(RTSP)およびハイパーテキスト転送プロトコル(HTTP)を含むプロトコル群から選択される少なくとも1つのストリーミングメディアプロトコルに従ってフォーマットした少なくとも1つのメッセージを送信するステップを含むことを特徴とする請求項1に記載の方法。
  9. 通信リンクを介してサーバ装置からストリーミング可能なメディアコンテンツを受信するクライアント装置であって、
    受信したメディアコンテンツをバッファリングするバッファリング手段と、
    前記バッファリング手段に動作可能に結合されると共に、前記メディアコンテンツの加速送信用のビットレート及び加速送信期間を特定した後、バッファの設定値、前記クライアント装置と前記サーバ装置間の通信リンクバンド幅及びメディアコンテンツの符号化ビットレートに基づいて高速起動要求を行うか否かを決定し、該高速起動要求を前記通信リンクを介して前記サーバ装置に送信する高速起動手段と
    を備え、
    前記加速送信用のビットレートとは、前記メディアコンテンツの符号化ビットレートを越えるビットレートであって、前記メディアコンテンツ受信時に利用可能な通信リンクバンド幅を超えないビットレートを示し、前記加速送信期間とは、前記メディアコンテンツの受信開始からの期間であって、前記加速送信用のビットレートで前記メディアコンテンツを受信する期間を示し、前記高速起動要求とは、前記加速送信用のビットレート及び加速送信期間で前記メディアコンテンツの送信を要求するコマンドを示すことを特徴とする装置。
  10. さらに、
    前記高速起動手段に動作可能に結合されておりかつ通信リンクを介してサーバ装置に接続するように構成可能な通信インタフェース手段であって、さらに前記通信リンクを介して前記サーバ装置から前記メディアコンテンツを前記加速送信用のビットレートで受信するように構成可能な通信インタフェース手段を備えると共に、
    前記高速起動手段がさらに、前記受信したメディアコンテンツを前記バッファリング手段内にバッファリングし、前記バッファリングしたメディアコンテンツを引き続きレンダリングするように構成されていることを特徴とする請求項9に記載の装置。
  11. 前記通信インタフェース手段が、最初に、離散的レンダリング点に関連付けられたストリーミング対象メディアコンテンツを受信するように構成可能であることを特徴とする請求項10に記載の装置。
  12. 前記離散的レンダリング点がキーフレームを含むことを特徴とする請求項11に記載の装置。
  13. 前記高速起動手段が前記利用可能な通信リンクバンド幅を能動的に決定するように構成されていることを特徴とする請求項9に記載の装置。
  14. 前記ストリーミング可能なメディアコンテンツがオンデマンドメディアコンテンツおよび放送メディアコンテンツを含むストリーミング可能なメディアコンテンツの群より選択されることを特徴とする請求項9に記載の装置。
  15. コンピュータ実行可能な命令を含むコンピュータ可読記憶媒体であって、
    前記コンピュータ実行可能な命令は、クライアント装置にロードされて実行されることにより、
    通信リンクを介してサーバ装置から前記クライアント装置にストリーミング可能なメディアコンテンツの加速送信用のビットレート及び加速送信期間を特定するステップであって、前記加速送信用のビットレートとは、前記メディアコンテンツの符号化ビットレートを越えるビットレートであって、前記メディアコンテンツ受信時に利用可能な通信リンクバンド幅を超えないビットレートを示し、前記加速送信期間とは、前記メディアコンテンツの受信開始からの期間であって、前記加速送信用のビットレートで前記メディアコンテンツを受信する期間を示すステップと、
    バッファの設定値、前記クライアント装置と前記サーバ装置間の通信リンクバンド幅及び前記メディアコンテンツの符号化ビットレートに基づいて高速起動要求を行うか否かを決定し、該高速起動要求を前記通信リンクを介して前記サーバ装置に送信するステップであって、前記高速起動要求とは、前記加速送信用のビットレート及び加速送信期間で前記メディアコンテンツの送信を要求するコマンドを示すステップと
    をクライアント装置に実行させることを特徴とするコンピュータ可読記憶媒体。
  16. 前記コンピュータ実行可能な命令は、
    前記加速送信用のビットレートで送信されたメディアコンテンツを前記通信リンクを介して前記サーバ装置から受信するステップを実行しながら、
    前記受信したメディアコンテンツをバッファリングするステップと、
    引き続いて、前記バッファリングしたストリーミング対象メディアコンテンツをレンダリングするステップと
    をさらに含むことを特徴とする請求項15に記載のコンピュータ可読記憶媒体。
  17. 前記加速送信用のビットレートで送信されたメディアコンテンツを前記通信リンクを介して前記サーバ装置から受信するステップがさらに、
    最初に、離散的レンダリング点に関連付けられたストリーミング対象メディアコンテンツを受信するステップを含むことを特徴とする請求項16に記載のコンピュータ可読記憶媒体。
  18. 前記離散的レンダリング点がキーフレームを含むことを特徴とする請求項17に記載のコンピュータ可読記憶媒体。
  19. さらに、前記利用可能な通信リンクバンド幅を能動的に決定するためのコンピュータ実行可能な命令を含むことを特徴とする請求項15に記載のコンピュータ可読記憶媒体。
  20. 通信リンクを提供するように構成されたネットワークと、
    前記ネットワークに動作可能に結合されたサーバ装置と、
    前記ネットワークに動作可能に結合されると共に、前記通信リンクを介して前記サーバ装置に高速起動要求を送信し、前記サーバ装置から前記通信リンクを介してストリーミング可能なメディアコンテンツを受信するように構成されたクライアント装置と
    を含み、
    前記クライアント装置は、前記メディアコンテンツの加速送信用のビットレート及び加速送信期間を特定し、バッファの設定値、前記クライアント装置と前記サーバ装置間の通信リンクバンド幅及び前記メディアコンテンツの符号化ビットレートに基づいて高速起動要求を行うか否かを決定し、該高速起動要求を前記通信リンクを介して前記サーバ装置に送信し、
    前記加速送信用のビットレートとは、前記メディアコンテンツの符号化ビットレートを越えるビットレートであって、前記メディアコンテンツ受信時に利用可能な通信リンクバンド幅を超えないビットレートを示し、前記加速送信期間とは、前記メディアコンテンツの受信開始からの期間であって、前記加速送信用のビットレートで前記メディアコンテンツを受信する期間を示し、前記高速起動要求とは、前記加速送信用のビットレート及び加速送信期間で前記メディアコンテンツの送信を要求するコマンドを示すことを特徴とするシステム。
  21. 前記サーバ装置が、前記メディアコンテンツをバッファリングし、前記加速送信用のビットレートで前記バッファリングしたメディアコンテンツを前記クライアント装置に送信するように構成されていることを特徴とする請求項20に記載のシステム。
  22. 前記サーバ装置がさらに、前記バッファリングしたメディアコンテンツを前記加速送信用のビットレートで送信した後に、前記メディアコンテンツの後続する部分を前記符号化ビットレートにほぼ等しいビットレートで前記クライアント装置に送信するように構成されていることを特徴とする請求項21に記載のシステム。
  23. 前記バッファリングしたメディアコンテンツを前記クライアント装置に前記加速送信用のビットレートで送信する際に、前記サーバ装置は前記バッファリングしたメディアコンテンツ内で離散的レンダリング点の位置を特定し、かつ前記離散的レンダリング点を始点とする前記バッファリングしたメディアコンテンツの送信を開始することを特徴とする請求項21に記載のシステム。
  24. 前記離散的レンダリング点がキーフレームを含むことを特徴とする請求項23に記載のシステム。
  25. 前記ストリーミング可能なメディアコンテンツが、オンデマンドメディアコンテンツおよび放送メディアコンテンツを含むストリーミング可能なメディアコンテンツの群より選択されることを特徴とする請求項20に記載のシステム。
  26. 前記クライアント装置は、さらに、前記受信したメディアコンテンツをバッファリングし、かつ前記バッファリングしたストリーミング対象メディアコンテンツを引き続きレンダリングするように構成されていることを特徴とする請求項20に記載のシステム。
JP2008029720A 2001-06-28 2008-02-08 コンテンツのストリーミングに使用するための改善された起動方法および装置 Expired - Fee Related JP4273165B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/895,872 US6792449B2 (en) 2001-06-28 2001-06-28 Startup methods and apparatuses for use in streaming content

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002186970A Division JP2003143583A (ja) 2001-06-28 2002-06-26 コンテンツのストリーミングに使用するための改善された起動方法および装置

Publications (3)

Publication Number Publication Date
JP2008187723A JP2008187723A (ja) 2008-08-14
JP2008187723A5 JP2008187723A5 (ja) 2009-03-05
JP4273165B2 true JP4273165B2 (ja) 2009-06-03

Family

ID=25405205

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2002186970A Pending JP2003143583A (ja) 2001-06-28 2002-06-26 コンテンツのストリーミングに使用するための改善された起動方法および装置
JP2008029720A Expired - Fee Related JP4273165B2 (ja) 2001-06-28 2008-02-08 コンテンツのストリーミングに使用するための改善された起動方法および装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2002186970A Pending JP2003143583A (ja) 2001-06-28 2002-06-26 コンテンツのストリーミングに使用するための改善された起動方法および装置

Country Status (3)

Country Link
US (2) US6792449B2 (ja)
EP (1) EP1271953A3 (ja)
JP (2) JP2003143583A (ja)

Families Citing this family (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6978306B2 (en) * 2000-08-10 2005-12-20 Pts Corporation Multi-tier video delivery network
US6792449B2 (en) * 2001-06-28 2004-09-14 Microsoft Corporation Startup methods and apparatuses for use in streaming content
US6801964B1 (en) * 2001-10-25 2004-10-05 Novell, Inc. Methods and systems to fast fill media players
US7411901B1 (en) * 2002-03-12 2008-08-12 Extreme Networks, Inc. Method and apparatus for dynamically selecting timer durations
EP1493093A4 (en) * 2002-04-10 2008-04-23 Akamai Tech Inc METHOD AND SYSTEM FOR IMPROVING REAL FLOW DELIVERY QUALITY USING THE PRE-RAFALE TECHNIQUE
AU2003241772B2 (en) 2002-05-31 2008-11-06 Onkyo Corporation Network type content reproduction system
JP3925311B2 (ja) 2002-06-03 2007-06-06 ソニー株式会社 データ配信システム
US7457312B2 (en) * 2002-06-19 2008-11-25 Microsoft Corporation Bandwidth sharing in advanced streaming format
US7451229B2 (en) * 2002-06-24 2008-11-11 Microsoft Corporation System and method for embedding a streaming media format header within a session description message
US7644172B2 (en) * 2002-06-24 2010-01-05 Microsoft Corporation Communicating via a connection between a streaming server and a client without breaking the connection
US7725557B2 (en) * 2002-06-24 2010-05-25 Microsoft Corporation Client-side caching of streaming media content
US8117328B2 (en) * 2002-06-25 2012-02-14 Microsoft Corporation System and method for automatically recovering from failed network connections in streaming media scenarios
US8397269B2 (en) * 2002-08-13 2013-03-12 Microsoft Corporation Fast digital channel changing
US7290057B2 (en) * 2002-08-20 2007-10-30 Microsoft Corporation Media streaming of web content data
JP3779683B2 (ja) * 2003-01-16 2006-05-31 株式会社東芝 情報処理装置および通信制御方法
US7409454B2 (en) * 2003-06-02 2008-08-05 Microsoft Corporation Automatic detection of intermediate network device capabilities
US20040268400A1 (en) * 2003-06-26 2004-12-30 Microsoft Corporation Quick starting video content
US7054774B2 (en) 2003-06-27 2006-05-30 Microsoft Corporation Midstream determination of varying bandwidth availability
US20040267602A1 (en) * 2003-06-30 2004-12-30 Gaydos Robert C. Method, apparatus, and system for asymmetrically handling content requests and content delivery
US7392316B2 (en) * 2003-06-30 2008-06-24 Microsoft Corporation Client to server streaming of multimedia content using HTTP
US7941554B2 (en) * 2003-08-01 2011-05-10 Microsoft Corporation Sparse caching for streaming media
GB2406014B (en) 2003-09-10 2007-01-31 Thales Uk Plc Video system
JP4183586B2 (ja) * 2003-09-12 2008-11-19 三洋電機株式会社 映像表示装置
WO2005034089A1 (ja) * 2003-09-30 2005-04-14 Sony Corporation データ再生装置及び方法並びにプログラム
DE602004030487D1 (de) * 2004-01-30 2011-01-20 Ericsson Telefon Ab L M Paketablaufsteuerung zur Datenstromübertragung
US7840984B1 (en) 2004-03-17 2010-11-23 Embarq Holdings Company, Llc Media administering system and method
US8683535B2 (en) 2004-03-26 2014-03-25 Broadcom Corporation Fast channel change
US7818444B2 (en) 2004-04-30 2010-10-19 Move Networks, Inc. Apparatus, system, and method for multi-bitrate content streaming
US7162533B2 (en) 2004-04-30 2007-01-09 Microsoft Corporation Session description message extensions
US8868772B2 (en) 2004-04-30 2014-10-21 Echostar Technologies L.L.C. Apparatus, system, and method for adaptive-rate shifting of streaming content
US20050252958A1 (en) * 2004-05-13 2005-11-17 Lee Peter S System and method for wireless transfer of data content to a portable device
US7786891B2 (en) * 2004-08-27 2010-08-31 Embarq Holdings Company, Llc System and method for an interactive security system for a home
US8291448B2 (en) * 2004-09-15 2012-10-16 Nokia Corporation Providing zapping streams to broadcast receivers
US7840982B1 (en) 2004-09-28 2010-11-23 Embarq Holding Company, Llc Video-all call system and method for a facility
JP3847764B2 (ja) * 2004-11-12 2006-11-22 オンキヨー株式会社 ネットワーク型コンテンツ再生システム
US7574490B2 (en) * 2004-11-20 2009-08-11 Microsoft Corporation Strategies for configuring a server-based information-transmission infrastructure
KR20060059782A (ko) * 2004-11-29 2006-06-02 엘지전자 주식회사 영상신호의 스케일러블 프로그레시브 다운로딩을 지원하는방법
US8639796B2 (en) * 2004-12-16 2014-01-28 Hewlett-Packard Development Company, L.P. Monitoring the performance of a streaming media server using server-side and client-side measurements
CN100393068C (zh) * 2004-12-24 2008-06-04 腾讯科技(深圳)有限公司 一种缓存流媒体数据的方法
US8015306B2 (en) * 2005-01-05 2011-09-06 Control4 Corporation Method and apparatus for synchronizing playback of streaming media in multiple output devices
US7765573B1 (en) * 2005-03-08 2010-07-27 Embarq Holdings Company, LLP IP-based scheduling and control of digital video content delivery
US20060235883A1 (en) * 2005-04-18 2006-10-19 Krebs Mark S Multimedia system for mobile client platforms
US8244179B2 (en) 2005-05-12 2012-08-14 Robin Dua Wireless inter-device data processing configured through inter-device transmitted data
US8054849B2 (en) * 2005-05-27 2011-11-08 At&T Intellectual Property I, L.P. System and method of managing video content streams
KR100677462B1 (ko) * 2005-06-23 2007-02-02 엘지전자 주식회사 스트리밍서비스를 위한 휴대단말기의 대역폭산정시스템 및방법
US7681238B2 (en) * 2005-08-11 2010-03-16 Microsoft Corporation Remotely accessing protected files via streaming
US7676591B2 (en) * 2005-09-22 2010-03-09 Packet Video Corporation System and method for transferring multiple data channels
US20070130250A1 (en) * 2005-11-23 2007-06-07 Farheap Solutions, Inc. Catch-Up Streaming
JP5031230B2 (ja) * 2005-11-28 2012-09-19 キヤノン株式会社 データ送信装置及び方法
US20070143487A1 (en) * 2005-12-19 2007-06-21 Microsoft Corporation Encoding Enhancement
US7624417B2 (en) 2006-01-27 2009-11-24 Robin Dua Method and system for accessing media content via the internet
US7965771B2 (en) 2006-02-27 2011-06-21 Cisco Technology, Inc. Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network
US8218654B2 (en) 2006-03-08 2012-07-10 Cisco Technology, Inc. Method for reducing channel change startup delays for multicast digital video streams
WO2007114107A1 (ja) * 2006-03-30 2007-10-11 Pioneer Corporation コンテンツ送信システムにおけるサーバー装置およびコンテンツ送信方法
FR2905221B1 (fr) * 2006-08-28 2008-12-19 Canon Kk Procede et systemes pour optimiser la transmission d'un flux de donnees.
US8031701B2 (en) 2006-09-11 2011-10-04 Cisco Technology, Inc. Retransmission-based stream repair and stream join
US8631144B2 (en) * 2006-12-07 2014-01-14 Vidiator Enterprises Inc. System and method for selection of streaming media
US8224974B1 (en) * 2007-01-29 2012-07-17 Intuit Inc. Method and apparatus for downloading information
US7937531B2 (en) 2007-02-01 2011-05-03 Cisco Technology, Inc. Regularly occurring write back scheme for cache soft error reduction
US8769591B2 (en) 2007-02-12 2014-07-01 Cisco Technology, Inc. Fast channel change on a bandwidth constrained network
JP4943188B2 (ja) * 2007-03-08 2012-05-30 Kddi株式会社 マルチキャスト配信装置、マルチキャスト配信プログラム、および記録媒体
US7940644B2 (en) 2007-03-14 2011-05-10 Cisco Technology, Inc. Unified transmission scheme for media stream redundancy
JP5096027B2 (ja) * 2007-03-26 2012-12-12 ソフトバンクBb株式会社 コンテンツ配信システムおよびコンテンツ配信方法
US8027365B2 (en) * 2007-07-27 2011-09-27 Realnetworks, Inc. System and method for combining media data
KR20110138426A (ko) * 2007-07-30 2011-12-27 닛본 덴끼 가부시끼가이샤 변환 장치, 배신 시스템, 및 배신 방법
WO2009017105A1 (ja) * 2007-07-30 2009-02-05 Nec Corporation 通信端末、配信システム、変換方法、及びプログラム
US8438301B2 (en) * 2007-09-24 2013-05-07 Microsoft Corporation Automatic bit rate detection and throttling
WO2009041655A1 (ja) * 2007-09-28 2009-04-02 Sanyo Electric Co., Ltd. 映像記録再生装置、映像記録装置、及び映像符号化装置
US20090138614A1 (en) * 2007-11-28 2009-05-28 Motorola, Inc. Method and apparatus for streaming media in a communication network
CA2613821C (en) * 2007-12-07 2012-07-17 Clemente Naftali-Menajed Method and system to display a video in an email
US8787153B2 (en) 2008-02-10 2014-07-22 Cisco Technology, Inc. Forward error correction based data recovery with path diversity
US8237551B2 (en) 2008-04-30 2012-08-07 Centurylink Intellectual Property Llc System and method for in-patient telephony
US8325800B2 (en) 2008-05-07 2012-12-04 Microsoft Corporation Encoding streaming media as a high bit rate layer, a low bit rate layer, and one or more intermediate bit rate layers
US8379851B2 (en) 2008-05-12 2013-02-19 Microsoft Corporation Optimized client side rate control and indexed file layout for streaming media
US7996875B2 (en) 2008-05-20 2011-08-09 Microsoft Corporation Adaptive timeshift service
EP2129130A1 (fr) 2008-05-26 2009-12-02 THOMSON Licensing Procédé de transmission simplifié d'un flux de signaux entre un émetteur et un appareil électronique
US8370887B2 (en) 2008-05-30 2013-02-05 Microsoft Corporation Media streaming with enhanced seek operation
US8639830B2 (en) * 2008-07-22 2014-01-28 Control4 Corporation System and method for streaming audio
US8265140B2 (en) 2008-09-30 2012-09-11 Microsoft Corporation Fine-grained client-side control of scalable media delivery
WO2010041469A1 (ja) * 2008-10-09 2010-04-15 日本電気株式会社 コンテンツ配信システム、コンテンツ配信方法およびコンピュータプログラム
US20100161716A1 (en) * 2008-12-22 2010-06-24 General Instrument Corporation Method and apparatus for streaming multiple scalable coded video content to client devices at different encoding rates
US20100246685A1 (en) * 2009-03-31 2010-09-30 Alcatel-Lucent Usa Inc. Compressed video decoding delay reducer
US20110118858A1 (en) * 2009-11-13 2011-05-19 Apple Inc. Local storage of a portion of streamed media items
CN101729858A (zh) * 2009-12-14 2010-06-09 中兴通讯股份有限公司 一种蓝牙媒体的播放控制方法及系统
US20110191446A1 (en) * 2010-01-29 2011-08-04 Clarendon Foundation, Inc. Storing and streaming media content
US8769139B2 (en) * 2010-01-29 2014-07-01 Clarendon Foundation, Inc. Efficient streaming server
US20110191447A1 (en) * 2010-01-29 2011-08-04 Clarendon Foundation, Inc. Content distribution system
US20110191439A1 (en) * 2010-01-29 2011-08-04 Clarendon Foundation, Inc. Media content ingestion
US8260833B2 (en) * 2010-01-29 2012-09-04 Clarendon Foundation, Inc. Naming scheme for media storage
JP2012019270A (ja) * 2010-07-06 2012-01-26 Oki Networks Co Ltd コンテンツデータ受信再生装置、コンテンツデータ送受信システム及びコンテンツデータ送受信方法
US9363574B1 (en) * 2010-12-08 2016-06-07 Verint Americas Inc. Video throttling based on individual client delay
EP2538629A1 (en) * 2011-06-22 2012-12-26 Alcatel Lucent Content delivering method
KR20130089844A (ko) * 2012-01-06 2013-08-13 삼성전자주식회사 광고 제공 장치 및 방법
US9118743B2 (en) * 2013-05-23 2015-08-25 Voxer Ip Llc Media rendering control
US9392307B2 (en) 2013-07-01 2016-07-12 Ericsson Ab Smart pre-load for video-on-demand in an HTTP adaptive streaming environment
JP2015136059A (ja) 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
US9769239B2 (en) * 2014-09-30 2017-09-19 Qualcomm Incorporated Systems and methods for user agent signaling request acceleration by transport accelerator
US10498780B2 (en) * 2015-04-30 2019-12-03 Facebook, Inc. Systems and methods for streaming content
US20170127101A1 (en) * 2015-11-02 2017-05-04 Echostar Technologies L.L.C. Reducing startup latency in a video place-shifting system
US10075292B2 (en) 2016-03-30 2018-09-11 Divx, Llc Systems and methods for quick start-up of playback
US10568009B2 (en) 2016-07-14 2020-02-18 Viasat, Inc. Variable playback rate of streaming content for uninterrupted handover in a communication system
US10470091B2 (en) 2016-09-07 2019-11-05 Viasat, Inc. Variable size linear video content buffers for uninterrupted handover in a multi-beam satellite system
US20200021867A1 (en) * 2017-03-22 2020-01-16 Lg Electronics Inc. Broadcast signal transmitting and receiving method and device
KR102654716B1 (ko) 2019-02-11 2024-04-04 한화비전 주식회사 요청된 영상 재생시점에 따라 영상을 재생하는 방법 및 그 장치
US20200296462A1 (en) 2019-03-11 2020-09-17 Wci One, Llc Media content presentation
US20200296316A1 (en) 2019-03-11 2020-09-17 Quibi Holdings, LLC Media content presentation

Family Cites Families (111)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH021671A (ja) 1988-03-17 1990-01-05 Toshiba Corp パケット交換機の負荷制御方式
US4963995A (en) 1988-12-27 1990-10-16 Explore Technology, Inc. Audio/video transceiver apparatus including compression means
US5057932A (en) 1988-12-27 1991-10-15 Explore Technology, Inc. Audio/video transceiver apparatus including compression means, random access storage means, and microwave transceiver means
US5164839A (en) 1988-12-27 1992-11-17 Explore Technology, Inc. Method for handling audio/video source information
US5262875A (en) 1992-04-30 1993-11-16 Instant Video Technologies, Inc. Audio/video file server including decompression/playback means
US5412782A (en) 1992-07-02 1995-05-02 3Com Corporation Programmed I/O ethernet adapter with early interrupts for accelerating data transfer
US5440334A (en) 1993-02-01 1995-08-08 Explore Technology, Inc. Broadcast video burst transmission cyclic distribution apparatus and method
US20020048448A1 (en) 1993-03-29 2002-04-25 Microsoft Corporation Pausing the display of a television program as a signal including the television program is received
CA2130395C (en) 1993-12-09 1999-01-19 David G. Greenwood Multimedia distribution over wide area networks
JPH07219774A (ja) 1994-02-07 1995-08-18 Fujitsu Ltd データ処理装置および例外処理方法
CA2140850C (en) 1994-02-24 1999-09-21 Howard Paul Katseff Networked system for display of multimedia presentations
US5978567A (en) 1994-07-27 1999-11-02 Instant Video Technologies Inc. System for distribution of interactive multimedia and linear programs by enabling program webs which include control scripts to define presentation by client transceiver
US5758076A (en) 1995-07-19 1998-05-26 International Business Machines Corporation Multimedia server system having rate adjustable data retrieval based on buffer capacity
US5822524A (en) 1995-07-21 1998-10-13 Infovalue Computing, Inc. System for just-in-time retrieval of multimedia files over computer networks by transmitting data packets at transmission rate determined by frame size
US5787472A (en) 1995-07-31 1998-07-28 Ibm Corporation Disk caching system for selectively providing interval caching or segment caching of vided data
US5835495A (en) 1995-10-11 1998-11-10 Microsoft Corporation System and method for scaleable streamed audio transmission over a network
US5680461A (en) 1995-10-26 1997-10-21 Sun Microsystems, Inc. Secure network protocol system and method
US6041345A (en) 1996-03-08 2000-03-21 Microsoft Corporation Active stream format for holding multiple media streams
US5931961A (en) 1996-05-08 1999-08-03 Apple Computer, Inc. Discovery of acceptable packet size using ICMP echo
AU4229397A (en) 1996-07-25 1998-02-20 Hybrid Networks, Inc. High-speed internet access system
US5913038A (en) 1996-12-13 1999-06-15 Microsoft Corporation System and method for processing multimedia data streams using filter graphs
US6005621A (en) 1996-12-23 1999-12-21 C-Cube Microsystems, Inc. Multiple resolution video compression
US6141053A (en) * 1997-01-03 2000-10-31 Saukkonen; Jukka I. Method of optimizing bandwidth for transmitting compressed video data streams
US6014706A (en) 1997-01-30 2000-01-11 Microsoft Corporation Methods and apparatus for implementing control functions in a streamed video display system
US6292834B1 (en) 1997-03-14 2001-09-18 Microsoft Corporation Dynamic bandwidth selection for efficient transmission of multimedia streams in a computer network
US6118817A (en) 1997-03-14 2000-09-12 Microsoft Corporation Digital video signal encoder and encoding method having adjustable quantization
US6111567A (en) 1997-04-03 2000-08-29 Microsoft Corporation Seamless multimedia branching
US6209041B1 (en) 1997-04-04 2001-03-27 Microsoft Corporation Method and computer program product for reducing inter-buffer data transfers between separate processing components
US5963202A (en) 1997-04-14 1999-10-05 Instant Video Technologies, Inc. System and method for distributing and managing digital video information in a video distribution network
US6216163B1 (en) 1997-04-14 2001-04-10 Lucent Technologies Inc. Method and apparatus providing for automatically restarting a client-server connection in a distributed network
US6892354B1 (en) 1997-04-16 2005-05-10 Sony Corporation Method of advertising on line during a communication link idle time
US6195692B1 (en) 1997-06-02 2001-02-27 Sony Corporation Television/internet system having multiple data stream connections
US6014694A (en) * 1997-06-26 2000-01-11 Citrix Systems, Inc. System for adaptive video/audio transport over a network
US6385647B1 (en) * 1997-08-18 2002-05-07 Mci Communications Corporations System for selectively routing data via either a network that supports Internet protocol or via satellite transmission network based on size of the data
JPH11163947A (ja) 1997-09-22 1999-06-18 Toshiba Corp ゲートウェイ装置、無線端末装置、ルータ装置および通信ネットワークのゲートウェイ制御方法
US5996015A (en) 1997-10-31 1999-11-30 International Business Machines Corporation Method of delivering seamless and continuous presentation of multimedia data files to a target device by assembling and concatenating multimedia segments in memory
JP3655071B2 (ja) 1997-10-31 2005-06-02 株式会社ニデック 眼屈折力測定装置
JP3235655B2 (ja) 1997-12-01 2001-12-04 日本電気株式会社 バースト性をもつ低速汎用データの固定長パケット多重装置
KR100251735B1 (ko) * 1997-12-29 2000-04-15 윤종용 에이티엠 스위치에서 저장영역 손실방지 장치 및방법
US5983263A (en) 1998-01-02 1999-11-09 Intel Corporation Method and apparatus for transmitting images during a multimedia teleconference
US6161201A (en) 1998-02-26 2000-12-12 3Com Corporation Method and apparatus for concurrent interaction with a modem having an open connection
JP3844588B2 (ja) 1998-03-05 2006-11-15 富士通株式会社 情報管理システム、ローカルコンピュータ、及び情報取得プログラムを記録したコンピュータ読み取り可能な記録媒体
US6327421B1 (en) 1998-03-10 2001-12-04 International Business Machines Corporation Multiple speed fast forward/rewind compressed video delivery system
US6054943A (en) 1998-03-25 2000-04-25 Lawrence; John Clifton Multilevel digital information compression based on lawrence algorithm
US6292880B1 (en) 1998-04-15 2001-09-18 Inktomi Corporation Alias-free content-indexed object cache
US6018359A (en) * 1998-04-24 2000-01-25 Massachusetts Institute Of Technology System and method for multicast video-on-demand delivery system
US6314492B1 (en) 1998-05-27 2001-11-06 International Business Machines Corporation System and method for server control of client cache
US6359883B1 (en) * 1998-06-23 2002-03-19 The Kohl Group, Inc. Reducing the variability of the data rates of high-rate data streams in order to communicate such streams over a low-rate channel of fixed capacity
US6421348B1 (en) 1998-07-01 2002-07-16 National Semiconductor Corporation High-speed network switch bus
US6480498B1 (en) 1998-07-01 2002-11-12 National Semiconductor Corporation High speed network switch bus clock
JP3602972B2 (ja) 1998-07-28 2004-12-15 富士通株式会社 通信性能測定装置及びその測定方法
GB9822550D0 (en) * 1998-10-15 1998-12-09 British Telecomm Computer communications
US6502135B1 (en) 1998-10-30 2002-12-31 Science Applications International Corporation Agile network protocol for secure communications with assured system availability
US6249844B1 (en) 1998-11-13 2001-06-19 International Business Machines Corporation Identifying, processing and caching object fragments in a web environment
US6553376B1 (en) 1998-11-18 2003-04-22 Infolibria, Inc. Efficient content server using request redirection
US6449269B1 (en) * 1998-12-31 2002-09-10 Nortel Networks Limited Packet voice telephony system and method
US6351767B1 (en) 1999-01-25 2002-02-26 International Business Machines Corporation Method and system for automatically caching dynamic content based on a cacheability determination
JP3587352B2 (ja) 1999-02-04 2004-11-10 富士通株式会社 ネットワーク通信性能測定方法及び装置並びにネットワーク通信性能測定プログラムを格納したコンピュータ読取り可能な記録媒体
US6691312B1 (en) * 1999-03-19 2004-02-10 University Of Massachusetts Multicasting video
US6405256B1 (en) * 1999-03-31 2002-06-11 Lucent Technologies Inc. Data streaming using caching servers with expandable buffers and adjustable rate of data transmission to absorb network congestion
US6725333B1 (en) 1999-04-22 2004-04-20 International Business Machines Corporation System and method for managing cachable entities
US6405258B1 (en) * 1999-05-05 2002-06-11 Advanced Micro Devices Inc. Method and apparatus for controlling the flow of data frames through a network switch on a port-by-port basis
US6369835B1 (en) 1999-05-18 2002-04-09 Microsoft Corporation Method and system for generating a movie file from a slide show presentation
US6611868B1 (en) 1999-05-21 2003-08-26 3Com Corporation Method and system for automatic link hang up
US6735634B1 (en) 1999-06-10 2004-05-11 Blue Coat Systems Method for real time protocol media recording
JP3463803B2 (ja) 1999-11-09 2003-11-05 松下電器産業株式会社 クラスタサーバ装置
US6643259B1 (en) 1999-11-12 2003-11-04 3Com Corporation Method for optimizing data transfer in a data network
US6779043B1 (en) 1999-11-16 2004-08-17 National Semiconductor Corporation Network address manager
US7051110B2 (en) 1999-12-20 2006-05-23 Matsushita Electric Industrial Co., Ltd. Data reception/playback method and apparatus and data transmission method and apparatus for providing playback control functions
US6329165B1 (en) 1999-12-30 2001-12-11 Nalco Chemical Company Measurement and control of sessile and planktonic microbiological activity in industrial water systems
US6519648B1 (en) * 2000-01-24 2003-02-11 Friskit, Inc. Streaming media search and continuous playback of multiple media resources located on a network
US6389467B1 (en) 2000-01-24 2002-05-14 Friskit, Inc. Streaming media search and continuous playback system of media resources located by multiple network addresses
US7159233B2 (en) * 2000-01-28 2007-01-02 Sedna Patent Services, Llc Method and apparatus for preprocessing and postprocessing content in an interactive information distribution system
SE0000908L (sv) 2000-03-20 2001-09-21 Ericsson Telefon Ab L M Load regulation
US6765878B1 (en) 2000-03-28 2004-07-20 Intel Corporation Selective use of transmit complete interrupt delay on small sized packets in an ethernet controller
US7007090B1 (en) 2000-03-31 2006-02-28 Intel Corporation Techniques of utilizing actually unused bandwidth
US6952424B1 (en) 2000-04-13 2005-10-04 International Business Machines Corporation Method and system for network processor scheduling outputs using queueing
US6760749B1 (en) 2000-05-10 2004-07-06 Polycom, Inc. Interactive conference content distribution device and methods of use thereof
US6801947B1 (en) * 2000-08-01 2004-10-05 Nortel Networks Ltd Method and apparatus for broadcasting media objects with guaranteed quality of service
US7185082B1 (en) * 2000-08-09 2007-02-27 Microsoft Corporation Fast dynamic measurement of connection bandwidth using at least a pair of non-compressible packets having measurable characteristics
US6741648B2 (en) * 2000-11-10 2004-05-25 Nokia Corporation Apparatus, and associated method, for selecting an encoding rate by which to encode video frames of a video sequence
US7145870B2 (en) 2000-11-29 2006-12-05 Altera Corporation Method and apparatus for combining dedicated and shared networks for efficient data transmission
US20020077900A1 (en) 2000-12-14 2002-06-20 Thompson Tiffany A. Internet protocol-based interstitial advertising
US6772375B1 (en) 2000-12-22 2004-08-03 Network Appliance, Inc. Auto-detection of limiting factors in a TCP connection
US6611898B1 (en) 2000-12-22 2003-08-26 Convergys Customer Management Group, Inc. Object-oriented cache management system and method
US6407680B1 (en) 2000-12-22 2002-06-18 Generic Media, Inc. Distributed on-demand media transcoding system and method
US7356605B1 (en) * 2000-12-29 2008-04-08 Cisco Technology, Inc. System and method for controlling delivery of streaming media
US7054949B2 (en) 2001-01-19 2006-05-30 World Streaming Network, Inc. System and method for streaming media
US6990512B1 (en) * 2001-03-19 2006-01-24 Novell, Inc. Method and system for using live time shift technology to control a multimedia file
WO2002078348A2 (en) 2001-03-23 2002-10-03 Popwire.Com Method and apparatus for streaming video
US20020138641A1 (en) 2001-03-26 2002-09-26 Taylor Christopher Stephen Targeted multimedia proxy server (tmps)
US20020194608A1 (en) 2001-04-26 2002-12-19 Goldhor Richard S. Method and apparatus for a playback enhancement system implementing a "Say Again" feature
US7054911B1 (en) 2001-06-12 2006-05-30 Network Appliance, Inc. Streaming media bitrate switching methods and apparatus
US6742082B1 (en) 2001-06-12 2004-05-25 Network Appliance Pre-computing streaming media payload method and apparatus
US7076560B1 (en) 2001-06-12 2006-07-11 Network Appliance, Inc. Methods and apparatus for storing and serving streaming media data
US6986018B2 (en) 2001-06-26 2006-01-10 Microsoft Corporation Method and apparatus for selecting cache and proxy policy
US6792449B2 (en) * 2001-06-28 2004-09-14 Microsoft Corporation Startup methods and apparatuses for use in streaming content
US6601009B2 (en) * 2001-07-12 2003-07-29 Yahoo Inc Method and system of automatic bandwidth detection
US20020049817A1 (en) * 2001-07-12 2002-04-25 Eatamar Drory Storageless system and method for unified messaging on existing mail accounts via standard internet mail protocols
US20030055809A1 (en) 2001-09-18 2003-03-20 Sun Microsystems, Inc. Methods, systems, and articles of manufacture for efficient log record access
US20030099364A1 (en) 2001-11-28 2003-05-29 Thompson Mark R. Playback manipulation of HTTP streamed content objects
ATE470311T1 (de) * 2002-02-22 2010-06-15 Nds Ltd Verarbeitung von verschlüsseltem datenpaketstrom
EP2403262A3 (en) 2002-04-26 2012-01-25 Sony Corporation Encoding device and method, decoding device and method, editing device and method, recoding medium, and program
US7133881B2 (en) 2002-04-29 2006-11-07 Intel Corporation Encoding and transferring media content onto removable storage
US7457312B2 (en) 2002-06-19 2008-11-25 Microsoft Corporation Bandwidth sharing in advanced streaming format
US7451229B2 (en) 2002-06-24 2008-11-11 Microsoft Corporation System and method for embedding a streaming media format header within a session description message
US20040003101A1 (en) 2002-06-26 2004-01-01 Roth David J. Caching control for streaming media
US7401221B2 (en) 2002-09-04 2008-07-15 Microsoft Corporation Advanced stream format (ASF) data stream header object protection
US7020087B2 (en) 2003-01-13 2006-03-28 Motorola, Inc. Segmented and distributed path optimization in a communication network
US7454510B2 (en) 2003-05-29 2008-11-18 Microsoft Corporation Controlled relay of media streams across network perimeters
US7054774B2 (en) 2003-06-27 2006-05-30 Microsoft Corporation Midstream determination of varying bandwidth availability

Also Published As

Publication number Publication date
EP1271953A3 (en) 2005-04-20
US7594025B2 (en) 2009-09-22
US20030005139A1 (en) 2003-01-02
EP1271953A2 (en) 2003-01-02
US20050044166A1 (en) 2005-02-24
US6792449B2 (en) 2004-09-14
JP2008187723A (ja) 2008-08-14
JP2003143583A (ja) 2003-05-16

Similar Documents

Publication Publication Date Title
JP4273165B2 (ja) コンテンツのストリーミングに使用するための改善された起動方法および装置
KR101153153B1 (ko) 대역폭이 제한된 네트워크를 통한 미디어 트랜스레이팅
US8375140B2 (en) Adaptive playback rate with look-ahead
US20180295174A1 (en) Apparatus, system, and method for multi-bitrate content streaming
US7720983B2 (en) Fast startup for streaming media
US8984570B2 (en) Method and apparatus for supporting time shift playback in adaptive HTTP streaming transmission solution
US7725557B2 (en) Client-side caching of streaming media content
US7650421B2 (en) Adaptable accelerated content streaming
US20150271231A1 (en) Transport accelerator implementing enhanced signaling
JP2006345582A (ja) メディアデータをストリーミングする方法、システム及びクライアント装置
WO2012171507A1 (zh) 向客户端传输数据文件的方法和装置
US10015225B2 (en) Method for dynamic adaptation of the reception bitrate and associated receiver
US20160072864A1 (en) Method and client terminal for receiving a multimedia content split into at least two successive segments, and corresponding computer program product and computer readable mediium
JP2005537742A (ja) マルチメディアデータのストリーミング方法
WO2011143916A1 (zh) 媒体适配的方法和装置
KR101164746B1 (ko) 실시간 스트리밍 프로토콜을 기반으로 한 동영상 재생 서비스에서 동영상 재생 지연 보상 시스템 및 방법
US11082474B2 (en) Data buffering method and apparatus in adaptive streaming service
JP5610743B2 (ja) コンテンツ受信方法及び装置
JP4773505B2 (ja) マルチメディアチャネルの切り替え
CN112823527B (zh) 在能够运行一个自适应流传输会话的设备处实现的方法以及对应的设备
KR20220075401A (ko) 비디오를 전송 및 수신하기 위한 방법 및 장치

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090116

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: 20090130

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090302

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4273165

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130306

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130306

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140306

Year of fee payment: 5

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

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

LAPS Cancellation because of no payment of annual fees