一种切换频道的方法及用于显示图像的解码系统的制作方法

文档序号:7625142阅读:160来源:国知局
专利名称:一种切换频道的方法及用于显示图像的解码系统的制作方法
技术领域
本发明涉及电视系统,尤其涉及电视接收机中切换频道的方法及解码系统。
背景技术
视频压缩标准,如MPEG-2和H.264(也称为MPEG-4,第10部分,以及高级视频编码)使得当前有线和卫星电视服务能提供超过100个电视频道的节目。每个频道的内容可以是视频、音频以及文本信息。视频信息和音频信息以基本码流的形式被压缩和编码。基本码流可被打包,并可在传输媒体上与其它频道的基本码流进行多路复用。
在解码器里,解码器对与观众正在收看的频道相关联的基本码流进行解码。当观众转换频道时,解码器将对与新频道相关联的基本码流进行解码。
然而,在用户转换频道和解码器提供新频道的解码图像之间,常常有一个时间延迟。出现这种状况有几个原因。
原因之一是许多解码系统包括用于解码视频信息的缓冲器、队列以及通道(pipeline)。解码器通常在解码各部分视频基本码流之前将其缓冲。而且,解码器分步解码各部分视频基本码流。每一步同时解码视频基本码流的不同部分。解码系统也可使用队列来提供显示图像。
转换频道时,缓冲器、通道(pipeline)以及队列仍装满了先前频道的各部分基本码流。解码系统丢弃先前的频道内容,而与新频道相关的视频基本码流的各部分则通过缓冲器、通道以及队列得以处理。与新频道相关联的各部分视频基本码流经处理到达显示时,有一个时间滞后。
延迟的另一个原因是解码器需要等待序列头(sequence header)。视频基本码流包括至少一个视频序列。视频序列又包括序列头。序列头包含解码器用于解码的数据。这个数据规定了图像的垂直和水平尺寸、高宽比、像素次采样格式、图像速率、使用逐行扫描还是隔行扫描、轮廓(profile)、层次(level)、比特速率,以及用于帧内和帧间编码图像的量化矩阵。序列头是视频基本码流内的一种间隔。在频道切换时,解码器处于等待状态,直到从与新频道相关联的视频基本码流中接收到序列头。
延时的再一个原因是为了达到时间同步。视频基本码流中的图像包括指示何时显示图像的时间戳。解码器使用时间戳,在正确的时间以正确的顺序显示图像。当解码系统显示与一个频道相关联的视频基本码流时,解码系统与该视频基本码流的时间基准同步。频道切换时,解码系统与另一个视频基本码流的时间基准同步。这样就产生一个从用户切换频道的时间到解码系统显示新频道图像的时间的额外延迟。
从用户切换频道到显示新频道视频,显示器出现空屏。尽管这段时间一般很短,但观众经常会注意到这个空屏。当观众进行“频道冲浪”时,空屏变得更加明显。这种情况下,观众切换到一个频道,迅速看一眼它在演什么,又换到下一个频道,直到选择一个频道观看。
比较本发明后续将要结合附图介绍的系统,现有技术的其它局限性和弊端对于本领域的普通技术人员来说是显而易见的。

