CN1355904A - 为广播系统提供视频点播业务的系统和方法 - Google Patents

为广播系统提供视频点播业务的系统和方法 Download PDF

Info

Publication number
CN1355904A
CN1355904A CN00808471A CN00808471A CN1355904A CN 1355904 A CN1355904 A CN 1355904A CN 00808471 A CN00808471 A CN 00808471A CN 00808471 A CN00808471 A CN 00808471A CN 1355904 A CN1355904 A CN 1355904A
Authority
CN
China
Prior art keywords
data
data block
data file
matrix
group
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
CN00808471A
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.)
PrediWave Corp
Original Assignee
PrediWave 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 PrediWave Corp filed Critical PrediWave Corp
Publication of CN1355904A publication Critical patent/CN1355904A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/2385Channel allocation; Bandwidth allocation
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26233Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving content or additional data duration or size, e.g. length of a movie, size of an executable file
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26241Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26275Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for distributing content or additional data in a staggered manner, e.g. repeating movies on different channels in a time-staggered manner in a near video on demand system
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/418External card to be used in combination with the client device, e.g. for conditional access
    • H04N21/4181External card to be used in combination with the client device, e.g. for conditional access for conditional access
    • 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/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
    • 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
    • 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/482End-user interface for program selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing
    • 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99948Application of database or data structure, e.g. distributed, multimedia, or image

Abstract

一种用于传送数据给客户机以便提供数据点播业务的方法,包括步骤:接收数据文件,规定时间间隔,根据时间间隔将该数据文件解析为多个数据块,使得每个数据块在时间间隔期间是可显示的,确定发送该数据文件所要求的时隙数量,给每个时隙分配至少多个数据块的第一数据块和任选地一个或者多个附加的数据块,使得从任何时隙开始,(i)通过访问多个数据块的第一数据块可以显示该数据文件;(ii)在一个连续的时隙,在前显示的数据块的下一个数据块可用于显示;和(iii)重复步骤(ii),直到数据文件的所有的多个数据块已经显示,并且根据该分配步骤发送该多个数据块。

Description

为广播系统提供视频点播业务的系统和方法
                    本发明的简述
本发明一般涉及数据点播系统。具体来说,本发明涉及视频点播系统。
                  本发明的背景技术
视频点播(VOD)系统是数据点播(data-on-demand,DOD)系统的一个类型。在VOD系统中,由服务器或者服务器的网络基于需求提供视频数据文件给一个或者多个客户机。
在常规的VOD架构中,服务器或者服务器的网络与标准分层客户机-服务器模型中的客户机通信。例如,客户机发送对于数据文件(例如视频数据文件)的请求给一个服务器。根据客户机的请求,该服务器发送所请求的数据文件给该客户机。在标准的客户机-服务器模型中,客户机对于数据文件的请求可以由一个或者多个服务器满足。该客户机可以有能力在非易失性存储器中存储任何在本机接收的数据文件以便以后使用。标准的客户机-服务器模型要求双向通信基础设施。当前,双向通信要求建立新的基础设施,因为现有的电缆只可提供单向的通信。双向通信基础设施的例子是混合光纤光学同轴电缆(HFC)或者所有的光纤基础设施。更换现有的电缆费用很高,而能得到的业务不是大多数用户可支付得起的。
另外,当服务提供者(例如电缆公司)试图提供VOD服务给大量的客户机时,标准的客户机-服务器模型具有许多限制。标准的客户机-服务器模型的一个限制是服务提供者必须实现连续地监听和满足来自该网络内的每个客户机的每个请求的机制;因此,可以接收服务的客户机数量取决于这样一个机制的容量。一个机制使用具有大的和快速盘阵列的大规模并行计算机作为本地服务器。但是,即使最快的现有的本地服务器同时只可传送视频数据流给大约1000至2000个客户机。因此,为了服务更多的客户机,必须增加本地服务器的数量。增加本地服务器要求有更多高级服务器以维持对本地服务器的控制。
标准的客户机-服务器模型的另一个限制是每个客户机要求它自己的带宽。因此,所要求的总带宽直接与预订客户机的数量成正比。在本地服务器内的超高速缓冲存储器已经用于改进带宽限制,但是使用超高速缓冲存储器不解决该问题,因为超高速缓冲存储器也是有限的。
目前,为了使得视频点播对于客户机更能负担得起,现有的服务提供者在本地服务器的能力上面增加每个本地服务器的客户机的比例。通常,一个能够向1000个客户机提供服务的本地服务器,实际上承担对10,000个客户机的服务。如果大多数预订客户机不同时预订视频,这个技术可以运用。但是,这个技术会导致故障,因为大多数客户机可能会在同时(即晚间和周末)要观看视频,因此,使得本地服务器变得超载。
因此,希望提供一个系统,能够实际上在任何传输媒介上提供点播业务给大量的客户机而不必更换现有的基础设施。
                      本发明概述
在一个示例的实施例中,在服务器端,用于传送数据给客户机以便提供数据点播业务的方法包括步骤:接收数据文件,指定时间间隔,根据该时间间隔将该数据文件解析为多个数据块,使得每个数据块在该时间间隔期间是可显示的,确定发送该数据文件要求的时隙数量,给每个时隙分配该多个数据块之至少一个第一块和可选地分配一个或者多个附加数据块,使得该多个数据块对于在任何时隙期间访问该数据文件的客户机按顺序是可用的,和基于该分配步骤发送该多个数据块。在一个实施例中,该解析步骤包括以下步骤:确定估计的数据块长度,确定在频道服务器中的存储器的丛集长度(cluster size),和基于该估计的数据块长度和丛集长度解析该数据文件。在另一个实施例中,该确定步骤包括评价资源分配和带宽可用性的步骤。
在一个示例的实施例中,在客户机端,用于处理从服务器接收的数据以便提供数据点播业务的方法包括步骤:(a)在第一时隙期间接收一个数据文件之选择;(b)在第二时隙期间接收该数据文件的至少一个数据块;(c)在下一个时隙期间:接收尚未被接收的任何数据块,按顺序显示数据文件的数据块,和重复步骤(c)直到该数据文件的所有数据块都已经被接收和显示。在一个实施例中,由在客户机端的机顶盒执行用于处理从服务器接收的数据的方法。
在一个示例的实施例中,数据文件被分成许多数据块和基于数据块的数量产生一个时间表(scheduling)矩阵。在服务器端,时间表矩阵提供用于发送数据块的发送次序,使得客户机可以在随机的时间按顺序访问该数据块。在一个示例的实施例中,用于产生用于数据文件的时间表矩阵的方法包括步骤:(a)接收数据文件的数据块的数量[x];(b)设置第一变量[j]为零;(c)设置第二变量[i]为零;(d)清除在参考阵列中的所有的条目;(e)把存储在一个矩阵中[(i+j)模x]列之矩阵位置中的至少一个数据块写到参考阵列,如果该参考阵列还没有包含该数据块;(f)把一个数据块[i]写到该参考阵列和该矩阵之矩阵位置[(i+j)模x,j],如果该参考阵列没有包含该数据块[i];(g)第二变量[i]递增1并且重复步骤(e)、直到第二变量[i]等于数据块的数量[x];和(h)第一变量[j]递增1并且重复步骤(c)、直到第一变量[j]等于数据块的数量[x]。在一个实施例中,产生用于一组数据文件中的每个数据文件的时间表矩阵,并且根据用于发送该组数据文件的时间表矩阵,应用卷积(convolution)方法产生传送矩阵。
数据点播系统包括第一组频道服务器;一个中央控制服务器,用于控制第一组频道服务器;第一组上变频器,连接到第一组频道服务器;连接到第一组上变频器的一个组合器/放大器;和适合于通过传输媒介发送数据的一个组合器/放大器。在一个示例的实施例中,该数据点播系统还包括一个频道监视模块,用于监视该系统;一个开关矩阵;第二组频道服务器和第二组上变频器。该频道监视模块用于在出现系统故障时报告给中央控制服务器。该中央控制服务器根据来自频道监视模块的报告,向该开关矩阵发出指令,以便用第二组频道服务器中的频道服务器代替第一组频道服务器中的故障频道服务器、及用第二组上变频器中的上变频器代替第一组上变频器中的故障上变频器。
用于提供数据点播业务的方法包括步骤:计算数据文件的传送矩阵,根据该传送矩阵发送该数据文件,使得大量的客户机能够根据需要观看该数据文件。在一个实施例中,该数据文件包含一个视频文件。
                      附图简述
图1A说明根据本发明的实施例的一个示例的DOD系统;
图1B说明根据本发明的另一个实施例的一个示例的DOD系统;
图2说明根据本发明的一个实施例的示例的频道服务器;
图3说明根据本发明的一个实施例的示例的机顶盒;
图4说明根据本发明的一个实施例用于产生一个时间表矩阵的示例的过程。
                  本发明的详细说明
