JP2006523980A - データ要求装置、データ送信装置、およびそのプロセスならびに対応する製品 - Google Patents

データ要求装置、データ送信装置、およびそのプロセスならびに対応する製品 Download PDF

Info

Publication number
JP2006523980A
JP2006523980A JP2006505562A JP2006505562A JP2006523980A JP 2006523980 A JP2006523980 A JP 2006523980A JP 2006505562 A JP2006505562 A JP 2006505562A JP 2006505562 A JP2006505562 A JP 2006505562A JP 2006523980 A JP2006523980 A JP 2006523980A
Authority
JP
Japan
Prior art keywords
data
server
requesting device
intended
normal
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.)
Pending
Application number
JP2006505562A
Other languages
English (en)
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.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of JP2006523980A publication Critical patent/JP2006523980A/ja
Pending 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/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/266Stopping or restarting the source, e.g. X-on or X-off
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/36Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client 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/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/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
    • 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/44245Monitoring the upstream path of the transmission network, e.g. its availability, bandwidth
    • 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/47211End-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 pay-per-view content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6118Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving cable transmission, e.g. using a cable modem
    • 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/6377Control signals issued by the client directed to the server or network components directed to server
    • 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/643Communication protocols
    • H04N21/64322IP
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

本発明はデータ要求装置、データ送信装置およびそのプロセスに関するものである。
本発明は特に、決められたデータの要求(REQU)をサーバーに送信する手段(22)と、そのサーバーからストリームデータ(DATA)を受信して該データを処理手段(24)に入力する受信手段(23)と、データストリーミングを一時停止させ、そのサーバーへの送信再開を引き起こすための一時停止制御信号(XOFF)を生成する手段(30)とを有する、データサーバー(10)に対するデータ要求装置(2)に関するものである。
要求装置は、該要求装置における正常動作をサーバーに示すための正常状態信号(NORMAL)を生成し、そしてそれらの信号のサーバーへの周期的送信を引き起こすための手段を有する。
VODへの応用あり。

Description

本発明は、わけても、特にVOD(Video On Demand[ビデオ・オン・デマンド]の略)のためのデータを要求/送信する装置およびプロセスならびに対応する製品に関するものであるが、それに制限されるものではない。
パソコンPC(パーソナル・コンピュータの略)に利用できる既存の技術によれば、ビデオもしくはオーディオまたはその両方のデータ(以下、「AVデータ」と記す)をインターネットを通じてサーバーに注文することは、要求するパソコンをサーバーに接続し、該パソコンのIP(Internet Protocol[インターネット・プロトコル]の略)アドレスを伝えることによって可能である。これはたとえば予告編や広告に適用される。こうした技術は、ストリーミングに依拠しており、AVデータをのちの表示のための保存スペース内にダウンロードするのみならず、表示しながら同時にAVデータを取得することをも可能にする。
既存の技術の問題は、データが受信側によってちゃんと受信され、しかるべき時間内に正しく利用されるかどうかについての確証が得られないということである。特に、受信側のバッファにあまりに多くのデータが到着すると、オーバーフローが起こりうる。また、オーバーフローを避けるために一時的に送信を中断しなければならない場合、バッファが次のデータを受け取る用意ができたときに送信が中断された位置から送信を再開するというのはあまり実用的ではない。さらに、受信側で問題が起こる場合、ストリーミングが継続される危険があり、無用に帯域を費消してしまう。
既存の技術は、受信側からサーバーに、ストリーミングを中止、一時停止または再開するための特別な制御信号を送信するというものである。
特に、文書WO−9704585はVODサーバーから受信機へネットワークを介してMPEGでエンコードされたテレビ信号を送信することに関するものである。受信機は一時停止および再開のほかスローモーションや諸機能をサーバー側に指示できるようになっている。ネットワークにまつわるネットワーク遅延や再多重化といったことは、ビットストリーム中で中断後にサーバーが信号の送信を再開できる位置に位置ラベルを挿入しておくことによって配慮されている。一時停止要求があると、受信機はまずそのような位置ラベルが検出されるまで再生を継続する。再生再開の要求があったときには、受信機はサーバーに、前記検出された位置から始まる信号の再送信を要求する。
しかし、このような解決はサーバーと受信機との間の信頼できる通信を前提としており、何らかの理由で受信機がしかるべき時間内に指示を送信できなかったり、サーバーがそれをうまく受信できなかったりすると機能しない。そのような場合はもはや利用されないストリームデータの送信が続き、帯域の損失につながる。
本発明は、受信側で、あるいはデータサーバーと受信側との間の通信ネットワーク内で不具合があった場合に無駄なデータストリーミングの危険を合理的に軽減することのできる、データ、特にAV(Audio/Video[オーディオ/ビデオ])データの柔軟な取得を可能にする、データ要求装置に関するものである。本発明の該要求装置は特に、そのようなサーバーで再生される映画を一時停止させたり再取得したりすることをできるようにしうる。
本発明はまた、その前記装置に対応し、同様の利益をもたらすことのできる、データ要求プロセス、データ送信装置およびプロセスならびに製品に関するものでもある。
そのために、本発明は請求項1で定義されるデータ要求装置に関係している。
従前と異なり、本発明は二つの異なる相補的な機構の組み合わせに依拠している。一つは送信を一時停止させる特別な制御信号に基づくものであり、もう一つは受信側で問題が起こっていないことを示す、すなわちストリームデータの受信と利用が正しく行われていることを意味すると言える、周期的な信号(正常状態信号)に基づくものである。
この方法では、受信側で問題が生じてストリームデータの正常な利用が妨げられた場合、周期的信号がサーバーに送られなくなり、サーバーはその受信機に対するいっさいの送信を中止することになる。他方、サーバーによるデータ送信の一時停止を受信側が指示することもできる。
このように、サーバーは受信側の戻り経路情報に応じた状況に依存して異なる二通りの方法でデータのストリーミングを中止する(一時的であってもそうでなくても)ことができる。
前記データ要求装置で使われる第一および第二の通信ネットワークは、単一の双方向通信ネットワークであってもよい。さまざまな実施形態において、それはインターネットのようなWANネットワークであったり、あるいは家庭ネットワークまたは企業もしくは地理的に制限された領域(建物など)のために局所的に使われるネットワークのようなLANネットワーク(Local Area Network[ローカルエリアネットワーク]の略)であったりする。また、第一の通信ネットワークは、要求されたデータをストリーミングするための放送ネットワークおよび制御情報を送信するための双方向ネットワーク(たとえば電話線)であってもよい。
前記データ要求装置は好ましくは従属請求項2ないし7に準拠したものである。
特に、データ要求装置における一時停止制御信号の生成は、特に、ユーザーによって意図的にユーザーインターフェースを介して引き起こされてもよいし、中央メモリのオーバーフローを避けるために自動的に引き起こされてもよい。
また、サーバー側で一時停止したのちのデータストリーミングの再開は、特に、ある所与の時間(これは特に、ユーザーによって、5分の一時停止などという形で一時停止制御信号内で送信されてもよい)後に自動的に行われてもよいし、前記データ要求装置からの再開制御信号の送信によって引き起こされるのでもよい。
本発明はまた、本発明に基づくデータ要求装置を有するデコーダおよび請求項9で定義されるデータ要求プロセスに関するものでもある。
本発明はさらに、請求項10で定義されるデータ送信装置に、好ましくは請求項11ないし13のいずれかにおいて言及されている実施形態の一つに、また請求項14で定義されるデータ送信プロセスに関するものである。
本発明のさらなる目的は、コンピュータ上で実行されたときに、本発明に基づくデータ要求プロセスまたはデータ送信プロセスのステップを実行するプログラムコード命令を有しているコンピュータプログラムプロダクトである。「コンピュータプログラムプロダクト」とは、ディスケットまたはカセットのような当該プログラムを含んだ記憶スペースのみならず電気または光信号のような信号をも含みうるコンピュータプログラム基盤を意味している。
本発明は、付属の図面とともに限定的な意味のない以下の実施形態および実装の例によってよりよく理解され、説明されることであろう。
図2および図3では、表示されているブロックは純粋に機能的な実体であり、必ずしも物理的に別個の実体に対応するわけではない。すなわち、ソフトウェアの形で開発されることもあれば、一つまたは複数の集積回路に実装されることもある。
データ送信装置1を備えたサーバー10(図1)は、データ要求装置2を備えた少なくとも一つの受信機20に対して、第一のネットワーク5を通じてデータをストリーミングすることができる。受信機20のほうは、サーバー10に対して、第二のネットワーク6を通じた戻り経路によって情報を送信することができる。たとえば、第一のネットワーク5は、特に衛星、電波放送、ケーブルに依拠したものでありうる放送ネットワークであり、第二のネットワーク6は電話線ネットワークである。両ネットワーク5および6は、たとえばDSL(Digital Subscriber Loop[デジタル加入者線])通信に基づく単一の双方向ネットワークによって構成されていてもよい。
サーバー10のデータ送信装置1(図2)は:
・受信機20からのメッセージを受信するための受信モジュールであって、該メッセージが特にデータ要求(data request)REQU、受信機20の機能に関する情報(information)INFO、受信側が正しく動作していることを確認するためにサーバー10に周期的に送信される正常状態信号(normal state signal)NORMAL、データストリーミング様式を修正するための(特に送信を一時停止したり再開したりするため、スローモーションや早回し、逆回しのためなどの)制御(control)信号CTRLを含みうるような受信モジュール11と、
・受信機20に向けて提供されるべきデータの一連の区画のサイズおよびそれらの区画の一つの送信から次の送信までの遅延を、ある最大バンド幅のレートまで対応でき入力バッファ(またはいくつかの入力バッファ)を有する受信機20についての前記最大バンド幅のレートおよび前記入力バッファの大きさに関する情報INFOに応じて決定するための指定モジュール12と、
・要求されたデータのデータ区画の形でのストリーミングを制御信号STRMによって引き起こし、前記区画のストリーミングの周期性がクロック41によって保証されるような、ストリーミングモジュール13と、
・正常状態信号NORMALの一つでもしかるべき時間内に受信されなかったときに受信機20に警告(warning)メッセージWARNを送信する転送モジュール14と、
・警告メッセージWARNが送信されたあとでも前記正常状態信号NORMALがしかるべき時間内に受信されなかったときに警報を引き起こす警報モジュール15と、
・早回しおよび逆回しに指定モジュール12と対話しながら使われ、所望される動作に対して要求されているデータ中での一連の関連位置を同定することができ、それらの位置の一連の呼び出しは指定モジュール12が行うような、解釈モジュール16、とを有する。
受信機20のデータ要求装置2(図3)は:
・サーバー10に要求メッセージREQU、情報INFO、正常状態信号NORMAL、制御信号CTRLを送信する送信モジュール22と、
・サーバー10から特にストリームデータDATAを受信してそれを入力バッファ21(またはいくつかのそのような入力バッファ)に転送するために設計されており、また特にサーバー10から警告信号WARNを受信するための備えもされている受信モジュール23と、
・受信したデータDATAをたとえばビデオおよびオーディオストリームを復号することによって処理する処理モジュール24と、
・情報INFOを取得し、それをサーバー10に送信するために送信モジュール22に提供することのできる情報取得モジュール25と、
・入力バッファ21から転送されたデータDATAを処理モジュール24に送信する前に一時的に保存するための中央メモリ26と、
・入力バッファ21内で利用できるデータを引き出して中央メモリ26に転送するためのデータポンプ27と、
・中央メモリ26内のデータが該中央メモリ26のある所定の中間閾値レベルまで達したときに、該中央メモリ26からデータを処理モジュール24に転送するための注入部28と、
・制御信号CTRLを生成し、それをサーバー10に送信するために送信モジュール22に提供することのできる制御モジュール30と、
・正常状態信号NORMALを生成し、送信モジュール22によるサーバー10へのその周期的な送信を引き起こし、正常状態信号NORMALの送信の周期性がクロック42によって保証されるような、保持モジュール31と、
・データポンプ27と結合した調整モジュールであって、制御モジュール30をして、中央メモリ26内のデータがある所定の高閾値レベルを超えたときに一時停止制御信号を発生させ、データストリーミングが先に当該調整モジュール32によって一時停止されているときに前記データがある所定の低閾値レベルまで下がったときに再開制御信号を発生させるための調整モジュール32と、
・ユーザーが制御モジュール30および送信モジュール22を操作してサーバー10に制御信号CTRLを与えることができるようにするユーザーインターフェース35、とを有する。
図4から図9を参照した詳細な特定の実施形態によって、上述したデータ送信装置1およびデータ要求装置2の機能がよりよく理解できるようになるだろう。
サーバー10およびそれぞれ符号20−1…20−nで示すIRD(Integrated Receivers Decoders[組み込み受信機デコーダ]の略)(IRD1…IRDn)(そのそれぞれが上述した受信機20と同様のもので、以下では一般的な表記として参照符号「20」を用いる)を有する通信環境(図4)が、PSTN回線(Public Switch Telephone Network[公衆電話交換網])を通じて通信している。PSTN回線はPSTNネットワーク7としてネットワーク5および6の両方(同一のネットワーク)をなしている。その環境は、インターネットの世界で好適の真のビデオストリーミングシステムを提供する。サーバー10は第一のVDSL(Very high speed Digital Subscriber Loop[超高速デジタル加入者線]の略)モデム43にイーサネット(登録商標)接続によって接続されており、一方、IRDはたとえばそれぞれテレビが付随しており、第二のVDSLモデム44にスイッチ45を介してイーサネット(登録商標)接続により接続されている。
VDSLモデム43および44は60Mbpsにも及ぶ高ビットレートを可能にする。よって、前記の通信環境は、エンドユーザーが自分専用の番組をカタログから選んで再生や一時停止を無用に帯域を使うことなく注文することができる真のビデオ・オン・デマンドシステムを提供する。
例として、前記通信環境は、IRDをなすものとしてLAN(Local Area Network[ローカルエリアネットワーク])接続機能のあるセットトップボックス(set-top-box)(以下STB)20−1から20−nと、VDSLモデム43および44と、リナックス技術に基づくPCサーバー10とを有している。もちろん、リナックス以外のOSを使うこともできる。
各IRDは要求装置2を有しており、一方、サーバー10は対応する送信装置1を有している。
変形としては次の一部または全部を採用することができる。
・ADSL(Asymmetric Digital Subscriber Loop[非対称デジタル加入者線])モデム技術およびマルチキャストを今の実施形態のVDSLモデムの代わりに使う。一般にはxDSL(HDSL―High-data-rate DSL―や10Mbps DSLやADSL2…)が他の可能性を与える。
・ユーザー側でのイーサネット(登録商標)接続の代わりにUSB(Universal Serial Bus[ユニバーサルシリアルバス])コネクタを使う。バスに直接接続などといったその他の接続手段も可能である。
・ユーザー側にIRDが一つしか存在せず、第二のVDSLモデム44に直接接続されている。

