数据处理系统的制作方法

文档序号:7571003阅读:212来源:国知局
专利名称:数据处理系统的制作方法
技术领域
本发明涉及一种数据处理系统,特别但非排他地涉及一种用于传输视频信息的改进的数据处理系统。更特别地,本发明涉及一种改进的视频存储结构,该结构用于传输和操纵多个视频数据流。
随着压缩新技术的进步,将视频、声频及用户数据存入磁盘存储设备已变得可行。另外,数据传输技术的改进为多媒体传输提供了充分的带宽。因此,如视频点播(video-on-demand,VOD),视频编辑,交互游戏,家庭购物及其他多媒体应用都得到了发展,视频点播服务可包括如电影,体育事件,文本信息,教育节目及艺术节目。
“多媒体应用”是指在一个应用中使用不同通信形式的应用。例如,信息可以通过同时使用声音,文本及视频显示在数据处理系统上。多媒体数据处理系统允许同时显示文本、图像及声频。这些类型的多媒体应用被统一定义为“视频”,尽管在一些情况下,视频可以在文本信息中仅包括图象部分或声频部分,例如音乐,但应理解视频一般包括视频和声频两部分。
一般的消费者,也称“用户”,想在对他们方便的时间和地点选择他们可用的视频。如果视频可以由任何传输介质如商用电话,电报,及卫星网络来传送,则是很有益处的。视频应同可以方便得到的显示系统兼容,如NTSC标准电视或个人电脑。
进一步,同录像机(VCR)现在所提供的命令相似的VCD的实时交互控制是一种特殊需求。这些类型的命令被称之为“虚拟VCR命令(virtual VCR commands)”一任意对视频进行快进,暂停或重放。进一步,家庭购物和视频游戏形式的视频需要在视频和消费者之间进行与电影形式的视频相比更高级的交互和控制。另外,用于提供视频服务的数据处理系统应具有扩展性,以合理的代价将提供给广大消费者的可用服务最大化。
这种应用将视频,计算及电信技术集中在一起来满足消费者的需求。由于要将这些必要的技术集中起来以满足视频的控制和传输,致使废弃在计算和电话业所采用的标准结构。例如,