图1A说明根据本发明的实施例的一个示例的DOD系统100。在这个实施例中,DOD系统100根据需要提供诸如视频文件的数据文件。但是,DOD系统100不限于根据需要提供视频文件,也能够根据需要提供其它数据文件,例如游戏文件。DOD系统100包含一个中央控制服务器102、一个中央存储器103、多个频道服务器104a-104n、多个上变频器106a-106n和一个组合器/放大器108。中央控制服务器102控制频道服务器104。中央存储器103以数字格式存储数据文件。在示例的实施例中,任何连接在该网络上并被授权的计算机(比如中央控制服务器102)通过标准网络接口(例如以太网连接)可以访问存储在中央存储器103的数据文件。每个频道服务器104被分配一个频道和连接到上变频器106。频道服务器104根据中央控制服务器102的指令提供从中央存储器103检索的数据文件。每个频道服务器104的输出是正交振幅调制(QAM)调制的中频(IF)信号,该信号具有适于相应的上变频器106的频率。QAM调制的中频信号取决于采用的标准。当前在美国采用的标准是有线数据系统接口规范(DOCSIS)标准,它要求大约43.75MHz的中频。上变频器106将从频道服务器104接收的中频信号变换为射频信号(RF信号)。RF信号包括频率和带宽都取决于期望的频道和采用的标准。例如,根据美国用于有线电视频道80的当前标准,RF信号具有大约559.25MHz的频率和大约6MHz的带宽。上变频器106的输出施加到组合器/放大器108。组合器/放大器108放大、调节和组合所接收的RF信号,然后输出这些信号至传输媒介110。
在一个示例的实施例中,中央控制服务器102包括一个图形用户接口(未示出),使服务提供者能够通过拖放式操作来调度数据传送。另外,中央控制服务器102验证和控制频道服务器104以便根据传送矩阵开始或者停止。在一个示例的实施例中,中央控制服务器102自动地选择一个信道并且计算用于在所选择的信道中发送数据文件的传送矩阵。中央控制服务器102提供对数据文件信息(例如持续时间、类别、等级以及/或者简要叙述)的脱机增加、删除和更新。另外,中央控制服务器102通过更新存储在其中的数据文件和数据库控制该中央存储器103。
在一个示例的实施例中,现有的有线电视系统120可以继续馈送信号到组合器/放大器108以便提供非DOD业务给客户机。因此,根据本发明的DOD系统100并不影响现在的有线电视业务。
图1B说明根据本发明的DOD系统100的另一个示例的实施例。除了表示在图1A中的单元外,该DOD系统100包括一个开关矩阵112、一个频道监视模块114、一组后备频道服务器116a-116b和一组后备上变频器118a-118b。在一个实施例中,开关矩阵112实际上位于上变频器106和组合器/放大器108之间。开关矩阵112是由中央控制服务器102控制的。频道监视模块114包括多个配置的机顶盒,它模拟潜在的客户机,用于监视DOD系统100的状况。监视的结果由频道监视模块114传送到中央控制服务器102。在出现频道故障(即频道服务器故障,上变频器故障或者通信链路故障)的情况下,中央控制服务器102通过开关矩阵112断开故障部件并且连接完好的后备部件116以及/或者118以便重新开始服务。
在一个示例的实施例中,从DOD系统100广播的数据文件包含在运动图像专家组(MPEG)文件中。每个MPEG文件被动态地分成数据块和沿着时间轴映射到数据文件的特定部分的子数据块。根据由中央控制服务器102提供的三维的传送矩阵,这些数据块和子数据块在预先确定的时间期间被发送。对于DOD系统100而言,提供DOD业务并不是必须有反馈信道。但是,如果反馈信道是可用的,该反馈信道可用于其他的目的,诸如计费或者提供因特网服务。
图2说明根据本发明的一个实施例的示例的频道服务器104。频道服务器104包括一个服务器控制器202、一个CPU(中央处理单元)204、一个QAM调制器206、一个本机存储器208和一个网络接口210。服务器控制器202通过命令CPU 204划分数据文件为块(进一步划分为子块和数据分组)控制频道服务器104的整个操作,根据由中央控制服务器102提供的传送矩阵选择用于传输的数据块,编码所选择的数据,压缩所编码的数据,然后传送所压缩的数据到QAM调制器206。QAM调制器206接收通过总线(即PCI、CPU本地总线)或者以太网连接发送的数据。在一个示例的实施例中,QAM调制器206可以包括一个下行QAM调制器,具有前向纠错解码器的一个上行正交振幅调制/正交相移键控(QAM/QPSK)脉冲解调器,以及/或者一个上行调谐器。QAM调制器206的输出是一个中频信号,可以直接地应用到上变频器106。
网络接口210连接频道服务器104到其它频道服务器104以及连接到中央控制服务器102,以便执行来自中央控制服务器102的时间表和控制指令,报告状态送回至中央控制服务器102,和从中央存储器103接收数据文件。从中央存储器103检索的任何数据文件可以被存储在频道服务器104的本机存储器208,然后根据来自服务器控制器202的指令处理该数据文件。在一个示例的实施例中,频道服务器104可以根据有线信道的带宽(例如6,6.5或者8MHz)、QAM调制(例如QAM 64或者QAM 256)、和DOD数据流(即MPEG-1或者MPEG-2)的压缩标准/比特率发送一个或者多个DOD数据流。
图3说明根据本发明的一个实施例的示例的机顶盒(STB)300。STB 300包括一个QAM解调器302、一个CPU 304、一个条件访问模块306(例如智能卡系统)、一个本机存储器308、一个缓冲存储器309、一个STB控制器310、一个解码器312和一个图形重叠模块(graphics overlaymodule)314。STB控制器310通过控制CPU 304和QAM解调器302控制STB 300的整个操作,以便根据客户机的请求选择数据,解码所选择的数据,解压缩所解码的数据,重新装配所解码的数据,在本机存储器308或者缓冲存储器309中存储所解码的数据,和传送所存储的数据到解码器312。在一个示例的实施例中,STB控制器310根据从传输媒介110中接收的数据分组的标题控制STB 300的整个操作。在一个示例的实施例中,本机存储器308包括非易失性存储器(例如硬盘驱动器),而缓冲存储器309包括易失性存储器。
在一个实施例中,QAM解调器302包括发射器和接收器模块以及下面的一个或者多个:保密加密/解密模块、前向纠错解码器/编码器、调谐器控制器、下行和上行处理器、CPU和存储器接口电路。QAM解调器302接收调制的中频信号,取样和解调该信号以便恢复数据。
当验证之后许可访问时以及/或者当已经收取适当的费用时,条件访问模块306允许解码过程。访问条件是由服务提供者确定的。
在一个示例的实施例中,当访问被许可时,解码器312解码至少一个数据块以便将该数据块转换为可在输出屏幕上显示的图像。解码器312支持来自预订(subscribing)客户机的命令,诸如播放、停止、暂停、步进、回放、前进等等。
图形重叠模块314例如通过提供阿尔法混合或者画中画能力增强显示的图形质量。在一个示例的实施例中,在玩游戏模式期间图形重叠模块314可用于图形加速,例如当服务提供者利用根据本发明的系统提供游戏点播服务时。
在一个示例的实施例中,虽然数据文件被广播到所有的有线电视用户,但是只有那些具有兼容STB 300的DOD用户能够解码和享受数据点播业务。在一个示例的实施例中,获得数据点播文件的许可是可以通过条件访问控制模块306中的智能卡(smart card)系统获得。智能卡可以是可在本地商店或者由服务提供者设置的自动售货机进行收费。在另一个示例的实施例中,一个统一收费系统为用户提供对所有可得到的数据文件的无限制访问。
在一个示例的实施例中,数据点播交互的特征允许客户机任何时候选择可得到的数据文件。当客户机按下选择按键时与所选择的数据文件开始播放之时间之间的时间量称为响应时间。由于分配越多的资源(例如带宽,服务器能力)以提供DOD业务,该响应时间就变得越短。在一个示例的实施例中,响应时间可以根据资源分配的估计和期望的服务质量确定。
在一个示例的实施例,选择的响应时间确定一个时隙的持续时间。时隙(TS)的持续时间是由客户机以正常速度播放一个数据块的时间间隔。在一个示例的实施例中,诸如视频文件的数据文件被分成许多数据块,使得每个数据块可以在一个时隙的持续期间支持数据文件的播放。
在一个实施例中,每个数据文件的数据块的数量(NUM_OF_BLKS)可以计算如下:Estimated_BLK_Size=(DataFile_Size*TS)/DataFile_Length           (1)BLK SIZE=(Estimated BLK Size+CLUSTER_SIZE-1Byte)/CLUSTER_SIZE    (2)BLK_SIZE_BYTES=BLK_SIZE*CLUSTER_SIZE                            (3)NUM_OF_BLKS=(DataFile_Size+BLK_SIZE_BYTES-1Byte)/BLK_SIZE_BYTES  (4)
在等式(1)至(4)中,Estimated_BLK_Size是估计的块长度(以字节为单位);DataFile_Size是数据文件长度(在字节为单位);TS代表时隙的持续时间(以秒为单位);DataFile_Length是数据文件的持续时间(以秒为单位);BLK SIZE是每个数据块需要的丛集的数量;CLUSTER_SIZE是用于每个频道服务器104的本机存储器208中的丛集的尺寸(例如64K字节);BLK_SIZE_BYTES是以字节为单位的块长度。在这个实施例中,块的数量(NUM_OF_BLKS)等于数据文件长度(以字节为单位)加上以字节为单位的数据块长度减去1字节并且除以以字节为单位的数据块长度。等式(1)至(4)说明一个特定的实施例。本领域的技术人员应该认识到,其它方法是可用于对数据文件计算数据块的数量。例如,划分数据文件为许多数据块主要地是频道服务器104的本机存储器208的估计块长度和丛集长度的功能。因此,本发明不应该限制为上面提出的特定的实施例。
图4说明根据本发明的一个实施例用于产生用于发送数据文件的时间表矩阵的示例的过程。在一个示例的实施例中,这个发明使用时分多路复用(TDM)和频分多路复用(FDM)技术在服务器端压缩和调度数据传送。在一个示例的实施例中,为每个数据文件产生一个时间表矩阵。在一个实施例中,每个数据文件被分成许多数据块和根据数据块的数量产生每个时间表矩阵。典型地,时间表矩阵提供一个发送次序,用于从服务器给客户机传送数据文件的数据块,使得希望访问该数据文件的任何客户机在随机的时间按照顺序可以访问该数据块。
在步骤402,接收用于一个数据文件的数据块的数量(x)。第一变量j设置为零(步骤404)。清除参考阵列(步骤406)。参考阵列始终监视用于内部管理目的的数据块。然后,j与x比较(步骤408)。如果j小于x,第二变量i设置为零(步骤412)。然后,i与x比较(步骤414)。如果i小于x,存储在时间表矩阵的[(i+j)模(x)]列中的数据块被写入该参考阵列(步骤418)。如果参考阵列已经具有这样的数据块(s),则不写重复的副本。最初,由于时间表矩阵还不具有条目,这个步骤可以跳过。然后,如果参考阵列包含数据块i,检查参考阵列(步骤420)。最初,由于在参考阵列中的所有的条目在步骤406被清除了,在参考阵列什么也没有了。如果参考阵列不包含数据块i,数据块i被加入在矩阵位置[(i+j)模(x),j]的时间表矩阵和参考阵列(步骤422)。在数据块i被加到该时间表矩阵和该参考阵列之后,i递增1,使得i=i+1(步骤424),然后在步骤414重复该过程直到i=x。如果该参考阵列包含数据块i,i递增1,使得i=i+1(步骤424),然后在步骤414重复该过程直到i=x。当i=x时,j递增1,使得j=j+1(步骤416)并且在步骤406重复该过程直到j=x。当j=x时结束整个过程(步骤410)。
在一个示例的实施例中,如果数据文件被分成六个数据块(x=6),时间表矩阵和参考阵列如下:
时间表矩阵(SM)
TS0 TS1  TS2  TS3  TS4     TS5
[0,0]blk0 [1,0]blk1 [2,0]blk2 [3,0]blk3 [4,0]blk4 [5,0]blk5
[0,1] [1,1]blk0 [2,1] [3,1] [4,1]     [5,0]
[0,2] [1,2] [2,2]blk0 [3,2]blk1 [4,2]     [5,1]
[0,3] [1,3] [2,3] [3,3]blk0 [4,3] [5,2]blk2
[0,4] [1,4]blk3 [2,4] [3,4] [4,4]blk0 [5,3]blk1
[0,5] [1,5] [2,5] [3,5]blk4 [4,5] [5,3]blk0
参考阵列(RA)
Space0  spacel  space2  Space3  Space4  Space5
 TS0  blk0  blk1  blk2  blk3  blk4  blk5
 TS1  blk1  blk0  blk2  blk3  blk4  blk5
 TS2  blk2  blk0  blk3  blk1  blk4  blk5
 TS3  blk3  blk1  blk0  blk4  blk5  blk2
 TS4  blk4  blk0  blk5  blk2  blk1  blk3
 TS5  blk5  blk2  blk1  blk0  blk3  blk4