A:システムの説明 概要

主たる要求事項はユーザーに対して要求に基づいてビデオ/オーディオストリームを供することである。今の実施形態では同時に5ストリームまでに限定されるが、他の実施形態では制限が異なっていたり、制限が全くなかったりすることもある。
テレビのエンドユーザーは特に、カタログから一つの番組を選び、それを再生し、中止し、一時停止/再開することができる。

A1:ネットワーク
VDSLモデム43および44は、ADSLでも同様だが、既存のユーザーの現地の電話線を使う。そうしたモデムにはイーサネット(登録商標)またはUSBコネクタがある。
転送フォーマットはMPEG2(Moving Picture Experts Group[動画像専門化委員会]の略)SPTS(Simple Program Transport Stream[単一プログラムトランスポートストリーム]の略)であり、言葉の問題のため音声情報は何組か送られてもよい。ここで、STBはこの種のストリームを容易に再生する機能をもともと備えている。
サーバー側では、PC10がイーサネット(登録商標)100BT(100Base-Tの略)接続を通じてモデム43に接続されている。
ユーザー側では、STB(4つまで)がイーサネット(登録商標)10BT接続を通じてスイッチ45に接続されており、該スイッチは100BT/10BTスイッチである。ここで、どのユーザーも共有VDSL回線を、家庭用パソコン、他の部屋のSTBなど異なる用途に使用することができる。また、前記スイッチを使うことによって衝突ドメインが分離されるので、衝突の伝搬が起こらなくなる。
図示した例では、UDP(User Datagram Protocol[ユーザーデータグラムプロトコル])プロトコルスタックより上では固有のプロトコルが使われる。その解決法の利点は(接続がきちんとできる限りにおいて)、モデムによって導入される帯域幅遅延積に、そして現在手にはいるSTBのイーサネット(登録商標)インターフェースが半二重機能しかもたないことによっている。そのため、より複雑でより非効率なプロトコルの必要性はないのである。実験によると、TCP(Transmission Control Protocol[転送制御プロトコル])プロトコルスタックはこのネットワーク環境では、たとえいわゆる「ウィンドウスケールオプション」を使っても深刻な制約があることが示されている。

A2:サーバー10
リナックスをベースとし、
・エンドユーザーのIPアドレスを設定するためのDHCPサーバー(Dynamic Host Configuration Protocol[動的ホスト構成プロトコル])を含み、
・当該アプリケーションをデーモンとして走らせ、
・それぞれがサーバーのハードディスクドライブ上にあるファイルからなる番組のカタログへのアクセスを提供し、
・開発されたプロトコルに基づいてファイルをストリーミングし
・ユーザーの接続/切断状態ならびにユーザーの無効状態を管理し、既知のポートが使われる。
サーバー10は、有利にはDSLAM(Digital Subscriber Line Access Multiplexer[デジタル加入者線アクセス多重化器])に直接接続された中心局にある。そこでそのカタログは扱い者によって効率的に(更新法、キャッシュアルゴリズム…)管理されている。

A3:セットトップボックス20−1…20−n
これらは:
・一覧から一つの番組を選び、
・「番組の再生」ボタンを押して番組を開始させ、
・「番組の一時停止/再開」ボタンを押して番組を一時停止/再開させ、
・別の番組に切り換え、
・音声と画像を正しく復号して同期させ、
・ストリームサーバーから5Mbpsまでの固有ビデオビットレートを受け入れる、
ことができる。

B:プロトコル