图1中的视频服务器10示出了一种用于传送视频给消费者的普通的数据处理系统结构。视频服务器10包括连到处理器14和存储器16的系统总线12。视频服务器10还包括磁盘阵列18,磁盘阵列18连到磁盘阵列控制器20上,控制器20反过来通过主机适配器(HA)22连到系统总线12上。另外,视频服务器10包含多个网络适配器,每个适配器均具有两个连接,一个连至系统总线12,另一个连至通信网络(未示出)。磁盘阵列18包含经压缩的含有视频的视频数据。通过将视频数据由磁盘阵列18移到系统总线12,驻留在磁盘阵列18上的视频数据被送至网络上的消费者。从这一位置开始,视频数据通过网络适配器24移至网络。多道视频数据流也称“视频数据流”通过网络由视频服务器10送至消费者。
随着通信网络上需要视频的消费者数目的增加,由于视频数据移动到系统总线12,接着移入通信网络,因此所需的视频存储量增加,系统总线12上的传输量也增加。结果,连接到通信网络上的计算机硬件和软件会产生不匹配。视频服务器中的系统总线12会成为视频数据由磁盘阵列18到通信网络进行传输的瓶颈。另外,由于从不同消费者接收命令,所传输的视频数据量增加,系统总线12上的传输量增加。特别地,要求新视频的命令及用于控制视频的表示类VCR命令的命令,也称“虚拟VCR命令”由视频服务器10接收并由处理器14进行处理。
为了提高视频服务器10的性能,需要以高代价在当前计算机技术上实现高性能的硬件。典型地,需要非常高性能的内部输入/输出(I/O)系统总线来传输视频服务器中的视频以为任何数目的用户服务。另外,大多数性能非常高的系统总线生产量少且售价昂贵。对于数目较小的用户,包含视频的每个视频流的费用是不适宜的。
本发明提供了一种数据处理系统,特别是一种视频数据处理系统,它具有超过已知的这种系统的优点。
根据本发明的一个方面,它提供用于进行视频数据处理的装置,包括存储装置,将视频数据存为数字视频文件;系统连接装置,用于提供到数据处理系统的连接;网络连接装置,用于提供至通信网络的连接;及传输装置,用于使用网络连接装置将数字视频文件从存储装置传输到通信网络。
根据本发明的另一方面,提供了一种数据存储装置,用于存储数据并将其传输到通信网络上的一个用户系统,该装置包括一个总线;连至总线的系统连接装置,用于提供至数据处理系统的连接;网络连接装置,它连接到总线上并提供至通信网络的连接;缓冲器装置,它具有一个至总线的第一连接和一个至网络连接的第二连接;存储装置,具有至总线的连接,这里的存储装置包含数据;处理器 包括第一处理器装置,用于从存储装置到缓冲器装置传输数据,第二处理器装置,用于从缓冲器装置到网络连接装置传输数据,第三处理器装置,用于在通信网络上从网络连接到用户系统传输数据。
根据本发明的另一个方面,它提供一种数据处理系统,包括视频服务器装置,通信总线和存储装置,该存储装置包括一个包含数据文件的存储设备,一个至通信网络的网络连接,一个至通信总线的连接。该数据处理系统还包括传输装置,用于通过网络连接从存储设备至通信网络传送数据文件。
根据本发明进一步的一个方面,它提供一种分布式数据处理系统,包括通信网络,多个连接到通信网络上的用户系统,连接至通信网络上的视频服务器,及连接到视频服务器上的视频存储装置。视频存储单元包括总线;第一网络连接装置,它连至总线上并提供至视频服务器装置的连接;第二网络连接装置,它连至总线上并提供至通信网络的连接;缓冲器装置,它具有至总线的第一连接和至第二网络连接的第二连接;连接到总线的存储设备,其中存储设备包含表示视频的数据;及视频存储单元处理器,它包括第一处理器装置,用于从存储设备到总线传输数据;第二处理器装置,用于从缓冲器装置到第二网络连接传输数据;第三处理器装置,用于从第二网络连接到通信网络上的用户系统的数据传输。
根据本发明更进一步的一个方面,它提供一种数据处理系统,包括一个计算机,该计算机包括一个处理器,一个存储器,一个存储设备;连接至处理器,存储器和存储设备的系统总线;及数据存储单元,该数据存储单元包括用于存储数据的第二存储设备,直接连至通信网络的网络连接和连至系统总线的连接;及传输装置,用于通过网络连接从第二存储设备到通信网络传输数据。
因此,本发明的优点在于提供了一种用于向用户传送视频的改进的方法和装置,它克服了前面所描述的问题。
另外,本发明包括从网络接收命令的装置。这些命令在装置内进行处理并可用于控制视频及从存储设备到通信网络的传输方式。
特别地,通过将数据从存储设备传送到同存储设备相连的总线,接着从总线传至同总线相连的缓冲器,表示视频的数据可以从存储设备传送至网络连接。缓冲器也可以包括一个至网络连接的连接,数据直接从缓冲器传至网络连接。
下面,仅参考附图描述本发明的实施例。
图2所示的是用于提供视频的体现本发明的数据处理系统;图3是基于本发明实施例的视频服务器图;图4是一张方框图,用于描述基于本发明实施例的视频存储单元的结构布局;图5是一张方框图,用于描述基于本发明实施例的视频存储单元中的功能部件;而图6示出了在该视频存储单元中的数据协调情况。
参照图2,根据本发明的优选实施例对用于提供视频的分布式数据处理系统50进行描述。分布式数据处理系统50包括一或多个数据处理系统52,分布在广大地域内的用户系统54及通信网络56。一般地,视频从数据处理系统52通过通信网络送至用户系统54。另外,视频可以在数据处理系统52之间进行传输。在通信网络56中,在数据处理系统52和用户系统54之间通信所用的物理介质可以是如双绞线,同轴电缆、光缆、微波连接或卫星连接。用作通信的连续物理路径被称为“网路(circuit)”。网路包括用于传达控制信号的带宽相当小的“双向”信道和用于传达视频数据的带宽相当大的“下行”信道。该网路可以包括附加通道,例如分配用作双向通信的中等带宽通道,如电话服务的应用。
在所叙述的例子中,分布式数据处理系统50是一个宽带通信系统,包括同步光纤网络(Synchronized Optical Network,SONET),异步传输模式(ATM)及智能网络(Intelligent Networks,IN)。分布式数据处理系统50上的可用服务可包括家庭购物,视频游戏及VOD。除了这些,许多其他的多媒体应用可以通过宽带通信在分布式数据处理系统50中提供。
为了支持声频和视频,分布式处理系统50中的视频服务器必须支持大量数据。例如,十分钟非压缩的完整的移动视频典型地要消耗10或11个千兆字节的存储量。现在可用的压缩标准,如联合摄影专家组织(Joint Photographic Experts Group,JPEG)和运动图像专家组织(Motion Picture Experts Group,MPEG),可用于压缩数据。关于涉及宽带通信网络的通信网络及同数据传输标准有关的结构的更多信息,可以参考Kumar的Broadband Communications Professional’sGuide To ATM,Frame Relay,SMDS,SONET,and BISDN,McGraw-Hill Inc.(1995)。
在所述例子中,用户系统54包括一个同网络相连的接口/控制盒和一个如监视器或电视的浏览设备。可选择地,用户系统54的配置可以是工作站。
现在参照图3,该图示出了基于本发明的数据处理系统。数据处理系统52包括一个视频服务器100,该服务器包括系统总线102,用于一些部件的内部连接。特别地,处理器104,存储器106及存储设备108通过视频服务器100中的系统总线102彼此进行通信。支持系统及网络管理的程序由处理器104执行。此时任何合适的处理器都可用于处理器104上,由Intel公司出售的奔腾(Pentium)微处理器,及可以从国际商用机器公司及Motorola公司得到的Power PC 620,都是适用处理器的例子。“Pentium”是Intel公司的商标,而“PowerPC”是国际商用机器公司的商标。另外,在存储设备108上可以找到商用支持数据库。这些数据库可用于跟踪视频输入请求和统计数据,例如视频的高峰请求时间,视频请求频率及视频请求用户的标识。视频服务器100连到通信总线110上,例如以太网。
特别地,视频服务器100可以使用任何合适的计算机来实现,例如IBM PS/2或IBM RISC SYSTEM/6000,这两种产品都属于座落于New York,Armonk的国际商用机器公司。“RISC SYSTEM/6000”是国际商用机器公司的商标。另外,视频存储单元112连至通信总线110。
根据本发明的这一实施例,视频存储单元112提供了一种解决视频/多媒体存储及同由存储器向通信网络传输大量数据相关的I/O中的问题的方法。另外,视频存储单元112在为连接到通信网络56上的用户提供交互控制的同时,可以连续同时传送视频从而改善了访问时间。通过直接将数据由视频存储单元112传到通信网络56,视频存储单元112在分布式数据处理系统50中为用户系统54上的消费者提供视频,从而避免了数据在视频服务器100中的系统总线102上传输时出现的瓶颈及速度下降。
视频存储单元112也可进行配置以匹配内容容量/网络带宽并提供由小的到非常大的服务器应用所需的带宽容量。另外,每个视频存储单元112都能同时传送多个视频数据流并且能将准时视频(videojust-in-time)的单一存储拷贝以多个视频数据流方式传至通信网络56相连的用户。视频存储单元112包含高层接口命令结构(high levelinterface command structure),视频流控制,视频文件管理控制功能,及宽带或局域网连接的组合。进一步,根据数据处理系统52上的需要通信总线110上的视频存储单元112的分布式连接允许加入附加的视频存储单元以扩展数据处理系统52的性能。
现在参看图4,该方框图示出了视频存储单元的结构布局。如该图所见,视频存储单元112包含网络连接150,处理器152,奇偶保护存储器(parity protected storage),视频数据缓冲器156及网络连接158。所有这些部件通过总线160彼此连接起来。网络连接150和158,也称“网络适配器”,是用于将视频存储单元112同通信总线110及通信网络56连接起来的连接机制。磁盘驱动器162用于提供奇偶保护存储器154。
通过网络连接150和158,总线160可以使用任何类型的可提供同磁盘驱动器162和连至视频存储单元112的网络能力相匹配的带宽的总线。在所述例子中,总线160是外围部件互连(PeripheralComponent Interconnect,PCI)总线。网络连接150提供至图3中通信总线110的连接。
接下去,网络连接150提供了接收来自通信总线110的高层命令的接口。尽管所述例子示出网络连接150同通信总线110相连,但网络连接150或其他类型的连接器也可以同数据处理系统相连,例如,可使用其他连接机制同视频服务器100连接。例如,根据本发明,可以利用PCI总线,RS 232接口或SCSI系统。对用来将网络连接150或一些其他类型的连接器同视频服务器100连接起来的连接机制的要求是,该连接机制必须支持视频服务器100和视频存储单元112之间的命令传输。由网络连接150接收到的命令由处理器152进行处理。
处理器152为视频存储单元112提供了智能性。例如,处理器152可以运行数据管理,视频文件管理,视频驱动器,RAID/数据拆卸(striping)算法及网络连接软件以通过网络连接158同通信网络相连。通信网络典型地是如ATM SONET的宽带网络。处理器152可以使用当前可用的不同低成本处理器来实现。尤其是Intel公司的奔腾(Pentium)处理器可用来为视频存储单元112提供智能性。
为了在磁盘出错时使数据可用,奇偶保护存储器154包括了可提供冗余磁盘操作的电路。另外,为了增大带宽并控制由磁盘驱动器162至总线160的数据移动以作好将视频数据移到通信网络的准备,奇偶保护存储器154还提供了建立在多个磁盘驱动器上的数据拆卸。奇偶保护存储器154可以使用当前可用的在磁盘出错时能提供正确驱动器操作的系统来实现。
视频数据缓冲器156用于从磁盘驱动器162接收奇偶保护存储器154放至总线160上的数据。为了将传往网络56的视频数据以准时(just-in-time)方式传递给用户系统54,视频数据被直接传给网络连接158。视频数据缓冲器156也接收发往磁盘驱动器162的数据。视频数据缓冲器156可以用多种当前本技术领域的技术人员所知的一些方法来实现。在所述例子中,挑选用作视频数据缓冲器156的硬件以便其能处理传输速率为每秒3兆字节的数据流,并且这样的数据流可达100个。视频数据缓冲器156可以用多种不同的已知的相关技术的一些方法来进行组织。例如,可以使用循环缓冲器或FIFO方式。网络连接158被连到通信网络56上,最好是连到使用ATM的宽带网络上。根据本发明,网络连接158可以连到通向通信网络56的多个信道上。
网络连接158控制从视频数据缓冲器156到通信网络56的视频数据的流动。另外,网络连接158以一种网络兼容格式对数据格式进行格式化。在所述例子中,该格式为ATM信元格式。另外,网络连接158允许视频和声频数据的同时数据传送(isochronous datadelivery) 。
进而,网络连接158还可接收来自于同通信网络相连的用户系统54的高层命令。这样,尽管物理连接分离,即所述网络连接150和158,但这两个连接可视为单一的逻辑连接并执行相同的功能。换句话说,网络连接150和158都可用来控制和传输视频数据。关于ATM网络的更多信息可在Goralski的Introduction to ATM Networking,McGraw-Hill,Inc.(1995)中找到。
现在参看图5,该方框图示出了视频存储单元中的功能部件。软件部件可在根据本发明图4中的处理器152中实现。视频所用的视频数据,例如电影,作为一个MPEG文件存在视频存储单元112上。一个具有整个电影长度视频信息的MPEG文件在视频存储单元112的磁盘驱动器上要占用几个千兆字节的空间。用于视频播放的命令,虚拟VCR命令及视频存储单元管理功能可以通过视频存储单元112同通信网络相连的连接,也可以通过视频存储单元112的同通信总线110的连接发送给视频存储单元112,通信总线110将视频存储单元112同视频服务器100连接起来。
视频命令处理器200接收并分析这些命令。根据所接收到的命令,视频命令处理器200或者自己执行该命令,或者将其分发给其他的任务执行部件。通过直接调用,视频命令处理器200通过消息队列190和192来分发命令。当视频命令处理器接收到所分发的命令的响应结果时,该结果据响应消息的格式进行格式化并将经格式化的结果发送给生成命令的系统。
视频流管理器(video stream manager)202负责将读出的请示送到视频文件系统204。这些请求是根据由视频命令处理器200至视频流管理器202的视频流的启动、停止、暂停及继续的虚拟VCR命令而生成的。视频流管理器202发布读出的请求到视频文件系统204,这为每个活动的视频流维护了一条连续的数据流。该部件为所有活动的视频流管理了文件读请求的协调(pacing of file read requests)。视频流的移动在下面会进行更详细的说明。
视频流管理器202可以处理多个视频流,也就是说,100道数据流。另外,两或两个以上的用户系统可以要求相同的视频文件。例如,一个用户系统可以正在接收某一视频的末尾数据,而另一个用户系统正在接收同一视频的开始的数据。
因此,视频流管理器202可以同时处理同一视频的多条数据流,所以可以为来自同一视频文件的不同场景生成请求。
ATM协议栈(ATM protocol stack)206管理着视频存储单元112和用户终端54之间的ATM网络连接的建立和断开。
视频文件系统204实现了一个用于视频文件数字化的文件系统。视频文件系统204将对视频文件的数据读或写的请求同时(虚拟)磁盘上具体的数据块的读或写的请求对应起来。
视频文件系统204负责存储视频存储单元中的每个视频的信息,并负责保持视频的位置及当前状态信息。另外,视频文件系统204还跟踪每个活动视频的当前执行位置。
视频驱动器208提供了视频文件系统204的RAID引擎210之间的接口,它包括虚拟磁盘驱动器210a和目标驱动器210b。本层部件,即视频驱动器208和RAID引擎210可以用其他的视频驱动器或RAID引擎来代替。视频驱动器208负责视频命令执行,向RAID引擎发出实际的磁盘I/O请求,并将读出的数据响应读请求传给ATM驱动器212。根据传递给RAID引擎210的命令,视频命令的执行涉及对控制器,逻辑单元和命令联系信息的维护。另外,这类命令的执行还涉及将缓冲器充满条件及保持命令通知视频应用程序直到RAID引擎210能够再次接受命令。
接着,ATM驱动器212控制执行命令的ATM硬件(即图4中的网络连接158)并将数据打包为ATM信元格式。ATM驱动器212处理完整的RAID引擎需求并指明磁盘驱动器214上所需要的数据已传递给视频缓冲器216并且准备好通过ATM硬件218传给通信网络。磁盘驱动器214对应于图3中的磁盘驱动器162,而缓冲器216对应于图3中的视频数据缓冲器156。ATM硬件218是一个适配器,可用于实现网络连接158,将视频存储单元112同通信网络56连接起来。
仍参照图5,对在播放命令处理中涉及的数据流的描述将在下面进行描述。其他的虚拟VCR命令沿图5中相似的数据流进行传递,但对从ATM硬件218传至通信网络56的数据的速率进行改变。例如,暂停命令会停止视频播放而向前浏览命令通过跳过视频区域向前发送视频数据。
同从用户系统发出的视频播放命令相对应,视频命令处理器200产生对视频文件系统204的调用,打开视频所用的文件。同该调用相对应,视频文件系统204打开文件并返回一个文件描述字给视频命令处理器200。然后,视频命令处理器200使用该文件描述字更新其连接/文件处理相关表。视频命令处理器200还发送一个请求给ATM协议栈206以建立同用户系统的连接,该用户系统通过队列190发出视频请求。这样一个调用需要一个异步调用以获得测试结果。然后视频命令处理器200通过将播放请求放到队列192上发送一个播放请求给视频流管理器202。视频流管理器202将播放请求从请求队列中取下并建立内部数据结构来处理播放请求。此后,视频流管理器202发出一个读请求给视频对象管理器204。根据本发明,视频流管理器202实际上发出了两个读请求。为保持数据的有效流动,这两个读请求经两道缓冲送往视频文件系统204。
同视频流管理器202发出的读请求相对应,视频文件系统204分配一个视频操作结构并据视频流管理器的当前播放请求对该操作结构进行初始化。通过使用所分配的视频操作数据结构作为输入,视频驱动器208直接由视频文件系统204调用。
同所接收到的视频数据的读请求相对应,视频驱动器208产生一个对RAID引擎210中的虚拟磁盘驱动器210a的I/O调用。虚拟磁盘驱动器210a处理视频驱动器208所接收的I/O调用。同由虚拟磁盘驱动器210a所处理的I/O调用相对应,数据由磁盘驱动器214传至缓冲器216。在所请求的视频数据放入缓冲器216后,RAID引擎210返回缓冲器216中视频数据的位置标识信息给视频驱动器208。与此相应,视频驱动器208从RAID引擎210中的虚拟磁盘驱动器210a得到数据缓冲器列表并将参数列表转换为ATM驱动器212可使用的格式。通过调用ATM驱动器212并传送标识视频数据及待传输的缓冲器的经转换的参数列表,视频驱动器208开始将数据传至ATM网络。
在视频驱动器208发出调用后,ATM驱动器212对视频数据格式化并将数据由ATM硬件218发送给通信网络。视频数据在传给ATM网络后,ATM驱动器212调用视频驱动器208来指明ATM驱动器212完成了视频数据向通信网络的传输。此时,视频驱动器208清理由ATM硬件使用的用于视频数据传输的数据结构。视频驱动器208还向虚拟磁盘驱动器210a提供了一个指示信息,用来指明数据传输已经完成。相应地,虚拟磁盘驱动器210a通过释放用于I/O请求处理的高速缓冲存储块来清理I/O请求。视频驱动器208回送一个I/O结束事件给视频流管理器202的队列192。
在接收到队列192中的I/O结束通告后,判断视频播放是否结束。如果视频播放没有结束,视频流管理器202发布另一个读请求给视频文件系统204。如果视频播放结束,视频流管理器202将一个I/O结束事件放到视频命令处理器200的请求队列上。结果,视频命令处理器200通知发出请求的用户系统,视频播放结束。
在视频结束时,一个文件结束错误被回送给视频流管理器202,这导致视频流管理器设置一个命令完成标志并将该操作返回给视频命令处理器200进行处理。
本发明的视频存储单元也可用于写数据(如新影片)到包含在视频存储单元中的磁盘驱动器。为了写入视频数据,输入数据典型地在与以太网相连的控制网络连接器进入视频存储单元。视频命令处理器200接收待处理的写命令,接着创建视频操作数据结构并对其他的命令处理数据结构进行更新以处理写请求。视频命令处理器200调用视频文件系统204来打开视频所用的文件。视频文件系统204打开所请求的文件。
之后,视频命令处理器200发布写请求给视频文件系统204。视频文件系统204负责存储视频数据。接收到写请求后,视频文件系统204分配一个视频操作数据结构并据当前的写请求对其进行初始化。之后,使用所分配的视频操作结构作为输入,视频驱动器208可被直接调用。视频文件系统204负责存储视频存储单元中的每个视频信息并保留有关视频位置及当前状态的信息。
之后,视频驱动器208产生一个对RAID引擎210中虚拟磁盘驱动器210a的一个I/O调用。虚拟磁盘驱动器210a负责填充数据结构以执行I/O请求。虚拟磁盘驱动器210a对写请求进行处理并且对视频缓冲器216中的缓冲区进行设置以接收视频数据。当数据缓冲区准备好时,虚拟磁盘驱动器210a开始由视频缓冲器216向磁盘驱动器214传输数据。这一处理继续下去直到数据传输完成。这里使用了以太网接口,该技术为本领域的技术人员所熟知。典型地,以太网接口会由以太网得到视频数据,对数据进行任何必需的翻译或格式化处理,并将其放入缓冲器链(buffer chain)中。
数据传输完成之后,完成指示被发给视频驱动器208。该指示被转送给文件系统204,由它通知虚拟磁盘驱动器210a数据传输已发生。
之后,视频驱动器208清理为写请求而使用的数据结构并向虚拟磁盘驱动器210a发出释放I/O所用的高速缓冲存储块的调用。
之后,视频命令处理器200为主机应用对已完成的通告进行格式化,该主机应用发出写请求并将通告发送到以太网上。
现在参照图6,该图示出了所述的视频存储单元中的数据协调(data pacing)情况。对视频存储单元中的每道视频数据流,使其以合适的速率进行连续数据传输的维护工作对用户系统的不间断视频显示是非常重要的。根据本发明,在图4所述的视频存储单元中,在三个不同层次使用了数据协调。这三个层次的协调包括层1协调,由ATM适配器向通信网络移动数据;层2协调由视频数据缓冲器向ATM适配器移动数据;及层3协调,由磁盘驱动器向视频数据缓冲器移动数据。层1协调涉及为个道视频流以所需的速率由ATM适配器向ATM网络传输ATM信元。典型地,这一功能由ATM适配器完成。只要ATM适配器在其存储器中为每个活动的视频流具有一定数目的信元进行缓冲,则层1协调可用于维护每个视频流的连续性。但是,如果ATM适配器已经为其一视频流调度了传送的信元,但是在ATM适配器中未提供该视频流所需的信元,在用户系统会发生播放的不连续。
在层2协调中,ATM网络驱动器及/或ATM DMA硬件用于确保对每一个活动视频流,ATM适配器总有缓冲的非空数目的信元。
在层3协调中,视频流管理器,视频文件系统,及视频驱动器负责确保充分数量的数据由磁盘移动到视频存储单元中的缓冲器。层3协调的大部分工作是由视频流管理器驱动的。当一个新视频流开始播放(或者一个处于暂停状态的视频流继续播放)时,两个紧挨的(back-to-back)读请求由视频流管理器进行发布,这里用到了双重缓冲方法。当来自一个请求的数据被传送给ATM适配器时,视频驱动器由ATM驱动器进行通知,结果视频驱动器在视频流管理器的消息队列中放入一条读完成通知信息。相应地,视频流管理器将进行检查以确保视频流仍处于活动状态(非暂停及非文件结束),并且如果视频流处理活动状态,则发布一个新的读请求给视频文件系统。
当对某一视频流的传至ATM适配器的DMA进行调度时,如果ATM驱动器没有该视频流的任何缓冲数据,则会发生一个下溢(underflow)错误。因为数据流的数据传输是以两个紧挨的文件读请求开始的,当第一个读完成通知消息被放入视频流管理器的消息队列时,数据依然会在ATM驱动器中得到缓冲。
如上所提到的,视频存储单元提供了一个用于虚拟VCR命令,内容管理命令及网络连接管理命令的接口。虚拟VCR命令用于控制视频数据流。例如,播放命令会使数据以某种所选的速率流动,而快速命令则使数据以跳过视频帧的方式流动。内容管理命令用于创建新视频及查询现存的由视频存储单元控制的视频。网络连接管理命令提供视频存储单元用户系统之间的连接的设置及断开。内容管理命令及连接管理命令典型地由与视频存储单元相连的视频服务器来发布,而虚拟VCR命令典型地由用户系统产生。下面是接口命令的一些例子,这些例子展示了本发明的功能。根据本发明,其他未描述的命令也可用在视频存储单元上。
虚拟VCR命令用于控制视频流的速率及控制视频的播放。下面是一组虚拟VCR命令的例子Stream-Open保留流资源并准备用于播放的视频。该命令返回一个流句柄(stream handle),该句柄可用于其他的虚拟VCR操作。
Stream-Play从指定的开始位置到指定的结束位置以一般速率播放视频。
Stream-Pause停止播放视频并保持视频流的当前位置。在具体实现时,视频帧的实际表现是静止的帧画面,空白画面或两者交替显示。
Stream-ScanForward以低于或高于一般速率的前进速率发送视频数据。提供慢进或快进功能。
Stream-ScanReverse以低于或高于一般速率的后退速率发送视频数据。提供慢倒或快倒功能。
Stream-Jump跳到视频中的某一具体位置。
Stream-Status返回流的当前状态。
Stream-C1ose使流停止活动并使流句柄失效。
这些虚拟VCR命令来自用户系统,用于控制视频。
内容管理命令用于向视频存储单元增加内容并管理视频存储单元(即新视频)中的内容。下面是一组可能使用的内容管理命令的一个例子Video-Create创建视频的一个入口及其属性。视频必须在其被录制前进创建。
Video-Delete删除视频入口并释放所占用的存储空间。
Video-Write为先前所创建的入口录制视频。如果该视频的数据以前已经写入,则将数据附加到该视频的后面。
Video-Read返回内容文件中的数据。
Video-GetAttributes查询视频的属性。这些属性可包括单位为字节的长度,播放持续时间,压缩格式,比特速率要求等等。
Video-List列出存储在本发明装置中的视频的名称。
尽管另外的数据处理系统如另一个视频服务器可以发送视频存储单元内容管理命令,但这些内容管理命令典型地由与视频存储单元相连的视频服务器生成。例如,当新视频被存放在视频存储单元时会使用Video-Write命令。
网络连接管理命令提供本发明装置和远程目的地之间的网络连接的建立和断开。远程目的地可以是一个顶置盒(例如至房间的ATM),一个混合光纤/同轴电缆访问节点(即,至房间的混合光纤/同轴电缆)或是一台远程服务器。网络连接管理命令由系统单元调用以初始化视频存储单元同用户系统之间的连接,以此来响应用户系统上的消费者发出的视频请求。
下面是一组可能用到的本发明网络连接管理命令Connection-Open建立本发明装置和目的地之间的网络连接。
Connection-C1ose断开本发明装置和目的地之间的已建立的连接。
所述处理及上面的图示可以用所述图2及图3中的数据处理系统中的普通技术来实现。
本发明可以在提供视频使的由大规模到小规模的视频服务器上实现。本发明提供了由视频流管理器,视频,可控网络连接和图中及以上所述硬件所组成的可扩展系统。另外,要求保护的发明提供了一个视频存储单元结构,该结构提供了至通信网络的直接网络连接,以便通过至通信网络的多道连接机制的连接扩展所要求保护的发明的视频存储单元的带宽。
进而,本发明的视频存储单元提供了至视频服务器的第一连接,允许通过视频服务器连往视频存储单元的连接机制发送和接收高层命令。另外,本发明具有提供了直接将视频存储单元连到通信网络的第二网络连接的优点。本发明具有提供了一种简洁结构的优点,该结构包含磁盘驱动器,视频流控制器及至通信网络的直接连接。本发明还允许视频存储单元来接收和处理来自用户系统的命令,而无需视频服务器的介入或帮助。
尽管本发明已被特别示出并且参照一个优选实施例进行了描述,但本领域的技术人员应理解本发明并不局限于前述实施例的细节。
权利要求
1.用于视频数据处理的装置,包括含有以数字视频文件方式存储的视频数据的存储装置(162);系统连接装置(150),用作提供至数据处理系统(102-108)的连接;提供至通信网络(56)的连接的网络连接装置(158);及通过使用网络连接装置(158),从存储装置(162)到通信网络(56)传输数字视频文件的传输装置。
2.如权利要求1所述的装置,进一步包括用于从通信网络(56)接收命令的接收装置。
3.如权利要求2所述的装置,其中接收装置通过来自数据处理系统(102-108)的系统连接(150)接收命令。
4.如权利要求2或3所述的装置,其中接收装置从网络连接(158)接收命令。
5.如权利要求2,3或4之一所述的装置,其中所述的命令包含虚拟VCR命令。
6.如权利要求1-5之一所述的装置,其中至数据处理系统(102-108)的系统连接(150)通过以太网同数据处理系统(102-108)相连。
7.如权利要求2至5任一项所述的装置,用来以预先选定的速率向通信网络(56)传输数字视频文件。
8.如权利要求7所述的装置,进一步包括一个变更装置,用于响应接收装置从通信网络(56)接收的命令改变数字视频文件的预选传输速率。
9.如前面任何一个权利要求所述的装置,进一步包括一个总线(160),用来将存储设备(162),系统连接(150)及网络连接(158)连接在一起。
10.如权利要求9所述的装置,进一步包括同总线(160)连接的缓冲器(156)并且它也提供了同网络连接(158)的一个连接。
11.如权利要求10所述的装置,其中缓冲器(156)包括一个循环式缓冲器。
12.如权利要求10或11所述的装置,包括三种操作模式第一操作模式,通过使用网络连接(158),在本装置和通信网络(56)上的用户之间建立一个连接;第二操作模式,通过使用通信网络(56),沿由存储设备(162)在缓冲器(156),由缓冲器(156)至网络连接(158),再由网络连接(158)至用户(54)的路径从存储设备(162)向用户(54)传送数字视频文件;第三操作模式,其中装置接收命令并通过所接收到的命令对数字视频文件在路径上的传输进行控制。
13.如权利要求10或11所述的装置,其中存储设备(162)包括一组以数字视频文件方式存储的视频并且该装置包括三种操作模式,包括第一操作模式,通过使用网络连接(158),在本装置和通信网络(56)上的多个用户(54)之间建立多个连接;第二操作模式,沿由存储设备(162)至缓冲器(156),由缓冲器(156)至网络连接(158),再由网络连接(158)至多个用户(54)的路径将多个数字视频文件的一部分从存储设备(162)向用户传送;第三操作模式,其中该装置接收命令并通过所接收到的命令对多个数字视频文件的一部分的传输进行控制。
14.一处用于存储数据并向通信网络(56)上的用户系统(54)传输数据的数据存储装置,包括总线(160);同总线(160)连接的系统连接装置(150),用于提供至数据处理系统(102-108)的连接;同总线(160)相连的网络连接装置(158),用于提供至通信网络(56)的连接;具有至总线(160)的第一连接和至网络连接(158)的第二连接的缓冲器装置;具有至总线连接的存储装置(162),其中该存储装置包括数据;及处理器(152),包括用于从存储装置(162)向缓冲器装置(156)传输数据的第一处理器装置,用于从缓冲器装置(156)向网络连接装置(158)传输数据的第二处理器装置,及用于从网络连接(158)向通信网络上的用户系统(54)传输数据的第三处理器装置。
15.如权利要求14所述的存储装置,进一步包括用于由数据存储装置(162)以选定速率传输数据的第四处理器装置。
16.如权利要求15所述的存储装置,进一步包括用于处理网络连接(158)所接收的命令的第五处理器装置和根据接收的命令改变数据传输的选定速率的第六处理器装置。
17.数据处理系统,包括视频服务器装置(100);通信总线(110);及存储装置(112),包括包括数据文件的存储设备(162),至通信网络(56)的网络连接(158),至通信总线(110)的连接,及通过网络连接(158),由存储设备(162)至通信网络(56)传输数据文件的传输装置。
18.如权利要求17所述的数据处理系统,其中通信总线(110)包含以太网。
19.如权利要求17或18所述的数据处理系统,其中存储装置(112)进一步包括用于向存储设备(162)传输第二数据文件的第二传输装置。
20.如权利要求17,18或19所述的数据处理系统,其中数据文件包括视频文件。
21.如权利要求17-20任何之一所述的数据处理系统,其中存储装置(112)包括通过网络连接接收命令的接收装置。
22.如权利要求19所述的数据处理系统,其中第二传输装置用于通过网络连接由通信网络(56)向存储设备(162)传输第二数据文件。
23.如权利要求19或22所述的数据处理系统,其中第二传输装置用于通过至通信总线(110)的连接向存储设备(162)传输第二数据文件。
24.如权利要求21所述的数据处理系统,其中存储装置(112)进一步包括用于接收由连接(150)至通信总线(110)的命令的第二接收装置。
25.如权利要求21或24所述的数据处理系统,用于根据接收的命令控制通过传输装置传输的数据文件。
26.一种分布式数据处理系统,包括通信网络(56);一组连至通信网络(56)的用户系统(54);连至通信网络(56)的视频服务器装置(100);及连至视频服务器(100)的视频存储装置(112),视频存储单元(112)包括总线(160);连至总线(160)的第一网络连接装置(150),用于提供至视频服务器装置(100)的连接;连至总线(160)的第二网络连接装置(158),用于提供至通信网络(56)的连接;具有至总线(160)的第一连接和至第二网络连接装置(158)的第二连接的缓冲器装置(156);连至总线(160)的存储设备(162),其中该存储设备包含表示视频的数据;及视频存储单元处理器(152),它包括用于由存储设备(162)至总线(160)传输数据的第一处理器装置,用于由缓冲器装置(156)至第二网络连接(158)传输数据的第二处理器装置及用于由第二网络连接(158)至通信网络(56)上的用户系统(54)传输数据的第三处理器装置。
27.如权利要求26所述的系统,其中视频服务器(100)包括一个视频服务器处理器(108),用于接收来自一组用户系统(54)中某一个的视频请求并对由视频存储单元(162)至一组用户系统(54)中的该用户的所请求的视频的传输进行初始化。
28.如权利要求26或27所述的系统,其中视频存储单元(162)通过通信通道(110)连至视频服务器(100)。
29.如权利要求28所述的系统,其中通信通道包括以太网(110)。
30.如权利要求26,27,28或29所述的系统,其中第二网络连接(158)包括ATM网络适配器。
31.一种数据处理系统,包括计算机(100),包括处理器(104),存储器(106),存储设备(108);及连至处理器(104),存储器106,及存储设备(108)的系统总线(102);及数据存储单元(112),包括可存放数据的第二存储设备(162),直接连至通信网络(56)的网络连接(158),至系统总线(102)的连接(150),及通过网络连接(158),由第二存府设备(162)至通信网络(56)传输数据的传输装置。
32.如权利要求31所述的系统,其中至系统总线(102)的连接由同时连至系统总线和数据存储单元(112)中所述连接(150)的以太网(110)提供。
33.如权利要求31或32所述的系统,其中数据包括以数字视频文件方式存储的视频。
34.如权利要求31,32或33所述的系统,其中数据存储单元(112)包括用于在网络连接(158)接收命令的接收装置。
35.如权利要求31,32,33或34所述的系统,其中数据存储单元(112)包括附加存储设备。
36.如权利要求31至35任何之一所述的系统,根据接收装置接收到的命令,传输装置,对从第二存储设备(162)至通信网络(56)的数据传输进行控制。
37.如权利要求31至36任何之一所述的系统,其中网络连接(158)包括ATM网络适配器。
38.如权利要求35所述的系统,其中附加数据存储设备包括硬盘驱动器。
39.如权利要求31至38任何之一所述的系统,进一步包括连至第二存储设备(162)和网络连接(158)的总线(160)。
40.如权利要求39所述的系统,进一步包括连至总线(160)和网络连接(158)的缓冲器(156)。
41.如权利要求40所述的系统,进一步包括连至总线(160)的处理器(152)并且传输装置被放在所述处理器(152)中。
全文摘要
本发明提供了一种用于视频数据处理的装置,它包括:含有用于通信网络(56)上用户系统(54)的视频播放的视频的存储设备(162)及至数据处理系统(100)的系统连接(150)及至通信网络(56)的网络连接(158)。该装置进一步包括通过网络连接(158)用于由存储设备(162)至网络(56)传输视频的传输装置,其中视频直接由该装置传至网络(56)。
文档编号H04N5/93GK1196150SQ9619689
公开日1998年10月14日 申请日期1996年7月30日 优先权日1995年8月11日
发明者肯斯·波那德·杜拉克, 保罗·米切尔·弗里曼 申请人:辛堡斯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1