该申请的附录A描述了图4中所示的示例过程的逐步过程,该过程产生上述的时间表矩阵和参考阵列。在这个示例的实施例中,根据上面的时间表矩阵,该数据文件的六个数据块以下面序列发送:
TS0=>blk0
TS1=>blk0,blk1,blk3
TS2=>blk0,blk2
TS3=>blk0,blk1,blk3,blk4
TS4=>blk0,blk4
TS5=>blk0,blk1,blk2,blk5
在另一个示例的实施例中,可利用先行(look-ahead)过程计算先行时间表矩阵以便在预计的访问时间前发送数据文件的预定数量的数据块。例如,如果预定的先行时间是一个时隙的持续时间,对于大于或等于时隙数4的任何时隙,数据文件的数据块4(blk4)应该在预订客户机由STB 300在TS3或者在TS3之前被接收,但是在TS4之前不播放blk4。产生先行时间表矩阵的过程步骤基本上类似于在上面对于图4描述的过程步骤,除了在这个实施例中的先行时间表矩阵根据先行时间调度较早的发送序列之外。假定数据文件被分成六个数据块,根据先行时间表矩阵、具有两个时隙的持续时间的先行时间的一个示例的发送序列可以表示如下:
TS0=>blk0
TS1=>blk0,blk1,blk3,blk4
TS2=>blk0,blk2
TS3=>blk0,blk1,blk3,blk4,blk5
TS4=>blk0,blk5
TS5=>blk0,blk1,blk2
用于发送一组数据文件的三维的传送矩阵是根据对于该组数据文件的每个数据文件的时间表矩阵产生的。在三维的传送矩阵中,产生包含用于该组数据文件的每个数据文件的ID的第三维。计算三维的传送矩阵以便有效地利用每个信道中的可用带宽传送多个数据流。在一个示例的实施例中,本领域熟知的卷积方法用于产生三维的传送矩阵以便调度一组数据文件的有效传送。例如,卷积方法可以包括下面策略:(1)在任何时隙(TS)的持续时间中发送的数据块总数应该保持最小的可能的数量;和(2)如果相对于策略(1)可得到多个部分的解决方案,优选的解决方案是通过相加在任何参考时隙的持续时间期间发送的数据块、在前面的时隙(相对于该参考时隙)的持续时间期间发送的数据块和在下一个时隙(相对于该参考时隙)的持续时间期间发送的数据块,从而具有最小的数据块总数的解决方案。例如,假定一个示例的系统发送两个短的数据文件M和N,在这里每个数据文件被分成六个数据块,基于时间表矩阵的发送序列如下:
TS0=>blk0
TS1=>blk0,blk1,blk3TS2=>blk0,blk2TS3=>blk0,blk1,blk3,blk4TS4=>blk0.blk4TS5=>blk0,blk1,blk2,blk5应用在上面描述的示例的卷积方法,传送矩阵的可能的组合如下:任选项1:在偏移0 TS发送视频文件N              总的数据块TS0=>M0,N0                                      2TSl=>M0,M1,M3,N0,N1,N3                      6TS2=>M0,M2,N0,N2                              4TS3=>M0,M1,M3,M4,N0,N1,N3,N4              8TS4=>M0,M4,N0,N4                              4TS5=>M0,M1,M2,M5,N0,N1,N2,N5              8任选项2:在偏移1 TS发送视频文件N             总的数据块TS0=>M0,N0,N1,N3                              4TSl=>M0,Ml,M3,N0,N2                          5TS2=>M0,M2,N0,N1,N3,N4                      6TS3=>M0,Ml,M3,M4,N0,N4                      6TS4=>M0,M4,N0,N1,N2,N5                      6TS5=>M0,M1,M2,M5,N0                          5任选项3:在偏移2 TS发送视频文件N             总的数据块TS0=>M0,N0,N2                                        3TS1=>M0,M1,M3,N0,N1,N3,N4                        7TS2=>M0,M2,N0,N4                                    4TS3=>M0,M1,M3,M4,N0,N1,N2,N5                    8TS4=>M0,M4,N0                                        3TS5=>M0,M1,M2,M5,N0,N1,N3                        7任选项4:在偏移3 TS发送视频文件N                   总的数据块TS0=>M0,N0,N1,N3,N4                                5TS1=>M0,M1,M3,N0,N4                                5TS2=>M0,M2,N0,N1,N2,N5                            6TS3=>M0,M1,M3,M4,N0                                5TS4=>M0,M4,N0,N1,N3                                5TS5=>M0,M1,M2,M5,N0,N2                            6任选项5:在偏移4 TS发送视频文件N                  总的数据块TS0=>M0,N0,N4                                        3TS1=>M0,M1,M3,N0,N1,N2,N5                        7TS2=>M0,M2,N0                                        3TS3=>M0,M1,M3,M4,N0,N1,N3                        7TS4=>M0,M4,N0,N2                                    4TS5=>M0,M1,M2,M5,N0,N1,N3,N4                    8
任选项6:在偏移5 TS发送视频文件N               总的数据块
TS0=>M0,N0,N1,N2,N5                             5
TS1=>M0,M1,M3,N0                                 4
TS2=>M0,M2,N0,N1,N3                             5
TS3=>M0,M1,M3,M4,N0,N2                         6
TS4=>M0,M4,N0,N1,N3,N4                         6
TS5=>M0,M1,M2,M5,N0,N4                         6
应用策略(1),任选项2,4和6具有在任何时隙期间发送的最小的数据块的最大的数量(即6个数据块)。应用策略(2),在这个示例的实施例中最佳的传送矩阵是任选项4,因为任选项4具有任何参考时隙的数据块加上附近的时隙的数据块的最小的总数(即16个数据块)。因此,对于这个实施例而言,最好是,数据文件N的发送序列应该偏移三个时隙。在一个示例的实施例中,为每个频道服务器104产生一个三维的传送矩阵。
当根据传送矩阵发送每个数据文件的数据块时,大量的预订客户机可以在一个随机的时间访问该数据文件,并且该数据文件的适当的数据块对每个预订客户机是及时地可用的。在上面提供的例子中,假定一个时隙的持续时间等于5秒,DOD系统100根据最佳的传送矩阵(即偏移数据文件N的发送序列三个时隙)以下面方式发送数据文件M和N的数据块:
时间00:00:00=>M0 N0 N1 N3 N4
时间00:00:05=>M0 M1 M3 N0 N4
时间00:00:10=>M0 M2 N0 N1 N2 N5
时间00:00:15=>M0 M1 M3 M4 N0
时间00:00:20=>M0 M4 N0 N1 N3
时间00:00:25=>M0 M1 M2 M5 N0 N2
时间00:00:30=>M0 N0 N1 N3 N4
时间00:00:35=>M0 M1 M3 N0 N4
时间00:00:40=>M0 M2 N0 N1 N2 N5
时间00:00:45=>M0 M1 M3 M4 N0
时间00:00:50=>M0 M4 N0 N1 N3
时间00:00:55=>M0 M1 M2 M5 N0 N2
……………………………
如果在时间00:00:00,一个客户机A选择电影M,在客户机A的STB300接收、存储、播放和拒绝数据块如下:
时间00:00:00=>接收M0     =>播放M0,存储M0.
时间00:00:05=>接收M1,M3 =>播放M1,存储M0,M1,M3.
时间00:00:10=>接收M2     =>播放M2,存储M0,M1,M2 M3.
时间00:00:15=>接收M4     =>播放M3,存储M0,M1,M2,M3,M4.
时间00:00:20=>没有接收   =>播放M4,存储M0,M1,M2,M3,M4.
时间00:00:25=>接收M5     =>播放M5,存储M0,M1,M2,M3,M4,M5.
如果在时间00:00:10,客户机B选择电影M,在客户机B的STB 300接收、存储、播放和拒绝数据块如下:时间00:00:10=>接收M0,M2     =>播放M0,存储M0,M2.时间00:00:15=>接收M1,M3,M4 =>播放M1,存储M0,M1,M2,M3,M4.时间00:00:20=>没有接收       =>播放M2,存储M0,M1,M2,M3,M4.时间00:00:25=>接收M5         =>播放M3,存储M0,M1,M2,M3,M4.M5.时间00:00:30=>没有接收    =>播放M4,存储M0,M1,M2,M3,M4,M5.时间00:00:35=>没有接收    =>播放M5,存储M0,M1,M2,M3,M4,M5.
如果在时间00:00:15,客户机C选择电影N,在该客户机C的STB 300接收、存储、播放和拒绝数据块如下:
时间00:00:15=>接收N0     =>播放N0,存储N0.
时间00:00:20=>接收N1,N3 =>播放N1,存储N0,N1,N3.
时间00:00:25=>接收N2     =>播放N2.存储N0,N1,N2,N3.
时间00:00:30=>接收N4     =>播放N3,存储N0.N1,N2,N3,N4.
时间00:00:35=>没有接收   =>播放N4,存储N0,N1,N2,N3,N4.
时间00:00:40=>接收N5     =>播放N5,存储N0,N1,N2,N3,N4,N5.
如果在时间00:00:30,客户机D也选择电影N,在客户机D的STB 300接收、存储、播放和拒绝数据块如下:时间00:00:30=>接收N0,N1,N3,N4=>播放N0,存储N0,N1,N3,N4.时间00:00:35=>没有接收          =>播放N1,存储N0,N1,N3,N4.时间00:00:40=>接收N2,N5        =>播放N2,存储N0,N1,N2,N3,N4,N5.时间00:00:45=>没有接收          =>播放N3,存储N0,N1,N2,N3,N4,N5.时间00:00:50=>没有接收          =>播放N4,存储N0,N1,N2,N3,N4,N5.时间00:00:55=>没有接收          =>播放N5,存储N0,N1,N2,N3,N4,N5.
正如上面的例子中所示,客户机之任何组合可以在随机的时间独立地选择并开始播放由服务提供者提供的任何数据文件。一般的操作
服务提供者可以预定在广播前发送许多数据文件(例如视频文件)给频道服务器。中央控制服务器102计算并且发送三维传送矩阵(ID、时隙和数据块发送次序)给频道服务器104。在广播期间,频道服务器104参考该三维传送矩阵以适当的次序发送适当的数据块。每个数据文件被分成数据块,以使大量的预订客户机可以独立地开始连续地和按顺序在随机的时间观看数据文件。数据文件的数据块长度取决于所选择的时隙的持续时间和数据文件的数据流的比特率。例如,在恒定的比特率MPEG数据流中,每个数据块具有固定的长度:
块长度(兆字节)=比特率(Mb/s)×TS(秒)/8       (1)
在一个示例的实施例中,调节数据块长度到频道服务器104的本机存储器208的下一个较高倍的存储器丛集长度。例如,如果根据上面的等式(1)计算的数据块长度是720K字节,则如果本机存储器208的丛集长度是64K字节,得到的数据块长度应该是768K字节。在这个实施例中,数据块应该进一步分成多个子块,每个子块具有与丛集长度相同的长度。在这个例子中,该数据块具有十二个64K字节的子块。
子块可以进一步分解为数据分组。每个数据分组包含一个分组标题和分组数据。分组数据长度取决于每个频道服务器的CPU传送数据到的物理层的最大传输单位(MTU)。在优选实施例中,分组标题和分组数据的总的长度应该小于MTU。但是,为了最大的效率,分组数据长度应该尽可能长。
在一个示例的实施例中,分组标题中的数据包含允许用户客户机的STB 300解码任何所接收数据及确定该数据分组是否属于所选择的数据文件的信息(例如协议特征标记,版本,ID或者分组类型信息)。分组标题也可能包含其它信息,诸如块/子块/分组数、分组长度、循环冗余校验(CRC)和子块中的偏移(offset)、以及/或者编码信息。
一旦频道服务器104收到了数据分组,它就被发送给QAM调制器206,在这里另一个标题加到该数据分组以产生QAM调制的中频(IF)输出信号。对于QAM调制器206的最大比特率输出取决于可用带宽。例如,对于具有6MHz带宽的QAM调制器206,最大的比特率是5.05(比特/码元)×6(MHz)=30.3兆位/秒。
QAM调制的中频信号被发送给上变频器106,以便被转换成适合于特定的信道的RF信号(例如用于有线电视频道80,559.250MHz和6MHz带宽)。例如,如果电缆网络具有高的带宽(或者比特率),每个信道可用于提供一个以上数据流,每个数据流占用一个虚拟的子信道。例如,使用QAM调制,三个MPEG1数据流可以适合6MHz频道。上变频器106的输出加到组合器/放大器108,它发送组合的信号给传输媒介110。
在一个示例的实施例中,用于发送“N”数据流的总的系统带宽(BW)是BW=N×bw,在这里bw是每个数据流要求的带宽。例如,三个MPEG-1数据流可以同时由具有系统带宽为30.3兆位/秒的一个DOCSIS有线信道发送,因为每个MPEG-1数据流占用9兆位/秒的系统带宽。
通常,带宽被占用,而不管实际上访问该DOD业务的预订客户机的数量。因此,即使没有预订客户机正在使用DOD业务,带宽仍然被占用以保证该系统的点播(on-demand)能力。
STB 300一旦被启动,就连续地接收和更新存储在STB 300的本机存储器308中的节目指南。在一个示例的实施例中,STB 300在电视屏幕上显示包括最新节目指南的数据文件信息。诸如视频文件信息的数据文件信息可以包括电影ID、电影名称、文字说明(以多种语言)、类别(例如动作片,儿童片)、分级(例如R级,PG13级)、电缆公司策略(例如价格、免费的预览的长度)、预订期间、电影海报和电影预览。在一个示例的实施例中,数据文件信息的发送是通过一个保留的物理信道,比如为固件更新、广告节目以及/或者应急信息而保留的信道。在另一个示例的实施例中,在由其它数据流共享的物理信道中发送信息。
预订客户机可以在电视屏幕上观看按类别排列的可用数据文件清单。当该客户机选择一个可用的数据文件时,STB 300控制它的硬件调谐到相应的物理频道以及/或者虚拟的子信道,以开始接收该数据文件的数据分组。STB 300检查每个数据分组标题,解码该数据分组中的数据和确定是否应该保留所接收的数据分组。如果STB 300确定一个数据分组不应该保留,则丢弃该数据分组。否则,该分组数据保存在本机存储器308中用于以后的检索或者暂时存储在缓冲存储器309中直到它被发送给解码器312为止。
为了避免频繁地读/写本机存储器308以改善运行效率,在一个示例的实施例中,只要可能,STB 300就使用“滑动窗口”预期技术锁定预期数据块在存储缓冲器309中。如果在预期窗口中的命中(hit)发生,数据块直接从存储缓冲器309中被传送到解码器312。如果预期没有出现,在该数据块从存储缓冲器309被传送至解码器312之前,从本机存储器308读数据块到存储缓冲器309。
在一个示例的实施例中,STB 300通过红外线(IR)遥控器之按键、红外线(IR)键盘或者包括按键的前面板按钮响应预订客户机的命令,以便暂停、慢动作播放、回放、放大和单步执行。在一个示例的实施例中,如果预订客户机在预定的时间期间不输入任何操作(例如滚动节目菜单或者选择类别或电影),则自动地播放预定的广告节目。当预订客户机提供一个操作(例如按遥控器上的一个按键)时,自动地停止预定的广告节目。在另一个示例的实施例中,STB 300可以在播放视频期间自动地插入广告节目。服务提供者(例如电缆公司)可以建立价格策略,规定广告节目应该中断正在播放的视频的频繁程度。
如果在数据分组标题中发现应急信息比特,STB 300暂停任何数据接收操作并且控制它的硬件调谐在为接收数据文件信息而保留的频道,以获得和解码任何应急信息,并在输出屏幕上显示该信息。在一个示例的实施例中,当STB 300是空闲时,它被调谐到为接收数据文件信息而保留的频道并且始终准备立即接收和显示任何应急信息。
前面的例子说明本发明的一些示例的实施例,本领域的技术人员从这些示例的实施例可以清楚地理解其它实施例、变化和修改。因此本发明并不限于在上面讨论的特定的实施例,而是由权利要求来定义。
                       附录A
       为广播系统提供视频点播业务的系统和方法