B1:概要
サーバー10およびSTB20−1…20−nは互いにTCP/IP LANで接続されている。実際には(図5)、STB20の一つがソケットをサーバー10に接続してオーディオ/ビデオファイルを要求する。するとサーバー10はそのファイルをハードディスクドライバ17からバッファソケット18を通じてループ処理に載せ、それはのちにSTBからの要求があったときにのみ終了する。
ファイルはネットワーク7を通じてSTB20のソケットバッファ21に送信される。そこから中央メモリ26に転送される。該中央メモリはここではたとえば1メガバイトの大きさをもつFIFO(First In, First Out[先入れ先出し]の略)によって構成されている。次いでMPEG MLMP(Main Level Main Profile[メインレベルメインプロファイル]の略)50に転送される。
特別に設計されているファイル転送プロトコルは:
・利用可能なカタログを要求し、
・ストリーム転送パラメータ設定のために接続し、
・ファイルをオープン/クローズし、
・クライアントのデータ消費に配慮しつつMPEG2−SPTSファイルをストリーミングし、
・場合によって当該ファイルをインデックス化し、
・クライアントの無効状態を検査する、
ことを可能にする。
前記プロトコルは:
・ストリームデータを転送し(このためデータ回復は必要ない)、
・きちんとしたネットワーク上で動作し(すなわち、データ損失がないということだが、今のシステムではモデムやスイッチを使用することにより衝突が起こらないのでこれがあてはまる)、
・遅延が長く幅が太い通信路で動作する(すなわち、ネットワーク上またはクライアントのバッファのいずれかに多くのデータがたまる)、
よう構築されている。
このためUDPが下位のプロトコルとして全く適切なことになる。
このシステムは、クライアント(すなわちIRDの一つにおけるもの)が、ここではネットワークにあるデータをあたかも記憶媒体に要求するようなものとして見ることができる。そこでは、当該クライアントが、MPEG復号処理に従ってデータストリーミングを調整する。

サーバーでの計算
プロトコルがUDPベースであり、サーバー10がバンド幅容量が大きいことから、サーバーはクライアントにオーバーフローを起こさせないよう配慮する必要がある。このことを保証するために設定時にクライアントによってパラメータが与えられている。そのパラメータは次の通り。
・クライアント(client)が対応可能な最大バンド幅(bandwidth)のレート CBW:受信側のSTB20の全体としての容量に関わるレートであり、特に受信データを入力ソケットバッファ(またはいくつかの入力ソケットバッファでもよい)から引き出す速度に関係している。
・クライアントの入力ソケットバッファサイズ(client input socket buffer size) CSOCKBUFSZ:複数の入力ソケットバッファがあってその間で到着データが分配される場合には、パラメータCSOCKBUFSZはそれらのバッファをまとめた大きさによって与えられる。
・クライアント保持メッセージ繰返し周期:そのようなメッセージはSTB20からサーバー10に周期的に―たとえば5秒ごとなど―送信されることが意図されている。これは、サーバーにSTB20が正しく動作し、ストリームデータを利用していることを伝えるためである。これが受信されないとSTBの不具合または無効と解釈される。
サーバー10はデータのストリーミングをこれらのパラメータに基づいて行う。前記ソケットバッファサイズから、要求を発しているSTBに逐次送信される区画の大きさを与える値UINIT_SIZEを計算する。ある有利な例では、その値は次式で与えられる。
UNIT_SIZE=CSOCKBUFSZ/8
因子8によってサーバー側で区画を小さなサイズにすることができ、これはストリームデータを効率的に分割することがわかった。すなわち、受信側でのオーバーフローの確率が非常に小さくなり、高度の分割により他のストリームとの帯域の共有を改善することもできる。しかし、もっと小さな因子(たとえば2まで)も可能であり、またサーバーが許せばもっと大きな因子も可能である。
サーバー10は、前記の値に対応した上限を設定してデータ送信をループし(UNIT_SIZEごとにループする)、CBWビットレートを超えないよう遅延を挿入する。一連のデータ区画を送信する周期PERIODは次式で定義される。
PERIOD=UNIT_SIZE/CBW
この周期は典型的には保持送信周期よりもはるかに短い。

クライアントでの計算
クライアント側では二つのパラメータが計算される。それはファイルのストリーミングに必要なバンド幅を無駄にすることなくデータ送信を一時中止/再開するためのものである。こうしたパラメータは、STB20において、入力バッファ21からはいってくるデータを処理の前に一時的に保存しておくために設けられている、大きさFIFO-SIZEの中央FIFOメモリ26の埋まり具合の閾値を与えるものである。まず、低FIFO閾値LFIFOは、データのストリーミングが一時停止されているときに、そこまで下がったらデータのストリーミングの再開をXONと呼ばれる特定のメッセージによって指示する下の限界を与える。一方、高FIFO閾値HFIFOは、データ処理が追いつかなくなってその閾値を超えたらサーバー10からのデータストリーミングをXOFFと呼ばれる特定のメッセージによって一時停止させるという上の限界を与える。
両閾値LFIFOおよびHFIFOは次の関係式を満たすように選ぶ。
LFIFO≦HFIFO
FIFO-SIZE−HFIFO≧CBW×RTT/2
LFIFO≧CBW×RTT/2
ここで、RTTは往復遅延時間(Round-Trip-Time)、すなわちパケットを送出してその受信確認を得るまでの時間差である(FIFOは十分な大きさがあり、FIFO-SIZE>CBW×RTTである)。この時間は設定時にクライアントが測定するもので、周期的に再評価してもよい。これは、サーバーからの通信が中断されたときにまだネットワークに残っていて受信されるべきである可能性のあるデータ量のめやすとなる。

入力ソケットバッファ21
これらの入力バッファはUDP/IPスタックとともに埋め込まれている。これらはSTB20をあふれさせないのに十分な大きさである。サーバー10はストリーミングする区画をクライアントのソケットバッファの大きさに従って計算する。

中央FIFO26
この中央バッファ26はバースト副作用に対処するために使われる。クライアントはこのFIFOに十分なデータがあるときにのみ復号を開始する。十分なデータがあるかどうかは、第三のFIFO閾値によって決定される。それは低閾値LFIFOと高閾値HFIFOの間にある値をもつ中間閾値MFIFOである。データ処理(処理ユニットへの転送)を引き起こすこの閾値MFIFOは、ある効率的な実施形態では、低閾値LFIFOに等しい。上述のように、クライアントはまた、FIFOがいっぱいになったとき(閾値HFIFO)にはサーバーストリーミングを一時停止させ、FIFOが少なくなったとき(閾値LFIFO)にはサーバーストリーミングを再開する。
上記の一時停止と再開はそれぞれSTB20からサーバー10に送られるXOFFおよびXONメッセージによって行われる。どの時点でもストリーミングを一時停止し、あとで再開するのをクライアントが決めるのに、同じ信号を使うことができる。
さらに、ここで記載される有利な成果では、前記保持メッセージが周期的に送信され、サーバーによって検査されることが一時停止状態においてでも続けられる。
第一の具体的な実施例では、閾値は次のような値に選ばれる:
LFIFO=MFIFO=(1/4)FIFO-SIZE
HFIFO=(3/4)FIFO-SIZE
FIFO-SIZEを1メガバイトとすると、これは次の値を与える:
LFIFO=MFIFO=250KB
HFIFO=750KB
ここで、データが受信されるストリーミング速度がCBW=6Mbpsで、データ処理速度が復号速度であり、4Mbpsに等しいエンコードビットレート(encoding bit rate)EBRに対応するとすると、2秒のストリーミング期間(XON)が1秒の一時停止期間(XOFF)と交互に現れる。実際、ストリーミングがオンであるときのFIFOが埋まっていく有効速度はCBW−EBR(今の場合2Mbps)であり、一方、ストリーミングがオフであるときの減っていく速度はEBR(今の場合4Mbps)なのである。
第二の具体的な実施例では、閾値は次のような値に選ばれる。
LFIFO=MFIFO=CBW×RTT/2
HFIFO=FIFO-SIZE−CBW×RTT/2
FIFO-SIZEを1メガバイト、RTTを100msecとすると、これは次の値を与える。
LFIFO=MFIFO=39321バイト
HFIFO=960679バイト
今、ストリーミング速度がCWB=6Mbpsで、データ処理速度が4Mbpsに等しいEBRであるとすると、7.4秒のストリーミング期間が1.85秒の一時停止期間と交互に現れる。

MLMP MPEGバッファ50
これらはMPEG2のPES(Packet Elementary Stream[パケット基本ストリーム]の略)ストリームを正しく復号するために用意されている。STBに埋め込まれたオーディオ/ビデオデコーダスタックが用いられる。メインレベル/メインプロファイル(Main-Level/Main-Profile)が実装されている。
サーバー側ではエンコード処理はないので、PCR(Program Clock References[番組クロック参照]の略)は運用されていないが、ローカルなVCXO(Voltage Control Crystal Oscillator[電圧制御水晶発信器])は27MHzに設定されている。いずれにせよ、ビデオおよびオーディオPTS(Program Time Stamps[番組タイムスタンプ])を使ってオーディオはビデオに同期されている。復号処理はバッファアンダーフローは許容し、エラーがあってもMLMPバッファ50をリセットしたりフラッシュしたりすることはない。

B2:プロトコルスタック
プロトコルおよびストリーミングのサーバー側からの状態遷移図は図6および図7に示されている。
使用されているプロトコルスタックは次の通りである。
Figure 2006523980
ソケットはUDPプロトコルの上でオープンである。

