视频观看系统和方法

文档序号:7585760阅读:116来源:国知局
专利名称:视频观看系统和方法
技术领域
本发明涉及支持视频流的时移观看的视频观看系统。
背景技术
PCT专利申请WO99/33265公开了一种视频观看系统,该系统能够以多种操作模式工作,包括时移模式、直播模式和暂停模式。在时移模式下,将输入视频流记录在存储单元中,并且与此并行地,将输入流的相当早(例如,十分钟之前)的部分从存储单元重新播放到系统的输出端。在直播模式下,将输入流直接输送到输出端,而不加以任何明显的延迟。在暂停模式下,系统输出静止图像(这个静止图像是在之前的直播期间输出的最后一个图像)并且同时将输入视频流记录在存储单元中。
在WO99/33265中没有介绍不同模式之间的视频模式切换。原则上,视频模式切换可以通过在每次接收到视频模式切换命令的时候重启视频系统、按照相关模式的需求启动数据流来实现。不过,这具有这样的缺点由于需要填充系统中的各种管线和重启解码处理(通常从输入视频流中的任意时间点开始重启,这不允许立即开始解码),可能会在视频输出信号中出现中断。
另一种可供选择的方案是借助多路复用来实现视频模式切换。在这种情况下,视频系统在所有的模式下都将需要在任何一种模式下执行的所有任务(即,至少为输入任务、记录任务、重放任务和解码任务)保持为运行状态。一个或多个多路复用器在视频模式切换期间切换一个或多个任务的来源。因为不需要重启任务,因此这样有可能消除中断。不过,它具有这样的缺点某些任务在不需要它们的时候也保持运行。在视频系统中,其中任务是作为运行在通用处理器上的软件任务实现的,由任务占据的处理器资源对其它处理器保持为不可用。在硬件实现的系统中,执行这些任务的硬件持续消耗不必要的电源电流。
欧洲专利申请01203905.3(在本申请的优先权日未公开并转让给了同一受让人)介绍了一种用于动态重新配置处理器或任务的网络的机构。

发明内容
其它且不论,本发明的一个目的是,提供一种能够以包括时移模式的多种工作模式工作的视频显示系统,其中视频模式切换可以在没有明显中断的情况下实现,并且在某一模式期间不需要的任务不必在这种模式下继续执行。
权利要求1中提出了按照本发明的视频显示系统。使用了具有可重新分配的来源和目的地的FIFO(先进先出)通信缓冲器来在输入、解码、记录和重放任务之间传送视频流。在模式切换期间,通过重新分配FIFO通信缓冲器的来源和目的地而实现了动态重新配置。在模式切换前后,FIFO通信缓冲器的另一端始终分配给相同的任务。在重新分配时,视频数据可以仍然存在于FIFO通信缓冲器中。始终分配给FIFO通信缓冲器的任务在模式切换期间保持执行,只要FIFO通信缓冲器中视频数据可用。这样,采用在模式切换期间保持启用的FIFO通信缓冲器确保了可以视频流没有中断地进行模式切换,并且如果任务在模式切换之后不再需要,则不需要任务保持正在使用的状态。在模式切换之后,可以释放由这样的任务使用的资源。
按照一种实施方式,动态重新分配包括将各个视频流的来源或目的地与通信缓冲器断开并且随后连接到通信缓冲器上。断开和连接分别是响应于接收到模式切换命令而进行的,但是要经过延迟,直到在所断开和连接的流中检测到了闭合图像组之间的后续边界。视频流中的闭合图像组对无需使用该组外的帧即可进行解码的一连串视频信息帧进行编码。通过延迟断开和连接,防止了在通信缓冲器中出现“孤立”的视频数据,这种视频数据不能得到解码并且可能引发解码任务中的中断。