以下是图4所示之示例过程的逐步描述,该过程用于为具有6个数据块的数据文件产生时间表矩阵:开始(步骤402)接收数据文件的数据块之数量(x);假设数据块之数量等于6(x=6)。(步骤404)设j=0(步骤406)清除参考矩阵(RA)(步骤408)比较j与x(步骤412)j小于x(0<6),设i=0(步骤414)比较i与x(步骤418)i小于x(0<6)。读SM中列[0]之矩阵位置并写到RA;最初,SM是空的,所以没有什么写到RA。(步骤420)RA包含数据块i或blk0?(步骤422)RA不包括任何内容,因为它是空的。将blk0写到SM中的位置[0,0]和RA。(步骤424)i加1(i=1),以得出对位置[1,0]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(1<6)。读SM中列[1]之矩阵位置并写到RA;最初,SM是空的,所以没有什么写到RA。(步骤420)RA包含数据块i或blk1?(步骤422)RA不包括blk1。将blk1写到SM中的位置[1,0]和RA。(步骤424)i加1(i=2),以得出对位置[2,0]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(2<6)。读SM中列[2]之矩阵位置并写到RA;最初,SM是空的,所以没有什么写到RA。(步骤420)RA包含数据块i或blk2?(步骤422)RA不包括blk2。将blk2写到SM中的位置[2,0]和RA。(步骤424)i加1(i=3),以得出对位置[3,0]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(3<6)。读SM中列[3]之矩阵位置并写到RA;最初,SM是空的,所以没有什么写到RA。(步骤420)RA包含数据块i或blk3?(步骤422)RA不包括blk3。将blk3写到SM中的位置[3,0]和RA。(步骤424)i加1(i=4),以得出对位置[4,0]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(4<6)。读SM中列[4]之矩阵位置并写到RA;最初,SM是空的,所以没有什么写到RA。(步骤420)RA包含数据块i或blk4?(步骤422)RA不包括blk4。将blk4写到SM中的位置[4,0]和RA。(步骤424)i加1(i=5),以得出对位置[5,0]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(5<6)。读SM中列[5]之矩阵位置并写到RA;最初,SM是空的,所以没有什么写到RA。(步骤420)RA包含数据块i或blk5?(步骤422)RA不包括blk5。将blk5写到SM中的位置[5,0]和RA。(步骤424)i加1(i=6)。返回步骤414。(步骤414)比较i与x(步骤416)i等于x(6=6)。j加1(j=1)。返回步骤406。(步骤406)清除参考矩阵(RA)(步骤408)比较j与x(步骤412)j小于x(1<6),设i=0(步骤414)比较i与x(步骤418)i小于x(0<6)。读SM中列[1]之矩阵位置并写到RA;位置[1,0]包括blk1;因此blk1被写到RA。所有其它位置为空。(步骤420)RA包含数据块i或blk0?(步骤422)RA不包括blk0。将blk0写到SM中的位置[1,1]和RA。RA现在具有blk1和blk0。(步骤424)i加1(i=1),以得出对位置[2,1]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(1<6)。读SM中列[2]之矩阵位置并写到RA。位置[2,0]包括blk2。所有其它位置为空。RA现在具有blk1、blk0和blk2。(步骤420)RA包含数据块i或blk1?(步骤424)RA包括blk1。因此,没有内容写到位置[2,1]。i加1(i=2),以得出对位置[3,1]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(2<6)。读SM中列[3]之矩阵位置并写到RA。位置[3,0]包括blk3。所有其它位置为空。RA现在具有blk1、blk0、blk2和blk3。(步骤420)RA包含数据块i或blk2?(步骤424)RA包括blk2。因此,没有内容写到位置[3,1]。i加1(i=3),以得出对位置[4,1]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(3<6)。读SM中列[4]之矩阵位置并写到RA。位置[4,0]包括blk4。所有其它位置为空。RA现在具有blk1、blk0、blk2、blk3和blk4。(步骤420)RA包含数据块i或blk3?(步骤424)RA包括blk3。因此,没有内容写到位置[4,1]。i加1(i=4),以得出对位置[5,1]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(4<6)。读SM中列[5]之矩阵位置并写到RA。位置[5,0]包括blk5。所有其它位置为空。RA现在具有blk1、blk0、blk2、blk3、blk4和blk5。(步骤420)RA包含数据块i或blk4?(步骤424)RA包括blk4。因此,没有内容写到位置[5,1]。i加1(i=5),以得出对位置[0,1]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(5<6)。读SM中列[0]之矩阵位置并写到RA。位置[0,0]包括blk0。所有其它位置为空。RA已包含blk0,因此blk0被放弃。(步骤420)RA包含数据块i或blk5?(步骤424)RA包括blk5。因此,没有内容写到位置[0,1]。i加1(i=6),返回步骤414。(步骤414)比较i与x(步骤416)i等于x(6=6)。j加1(j=2)。返回步骤406。(步骤406)清除参考矩阵(RA)(步骤408)比较j与x(步骤412)j小于x(2<6),设i=0(步骤414)比较i与x(步骤418)i小于x(0<6)。读SM中列[2]之矩阵位置并写到RA。位置[2,0]包括blk2。所有其它位置为空。RA现在具有blk2。(步骤420)RA包含数据块i或blk0?(步骤422)RA不包括blk0。将blk0写到SM中的位置[2,2]和RA。RA现在具有blk2和blk0。(步骤424)i加1(i=1),以得出对位置[3,2]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(1<6)。读SM中列[3]之矩阵位置并写到RA。位置[3,0]包括blk3。所有其它位置为空。RA现在具有blk2、blk0和blk3。(步骤420)RA包含数据块i或blk1?(步骤422)RA不包括blk1。将blk1写到SM中之位置[3,2]和RA。RA现在具有blk2、blk0、blk3和blk1。(步骤424)i加1(i=2),以得出对位置[4,2]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(2<6)。读SM中列[4]之矩阵位置并写到RA。位置[4,0]包括blk4。所有其它位置为空。RA现在具有blk2、blk0、blk3、blk1和blk4。(步骤420)RA包含数据块i或blk2?(步骤424)RA包括blk2。因此,没有内容写到位置[4,2]。i加1(i=3),以得出对位置[5,2]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(3<6)。读SM中列[5]之矩阵位置并写到RA。位置[5,0]包括blk5。所有其它位置为空。RA现在具有blk2、blk0、blk3、blk1、blk4和blk5。(步骤420)RA包含数据块i或blk3?(步骤424)RA包括blk3。因此,没有内容写到位置[5,2]。i加1(i=4),以得出对位置[0,2]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(4<6)。读SM中列[0]之矩阵位置并写到RA。位置[0,0]包括blk0。所有其它位置为空。RA已包含blk0;因此blk0被放弃。(步骤420)RA包含数据块i或blk4?(步骤424)RA包括blk4。因此,没有内容写到位置[0,2]。i加1(i=5),以得出对位置[1,2]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(5<6)。读SM中列[1]之矩阵位置并写到RA。位置[1,0]包括blk1,位置[1,1]包括blk0。RA已包含blk1和blk0,因此blk1和blk0被放弃。所有其它位置为空。(步骤420)RA包含数据块i或blk5?(步骤424)RA包括blk5。因此,没有内容写到位置[1,2]。i加1(i=6),返回步骤414。(步骤414)比较i与x(步骤416)i等于x(6=6)。j加1(j=3)。返回步骤406。(步骤406)清除参考矩阵(RA)(步骤408)比较j与x(步骤412)j小于x(3<6),设i=0(步骤414)比较i与x(步骤418)i小于x(0<6)。读SM中列[3]之矩阵位置并写到RA。位置[3,0]包括blk3,位置[3,2]包括blk1。Blk3和blk1被写到RA。所有其它位置为空。(步骤420)RA包含数据块i或blk0?(步骤422)RA不包括blk0。将blk0写到SM中的位置[3,3]和RA。RA现在具有blk3、blk1和blk0。(步骤424)i加1(i=1),以得出对位置[4,3]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(1<6)。读SM中列[4]之矩阵位置并写到RA。位置[4,0]包括blk4。所有其它位置为空。RA现在具有blk3、blk1、blk0和blk4。(步骤420)RA包含数据块i或blk1?(步骤424)RA包括blk1。因此,没有内容被写到位置[4,3]。i加1(i=2),以得出对位置[5,3]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(2<6)。读SM中列[5]之矩阵位置并写到RA。位置[5,0]包括blk5。所有其它位置为空。RA现在具有blk3、blk1、blk0、blk4和blk5。(步骤420)RA包含数据块i或blk2?(步骤422)RA不包括blk2。将blk2写到SM中的位置[5,3]和RA。RA现在具有blk3、blk1、blk0、blk4、blk5和blk2。(步骤424)i加1(i=3),以得出对位置[0,3]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(3<6)。读SM中列[0]之矩阵位置并写到RA。位置[0,0]包括blk0。所有其它位置为空。RA已包含blk0,因此放弃blk0。(步骤420)RA包含数据块i或blk3?(步骤424)RA包括blk3。因此,没有内容写到位置[0,3]。i加1(i=4),以得出对位置[1,3]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(4<6)。读SM中列[1]之矩阵位置并写到RA。位置[1,0]包括blk1,位置[1,1]包括blk0。所有其它位置为空。RA已包含blk1和blk0;不写重复的复制品。(步骤420)RA包含数据块i或blk4?(步骤424)RA包括blk4。因此,没有内容写到位置[1,3]。i加1(i=5),以得出对位置[2,3]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(5<6)。读SM中列[2]之矩阵位置并写到RA。位置[2,0]包括blk2,位置[2,2]包括blk0。所有其它位置为空。RA已包含blk2和blk0;不写重复的复制品。(步骤420)RA包含数据块i或blk5?(步骤424)RA包括blk5。因此,没有内容写到位置[2,3]。i加1(i=6)。返回步骤414。(步骤414)比较i与x(步骤416)i等于x(6=6)。j加1(j=4)。返回步骤406。(步骤406)清除参考矩阵(RA)(步骤408)比较j与x(步骤412)j小于x(4<6),设i=0(步骤414)比较i与x(步骤418)i小于x(0<6)。读SM中列[4]之矩阵位置并写到RA。位置[4,0]包括blk4。Blk4被写到RA。所有其它位置为空。(步骤420)RA包含数据块i或blk0?(步骤422)RA不包括blk0。将blk0写到SM中的位置[4,4]和RA。RA现在具有blk4和blk0。(步骤424)i加1(i=1),以得出对位置[5,4]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(1<6)。读SM中列[5]之矩阵位置并写到RA。位置[5,0]包括blk5,位置[5,3]包括blk2。所有其它位置为空。RA现在具有blk4、blk0、blk5和blk2。(步骤420)RA包含数据块i或blk1?(步骤422)RA不包括blk1。将blk1写到SM的位置[5,4]和RA。RA现在具有blk4、blk0、blk5、blk2和blk1。(步骤424)i加1(i=2),以得出对位置[0,4]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(2<6)。读SM中列[0]之矩阵位置并写到RA。位置[0,0]包括blk0。所有其它位置为空。RA已具有blk0;因此,不写一个重复的复制品。(步骤420)RA包含数据块i或blk2?(步骤424)RA包括blk2。i加1(i=3),以得出对位置[1,4]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(3<6)。读SM中列[1]之矩阵位置并写到RA。位置[1,0]包括blk1和位置[1,1]包括blk0。所有其它位置为空。RA已包含blk1和blk0;不写重复的复制品。(步骤420)RA包含数据块i或blk3?(步骤422)RA不包括blk3。因此,将blk3写到SM的位置[1,4]和RA。RA现在具有blk4、blk0、blk5、blk2、blk1和blk3。(步骤424)i加1(i=4),以得出对位置[2,4]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(4<6)。读SM中列[2]之矩阵位置并写到RA。位置[2,0]包括blk2,位置[2,2]包括blk0。所有其它位置为空。RA已包含blk2和blk0;不写重复的复制品。(步骤420)RA包含数据块i或blk4?(步骤424)RA包括blk4。因此,没有内容写到位置[2,4]。i加1(i=5),以得出对位置[3,4]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(5<6)。读SM中列[3]之矩阵位置并写到RA。位置[3,0]包括blk3,位置[3,2]包括blk1,位置[3,3]包括blk0。所有其它位置为空。RA已包含blk3、blk1和blk0;不写重复的复制品。(步骤420)RA包含数据块i或blk5?(步骤424)RA包括blk5。因此,没有内容写到位置[3,4]。i加1(i=6)。返回步骤414。(步骤414)比较i与x(步骤416)i等于x(6=6)。j加1(j=5)。返回步骤406。(步骤406)清除参考矩阵(RA)(步骤408)比较j与x(步骤412)j小于x(5<6),设i=0(步骤414)比较i与x(步骤418)i小于x(0<6)。读SM中列[5]之矩阵位置并写到RA。位置[5,0]包括blk5,位置[5,3]包括blk2,位置[5,4]包括blk1。Blk5、blk2和blk1被写到RA。所有其它位置为空。(步骤420)RA包含数据块i或blk0?(步骤422)RA不包括blk0。将blk0写到SM中的位置[5,5]和RA。RA现在具有blk5、blk2、blk1和blk0。(步骤424)i加1(i=1),以得出对位置[0,5]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(1<6)。读SM中列[0]之矩阵位置并写到RA。位置[0,0]包括blk0,所有其它位置为空。RA现在具有blk5、blk2、blk1和blk0。(步骤420)RA包含数据块i或blk1?(步骤424)RA包括blk1。i加1(i=2),以得出对位置[1,5]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(2<6)。读SM中列[1]之矩阵位置并写到RA。位置[1,0]包括blk1,位置[1,1]包括blk0,位置[1,4]包括blk3。所有其它位置为空。RA已包含blk0和blk1;因此,不写一个重复的复制品。将blk3写到RA。RA现在具有blk5、blk2、blk1、blk0和blk3。(步骤420)RA包含数据块i或blk2?(步骤424)RA包括blk2。i加1(i=3),以得出对位置[2,5]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(3<6)。读SM中列[2]之矩阵位置并写到RA。位置[2,0]包括blk2和位置[2,2]包括blk0。所有其它位置为空。RA已包含blk2和blk0;不写重复的复制品。(步骤420)RA包含数据块i或blk3?(步骤424)RA包括blk3。i加1(i=4),以得出对位置[3,5]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(4<6)。读SM中列[3]之矩阵位置并写到RA。位置[3,0]包括blk3,位置[3,2]包括blk1,位置[3,3]包括blk0。所有其它位置为空。RA已包含blk3、blk1和blk0;不写重复的复制品。(步骤420)RA包含数据块i或blk4?(步骤422)RA不包括blk4。将blk4写到SM的位置[3,5]。RA现在具有blk5、blk2、blk1、blk0、blk3和blk4。(步骤424)i加1(i=5),以得出对位置[4,5]的值。返回步骤414。(步骤414)比较i与x(步骤418)i小于x(5<6)。读SM中列[4]之矩阵位置并写到RA。位置[4,0]包括blk4,位置[4,4]包括blk0。所有其它位置为空。RA已包含blk4和blk0;不写重复的复制品。(步骤420)RA包含数据块i或blk5?(步骤422)RA包括blk5。因此,没有内容写到位置[3,4]。(步骤424)i加1(i=6)。返回步骤414。(步骤414)比较i与x(步骤416)i等于x(6=6)。j加1(j=6)。返回步骤406。(步骤406)清除参考阵列(RA)(步骤408)比较j与x。(步骤410)j等于x(6=6);结束。
按照条约第19条的修改
17、一种计算机实现的点播数据广播方法,包括步骤:准备用于规定数据传输顺序的一个传送矩阵,该数据传输顺序适于对多个客户机按非特定客户方式广播点播数据,因此所述点播数据文件的传输所需要的传输带宽的量不依赖于所述多个客户机的数量。
18、根据权利要求17所述的计算机实现的方法,其中,产生传送矩阵的步骤包括步骤:
准备适于传输第一数据文件的第一时间表矩阵,所述第一数据文件是由第一多个数据块表示,所述第一时间表矩阵为在时隙内顺序地发送所述第一多个数据块提供一个第一顺序,所用的方式使得根据所述第一时间表矩阵接收所传输的所述第一数据文件的任何客户机在一个时隙内可以开始访问所述第一数据文件。
19、根据权利要求18所述的计算机实现的方法,其中,准备传送矩阵的步骤还包括以下步骤:
准备适于传输第二数据文件的第二时间表矩阵,所述第二数据文件是由第二多个数据块表示,所述第二时间表矩阵为在时隙内顺序地发送所述第二多个数据块提供一个第二顺序,所用的方式使得根据所述第二时间表矩阵接收所传输的所述第二数据文件的任何客户机在一个时隙内可以开始访问所述第二数据文件;
通过组合所述第一和第二时间表矩阵,产生所述传送矩阵。
20、根据权利要求17所述的计算机实现的通用数据广播方法,还包括准备适于向所述多个客户机广播的电子节目指南(EPG)之步骤。
21、根据权利要求17所述的计算机实现的方法,其中,所述的点播数据包括视频数据。
22、根据权利要求17所述的计算机实现的方法,其中,所述的点播数据包括游戏数据。
23、一种用于控制机顶盒(STB)的计算机实现的方法,该方法包括以下步骤:
接收数字数据,该数字数据包含具有至少一个数据文件的非特定客户机点播数据;及
处理所述非特定客户机点播数据,以便为所述STB之用户准备所述至少一个数据文件。
24、根据权利要求23所述的计算机实现的方法,还包括以下步骤:
接收指示所述接收的数字数据之性质的电子节目指南(EPG),所接收的数字数据包括具有至少一个数据文件的所述非特定客户机点播数据;
向所述STB的所述用户提供所述EPG;及
接收来自所述STB之所述用户对所述至少一个数据文件的请求。
25、根据权利要求23所述的计算机实现的方法,其中,所述的点播数据包括视频数据。
26、根据权利要求23所述的计算机实现的方法,其中,所述的点播数据包括游戏数据。
27、根据权利要求23所述的计算机实现的方法,其中,所述非特定客户机点播数据包括多个数据文件,所述处理所述非特定客户机点播数据之步骤包括处理所述非特定客户机点播数据,以便使至少两个数据文件对所述用户是可用的。
28、根据权利要求27所述的计算机实现的方法,其中,所述至少两个数据文件之第一数据文件被实时提供给所述用户。
29、根据权利要求27所述的计算机实现的方法,其中,所述至少两个数据文件之第一数据文件被存储在持久存储装置。
30、一种用于控制机顶盒(STB)的计算机实现的方法,该方法包括以下步骤:
接收数字数据,该数字数据包含具有至少一个数据文件的非特定客户机点播数据和电子节目指南(EPG),所述的EPG指示所述接收的数字数据的性质和具有至少一个数据文件的非特定客户机点播数据;
向所述STB之用户提供所述的EPG数据;
接收来自所述STB之所述用户对所述至少一个数据文件的请求;
处理所述非特定客户机点播数据,以便为所述用户准备所述至少一个数据文件。
31、一种可接收和处理多个如VOD的数字业务和数字广播的机顶盒(STB),所述的通用机顶盒包括:
数据总线;
第一通信装置,适于连接数字广播通信媒介,所述第一通信装置可操作以接收数字广播数据;
双向连接所述数据总线的存储器;
双向连接所述数据总线的数字数据解码器;及
双向连接所述数据总线的中央处理单元(CPU),所述CPU实现控制所述存储器、所述数字解码器和所述解调器的STB控制处理,所述的STB控制处理执行用于以下步骤的指令:
    处理经所述第一通信装置接收的电子节目指南(EPG),