B3:アプリケーションプロトコル
処理は以下のステップに分割される:
・ソケット生成、
・アプリケーション層による:
・交換を開始するOpen Stream
・交換Write/read Stream
・交換を終了するClose Stream
を有する処理、
・ソケットクローズ。
アプリケーション層で構築されるパケットはメッセージである。すべてのメッセージは一般的なフォーマットを有する:
・ヘッダ:
・メッセージタイプ(1単位長)
・4つまでの任意的なパラメータ(4単位長)
・データ:当該ストリームの一部。また信号メッセージについては空。
すべてのデータ型はネットワーク式のデータ配列である。すなわち最上位ビット(MSB―Most Significant Bit[最上位ビット]―の略)が先にくる。
サーバー側からのプロトコルの主な動作は次のようなものである(図6;ここで、recvはreceive[受信]の略である):
・STBの一つからメッセージを受信するのを待ち(ステップS1)、
・STBの一つから接続(connection)メッセージCONNECTを受信し(ステップS2)、
・クライアントサーバープロセスをフォークし(ステップS3)、
・接続確認(connection acknowledgement)CONNECT_ACKを送信し(ステップS4)、
・要求を発しているSTBに接続し(ステップS5)、該STBから接続パラメータを受信する(ステップS6)ことによってパラメータを取得して対応する計算を行い(ステップS7)、接続メッセージを送信し(ステップS8)、
・要求しているSTBが正しくサーバーと連絡し続けていることを検査するためのクライアント無効状態警戒を開始し(ステップS9)、それは所定の送信周期(たとえば5秒)をもつ保持(keep alive)メッセージKEEPALIVEの周期的な受信によって検査されるものであり、
・STBクライアントが目標とするファイルをオープンし(ステップS10)、関係するファイルを指示するオープンメッセージOPEN(file)を受信する(ステップS11)ことによって、対応するファイル識別子File_idを取得してそれをオープンし(ステップS12)、
・該ファイルを要求を発しているSTBクライアントにストリームし(ステップS13)つつ、周期的に保持メッセージを受信して(ステップS14)しかるべく警戒を再開し(ステップS15)、ファイル送信の終わりまで続け、
・クローズメッセージCLOSEを受信したときにはファイル送信を停止し(ステップS16)、
・保持メッセージが受信されないために警報が発された場合には(ステップS17)、クライアントサーバープロセスを終了する(ステップS18)。
サーバー側からのストリーミング動作は次のようなものである(図7):
・保持メッセージが受信されて(ステップS14)警戒が再開される(ステップS15)限り、そして当該ファイルの送信が完了していない限り、データファイルのストリーミングを進め(ステップS13)、上で見たように保持メッセージがしかるべき時間内に受信されないと警報が発され(ステップS17)、
・特別な中断メッセージXOFFを受信したときには(ステップS19)、ストリーミングを一時停止し(ステップS20)つつ、保持メッセージ受信の検査を続け(ステップS14)その結果により警戒を再開し(ステップS15)、
・のちに特別な再開メッセージXONを受信したときには(ステップS21)、先に中断された点でファイル送信を再開し(ステップS13)、
・ストリーミングが現在行われていようと一時停止中であろうと、保持メッセージがしかるべき時間内に受信されない場合にはクライアントサーバープロセスを終了する。
前記プロセスのおかげで、サーバー10は受信機20のビデオストリーミングに関してのスペックに完全に適応させることができる。さらに、前記プロセスでは、クライアントが実際にストリーミングされたデータを利用するために有効に必要とする帯域しか使用しないことが可能となりうる。
ある有利な実施形態では、警報を発するタイムリミットは、予期される期間に往復遅延時間RTTに基づく長さ、たとえば3〜4RTTを上乗せしたもので与えられる。
クライアント側でストリーミングされたデータを正しく受信しているかどうかをサーバー側で検査する点についてのある改良版では、警報が発されるのは、保持メッセージが受信されない期間が保持メッセージの周期より十分長い期間、たとえばその期間の3倍に達したときのみとされる。これによりSTBとサーバーとの間の送信において生じうる遅延に配慮することができる。
検査方法についてのあるさらなる改良によると、サーバー側で保持メッセージを受信すると期待されていた時間が過ぎてもそのようなメッセージが届かなかった場合には、サーバーはクライアントSTBに警告を送り、するとクライアントはもしまだ有効な受信状態にあるのであればすぐに再び保持メッセージを送り返す。これは、ネットワークにおける送信問題、特にパケット損失などに起因してストリーミング処理が誤って中断される危険を著しく低下させ、それによりシステムの信頼性を向上させる。
上記の両特徴(タイムリミットの決め方や警告メッセージ)は有利に組み合わせることができる。
a:ソケット接続
Figure 2006523980
IPアドレスは定数。
b:接続初期化
Figure 2006523980
Figure 2006523980
c:ストリームのオープン/クローズ
Figure 2006523980
Figure 2006523980
d:ストリーミング
Figure 2006523980
Figure 2006523980
e:交換終了とソケットクローズ
Figure 2006523980
C:セットトップボックス20
STB20の一つがAL_OPENメッセージを送信したら、それはサーバー10がストリームデータパケットを送信するまで待つ(受信はノンブロッキングである)。STB20はソケットからできるだけ多くのデータを読み込んで、CPU(Central Processing Unit[中央処理装置]の略)を注入および復号プロセスのスケジューリングが行えるように解放する。ある好適なアルゴリズムは、データポンプ27の各スケジュールにおいてソケットバッファサイズの半分を読み込むことを含む。このデータポンプというのは、STB20内に組み込まれた要求を発する装置2の一部である。
現在手にはいるSTBの設計では、持続的なビットレートの測定された最大値は6Mbps程度であり、良好なMPEG2ビデオおよびオーディオ品質に十分な高率である。
データポンプ27は入力ソケットバッファ21に直接、中央FIFO26の「書き込み」ポインタおよび前記FIFOの連続的に利用可能なスペースを与える(これにより、ソケットバッファからFIFOバッファへの中間コピーが回避できる)。
処理のために中央FIFO26からの各転送の間に扱われるデータの大きさは、LenAsked値で与えられるが、これはFIFOサイズの半分であり、スケジューリングの仕事が重くなるのを避けている。そのようなFIFO転送が完遂したら、LenAskedは消費者ポインタに従って連続的に利用可能なサイズである。前記要求装置2の一部である注入部28がそれを管理することが意図されている。
ユーザーがあるストリームから別のストリームに切り換えた場合、FIFO26およびビットバッファ21はフラッシュされてもよい。
サーバー10は読み込みファイルの予期はしない。読み込み長さと送信長さは定数で、バースト転送を避けるために内部入力ソケットバッファ21(CSOCKBUFSZ)よりも小さい。プロトコルはまた送信速度の制御を行う際に消費者速度(CBWパラメータ:STB20上でデータポンプ27によって管理されている中央FIFO26)も参照する。
IRD処理の概要について以下に説明する(図8参照)。記載されるさまざまな要素は要求装置IRDの部分である。

ザッパー(「アプリ」)54:ユーザーの選択(番組識別子)を取得し、データポンプ27および注入器28を走らせ、AVデコーダを始動させる。ユーザーが番組を変更したら、ザッパーはデータポンプ27および注入器28を再び走らせるまで停止させる。ビデオデコーダは停止する必要はない。
イーサネット(登録商標)ドライバ52:TCP/IPスタック53を物理的なイーサネット(登録商標)コントローラ51につなぐインターフェースとなる。該51はたとえばCS8900Aとしてシラスロジック社により市販されているものである。速度は3Mbpsから6Mbpsの間である。よって、4Mbpsの速度なら、1フレーム(1460バイト)は2.86msで処理される。ドライバ52に制御データ送信を警告するために割り込み(interruptions)プロセス(「IT」)が設けられている。
TCP/IPスタック53:イーサネット(登録商標)上のTCP/UDP/IPスタック53はソケット・ノンブロッキングAPI(Application Programming Interface[アプリケーションプログラミングインターフェース])を備えている。IPアドレスを動的に取得するためにDHCP(Dynamic Host Configuration Protocol[動的ホスト構成プロトコル]の略)クライアントが埋め込まれている。TCP/IPスタック53は最大64キロバイトのソケットバッファ21およびタイマー42を利用する。
データポンプ27:サーバー10からMPEG2−TS(Transport Stream[トランスポートストリーム]の略)のデータを取得するためにUDPポートを使う。動作においては、ユーザーによってファイル識別子が指定され、接続の間にサーバー10に直接送信される。ひとたびサーバー10に接続されたら、データポンプ27は利用可能なFIFO長を読み取り、FIFO26がいっぱいに近づいていたら(HFIFO閾値)データストリーミングを一時停止するよう要求し(XOFFメッセージ)、FIFO26が空に近づいたら(LFIFO閾値)再開するよう要求する。これはまた、ユーザーがザッピングすることを可能にし、その際にはFIFO26をフラッシュする。フラッシュ工程は次いで注入部28にも伝搬される。
中央FIFO26:復号処理およびストリーミング処理を調整し、ネットワークバーストに対処するためのXメガバイト(たとえば1メガバイト)のFIFO。FIFOマネージャは3つの閾値を管理する。低閾値LFIFOおよび高閾値HFIFOはそれぞれ注入プロセスの再開と一時停止を引き起こし、中間閾値MFIFOはデータポンププロセスを引き起こす。
送信のためには、たとえば単位の大きさとして32キロバイトが選ばれる(単位の大きさが50キロバイトなら送信は20msを要する)。すなわち、4Mbpsの速度を考えると、中央FIFO26をいっぱいにするのに2秒かかる。一方、いっぱいになったFIFOの復号も2秒に相当する。
サーバーファイルの8キロバイトのデータを取ると、それはクライアントのソケットバッファに到達するのに16msecかかる。同じデータはSTB埋め込みのCPUに応じて約2〜4kbytes/msecの速度でFIFO26に転送される。よって、STB転送プロセスは無視できる。
中央FIFO26はサーバー10およびネットワークで生じうるジッターを吸収する。好ましくは、クライアントのバンド幅のレートCBWはエンコード速度EBRより大きい。EBRとCBWの値が近い場合には、FIFO26はより小さくてもよい。
注入部28:PCサーバー10(生産者)と復号処理(消費者)との間の流れ制御の考えがここで語られる。ひとたび開始されると、注入部28はビデオビットバッファのレベルを監視し、DMA(Direct Memory Access[直接メモリアクセス]の略)を通じて所与の量のFIFOデータをTSMUX(Transport Stream Multiplexer[トランスポートストリームマルチプレクサ]の意)55に注入する。その際、SWTS入力(Software Transport Stream[ソフトウェアトランスポートストリーム]の略)56を使う。
TSMUX55:このインターフェースは、STマイクロエレクトロニクス社によるST5516として市販されているようなレジスタ61(図9)に基づいて、メモリからPTI(Programmable Transport Interface[プログラム可能な転送インターフェース]の略)57にSWTS方式で(構成レジスタ63を使って)データの注入ができるようにする。バイト転送速度は調整でき、レートはたとえば40Mbpsである。
AVスタック58:オーディオおよびビデオ復号過程。復号のための目標とされるPID(Packet IDentifier[パケット識別子]の略)に向けられた復号処理を設定する。復号処理を開始し、ビデオビットバッファレベル(video bit buffer level―VBBLと記す)を指示することを可能にする。ビットバッファはアンダーフローは許容する。
AV同期:ビデオおよびオーディオのPTS値(Program Time Stamp[番組タイムスタンプ]の略)に基づいている。PCRは運用されていないので、27MHzVCXOは固定した義務的な値を有している。ビデオ復号処理が開始され、STC値(System Time Clock[システム時間クロック]の略)を最初のビデオPTSで初期化する。オーディオはそのPTS値がSTC値に近くなるまでフレームをスキップする。

