用于传输延迟访问客户通用数据点播服务的方法和系统的制作方法

文档序号:7687852阅读:191来源:国知局
专利名称:用于传输延迟访问客户通用数据点播服务的方法和系统的制作方法
技术领域
本发明涉及数据点播系统,特别地本发明涉及数据传输规划。
背景技术
视频点播(VOD)是一种类型的数据点播(DOD)系统,在该VOD系统中,根据需求,由一个服务器或服务器网络提供视频数据文件给一个或多个客户。
在传统的VOD体系中,服务器或服务器网络与客户按照标准的层级客户-服务器模型进行通信。例如一个客户向一个服务器发送一个数据文件请求(例如视频数据文件)。作为对客户请求的响应,服务器向客户发送请求的文件。在标准的客户-服务器模型中,客户对数据文件请求可以由一个或多个服务器来完成,客户可以在本地的非易失存储器上存储所接收的任何数据文件以备将来使用,该标准的客户-服务器模式要求双工通信基础结构。目前双工通信要求建立新的基础结构,因为已有的电缆只能提供单工通信。双工通信基础结构的示例是混合光纤同轴电缆(HFC)或全光纤的基础结构。替换已有的电缆是非常费钱的并且所产生的服务对大多数人来说是负担不起的。
而且,当服务提供商(如电缆公司)向大量的客户提供VOD服务时,标准的客户服务器模式具有很多的限制。一种限制是该服务提供商必须实施一种机制以连续地听取并满足来自该网络内每个客户的每个请求,因此可以接收服务的客户的数量取决于这种机制的容量。一种机制使用大量并行计算机,该计算机具有大且快速的磁盘阵列作为本地服务器。但是,即便是最快的已有本地服务器一次也能传输视频数据流给大约1000-2000客户。因此,为了服务于更多的客户,本地服务器的数量必须增加,增加本地服务器就要求有更多的上层服务器来维护对本地服务器的控制。
标准客户-服务器模型的另一个限制是每个客户要求有自己的带宽,因此整个需求带宽正比于订户的数量。在本地服务器内的缓存存储器已经用于提高带宽限制,但是使用缓存存储器并不能解决问题,因为缓存存储器是有限制的。
目前,为了让更多的客户能付得起视频点播业务,现有业务提供商正在本地服务器的性能上增加每个本地服务器上客户的比例。一般地,能向1000个客户提供业务的本地服务器实际上可以向10000个客户提交业务。这种技术在大多数的订户不同时订购视频时是可以工作的。但是,该技术是失败的,因为大多数的客户很可能想同时观看视频(例如晚上或周末),从而导致本地服务器在这种尖峰时刻变得过载。
因此,希望提供一种在虚拟的任何传输介质(不用替换已有基础结构)上能提供点播业务给大量的客户的系统。而且,希望提供一种客户通用广播系统,该系统具有与订户无关的传输带宽,还希望该系统能向客户提供要求减少传输带宽的通用的子优化的数据点播业务。
发明概述本发明提供一种DOD广播系统,该系统能同时在窄带宽上传输一个或多个数据文件(作为减少的带宽客户通用序列数据块)给大量的客户,而不要求双向通信。本发明进一步提供一个STB,它能通过一个客户通用格式在正由客户订购的数据文件的短时间内开始播放数据文件广播。而且,通过在开始播放数据文件之前延迟客户访问时间以允许智能的STB装载数据文件的各部分而提供一种下载数据文件的更为有效的带宽方法。
简要地说,本发明的一个方面体现在用于传输多个数据文件的数据点播(DOD)广播系统,其中每个数据文件是作为一个减少的客户通用序列数据块传输的,包括DOD广播服务器,用于广播多个数据文件;与该DOD广播服务器通信地连接的传输介质;多个接收器,通过该传输介质与DOD广播服务器通信地连接;其中DOD广播服务器重复地以减少的客户通用格式将多个数据文件通过传输介质传输到多个接收器;其中接收器运行时请求对应于所选的数据文件的验证信息;其中接收器运行时进一步接收验证信息;以及其中接收器运行时在预定的时间周期后进一步显示所选数据文件的一部分给用户,其中预定的时间周期使接收器在开始显示数据文件之前存储一部分数据文件。
本发明的另一个实施例是公开一种用于传输子优化的数据块序列的数据点播(DOD)广播方法,包括准备一个子优化数据传输序列数据块,其中在序列中没有两个相邻的数据块是相同的;以一种非客户特定方式传输包含有符合子优化传输序列的该序列数据块的数据文件给多个客户,以便一个接收客户可以在预定的时间周期内开始访问数据文件。而且,该预定的时间周期具有一定的持续时间,并且其中该持续时间响应于包含在至少一个序列数据块中的信息。准备子优化数据传输序列的步骤包括接收一个数据文件;规定一个时间间隔;根据时间间隔将数据文件分解成多个数据块以便每个数据块在该时间间隔期间是可显示的;确定发送数据文件所要求的时隙数量,其中每个时隙具有基本上等于该时间间隔的持续时间;将多个数据块中的至少一个分配给每个时间间隙。
数据点播系统包括第一组频道服务器,用于控制第一组频道服务器的中央控制服务器,连接到第一组频道服务器的第一组上变频器,以及用于通过传输介质传输数据的组合器/放大器。在一个示例的实施例中,该数据点播系统进一步包括一个用于监视该系统的频道监视模块,一个开关矩阵,第二组频道服务器以及第二二组上变频器。该频道监视模块配置成向中央控制服务器报告何时发生了系统失效。作对来自频道监视模块的反应,该中央控制服务器指示开关矩阵以第二组频道服务器内的频道服务器替换第一组频道服务器内的有问题的频道服务器,以及用第二组上变频器内的一个上变频器替换第一组上变频器内的有问题的变频器。
一种用于接收作为子优化数据块序列传输的数据文件的方法,包括接收指示至少一个所选数据文件的用户输入;在预定的时间周期内在存储器位置存储子优化数据块序列的多个数据块中的至少一个;在该预定的时间周期过后向用户显示该数据文件的至少一第一部分;接收该子优化数据块序列的多个数据块中至少一个附加数据块;以及通过将所存储的数据块中的至少一个与该至少一个附加数据块组合来向用户显示该数据文件的至少一第二部分。
术语机顶盒并不限于连接到电视上的设备,还包括按照本发明的方法能接收广播传输的任何设备,包括高级电视系统和计算机。
附图的简要描述