所述EPG指示经连接所述通信装置之数字广播服务器的数据广
播之性质;
    向所述STB之用户提供所述广播数据之指示;
    接收对于由所述STB接收的所需数据的请求,其中,按如
由所述EPG指定的非特定客户机数据点播格式接收所述所需数
据;
    处理按非特定客户机数据点播格式所接收的所述所需数
据;及
    向所述通用STB之所述用户提供所述所需数据。
32、根据权利要求31所述的机顶盒,其中,所述的STB控制处理可运行以便同时调谐到由所述通用广播服务器广播的多个频道之两个或两个以上的频道,并同时处理来自所述多个频道之两个或两个以上频道的数据。
33、根据权利要求31所述的机顶盒,其中,所述的STB控制处理可运行以将所述机顶盒调谐到第一频道,以便选择由所述用户请求的数据,确定所述选择的数据之性质,解码所述选择的数据,解压缩所述选择的数据,重新装配所述解码的数据,将所述选择的数据存储到所述存储器,并按适当处理方式提供所述选择的数据给输出装置。

Claims (16)

1.一种用于传送数据给客户机以便提供数据点播业务的方法,包括步骤:
(a)接收数据文件;
(b)指定一个时间间隔;
(c)根据所述时间间隔将所述数据文件解析为多个数据块,使得每个数据块在所述时间间隔期间是可显示的;
(d)确定发送所述数据文件所需的时隙数,其中每一个所述时隙具有的持续时间基本上等于所述时间间隔;
(e)对每个时隙分配至少:
    (1)所述多个数据块的一个第一数据块;及
    (2)可选的一个或多个附加数据块,使得所述多个数据块对
于在任何时隙期间正在访问所述数据文件的客户机按顺序是可用
的;及
(f)根据所述分配步骤(e)发送所述多个数据块。
2.根据权利要求1所述的方法,其中,所述解析步骤包括步骤:
(1)确定估计的数据块长度;
(2)确定频道服务器中存储器之丛集长度;及
(3)根据所述估计的数据块长度和所述的丛集长度解析所述数据文件。
3、根据权利要求1所述的方法,其中,所述的确定步骤包括评价资源分配和带宽可用性之步骤。
4、一种用于处理从服务器接收之数据以提供数据点播业务的方法,包括步骤:
(a)在第一时隙期间接收数据文件之选择;
(b)在第二时隙期间接收所述数据文件之至少一个数据块;及
(c)在下一个时隙期间:
    (1)接收任何尚未被接收的数据块;
    (2)顺序显示所述数据文件的数据块;及
    (3)重复步骤(c),直到所述数据文件的所有数据块都已被接