C1:注入部28
注入部28とその機能についてこれから詳述する(図9を参照)。
SWTS入力56へのデータの注入は、PTIのDMA3チャネルを通るよう経路制御されるSWTS_REQ信号を使ってペース調整される。前記SWTS_REQ信号は、内部SWTS FIFO62に少なくとも16バイトの余裕があるときに発される。SWTS_REQが低で、XメガバイトのFIFO26から読み込むべきデータがあるたびに、プログラム可能なバイト数がSWTS入力56に転送される。転送完了の時点において、注入部にデータが転送されたとの信号を送るよう割り込みがセットされる。
SWTS入力の場合、ビデオおよびオーディオの圧縮データ(compressed data)FIFO(それぞれ64、65と記される)中で目的ポインタが固定される。それは注入が処理される場所でCD_FIFOなどである。SWTSアドレスがCD_FIFOアドレスを置き換え、PTI_DMA3SETUPレジスタによって直接インクリメントがプログラムされることはない(よって、DMA3BLOCKMOVE=0)。
PTI57バージョンドライバ
PTIドライバはDMA注入のためのソフトウェアサポートを提供する。それはPTI1に対する上位互換モードで使われるPTI3ハードウェアにおいて走る。提示される実施形態においては、唯一の制限は、割り込みモードがDMA転送終了の信号を送るためには許容されていないという点である。pti_data_dma_synchronize関数への呼び出しはDMA転送の終了まで封じられる。
PTI DMA3とTSMUX55の相互接続
SWTS_REQ信号は、CONFIG_CONTROL_Aレジスタを設定することによってPTINOT_CDREQ3信号に多重化される(すなわち、PTIA_CDREQ3_MUXSEL[3:0]=TSSUB_SWTS_REQ)。
注入部は、PTI57にデータを注入する前に、ビデオおよびオーディオビットバッファ(それぞれ66、67と記される)の占有レベルを知る必要がある。各ストリームがビデオおよびオーディオ成分を含み、オーディオビットバッファ67の容量がオーバーフローやアンダーフローを避けるのに十分であるとすると、ビデオビットバッファのレベルだけを監視することも許容できうる。
これを行うには、VID_VBLレジスタが読み込まれる。これがビデオビットバッファ66の現在のレベルを2キロビット(256バイト)単位で与える。このバッファ内の空きスペースの大きさが次いですぐに導出される。注入部はユーザー中央FIFO26からPTI57へのTSMUX55を通じたDMA転送を開始する。転送の大きさは、
min(RVBB,中央FIFO利用可能データ)
で、RVBB(Remaining space in Video Bit Buffer[ビデオビットバッファ内の残りスペース])はVBB(Video Bit Buffer[ビデオビットバッファ])66内で残っている空きスペースを表している。
ここでは、VBB66のみを考慮に入れて転送について語った。このことは、ABB(Audio Bit Buffer[オーディオビットバッファ])67がオーバーフローを起こさない十分な大きさがあることを示唆している。
4Mbps(500kbytes/s)のストリームに対しては、100msごとに50キロバイトのデータ転送が加わっていく。SWTSレートが40Mbps(5Mbytes/s)に固定されているとすると、その転送時間は少なくとも10msである。よって、対応するスレッドは各転送の間の90msは空いていることになる。

C2:オーディオビデオスタック58
オーディオビデオスタック58には三つの主要な機能がある:
・多重化解除を処理してオーディオおよびビデオデコーダを開始し、
・オーディオとビデオの間の同期を管理し、
・ビデオビットバッファレベルを取得し、それを注入部クライアントに供給することでデータストリーミングを調整する。
ビデオを一時停止したり画面をフリーズさせたり、音声を消したり、あるいは静止画像を表示したりすることは必要ではない。
オーディオおよびビデオデコーダの同期は、オーディオPTSおよびビデオPTSの助けによりなされる。ストリームからのPCRは運用されておらず、VCXOは27MHzに設定されている。
STC値は最初ビデオPTSに設定される。同期アルゴリズムはすでにオーディオドライバ内に存在している。必要なのは、STC値をビデオPTSに設定するために関数を修正することだけである。これは次のように処理される。
ビデオPTSの監視はストリーム中にエラーが起こったときでもアボートされない(STC/ビデオPTSの距離はPTSが発生するたびに更新される)。
当該スタックはまた、ビットバッファアンダーフローに関しても許容できる。すなわち、復号処理のリセットもビットバッファのリセットも行われない。
ビットバッファ(VBB66およびABB67)はPULLモデルのための適正な大きさになっている。すなわち、デコーダ処理のほうがデータストリーミングを調整する。VBB66については、MLMP仕様として大きさが決まっており、356キロバイト程度である。ABB67の大きさを決めるには、最低ビデオビットレートと最高オーディオビットレートとの比が計算される。ABB67の大きさは、この比を利用して、mVBRを最小ビデオビットレート(minimum video bit rate)、MABRを最大オーディオビットレート(maximum audio bit rate)として、次式によって決める。
ABBの大きさ=MABR/mVBR×(MLMP VBBの大きさ)
たとえば、mVBRおよびMABRはそれぞれ1Mbpsおよび448kbpsである。
追加的な仕様として、クライアントはスローモーションや早回しのための制御メッセージをサーバー10に送ってもよい。
スローモーションの場合のある具体的な実施形態では、各データ区画を送信する間隔PERIODの値を大きくする(周期の修正はクライアントから要求されるスローモーションの度合いによる)。ただし、保持メッセージの周期は不変に保たれる。
早回しや逆回しのある特定の変形実施形態においては、クライアントはサーバー10に対してさらに、ストリーミングされるべきデータファイル中の位置を順番づけるための特定の制御メッセージSEEKを送ることができる。これは、当該ファイルの始点または終点を基準としたバイト数などである。SEEKメッセージはその際、再生方向とオフセットの両方を含んでいてもよい。その際、クライアントはSEEKメッセージをXOFFとXONメッセージの間で使用する。選択されるデータ量ならびに再生スピードを支配し、早回しの場合にはアンダーフローを補償するためである。この場合、送信される命令の順番は、XOFF/SEEK(方向、オフセット)/XON/XOFF…となる。
さらに、前記の特定の実施形態では、クライアントはサーバー10に早回しのために選択された復号アルゴリズムに関する情報を送信することが意図されている。たとえば、GOP(Group of Pictures[ピクチャーグループ])において「I」タイプの画像のみを取るなどである。
その際、クライアントのほうが位置の選択を適切に行うことによって定常的な再生には責任をもつ。
また、スローモーションの場合と同様に、保持メッセージの周期は不変に保たれる。
本発明に基づくデータ送信装置を有するサーバーと本発明に基づくデータ要求装置を有する受信機とに関わる通信環境を示す図である。 図1のデータ送信装置のブロック図である。 図1のデータ要求装置のブロック図である。 要求装置がIRD内に組み込まれ、送信装置がPCサーバー内に組み込まれている、図1の通信環境の特定の実施形態を示す図である。 図4の通信環境におけるストリーミングに関わる通信路とバッファを示す図である。 図4の通信環境におけるプロトコルの状態遷移図をサーバー側から示す図である。 図4の通信環境におけるストリーミングの状態遷移図をサーバー側から示す図である。 図4のIRD内の処理の概要を示す図である。 図4のIRDの一つにおける注入部の機能を図解する図である。
符号の説明
1 データ送信装置
2 データ要求装置
7 PSTNネットワーク
10 サーバー
11 受信
12 指定
13 ストリーミング
14 転送
15 警報
16 解釈
17 ハードディスク上のファイル
18 バッファソケット
20 受信機
21 バッファ
22 送信
23 受信
24 処理
25 情報取得
26 メモリ
27 データポンプ
28 注入部
30 制御
31 保持
32 調整
35 ユーザーインターフェース
43 VDSLモデム
44 VDSLモデム
45 スイッチ
50 MLMP MPEG