图1A描述按照本发明一个实施例的示例性的DOD系统;图1B描述按照本发明另一个实施例的示例性的DOD系统;图2描述按照本发明一个实施例的示例性的频道服务器;图3描述按照本发明一个实施例的示例性的机顶盒;图4描述按照本发明一个实施例的用于产生一个规划矩阵的示例的过程;图5描述按照本发明一个实施例的用于产生子优化规划矩阵的示例性过程;图6描述按照本发明一个实施例的用于显示利用子优化规划矩阵传输的数据文件的示例性的STB过程。
本发明的详细描述本发明提供一种DOD广播系统,能同时在窄带宽上传输作为子优化序列数据块的一个或多个数据文件给大量的客户,而不需要双向的通信。本发明提供一种STB,能在客户正在订购的数据文件的短时间内开始播放数据文件。而且提供一种下载数据文件的更有效带宽方法,通过延迟客户访问时间以允许智能STB在开始播放数据文件之前装载数据文件的各部分。
在最小化传输带宽的同时最大化传输的DOD数据的某些潜在方法包括使用常数带宽传送矩阵,以及降低闲时矩阵。所有这些及其方法在Khoi Hoang的上述参考发明中都得到公开。当这些方法按照时间优化方式向客户提供通用DOD业务时,作为与访问时间上的延迟的交换,也存在着进一步降低要求的传输带宽的向客户提供通用DOD广播业务的可能性。
图1A描述了按照本发明的一个实施例的示例性DOD系统100。在该实施例中DOD系统100根据需要提供数据文件如视频文件。但是,该DOD系统100并不限于提供根据需要提供视频文件,而是还能提供其它的数据文件如点播的游戏文件。DOD系统100包括一个中央控制服务顺102,外部存储装置103,多个频道服务器104a-104n,多个上变频器106a-106n以及组合器/放大器108。中央控制服务器102控制频道服务器104,中央存储装置103以数字格式存储数据文件。在一个示例性的实施例中,存储在中央存储装置103内的数据文件是通过标准网络接口(如以太网连接)可由连接到该网络接口的授权的计算机如中央控制服务器102访问的。每个频道服务器104被分配给一个频道并且连接到一个上变频器106。频道服务器104按照来自中央控制服务器102的指令提供从中央存储装置103检索的数据文件。每个频道服务器104的输出是正交调幅(QAM)调制的中频(IF)信号,该信号具有适用于对应的上变频器106的频率。QAM调制的IF信号取决于所采纳的标准。当前美国采纳的标准是电缆数据服务接口规范(DOCSIS)标准,这要求大约43.75MHz的IF频率。上变频器106将从频道服务器104接收的IF信号转换为射频信号(RF信号)。这些包括频率和带宽的射频信号取决于期望的频道以及采用的标准。例如,在美国有线电视频道80的当前标准下,RF信号的频率大约是559.25MHz与大约6MHz的带宽,将上变频器106的输出施加给组合器/放大器108,该组合器/放大器108放大、调节并组合所接收的RF信号,然后将信号输出给传输介质10。
在示例性的实施例中,中央控制服务器102包括一个图形用户接口(未示出)以使服务提供商能通过拖放式操作规划数据传送。而且,中央控制服务器102验证并按照传送矩阵控制频道服务器104启动或停止。在一个示例的实施例中,中央控制服务器102自动地选择一个频道并计算用于在所选的频道内的传送数据文件的传送矩阵。该中央控制服务器102提供脱机的增加、删除以及数据文件信息(如持续时间、目录、费率和/或简要描述等)的更新。而且,中面控制服务器102通过更新数据文件和存储其中的数据库而控制中央存储装置103。
在一个示例的实施例中,已有的有线电视系统120可以连续地将信号馈送进组合器/放大器108以提供非DOD业务给客户,因此按照本发明的DOD系统不会破坏现有的有线电视业务。
图1B给出按照本发明的DOD系统的另一个示例性实施例。按照在图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调制器可以包括一个下游QAM调制器,一个具有前向差错校正解码器的上游正交幅度调制/正交相移键控(QAM/QSK)冲突解调器,和/或一个上游调谐器。QAM调制器206的输出是可以直接施加给上变频器106的IF信号。
网络接口210将频道服务器104连接到其它的频道服务器104以及连接到中央控制服务器102以执行来自中央控制服务器102的规划和控制指令,向中央控制服务器102回报状态,以及从中央存储装置103接收数据文件。在按照来自服务器控制器202的指令处理数据文件之前,任何从中央存储装置103检索的数据文件可以存储在频道服务器104的本地存储器208。在一个示例的实施例中,频道服务器104可以发送一个或多个DOD数据流,这取决于有线频道的带宽(例如6,6.5或8MHz),QAM 64或QAM 256,以及DOD数据流(如MPEG-1或MPEG-2)的压缩标准或比特率。
图3示出了按照本发明的一个实施例的示例性的机顶盒(STB)300。STB 300包括QAM解调器302,CPU 304,条件访问模块306(例如智能卡系统),本地存储器308,缓冲存储器309,STB控制器310,解码器312以及图形重叠模块314。STB控制器310)控制STB300的整个操作,其通过控制CPU 302和QAM解调器302以响应客户请求选择数据、解码所选的数据、解压缩解码数据、重新组装解码数据、在本地存储器308或缓冲存储器309内存储解码数据以及将存储的数据传送到解码器312。在一个示例的实施例中,STB控制器310基于从传输介质110接收的数据包内的数据包头控制STB300的整个操作。在一个示例的实施例中,本地存储器308包括非易失存储器(如硬盘)以及缓冲存储器包括易失存储器。
在一个实施例中,QAM解调器302包括发送器和接收器模块以及下列中的一个或多个私人加密/解密模块,前向差错校正解码器/编码器,调谐器控制,下游和上游处理器,CPU和存储器接口电路。QAM解调器302接收调制的IF信号、采样和解调这些信号以恢复数据。
该条件访问模块306允许在访问经过验证后被授权时或当相应的费用已变化时进行解码处理,访问的条件是由其服务提供商决定的。
验证方法包括将订阅级另与报擎级别直接插入到所传输的DOD数据中。在该方法中,STB 300读取这些访问级别并将它们与存储在STB 300内的访问级别进行对比。如果所存储的级别与随着DOD服务传送的订阅级别匹配,授权客户接收该服务。对于报擎级别的情况,STB 300读取在DOD业务内传输的报擎级别并显示与该报擎级别相对应的消息。这些验证方法在Khoi Hoang的名称为“控制数据点播客户访问”(2001年7月19日递交的、并结合作为参考的申请号09/902,503)的专利申请进行了描述。
在一个示例的实施例中,当访问被授权时,解码器312解码至少一个数据块以将数据块变换成可在输出屏上显示的图像。该解码器312支持来自订阅客户的命令,如播放、停止、暂停、步进、向后倒及向前倒等。
图形重叠模块314通过例如提供α混合或画中画性能而增强所显示的图形质量。在一个实施例中,该图形重叠模块314可用于游戏播放模式期间的图形加速,例如当服务提供商利用按照本发明的系统提供游戏点播时。
在一个实施例中,尽管所有数据文件被广播到所有的有线电视订阅者,但是仅是具有兼容的STB 300的DOD订户能解码并享受数据点播业务。在一个示例的实施例中,可通过有条件的访问控制模块306内的一个智能卡系统而获得对数据文件点播的许可。智能卡系统可以本地商店或在服务提供商设置的零售商机器处进行再充电。在另一个示例的实施例中,一个无利息付费系统向订户提供对所有可用的数据文件的无限制的访问。
在一个示例的实施例中,数据点播交互特征允许客户在任何时间选择一个可用的数据文件,客户按压一个选择按钮到所选的数据开始播放之间的时间称为响应时间。随阗更多的资源被分配(例如带宽、服务器性能)以提供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字节)。在该实施例中,块的数量(NUM_OF_BLKS)等于数据文件大小(以字节为单位)加数据块大小(以字节为单位)减1字节,然后再除以数据块大小(以字节为单位)。等式(1)-(4)描述一个特定的实施例。本技术领域内的人将意识到另一个方法可用于计算数据文件的数据块的数量。例如,将数据文件分成多个数据块主要是估计的块尺寸与频道服务器104的本地存储器208的簇大小的函数(function),因此,本发明并不限于上述的具体实施例。
图4描述了按照本发明一个实施例的用于产生一个发送数据文件的规划矩阵的示例性的处理过程。在一个示例的实施例中,本发明利用时分复用(TDM)以及频分复用(FDM)技术来在服务器侧压缩和规划数据传送。在一个示例的实施例中,为每个数据文件产生规划矩阵。在一个示例的实施例中每个数据文件被分成多个数据块并且根据数据块的数量产生该规划矩阵。一般地,一个规划矩阵提供用于从服务器向客户发送数据文件的数据块的发送顺序,以便该数据块可由在随机时间访问数据文件的任何客户按照序列顺序访问。
在步骤402,接收数据文件的多个数据块(x)。一个第一变量j被设置为0(步骤404)。清除一个参考阵列(步骤406),为了内部管理的目的该参考阵列持续跟踪数据块。下一步,将j与x(步骤408)进行对比。如果j小于x,将第二变量i设置为0(步骤412)。下一步将i与x进行对比(步骤414)。如果i小于x,存储在规划矩阵的列[(i+j)mod(x)]内的数据块被写进参考阵列(步骤418)。如果参考阵列已经具有这样的数据块,则不再进行重复的拷贝。初始地,由于规划矩阵没有入口(entry),该步骤可以略过。下一步,检查参考阵列是否包含数据块i(步骤420)。初始地,由于参考阵列的所有入口已经在步骤406被清除,在参考阵列将没有任何东西。如果参考阵列不包含数据块i,数据块i被加到规划矩阵的位置[(i+j)mod(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)时结束。
在一个示例的实施例中,如果数据文件被分成6个数据块(x=6),该规划矩阵与参考矩阵如下规划矩阵(SM)
参考矩阵(RA)
在该示例的实施例中,基于上面的规划矩阵,该数据文件的6个数据块按照下列顺序发送
TS0blk0TS1blk0,blk1,blk3TS2blk0,blk2TS3blk0,blk1,blk3,blk4,TS4blk0,blk4TS5blk0,blk1,blk2,blk5,在另一个实施例中,一个先行(look-ahead)处理过程可以用于在预测的访问时间之前计算先行规划矩阵以发送一个数据文件的数据块的预定数量。例如,如果一个预定的先行时间是一个时隙的持续时间,对于任何大于或等于第四时隙的时隙,数据文件的数据块4(blk4)应当在TS时或其之前在订阅客户处由STB 300接收,但是blk4将是直到TS4才播放。用于产生向前规划矩阵的处理步骤基本上类似于上面参照图4描述的处理步骤,例外是在本实施例中的先行规划矩阵基本先行时间规划了一个更早的发送序列。假定数据文件被分成6个数据块,根据一个先行的规划矩阵的一个示例性发送序列(具有两个时隙的持续时间的先行时间)可以表述如下TS0blk0TS1blk0,blk1,blk3 blk4,TS2blk0,blk2TS3blk0,blk1,blk3,blk4,blk5,TS4blk0,blk5TS5blk0,blk1,blk2根据一组数据文件中每个数据文件的规划矩阵可产生用于发送一组数据文件的三维传送矩阵。在该三维传送矩阵中,在该数据文件组中可以产生包含每个数据文件的ID的第三维,计算该三维传送矩阵以有效地利用每个频道中的可用的带宽以传送多个数据流。在一个示例性的实施例中,本技术领域中已知的一种卷积方法用于产生三维传送矩阵以规划一组数据文件的有效传送。例如,一种卷积方法可包括下列策略(1)在任何时隙(TS)的持续时间发送的数据块的全部数量应当保持在最小可用数量;以及(2)如果相对于策略(1)有多个部分方案(solution)可用,较佳的方案是将在任何参考的持续时间要发送的数据块、在先前时隙(相对参考时隙)的持续时间要发送的数据块以及在下一个时隙(相对参考时隙)的持续时间要发送的数据块相加而具有最小的数据块和的那个方案。例如假定一个发送两个短数据文件M和B的示例系统,在此每个数据文件被分成6个数据块,则基于规划矩阵的发送序列如下TS0blk0TS1blk0,blk1,blk3 blk4,TS2blk0,blk2TS3blk0,blk1,blk3,blk4TS4blk0,blk4TS5blk0,blk1,blk2,blk5采用如上所述的示例方法,可用的传送矩阵的组合如下选项1在时移0 TS发送视频文件N 整个数据块TS0M0,N0 2TS1M0,M1,M3,N0,N1,N3 6TS2M0,M2,N0,N2 4TS3M0,M1,M3,M4,N0,N1,N3,N4 8
TS4M0,M4,N0,N4 4TS5M0,M1,M2,M5,N0,N1,N2,N5 8选项2在时移1 TS发送视频文件N 整个数据块TS0M0,N0,N1,N3 4TS1M0,M1,M3,N0,N2 5TS2M0,M2,N0,N1,N3,N4 6TS3M0,M1,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 6
TS3M0,M1,M3,M4,N0 5TS4M0,M4,N0,N1,N3 5TS5M0,M1,M2,M5,N0,N1,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 5TS1M0,M1,M3,N0 4TS2M0,M2,N0,N1,N3 5TS3M0,M1,M3,M4,N0,N2 6TS4M0,M4,N0,N1,N3,N4 6TS5M0,M1,M2,M5,N0,N4 6采用策略(1),选项2,4,6具有在任何时隙期间发送的数据块(如6个数据块)的最小数量。采用策略(2),在示例的实施例中优化的传送矩阵是选项4,因为选项具有任何参考时隙的数据块加相邻时隙(如16个数据块)的数据块的最小和。因此,本实施例优化地,数据文件N的发送序列应是被移动三个时隙。在一个示例的实施例中,为每个频道服务器104产生一个三维传送矩阵。
当按照传送矩阵为每个数据文件传送数据块时,大量的订阅客户可以随机地访问该数据文件,以及该数据文件的相应数据块对于每个订阅客户来说也是可以及时访问的。在上面提供的例子中,假定时隙的持续时间等于5秒,DOD系统100以下列方式按照优化的传送矩阵发为数据文件M和N发送数据块(即,将数据文件N的传送序列移动三个时隙)时间000000M0 N0 N1 N3 N4时间000005M0 M1 M3 N0 N4时间000010M0M2 N0 N1 N2 N5时间000015M0 M1 M3 M4 N0时间000020M0 M4 N0 N1 N3时间000025M0 M1 M2 M5 N0 N2时间000030M0 N0 N1 N3 N4时间000035M0 M1 M3 N0 N4时间000040M0 M2 N0 N1 N2 N5时间000045M0 M1 M3 M4 N0时间000050M0 M4 N0 N1 N3时间000055M0 M1 M2 M5 N0 N2如果在时间000000,客户A选择电影M,在客户A处的STB 300就会按照如下接收、存储、播放以及拒绝数据块时间000000接收M0播放M0,存储M0时间000005接收M1,M3 播放M1,存储M0,M1,M3时间000010接收M2播放M2,存储M0,M1,M2,M3时间000015接收M4播放M3,存储M0,M1,M2,M3,M4时间000020接收无播放M4,存储M0,M1,M2,M3,M4
时间000025接收M5播放M5,存储M0,M1,M2,M3,M4,M5如果在时间000010,客户B选择电影M,在客户B处的STB 300就会按照如下接收、存储、播放以及拒绝数据块时间000010接收M0,M2播放M0,存储M0,M2时间000015接收M1,M3,M4播放M1,存储M(0,M1,M2,M3,M4时间000020接收无播放M2,存储M0,M1,M2,M3,M4时间000025接收M5播放M3,存储M0,M1,M2,M3,M4,M5时间000030接收无播放M4,存储M0,M1,M2,M3,M4,M5时间000035接收无播放M5,存储M0,M1,M2,M3,M4,M5如果在时间000015,客户C选择电影N,在客户C处的STB 300就会按照如下接收、存储、播放以及拒绝数据块时间000015接收N0播放N0,存储N0时间000020接收N1,N3播放N1,存储N0,N1,N3时间000025接收N2播放N2,存储N0,N1,N2,N3时间000030接收N4播放N3,存储N0,N1,N2,N3,N4时间000035接收无播放N4,存储N0,N1,N2,N3,N4时间000040接收N5播放N5,存储N0,N1,N2,N3,N4,N5
如果在时间000030,客户D选择电影N,在客户D处的STB 300就会按照如下接收、存储、播放以及拒绝数据块时间000030接收N0,N1,N3,N4播放N0,存储N0,N1,N3,N4时间000035接收无播放N1,存储N0,N1,N3,N4时间000040接收N2,N5播放N2,存储N0,N1,N2,N3,N4,N5时间000045接收无播放N3,存储N0,N1,N2,N3,N4,N5时间000050接收无播放N4,存储N0,N1,N2,N3,N4,N5时间000055接收无播放N5,存储N0,N1,N2,N3,N4,N5如上面例子所示的,任意的客户组合都可以随机地独立地选择和开始播放由服务提供商提供的任意的数据文件。如果对于上述实施例有足够的带宽用于传输给定的数据文件,就可以利用下面讨论的子优化传输规划以更少的时间延迟传输更多数量的数据。尽管上面的方法向客户提供了时间优化方式的通用DOD服务,但是下列的方法还可以向客户提供通用DOD广播服务,该服务作为与延迟访问时间的交换可进一步降低所要求的带宽。
图5描述了用于在500产生子优化规划矩阵的示例方法。按照一个实施例,本发明利用时分复用(TDM)以及频分复用(FDM)技术来在服务器侧压缩和规划数据传送。在一个示例的实施例中,为每个数据文件产生子优化规划矩阵。在一个实施例中,每个数据文件被分成多个数据块并且根据数据块的数量产生该子优化规划矩阵。一个子优化规划矩阵提供用于从服务器向客户发送数据文件的数据块的发送顺序,以便这些数据块可由在随机时间的一个时隙内访问数据文件的任何客户按照序列顺序访问。
在步骤502,接收数据文件的多个数据块(x)。一个第一变量j被设置为0(步骤504)。清除一个参考阵列(步骤506),为了内部管理的目的该参考阵列持续跟踪数据块。下一步,将j与x(步骤508)进行对比。如果j小于x,将第二变量i设置为0(步骤512)。下一步将i与x进行对比(步骤514)。如果i小于x,存储在子优化规划矩阵的列[(i+j)mod(x)]内的数据块被写进参考阵列(步骤518)。如果参考阵列已经具有这样的数据块,则不再进行重复的拷贝。初始地,由于子优化规划矩阵没有入口,该步骤可以略过。下一步,检查参考阵列是否包含数据块i(步骤520)。初始地,由于参考阵列的所有入口已经在步骤506被清除,在参考阵列将没有任何东西。如果参考阵列不包含数据块i,检查子优化规划矩阵的先前列(i-1)看是否矩阵的列(i-1)包含数据块i(步骤521),该数据块i被加到子优化规划矩阵的位置[(i+j)mod(x),j]别和参考阵列(步骤522)。在数据块i被加到子优化规划矩阵和参考阵列后,将i增加1,以便i=i+1(步骤524),然后在步骤514重复该处理过程直到i=x。如果参考阵列包含数据块i或子优化规划矩阵的列(i-1)包含数据块i,将i加1,以便i=i+1(步骤524),随后处理过程在步骤514重复直到i=x。当i=x时,将j加1以便j=j+1(步骤516)并且处理过程在步骤506重复直到j=x。整个过程在j=x(步骤510)时结束。
在一个示例的实施例中,如果数据文件被分成6个数据块(x=6),该规划矩阵与参考矩阵如下规划矩阵(SM)
参考矩阵(RA)
在该示例的实施例中,基于上面的子优化规划矩阵,该数据文件的6个数据块按照下列顺序发送TS0blk0TS1blk1,blk3TS2blk0,blk2TS3blk1,blk3,blk4TS4blk0,blk4TS5blk1,blk2,blk5当与图4的示例的“优化”规划序列进行对比时,该示例的“子优化”规划序列3个或更少的数据块,这样所导致的传输可以利用示例的子优化规划并要求18.75或更少的带宽。该子优化规划要求一个接收STB延迟显示所选的数据文件给用户一个时隙的持续时间。
本技术领域内人明白上述实施例的子优化规划仅是无数多个可用的方案中一个,在传输数据文件所要求的带宽上的更大的减少可以通过使用STB访问时间内更大的延迟来达到。
图6描述了按照本发明一个实施例的用于接收子优化DOD数据传输的示例性的STB方法。该处理600起始于步骤602,在此STB300(图3)从DOD广播系统100(图1A)接收一个电子指南程序(EPG),该EPG列出在DOD系统100内所有可用的文件。在步骤603,用户通过按一个与期望的数据文件相关的购买按钮而选择在EPG上列出的一个数据文件。在步骤604,STB 300(图3)开始存储所选数据文件的数据块,该STB等待足够的时间周期以允许所选数据文件的足够的数据块存储以便STB可以无中断地播放该数据文件。按照一个实施例CPU 304(图3)能确定必须有多少延迟以确保平稳地播放所选的数据文件。这可以利用各种算法完成或仅通过在从DOD系统100传输的数据内的包头位置内仅包含所要求的延迟信息来完成。在这样一个实施例中,DOD系统改变子优化传送矩阵以所要求的延迟时隙的数量取决于可用的传输带宽。
一旦STB延迟了足够长以存储无中断播放所选的数据文件所必须的数据块,STB自动地开始播放所选的数据文件,按照另外一个实施例,一旦完成了延迟周期,STB提示用户开始播放所选的数据文件。
一般操作一个服务提供商可以在广播之前规划发送多个数据文件(例如视频文件)到频道服务器104。该中央控制服务器102计算并向频道服务器104发送三维传送矩阵(ID,时隙,以及数据块发送顺序)。在广播期间,频道服务器104咨询三维传送矩阵以按照合适的顺序发送相应的数据块。每个数据文件被分成数据块以便大量的订阅客户可以独立地开始连续地并且序列随机地观看数据文件。数据文件中数据块的大小取决于规划的时隙的持续时间以及数据文件中数据流的比特率。例如,在恒定的比特率MPEG数据流中,每个数据块具有固定的大小Block Size(块大小)(MB)=比特率(Mb/s)×TS(s)/8(1)。
在一个示例的实施例中,调整数据块尺寸为频道服务器104的本地存储器208内的存储器簇尺寸的下一个更高值。例如,如果按照上面的公式(1)计算的数据块长度是720Kb,则如果本地存储器208的簇尺寸是64Kb那么所得到的数据块长度应当是768Kb。在该实施例中,数据块应当是进一步分成多个子块,每个具有与簇尺寸相同的大小。在该例中,数据块具有64Kb的12个子块。
子块可以进一步分成数据包,每个数据包包括有包头和包数据,包数据长度取决于每个频道服务器的CPU向其发送数据的物理层的最大传输单元(MTU)。在优选实施例中,包头和包数据的整个大小应小于MTU。但为为了获得最大效率,包数据长度应当尽可能地长。
在示例的实施例中,包头中的数据包含允许订阅客户的STB 300解码所有接收的数据以及确定该数据包是否属于所选的数据文件(例如协议签名,版本,ID或包信息等)的信息。包头也可包含其它的信息,例如所要求的子优化延迟周期,块/子块/包数量,包长度,循环冗余检测(CRC),子块内的偏移和/编码信息。
一旦频道服务器104接收到,数据包被发送到QAM调制器206,在此,另一个包头被加到数据包以产生一个QAM调制的IF输出信号。QAM调制器206的最大比特率输出取决于可用的带宽。例如对于具有6MHz带宽的QAM调制器206,最大的比特率是5.05(比特/符号)×6(MHz)=30.3Mb/s。
QAM调制的IF信号被发送到上变频器106以变换成适用于特定频道(例如CATV频道80,559.250MHz以及6MHz宽)的RF信号。例如,如果有线网络是高带宽(或高比特率),每个频道可以用于提供更多的数据流,而每个数据流只占用一个虚拟的子频道。例如,利用QAM调制可将三个MPEG1数据流送入6MHz的频道。上变频器106的输出被提供给组合器/放大器108,其将组合的信号发送到传输介质110。
在示例的实施例中,用于发送“N”个数据流的整个系统带宽(BW)是BW=N×bw,其中bw是每个数据流所要求的带宽。例如,三个MPEG-1数据流可以由具有30.3Mb/s系统带宽的DOCSIS有线频道同时发送,因为每个MPEG-1数据流占用系统带宽的9Mb/s。
不管实际访问DOD业务的订阅客户的数量如何,都要消耗带宽。因此,即便是没有订阅客户使用DOD业务,仍然要消耗带宽以确保系统的点播能力。
一旦打开,STB 300连续地接收和更新存储在STB 300的本地存储器308内的节目指南。在一个示例的实施例中,STB显示包含有TV屏幕上最新的节目指南的数据文件信息。数据文件信息如视频文件信息包括电影ID,电影名称、描述(以多种语言)、归类(动作片、儿童片),级别(例如R,PG13),有线公司规则(例如价格,免费牟取预览长度),订阅周期,电影海报以及电影预览等。在一个示例的实施例中,通过保留的物理频道例如为固件(firmware)更新、商业和、或冲突事件信息保留的频道发送数据文件信息。在一个示例的实施例中,通过与其它数据流共享的物理频道发送信息。
一个订阅客户可以查看按照显示在电视屏幕上的归类排列的可用的数据文件。当客户选择一个可用的数据文件时,STB 300控制它的硬件调谐进一个对应的物理频道和/或一个虚拟的子频道以开始接收针对该数据文件的数据包。STB 300检查每个数据包头,解码数据包中的数据以及确定是否应保留所接收的数据包。如果STB 300确定不应保留该数据包,则丢弃该数据包,否则在本地存储器308中保存该数据包以便以后检索或暂时地存储在缓冲存储器309中直到发送到解码器312。
为了通过避免到本地存储器308的频繁的读/写来改进性能效率,在一个示例的实施例中,STB 300使用“滑动窗”应用技术来锁定存储器缓存器309中预料的数据块。如果在应用窗中发生了一个事件(hit),数据块则直接从存储器缓存器309中输出传送到解码器。如果一个应用遗漏(miss)发生,则数据块从本地存储器308读进存储器缓存器309之后,数据块从存储器缓存器309传送到解码器312。
在一个示例实施例中,STB 300通过红外(IR)远程控制单元按钮、IR键盘或前台按钮(包括暂停按钮、缓慢移动播放、反转、成套设备以及单步)响应于订阅客户的命令。在一个示例实施例中,如果订阅客户在预定的时间周期内没有输入任何动作(例如滚动节目菜单或选择归类或电影),就会自动地播放一个规划的商业广告。当订阅客户提供一个动作时(如按远程控制单元的按钮)该规划的商业广告自动地停止。在一个示例实施例中,STB 300可以自动地播放商业广告,同时,播放视频。服务提供商(如有线公司)可以设置售价策略以指定多少次的广告应中断正在播放的视频。
如果在数据包头中发现突发事件信息比特,STB中暂停任何数据接收操作并控制其硬件调谐进为接收数据文件信息所保留的频道以获取并解码要在输出屏上显示的突发事件信息。在一个示例实施例中,STB 300是空闲的,它被调谐地为接收数据文件信息所保留的频道并且总是准备好无延迟地接收和显示任何突发事件信息。
前述的示例描述了本发明的特定示例实施例,但对本技术领域内的人来说其它实施例、变化以及修改是很明显的。本发明因此并不限于上面讨论的特定的实施例,而是由所附的权利要求限定。
权利要求
1.一种用于传输客户通用数据块序列的数据点播(DOD)广播方法,包括准备数据块的一个客户通用数据传输序列,其中所述的客户通用数据传输序列具有一个子优化的时间传送特性;按照所述的子优化传输序列以一种非客户特定方式将包含所述数据块序列的数据文件传输到多个客户,以便一个接收客户可以在预定的时间周期内开始访问所述的数据文件。
2.如权利要求1所述方法,其中预定的时间周期具有一个持续时间,以及其中所述的持续时间响应于包含在所述数据块序列的至少一个中信息。
3.如权利要求1所述方法,由此所述数据文件的传输要求与所述多个客户的数量无关的一定量的传输带宽。
4.如权利要求3所述方法,其中准备子优化数据传输序列包括接收一个数据文件;规定时间间隔;根据所述的时间间隔将所述的数据文件分成多个数据块,以便每个数据块在所述的时间间隔期间是可显示的;确定发送所述的数据文件所要求的时隙数量,其中每个时隙具有基本上等于所述的时间间隔的持续时间;将所述多个数据块中至少一个分配给每个时隙。
5.如权利要求4所述方法,其中一个客户可以在预定数量的时隙内访问所传输的数据文件。
6.如权利要求5所述方法,其中所述预定数量的时隙是1。
7.如权利要求5所述方法,其中所述预定数量的时隙至少是2。
8.如权利要求5所述方法,其中所述的时隙的数量指示所选的带宽。
9.如权利要求1所述方法,包括传输一个电子节目指南(EPG),其中所述的EPG使接收客户选择期望的数据文件进行查看。
10.如权利要求9所述方法,其中EPG指示用于接收所选的数据文件的延迟时间。
11.一种用于接收作为子优化数据块序列传输的数据文件的方法,包括接收指示至少一个所选的数据文件的用户输入;在预定的时间周期内,将所述子优化数据块序列的多个数据块的至少一个存储在存储器位置;在经过所述的预定时间周期后向用户显示所述数据文件的至少一第一部分;接收所述的子优化数据块序列的多个数据块的至少一个附加数据块;以及通过将所存储的数据块的至少一个与所述至少一个附加数据块进行组合显示所述的数据文件的至少一第二部分。
12.如权利要求11所述方法,其中所述的至少一个附加数据块也存储在存储器位置。
13.如权利要求11所述方法,进一步包括在在播放所述的数据文件之前为确保对应于所述数据文件的数据块在被规划进行播放之前得到接收所必须的等待时间。
14.一种用于在多个时隙上重复性地检索作为子优化数据块序列的数据文件广播的设备,包括用于从选择播放数据文件的至少一个的用户接收文件请求的装置;用于初始化一个授权文件检索处理过程以在第一时间间隔期间检索所述的数据块序列的至少一个数据块的装置;用于在第一时间间隔之后显示所述数据文件的第一部分的装置;用于检索所述子优化数据块序列的其余数据块的装置;利用在第一时间间隔期间检索的至少一个数据块结合所述其余数据块的至少一个而播放数据文件的第二部分的装置。
15.如权利要求14所述方法,进一步包括用于请求对所请求的文件进行检索授权的装置。
16.如权利要求14所述方法,其中由用户机顶盒(STB)接收的电子节目指南(EPG)并提供给该用户。
17.如权利要求16所述方法,其中利用与对应于用户的文件选择的EPG一起传送的数据用户STB自动地确定一个下载时间和播放时间,并且在一个等待周期后自动地显示所述文件的至少一部分,所述的等待周期持续时间响应于所述的下载时间和播放时间。
18.如权利要求17所述方法,其中该用户STB响应于所述的播放时间和所述的下载时间自动地计算等待周期持续时间。
19.如权利要求18所述方法,其中所述的等待周期进一步响应于包含所述文件的数据块的数量。
20.一种用于在多个时隙上重复性地检索作为子优化数据块序列的数据文件广播的设备,包括输入装置,用于从选择播放数据文件的至少一个的用户接收文件请求;处理器,用于初始化一个授权文件检索处理过程以在第一时间间隔期间检索所述的数据块序列的至少一个数据块;显示装置,用于在第一时间间隔之后显示所述数据文件的第一部分;通信链接,用于检索所述子优化数据块序列的其余数据块,其中所述的显示装置进一步利用在第一时间间隔期间检索的至少一个数据块结合所述其余数据块的至少一个而显示所述数据文件的第二部分。
21.如权利要求19所述的设备,进一步包括用于请求对所请求的文件进行检索授权的通信端口。
22.如权利要求20所述的设备,其中由用户机顶盒(STB)接收EPG并提供给该用户。
23.如权利要求21所述的设备,其中利用与对应于用户的文件选择的EPG一起传送的数据,用户STB自动地确定一个下载时间和播放时间,并且在一个等待周期后自动地显示所述文件的至少一部分,所述的等待周期持续时间响应于所述的下载时间和播放时间。
24.如权利要求22所述的设备,其中该用户STB响应于所述的播放时间和所述的下载时间自动地计算等待周期持续时间。
25.如权利要求23所述的设备,其中所述的等待周期进一步响应于包含所述文件的数据块的数量。
26.一种用于传输多个数据文件的数据点播(DOD)广播系统,其中每个数据文件是作为子优化数据块序列传输的,包括DOD广播服务器,用于广播多个数据文件;传输介质,通信地与所述的DOD广播服务器连接;多个接收器,通过所述的传输介质通信地与所述的DOD广播服务器连接;其中所述的DOD广播服务器通过所述的传输介质重复性地传输多个数据文件到所述多个接收器;其中所述的接收器请求对应一个所选的数据文件的授权信息;其中所述的接收器进一步工作以接收所述的授权信息;以及其中所述的接收器进一步工作以在一预定的时间周期后显示所选数据文件的一部分给用户,其中所述的预定时间周期合所述的接收者在开始播放所述的数据文件之前存储所述的数据文件的一部分。
27.一种用于在宽域网上访问作为子优化数据块序列的DOD数据文件广播的机顶盒设备,包括输入装置,用于从选择播放数据文件的至少一个的用户接收文件请求;处理器,用于初始化一个授权文件检索处理过程以在第一时间间隔期间检索所述的数据块序列的至少一个数据块;显示装置,用于在第一时间间隔之后显示所述数据文件的第一部分;通信链接,用于检索所述子优化数据块序列的其余数据块,其中所述的显示装置进一步利用在第一时间间隔期间检索的至少一个数据块结合所述其余数据块的至少一个而显示所述数据文件的第二部分。
28.如权利要求26所述的设备,其中所述处理器进一步工作以在接收到所选的数据文件的一最小部分时自动地开始显示所选的数据文件。
全文摘要
一种用于传输客户通用数据块序列的DOD广播方法,包括准备数据块的一个客户通用数据传输序列,其中所述的客户通用数据传输序列具有一个子优化的时间传送特性;按照所述的子优化传输序列将包含所述数据块序列的数据文件传输到多个客户,以便接收客户可以在预定的时间周期内开始访问所述的数据文件。准备所述序列包括接收一个数据文件;规定时间间隔;根据所述的时间间隔将所述的数据文件分成多个数据块,以便每个数据块在所述的时间间隔期间是可显示的;确定发送所述的数据文件所要求的时隙数量,其中每个时隙具有基本上等于所述的时间间隔的持续时间;将所述多个数据块中至少一个分配给每个时隙。
文档编号H04N7/173GK1411279SQ02118200
公开日2003年4月16日 申请日期2002年4月24日 优先权日2001年4月24日
发明者黄炎 申请人:派威公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1