发明内容
本发明介绍了一种在频道切换过程中清空频道内容的系统和方法。
在一个实施例中,提供了切换频道的方法。该方法包括从与第一个频道相关的视频比特流中接收一部分比特流;在接收到第一个视频的部分比特流之后,接收一个从第一个频道切换到第二个频道的命令;接收到所述命令之后,显示与第一频道相关的第一个视频比特流的所述部分。
在另一个实施例中,提供了一种解码视频数据的解码系统。解码系统包括通道、接收器以及显示引擎。所述通道接收与第一个频道相关的视频比特流的一部分。在接收到第一个视频的部分比特流之后,接收器接收从第一个频道切换到第二个频道的命令。显示引擎在接收到命令之后显示与第一频道相关的第一个视频比特流的所述部分。
依据本发明的一个方面,提供了一种切换频道的方法,包括接收/存储与第一频道相关的第一视频比特流的一部分;在接收到第一视频的所述部分之后,接收从第一频道切换到第二频道的命令;在接收到所述命令之后,显示与第一频道相关的第一视频比特流的所述部分。
优选地,所述显示第一视频比特流的所述部分还包括所述显示第一视频比特流的图像的时间超过一个视频显示周期。
优选地,所述方法还包括接收与第二频道有关的第二视频比特流的序列头;其中,所述显示第一视频的图像还包括至少在接收到所述序列头之前,显示第一视频比特流的图像。
优选地,所述方法还包括在接收到序列头之后显示第二视频比特流。
优选地,所述方法还包括同步到与第二视频比特流相关的时间基准;其中,所述显示第二视频比特流还包括显示第二视频比特流的一个特定的图像直到同步到所述时间基准;优选地,所述方法进一步包括同步到与第二视频比特流相关的时间基准;其中,显示第一视频比特流的图像还包括显示第一视频比特流的图像至少到同步到时间基准;优选地,所述方法还包括同步到时间基准之后,显示第二视频比特流;优选地,所述方法还包括在接收到所述命令之后,增加计数器的计数值;依据本发明的一个方面,提供一种显示图像的解码系统,包括
用于存储与第一频道相关的视频比特流的一部分的缓冲器;用于在接收到第一视频的所述部分之后接收从第一频道切换到第二频道的命令的接收器;用于在接收到所述命令之后显示与第一频道相关的第一视频比特流的所述部分的显示引擎。
优选地,显示第一视频比特流的所述部分还包括,显示第一视频比特流的图像的时间超过一个视频周期。
优选地,接收器还接收与第二频道相关的第二视频比特流的序列头,其中所述显示第一视频比特流的图像还包括显示第一视频比特流的图像至少到接收到序列头。
优选地,所述显示引擎在接收到所述序列头之后显示第二视频比特流。
优选地,所述解码系统还包括用于同步到与第二视频比特流相关的时间基准的显示管理器。
优选地,显示第二视频比特流还包括显示第二视频比特流的一个特定的图像直到同步到时间基准。
优选地,显示第一视频比特流的图像还包括显示第一视频比特流的图像至少到同步到时间基准。
优选地,所述显示引擎在同步到时间基准之后显示第二视频比特流。
优选地,所述系统还包括用于在接收器接收到所述命令之后增加计数器的计数值的视频解码器;优选地,所述显示引擎还根据频道识别器确定所述部分比特流是与第一个频道相关联还是第二个频道相关联。
本发明的各种优点、各个方面和创新特征,以及其中所示例的实施例的细节,将在以下的描述附图中进行详细介绍。