Claims (15)

  1. 少なくとも一つのデータサーバー(10)に少なくとも一つの第一の通信ネットワーク(5)を通じてのデータを要求する装置(2)であって、
    ・サーバー(10)に決められたデータの要求(REQU)を少なくとも一つの第二の通信ネットワーク(6)を通じて送信する送信手段(22)と、
    ・前記サーバー(10)から前記第一の通信ネットワーク(5)を通じてストリームデータ(DATA)を受信するための、そして該データをそれが利用されるよう処理手段(24)に提供するための受信手段(23)と、
    ・前記サーバー(10)からのデータストリーミングを一時停止させるよう意図された一時停止制御信号(XOFF)を生成するための、そして前記一時停止制御信号(XOFF)の前記サーバー(10)への前記第二のネットワーク(6)を通じた前記送信手段(22)を介しての送信を引き起こすための、制御手段(30)とを有しており、
    当該データ要求装置(2)が、当該データ要求装置(2)における正常動作を前記サーバー(10)に示すよう意図された正常状態信号(NORMAL、KEEPALIVE)を生成するための、そして該正常状態信号(NORMAL,KEEPALIVE)の前記サーバー(10)への前記第二のネットワーク(6)を通じた前記送信手段(22)を介しての周期的送信を引き起こすための、保持手段(31)を有することを特徴とする、データ要求装置。
  2. 前記制御手段(30)が前記サーバー(10)からのデータストリーミングを一時停止のあとで再開させるよう意図された再開制御信号(XON)をも生成するよう意図されており、前記送信手段(22)が前記サーバー(10)に前記第二のネットワーク(6)を介して前記再開制御信号(XON)を送信するよう意図されていることを特徴とする、請求項1記載のデータ要求装置(2)。
  3. 前記要求装置(2)が、ユーザーが前記制御手段(30)および前記送信手段(22)を作動させて前記制御信号(XOFF、XON)が前記サーバー(10)に前記第二のネットワーク(6)を介して与えられるようにするユーザーインターフェース(35)を有していることを特徴とする、請求項1または2のうちいずれか一項記載のデータ要求装置(2)。
  4. 前記受信されたデータ(DATA)が利用される前に中央メモリ(26)内に保存され、前記データ要求装置(2)が前記中央メモリ(26)内の前記データが該中央メモリ(26)の所定の高閾値レベル(HFIFO)を超えたときに前記制御手段(30)を作動させて一時停止制御信号(XOFF)を生成するよう意図されている調整手段(32)を有することを特徴とする、請求項1ないし3のうちいずれか一項記載のデータ要求装置(2)。
  5. 前記調整手段(32)が、前記ストリーミングが当該調整手段(32)によって一時停止されており前記中央メモリ(26)内の前記データが前記中央メモリ(26)の所定の低閾値レベル(LFIFO)まで減少したときに前記制御手段(30)を作動させて再開制御信号(XON)を生成するよう意図されていることを特徴とする、請求項4記載のデータ要求装置(2)。
  6. 前記中央メモリ(26)の前記閾値レベル(HFIFO、LFIFO)のうち少なくとも一つが前記データ要求装置(2)と前記サーバー(10)との間の往復遅延時間(RTT)に依存することを特徴とする、請求項4または5のうちいずれか一項記載のデータ要求装置(2)。
  7. ・前記受信手段(23)が、前記サーバー(10)が前記正常状態信号(NORMAL、KEEPALIVE)をしかるべき時間内に受信しなかった場合に、前記サーバー(10)から前記第一のネットワーク(5)を通じて特別な警告メッセージ(WARN)を受信するよう意図されており、
    ・前記保持手段が、前記特別な警告メッセージ(WARN)が受信され次第、前記第二のネットワーク(6)を通じた前記サーバー(10)への正常状態信号(NORMAL、KEEPALIVE)の送信を引きこすよう意図されていることを特徴とする、
    請求項1ないし6のうちいずれか一項記載のデータ要求装置(2)。
  8. 請求項1ないし7のうちいずれか一項記載のデータ要求装置(2)を有することを特徴とする、デコーダ。
  9. 少なくとも一つのデータサーバー(10)に少なくとも一つの第一の通信ネットワーク(5)を通じてのデータを要求するプロセスであって、
    ・サーバー(10)に決められたデータの要求(REQU)を少なくとも一つの第二の通信ネットワーク(6)を通じて送信し、
    ・前記サーバー(10)から前記第一の通信ネットワーク(5)を通じてストリームデータ(DATA)を該データが利用できるよう受信し、
    ・前記サーバー(10)からのデータストリーミングを一時停止させるよう意図された一時停止制御信号(XOFF)を生成し、前記第二のネットワーク(6)を通じて前記サーバー(10)に送信するステップを有しており、
    当該データ要求プロセスが、当該データ要求装置(2)における正常動作を前記サーバー(10)に示すよう意図された正常状態信号(NORMAL、KEEPALIVE)を生成し、前記サーバー(10)に前記第二のネットワーク(6)を通じて周期的に送信することを含むことを特徴とする、データ要求プロセス。
  10. 少なくとも一つの第一の通信ネットワーク(5)を通じてデータを送信する装置(1)であって、
    ・少なくとも一つのデータ要求装置(2)から少なくとも一つの第二の通信ネットワーク(6)を通じて決められたデータの要求(REQU)を受信する受信手段(11)と、
    ・前記データ(DATA)の前記データ要求装置(2)への前記第一のネットワーク(5)を通じたストリーミングを引き起こすストリーミング手段とを有し、
    前記受信手段(11)は前記データ要求装置(2)から一時停止制御メッセージ(XOFF)を受信するよう意図されており、前記ストリーミング手段(13)は前記一時停止制御メッセージ(XOFF)が受信されたときには前記データストリーミングを一時停止するよう意図されており、
    ・前記受信手段(11)が、前記データ要求装置(2)から周期的に正常状態信号(NORMAL、KEEPALIVE)を受信するよう意図されており、
    ・前記データ要求装置(2)が、前記正常状態信号(NORMAL、KEEPALIVE)がしかるべき時間内に受信されなかったときに警報状態を引き起こすよう意図されている警報手段(15)を有し、
    当該データ送信装置(1)が好ましくは請求項1ないし7のうちいずれか一項記載のデータ要求装置(2)のために備えがされていることを特徴とする、データ送信装置。
  11. 前記警報手段(15)が、前記正常状態信号(NORMAL、KEEPALIVE)が該正常状態信号を受信するのに期待される時間周期のあとある安全期間を経過したのちにも全く受信されない場合に前記警報状態を引き起こすよう意図されており、前記安全期間が前記データ要求装置(2)と前記データ送信装置(1)との間の往復遅延時間(RTT)に依存するものであることを特徴とする、請求項10記載のデータ送信装置(1)。
  12. ・前記警報手段(15)が、前記正常状態信号(NORMAL、KEEPALIVE)がしかるべき時間内に全く受信されない場合に警告メッセージ(WARN)を生成するよう意図されており、
    ・当該データ送信装置(1)が、前記警告メッセージ(WARN)を前記データ要求装置(2)に前記第一のネットワーク(5)を通じて送信するよう意図されている転送手段(14)を有し、
    ・前記警報手段(15)が、前記警告メッセージ(WARN)の送信後ある猶予期間が経過したのちにのみ前記警報状態を引き起こすよう意図されていることを特徴とする、
    請求項10または11のうちいずれか一項記載のデータ送信装置(1)。
  13. 前記受信手段(11)が前記データ要求装置(2)から再開制御メッセージ(XON)を受信するよう意図されており、前記ストリーミング手段(13)が、前記ストリーミングが一時停止されており前記再開制御メッセージ(XON)の一つが受信されたときに前記データストリーミングを再開するよう意図されていることを特徴とする、請求項10ないし12のうちいずれか一項記載のデータ送信装置(1)。
  14. 少なくとも一つの第一の通信ネットワーク(5)を通じてデータを送信するプロセスであって、
    ・少なくとも一つのデータ要求装置(2)から少なくとも一つの第二の通信ネットワーク(6)を通じて決められたデータの要求(REQU)を受信し、
    ・前記データ(DATA)を前記データ要求装置(2)に前記第一のネットワーク(5)を通じてストリーミングし、
    ・前記データ要求装置(2)から一時停止制御メッセージ(XOFF)を受信し、前記一時停止制御メッセージ(XOFF)が受信されたときには前記データストリーミングを一時停止するステップを有しており、また、
    ・前記データ要求装置(2)から周期的に正常状態信号(NORMAL、KEEPALIVE)を受信し、
    ・前記正常状態信号(NORMAL、KEEPALIVE)がしかるべき時間内に受信されなかったときに警報状態を引き起こすステップを有し、
    当該データ送信プロセスが好ましくは請求項10ないし13のうちいずれか一項に準拠したデータ送信装置(1)によって実行されることを意図されていることを特徴とする、データ送信プロセス。
  15. 当該プログラムがコンピュータ上で実行されたときに請求項9および14のプロセスのうちの一方のステップを実行するプログラムコード命令を含んでいることを特徴とする、コンピュータプログラムプロダクト。