将参照附图介绍这些和其它的目的和优点方面。
附图1表示视频显示系统,附图2a-c表示不同视频模式期间的任务图。
具体实施例方式
附图1表示视频显示系统。该系统包含视频流输入端10、视频流输出端12、多个处理任务单元14a-f、多个FIFO通信缓冲器16a-d、缓冲器连接单元17、存储装置18和切换控制单元15。视频显示装置19与输出端12相连。处理任务单元14a-f包括输入任务单元14a、记录任务单元14b、重放任务单元14c、解码任务单元14f加上任选其它单元14d、e。输入端10与输入任务单元14a相连。输出端12与解码任务单元14f相连。存储装置18与记录任务单元14b和重放任务单元14c相连。处理任务单元14a-f经缓冲器连接单元17与FIFO通信缓冲器16a-d相连。切换控制单元15与处理任务单元14a-f、FIFO通信缓冲器16a-d和缓冲器连接单元17相连。
按照第一实施方式,附图1中所示的各组成部分是专用硬件单元。按照其它的实施方式,这些组成部分中的一个或多个可以借助适用的计算机程序在通用处理器中实现。例如,按照第一实施方式,处理任务单元14a-f是具有专门针对要由处理任务单元14a-f执行的任务设计的各不相同的硬件单元,但是按照其它的实施方式,一部分或全部处理任务单元14a-f可以实现为装载在通用处理器中的不同的计算机程序。类似地,按照第一实施方式,FIFO通信缓冲器16a-d是具有数据输入端、数据输出端以及缓冲器满和空信令输出端的硬件FIFO缓冲器。不过,按照其它的实施方式,FIFO通信缓冲器16a-d可以实现为具有用于向任务单元14a-f发送缓冲区是否满或缓冲区是否空的信号的适当软件的处理器存储器中的不同缓冲区域。而且,类似地,按照第一实施方式,缓冲器连接单元17可以是硬件单元,比如开关矩阵,而按照其它的实施方式,缓冲器连接单元17可以实现为FIFO通信缓冲器16a-d与处理任务单元14a-f之间的接口程序。而且,切换控制单元15可以以硬件方式实现,或者可以实现为软件程控计算机。
在工作中,输入视频流提供给输入端10,并且在输出端12处产生输出视频流,用于在视频显示装置19上显示。在中间,处理任务单元对从输入流中得出的视频数据进行各种处理任务。
视频模式控制单元15控制视频观看系统进行工作的视频模式。所执行的任务的组合取决于系统进行操作的视频模式。这些视频模式包括直播模式、暂停模式和时移模式。
附图2a-c表示不同视频模式下的处理的任务图。附图2a表示按照输入流是模拟视频信号的实施方式的直播模式下的操作。在这一情况下,输入任务20是这样进行的接收输入流并且经第一连接21将经过编码的流输出到解码任务22。解码任务22输出为视频显示装置19(未示出)所用的解码流。虽然示出的是单独一个解码任务22,但是应当意识到,解码任务实际上可以是由多个解码任务构成的,比如用于对来自MPEG传输流的节目进行去多路复用的去多路复用任务,随后跟着对经过去多路复用的节目进行操作的节目解码任务。类似地,可能会出现分开的视频和音频流处理任务。出于为了简明的原因,仅仅示出了单独一个任务。
附图2b表示暂停模式下的工作过程。在这种模式下,加入了记录器任务24。输入任务20继续进行,并且经第一连接21将经过编码的流输出到记录器任务24。记录器任务24将经过编码的流记录在存储装置18(未示出)中。解码器任务22已经切换到了“冻结”状态,在这种状态下,解码器任务22固定不变地输出其最后接收到视频帧,而不再从其输入端进行读取。其输入端连接已经断开。按照另外一种可选实施方案,其中将解码任务22设置成,当其发现已经不再有新的帧供应到其输入端时,固定不变地输出其最后完整接收到的视频帧,可以将第一连接21保持为与解码任务22相连接,在输入任务20和记录任务24之间增加第二连接。按照这种可选实施方式,第一连接21可以与输入任务20断开连接。
附图2c表示时移模式下的工作过程。在这种模式下,输入任务20、解码器任务22和记录器任务24继续进行,并且增加了重放任务26。输入任务20经第一连接21将经过编码的流输入到记录器任务24。重放任务26经第二连接23将输入流经过延迟的版本从存储装置18(未示出)输出到解码器任务22。解码器任务22已经切换回了正常工作状态,在这种状态下,它从其输入端读取视频数据并且使用这些数据更新其输出。
在附图1的设备中,任务20、22、24、26是由处理任务单元14a-c、f执行的。连接21、23是由FIFO通信缓冲器16a-d实现的。一种视频模式下不需要的任务得到停用,例如,在硬件实现的任务单元的情况下,通过禁止时钟输入到处理任务单元来停用,或者在软件实现的任务单元的情况下,通过释放由这些任务使用的资源来停用,这样就释放出了系统资源,以供它用。
当视频模式控制单元15在不同的视频模式之间切换视频显示系统时,在模式切换前后都使用的处理任务单元14a-c、f通过模式切换得以保持正在使用的状态(或最多是暂缓),从而在模式切换之后它们将继续执行。与这些持续有效的处理任务单元14a-c、f相连的FIFO通信缓冲器16a-d也保持正在使用的状态,不过视频模式控制单元15对缓冲器连接单元17进行控制,以使到达或来自FIFO通信缓冲器16a-d的某些输入或输出端的连接得以切换到不同的处理任务单元14a-c、f。
当处理任务单元14a-c、f中的第一个单元具有在模式切换之前经由FIFO通信缓冲器16a-d连接到处理任务单元14a-c、f中的第二个单元和在模式切换之后连接到处理任务单元14a-c、f中的第三个单元的输入和输出端时,在视频模式切换期间,将处理任务单元14a-c、f中的第二个单元与这个FIFO通信缓冲器16a-d断开,并且将第三个单元连接到这个FIFO通信缓冲器16a-d的位置上。将FIFO通信缓冲器16a-d中的视频数据保留在适当的位置上,以备之后使用。处理任务单元14a-c、f中的第二个单元在断开之前停用(或者将其运行暂缓)并且在连接之后启用或不暂缓第三个单元(或者,如果启用得较早,则如果其输出端连接到FIFO通信缓冲器16a-d,则为其提供伪“FIFO满”信号,或者如果将其输入端连接,则提供虚假的“FIFO空”信号)。这样,在模式切换期间不会丢失数据,并且不会有视频信号的中断。
在从附图2a的直播模式切换到附图2b的暂停模式的情况下,视频模式切换控制单元15向解码任务单元14f发送信号,以切换到操作的“冻结”状态,使其重复当前的帧。然后视频模式切换控制断开实现了连接21的FIFO通信缓冲器16a-d与解码任务单元14f的连接,并且将其连接到记录任务单元14b。随后,视频模式切换控制单元15启用记录任务单元14b。
按照另外一种可供选择的实施方式,其中第一连接21保持与解码器任务22的连接,视频模式控制单元15再次将输入任务单元14a的输出端连接到第二FIFO通信缓冲器16a-d(在重新连接期间,根据需要使得输入任务20暂缓操作)并且在启用记录任务单元14b之前将记录任务单元14b连接到这个第二FIFO通信缓冲器16a-d。按照这种实施方式,解码器任务22并不必须进入冻结状态。这简化了设计,但是有这样的缺点在视频模式切换期间会出现一些延迟,因为来自第一连接21的缓冲数据必须要在解码器任务22输出冻结图像之间加以处理。
在从附图2b的暂停模式切换到附图2c的时移模式的情况下,视频模式切换控制单元15将重放任务单元14c和解码任务单元14f连接到实现连接23的第二FIFO通信缓冲器16a-d。随后,视频模式切换控制单元15向解码任务单元14f发送返回到正常工作状态的信号,在正常工作状态下,它从第二FIFO通信缓冲器16a-d读取新帧的视频数据,并且启用重放任务单元14b。按照另一种可供选择的实施方式,其中第一连接21保持接在解吗任务22上,当然不再需要增加新的连接。在这种情况下,视频模式切换控制单元15将重放任务单元14c连接到实现第一连接21的FIFO通信缓冲器16a-d,并且启用重放任务单元14c。在这种情况下,不需要发送将解码器任务单元14f切换回正常工作状态的信号。
在从附图2c的时移模式切换回附图2a的直播模式的情况下,视频模式切换控制单元15向重放任务单元14c发送终止执行的信号。视频模式切换控制单元15命令记录任务单元14b和重放任务单元14c终止执行。然后视频模式切换控制单元15将解码任务单元14f的输入端从连接到重放任务单元14c的FIFO通信缓冲器16a-d重新连接到实现到输入任务单元14a的第一连接21的FIFO通信缓冲器16a-d。最好,发送将解码器任务单元14f在重新连接期间临时切换到“冻结”模式的信号。然后,也可以释放实现连接23的FIFO通信缓冲器16a-d,并且其内容丢失。
或者,可以将输入任务单元14a连接到在时移模式下将重放任务单元14c连接到解码任务单元14f的FIFO通信缓冲器16a-d的输入端。不过,这样做有这样的缺点从时移重放到直播的切换仅会出现一些延迟,因为解码器任务单元14f必须首先从FIFO通信缓冲器16a-d读取旧的视频数据。
按照另一种可供选择的实施方式,其中解码器任务22保持连接到第一连接21,视频模式切换控制单元15将解码器任务22的输入端重新连接到实现第二连接23的FIFO通信缓冲器16a-d。可以看到,这样,通过从直播模式切换到暂停模式、到时移模式并且返回到直播模式,将FIFO通信缓冲器16a-d中与最初的直播模式相比不同的一个缓冲器连接到编码器任务单元14f。这是FIFO通信缓冲器16a-d的动态分配的结果。
应当意识到,通过这种方式,当单元在视频模式切换前后都要使用时,不需要重启任何处理任务单元14a-f。不再需要的处理任务单元14a-f得到停用,释放了系统资源以供它用。FIFO通信缓冲器16a-d在视频模式切换前后的连续使用确保了所观看的视频流的连续性。还应当意识到,类似的实施方法可以用于与已经介绍的切换方向相反的切换(即,从时移模式到暂停模式、从暂停模式到直播模式和从直播模式到时移模式的切换)。
最好,将处理任务单元14a-f设计成依据所处理的视频数据的进程选择它们终止正在使用的状态的时间点,从而使得终止之后的视频流部分无需参考之前的视频数据就能够得以解码。在MPEG视频信号中,例如,出现I帧、P帧和B帧,后两种类型的帧编码为其它帧的更新。在视频流中确定出闭合的“图像组”(GOP),从而各个特定的GOP中的帧从未编码为对该特定GOP之外的帧的更新。
在这种情况下,当视频模式控制单元15作为视频模式切换的一部分向处理任务单元14a-f发出暂缓或终止操作的信号时,处理任务单元14a-f在真正终止或暂缓操作之前,结束从或到FIFO通信缓冲器16a-d的GOP读取和/或写入。随即,处理任务单元14a-f向视频模式切换控制单元15发回命令已经执行的信号。随后,视频模式切换控制单元15根据模式切换的需要向缓冲器连接单元17发出将所涉及的那一缓冲器或多个缓冲器连接到另一个处理任务单元14a-f的信号。此后,视频模式控制单元向新连接的处理任务单元14a-f发出开始或恢复执行的信号。
FIFO通信缓冲器16a-d最好提供视频数据输入、视频数据输出和空/满信令。数据宽度与本发明无关,不过一般来说将会写入和读取多位数据字。各个FIFO通信缓冲器16a-d对向该缓冲器供应数据的处理任务单元14a-f返回满/不满信号。如果发送了“满”信号,并且处理任务单元14a-f具有可用数据,则处理任务单元14a-f暂缓执行。各个FIFO通信缓冲器16a-d向从该缓冲器读取数据的处理任务单元14a-f提供空/不空信号。如果发送了“空”信号,并且处理任务单元14a-f需要读取数据,则处理任务单元14a-f暂缓执行。在处理任务单元14a-f的软件实现中,处理任务单元14a-f可以使用空和满信号的轮询来确定何时恢复工作,或者也可以使用事件信令或中断信令来恢复工作。在硬件实现中,也可以使用空和满信号作为使能或禁止信号。
FIFO通信缓冲器16a-d可以实现为计算机存储器中的存储区域,FIFO操作由软件控制(保持指针指向最早的未读取数据和紧跟在最后写入数据之后的自由位置、对满和空条件进行检查和据此设置标记或将这些际记作为信号发送给所连接的处理任务单元14a-f)。同样也可以使用专用的硬件FIFO缓冲器。类似地,缓冲器连接单元17可以使用软件实现,在这种情况下,缓冲器连接单元17可以以指向相应FIFO通信缓冲器16a-d所连接的处理任务单元14a-f的指针的形式与FIFO通信缓冲器16a-d整合在一起。或者,缓冲器连接单元17可以以指向相应处理任务单元14a-f所连接的FIFO通信缓冲器16a-d的指针的形式与处理任务单元14a-f整合在一起。这样的指针的混合实现也是可行的。
应当意识到,本发明并不局限于已经介绍过的具体实施方式

