JP2002314975A - 漸進的により高品質のバージョンのオーディオおよび/またはビデオプログラムを得るための方法およびコンピュータネットワーク - Google Patents

漸進的により高品質のバージョンのオーディオおよび/またはビデオプログラムを得るための方法およびコンピュータネットワーク

Info

Publication number
JP2002314975A
JP2002314975A JP2002040625A JP2002040625A JP2002314975A JP 2002314975 A JP2002314975 A JP 2002314975A JP 2002040625 A JP2002040625 A JP 2002040625A JP 2002040625 A JP2002040625 A JP 2002040625A JP 2002314975 A JP2002314975 A JP 2002314975A
Authority
JP
Japan
Prior art keywords
program
layer
quality version
network
data
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.)
Granted
Application number
JP2002040625A
Other languages
English (en)
Other versions
JP2002314975A5 (ja
JP4818562B2 (ja
Inventor
David J Gemmell
ジェイ.ゲメル デービッド
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 JP2002314975A publication Critical patent/JP2002314975A/ja
Publication of JP2002314975A5 publication Critical patent/JP2002314975A5/ja
Application granted granted Critical
Publication of JP4818562B2 publication Critical patent/JP4818562B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • 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/25Management 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/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2543Billing, e.g. for subscription services
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • 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
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (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)

Abstract

(57)【要約】 【課題】 クライアントサーバベースのネットワークを
介して漸進的により高品質のバージョンのオーディオお
よび/またはビデオプログラムを提供する。 【解決手段】 クライアントが、特定のプログラムを閲
覧するユーザコマンドに応答して、そのプログラムに関
連する階層化データをサーバに要求する。また、ネット
ワーク上で利用可能な帯域幅に基づいて、連続する層が
いくつ送信されるべきかについても指定する。次いで、
サーバからデータを受信し、キャッシュし、受信したと
きレンダリングし、閲覧者に提示する。より高品質のバ
ージョンのプログラムを求める要求をユーザから受け取
ると、プログラムに関連するエンハンス層を、利用可能
な帯域幅で可能な限り多く要求する。要求したデータを
受信し、そのデータを、先にストアしたより下位の層デ
ータと結合させ、より高品質のバージョンのプログラム
をレンダリングし、その新しいバージョンをユーザに提
示する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はストリーミングメデ
ィアレンダリングに関し、より詳細には、クライアント
サーバベースのネットワークを介して漸進的により高品
質のバージョンのオーディオおよび/またはビデオプロ
グラムを得るためのシステムおよび方法に関する。
【0002】
【従来の技術】オーディオビデオ情報は、ネットワーク
接続、特にインターネットを介してサーバからクライア
ントに送信されるのが一般的である。例えば、インター
ネット上の多くのニュースおよびスポーツのウェブサイ
トは、ユーザがアクセスできる短いビデオクリップを含
む。これを行う典型的な方法の1つは、ユーザが所望の
クリップに関連するデータをダウンロードすることであ
る。これは、ユーザに関連するクライアントコンピュー
タが、データのあるサーバにデータを要求することによ
って達成される。次いでサーバは、要求されたデータ
を、ネットワークを介してクライアントに転送する。一
旦すべてのデータがクライアントによって受信される
と、クライアントコンピュータは、通常の方式でそれを
レンダリングし、ユーザに提示する。しかし、ネットワ
ーク、特にインターネットを介してデータが転送される
とき、サーバとクライアントとの間のチャネルの容量は
しばしば2桁または3桁の大きさで大きく変わる可能性
がある。これらの容量差が存在するのは、特定のクライ
アントとの接続に関連するデータ伝送速度が変わる可能
性があるからである(例えば電話回線容量、LANおよ
び/またはモデム速度)。この容量の不均一性は、高品
質のオーディオおよびビデオが望まれる場合特に問題を
引き起こす可能性がある。例えば、高品質の、したがっ
て広帯域幅のバージョンのビデオクリップをインターネ
ット上のウェブサイトからダウンロードすることは、ク
リップ自体の時間よりもずっと長く待つことを意味する
可能性がある。したがって、ユーザはビデオクリップを
見るために待たなければならず、しばしばユーザを失望
させることになる。さらに、ユーザは、ビデオクリップ
を閲覧しなければそれが興味あるものか否かわからない
場合もあり、したがって、興味もないかもしれないもの
をダウンロードするために待つのは、二重に興醒めであ
る。
【0003】ダウンロードの問題は、リアルタイムユニ
キャストマルチメディアプレゼンテーションと呼ばれる
形のオーディオビデオデータ転送を用いることによって
回避することができる。本質的にこの手法は、要求され
たビデオプログラムに関連するデータを、ネットワーク
を介してサーバからクライアントにストリーミングする
ことを含む。データがクライアントによって受信される
のに伴って、データは、ほぼリアルタイムベースでレン
ダリングされてユーザに提示される。しかし、このタイ
プの転送の場合でもまた、ネットワーク、特にインター
ネットに典型的な前述の帯域幅制限が問題を生む。例え
ば、インターネットのようなネットワーク上で利用可能
な通常の帯域幅では、高品質のカラービデオのストリー
ミングができない。したがって、サーバが提供すること
のできる最高品質の送信を受信するのに利用可能な帯域
幅を、特定のクライアントが有しない場合がある。
【0004】この帯域幅の問題を克服するために、オー
ディオビデオ情報を階層化手法によって送信することが
できる。階層化手法では、オーディオビデオ情報が重要
な層としてエンコードされる。これらの各層は別々のデ
ータストリームで送信され、データストリームは本質的
に一連のパケットである。ベース層は、許容できる最低
限の品質のために最小限の情報を含む情報ストリームで
ある。後続の各層は、前の層をエンハンスするものだ
が、より低い層に含まれるデータを繰り返すことはな
い。より高い品質を得るためには、クライアントは、所
望の品質が得られるより高い層に加えて、より低い層も
受信しなければならない。したがって、少なくとも1つ
のベース層と、追加で1つまたは複数のより上位のエン
ハンス層(enhancement layer)とが
ある点で、これらの層は階層型である。実際は、ベース
層から上にいくつかの階層が積み重なっているものとす
ることができ、後続の各層は、1つまたは複数のより下
位の層のデータに依存し、これらのより下位の層をエン
ハンスしている。階層化ビデオプログラムの例示的な
(ただしおそらく特に現実的というわけではない)一例
は、奇数数字ごとのビデオフレームの白黒ビデオからな
るベース層、偶数数字ごとのビデオフレームの白黒ビデ
オからなる第2の層、およびすべてのフレームに関する
カラー情報からなる第3の層を含む。第1の層だけを再
生すると、2分の1のフレームレート(すなわち多少ぎ
くしゃくする)の白黒ビデオが得られることになる。第
1の層と第2の層を一緒に再生すると、完全なフレーム
レート(滑らかな動き)の白黒ビデオが得られることに
なる。この3層をすべて再生すると、完全なフレームレ
ートのカラービデオが得られることになる。
【0005】階層化手法では、クライアントは、各層の
帯域幅の総計がネットワーク上で利用可能な帯域幅より
も大きくならない限り、望むだけの層を要求することが
できる。例えば、クライアントが28.8Kbpsモデ
ムでインターネットに接続されている場合は、8Kbp
sビデオ層1つ、2つ、または3つに申し込むことが可
能である。4つ以上のこのような層に申し込む場合は、
確実に輻輳が生じて多くのパケットがランダムにドロッ
プされることになり、ビデオ品質が低下する。パケット
ドロップを観察することにより、サポートできる最大数
の層を決定することができる。
【0006】
【発明が解決しようとする課題】本発明は、階層化ユニ
キャスト手法を採用したシステムおよびプロセスを対象
とする。これらは両方とも、ユーザが後で興味ないと判
断することになるオーディオビデオ(AV)プログラム
をダウンロードすることに伴う遅延および時間浪費をユ
ーザが回避できるようにし、同時に、プログラムがユー
ザにとって興味あるものである場合には、より高品質の
バージョンのプログラムをユーザが得られるようにす
る。現在、非常に多くの様々な階層化技法が用いられて
おり、これらのどれを本発明と共に用いてもよいことに
留意されたい。
【0007】
【課題を解決するための手段】本発明による階層化ユニ
キャスト手法は、一般に次のように達成される。特定の
AVプログラムを閲覧するためのユーザコマンドに応答
して、クライアントは、関連する階層化AVデータのあ
るサーバに、ネットワークを介してそのデータをクライ
アントに送信するよう要求する。こうする際に、クライ
アントはまた、ベース層から連続する層がいくつ送信さ
れるべきかについても指定する。この決定は、クライア
ントとサーバの間のネットワークリンク上で現在利用可
能な帯域幅に基づく。サーバは、クライアントの要求を
受信すると、ネットワークを介して要求のデータをクラ
イアントに送信する。クライアントは、サーバからデー
タを受信し、受信したときレンダリングし、従来の方法
によって閲覧者に提示する。クライアントはまた、受信
したデータを将来使用するためにキャッシュもする。
【0008】レンダリングされてユーザに提示されるデ
ータは通常、非常に基本的なものとなる。これは、イン
ターネットなどに関連する通常の帯域幅制限のため、通
常はベース層およびおそらくわずかな下位のエンハンス
層だけしか要求することができないからである。プロセ
ス中のこの時点で、ユーザは3つの選択肢を有する。A
Vプログラムがユーザにとって興味ないものである場合
は、ユーザは何もしなくてよく、追加のエンハンス層デ
ータは送信されない。あるいは、ユーザは着信データス
トリームの受信を終了するように指示することができ
る。あるいは最後に、ユーザは、AVプログラムを検討
し、より高品質のバージョンのプログラムを受信したい
と思うほど十分に興味を持つことができる。このために
ユーザは、エンハンスバージョンのプログラムを提供す
るようにクライアントに命令することになる。
【0009】ユーザがエンハンスバージョンのAVプロ
グラムを要求した場合、クライアントは、再度サーバに
所望のプログラムに関連するAVデータがネットワーク
を介してクライアントに送信されるように、提供するこ
とを要求することになる。しかし今回は、クライアント
は、前回の反復で要求されなかった層の最下位の層から
連続するエンハンス層を、利用可能な帯域幅で可能な限
り多く要求する。これに応答して、サーバは、要求され
たデータを前述の方式と同じようにして送信する。クラ
イアントは、要求したデータを受信すると、使用されて
いる階層化手法のタイプに適用可能な標準的方法を用い
て、そのデータを先にストア済みのより下位の層データ
と結合させる。次いで、結合させたデータを使用してプ
ログラムをレンダリングし、ユーザに提示する。レンダ
リングされたプログラムは、先に閲覧されたプログラム
の、より高品質のバージョンを提示することになる。ク
ライアントはまた、この新しいデータを、同じプログラ
ムに関連する以前ストアしたデータと共に、将来使用す
るためにストアする。
【0010】この時点で、ユーザは先に論じたのと同じ
3つのオプションを有し、ユーザがどのオプションを選
択するかに応じて、プロセスは適切に繰り返される。例
えば、ユーザがより一層高品質のAVプログラムを提供
してほしいと思う場合は、より多くのエンハンスデータ
層(サーバから入手可能なものがあるとして)がクライ
アントから要求され、受信時には前述のように処理され
る。
【0011】前述の階層化ユニキャストシステムおよび
プロセスは、層データストリーム全体に適用することが
でき、したがって、単一のクライアント要求により、要
求された層のデータストリーム全体がサーバから送信さ
れるようにすることができることに留意されたい。しか
し、必ずしもそうである必要はない。利用可能な帯域幅
は、要求された層を送信するのにかかる時間にわたって
大きく変化する場合がある。このことに鑑みて、前述の
システムおよびプロセスを、層データストリーム全体で
なく、AVプログラムのセグメントを表す何らかのスト
リーム部分に適用することもできる。言い換えれば、ク
ライアントは、一組の層を全体として要求するのではな
く、現在利用可能な帯域幅に基づいて、関係する各層の
同サイズであり対応する部分だけを要求する。層部分
は、AVプログラムの同じ時間セグメントに関係する点
で対応する。残りの前述の動作は、代わりに層部分のデ
ータに対して行われることを除いては同じである。この
結果、各層ストリームの一部に関係するデータが受信さ
れ、レンダリングされ、キャッシュされる。次いでクラ
イアントは、次に続くAVプログラム層部分を要求し、
プログラム全体をユーザに対して再生するまで受信、レ
ンダリング、およびキャッシュのプロセスを繰り返す。
層部分の各組が要求されるのに伴い、関係する層の数
が、そのときに利用可能なネットワーク帯域幅に基づい
て再評価されることに留意されたい。したがって、各要
求により、同数の、またはより少ない、またはより多く
の層の各部分が要求されることになる場合がある。ユー
ザがより高品質のバージョンのAVプログラムを再生す
るように指示した場合、クライアントは、考慮中のプロ
グラムのセグメントに関連する、先に受信した層部分か
らみて次に高いレベルを表す層から、ネットワーク上の
現在の帯域幅条件で可能な最大数のエンハンス層に関連
する層部分をプログラムのセグメントごとに要求するこ
とを除いては、前述のプロセスを繰り返す。
【0012】前述の階層化ユニキャストプレゼンテーシ
ョンシステムおよびプロセスは、事前フェッチオプショ
ン(pre−fetching option)をさら
に含むことができる。このオプションは、より低品質の
前バージョンのプログラムに関連する層がすべて要求さ
れた後で、より高品質のバージョンのプログラムを提供
するのに必要な追加のエンハンス層がクライアントによ
って自動的に要求、受信、およびキャッシュされるよう
にするか否かを、ユーザが選択することを可能にする。
これは、ユーザがより高品質のバージョンを要求する前
に行われることに留意されたい。事前フェッチオプショ
ンにより、より高品質のバージョンのAVプログラムを
レンダリングするのに必要な層データがクライアントの
メモリ中に手近にあることになり、それにより、クライ
アントはより迅速にユーザにプログラムを提供すること
ができる。
【0013】この階層化ユニキャスト方式をAVプログ
ラムとの関連で述べたが、本発明はオーディオのみまた
はビデオのみのプログラムにも等しく適用可能であるこ
とに留意されたい。
【0014】さらに、本発明による階層化ユニキャスト
システムおよびプロセスは有利にも、インターネットの
ウェブサイトが、ウェブサイトを訪れた申込み者に高品
質バージョンのAVプログラムを販売するために採用す
ることができることにも留意されたい。「ベース品質」
バージョンのプログラムは、サイト訪問者に無料または
わずかな料金で提供することができる。訪問者は、ベー
スバージョンのAVプログラムが十分に興味あるもので
あれば、品質の改善したバージョンのプログラムの閲覧
を有料で申し込むことができる。これは、前述のよう
に、訪問者に関連するクライアントコンピュータにエン
ハンス層を送信することで達成される。次いでクライア
ントコンピュータは、エンハンス層データを、先にキャ
ッシュした層データと結合させて、訪問者が閲覧するた
めのより高品質のバージョンのプログラムを製造する。
次いで訪問者は、ウェブサイトに関連するサーバがより
上位の利用可能なエンハンス層を有する限り、より一層
高品質のバージョンのプログラムを閲覧する要求を繰り
返すこともできる。
【0015】以上に述べた利点に加え、本発明のその他
の利点も、後続の詳細な説明を添付の図面と共に読めば
明らかになるであろう。
【0016】本発明の具体的な特徴、態様、および利点
は、後続の説明、頭記の特許請求の範囲、および添付の
図面に関してよりよく理解されるであろう。
【0017】
【発明の実施の形態】本発明の好ましい実施形態に関す
る以下の記述では、その一部をなす添付の図面を参照す
るが、これらの図面には、本発明を実施できる具体的な
実施形態が例として示されている。本発明の範囲を逸脱
することなく、他の実施形態を利用することもでき、か
つ構造的な変更を加えることもできることを理解された
い。
【0018】本発明の好ましい実施形態に関する記述を
提供する前に、本発明を実施できる適したコンピューテ
ィング環境について簡単かつ一般的に記述する。図1
に、本発明を実施できる適したコンピューティングシス
テム環境100の例を示す。コンピューティングシステ
ム環境100は、適したコンピューティング環境の一例
でしかなく、本発明の使用または機能の範囲に関してい
かなる限定も示すものではない。コンピューティング環
境100はまた、例示的な動作環境100中に示すコン
ポーネントのいずれか1つまたはそれらの組合せに関し
てどのような依存も要件も有しないと解釈すべきであ
る。
【0019】本発明は、その他の多くの汎用または専用
コンピューティングシステム環境または構成でも動作す
る。本発明と共に使用するのに適した、周知のコンピュ
ーティングシステム、環境、および/または構成の例と
しては、パーソナルコンピュータ、サーバコンピュー
タ、ハンドヘルドデバイスまたはラップトップデバイ
ス、マルチプロセッサシステム、マイクロプロセッサベ
ースのシステム、セットトップボックス、プログラム可
能な消費者用の電子機器、ネットワークPC、ミニコン
ピュータ、メインフレームコンピュータ、以上のシステ
ムまたはデバイスのいずれかを含む分散コンピューティ
ング環境などが挙げられるが、これらに限定されない。
【0020】本発明は、コンピュータによって実行され
るプログラムモジュールなどのコンピュータ実行可能命
令の一般的なコンテキストで述べることができる。一般
にプログラムモジュールは、特定のタスクを実施するか
特定の抽象データ型を実装するルーチン、プログラム、
オブジェクト、コンポーネント、データ構造などを含
む。本発明はまた、通信ネットワークを介してリンクさ
れたリモート処理デバイスによってタスクが実行される
分散コンピューティング環境で実施することもできる。
分散コンピューティング環境では、プログラムモジュー
ルは、メモリ記憶デバイスを含めたローカルとリモート
の両方のコンピュータ記憶媒体中に位置することができ
る。
【0021】図1を参照すると、本発明を実施するため
の例示的なシステムが、コンピュータ110の形をとる
汎用コンピューティングデバイスを含んでいる。コンピ
ュータ110のコンポーネントとしては、プロセッシン
グユニット120と、システムメモリ130と、システ
ムメモリを含めた様々なシステムコンポーネントをプロ
セッシングユニット120に結合するシステムバス12
1とを挙げることができるが、これらに限定しない。シ
ステムバス121は、様々なバスアーキテクチャのいず
れかを用いたメモリバスまたはメモリコントローラ、周
辺バス、およびローカルバスを含めた、いくつかのタイ
プのバス構造のいずれでもよい。限定ではなく例とし
て、このようなアーキテクチャには、ISA(Indu
stryStandard Architectur
e)バス、MCA(Micro Channel Ar
chitecture)バス、EISA(Enhanc
edISA)バス、VESA(Video Elect
ronics Standards Associat
ion)ローカルバス、およびメザニンバスとも呼ばれ
るPCI(Peripheral Component
Interconnect)バスが含まれる。
【0022】コンピュータ110は通常、様々なコンピ
ュータ可読媒体を備える。コンピュータ可読媒体は、コ
ンピュータ110がアクセスできる任意の利用可能な媒
体とすることができ、揮発性媒体と不揮発性媒体、取外
し可能媒体と取外し不可能媒体の両方が含まれる。限定
ではなく例として、コンピュータ可読媒体には、コンピ
ュータ記憶媒体および通信媒体を備えることができる。
コンピュータ記憶媒体には、コンピュータ可読命令、デ
ータ構造、プログラムモジュール、またはその他のデー
タを含めた情報をストアするための任意の方法または技
術で実装された、揮発性媒体と不揮発性媒体、取外し可
能媒体と取外し不可能媒体の両方が含まれる。コンピュ
ータ記憶媒体には、RAM、ROM、EEPROM、フ
ラッシュメモリまたはその他のメモリ技術、CD−RO
M、ディジタル多用途ディスク(DVD)またはその他
の光学ディスク記憶装置、磁気カセット、磁気テープ、
磁気ディスク記憶装置またはその他の磁気記憶デバイ
ス、あるいは所望の情報をストアするのに使用できコン
ピュータ110がアクセスできるその他の媒体が含まれ
るが、これらに限定しない。通信媒体は通常、コンピュ
ータ可読命令、データ構造、プログラムモジュール、ま
たはその他のデータを、搬送波またはその他のトランス
ポートメカニズムなどの変調されたデータ信号中に組み
入れており、任意の情報送達媒体が含まれる。「変調さ
れたデータ信号」という言葉は、情報が信号にエンコー
ドされるようにその1つまたは複数の特性が設定または
変更された信号を意味する。限定ではなく例として、通
信媒体には、ワイヤードネットワークまたは直接ワイヤ
ード接続などのワイヤード媒体と、音響、FR、赤外線
などのワイヤレス媒体およびその他のワイヤレス媒体が
含まれる。以上のいずれかの組合せもまた、コンピュー
タ可読媒体の範囲内に含めるべきである。
【0023】システムメモリ130は、読出し専用メモ
リ(ROM)131およびランダムアクセスメモリ(R
AM)132などの揮発性および/または不揮発性メモ
リの形をとるコンピュータ記憶媒体を含む。ROM13
1には通常、起動時などにコンピュータ110内の要素
間で情報を転送するのを助ける基本ルーチンを含むBI
OS(basic input/output sys
tem)133がストアされている。RAM132は通
常、プロセッシングユニット120からすぐにアクセス
可能な、かつ/またはプロセッシングユニット120が
現在作用している、データおよび/またはプログラムモ
ジュールを含む。限定ではなく例として、図1には、オ
ペレーティングシステム134、アプリケーションプロ
グラム135、その他のプログラムモジュール136、
およびプログラムデータ137が示されている。
【0024】コンピュータ110はまた、その他の取外
し可能/取外し不可能、かつ揮発性/不揮発性のコンピ
ュータ記憶媒体を備えることもできる。例示にすぎない
が、図1には、取外し不可能かつ不揮発性の磁気媒体に
対して読取りまたは書込みを行うハードディスクドライ
ブ141と、取外し可能かつ不揮発性の磁気ディスク1
52に対して読取りまたは書込みを行う磁気ディスクド
ライブ151と、CD−ROMやその他の光学媒体など
取外し可能かつ不揮発性の光学ディスク156に対して
読取りまたは書込みを行う光学ディスクドライブ155
が示されている。この例示的な動作環境で使用できるそ
の他の取外し可能/取外し不可能、かつ揮発性/不揮発
性のコンピュータ記憶媒体には、磁気テープカセット、
フラッシュメモリカード、ディジタル汎用ディスク、デ
ィジタルビデオテープ、固体RAM、固体ROMなどが
含まれるが、これらに限定しない。ハードディスクドラ
イブ141は通常、インタフェース140などの取外し
不可能メモリインタフェースを介してシステムバス12
1に接続され、磁気ディスクドライブ151および光学
ディスクドライブ155は通常、インタフェース150
などの取外し可能メモリインタフェースによってシステ
ムバス121に接続される。
【0025】以上に論じ、図1に示したドライブおよび
それらに関連するコンピュータ記憶媒体は、コンピュー
タ可読命令、データ構造、プログラムモジュール、およ
びその他のデータの記憶域をコンピュータ110に提供
する。例えば図1では、ハードディスクドライブ141
は、オペレーティングシステム144、アプリケーショ
ンプログラム145、その他のプログラムモジュール1
46、およびプログラムデータ147をストアしている
ものとして示されている。これらのコンポーネントは、
オペレーティングシステム134、アプリケーションプ
ログラム135、その他のプログラムモジュール13
6、およびプログラムデータ137と同じものとするこ
とも異なるものとすることもできることに留意された
い。オペレーティングシステム144、アプリケーショ
ンプログラム145、その他のプログラムモジュール1
46、およびプログラムデータ147は、これらが少な
くとも異なるコピーであることを示すために、ここでは
異なる番号を付けてある。ユーザは、キーボード162
や、マウス、トラックボール、タッチパッドと一般に呼
ばれるポインティングデバイス161など、入力デバイ
スを介してコンピュータ110にコマンドおよび情報を
入力することができる。他の入力デバイス(図示せず)
には、マイクロホン、ジョイスティック、ゲームパッ
ド、衛星受信アンテナ、スキャナなどを含めることがで
きる。これらおよびその他の入力デバイスは、システム
バス121に結合されたユーザ入力インタフェース16
0を介してプロセッシングユニット120に接続される
ことが多いが、パラレルポート、ゲームポート、ユニバ
ーサルシリアルバス(USB)など他のインタフェース
およびバス構造によって接続することもできる。モニタ
191または他のタイプの表示デバイスもまた、ビデオ
インタフェース190などのインタフェースを介してシ
ステムバス121に接続される。モニタに加えて、コン
ピュータはまた、スピーカ197やプリンタ196など
他の周辺出力デバイスを備えることもでき、これらは出
力周辺インタフェース195を介して接続することがで
きる。本発明で特に重要なのが、パーソナルコンピュー
タ110に対する入力デバイスとして、一連の画像19
3を取り込むことのできるカメラ192(ディジタル/
電子スチルカメラまたはビデオカメラや、フィルム/写
真スキャナなど)も含めることができることである。さ
らに、1台のカメラしか示されていないが、パーソナル
コンピュータ110に対する入力デバイスとして複数の
カメラを含めることもできる。1つまたは複数のカメラ
からの画像193は、適切なカメラインタフェース19
4を介してコンピュータ110に入力される。このイン
タフェース194は、システムバス121に接続されて
おり、したがって、RAM132に、またはコンピュー
タ110に関連する他のデータ記憶デバイスの1つに、
画像がルーティングされてストアされるようにする。し
かし画像データは、カメラ192を使用する必要なし
に、前述のいずれかのコンピュータ可読媒体からコンピ
ュータ110に入力することもできることに留意された
い。
【0026】コンピュータ110は、リモートコンピュ
ータ180など1つまたは複数のリモートコンピュータ
への論理接続を用いてネットワーク化された環境で動作
することもできる。リモートコンピュータ180は、パ
ーソナルコンピュータ、サーバ、ルータ、ネットワーク
PC、ピアデバイス、または他の一般的なネットワーク
ノードとすることができ、図1にはメモリ記憶デバイス
181だけしか示されていないものの、通常は、コンピ
ュータ110に関して上述した要素の多くまたはすべて
を備える。図1に示す論理接続はローカルエリアネット
ワーク(LAN)171およびワイドエリアネットワー
ク(WAN)173を含むが、他のネットワークを含む
こともできる。このようなネットワーキング環境は、オ
フィス、企業全体のコンピュータネットワーク、イント
ラネット、およびインターネットでよくみられるもので
ある。
【0027】LANネットワーキング環境で使用される
ときは、コンピュータ110は、ネットワークインタフ
ェースまたはアダプタ170を介してLAN171に接
続される。WANネットワーキング環境で使用されると
きは、コンピュータ110は通常、インターネットなど
のWAN173を介して通信を確立するためのモデム1
72またはその他の手段を備える。モデム172は、内
蔵でも外付けでもよく、ユーザ入力インタフェース16
0または他の適切な機構を介してシステムバス121に
接続することができる。ネットワーク化された環境で
は、コンピュータ110に関して示すプログラムモジュ
ールまたはその一部をリモートメモリ記憶デバイスにス
トアすることもできる。限定ではなく例として、図1に
は、リモートアプリケーションプログラム185がリモ
ート装置181上にあるものとして示してある。図示の
ネットワーク接続は例示的なものであり、コンピュータ
間の通信リンクを確立する他の手段を用いることもでき
ることを理解されたい。
【0028】例示的な動作環境について論じたところ
で、この説明セクションの残りの部分を、本発明を実施
するプログラムモジュールについての記述に充てる。一
般に、本発明によるシステムおよびプロセスは、クライ
アントがクライアントサーバベースのネットワークを介
して漸進的により高品質のバージョンのオーディオおよ
び/またはビデオプログラムを得ることに関係する。こ
れは、階層化ユニキャスト方式と呼ぶ方式を用いて達成
される。具体的には、図2および図3の流れ図を参照す
ると、ユーザは最初に、特定のAVプログラムを得るよ
うにクライアントに指示する(プロセス動作200)。
これは、任意の従来型クライアントユーザインタフェー
スを介して達成される。ネットワークがインターネット
である場合は、ユーザは通常、このようなプログラムを
提供するウェブサイトから特定のプログラムを選択する
ことになる。次いでクライアントは、所望のプログラム
に関連する階層化AVデータのあるサーバに、ネットワ
ークを介してそのデータをクライアントに送信するよう
要求する(プロセス動作202)。こうする際に、クラ
イアントはまた、ベース層から連続する層がいくつ送信
されるべきかについても指定する。この決定は、クライ
アントとサーバの間のネットワークリンク上で現在利用
可能な帯域幅に基づく。当然、適切な数の連続する層を
指定するために、クライアントは、AVデータのセグメ
ント化に採用されている階層化方式の詳細について、お
よび所望の層をサーバに要求するときにそれらをどのよ
うに識別するかについて知らなければならない。標準化
された階層化および識別の方式が採用されたネットワー
クの場合は、クライアントはこの情報をすでに知ってい
ることもある。しかし、多くの様々な階層化および識別
方式が採用される可能性のある今日のインターネットな
どのネットワークでは、クライアントが選択されたプロ
グラムに関連するAVデータを要求するプロセス動作
は、最初に、プログラムと共に採用された階層化および
識別の方式に関する詳細をサーバから得ることを含むこ
とが想定される。
【0029】サーバは、クライアントの要求を受信する
と、ネットワークを介して要求のデータをクライアント
に送信する(プロセス動作204)。伝送レートは、デ
ータをクライアントからユーザにリアルタイムで提示す
るためにレンダリングする際に遅延がないように、再生
レートと少なくとも同じであるべきである。クライアン
トは、サーバからデータを受信し、好ましくはそれを
「再生バッファ(playout buffer)」を通して供給し、
従来の方法で閲覧者に対してレンダリングする(プロセ
ス動作206)。再生バッファは、追加のデータを蓄積
するために、再生の始まりをいくらかのわずかな時間だ
け遅延させる。このバッファリングにより、クライアン
トは、再生レートが確実に一定であるようにすることが
できる。このようなバッファリングがなければ、レンダ
リングされたプログラムは、データがネットワークを介
して受信される際のレートの微変動のせいで「ジッタの
ある」ものになる可能性がある。クライアントはまた、
後で短く説明するように、受信したデータを将来使用す
るためにキャッシュする(プロセス動作208)。
【0030】プロセスのこの時点で、ユーザは3つの選
択肢を有する。AVプログラムがユーザにとって興味な
いものである場合は、ユーザは何もしなくてよく、追加
のエンハンス層データは送信されない。このために、プ
ロセス動作210で、先に選択したAVプログラムに関
係するコマンドをユーザがさらに入力するか否かが判定
される。ユーザからの入力が受信された場合は、選択し
たAVプログラムに関連する着信データストリームの受
信を終了するようにユーザが指示したか否かが確認され
る(プロセス動作212)。言い換えれば、ユーザがA
Vプログラムを途中で中止したか否かである。ユーザが
そうした場合、クライアントは、着信データストリーム
を終了する(プロセス動作214)。ユーザがプログラ
ムを途中で中止する動作は、ユーザがエンハンスバージ
ョンのプログラムの閲覧に興味がないことを意味すると
は限らないので、この動作によってプロセスが終了する
ことにはならない場合があることに留意されたい。例え
ばユーザは、低品質ベースバージョンのプログラムを閲
覧するのはもう十分であり、低品質バージョンの閲覧を
継続するのではなく今すぐにエンハンスバージョンを見
たいと思う場合もある。したがって次に、選択したAV
プログラムのエンハンスバージョンをユーザが要求する
か否かが判定される(プロセス動作216)。
【0031】先に触れたシナリオの第3番目は、ユーザ
がAVプログラム全体を検討し、より高品質のバージョ
ンのプログラムを受信したいと思うほど十分に興味を持
つ場合である。この場合、プロセス動作212で、ユー
ザは着信データストリームの受信を終了するように指示
したのではなく、エンハンスバージョンのプログラムを
要求したと判定される(プロセス動作218)。
【0032】ユーザがエンハンスバージョンのAVプロ
グラムを要求しない場合は、動作は何も行われず、クラ
イアントは、クライアントによって採用されるネットワ
ークソフトウェアのキャッシング規則によって指示され
る時間量にわたってキャッシュ済みデータを保持するこ
とになる。しかし、ユーザがエンハンスバージョンのA
Vプログラムを提供するように指示した場合は(先にプ
ログラムが完全に閲覧されたか、ストリーム中にカット
オフされたかにかかわらず)、クライアントは、ネット
ワークを介して所望のプログラムに関連するエンハンス
AVデータを提供するように要求することになる。ただ
しこれは、入手可能な追加のエンハンス層をサーバが有
することが前提である。したがって、エンハンスデータ
を要求する前に、まずプロセス動作220で、選択され
たAVプログラムに関連するエンハンス層であって先に
要求していないエンハンス層で、サーバから入手可能な
ものがあるか否かが判定される。クライアントは、選択
されたAVプログラムと共に採用されている階層化およ
び識別の方式に関して先に受信した情報に基づいて、こ
のことをすでに知っていることが好ましい。追加の層が
入手可能でない場合は、そのことがクライアントからユ
ーザに通知され(プロセス動作222)、プロセスは終
了する。追加の層が入手可能な場合は、クライアント
は、所望のプログラムに関連するエンハンスAVデータ
を提供するようにサーバに要求する(プロセス動作22
4)。具体的には、クライアントは、前の反復で要求さ
れなかった層の最下位の層から連続するエンハンス層
を、利用可能な帯域幅で可能な限り多く要求する。これ
に応答して、サーバは、要求されたデータを前述の方式
と同じようにして送信する(プロセス動作226)。
【0033】要求したデータを受信したとき、クライア
ントは、新しいデータをストアし(プロセス動作22
8)、使用されている層データのタイプに適用可能な標
準的方法を用いて、このデータを先にストア済みのより
下位の層データと結合させる(プロセス動作230)。
次いで、結合させたデータを使用してプログラムをレン
ダリングし、ユーザに提示する(プロセス動作23
2)。レンダリングされたプログラムは、先に閲覧され
たプログラムの、より高品質のバージョンを提示するこ
とになる。
【0034】この時点で、AVプログラムがもはや興味
ないとユーザが判断した場合、ユーザはこの場合も何も
しなくてよく、追加のエンハンス層データは送信されな
い。あるいはユーザは、選択したプログラムのより一層
エンハンスされたバージョンを要求することもできる。
あるいはユーザは、プログラムを完全に閲覧し終える前
に着信データストリームを終了することもできる。した
がって、ユーザは前と同じ3つのオプションを有する。
このために、プロセス動作234で、先に選択したAV
プログラムに関係するコマンドをユーザがさらに入力す
るか否かが判定される。ユーザコマンドが入力された場
合は、前述のプロセス(動作212から234)が繰り
返される。このようにして、ユーザがエンハンスバージ
ョンを要求できなくなるまで、またはサーバから入手可
能な残りのエンハンス層がなくなるまで、選択されたA
Vプログラムのさらに高品質なバージョンを得るプロセ
スを継続することができる。
【0035】前述のプロセスの単純な例として、帯域幅
が限られているために一度に1つの層しかストリーミン
グすることのできない例は、次のようなものである。最
初の再生中に、ベース層がストリーミングされ、再生さ
れ、ストアされる。ユーザによって指示された第2の再
生中に、層2がストリーミングされ、ストアされ、ベー
ス層と共に再生される。ユーザによって指示された第3
の再生中に、層3がストリーミングされ、ストアされ、
ベース層および層2と共に再生される。これは、サーバ
から入手可能なエンハンス層が残っており、かつユーザ
がより高品質のバージョンのAVプログラムを閲覧する
ことに関心がある限り、継続することができる。このプ
ロセスは、一度に複数の層をストリーミングできる場合
でも同様である。例えば、帯域幅の限度内で一度に2つ
の層をストリーミングできる場合、プロセスは次のよう
になる。最初の再生中に、層1(すなわちベース層)お
よび層2がストリーミングされ、再生され、ストアされ
る。ユーザによって指示された第2の再生中に、層3お
よび4がストリーミングされ、ストアされ、層1および
2と共に再生される。ユーザによって指示された第3の
再生中に、層5および6がストリーミングされ、ストア
され、層1、2、3および4と共に再生される。このプ
ロセスもやはり、サーバから入手可能なエンハンス層が
残っており、かつユーザがエンハンスバージョンのプロ
グラムを閲覧することに関心がある限り、継続すること
ができる。
【0036】この階層化ユニキャストシステムおよびプ
ロセスをAVプログラムとの関連で以上に述べたが、本
発明はオーディオのみまたはビデオのみのプログラムに
も等しく適用可能であることに留意されたい。
【0037】前述の階層化ユニキャストシステムおよび
プロセスは、層データストリーム全体に適用することが
でき、したがって、単一のクライアント要求により、要
求された層のデータストリーム全体がサーバから送信さ
れるようにすることができる。しかし、必ずしもそうで
ある必要はない。利用可能な帯域幅は、要求された層を
送信するのにかかる時間にわたって大きく変化する場合
がある。このことに鑑みて、この階層化ユニキャストシ
ステムおよびプロセスを、層データストリーム全体でな
く、AVプログラムの時間セグメントを表す何らかのス
トリーム部分に適用することもできる。言い換えれば、
クライアントは、一組の層を全体として要求するのでは
なく、現在利用可能な帯域幅に基づいて、関係する各層
の同サイズであり対応する部分だけを要求する。層部分
は、AVプログラムの同じ時間セグメントに関係する点
で対応する。この区分的な実施形態にも、図2および図
3に関して先に述べたプロセスが適用され、プロセス動
作202は、選択されたプログラムに関連する階層化A
Vデータをクライアントが区分的に要求することを含
む。具体的には、現在利用可能なネットワーク帯域幅か
らみて受信できるとクライアントによって決定された、
プログラムの連続するいくつかの層の、対応部分の第1
の組が要求される。次いでクライアントは、AVプログ
ラム層の、次に続く部分を要求する。以後同様に、ユー
ザがプログラム全体を再生したと決定されるまで、また
はユーザがプログラムを途中で中止するまで行われる。
層部分の各組が要求されるのに伴い、関係する層の数
が、そのときに利用可能なネットワーク帯域幅に基づい
て再評価されることに留意されたい。したがって、各要
求により、同数の、またはより少ない、またはより多く
の層の各部分が要求されることになる場合がある。この
システムおよびプロセスの区分的実施形態には、いくつ
かの利点がある。例えば、AVプログラムの送信中にネ
ットワーク上で利用可能な帯域幅は変化する場合があ
り、この変化は、より上位のエンハンス層に関連する追
加データを加えることによりユーザへの提示の品質を向
上させることができるか、あるいは反対に、ある層に関
連するデータをドロップして送信データの過剰な損失を
防止しなければならないくらい帯域幅が減少する可能性
があるか、というほどである。正味の効果は、レンダリ
ングされてクライアントからユーザに提供されたAVプ
ログラムが、送信されたデータ部分に関連する時間にわ
たって入手可能な最良のものであることである。当然、
この区分的実施形態は、よりクライアントプロセッサ集
中的である。というのは、クライアントは、層データの
一部に対する各要求に含まれる層の数を常に把握し、そ
れにより、より高品質のバージョンのプログラムがユー
ザから要求された場合にAVプログラムの特定部分に対
するエンハンスデータを要求するときに、より上位の層
のどれから開始するか知っているようにしなければなら
ないからである。加えて、クライアントは、層データを
プログラムごとに1度要求するのではなく、繰り返し要
求しなければならない。
【0038】区分的実施形態では、ユーザがより高品質
のバージョンのAVプログラムを再生するように指示し
た場合、図3のプロセス動作220は、クライアント
が、ネットワーク上の現在の帯域幅条件で可能な最大数
のエンハンス層に関連する層部分を、プログラムの同じ
時間セグメントに関連する、先に受信した層部分からみ
て次に高いレベルを表す層からプログラムのセグメント
ごとに要求することを含む。
【0039】区分的実施形態に関連する繰返し要求に関
係する各層中のデータ部分のサイズは、所望のどのよう
なサイズでもよいことに留意されたい。ただしこのサイ
ズは、この部分の持続時間が、ネットワーク帯域幅が一
定のままであることが予想される時間量とほぼ同じにな
るように選択するのが好ましい。このサイジングは、各
部分が、要求に関係する各層のデータストリームの単一
パケットだけになるように、必要なら極端に行うことも
できる。
【0040】前述の階層化ユニキャストプレゼンテーシ
ョンシステムおよびプロセスはさらに、事前フェッチオ
プションも含むことができる。このオプションは、先の
より低品質バージョンのプログラムに関連する層が完全
に受信された後で、より高品質のバージョンのプログラ
ムを提供するのに必要な追加のエンハンス層がクライア
ントによって自動的に要求、受信、およびキャッシュさ
れるようにするか否かを、ユーザが選択することを可能
にする。これは、ユーザがより高品質のバージョンを要
求する前に行われることに留意されたい。選択されたプ
ログラムのより高品質のバージョンを製造するのに必要
なAVデータをクライアントが自動的に得るようにユー
ザが要求する場合、このプロセスは、選択されたプログ
ラムの第1の層が受信され、レンダリングされ、キャッ
シュされる時点まで(すなわちプロセス動作208ま
で)は、図2に概説したのと本質的に同じである。その
後、プロセスは図4および図5に概説するように変化す
る。具体的には、要求したAVデータをクライアントが
受信、レンダリング、およびキャッシュしている間に、
着信データストリームの受信を終了するようにユーザが
指示したか否かが判定される(プロセス動作300)。
指示しなかった場合、クライアントは、ユーザによって
閲覧されているより低品質なバージョンを製造するため
のデータをすべて要求した後で、選択されたプログラム
のエンハンスバージョンを製造するのに必要なAVデー
タを要求する(プロセス動作302)。こうするために
ユーザからの指示は必要ない。エンハンスデータは前述
のように要求されることになり、利用可能なネットワー
ク帯域幅で可能な限り多くの層が、先に要求されたデー
タの最上位の層よりも1つ上のレベルから要求される。
クライアントは、プログラム全体に関連するエンハンス
層が最新の反復に対してすべて要求された後で停止する
こともできる。しかしクライアントは、より一層高いレ
ベルのエンハンス層の組を要求し、利用可能なすべての
層データを要求し終えるまで以後同様にすることが好ま
しい。しかし、ユーザがプログラムを途中で中止した場
合は、クライアントは着信データストリームを終了する
(プロセス動作304)。先に示したように、この時点
では、ユーザがプログラムを途中で中止する行為が、エ
ンハンスバージョンのプログラムの閲覧に興味がないこ
とを意味するものであったのか、あるいは低品質バージ
ョンの閲覧を継続するのではなくエンハンスバージョン
をすぐに見たいと思っていることを意味するものであっ
たのかわからない。したがって、ユーザが着信プログラ
ムを途中で中止した場合、クライアントは、前述のよう
に、選択されたプログラムのエンハンスバージョンを製
造するのに必要なAVデータの要求を開始する(プロセ
ス動作306)。当然、前のバージョンのプログラムが
途中で中止されたので、要求手順の最初の反復では、プ
ログラムの以前受信した部分に関連するエンハンスデー
タしか得られない。プログラムの残りの部分のために、
より基礎的な層が要求される。前と同様、サーバは要求
されたデータを送信し(プロセス動作308)、クライ
アントは着信データを受信してキャッシュする(プロセ
ス動作310)。次いで、選択されたプログラムのより
高品質のバージョンを提供するようにユーザが要求した
か否かが判定される(プロセス動作312)。このよう
な要求が出された場合、クライアントは、キャッシュし
たAVデータのすべての層を結合させて、選択されたプ
ログラムのエンハンスバージョンを製造する(プロセス
動作314)。層が区分的に要求される場合は、この最
後の動作は、AVプログラムの連続するセグメントそれ
ぞれの、対応する層部分すべてを結合することを含む。
結合したデータを使用して、プログラムがレンダリング
され、ユーザに提示される(プロセス動作316)。事
前フェッチオプションの場合のエンハンスプログラム
は、図2および図3で概説したプロセスの場合に生み出
されるものよりも高品質になる場合があることに留意さ
れたい。これは、ユーザがエンハンスバージョンのプロ
グラムを要求する前に、エンハンス層の要求が複数回に
わたって反復され、データが受信されおよびキャッシュ
された可能性があるからである。
【0041】ユーザが、選択したAVプログラムのエン
ハンスバージョンの閲覧を選択したとき、クライアント
は、そのプログラムに対して入手可能な層をすべて要求
するタスクを完了していない場合もある。したがって次
に、プロセス動作318で、サーバから入手可能な層が
残っているか否かが判定される。残っている場合は、プ
ロセス動作300から318が繰り返される。しかし、
入手可能なデータがすべて要求された場合は、プロセス
は終了する。
【0042】事前フェッチオプションは、興味を引くい
くつかの利点を有する。第1に、事前フェッチにより、
より高品質のバージョンのAVプログラムをレンダリン
グするのに必要な層データがクライアントのメモリ中に
手近にあることになり、したがって、クライアントはよ
り迅速にユーザにプログラムを提供することができる。
加えて、先に示したように、クライアントは、選択され
たプログラムに関連する層データを本質的に継続的に要
求およびキャッシュすることができる。したがって、選
択されたプログラムのエンハンスバージョンをユーザが
要求したときにレンダリングするためにエンハンス層デ
ータを準備するのを複数回にわたり反復することが可能
である。この結果、一度に1組のエンハンス層でプログ
ラムを要求およびレンダリングすることによって提供で
きるよりも高品質のバージョンのプログラムを提供する
ことができる。
【0043】事前フェッチオプションの変形もまた有利
であり、これは、関連するプログラムの提示を終了する
ようにユーザが命令したときであっても、着信AVデー
タストリームを終了するのではなく、AV層データの要
求(必要なら)、受信、およびキャッシュを継続するこ
とを含む。このようにすれば、ユーザが後でより高品質
のバージョンのAVプログラムを提供するように指示し
た場合に、終了済みバージョンのプログラムに関連する
層データ部分しかないという前述の問題が回避される。
このことは、ユーザに提示されるより高品質のバージョ
ンのプログラムが全体にわたり概して一貫した品質を有
することになるので、有利である。前述の手順を用いな
ければ、クライアントは、追加のエンハンス層ではな
く、終了されたバージョンのプログラムに関連するより
低いレベルの層を要求しなければならないので、より高
品質のプログラムの後半部分が品質レベルにおいて顕著
な低下を示すことになる。
【0044】前述のようなニュースやスポーツのウェブ
サイトなど、インターネット上の多くのウェブサイト
が、クライアントコンピュータにストリーミングできる
AVプログラムを提供している。本発明による階層化ユ
ニキャストシステムおよびプロセスは有利にも、このよ
うなサイトが、ウェブサイトを訪れた申込み者に高品質
バージョンのAVプログラムを販売するために採用する
ことができる。具体的には、「ベース品質」バージョン
のプログラムは、サイト訪問者に無料またはわずかな料
金で提供することができる。このベース品質バージョン
のプログラムは、サイト訪問者に関連するクライアント
コンピュータによって最初に要求されレンダリングされ
るバージョンとすることができ、これは、プログラムに
関連するベース層と、利用可能な帯域幅が許容する限り
多くのエンハンス層を含むものとすることができる。し
かし、ベース品質バージョンのAVプログラムは、クラ
イアントが最初により多くの層を要求したとしても、ベ
ース層と、ウェブサイトに関連するサーバによって指定
されるおそらく少数のエンハンス層とに限定することも
できる。サイト訪問者に最初に提供される層の数を制限
する目的は、好奇心を刺激するのにただ十分なだけのバ
ージョンのAVプログラムを訪問者が閲覧できるように
して、改善したバージョンを購入するように訪問者を誘
発するためである。ベースバージョンのAVプログラム
が十分興味あるものであれば、訪問者は、品質の改善し
たバージョンのプログラムの閲覧を有料で申し込むこと
ができる。これは、前述のように、訪問者に関連するク
ライアントコンピュータにエンハンス層を送信すること
で達成される。次いでクライアントコンピュータは、エ
ンハンス層データを先にキャッシュした層データと結合
させて、訪問者が閲覧するためのより高品質のバージョ
ンのプログラムを製造する。次いで訪問者は、ウェブサ
イトに関連するサーバがより上位の利用可能なエンハン
ス層を有する限り、より一層高品質のバージョンのプロ
グラムを閲覧する要求を繰り返すこともできる。
【0045】前述のプロセスの例として、インターネッ
ト上の、ホッケーのビデオハイライトを提供するスポー
ツウェブサイトをユーザが訪れると仮定する。訪問者
は、サイト上にリストされたハイライトの1つを「クリ
ック」し、それを無料で「ベース」品質レベルで見るこ
とができる。この品質レベルでは、訪問者は何が起きて
いるかを大体見ることはできるかもしれないが、パック
さえ見分けられるほど十分詳しく見ることはできない。
このハイライトが訪問者にとって興味ないものであれ
ば、それ以上の要求は出されず、あるいは訪問者は再生
の完了前に停止するかもしれない。しかし、このハイラ
イトが興味あるものであれば、訪問者は有料でより高品
質なバージョンに申し込むように勧められる。支払い規
定は、現在商業インターネットウェブサイト上で用いら
れているような任意の従来方式によって扱うことができ
る。訪問者は、今度はパックを含めてより改善した詳細
を見ることができる。3回再生すれば、より多くのビデ
オフレームが導入され、再生はよりスムーズになるであ
ろう。
【0046】別の例として、多くのウェブサイトが、オ
ーディオサンプルまたは歌を含んでいる。これらのサイ
トは、品質が低めのバージョンのオーディオプログラム
へのアクセスを無料で提供することができる。この場
合、訪問者がより高品質のバージョンのプログラムに興
味があれば、追加の品質エンハンスオーディオデータ層
が転送されることにより、料金の支払いが必要となる。
【0047】より高品質なバージョンのプログラムに対
する支払いに関しては、訪問者が「向上」要求を出す回
数に対して単一料金を課すこともでき、あるいは要求ご
とに課金することもできる。
【0048】
【発明の効果】以上説明したように、本発明によれば、
漸進的により高品質のバージョンのオーディオおよび/
またはビデオプログラムを得ることができる。
【図面の簡単な説明】
【図1】本発明を実施するための例示的なシステムを構
成する汎用コンピューティングデバイスを示す図であ
る。
【図2】本発明による、クライアントサーバベースのネ
ットワークを介して漸進的により高品質のバージョンの
オーディオおよび/またはビデオプログラムを得るため
のプロセス全体を図示するフローチャートである。
【図3】本発明による、クライアントサーバベースのネ
ットワークを介して漸進的により高品質のバージョンの
オーディオおよび/またはビデオプログラムを得るため
のプロセス全体を図示するフローチャートである。
【図4】本発明による、事前フェッチオプションを実施
するように修正された図2のプロセス全体の一部を図示
するフローチャートである。
【図5】本発明による、事前フェッチオプションを実施
するように修正された図2のプロセス全体の一部を図示
するフローチャートである。
【符号の説明】
100 適したコンピューティングシステム環境 110 コンピュータ 120 プロセッシングユニット 121 システムバス 130 システムメモリ 131 ROM 132 RAM 133 BIOS 134 オペレーティングシステム 135 アプリケーションプログラム 136 その他のプログラムモジュール 137 プログラムデータ 140 取外し不可能不揮発性メモリインタフェース 141 ハードディスクドライブ 144 オペレーティングシステム 145 アプリケーションプログラム 146 その他のプログラムモジュール 147 プログラムデータ 150 取外し可能不揮発性メモリインタフェース 151 磁気ディスクドライブ 152 磁気ディスク 155 光学ディスクドライブ 156 光学ディスク 160 ユーザ入力インタフェース 161 マウス 162 キーボード 170 ネットワークインタフェース 171 ローカルエリアネットワーク 172 モデム 173 ワイドエリアネットワーク 180 リモートコンピュータ 181 メモリ記憶デバイス 185 リモートアプリケーションプログラム 190 ビデオインタフェース 191 モニタ 192 カメラ 193 画像 194 カメラインタフェース 195 出力周辺インタフェース 196 プリンタ 197 スピーカ
フロントページの続き Fターム(参考) 5C064 BA07 BB01 BB07 BB10 BC01 BC07 BC18 BC20 BD02 BD08 BD09

Claims (34)

    【特許請求の範囲】
  1. 【請求項1】 クライアントサーバベースのネットワー
    クを介して漸進的により高品質のバージョンのオーディ
    オおよび/またはビデオプログラムを得るためにコンピ
    ュータで実施される方法であって、クライアントコンピ
    ュータが、 少なくとも階層化ユニキャストのベース層を含むベース
    品質バージョンのプログラムを、前記ネットワークを介
    してサーバに要求するプロセス動作と、 前記要求した、ベース品質バージョンのプログラムに関
    連する層データを受信しおよびキャッシュするプロセス
    動作と、 前記ネットワークを介して階層化ユニキャストのエンハ
    ンス層の少なくとも1つをサーバに要求するプロセス動
    作と、 前記要求したエンハンス層データを受信しおよびキャッ
    シュするプロセス動作と、 前記要求したエンハンス層データを受信したとき、エン
    ハンス層データを、先にキャッシュしたベース品質バー
    ジョンのプログラムに関連する層データと結合させて、
    より高品質のバージョンのプログラムを製造するプロセ
    ス動作とを行うことを備えることを特徴とする方法。
  2. 【請求項2】 前記要求したデータを受信したとき前記
    ベース品質バージョンのプログラムをレンダリングし、
    ユーザに提示するプロセス動作をさらに備えることを特
    徴とする請求項1に記載の方法。
  3. 【請求項3】 前記ベース品質バージョンのプログラム
    を提示することを終了するようにユーザが指示するか否
    かを判定するプロセス動作と、 前記ベース品質バージョンのプログラムを前記ユーザに
    提示することを終了するプロセス動作とをさらに備える
    ことを特徴とする請求項2に記載の方法。
  4. 【請求項4】 前記提示を終了するプロセス動作は、前
    記要求したベース品質バージョンのプログラムに関連す
    る着信データストリームを終了する動作を備えることを
    特徴とする請求項3に記載の方法。
  5. 【請求項5】 前記提示を終了するプロセス動作は、前
    記要求したベース品質バージョンのプログラムに関連す
    る着信データストリームの前記受信およびキャッシュを
    継続しながら、前記ベース品質バージョンのプログラム
    のレンダリングを停止する動作を備えることを特徴とす
    る請求項3に記載の方法。
  6. 【請求項6】 前記結合させた層データから前記より高
    品質のバージョンのプログラムをレンダリングしてユー
    ザに提示するプロセス動作をさらに備えることを特徴と
    する請求項1に記載の方法。
  7. 【請求項7】 前記より高品質のバージョンのプログラ
    ムを提示することを終了するようにユーザが指示するか
    否かを判定するプロセス動作と、 前記より高品質のバージョンのプログラムをユーザに提
    示することを終了するプロセス動作とをさらに備えるこ
    とを特徴とする請求項6に記載の方法。
  8. 【請求項8】 前記提示を終了するプロセス動作が、前
    記要求したより高品質のバージョンのプログラムに関連
    する着信データストリームを終了する動作を備えること
    を特徴とする請求項7に記載の方法。
  9. 【請求項9】 前記提示を終了するプロセス動作は、要
    求したより高品質のバージョンのプログラムに関連する
    着信データストリームの受信およびキャッシュを継続し
    ながら、より高品質のバージョンのプログラムのレンダ
    リングを停止する動作を含むことを特徴とする請求項7
    に記載の方法。
  10. 【請求項10】 少なくとも1つのエンハンス層を受信
    する前記プロセス動作と、前記要求したエンハンス層デ
    ータを受信しおよびキャッシュする前記プロセス動作
    と、前記要求したエンハンス層データを受信したとき、
    該エンハンス層データを、前記先にキャッシュしたベー
    ス品質バージョンのプログラムに関連する層データと結
    合させて、前記より高品質のバージョンのプログラムを
    製造する前記プロセス動作とが、前記ベース品質バージ
    ョンと比較してより高品質のバージョンのプログラムを
    提供するようにユーザが前記クライアントに指示したと
    きだけ行われることを特徴とする請求項1に記載の方
    法。
  11. 【請求項11】 少なくとも1つのエンハンス層を受信
    する前記プロセス動作と、前記要求したエンハンス層デ
    ータを受信しおよびキャッシュする前記プロセス動作
    と、前記要求したエンハンス層データを受信したとき、
    該エンハンス層データを、前記先にキャッシュしたベー
    ス品質バージョンのプログラムに関連する層データと結
    合させて、前記より高品質のバージョンのプログラムを
    製造するプロセス動作とが、前記ベース品質バージョン
    のプログラムに関連する前記要求した層データがすべて
    受信されおよびキャッシュされた後で自動的に行われる
    ことを特徴とする請求項1に記載の方法。
  12. 【請求項12】 階層化ユニキャストの、少なくとも1
    つの追加のエンハンス層を、前記ネットワークを介して
    前記サーバに要求するプロセス動作と、 前記要求した追加のエンハンス層データを受信しおよび
    キャッシュするプロセス動作と、 前記要求した追加のエンハンス層データを受信したと
    き、該追加のエンハンス層データを、先にキャッシュし
    たベース品質およびより高品質のバージョンのプログラ
    ムに関連する層データと結合させて、エンハンスされた
    より高品質のバージョンのプログラムを製造するプロセ
    ス動作とをさらに備えることを特徴とする請求項1に記
    載の方法。
  13. 【請求項13】 前記サーバが前記プログラムに関連す
    る残りの入手可能なエンハンス層を有するか否かを確認
    するプロセス動作と、 前記サーバが前記プログラムに関連する残りのエンハン
    ス層を少なくとも1つ有するときは、 前記階層化ユニキャストの、少なくとも1つの追加のエ
    ンハンス層を、前記ネットワークを介して前記サーバに
    要求するプロセス動作と、 前記要求した追加のエンハンス層データを受信しおよび
    キャッシュするプロセス動作と、 前記要求した追加のエンハンス層データを受信したと
    き、該追加のエンハンス層データを、前記先にキャッシ
    ュしたベース品質およびより高品質のバージョンのプロ
    グラムに関連する層データと結合させて、エンハンスさ
    れたより高品質のバージョンのプログラムを製造するプ
    ロセス動作とをさらに備えることを特徴とする請求項1
    に記載の方法。
  14. 【請求項14】 少なくとも1つの追加のエンハンス層
    を要求する前記プロセス動作と、前記要求した追加のエ
    ンハンス層データを受信しおよびキャッシュする前記プ
    ロセス動作と、前記要求した追加のエンハンス層データ
    を、前記先にキャッシュしたベース品質およびより高品
    質のバージョンのプログラムに関連する層データと結合
    させて、前記エンハンスされたより高品質のバージョン
    のプログラムを製造する前記プロセス動作とが、前記エ
    ンハンスされたより高品質のバージョンのプログラムを
    提供するようにユーザが前記クライアントに指示したと
    きだけ行われることを特徴とする請求項13に記載の方
    法。
  15. 【請求項15】 少なくとも1つの追加のエンハンス層
    を要求する前記プロセス動作と、前記要求した追加のエ
    ンハンス層データを受信しおよびキャッシュするプロセ
    ス動作と、前記要求した追加のエンハンス層データを、
    前記先にキャッシュしたベース品質およびより高品質の
    バージョンのプログラムに関連する層データと結合させ
    て、前記エンハンスされたより高品質のバージョンのプ
    ログラムを製造するプロセス動作とが、前記要求したよ
    り高品質のバージョンのプログラムに関連する層データ
    がすべて受信されおよびキャッシュされた後で自動的に
    行われることを特徴とする請求項13に記載の方法。
  16. 【請求項16】 前記サーバが前記プログラムに関連す
    る残りの入手可能なエンハンス層を有しないと確認され
    たときは、エンハンスされたより高品質のバージョンの
    プログラムを提供できないことをユーザに通知するプロ
    セス動作をさらに備えることを特徴とする請求項13に
    記載の方法。
  17. 【請求項17】 前記階層化ユニキャストの層は、最下
    レベルの層がベース層で、次に高いレベルの各層が、前
    記階層中の先行する層からレンダリングできる前記プロ
    グラムの品質をエンハンスするためのエンハンス情報を
    追加している点で、階層的に関係しており、前記ネット
    ワークを介してベース品質バージョンのプログラムをサ
    ーバに要求する前記プロセス動作は、前記ネットワーク
    の利用可能な帯域幅を超過せずに前記サーバから前記ク
    ライアントに送信できる限り、多くの層を、前記ベース
    層から前記階層中の位置の順に要求する動作を備えるこ
    とを特徴とする請求項1に記載の方法。
  18. 【請求項18】 少なくとも1つのエンハンス層を要求
    する前記プロセス動作は、前記ネットワークの利用可能
    な帯域幅を超過せずに前記サーバから前記クライアント
    に送信できる限り、多くのエンハンス層を、前記ベース
    品質バージョンのプログラムに関連して要求された最も
    上位の層の次に階層中で高い層から、該階層中の位置の
    順に要求する動作を備えることを特徴とする請求項17
    に記載の方法。
  19. 【請求項19】 ベース品質バージョンのプログラムを
    要求する前記プロセス動作、および少なくとも1つのエ
    ンハンス層を要求する前記プロセス動作は、各層を構成
    する前記データを全体として提供するように要求する動
    作を含むことを特徴とする請求項1に記載の方法。
  20. 【請求項20】 ベース品質バージョンのプログラムを
    要求する前記プロセス動作は、連続的な同サイズの時間
    的に対応する部分で前記ベース品質バージョンの各層を
    構成する前記データを要求する動作を備え、これによ
    り、前記プログラムの始めの時間セグメントに関連する
    層部分が最初に要求され、次いでプログラムの次に続く
    時間セグメントに関連する層部分が要求され、以後同様
    となることを特徴とする請求項1に記載の方法。
  21. 【請求項21】 前記階層化ユニキャストの層は、最下
    レベルの層がベース層で、次に高いレベルの各層が、前
    記階層中の先行する層からレンダリングできるプログラ
    ムの品質をエンハンスするためのエンハンス情報を追加
    している点で、階層的に関係しており、連続的な同サイ
    ズの時間的に対応する部分で前記ベース品質バージョン
    の各層を構成する前記データを要求する前記プロセス動
    作は、前記ネットワークの利用可能な帯域幅を超過せず
    に前記サーバから前記クライアントに送信できる限り、
    多くの層からの前記層部分を、前記ベース層から前記階
    層中の位置の順に要求する動作を備えることを特徴とす
    る請求項20に記載の方法。
  22. 【請求項22】 前記プログラムの少なくとも1つのエ
    ンハンス層を要求する前記プロセス動作は、連続的な同
    サイズの時間的に対応する部分で各エンハンス層を構成
    する前記データを要求する動作を備え、これにより、前
    記プログラムの始めの時間セグメントに関連する層部分
    が最初に要求され、次いで前記プログラムの次に続く時
    間セグメントに関連する層部分が要求され、以後同様と
    なることを特徴とする請求項20に記載の方法。
  23. 【請求項23】 連続的な同サイズの時間的に対応する
    部分で各エンハンス層を構成する前記データを要求する
    前記プロセス動作は、前記ネットワークの利用可能な帯
    域幅を超過せずに前記サーバから前記クライアントに送
    信できる限り、多くのエンハンス層からの前記エンハン
    ス層部分を、前記ベース品質バージョンのプログラムに
    関連して要求された最も上位の層の次に前記階層中で高
    い層から、該階層中の位置の順に要求する動作を含むこ
    とを特徴とする請求項22に記載の方法。
  24. 【請求項24】 前記プログラムの各時間セグメントの
    長さが、前記ネットワーク上で利用可能な帯域幅が変動
    するレートに合わせられ、これにより各時間セグメント
    は、ネットワーク帯域幅がその期間にわたって大きく変
    動しないように十分に短いことを特徴とする請求項22
    に記載の方法。
  25. 【請求項25】 漸進的により高品質のバージョンのオ
    ーディオおよび/またはビデオプログラムを得るため
    の、クライアントサーバベースのコンピュータネットワ
    ークであって、 少なくとも1つの汎用コンピューティングデバイスを備
    えたクライアントと、 該クライアントによって実行可能なプログラムモジュー
    ルを備えたコンピュータプログラムとを備え、 前記クライアントは、 閲覧のために前記プログラムを提供するよう命じる命令
    をユーザから受信すること、 少なくとも階層化ユニキャストのベース層を含むベース
    品質バージョンのプログラムを、前記ネットワークを介
    してサーバに要求すること、 前記要求した、ベース品質バージョンのプログラムに関
    連する層データを受信しおよびキャッシュすること、 前記要求したデータを受信したとき前記ベース品質バー
    ジョンのプログラムをレンダリングし、前記ユーザに提
    示すること、 閲覧のためにより高品質のバージョンのプログラムを提
    供するようにユーザが指示するか否かを判定すること、 より高品質のバージョンのプログラムを提供するように
    前記ユーザが指示したと判定されたときは、 前記ネットワークを介して階層化ユニキャストのエンハ
    ンス層の少なくとも1つを前記サーバに要求すること、 前記要求したエンハンス層データを受信しおよびキャッ
    シュすること、 前記要求したエンハンス層データを受信したとき、該エ
    ンハンス層データを、先にキャッシュしたベース品質バ
    ージョンのプログラムに関連する層データと結合させ
    て、より高品質のバージョンのプログラムを製造するこ
    と、および 前記結合させた層データから前記より高品質のバージョ
    ンのプログラムをレンダリングして前記ユーザに提示す
    ることを行うようにプログラムモジュールに指示される
    ことを特徴とするネットワーク。
  26. 【請求項26】 前記ベース品質バージョンのプログラ
    ムの提示を終了するように前記ユーザが指示するか否か
    を判定し、 前記ベース品質バージョンのプログラムの提示を終了す
    るように前記ユーザが指示したと判定されたときは前記
    提示を終了するためのプログラムモジュールをさらに備
    えたことを特徴とする請求項25に記載のネットワー
    ク。
  27. 【請求項27】 ネットワークを介して漸進的により高
    品質のバージョンのオーディオおよび/またはビデオプ
    ログラムを得るためのコンピュータ実行可能命令を備え
    たコンピュータ可読媒体であって、前記コンピュータ実
    行可能命令は、 少なくとも階層化ユニキャストのベース層を備えるベー
    ス品質バージョンのプログラムを要求すること、 前記要求した、ベース品質バージョンのプログラムに関
    連する層データを受信しおよびキャッシュすること、 前記要求したデータを受信したとき前記ベース品質バー
    ジョンのプログラムをレンダリングし、前記ユーザに提
    示すること、 より高品質のバージョンのプログラムを提供するように
    ユーザが指示したときに、前記ネットワークを介して前
    記階層化ユニキャストのエンハンス層の少なくとも1つ
    をサーバに要求すること、 前記要求したエンハンス層データを受信しおよびキャッ
    シュすること、 前記要求したエンハンス層データを受信したとき、該エ
    ンハンス層データを、前記先にキャッシュしたベース品
    質バージョンのプログラムに関連する層データと結合さ
    せて、より高品質のバージョンのプログラムを製造する
    こと、および 前記結合させた層データからより高品質のバージョンの
    プログラムをレンダリングして前記ユーザに提示するこ
    とを備えることを特徴とするコンピュータ可読媒体。
  28. 【請求項28】 コンピューティングデバイスを使用し
    て、クライアントサーバベースのネットワークを介して
    漸進的により高品質のバージョンのオーディオおよび/
    またはビデオプログラムを提供する方法であって、サー
    バコンピュータが、 前記プログラムを提供するようにクライアントコンピュ
    ータから前記ネットワークを介して最初に要求があった
    ときに、少なくとも階層化ユニキャストのベース層を備
    えるベース品質バージョンのプログラムを、前記ネット
    ワークを介してクライアントに提供するプロセス動作
    と、 より高品質のプログラムを提供するようにクライアント
    コンピュータから前記ネットワークを介して次に要求が
    あったときに、 規定料金の支払いを要求するプロセス動作と、 前記規定料金の支払いがあったときに前記ネットワーク
    を介して前記クライアントに階層化ユニキャストのエン
    ハンス層の少なくとも1つを提供するプロセス動作とを
    行うことを備えることを特徴とする方法。
  29. 【請求項29】 前記規定料金の支払いを要求する前記
    プロセス動作は、より高品質のバージョンのプログラム
    を提供するようにクライアントコンピュータから前記ネ
    ットワークを介して最初に要求があったときだけ行わ
    れ、その後は繰り返されないことを特徴とする請求項2
    8に記載の方法。
  30. 【請求項30】 クライアントサーバベースのネットワ
    ークを介して漸進的により高品質のバージョンのオーデ
    ィオおよび/またはビデオプログラムを提供するために
    コンピュータで実施される方法であって、サーバコンピ
    ュータが、 少なくとも階層化ユニキャストのベース層を備えるベー
    ス品質バージョンの前記プログラムを、前記ネットワー
    クを介してクライアントコンピュータに提供するプロセ
    ス動作と、 前記階層化ユニキャストのエンハンス層の少なくとも1
    つを、前記ベース品質バージョンのプログラムのどの層
    もさらに提供することなく、前記ネットワークを介して
    前記クライアントに提供するプロセス動作とを行うこと
    を含むことを特徴とする方法。
  31. 【請求項31】 ベース品質バージョンのプログラムを
    提供する前記プロセス動作は、連続的な同サイズの時間
    的に対応する部分で前記ベース品質バージョンの各層を
    構成する前記データを提供する動作を備え、これによ
    り、前記プログラムの始めの時間セグメントに関連する
    層部分が最初に提供され、次いで前記プログラムの次に
    続く時間セグメントに関連する層部分が提供され、以後
    同様となることを特徴とする請求項30に記載の方法。
  32. 【請求項32】 前記プログラムのエンハンス層の少な
    くとも1つを提供する前記プロセス動作は、連続的な同
    サイズの時間的に対応する部分で各エンハンス層を構成
    する前記データを提供する動作を備え、これにより、前
    記プログラムの始めの時間セグメントに関連する層部分
    が最初に提供され、次いで前記プログラムの次に続く時
    間セグメントに関連する層部分が提供され、以後同様と
    なることを特徴とする請求項30に記載の方法。
  33. 【請求項33】 漸進的により高品質のバージョンのオ
    ーディオおよび/またはビデオプログラムを提供するた
    めの、クライアントサーバベースのコンピュータネット
    ワークであって、 少なくとも1つの汎用コンピューティングデバイスを備
    えたサーバと、 該サーバによって実行可能なプログラムモジュールを備
    えたコンピュータプログラムとを備え、 前記サーバは、 前記プログラムを提供するようにクライアントコンピュ
    ータから前記ネットワークを介して最初に要求があった
    ときに、少なくとも階層化ユニキャストのベース層を備
    える前記ベース品質バージョンのプログラムを、前記ネ
    ットワークを介してクライアントコンピュータに提供
    し、 より高品質のバージョンの前記プログラムを提供するよ
    うにクライアントコンピュータから前記ネットワークを
    介して次に要求があったときに、前記階層化ユニキャス
    トのエンハンス層の少なくとも1つを、前記ベース品質
    バージョンのプログラムのどの層もさらに提供すること
    なく、前記ネットワークを介して前記クライアントに提
    供するようにプログラムモジュールによって指示される
    ことを特徴とするコンピュータネットワーク。
  34. 【請求項34】 クライアントサーバベースのネットワ
    ークを介して漸進的により高品質のバージョンのオーデ
    ィオおよび/またはビデオプログラムを提供するための
    コンピュータ実行可能命令を有するコンピュータ可読媒
    体であって、前記コンピュータ実行可能命令は、 少なくとも階層化ユニキャストのベース層を備えるベー
    ス品質バージョンのプログラムを、前記ネットワークを
    介してクライアントコンピュータに提供し、 先に提供されたベース品質バージョンの前記プログラム
    の層と結合させて、前記より高品質のバージョンのプロ
    グラムを製造することのできる層である前記階層化ユニ
    キャストのエンハンス層の少なくとも1つを、前記ベー
    ス品質バージョンのプログラムのどの層もさらに提供す
    ることなく、ネットワークを介してクライアントに提供
    することを特徴とするコンピュータ可読媒体。
JP2002040625A 2001-02-16 2002-02-18 漸進的により高品質のバージョンのオーディオおよび/またはビデオプログラムを得るための方法およびコンピュータネットワーク Expired - Fee Related JP4818562B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/681,195 US7237032B2 (en) 2001-02-16 2001-02-16 Progressive streaming media rendering
US09/681,195 2001-02-16

Publications (3)

Publication Number Publication Date
JP2002314975A true JP2002314975A (ja) 2002-10-25
JP2002314975A5 JP2002314975A5 (ja) 2005-08-25
JP4818562B2 JP4818562B2 (ja) 2011-11-16

Family

ID=24734219

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002040625A Expired - Fee Related JP4818562B2 (ja) 2001-02-16 2002-02-18 漸進的により高品質のバージョンのオーディオおよび/またはビデオプログラムを得るための方法およびコンピュータネットワーク

Country Status (5)

Country Link
US (3) US7237032B2 (ja)
EP (1) EP1233591B1 (ja)
JP (1) JP4818562B2 (ja)
AT (1) ATE334544T1 (ja)
DE (1) DE60213297T2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005531213A (ja) * 2002-06-21 2005-10-13 トムソン ライセンシング 携帯無線相互動作環境における格納映像のストリーミングの品質の向上
KR100690710B1 (ko) 2003-03-04 2007-03-09 엘지전자 주식회사 동영상 전송방법
JP2008523718A (ja) * 2004-12-06 2008-07-03 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 音声・映像コンテンツのダウンロード及び再生を同時に行う方法及びシステム
JP2013081158A (ja) * 2011-08-18 2013-05-02 Apple Inc ネットワークパフォーマンスに基づく、ネットワークベースのデジタルデータリポジトリからのダウンロードの管理

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7150005B2 (en) * 1999-07-02 2006-12-12 Beryl Technical Assays, Llc Method and system for global constant management for memory
US7237032B2 (en) * 2001-02-16 2007-06-26 Microsoft Corporation Progressive streaming media rendering
US20030115598A1 (en) * 2001-03-23 2003-06-19 Pantoja William E. System and method for interactively producing a web-based multimedia presentation
US8776153B2 (en) * 2001-04-25 2014-07-08 At&T Intellectual Property I, Lp Method and system for transferring content to a networked unit
FR2825871B1 (fr) * 2001-06-06 2003-10-31 France Telecom Protocole et systeme de diffusion de programmes audiovisuels a partir d'un serveur
US7054911B1 (en) 2001-06-12 2006-05-30 Network Appliance, Inc. Streaming media bitrate switching methods and apparatus
US7076560B1 (en) 2001-06-12 2006-07-11 Network Appliance, Inc. Methods and apparatus for storing and serving streaming media data
US7155531B1 (en) 2001-06-12 2006-12-26 Network Appliance Inc. Storage methods and apparatus for streaming media data
US6742082B1 (en) * 2001-06-12 2004-05-25 Network Appliance Pre-computing streaming media payload method and apparatus
US7478164B1 (en) 2001-06-12 2009-01-13 Netapp, Inc. Methods and apparatus for pacing delivery of streaming media data
US6813690B1 (en) * 2001-06-12 2004-11-02 Network Appliance, Inc. Caching media data using content-sensitive identifiers
US20030046704A1 (en) * 2001-09-05 2003-03-06 Indra Laksono Method and apparatus for pay-per-quality of service for bandwidth consumption in a video system
WO2003050758A2 (en) * 2001-12-12 2003-06-19 Koninklijke Philips Electronics N.V. Processing a media signal on a media system
US7386627B1 (en) 2002-01-29 2008-06-10 Network Appliance, Inc. Methods and apparatus for precomputing checksums for streaming media
US7412531B1 (en) 2002-01-29 2008-08-12 Blue Coat Systems, Inc. Live stream archiving method and apparatus
JP4150951B2 (ja) * 2002-02-19 2008-09-17 ソニー株式会社 動画配信システム、動画配信装置および方法、並びにプログラム
US7483487B2 (en) * 2002-04-11 2009-01-27 Microsoft Corporation Streaming methods and systems
CN1647026A (zh) * 2002-04-22 2005-07-27 皇家飞利浦电子股份有限公司 用于存储视听数据的电路、设备和方法
US20030204630A1 (en) * 2002-04-29 2003-10-30 The Boeing Company Bandwidth-efficient and secure method to combine multiple live events to multiple exhibitors
US7657644B1 (en) 2002-05-10 2010-02-02 Netapp, Inc. Methods and apparatus for streaming media multicast
US7120751B1 (en) 2002-08-09 2006-10-10 Networks Appliance, Inc. Dynamic streaming buffer cache algorithm selection
US7953820B2 (en) * 2002-09-11 2011-05-31 Hughes Network Systems, Llc Method and system for providing enhanced performance of web browsing
JP2006503471A (ja) * 2002-10-18 2006-01-26 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 格納処理
US7991905B1 (en) 2003-02-12 2011-08-02 Netapp, Inc. Adaptively selecting timeouts for streaming media
FR2855702A1 (fr) * 2003-05-30 2004-12-03 France Telecom Procede de traitement d'ensembles de donnees de description de contenus multimedia, utilisation de ce procede et dispositif correspondant
US8416952B1 (en) * 2003-07-11 2013-04-09 Tvworks, Llc Channel family surf control
KR101145261B1 (ko) * 2004-02-27 2012-05-24 삼성전자주식회사 멀티미디어 데이터를 기록한 정보저장매체, 그 재생방법및 재생장치
US20060023748A1 (en) * 2004-07-09 2006-02-02 Chandhok Ravinder P System for layering content for scheduled delivery in a data network
US8904458B2 (en) * 2004-07-29 2014-12-02 At&T Intellectual Property I, L.P. System and method for pre-caching a first portion of a video file on a set-top box
US7752325B1 (en) 2004-10-26 2010-07-06 Netapp, Inc. Method and apparatus to efficiently transmit streaming media
US7685609B1 (en) * 2005-02-22 2010-03-23 Adobe Systems, Incorporated Using a distributed form object model to facilitate form event processing
GB2426664B (en) * 2005-05-10 2008-08-20 Toshiba Res Europ Ltd Data transmission system and method
US7496678B2 (en) * 2005-05-11 2009-02-24 Netapp, Inc. Method and system for unified caching of media content
JP4544029B2 (ja) * 2005-05-16 2010-09-15 日本電気株式会社 携帯端末、ストリーミング通信システム、ストリーミング通信方法及びストリーミング通信プログラム
KR20100037659A (ko) * 2005-05-24 2010-04-09 노키아 코포레이션 디지털 방송에서 계층적인 전송/수신을 위한 방법 및 장치
US20070204011A1 (en) * 2006-02-28 2007-08-30 Maven Networks, Inc. Systems and methods for offline access to video content of a web-site
US8001471B2 (en) * 2006-02-28 2011-08-16 Maven Networks, Inc. Systems and methods for providing a similar offline viewing experience of online web-site content
PL2074762T3 (pl) 2006-09-26 2015-08-31 Liveu Ltd System zdalnej transmisji
CA2787754C (en) * 2006-10-03 2014-04-29 Qualcomm Incorporated Method and apparatus for processing primary and secondary synchronization signals for wireless communication
US9154844B2 (en) 2006-10-30 2015-10-06 Alcatel Lucent Method and apparatus for reducing delays due to channel changes
US8201202B2 (en) * 2006-12-21 2012-06-12 Sony Corporation High quality video delivery via the internet
JP5070846B2 (ja) * 2007-01-16 2012-11-14 ソニー株式会社 番組配信システムおよび録画再生装置
CN101321275B (zh) * 2007-06-06 2012-08-08 华为技术有限公司 视频流的处理系统和处理方法
KR100954290B1 (ko) * 2007-12-10 2010-04-26 한국전자통신연구원 Dmb 방송 시스템에서 고품질 미디어 데이터 처리 방법및 장치
WO2009093252A1 (en) 2008-01-23 2009-07-30 Liveu Ltd Live uplink transmissions and broadcasting management system and method
FR2928807B1 (fr) * 2008-03-11 2017-04-07 Canon Kk Procede de transmission sur un reseau de communication d'un signal video pre-encode
US8331659B2 (en) * 2008-05-23 2012-12-11 Broadcom Corporation Method and apparatus for reduced complexity video processing via special chroma handling
US20100050221A1 (en) * 2008-06-20 2010-02-25 Mccutchen David J Image Delivery System with Image Quality Varying with Frame Rate
US8539092B2 (en) * 2008-07-09 2013-09-17 Apple Inc. Video streaming using multiple channels
US9532001B2 (en) * 2008-07-10 2016-12-27 Avaya Inc. Systems, methods, and media for providing selectable video using scalable video coding
US8185650B2 (en) * 2009-01-13 2012-05-22 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Systems, methods, and computer program products for transmitting and/or receiving media streams
US20100250764A1 (en) * 2009-03-31 2010-09-30 Nokia Corporation Method and Apparatus for Signaling Layer Information of Scalable Media Data
US20100250763A1 (en) * 2009-03-31 2010-09-30 Nokia Corporation Method and Apparatus for Transmitting Information on Operation Points
WO2010148227A1 (en) 2009-06-19 2010-12-23 Dolby Laboratories Licensing Corporation Upgradable engine framework for audio and video
US9002881B2 (en) * 2009-10-29 2015-04-07 Microsoft Technology Licensing, Llc Assembling streamed content for on-demand presentation
US8611370B2 (en) * 2009-11-13 2013-12-17 At&T Intellectual Property I, L.P. System and method to provide bundled services through a communication device
US8625667B2 (en) * 2009-11-30 2014-01-07 Alcatel Lucent Method of opportunity-based transmission of wireless video
US8462797B2 (en) * 2009-11-30 2013-06-11 Alcatel Lucent Method of priority based transmission of wireless video
US8010603B2 (en) * 2009-12-07 2011-08-30 International Business Machines Corporation Automated web conference system for generating higher quality of presentation slide by client and submitting to server
US9071875B2 (en) 2009-12-17 2015-06-30 At&T Intellectual Property I, L.P. Processing and distribution of video-on-demand content items
US20120094600A1 (en) 2010-10-19 2012-04-19 Welch Allyn, Inc. Platform for patient monitoring
US20120144438A1 (en) * 2010-12-02 2012-06-07 Alcatel-Lucent USA Inc. via the Electronic Patent Assignment System (EPAS) Method and apparatus for distributing content via a network to user terminals
GB2489020A (en) * 2011-03-16 2012-09-19 David White A method of communicating a traffic stream over a communications network comprising a variable traffic bandwidth
US9201895B2 (en) 2011-06-03 2015-12-01 Apple Inc. Management of downloads from a network-based digital data repository based on network performance
US10491966B2 (en) * 2011-08-04 2019-11-26 Saturn Licensing Llc Reception apparatus, method, computer program, and information providing apparatus for providing an alert service
GB2493840A (en) * 2011-08-18 2013-02-20 Apple Inc Cloud downloads whose quality level depends upon network performance, used for playback and/or upgrading client cached assets
WO2013108954A1 (ko) * 2012-01-20 2013-07-25 전자부품연구원 하이브리드 전송환경에서 스케일러블 초고해상도 비디오 서비스를 위한 프로그램 구성 정보 송수신 방법, 효율적인 스케일러 계층 정보 전송을 위한 방법 및 스케일러 계층 정보 전송을 위한 장치
EP2624577B1 (en) * 2012-02-01 2016-11-02 EchoStar UK Holdings Limited Remote viewing of media content using layered video encoding
WO2013171648A1 (en) 2012-05-17 2013-11-21 Liveu Ltd. Multi-modem communication using virtual identity modules
US8787966B2 (en) 2012-05-17 2014-07-22 Liveu Ltd. Multi-modem communication using virtual identity modules
WO2014049196A1 (en) * 2012-09-27 2014-04-03 Nokia Corporation Method and techniqal equipment for scalable video coding
US8719888B1 (en) * 2012-10-16 2014-05-06 Google Inc. Video encoding and serving architecture
CN103812833A (zh) * 2012-11-08 2014-05-21 上海心动企业发展有限公司 一种根据带宽更新多媒体数据的控制方法及其控制装置
KR20140103569A (ko) * 2013-02-18 2014-08-27 한국전자통신연구원 적응적 계층 선택을 위한 장치 및 방법, 이를 구비한 서버
US9369921B2 (en) 2013-05-31 2016-06-14 Liveu Ltd. Network assisted bonding
US9338650B2 (en) 2013-03-14 2016-05-10 Liveu Ltd. Apparatus for cooperating with a mobile device
US9980171B2 (en) 2013-03-14 2018-05-22 Liveu Ltd. Apparatus for cooperating with a mobile device
TW201441935A (zh) * 2013-04-26 2014-11-01 Hon Hai Prec Ind Co Ltd 視訊截圖系統及方法
US10986029B2 (en) 2014-09-08 2021-04-20 Liveu Ltd. Device, system, and method of data transport with selective utilization of a single link or multiple links
JP6178370B2 (ja) * 2015-09-09 2017-08-09 株式会社メディアリンクス 映像伝送システム及び映像受信装置
GB2547934B (en) 2016-03-03 2021-07-07 V Nova Int Ltd Adaptive video quality
WO2018203336A1 (en) 2017-05-04 2018-11-08 Liveu Ltd. Device, system, and method of pre-processing and data delivery for multi-link communications and for media content
US11873005B2 (en) 2017-05-18 2024-01-16 Driveu Tech Ltd. Device, system, and method of wireless multiple-link vehicular communication
US11050843B2 (en) * 2018-03-30 2021-06-29 Facebook, Inc. Systems and methods for prefetching content

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742892A (en) * 1995-04-18 1998-04-21 Sun Microsystems, Inc. Decoder for a software-implemented end-to-end scalable video delivery system
US5621660A (en) * 1995-04-18 1997-04-15 Sun Microsystems, Inc. Software-based encoder for a software-implemented end-to-end scalable video delivery system
US5828788A (en) * 1995-06-29 1998-10-27 Thomson Multimedia, S.A. System for processing data in variable segments and with variable data resolution
IL117133A (en) * 1996-02-14 1999-07-14 Olivr Corp Ltd Method and system for providing on-line virtual reality movies
US6233017B1 (en) * 1996-09-16 2001-05-15 Microsoft Corporation Multimedia compression system with adaptive block sizes
US6564262B1 (en) * 1996-09-16 2003-05-13 Microsoft Corporation Multiple multicasting of multimedia streams
US6141053A (en) * 1997-01-03 2000-10-31 Saukkonen; Jukka I. Method of optimizing bandwidth for transmitting compressed video data streams
US6728775B1 (en) * 1997-03-17 2004-04-27 Microsoft Corporation Multiple multicasting of multimedia streams
KR100261254B1 (ko) * 1997-04-02 2000-07-01 윤종용 비트율 조절이 가능한 오디오 데이터 부호화/복호화방법 및 장치
US6745226B1 (en) * 1997-05-02 2004-06-01 Roxio, Inc. Method and system for progressive encoding in an active desktop environment
US6510553B1 (en) * 1998-10-26 2003-01-21 Intel Corporation Method of streaming video from multiple sources over a network
US6637031B1 (en) * 1998-12-04 2003-10-21 Microsoft Corporation Multimedia presentation latency minimization
US6496980B1 (en) * 1998-12-07 2002-12-17 Intel Corporation Method of providing replay on demand for streaming digital multimedia
US7536705B1 (en) 1999-02-22 2009-05-19 Tvworks, Llc System and method for interactive distribution of selectable presentations
US6460153B1 (en) * 1999-03-26 2002-10-01 Microsoft Corp. Apparatus and method for unequal error protection in multiple-description coding using overcomplete expansions
US6470469B1 (en) * 1999-03-26 2002-10-22 Microsoft Corp. Reconstruction of missing coefficients of overcomplete linear transforms using projections onto convex sets
US6594798B1 (en) * 1999-05-21 2003-07-15 Microsoft Corporation Receiver-driven layered error correction multicast over heterogeneous packet networks
US6532562B1 (en) * 1999-05-21 2003-03-11 Microsoft Corp Receiver-driven layered error correction multicast over heterogeneous packet networks
US6996097B1 (en) * 1999-05-21 2006-02-07 Microsoft Corporation Receiver-driven layered error correction multicast over heterogeneous packet networks
US20020049979A1 (en) * 2000-05-18 2002-04-25 Patrick White Multiple camera video system which displays selected images
US7196722B2 (en) * 2000-05-18 2007-03-27 Imove, Inc. Multiple camera video system which displays selected images
US6816194B2 (en) * 2000-07-11 2004-11-09 Microsoft Corporation Systems and methods with error resilience in enhancement layer bitstream of scalable video coding
US6823394B2 (en) * 2000-12-12 2004-11-23 Washington University Method of resource-efficient and scalable streaming media distribution for asynchronous receivers
US6987728B2 (en) * 2001-01-23 2006-01-17 Sharp Laboratories Of America, Inc. Bandwidth allocation system
US7237032B2 (en) * 2001-02-16 2007-06-26 Microsoft Corporation Progressive streaming media rendering
US7483487B2 (en) * 2002-04-11 2009-01-27 Microsoft Corporation Streaming methods and systems

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005531213A (ja) * 2002-06-21 2005-10-13 トムソン ライセンシング 携帯無線相互動作環境における格納映像のストリーミングの品質の向上
KR100690710B1 (ko) 2003-03-04 2007-03-09 엘지전자 주식회사 동영상 전송방법
JP2008523718A (ja) * 2004-12-06 2008-07-03 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 音声・映像コンテンツのダウンロード及び再生を同時に行う方法及びシステム
JP2013081158A (ja) * 2011-08-18 2013-05-02 Apple Inc ネットワークパフォーマンスに基づく、ネットワークベースのデジタルデータリポジトリからのダウンロードの管理

Also Published As

Publication number Publication date
US20020116473A1 (en) 2002-08-22
EP1233591B1 (en) 2006-07-26
ATE334544T1 (de) 2006-08-15
DE60213297T2 (de) 2007-08-23
US20060015633A1 (en) 2006-01-19
US7359980B2 (en) 2008-04-15
US20060015634A1 (en) 2006-01-19
US7237032B2 (en) 2007-06-26
EP1233591A2 (en) 2002-08-21
EP1233591A3 (en) 2004-02-25
DE60213297D1 (de) 2006-09-07
JP4818562B2 (ja) 2011-11-16
US7383346B2 (en) 2008-06-03

Similar Documents

Publication Publication Date Title
JP4818562B2 (ja) 漸進的により高品質のバージョンのオーディオおよび/またはビデオプログラムを得るための方法およびコンピュータネットワーク
US11677798B2 (en) Apparatus, system, and method for multi-bitrate content streaming
US20040268400A1 (en) Quick starting video content
KR101364824B1 (ko) 스트리밍 미디어 콘텐츠에 대응하는 광고 콘텐츠를 관리하는 시스템 및 방법
JP2008503926A (ja) ネットワークを介したメディアの対話型制御のための方法及びシステム
CN104471947A (zh) 内容发送装置、内容再现装置、内容发布系统、内容发送装置的控制方法、内容再现装置的控制方法、数据结构、控制程序以及记录介质
JP2004040502A (ja) 情報再生装置、情報再生方法および情報再生システム
CN112243136A (zh) 内容播放方法、视频存储方法和设备
JP2004159057A (ja) 再生情報配信システム及び再生情報配信方法
JP2002077857A (ja) マルチメディアデータの送出装置
JP2005110024A (ja) データ送信装置、データ送受信システム、及びデータ送受信方法
JP7318123B2 (ja) 適応的バッファを使用してビデオコンテンツをストリーミングするための方法、システム、および媒体
KR101378092B1 (ko) 스트리밍 데이터 스킵 탐색 방법 및 장치

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050218

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080115

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080807

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20080808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20080808

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080918

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20090123

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20100526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110729

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

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

Free format text: PAYMENT UNTIL: 20140909

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4818562

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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