JP2006505562A 2003-04-17 2004-04-19 データ要求装置、データ送信装置、およびそのプロセスならびに対応する製品 Pending JP2006523980A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03290954 2003-04-17
PCT/EP2004/050566 WO2004093452A2 (en) 2003-04-17 2004-04-19 Data requesting and transmitting devices and processes

Publications (1)

Publication Number Publication Date
JP2006523980A true JP2006523980A (ja) 2006-10-19

Family

ID=33185983

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2006505562A Pending JP2006523980A (ja) 2003-04-17 2004-04-19 データ要求装置、データ送信装置、およびそのプロセスならびに対応する製品
JP2006505561A Expired - Fee Related JP4505450B2 (ja) 2003-04-17 2004-04-19 データ要求送信装置及びプロセス並びに対応するプロダクツ

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2006505561A Expired - Fee Related JP4505450B2 (ja) 2003-04-17 2004-04-19 データ要求送信装置及びプロセス並びに対応するプロダクツ

Country Status (6)

Country Link
US (2) US7877439B2 (ja)
EP (2) EP1614291B1 (ja)
JP (2) JP2006523980A (ja)
KR (2) KR20060026010A (ja)
DE (2) DE602004006981T2 (ja)
WO (2) WO2004093451A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111742620A (zh) * 2018-02-26 2020-10-02 昕诺飞控股有限公司 根据效果类型和/或用户偏好重新开始动态灯光效果

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760772B2 (en) * 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
US8812706B1 (en) 2001-09-06 2014-08-19 Qualcomm Incorporated Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system
US7412532B2 (en) * 2002-12-13 2008-08-12 Aol Llc, A Deleware Limited Liability Company Multimedia scheduler
US7493289B2 (en) * 2002-12-13 2009-02-17 Aol Llc Digital content store system
CN105406947A (zh) * 2003-06-02 2016-03-16 高通股份有限公司 生成并实施一用于更高数据率的讯号协议和接口
KR101178080B1 (ko) * 2003-08-13 2012-08-30 퀄컴 인코포레이티드 더 높은 데이터 레이트를 위한 신호 인터페이스
ATE424685T1 (de) * 2003-09-10 2009-03-15 Qualcomm Inc Schnittstelle für hohe datenrate
EP2244436B1 (en) * 2003-10-15 2013-09-25 Qualcomm Incorporated High data rate interface
BRPI0416054A (pt) * 2003-10-29 2007-01-02 Qualcomm Inc interface de alta taxa de dados elevada
WO2005048562A1 (en) * 2003-11-12 2005-05-26 Qualcomm Incorporated High data rate interface with improved link control
MXPA06006012A (es) * 2003-11-25 2006-08-23 Qualcomm Inc Interfase de indice de datos alto con sincronizacion de enlace mejorada.
WO2005057881A1 (en) * 2003-12-08 2005-06-23 Qualcomm Incorporated High data rate interface with improved link synchronization
WO2005084381A2 (en) * 2004-03-03 2005-09-15 Packetvideo Network Solutions, Inc. System and method for retrieving digital multimedia content from a network node
KR100919761B1 (ko) * 2004-03-10 2009-10-07 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
KR101245962B1 (ko) * 2004-03-17 2013-03-21 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
EP1735988A1 (en) * 2004-03-24 2006-12-27 Qualcomm, Incorporated High data rate interface apparatus and method
JP4664360B2 (ja) * 2004-06-04 2011-04-06 クゥアルコム・インコーポレイテッド 高速データレートインタフェース装置及び方法
US8650304B2 (en) * 2004-06-04 2014-02-11 Qualcomm Incorporated Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system
DE602004028616D1 (de) * 2004-09-16 2010-09-23 Alcatel Usa Sourcing Lp Abknallendmittel mit verbesserter Latenz
US8692838B2 (en) 2004-11-24 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8667363B2 (en) * 2004-11-24 2014-03-04 Qualcomm Incorporated Systems and methods for implementing cyclic redundancy checks
US8539119B2 (en) * 2004-11-24 2013-09-17 Qualcomm Incorporated Methods and apparatus for exchanging messages having a digital data interface device message format
US8873584B2 (en) * 2004-11-24 2014-10-28 Qualcomm Incorporated Digital data interface device
US8699330B2 (en) 2004-11-24 2014-04-15 Qualcomm Incorporated Systems and methods for digital data transmission rate control
US7543073B2 (en) * 2004-12-10 2009-06-02 Microsoft Corporation System and process for performing an exponentially weighted moving average on streaming data to establish a moving average bit rate
US20060143678A1 (en) * 2004-12-10 2006-06-29 Microsoft Corporation System and process for controlling the coding bit rate of streaming media data employing a linear quadratic control technique and leaky bucket model
US7536469B2 (en) * 2004-12-10 2009-05-19 Microsoft Corporation System and process for controlling the coding bit rate of streaming media data employing a limited number of supported coding bit rates
CN100393068C (zh) * 2004-12-24 2008-06-04 腾讯科技(深圳)有限公司 一种缓存流媒体数据的方法
JP2006211602A (ja) * 2005-01-31 2006-08-10 Toshiba Corp データ送信機及びプログラム
US7672742B2 (en) * 2005-02-16 2010-03-02 Adaptec, Inc. Method and system for reducing audio latency
US7631097B2 (en) * 2005-07-21 2009-12-08 National Instruments Corporation Method and apparatus for optimizing the responsiveness and throughput of a system performing packetized data transfers using a transfer count mark
DE102005053686B3 (de) * 2005-11-10 2007-05-31 Musictrace Gmbh Vorrichtung und Verfahren zum Überwachen eines Datensenders
US8730069B2 (en) * 2005-11-23 2014-05-20 Qualcomm Incorporated Double data rate serial encoder
US8692839B2 (en) * 2005-11-23 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
WO2007066257A1 (en) * 2005-12-05 2007-06-14 Koninklijke Philips Electronics N.V. Streaming data over a wireless link
US7881192B2 (en) * 2006-01-13 2011-02-01 Futurewei Technologies, Inc. System for providing aggregate-rate communication services
US7813279B2 (en) * 2006-01-13 2010-10-12 Futurewei Technologies, Inc. System for rate management of aggregate-rate communication services
US7817550B2 (en) * 2006-01-13 2010-10-19 Futurewei Technologies, Inc. System for rate-control of aggregate-rate communication services
CN100591016C (zh) * 2006-03-17 2010-02-17 华为技术有限公司 一种动态内容续传方法及系统
KR100848128B1 (ko) 2006-04-24 2008-07-24 한국전자통신연구원 실시간 스트리밍 프로토콜을 이용한 프로그래시브 스트리밍방법
US7962637B2 (en) 2006-11-03 2011-06-14 Apple Computer, Inc. Dynamic adjustments of video streams
US8484335B2 (en) * 2006-11-06 2013-07-09 At&T Intellectual Property I, L.P. Methods, systems, and computer products for download status notification
US8341282B2 (en) * 2006-11-21 2012-12-25 Verizon Patent And Licensing Inc. Hybrid buffer management
US9571902B2 (en) 2006-12-13 2017-02-14 Quickplay Media Inc. Time synchronizing of distinct video and data feeds that are delivered in a single mobile IP data network compatible stream
US8892761B1 (en) 2008-04-04 2014-11-18 Quickplay Media Inc. Progressive download playback
EP2177010B1 (en) 2006-12-13 2015-10-28 Quickplay Media Inc. Mobile media platform
US8537676B1 (en) * 2007-07-09 2013-09-17 Juniper Networks, Inc. Rate limiting for DTCP message transport
CN101547161B (zh) * 2008-03-28 2012-09-26 阿里巴巴集团控股有限公司 文件夹传输系统、文件夹传输装置及文件夹传输方法
US8194756B2 (en) * 2008-05-28 2012-06-05 Broadcom Corporation Using program clock references to assist in transport of video stream to wireless device
GB0917700D0 (en) * 2009-10-09 2009-11-25 Onzo Ltd Device and method of making a device
KR20110065100A (ko) * 2009-12-09 2011-06-15 삼성전자주식회사 멀티미디어 스트리밍 서비스를 지원하는 방법 및 장치
US8732776B2 (en) * 2010-07-01 2014-05-20 Kuautli Media Investment Zrt. End of show handling
US8717181B2 (en) 2010-07-29 2014-05-06 Hill-Rom Services, Inc. Bed exit alert silence with automatic re-enable
KR20120060134A (ko) * 2010-08-16 2012-06-11 삼성전자주식회사 광고 재생 방법 및 장치
JP5734788B2 (ja) * 2011-08-19 2015-06-17 株式会社東芝 通信装置及びプログラム
US9197717B2 (en) * 2013-11-27 2015-11-24 At&T Intellectual Property I, Lp Server-side scheduling for media transmissions according to client device states
US9432478B2 (en) * 2013-11-27 2016-08-30 At&T Intellectual Property I, L.P. Client-side location aware network selection
CN103747253B (zh) * 2013-12-27 2017-04-05 高新兴科技集团股份有限公司 一种基于fifo的视频编码数据传输方法
KR20150086904A (ko) * 2014-01-21 2015-07-29 한국전자통신연구원 적응적 데이터 스트림 관리 시스템 및 그의 제어 방법
US20160180804A1 (en) * 2014-12-23 2016-06-23 Intel Corporation Refresh rate control using sink requests
CN106302090B (zh) * 2015-05-25 2019-10-22 阿里巴巴集团控股有限公司 一种消息处理方法、装置及系统
US10585623B2 (en) * 2015-12-11 2020-03-10 Vivante Corporation Software defined FIFO buffer for multithreaded access
EP3420698B1 (en) * 2016-02-25 2020-09-23 Telefonaktiebolaget LM Ericsson (PUBL) Predicting multimedia session mos
KR102340942B1 (ko) * 2017-11-17 2021-12-17 엘지디스플레이 주식회사 영상 처리 방법 및 이를 이용한 표시장치
US11528192B2 (en) * 2019-02-01 2022-12-13 Hewlett Packard Enterprise Development Lp Intelligent zero touch provisioning for IPV6

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US6230200B1 (en) * 1997-09-08 2001-05-08 Emc Corporation Dynamic modeling for resource allocation in a file server

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0385570A (ja) 1989-08-30 1991-04-10 Toshiba Corp 画像形成装置
US5606359A (en) 1994-06-30 1997-02-25 Hewlett-Packard Company Video on demand system with multiple data sources configured to provide vcr-like services
DE69515153T2 (de) 1994-09-08 2000-09-21 International Business Machines Corp., Armonk Netzwerkvideoanbietersystem
DE69415179T2 (de) * 1994-09-17 1999-07-22 International Business Machines Corp., Armonk, N.Y. Verfahren und vorrichtung zur regelung des datenstroms in einem zellbasierten kommunikationsnetz
JPH08115306A (ja) 1994-10-13 1996-05-07 Matsushita Electric Ind Co Ltd データ転送制御方法
US5687347A (en) 1994-09-19 1997-11-11 Matsushita Electric Industrial Co., Ltd. Data providing device, file server device, and data transfer control method
WO1996010315A1 (en) 1994-09-26 1996-04-04 Micropolis Corporation Video server using memory pipe segments
US5517257A (en) 1995-03-28 1996-05-14 Microsoft Corporation Video control user interface for interactive television systems and method for controlling display of a video movie
US5808607A (en) 1995-04-07 1998-09-15 International Business Machines Corporation Multi-node media server that provides video to a plurality of terminals from a single buffer when video requests are close in time
JP3184763B2 (ja) 1995-06-07 2001-07-09 インターナショナル・ビジネス・マシーンズ・コーポレ−ション マルチメディア直接アクセス記憶装置及びフォーマット方法
US5930493A (en) 1995-06-07 1999-07-27 International Business Machines Corporation Multimedia server system and method for communicating multimedia information
AU708139B2 (en) 1995-07-21 1999-07-29 Koninklijke Philips Electronics N.V. Methods of transmitting and receiving compressed television signals
JP3288213B2 (ja) 1996-01-11 2002-06-04 日本電気株式会社 サーバ
AU730214B2 (en) 1996-04-01 2001-03-01 Avid Technology, Inc. Distributed real-time communications system
US5831662A (en) 1996-04-04 1998-11-03 Hughes Electronics Corporation Near on-demand digital information delivery system and method using signal fragmentation and sequencing to reduce average bandwidth and peak bandwidth variability
US5926649A (en) 1996-10-23 1999-07-20 Industrial Technology Research Institute Media server for storage and retrieval of voluminous multimedia data
JPH10171699A (ja) 1996-12-06 1998-06-26 Hitachi Ltd サーバ・クライアント方式
US5870134A (en) * 1997-03-04 1999-02-09 Com21, Inc. CATV network and cable modem system having a wireless return path
JP3832015B2 (ja) 1997-04-04 2006-10-11 富士ゼロックス株式会社 複合機、サーバ及び複合機を有するネットワークシステム
US6167496A (en) 1998-02-18 2000-12-26 Storage Technology Corporation Data stream optimization system for video on demand
US6029200A (en) 1998-03-09 2000-02-22 Microsoft Corporation Automatic protocol rollover in streaming multimedia data delivery system
US20010039587A1 (en) * 1998-10-23 2001-11-08 Stephen Uhler Method and apparatus for accessing devices on a network
US6654806B2 (en) * 1999-04-09 2003-11-25 Sun Microsystems, Inc. Method and apparatus for adaptably providing data to a network environment
SE515834C2 (sv) 1999-05-06 2001-10-15 Telia Ab Förfarande och anordning för styrning av datafilöverföring
JP2000322874A (ja) 1999-05-10 2000-11-24 Sony Corp 情報・データ処理装置及び情報・データの再生方法およびビデオ編集装置およびコンピュータ読み取り可能な記録媒体およびシステム・オン・チップ型集積装置
JP2001094598A (ja) 1999-09-20 2001-04-06 Canon Inc サーバ装置、サーバノード装置、クライアントノード装置及びネットワークシステム
JP4596693B2 (ja) * 2000-07-06 2010-12-08 パナソニック株式会社 ストリーミング方法およびそれを実行するシステム
US7016970B2 (en) * 2000-07-06 2006-03-21 Matsushita Electric Industrial Co., Ltd. System for transmitting stream data from server to client based on buffer and transmission capacities and delay time of the client
US6925495B2 (en) * 2000-07-13 2005-08-02 Vendaria Media, Inc. Method and system for delivering and monitoring an on-demand playlist over a network using a template
US20030037100A1 (en) 2000-07-17 2003-02-20 Modelwire, Inc. Streamlined data distribution system for commercial applications
US7200633B2 (en) 2000-08-25 2007-04-03 Ntt Docomo, Inc. Information delivery system and information delivery method
US6823394B2 (en) 2000-12-12 2004-11-23 Washington University Method of resource-efficient and scalable streaming media distribution for asynchronous receivers
JP2002215516A (ja) * 2001-01-22 2002-08-02 Sony Corp 情報端末装置、ダウンロード制御方法およびコンピュータプログラム
US6917587B1 (en) * 2001-02-01 2005-07-12 Cisco Technology, Inc. Method and apparatus for recovering a call resource from a call session
AU2002247257A1 (en) 2001-03-02 2002-09-19 Kasenna, Inc. Metadata enabled push-pull model for efficient low-latency video-content distribution over a network
JP4222590B2 (ja) 2001-07-18 2009-02-12 株式会社東芝 サーバ・システム、クライアント・システム、ソフトウェアストリーミング方法及びプログラム
US20050021830A1 (en) 2001-09-21 2005-01-27 Eduardo Urzaiz Data communications method and system using buffer size to calculate transmission rate for congestion control
JP2003122658A (ja) * 2001-10-11 2003-04-25 Hitachi Ltd データ配送方法
JP2003153229A (ja) * 2001-11-15 2003-05-23 Mitsubishi Electric Corp データ通信装置及びデータ通信方法
US20040168052A1 (en) * 2003-02-25 2004-08-26 Clisham Allister B. Electronic content communication system and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US6230200B1 (en) * 1997-09-08 2001-05-08 Emc Corporation Dynamic modeling for resource allocation in a file server

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6010007709, Schulzrinne, et. al., RFC 2326 "Real Time Streaming Protocol", 199804, 57−58,77−78ページ, IETF Network Working Group *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111742620A (zh) * 2018-02-26 2020-10-02 昕诺飞控股有限公司 根据效果类型和/或用户偏好重新开始动态灯光效果
JP2021515362A (ja) * 2018-02-26 2021-06-17 シグニファイ ホールディング ビー ヴィSignify Holding B.V. 効果のタイプ及び/又はユーザの好みに応じた動的光効果の再開
CN111742620B (zh) * 2018-02-26 2023-08-01 昕诺飞控股有限公司 根据效果类型和/或用户偏好重新开始动态灯光效果
JP7335255B2 (ja) 2018-02-26 2023-08-29 シグニファイ ホールディング ビー ヴィ 効果のタイプ及び/又はユーザの好みに応じた動的光効果の再開