收和显示。
5、一种用于为数据文件产生时间表矩阵的方法,所述的时间表矩阵提供用于发送数据文件的数据块的发送顺序,使得所述数据块对于正在接收所述数据块的客户机按顺序是可用的,所述方法包括以下步骤:
(a)接收数据文件的数据块的数量[x];
(b)设置第一变量[j]为零;
(c)设置第二变量[i]为零;
(d)清除参考阵列中的所有项;
(e)将存储在一个矩阵中矩阵位置为[i+j]模x]列中的至少一个数据块写到参考阵列,如果所述的参考阵列尚未包括所述数据块;
(f)将数据块[i]写到所述参考阵列和所述矩阵的矩阵位置[(i+j)模x,j],如果所述参考阵列不包含所述数据块[i];
(g)所述第二变量[i]加1,重复步骤(e)直到所述第二变量[i]等于所述数据块之数量[x];及
(h)所述第一变量[j]加1,重复步骤(c)直到所述第一变量[j]等于所述数据块之数量[x]。
6、根据权利要求5所述的方法,还包括以下步骤:
(i)重复所述步骤(a)至(h),以产生用于一组数据文件的一组时间表矩阵;及
(j)根据所述一组时间表矩阵,应用卷积方法产生传送矩阵,用于发送所述一组数据文件。
7、一种数据点播系统,包括:
第一组频道服务器;
中央控制服务器,用于控制所述第一组频道服务器;
第一组上变频器,连接所述第一组频道服务器;及
组合器模块,连接所述第一组上变频器,所述组合器模块适合于经传输媒介发送数据;
其中,所述中央控制服务器用于将数据文件分为数据块,并计算用于以预订方式通过所述传输媒介发送所述数据块的传送矩阵,使得根据需要可以访问所述数据文件。
8、根据权利要求7所述的数据点播系统,其中,所述的组合器模块包括组合器和放大器。
9、根据权利要求7所述的数据点播系统,其中,所述的频道服务器包括控制器、调制器和网络接口。
10、根据权利要求7所述的数据点播系统,还包括:
频道监视模块,用于监视所述的系统;
开关矩阵;
第二组频道服务器;及
第二组上变频器;
其中,所述的频道监视模块用于向所述中央控制服务器报告系统状态,所述中央控制服务器根据来自所述频道监视模块的报告,向所述开关矩阵发出指令,以便用所述第二组频道服务器中的频道服务器替换所述第一组频道服务器中的频道服务器,及用所述第二组上变频器中的上变频器替换所述第一组上变频器中的上变频器。
11、一种用于处理从服务器接收之数据以提供数据点播业务的方法,包括步骤:
(a)从服务器接收数据分组;
(b)读取所述数据分组中的标题信息;
(c)至少部分根据所述标题信息,将所述数据分组组织为数据块;
(d)验证对所述数据块的访问;
(e)当访问被验证时,解码所述数据块;及
(f)显示所述数据块。
12、根据权利要求11所述的方法,还包括步骤:
(g)当检测出应急比特时,终止所述接收步骤;
(h)接收应急数据;及
(i)显示所述应急数据。
13、根据权利要求11所述的方法,还包括步骤:当没有接收数据分组时,调谐到一个应急频道。
14、一种用于计算传送矩阵的方法,所述传送矩阵为发送一组数据文件的数据块提供发送顺序,所述方法包括以下步骤:
(a)计算用于一组数据文件中每一数据文件的时间表矩阵,以构成一组时间表矩阵;
(b)产生一个标识阵列,其中包含用于所述一组数据文件之每一数据文件的标识;及
(c)组合所述一组时间表矩阵和所述标识阵列,以产生用于所述一组数据文件的传送矩阵。
15、根据权利要求14所述的方法,其中,所述的计算步骤包括以下步骤:(i)产生包含用于每一数据文件的一组时隙的阵列;及(ii)产生一个阵列,其中包含在每一时隙期间被发送的数据文件之至少一个数据块。
16、根据权利要求14所述的方法,其中,所述的组合包括利用卷积方法之步骤。
CN00808471A 2000-05-31 2000-08-22 为广播系统提供视频点播业务的系统和方法 Pending CN1355904A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/584,832 US6557030B1 (en) 2000-05-31 2000-05-31 Systems and methods for providing video-on-demand services for broadcasting systems
US09/584,832 2000-05-31

Publications (1)

Publication Number Publication Date
CN1355904A true CN1355904A (zh) 2002-06-26

Family

ID=24338962

Family Applications (1)

Application Number Title Priority Date Filing Date
CN00808471A Pending CN1355904A (zh) 2000-05-31 2000-08-22 为广播系统提供视频点播业务的系统和方法

Country Status (16)

Country Link
US (5) US6557030B1 (zh)
EP (2) EP1285345A4 (zh)
JP (1) JP2003535531A (zh)
KR (2) KR20030071481A (zh)
CN (1) CN1355904A (zh)
AU (1) AU2000267958A1 (zh)
BR (1) BR0017253A (zh)
CA (1) CA2404611A1 (zh)
EA (2) EA200201286A1 (zh)
IL (1) IL152762A0 (zh)
MX (1) MXPA02011841A (zh)
NO (1) NO20025710L (zh)
PL (1) PL359130A1 (zh)
TW (1) TW508949B (zh)
WO (2) WO2001093060A1 (zh)
ZA (4) ZA200209220B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102917277A (zh) * 2012-10-29 2013-02-06 清华大学深圳研究生院 一种使用广播实现点播的内容分片分配方法