权利要求
1.一种视频观看系统,包括-输入端(10),用于接收输入视频流;-输出端(12),用于输出输出视频流;-存储装置(18),用于存储视频数据;-多个FIFO通信缓冲器(16a-d);-处理系统(14a-f,15),设置成执行多项任务,包括与输入端相连接的输入任务(20)、与输出端相连接的解码任务(22)、用于在存储装置(18)上进行记录的记录任务(24)和用于从存储装置(18)进行重放的重放任务(26),该处理系统(14a-f,15)可在多个视频模式之间进行切换,包括直播模式,在这种模式下,输入任务(20)与解码任务(22)相连接;暂停模式,在这种模式下,输入任务(20)与记录任务(24)相连接;和时移模式,在这种模式下,输入任务(20)与记录任务(24)相连接并且重放任务(26)与解码任务(22)相连接,这些任务是通过FIFO通信缓冲器(16a-d)中的相应缓冲器连接的,该处理系统(14a-f,15)设置为通过重新分配任务(20,22,24,26)到FIFO通信缓冲器(16a-d)中的相应缓冲器的连接、将之前的视频数据保持在重新分配的FIFO通信缓冲器(16a-d)中、将切换前后都需要的任务(20,22,24,26)保持为连续正在使用的状态并且终止切换之后不使用的任务的执行来在视频模式之间进行切换。
2.按照权利要求1所述的视频观看系统,其中处理系统(14a-f,15)设置成在从直播模式切换到暂停模式的模式切换的时候,向解码器任务(22)发送“冻结”信号,以使解码器任务(22)进入冻结状态,在这种状态下,解码器任务(22)固定不变地输出当前视频帧。
3.按照权利要求2所述的视频观看系统,其中在直播模式下,输入任务(20)经FIFO通信缓冲器(16a-d)中的第一个缓冲器与解码器任务(22)相连接,处理系统(14a-f,15)设置为在从直播模式切换到暂停模式的时候断开解码器任务(22)的输入端与FIFO通信缓冲器(16a-d)中的第一个缓冲器的输出端的连接,以将记录任务(24)的输入端连接到FIFO通信缓冲器(16a-d)中的第一个缓冲器的输出端并且随后启用记录任务(24)。
4.按照权利要求3所述的视频观看系统,其中处理系统(14a-f,15)设置成在从暂停模式切换到时移模式的视频模式切换的时候,将重放任务(26)的输出端连接到FIFO通信缓冲器(16a-d)中的第二个缓冲器的输入端、将解码器任务(22)的输入端连接到FIFO通信缓冲器(16a-d)中的第二个缓冲器的输出端,并且随后启用重放任务(26),解码器任务(22)从冻结状态切换回正常工作状态。
5.按照权利要求1所述的视频观看系统,其中在直播模式下,输入任务(20)经FIFO通信缓冲器(16a-d)中的第一个缓冲器与解码器任务(22)相连接,该处理系统(14a-f,15)设置成在从直播模式切换到暂停模式的时候,将FIFO通信缓冲器(16a-d)中的第二个缓冲器连接在输入任务(20)和记录任务(24)之间,FIFO通信缓冲器(16a-d)中的第一个缓冲器的输入端与输入任务(20)断开连接,并且FIFO通信缓冲器(16a-d)的第一个缓冲器的输出端保持与解码器任务(22)的连接。
6.按照权利要求1所述的视频观看系统,其中输入任务(20)在时移模式下经FIFO通信缓冲器(16a-d)中的第一个缓冲器与记录任务(24)相连接,处理系统(14a-f,15)设置为在从时移模式切换到直播模式的视频模式切换的时候,将解码器任务(22)的输入端重新连接到FIFO通信缓冲器(16a-d)中的第一个缓冲器的输出端,停用重放任务(26)和记录任务(24)。
7.按照权利要求1所述的视频观看系统,其中输入任务(20)在时移模式下经FIFO通信缓冲器(16a-d)中的第一个缓冲器与记录任务(24)相连接,并且重放任务经FIFO通信缓冲器中的第二个缓冲器与解码器任务相连接,处理系统(14a-f,15)设置为在从时移模式切换到直播模式的时候,停用重放任务(26)、停用记录任务(24)、将FIFO通信缓冲器(16a-d)中的第二个缓冲器连接到输入任务并且释放FIFO通信缓冲器(16a-d)中的第一个缓冲器。
8.按照权利要求1所述的视频观看系统,其中在模式切换的时候停用的各项任务(20,22,24,26)设置为在模式切换的时候延迟停用,直到处理了完整一组画面并且将该组写入到FIFO通信缓冲器(16a-d)之一中或从FIFO通信缓冲器(16a-d)中读取出该组。
9.按照权利要求1所述的视频观看系统,其中重放任务(26)和记录任务(24)中的至少一项实现为在可程控计算机上运行的计算机程序,从而当所述重放任务(26)和记录任务(24)中的至少一项不使用时,由所述重放任务(26)和记录任务(24)中的至少一项使用的资源在一种视频模式或多种视频模式下得以释放。
10.按照权利要求1所述的视频观看系统,其中重放任务(26)和记录任务(24)中的至少一项是以专用硬件形式实现的,该专用硬件可切换到节能状态,当所述重放任务(26)和记录任务(24)中的至少一项不用时,用于所述重放任务(26)和记录任务(24)中的至少一项的专用硬件在一种视频模式或多种视频模式下得以释放。
11.一种产生用于观看的输出视频流的方法,其中执行多项任务(20,22,24,26),包括接收输入视频流的输入任务(20)、输出输出视频流的解码任务(22)、在存储装置(18)上进行记录的记录任务(24)和从存储装置(18)进行重放的重放任务(26),该方法包括步骤-在多种视频模式之间进行切换,在不同的模式下启用任务(20,22,24,26)的不同子集或全部任务(20,22,24,26),这些视频模式包括直播模式,在这种模式下,输入任务(20)与解码任务(22)相连接;暂停模式,在这种模式下,输入任务(20)与记录任务(24)相连接;和时移模式,在这种模式下,输入任务(20)与记录任务(24)相连接并且重放任务(26)与解码任务(22)相连接,-使用FIFO通信缓冲器(16a-d)在这些任务(20,22,24,26)之间进行通信,这些视频模式的切换是通过重新分配任务(20,22,24,26)到通信缓冲器(16a-d)中各个缓冲器的连接、将之前的数据保持在重新分配的FIFO通信缓冲器(16a-d)中、将切换前后需要的任务(20,22,24,26)保持为连续正在使用的状态并且终止切换之后不使用的任务(20,22,24,26)的执行来实现的。
12.一种计算机程序产品,包括用于使可程控计算机实现权利要求11的方法的计算机指令的程序。
全文摘要
输出视频流是在多种视频模式下产生的,包括直播模式,在这种模式下,输入任务(20)与解码任务(22)相连接;暂停模式,在这种模式下,输入任务(20)与记录任务(24)相连接;和时移模式,在这种模式下,输入任务(20)与记录任务(24)相连接并且重放任务(26)与解码任务(22)相连接。在不同的模式下,启用任务(20,22,24,26)的不同子集或全部任务(20,22,24,26)。使用FIFO通信缓冲器(16a-d)在这些任务(20,22,24,26)之间进行通信。视频模式的切换是通过重新分配任务(20,22,24,26)到通信缓冲器(16a-d)中各个缓冲器的连接、将之前的数据保持在重新分配的FIFO通信缓冲器(16a-d)中来实现的。将切换前后需要的任务(20,22,24,26)保持为连续正在使用的状态,从而使得它们继续对它们连接的FIFO通信缓冲器(16a-d)进行读取或写入。到通信缓冲器(16a-d)的连接的重新分配最好限制于视频流中闭合图像组的传送之间的过渡的时间点。
文档编号H04N5/44GK1729688SQ200380106758
公开日2006年2月1日 申请日期2003年11月21日 优先权日2002年12月19日
发明者I·-C·康, F·斯尼德, A·A·J·德兰格 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1