Also Published As

Publication number Publication date
US7877439B2 (en) 2011-01-25
US9191702B2 (en) 2015-11-17
DE602004006981D1 (de) 2007-07-26
KR20060003349A (ko) 2006-01-10
WO2004093452A2 (en) 2004-10-28
WO2004093451A3 (en) 2004-12-16
WO2004093451A2 (en) 2004-10-28
US20060271982A1 (en) 2006-11-30
EP1614292B1 (en) 2008-05-07
DE602004013567D1 (de) 2008-06-19
EP1614292A2 (en) 2006-01-11
US20070143490A1 (en) 2007-06-21
JP4505450B2 (ja) 2010-07-21
WO2004093452A3 (en) 2004-12-23
JP2006523979A (ja) 2006-10-19
KR20060026010A (ko) 2006-03-22
EP1614291A2 (en) 2006-01-11
EP1614291B1 (en) 2007-06-13
DE602004006981T2 (de) 2008-02-28

Similar Documents

Publication Publication Date Title
JP2006523980A (ja) データ要求装置、データ送信装置、およびそのプロセスならびに対応する製品
US8356324B2 (en) Implementing network personal video recorder for digital video settop boxes
EP1782248B1 (en) Home network system with transmission error recovery
JP4690280B2 (ja) メディアデータをストリーミングする方法、システム及びクライアント装置
JP5373131B2 (ja) リアルタイムデータの送信および受信
EP1294193B1 (en) Method and apparatus for changing received streaming content channels
US20040057446A1 (en) Method for enabling packet transfer delay compensation in multimedia streaming
WO2006103567A2 (en) Milestone synchronization in broadcast multimedia streams
AU2002231829A1 (en) Method and system for buffering streamed data
KR20100068780A (ko) 스트리밍 서비스에서 프리 디코더 버퍼의 오버플로우 방지 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070404

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100512

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100810