Families Citing this family (134)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW425509B (en) * 1998-09-11 2001-03-11 Mentor Data System Inc Hierarchical peripheral component interconnect bus system
US6817028B1 (en) 1999-06-11 2004-11-09 Scientific-Atlanta, Inc. Reduced screen control system for interactive program guide
US7992163B1 (en) 1999-06-11 2011-08-02 Jerding Dean F Video-on-demand navigational system
US7010801B1 (en) 1999-06-11 2006-03-07 Scientific-Atlanta, Inc. Video on demand system with parameter-controlled bandwidth deallocation
US6868452B1 (en) * 1999-08-06 2005-03-15 Wisconsin Alumni Research Foundation Method for caching of media files to reduce delivery cost
US8516525B1 (en) 2000-06-09 2013-08-20 Dean F. Jerding Integrated searching system for interactive media guide
US7975277B1 (en) 2000-04-03 2011-07-05 Jerding Dean F System for providing alternative services
US7200857B1 (en) 2000-06-09 2007-04-03 Scientific-Atlanta, Inc. Synchronized video-on-demand supplemental commentary
US7934232B1 (en) 2000-05-04 2011-04-26 Jerding Dean F Navigation paradigm for access to television services
US20020026501A1 (en) * 2000-05-31 2002-02-28 Khoi Hoang Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
WO2001093063A1 (en) * 2000-05-31 2001-12-06 Prediwave, Corp. Universal stb architectures and control methods
US8069259B2 (en) 2000-06-09 2011-11-29 Rodriguez Arturo A Managing removal of media titles from a list
US7962370B2 (en) 2000-06-29 2011-06-14 Rodriguez Arturo A Methods in a media service system for transaction processing
GB0023993D0 (en) * 2000-09-30 2000-11-15 Pace Micro Tech Plc Improvements to electronic programme guide
US7340759B1 (en) 2000-11-10 2008-03-04 Scientific-Atlanta, Inc. Systems and methods for adaptive pricing in a digital broadband delivery system
US7006514B2 (en) 2001-05-31 2006-02-28 Polytechnic University Pipelined maximal-sized matching cell dispatch scheduling
USRE42600E1 (en) 2000-11-20 2011-08-09 Polytechnic University Scheduling the dispatch of cells in non-empty virtual output queues of multistage switches using a pipelined arbitration scheme
US20020143499A1 (en) * 2001-01-12 2002-10-03 Graphin Co., Ltd Methods and apparatus for communicating information via a network
JP2002259282A (ja) * 2001-02-27 2002-09-13 Matsushita Electric Ind Co Ltd データ放送スケジュールシステムおよび、それに関する、装置または方法または記録媒体またはプログラム
JP2002271758A (ja) * 2001-03-13 2002-09-20 Sony Corp 送信装置、送信方法、受信装置、受信方法および送受信システム
JP4586281B2 (ja) * 2001-03-13 2010-11-24 コニカミノルタビジネステクノロジーズ株式会社 データ送信管理装置、データ送信管理方法、データ送信管理プログラムおよびデータ送信管理プログラムを記録したコンピュータ読み取り可能な記録媒体
GB2375918B (en) * 2001-03-26 2004-12-08 Imagine Broadband Ltd Broadband communications
US9077760B2 (en) * 2001-05-22 2015-07-07 Accenture Global Services Limited Broadband communications
US7512964B2 (en) 2001-06-29 2009-03-31 Cisco Technology System and method for archiving multiple downloaded recordable media content
US8006262B2 (en) * 2001-06-29 2011-08-23 Rodriguez Arturo A Graphic user interfaces for purchasable and recordable media (PRM) downloads
US7496945B2 (en) 2001-06-29 2009-02-24 Cisco Technology, Inc. Interactive program guide for bidirectional services
US7526788B2 (en) 2001-06-29 2009-04-28 Scientific-Atlanta, Inc. Graphic user interface alternate download options for unavailable PRM content
US7987228B2 (en) * 2001-07-03 2011-07-26 Accenture Global Services Limited Broadband communications
US7191243B2 (en) * 2001-11-15 2007-03-13 Microsoft Corporation Scheduling and multiplexing data for broadcast transmission over multiple streams
US7437438B2 (en) * 2001-12-27 2008-10-14 Hewlett-Packard Development Company, L.P. System and method for energy efficient data prefetching
US7334251B2 (en) 2002-02-11 2008-02-19 Scientific-Atlanta, Inc. Management of television advertising
US20030204856A1 (en) * 2002-04-30 2003-10-30 Buxton Mark J. Distributed server video-on-demand system
US7111314B2 (en) * 2002-05-03 2006-09-19 Time Warner Entertainment Company, L.P. Technique for delivering entertainment programming content including interactive features in a communications network
US7878908B2 (en) * 2002-11-14 2011-02-01 Nintendo Co., Ltd. Multiplexed secure video game play distribution
US7552192B2 (en) * 2002-12-18 2009-06-23 Ronnie Gerome Carmichael Massively parallel computer network-utilizing MPACT and multipoint parallel server (MPAS) technologies
US8832758B2 (en) * 2003-03-17 2014-09-09 Qwest Communications International Inc. Methods and systems for providing video on demand
JP2005033627A (ja) * 2003-07-09 2005-02-03 Nec Corp コンテンツ配信システム、配信サーバ装置、クライアント装置、コンテンツ配信方法及びプログラム
US7310807B2 (en) 2003-10-29 2007-12-18 Sbc Knowledge Ventures, L.P. System and method for local video distribution
EG23529A (en) * 2003-11-05 2006-04-11 Amri Moosa E Al System and method to broadcast the video or tv anddisplaying on pc tv by choosing the required prog ram from the internet
IL159838A0 (en) 2004-01-13 2004-06-20 Yehuda Binder Information device
US8161388B2 (en) 2004-01-21 2012-04-17 Rodriguez Arturo A Interactive discovery of display device characteristics
PL367409A1 (en) * 2004-04-20 2005-10-31 Advanced Digital Broadcast Ltd. Tv analogue and digital signal receiver and method for receiving analogue and digital signals
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
US8584257B2 (en) 2004-08-10 2013-11-12 At&T Intellectual Property I, L.P. Method and interface for video content acquisition security on a set-top box
US8473475B2 (en) * 2004-09-15 2013-06-25 Samsung Electronics Co., Ltd. Information storage medium for storing metadata supporting multiple languages, and systems and methods of processing metadata
US8086261B2 (en) * 2004-10-07 2011-12-27 At&T Intellectual Property I, L.P. System and method for providing digital network access and digital broadcast services using combined channels on a single physical medium to the customer premises
US20060090186A1 (en) * 2004-10-21 2006-04-27 Santangelo Bryan D Programming content capturing and processing system and method
US8434116B2 (en) 2004-12-01 2013-04-30 At&T Intellectual Property I, L.P. Device, system, and method for managing television tuners
US7716714B2 (en) 2004-12-01 2010-05-11 At&T Intellectual Property I, L.P. System and method for recording television content at a set top box
US7474359B2 (en) 2004-12-06 2009-01-06 At&T Intellectual Properties I, L.P. System and method of displaying a video stream
US7307574B2 (en) 2005-02-02 2007-12-11 Sbc Knowledge Ventures, Lp Remote control, apparatus, system and methods of using the same
US8214859B2 (en) 2005-02-14 2012-07-03 At&T Intellectual Property I, L.P. Automatic switching between high definition and standard definition IP television signals
TWI307589B (en) 2005-05-18 2009-03-11 Innovative Sonic Ltd Method and apparatus of data segmentation in a mobile communications system
US8054849B2 (en) 2005-05-27 2011-11-08 At&T Intellectual Property I, L.P. System and method of managing video content streams
US8893199B2 (en) 2005-06-22 2014-11-18 At&T Intellectual Property I, L.P. System and method of managing video content delivery
US7908627B2 (en) 2005-06-22 2011-03-15 At&T Intellectual Property I, L.P. System and method to provide a unified video signal for diverse receiving platforms
US8365218B2 (en) 2005-06-24 2013-01-29 At&T Intellectual Property I, L.P. Networked television and method thereof
US8282476B2 (en) 2005-06-24 2012-10-09 At&T Intellectual Property I, L.P. Multimedia-based video game distribution
US8635659B2 (en) 2005-06-24 2014-01-21 At&T Intellectual Property I, L.P. Audio receiver modular card and method thereof
US8190688B2 (en) 2005-07-11 2012-05-29 At&T Intellectual Property I, Lp System and method of transmitting photographs from a set top box
US7873102B2 (en) 2005-07-27 2011-01-18 At&T Intellectual Property I, Lp Video quality testing by encoding aggregated clips
US8189472B2 (en) 2005-09-07 2012-05-29 Mcdonald James F Optimizing bandwidth utilization to a subscriber premises
US7397400B2 (en) * 2005-12-02 2008-07-08 Viasat, Inc. Variable length data encapsulation and encoding
KR101265643B1 (ko) * 2006-08-22 2013-05-22 엘지전자 주식회사 무선 통신 시스템에서의 핸드오버 수행 및 그 제어 방법
KR101387500B1 (ko) 2006-08-22 2014-04-21 엘지전자 주식회사 무선 통신 시스템에서의 제어정보 전송 및 수신 방법
KR101430449B1 (ko) * 2006-10-02 2014-08-14 엘지전자 주식회사 무선 통신 시스템에서의 페이징 메시지 송수신 방법
WO2008054114A2 (en) * 2006-10-30 2008-05-08 Lg Electronics Inc. Methods for re-direction of uplink access and for controlling random access in mobile communication system
KR100938754B1 (ko) 2006-10-30 2010-01-26 엘지전자 주식회사 비연속 수신을 이용한 데이터 수신 및 전송 방법
EP2078342B1 (en) * 2006-10-30 2015-08-26 LG Electronics Inc. Method for transmitting random access channel message and response message, and mobile communication terminal
WO2008054112A2 (en) * 2006-10-30 2008-05-08 Lg Electronics Inc. Methods of performing random access in a wireless communication system
JP4240331B2 (ja) * 2006-11-02 2009-03-18 ソニー株式会社 送信装置および方法、プログラム、並びに通信システム
US20080119178A1 (en) * 2006-11-21 2008-05-22 Samsung Electronics Co., Ltd. Allocating Compression-Based Firmware Over the Air
US7921221B2 (en) * 2007-01-22 2011-04-05 Minborg Invent I Goteborg Ab Method and apparatus for obtaining digital objects in a communication network
JP4837089B2 (ja) * 2007-03-09 2011-12-14 三菱電機株式会社 情報記録装置、ファイル転送方法、及びファイル転送システム
USRE45347E1 (en) 2007-04-30 2015-01-20 Lg Electronics Inc. Methods of transmitting data blocks in wireless communication system
US8184570B2 (en) * 2007-04-30 2012-05-22 Lg Electronics Inc. Method of transmitting data in wireless communication system supporting multimedia broadcast/multicast service
KR101469281B1 (ko) * 2007-04-30 2014-12-04 엘지전자 주식회사 무선단말의 상태 전환 방식
KR101464748B1 (ko) * 2007-04-30 2014-11-24 엘지전자 주식회사 무선단말의 측정보고 기동방식
KR101461236B1 (ko) * 2007-04-30 2014-11-12 엘지전자 주식회사 무선 호를 연결 과정에서 엔티티의 인증을 수행하는 방법
WO2008133478A2 (en) * 2007-04-30 2008-11-06 Lg Electronics Inc. Method of transmitting data in a wireless communication system
WO2008133485A1 (en) * 2007-04-30 2008-11-06 Lg Electronics Inc. Methods of generating data block in mobile communication system
WO2008133480A1 (en) * 2007-04-30 2008-11-06 Lg Electronics Inc. Method for transmitting or receiving data unit using header field existence indicator
KR20080097338A (ko) * 2007-05-01 2008-11-05 엘지전자 주식회사 불연속 데이터 송수신 방법
US20080273503A1 (en) * 2007-05-02 2008-11-06 Lg Electronics Inc. Method and terminal for performing handover in mobile communications system of point-to-multipoint service
KR100917205B1 (ko) * 2007-05-02 2009-09-15 엘지전자 주식회사 무선 통신 시스템에서의 데이터 블록 구성 방법
US20080273482A1 (en) * 2007-05-02 2008-11-06 Lg Electronics Inc. Uplink access method for receiving a point-to-multipoint service
WO2008136598A1 (en) * 2007-05-03 2008-11-13 Lg Electronics Inc. Method of data processing in a wireless communication system
WO2008156308A2 (en) * 2007-06-18 2008-12-24 Lg Electronics Inc. Paging information transmission method for effective call setup
KR101470638B1 (ko) 2007-06-18 2014-12-08 엘지전자 주식회사 이동통신 시스템에서의 무선자원 향상 방법, 상태정보 보고방법 및 수신장치
WO2008156309A1 (en) * 2007-06-18 2008-12-24 Lg Electronics Inc. Control channel reception method for receiving broadcast or multicast service
EP2627146B1 (en) 2007-06-18 2017-09-20 LG Electronics Inc. Method and user equipment for performing uplink synchronization in wireless communication system
KR101526971B1 (ko) * 2007-06-18 2015-06-11 엘지전자 주식회사 방송 또는 멀티캐스트 서비스 송수신 방법 및 단말
US8400982B2 (en) * 2007-09-20 2013-03-19 Lg Electronics Inc. Method for handling correctly received but header compression failed packets
KR101387537B1 (ko) * 2007-09-20 2014-04-21 엘지전자 주식회사 성공적으로 수신했으나 헤더 압축 복원에 실패한 패킷의 처리 방법
WO2009078832A1 (en) 2007-12-14 2009-06-25 Thomson Licensing Apparatus and method for simulcast over a variable bandwidth channel
WO2009078839A1 (en) 2007-12-18 2009-06-25 Thomson Licensing Apparatus and method for file size estimation over broadcast networks
US8484162B2 (en) * 2008-06-24 2013-07-09 Commvault Systems, Inc. De-duplication systems and methods for application-specific data
FR2933213A1 (fr) 2008-06-30 2010-01-01 Thomson Licensing Methode d'affichage d'interface utilisateur et methode d'emission correspondante
JP2010081459A (ja) * 2008-09-29 2010-04-08 Hitachi Ltd Vod受信再生装置
US8775665B2 (en) * 2009-02-09 2014-07-08 Citrix Systems, Inc. Method for controlling download rate of real-time streaming as needed by media player
US8930306B1 (en) 2009-07-08 2015-01-06 Commvault Systems, Inc. Synchronized data deduplication
US8626621B2 (en) * 2010-03-02 2014-01-07 Microsoft Corporation Content stream management
US8488942B2 (en) * 2010-06-28 2013-07-16 Cox Communications, Inc. Bookmark exchange
US8577851B2 (en) 2010-09-30 2013-11-05 Commvault Systems, Inc. Content aligned block-based deduplication
US8578109B2 (en) 2010-09-30 2013-11-05 Commvault Systems, Inc. Systems and methods for retaining and using data block signatures in data protection operations
US8954446B2 (en) 2010-12-14 2015-02-10 Comm Vault Systems, Inc. Client-side repository in a networked deduplicated storage system
US9020900B2 (en) 2010-12-14 2015-04-28 Commvault Systems, Inc. Distributed deduplicated storage system
US9252916B2 (en) 2012-02-13 2016-02-02 Affirmed Networks, Inc. Mobile video delivery
US20130282868A1 (en) * 2012-04-23 2013-10-24 Jae Chung Integral Controller Based Pacing for HTTP Pseudo-streaming
US20130339298A1 (en) 2012-06-13 2013-12-19 Commvault Systems, Inc. Collaborative backup in a networked storage system
US9665591B2 (en) 2013-01-11 2017-05-30 Commvault Systems, Inc. High availability distributed deduplicated storage system
US20150089073A1 (en) 2013-09-25 2015-03-26 Ericsson Television Inc System and method for effectuating fast channel change in an adpative streaming environment
US20150089072A1 (en) * 2013-09-25 2015-03-26 Ericsson Television Inc System and method for managing adjacent channels in an adaptive streaming environment
US9444856B2 (en) * 2013-09-25 2016-09-13 Ericsson Ab System and method for managing adjacent channels in an adaptive streaming environment
US9633056B2 (en) 2014-03-17 2017-04-25 Commvault Systems, Inc. Maintaining a deduplication database
US10380072B2 (en) 2014-03-17 2019-08-13 Commvault Systems, Inc. Managing deletions from a deduplication database
US11249858B2 (en) 2014-08-06 2022-02-15 Commvault Systems, Inc. Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host
US9852026B2 (en) 2014-08-06 2017-12-26 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US9575673B2 (en) 2014-10-29 2017-02-21 Commvault Systems, Inc. Accessing a file system using tiered deduplication
US10339106B2 (en) 2015-04-09 2019-07-02 Commvault Systems, Inc. Highly reusable deduplication database after disaster recovery
US20160350391A1 (en) 2015-05-26 2016-12-01 Commvault Systems, Inc. Replication using deduplicated secondary copy data
US9766825B2 (en) 2015-07-22 2017-09-19 Commvault Systems, Inc. Browse and restore for block-level backups
US20170192868A1 (en) 2015-12-30 2017-07-06 Commvault Systems, Inc. User interface for identifying a location of a failed secondary storage device
US10296368B2 (en) 2016-03-09 2019-05-21 Commvault Systems, Inc. Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount)
US10740193B2 (en) 2017-02-27 2020-08-11 Commvault Systems, Inc. Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount
US10664352B2 (en) 2017-06-14 2020-05-26 Commvault Systems, Inc. Live browsing of backed up data residing on cloned disks
US10917700B2 (en) 2018-02-02 2021-02-09 Microsoft Technology Licensing, Llc Estimating bandwidth savings for adaptive bit rate streaming
WO2018185572A1 (en) * 2018-02-28 2018-10-11 Multichoice Support Services (Pty) Ltd Systems and methods for customizing broadcast video
US11010258B2 (en) 2018-11-27 2021-05-18 Commvault Systems, Inc. Generating backup copies through interoperability between components of a data storage management system and appliances for data storage and deduplication
US11698727B2 (en) 2018-12-14 2023-07-11 Commvault Systems, Inc. Performing secondary copy operations based on deduplication performance
US20200327017A1 (en) 2019-04-10 2020-10-15 Commvault Systems, Inc. Restore using deduplicated secondary copy data
US11463264B2 (en) 2019-05-08 2022-10-04 Commvault Systems, Inc. Use of data block signatures for monitoring in an information management system
US11442896B2 (en) 2019-12-04 2022-09-13 Commvault Systems, Inc. Systems and methods for optimizing restoration of deduplicated data stored in cloud-based storage resources
US11687424B2 (en) 2020-05-28 2023-06-27 Commvault Systems, Inc. Automated media agent state management