图1是根据本发明实施例的一个描述频道切换的时序图;图2是一个描述示范性视频基本码流的框图;
图3是根据本发明实施例的一个描述示范性视频解码器的框图;图4是根据本发明实施例的一个描述视频解码器操作的流程图。
具体实施例方式
图1是依据本发明实施例的一个描述频道切换的时序图。在t0时刻,观众在收看一个事先选好的第一频道。在t0期间,接收、处理并显示与第一个频道相关的第一视频比特流105a。在第一视频比特流105a的接收时间和显示时间之间,有一个时间延迟tL。而且,与其它频道相关的视频比特流105b也可能被接收。然而,不必处理或显示其它视频比特流105。例如,在一个典型的电缆机顶盒中,其它视频比特流105可在接收时就被丢弃。
在t1时刻,接收到切换到第二频道的用户命令。一接收到这个命令,开始处理与第二频道相关的第二视频比特流105b。然而,如上所述,在视频比特流的接收和存储时间与视频比特流的显示时间之间有一个延迟tL。在t1和t2之间,处理第二视频比特流105b的开始部分。另外,在这时间,显示t1时刻之前存储的第一视频比特流的那部分。
显示第一视频比特流的时间(t1到t2),以用于处理第二视频比特流105b的时间来指示。处理可包括,但不限于,分析(parse)、解码、解压缩第二视频比特流105b。
如果在t2之前的t1时刻已经显示了第一比特流的部分,比特流的这部分的最后一个图像105aL’继续显示直到t2时刻。在t2时刻,处理第二比特流的开始部分。
在t2时刻处理的第二视频比特流105b的部分可能是不同步的。视频比特流105使用时间戳来指示比特流105的这些部分应当显示的时间。相对显示时间来说,所处理的第二视频比特流105b的这部分可能是过期的或者太早的。因此,有可能到t3时刻与第二视频比特流105b的同步都不出现。
根据本发明的某些方面,最后一个图像105aL’一直显示到t3时刻为止。作为另一选择,为了完成对第二视频比特流105b的处理,从t2时刻直到第二个视频比特流在t3时刻同步,都显示第一批图像或者第一批图像105bL’中的一个。t3时刻后,同步显示第二视频比特流105b。
例如,现在将在MPEG-2环境下描述本发明。在MPEG-2中,视频比特流105包括视频基本码流。然而,应当理解,本发明不仅仅局限于MPEG-2环境。
现在来看图2,它是一个描述示范性视频基本码流205a,205b的框图。每一个视频基本码流205对一个单独的视频编码且可与不同的频道相关联。
视频基本码流205编码视频数据210。视频数据210包括一组图像215,它以快速的时间间隔(例如1/30或1/24s)来捕捉图像。在显示设备上显示图像组215时,图像组215看起来象是运动的图像。
视频基本码流205包括视频序列220,它编码图像组215。视频序列220包括序列头225。序列头225规定图像的垂直和水平尺寸、高宽比、像素次采样格式、图像速率、使用逐行扫描还是隔行扫描、轮廓(profile)、层次(level)、比特速率、以及量化矩阵。解码器使用上述数据解码视频序列220。为了能够从不同入口点对视频序列220进行解码,视频序列220包括在不同的间隔上的多个序列头225。
图像组215包括频道识别符217和显示(Presentation)时间戳(PTS),和解码时间戳(DTS)。频道识别符217指示与图像215有关的频道。解码时间戳(DTS)和显示时间戳(PTS)分别指示何时应解码和显示图像215。
在t0时刻,观众在观看一个先前选定的第一频道。因此,在t0期间,接收、处理和显示与第一频道相关的视频基本码流205a。在第一视频比特流105a的接收时间和显示时间之间,有一个时间延迟tL。另外,与别的频道相关的视频比特流205也被接收。然而,不必处理或显示别的视频比特流205。
在t1时刻,接收到切换到第二频道的用户命令。一接收到这个命令,开始处理与第二个频道相关的视频比特流205b。然而,如上所述,在图像组215的接收时间与显示时间之间有一个延迟tL。在t1和t2之间,处理第二视频比特流205b的起始部分的图像组215。另外,在这时间,显示t1时刻之前开始处理的第一视频比特流205a的图像组215。
显示第一视频比特流215的期间(从t1到t2),以用于处理第二视频比特流205b的起始图像组215的时间来指示。处理过程可包括,但不限于,分析,解码,解压缩第二视频比特流205b。
如果在275,t2之前的t1时刻已经显示了第一比特流的部分比特流,第一视频基本码流205a的最后一个图像215’继续显示直到t2时刻。在t2时刻,处理第二比特流205b的开始图像组215。
在t2时刻处理的第二视频基本码流205b的开始图像组215可能是不同步的。同步是基于显示时间戳(PTS)的。相对显示时间来说,所处理的第二视频基本码流205b的第一图像组215可能是过期的或者太早的。因此,有可能到t3时刻与第二视频基本码流205b的同步都不会出现。
根据本发明的某些方面,第一视频基本码流205a的最后一个图像215’一直显示到t3时刻。作为另一选择,为了完成对第二视频基本码流205b的处理,从t2时刻直到第二视频比特流205b在t3时刻同步,都显示第一图像组215”中的一幅图像。t3时刻后,同步显示第二视频基本码流205b。
图3是依据本发明实施例的一个用于解码压缩视频数据的示范性电路。在同步动态随机存取存储器(SDRAM)302中的一个显示缓冲器301接收传输流。显示缓冲器301可从传输媒体306上接收传输流。
传输流提供很多打包的和复用在一起的视频基本码流205。每个视频基本码流205都与一个频道相关联。用户可以通过发送一个适当的信号到接收器304来选择频道。接收器304可包括红外接收器、无线接收器,或者输入终端。接收器304为主机处理器318提供信号。
数据传输处理器305将传输流信号分解为音频传输流和视频传输流。数据传输处理器305将音频传输流提供给音频部分315,将视频传输流提供给视频传输处理器307。
主处理器318向视频传输处理器307提供一个信号,指示用户的频道选择。视频传输处理器307解析(parse)视频传输流并恢复与所选频道相关的视频基本码流205,将视频基本码流写入到压缩数据缓冲(CDB)308。视频传输处理器307丢弃其它的视频基本码流。
视频解码器309从压缩数据缓冲308中读取视频基本码流,并解码视频。视频解码器309以一个图像一个图像的方式解码视频。当视频解码器309解码一个图像时,视频解码器309将图像写入帧缓冲310。
在显示期间,显示引擎311按比例决定视频图像、着色图片、并构建完整的显示(scales the video picture,renders the graphics,andconstructs the complete display)。一旦准备好了显示,视频图像将传送到视频编码器316,在这里使用一个内置数模转换器(DAC)将其转换为模拟视频。音频数模转换器(DAC)317将数字音频被转换为模拟信号。
视频解码器309也将大量的与每个图像相关的参数写入缓冲描述结构(buffer descriptor structure,BDS)312里。每一个帧缓冲310都与缓冲描述结构312相关联。与帧缓冲器310相关联的缓冲描述结构312,存储与存储在与帧缓冲310中的图像相关的参数。这些参数可包括,显示时间戳(PTS)以及与图像相关联的频道识别符。
显示管理器313检查缓冲描述结构,且在这些信息的基础上,确定图像的显示次序。显示管理器313保持显示队列314。显示队列314包括识别存储有将要显示的图像的帧缓冲的识别符。显示引擎311检查显示队列314以确定将要显示的下一个图像。
显示管理器313可通过检查与图像相关的PTS参数确定下一个将显示的图像。显示管理器313可将与图像相关的PTS值与系统参考时钟(SCR)进行比较,以确定将显示的图像的次序。
当用户从第一频道切换到第二频道时,接收器304向主处理器318提供一个信号。主处理器318发送一个信号到视频传输处理器307和显示管理器313,指示已经选择了第二频道。视频传输处理器307响应接收信号,开始解析(parse)与第二频道相关的视频基本码流。
然而,由于视频解码器309使用序列头225来解码,视频传输处理器307从下一个序列头225开始写与第二频道相关的视频基本码流。
在频道切换时间和视频传输处理器307接收下一个序列头225时间之间,显示引擎311显示第一视频基本码流的图像。在压缩数据缓冲308接收到图像的时间、视频解码器309解码图像的时间、以及显示引擎311显示图像的时间之间,都存在时间延迟。因此,在频道切换时,视频传输处理器307已经处理了第一视频基本码流的一些图像,并已将这些图像写到压缩数据缓冲308里。
视频解码器309继续解码第一视频基本码流的图像、将图像写入帧缓冲310里、并将与图像有关的参数写入缓冲描述结构312里。显示管理器313继续将第一视频基本码流的图像写入到显示队列314里。
如果在视频传输处理器307检测到第二视频基本码流的序列头之前,视频解码器309已完成对所有剩余的第一视频基本码流的图像的解码,压缩数据缓冲308将是空的,视频解码器309停止解码。
显示管理器313检测到没有更多的(further)信息被写入到缓冲描述结构时,暂停时间管理(将PTS与SCR比较),并重复地对第一视频基本码流的最后一个图像进行排队。持续这一过程至少到视频传输处理器307检测到第二视频基本码流的序列头。
当视频传输处理器307检测到第二视频基本码流的序列头时,它向视频解码器309和显示管理器313发出信号,通知已检测到第二视频基本码流的序列头。视频传输处理器307开始将第二视频基本码流的图像写入压缩数据缓冲308。视频解码器309停止解码第一视频基本码流的图像,并开始解码第二视频基本码流的图像。当用户通过运行在主处理器318上的程序切换频道时,主处理器318立刻通知视频解码器309增加内部计数器的计数值,这个计数器被称为频道识别计数器。不管何时视频解码器309解码一个完整的图像和移交图像属性(大小以及在帧缓冲中的位置)给显示引擎311,视频解码器309也向显示引擎311提供频道识别计数器中的计数值。显示引擎311对图像进行估计,以确定是否显示或不显示该图像。做出这一决定的时间比图像解码时间稍晚,这是因为视频解码器309和显示引擎311之间的队列(FIFO)314的原因。若频道切换恰好在一个图像已被解码但显示引擎311尚未估计它之前发生,这个频道识别计数器的值将比当前的频道识别器的值小。由此,显示引擎311估计到这一图像是旧频道的图像。
当视频解码器309开始解码第二视频基本码流的图像,它将与第二视频基本码流的图像相关的参数写入缓冲描述结构308。然而,在视频解码器309解码第二视频基本码流的第一个图像和解码系统同步到第二视频基本码流相关的时间基准之间,可能出现更进一步的时间延迟。
在这个延迟期间,显示管理器313继续暂停时间管理。根据本发明的某些方面,显示管理器313继续在显示队列314里将第一视频基本码流的最后一个图像进行排队,以便供显示引擎311进行显示。依据本发明的另一些方面,显示管理器313在显示队列314里将重复对第二视频基本码流的第一个图像进行排队,以便供显示引擎311进行显示。
一旦达到同步,显示管理器313接收主处理器318发出的信号,这个信号指示解码器已经与第二视频基本码流的时间基准同步。相应地,显示管理器313重新开始时间管理并显示第二视频基本码流的图像。
图4是依据本发明实施例的一个描述频道切换时显示图像的流程图。在步骤400中,视频传输处理器307将第一视频基本码流的图像写入到压缩数据缓冲308。在步骤405中,解码系统接收到一个信号,这个信号指示接收到用户切换频道的命令。视频传输处理器307响应这一信号,开始解析(parse)(在步骤410中)第二视频基本码流以检测序列头。
视频解码器309解码(在步骤415中)第一视频基本码流的图像,显示管理器313选择一个图像,以便显示引擎显示这个图像(在步骤420中)。在步骤425,确定视频传输处理器307是否已检测到第二视频基本码流的序列头。
如果在步骤425视频传输处理器307还没找到第二视频基本码流的序列头,确定存储在压缩数据缓冲308中的第一视频基本码流的所有图像是否已被显示完。若没有,则重复步骤415。若已显示完,则显示引擎311显示第一视频基本码流的最后一个图像(步骤430)。
当视频传输处理器307检测到第二视频基本码流的序列头时,视频传输处理器307将第二视频基本码流的图像写入压缩缓冲308(步骤435)。在步骤440中,视频解码器309解码第二视频基本码流的图像。在步骤445,确定解码系统是否已同步到第二视频基本码流的时间基准。
若不是,则显示管理器313选择(在步骤450)第一视频基本码流的最后一个图像或第二视频基本码流的第一个图像,以供显示引擎311进行显示,并重复步骤435。如果在步骤445期间,产生了同步,则显示引擎311根据PTS显示第二视频基本码流的图像(步骤455)。
系统集成的程度主要取决于速度和成本的考虑。由于现代处理芯片技术的成熟性,使用商用处理器是可行的。它可由一个ASIC加外围来完成。如果处理器可以ASIC核或逻辑模块的形式得到,则商用处理器可由ASIC器件的一部分来完成,其中一些功能可软硬结合来完成。在一个实施例中,前述器件可以集成到一个单个集成电路上。另外,该功能可以由处理器控制以硬件加速单元的形式来实现。
本发明是通过一些实施例进行描述的,本领域技术人员知悉,在不脱离本发明的精神和范围的情况下,可以对这些特征和实施例进行各种改变或等效替换。另外,在本发明的教导下,可以对这些特征和实施例进行修改以适应具体的情况及材料而不会脱离本发明的精神和范围。
因此,本发明不受此处所公开的具体实施例的限制,所有落入本申请的权利要求范围内的实施例都属于本发明的保护范围。
权利要求
1.一种切换频道的方法,包括接收/存储与第一频道相关的第一视频比特流的一部分;在接收到第一视频的所述部分之后,接收从第一频道切换到第二频道的命令;在接收到所述命令之后,显示与第一频道相关的第一视频比特流的所述部分。
2.根据权利要求1所述的切换频道的方法,其中,所述显示第一视频比特流的所述部分还包括显示第一视频比特流的图像的时间超过一个视频显示周期。
3.根据权利要求2所述的切换频道的方法,还包括接收与第二频道有关的第二视频比特流的序列头;其中,所述显示第一视频的图像还包括至少在接收到所述序列头之前,显示所述第一视频比特流的图像。
4.根据权利要求3所述的切换频道的方法,还包括在接收到所述序列头之后显示第二视频比特流。
5.根据权利要求4所述的切换频道的方法,还包括同步到与第二视频比特流相关的时间基准;其中,所述显示第二视频比特流还包括显示第二视频比特流的一个特定的图像直到同步到所述时间基准。
6.一种用于显示图像的解码系统,包括用于存储与第一频道相关的视频比特流的一部分的缓冲器;用于在接收到第一视频的所述部分之后接收从第一频道切换到第二频道的命令的接收器;用于在接收到所述命令之后显示与第一频道相关的第一视频比特流的所述部分的显示引擎。
7.根据权利要求6所述的用于显示图像的解码系统,其中,所述显示第一视频比特流的所述部分还包括,显示第一视频比特流的图像的时间超过一个视频周期。
8.根据权利要求7所述的用于显示图像的解码系统,其中,接收器还接收与第二频道相关的第二视频比特流的序列头,其中所述显示第一视频比特流的图像还包括显示第一视频比特流的图像至少到接收到序列头。
9.根据权利要求8所述的用于显示图像的解码系统,其中,所述显示引擎在接收到所述序列头之后显示第二视频比特流。
10.根据权利要求9所述用于显示图像的解码系统,还包括用于同步到与第二视频比特流相关的时间基准的显示管理器。
全文摘要
本发明的系统和方法是用来在频道切换过程中,清空频道的改变。在一个实施例中,描述了切换频道的方法。该方法包括接收/存储与第一频道相关的第一视频比特流的一部分;在接收到第一视频的所述部分之后,接收从第一频道切换到第二频道的命令;在接收到所述命令之后,显示与第一频道相关的第一视频比特流的所述部分。
文档编号H04N5/44GK1758722SQ20051010889
公开日2006年4月12日 申请日期2005年9月28日 优先权日2004年10月4日
发明者维杰阿南德·阿拉拉古比, 高雷·阿加沃尔 申请人:美国博通公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1