Family Cites Families (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4280221A (en) 1979-05-31 1981-07-21 The Boeing Company Digital data communication system
US4945563A (en) 1986-11-05 1990-07-31 Satellite Technology Services, Inc. Video system and method for controlled viewing and videotaping
US4963995A (en) 1988-12-27 1990-10-16 Explore Technology, Inc. Audio/video transceiver apparatus including compression means
US5701582A (en) 1989-08-23 1997-12-23 Delta Beta Pty. Ltd. Method and apparatus for efficient transmissions of programs
US5421031A (en) 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
US5089982A (en) 1990-05-24 1992-02-18 Grumman Aerospace Corporation Two dimensional fast Fourier transform converter
US5557316A (en) 1990-09-28 1996-09-17 Ictv, Inc. System for distributing broadcast television services identically on a first bandwidth portion of a plurality of express trunks and interactive services over a second bandwidth portion of each express trunk on a subscriber demand basis
US5132992A (en) 1991-01-07 1992-07-21 Paul Yurt Audio and video transmission and receiving system
US5745758A (en) * 1991-09-20 1998-04-28 Shaw; Venson M. System for regulating multicomputer data transfer by allocating time slot to designated processing task according to communication bandwidth capabilities and modifying time slots when bandwidth change
US5604528A (en) 1992-06-10 1997-02-18 Scientific-Atlanta, Inc. Method and apparatus for providing periodic subscription television services
JP3617089B2 (ja) * 1993-12-27 2005-02-02 株式会社日立製作所 映像蓄積配送装置及び映像蓄積配送システム
US5521630A (en) 1994-04-04 1996-05-28 International Business Machines Corporation Frame sampling scheme for video scanning in a video-on-demand system
US5768539A (en) 1994-05-27 1998-06-16 Bell Atlantic Network Services, Inc. Downloading applications software through a broadcast channel
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
US5619249A (en) 1994-09-14 1997-04-08 Time Warner Entertainment Company, L.P. Telecasting service for providing video programs on demand with an interactive interface for facilitating viewer selection of video programs
US5612742A (en) 1994-10-19 1997-03-18 Imedia Corporation Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program
WO1996017306A2 (en) 1994-11-21 1996-06-06 Oracle Corporation Media server
US5654746A (en) 1994-12-01 1997-08-05 Scientific-Atlanta, Inc. Secure authorization and control method and apparatus for a game delivery service
EP0716370A3 (en) * 1994-12-06 2005-02-16 International Business Machines Corporation A disk access method for delivering multimedia and video information on demand over wide area networks
US5632681A (en) 1995-03-07 1997-05-27 International Business Machines Corporation Universal electronic video game renting/distributing system
KR960036641A (ko) 1995-03-21 1996-10-28 김광호 저속의 비디오비트열을 복호하는 고속용 복호화장치
JP3372004B2 (ja) 1995-03-31 2003-01-27 ソニー株式会社 電子番組ガイド装置、電子番組ガイドシステム、および電子番組ガイド方法
US5751282A (en) 1995-06-13 1998-05-12 Microsoft Corporation System and method for calling video on demand using an electronic programming guide
US5790423A (en) 1995-06-14 1998-08-04 Audible, Inc. Interactive audio transmission receiving and playback system
US5724646A (en) 1995-06-15 1998-03-03 International Business Machines Corporation Fixed video-on-demand
US5812786A (en) 1995-06-21 1998-09-22 Bell Atlantic Network Services, Inc. Variable rate and variable mode transmission system
US5781228A (en) 1995-09-07 1998-07-14 Microsoft Corporation Method and system for displaying an interactive program with intervening informational segments
US5751336A (en) * 1995-10-12 1998-05-12 International Business Machines Corporation Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems
US5949948A (en) 1995-11-20 1999-09-07 Imedia Corporation Method and apparatus for implementing playback features for compressed video data
EP0808064B1 (en) 1995-12-01 2004-03-03 Matsushita Electric Industrial Co., Ltd. Apparatus, system and method for information processing for data transfer network
KR100461211B1 (ko) 1995-12-07 2005-06-13 코닌클리케 필립스 일렉트로닉스 엔.브이. 디지털다용도디스크디바이스와다중채널재생장치간의비-pcm비트스트림을엔코딩,전송및디코딩하기위한방법및디바이스
US5751709A (en) * 1995-12-28 1998-05-12 Lucent Technologies Inc. Adaptive time slot scheduling apparatus and method for end-points in an ATM network
US5594491A (en) * 1995-12-29 1997-01-14 Vxl/Hcr Technology Corporation Near-video-on-demand digital video distribution system utilizing asymmetric digital subscriber lines
US6018765A (en) 1996-01-23 2000-01-25 Storage Concepts, Inc. Multi-channel multimedia data server
CA2196622C (en) * 1996-02-06 2001-10-16 Hiroshi Jinzenji Network data distribution system
US6128467A (en) 1996-03-21 2000-10-03 Compaq Computer Corporation Crosspoint switched multimedia system
US6012080A (en) * 1996-03-27 2000-01-04 Lucent Technologies Inc. Method and apparatus for providing enhanced pay per view in a video server
BR9708361A (pt) * 1996-04-01 1999-08-03 Macrovision Corp Processo para controlar proteção contra cópia em redes de vídeo digital
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
US5961603A (en) 1996-04-10 1999-10-05 Worldgate Communications, Inc. Access system and method for providing interactive access to an information source through a networked distribution system
JP3934174B2 (ja) * 1996-04-30 2007-06-20 株式会社エクシング 中継サーバ
US5892535A (en) 1996-05-08 1999-04-06 Digital Video Systems, Inc. Flexible, configurable, hierarchical system for distributing programming
US5778187A (en) * 1996-05-09 1998-07-07 Netcast Communications Corp. Multicasting method and apparatus
US5995092A (en) 1996-08-30 1999-11-30 Yuen; Henry C. Television system and method for subscription of information services
US5856973A (en) 1996-09-10 1999-01-05 Thompson; Kenneth M. Data multiplexing in MPEG server to decoder systems
US6199076B1 (en) 1996-10-02 2001-03-06 James Logan Audio program player including a dynamic program selection controller
US6049332A (en) * 1996-10-07 2000-04-11 Sony Corporation Method and apparatus for the scheduling and ordering of elements in a multimedia environment
US6055560A (en) 1996-11-08 2000-04-25 International Business Machines Corporation System and method to provide interactivity for a networked video server
US5978649A (en) 1996-12-27 1999-11-02 Hughes Electronics Corporation Method and apparatus for dynamic conditional channel authorization in a broadcast system
US6282195B1 (en) 1997-01-09 2001-08-28 Silicon Graphics, Inc. Packetized data transmissions in a switched router architecture
US5909594A (en) * 1997-02-24 1999-06-01 Silicon Graphics, Inc. System for communications where first priority data transfer is not disturbed by second priority data transfer and where allocated bandwidth is removed when process terminates abnormally
US6112023A (en) * 1997-02-24 2000-08-29 Lucent Technologies Inc. Scheduling-based hardware-software co-synthesis of heterogeneous distributed embedded systems
US6169767B1 (en) 1997-03-10 2001-01-02 Sarnoff Corporation Universal network interface module
JP3354433B2 (ja) * 1997-04-25 2002-12-09 株式会社日立製作所 ネットワーク通信システム
EP0880246A3 (en) 1997-05-15 1999-12-01 Matsushita Electric Industrial Co., Ltd. Compressed code decoding device and audio decoding device
US6219335B1 (en) * 1997-06-20 2001-04-17 Nortel Networks Corporation Method and apparatus for locating and isolating a fault within a token ring network
KR100268498B1 (ko) * 1997-06-26 2000-10-16 윤종용 셋탑박스를이용한pc통신및인터넷서비스장치와그방법
US6028847A (en) * 1997-07-31 2000-02-22 Hewlett-Packard Company Multiple stream traffic emulator
US6167085A (en) * 1997-07-31 2000-12-26 Sony Corporation Image data compression
US6263114B1 (en) * 1997-07-31 2001-07-17 Sony Corporation Apparatus and method for compressing image data by determining a quantization factor which provides more efficient use of an available bit rate
KR100248427B1 (ko) 1997-08-12 2000-03-15 이계철 압축 영역에서의 엠펙 부호 영상의 화면 분할 장치 및 그 방법
US6011798A (en) * 1997-08-15 2000-01-04 Intel Corporation Adaptive transmit rate control scheduler
US6049539A (en) 1997-09-15 2000-04-11 Worldgate Communications, Inc. Access system and method for providing interactive access to an information source through a networked distribution system
US6055571A (en) 1997-11-20 2000-04-25 Nec Usa, Inc. Computer network with microeconomic flow control
US6029045A (en) 1997-12-09 2000-02-22 Cogent Technology, Inc. System and method for inserting local content into programming content
US6072808A (en) * 1997-12-23 2000-06-06 Intel Corporation Method of providing and retrieving a data segment
US6272546B1 (en) * 1998-03-12 2001-08-07 Sony Corporation Method of and apparatus for managing resource allocation and bandwidth overflow in a cooperative, distributed computing environment
US6198723B1 (en) * 1998-04-14 2001-03-06 Paxonet Communications, Inc. Asynchronous transfer mode traffic shapers
US6349098B1 (en) 1998-04-17 2002-02-19 Paxonet Communications, Inc. Method and apparatus for forming a virtual circuit
US6018359A (en) 1998-04-24 2000-01-25 Massachusetts Institute Of Technology System and method for multicast video-on-demand delivery system
US6160546A (en) 1998-05-01 2000-12-12 United Video Properties, Inc. Program guide systems and methods
US6157949A (en) 1998-05-28 2000-12-05 Industrial Technology Research Institute Data placement on direct access devices for media servers with cyclic re-broadcast capability
US6266369B1 (en) 1998-06-09 2001-07-24 Worldgate Service, Inc. MPEG encoding technique for encoding web pages
US6237135B1 (en) * 1998-06-18 2001-05-22 Borland Software Corporation Development system with visual design tools for creating and maintaining Java Beans components
US6754905B2 (en) * 1998-07-23 2004-06-22 Diva Systems Corporation Data structure and methods for providing an interactive program guide
US6233389B1 (en) 1998-07-30 2001-05-15 Tivo, Inc. Multimedia time warping system
US6222530B1 (en) * 1998-08-21 2001-04-24 Corporate Media Partners System and method for a master scheduler
US6263019B1 (en) 1998-10-09 2001-07-17 Matsushita Electric Industrial Co., Ltd. Variable rate MPEG-2 video syntax processor
US6215526B1 (en) 1998-11-06 2001-04-10 Tivo, Inc. Analog video tagging and encoding system
US6219355B1 (en) 1998-11-30 2001-04-17 Qwest Communications International Inc. Video and data communication system
US6370688B1 (en) 1999-05-26 2002-04-09 Enounce, Inc. Method and apparatus for server broadcast of time-converging multi-media streams
US6502139B1 (en) 1999-06-01 2002-12-31 Technion Research And Development Foundation Ltd. System for optimizing video on demand transmission by partitioning video program into multiple segments, decreasing transmission rate for successive segments and repeatedly, simultaneously transmission
JP4253830B2 (ja) * 2000-02-10 2009-04-15 ソニー株式会社 情報記録装置、情報再生装置、情報記録再生装置及び方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102917277A (zh) * 2012-10-29 2013-02-06 清华大学深圳研究生院 一种使用广播实现点播的内容分片分配方法
CN102917277B (zh) * 2012-10-29 2015-01-21 清华大学深圳研究生院 一种使用广播实现点播的内容分片分配方法

Also Published As

Publication number Publication date
IL152762A0 (en) 2003-06-24
EA200201288A1 (ru) 2003-08-28
EP1285345A1 (en) 2003-02-26
EP1285345A4 (en) 2004-06-02
KR20030034081A (ko) 2003-05-01
EA200201286A1 (ru) 2003-08-28
WO2001093585A1 (en) 2001-12-06
ZA200209220B (en) 2003-09-01
EP1285533A1 (en) 2003-02-26
ZA200209223B (en) 2003-09-11
US20030140122A1 (en) 2003-07-24
NO20025710D0 (no) 2002-11-14
BR0017253A (pt) 2003-11-04
WO2001093060A1 (en) 2001-12-06
TW508949B (en) 2002-11-01
ZA200209222B (en) 2003-09-11
NO20025710L (no) 2003-01-16
US6557030B1 (en) 2003-04-29
AU2000267958A1 (en) 2001-12-11
US20030037123A1 (en) 2003-02-20
KR20030071481A (ko) 2003-09-03
MXPA02011841A (es) 2003-12-11
PL359130A1 (en) 2004-08-23
ZA200209221B (en) 2003-09-10
US6725267B1 (en) 2004-04-20
JP2003535531A (ja) 2003-11-25
CA2404611A1 (en) 2001-12-06
US20030105834A1 (en) 2003-06-05

Similar Documents

Publication Publication Date Title
CN1355904A (zh) 为广播系统提供视频点播业务的系统和方法
CN100399316C (zh) 通用机顶盒结构和控制方法
US20020175998A1 (en) Data-on-demand digital broadcast system utilizing prefetch data transmission
CN101309394A (zh) 利用预取数据传输的数据点播数字广播系统
US20010050920A1 (en) Rate controlled insertion of asynchronous data into a synchronous stream
US20040010524A1 (en) Efficient method and system for delivering resources in broadcast environment
US20020026501A1 (en) Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
CN102165776A (zh) 一种可伸缩视频编码文件的传输方法、接收方法及装置
CN1203668C (zh) 有选择地去激活和拷贝保护
EP1285348A1 (en) Methods for providing video-on-demand services for broadcasting systems
KR100851397B1 (ko) 부분 분할 방송을 이용한 비디오 데이터 전송 방법
CN1309255C (zh) 控制点播数据客户机访问
EP1340376A1 (en) Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
EP1570667B1 (en) Multi-point service injection in a broadcast system
WO2002086673A2 (en) Transmission of delayed access client data and demand
TWI223563B (en) Methods and systems for transmitting delayed access client generic data-on-demand services
CN1997151A (zh) 控制点播数据客户机访问

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1047633

Country of ref document: HK