CN100574405C - 用于反向播放的方法和装置 - Google Patents

用于反向播放的方法和装置 Download PDF

Info

Publication number
CN100574405C
CN100574405C CNB031566510A CN03156651A CN100574405C CN 100574405 C CN100574405 C CN 100574405C CN B031566510 A CNB031566510 A CN B031566510A CN 03156651 A CN03156651 A CN 03156651A CN 100574405 C CN100574405 C CN 100574405C
Authority
CN
China
Prior art keywords
coded image
frame
forward prediction
prediction coded
anchor
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.)
Expired - Lifetime
Application number
CNB031566510A
Other languages
English (en)
Other versions
CN1518358A (zh
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1518358A publication Critical patent/CN1518358A/zh
Application granted granted Critical
Publication of CN100574405C publication Critical patent/CN100574405C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/93Regeneration of the television signal or of selected parts thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/782Television signal recording using magnetic recording on tape
    • H04N5/783Adaptations for reproducing at a rate different from the recording rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440218Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

在用于反向播放的方法和装置中,对在压缩视频流中的正向预测编码图像进行解码,同时所选择的解码后的正向预测编码图像被作为锚图进行再编码。这些锚图随后被用来对压缩视频流的部分解码以用于在反向显示顺序中的显示。

Description

用于反向播放的方法和装置
技术领域
本发明涉及数字多媒体数据处理,尤其涉及一种反向播放的方法和装置。
背景技术
在处理数字多媒体数据,特别是视频数据时,压缩和采用的压缩技术在存储和传输中具有明显的优势。MPEG已经成为处理这类视频数据的主要标准。MPEG标准定义了压缩的数据流的结构,称为一个MPEG数据流,并且这个结构对存储和播放视频数据施加了几个限制。图1说明了一个MPEG数据流的例子。在图1的例子中,视频流被分成内帧I、预测帧P、和插值帧B。I帧是通常被称为锚(anchor)帧的一类帧。P帧是一类基于临时在前的帧的编码的正向预测编码帧。B帧是一类基于临时在前和随后的帧的双向编码帧。从一个I帧到下一个I帧中的帧通常被称为一组图像或GOP.在讨论MPEG的技术时,现有技术和本发明将使用把视频流分割成帧的例子,应当理解MPG的标准还提供除了帧的其他结构,例如奇字段和偶字段、上字段和下字段等。在这个公布中,术语“图像”被用来作为涵盖帧、字段等形式的通用术语。
再参照图1,I帧独立于任何其它在序列中的帧而被编码。因此,对I帧解码也不需要任何其他在序列中的帧。使用运动估计来对P帧编码,同时依赖于在序列中位于前面的I或P帧。因此,对于P帧来说,如果没有在前面的I帧或P帧,这类帧不能被编码。如图1中箭头所示,B帧使用在B帧前面的I或P帧和紧接在B帧后面的I或P帧进行编码。因此,对于B帧来说,如果没有在前面及随后的I帧或P帧,这类帧不能被编码。
图1说明了GOP中帧的显示顺序。但是,由于P帧和B帧的解码依赖性,把帧传送给解码器的顺序和显示帧的顺序大大不同。图2说明了在图1中说明的GOP的显示顺序202和解码顺序204。如解码顺序204所示,为了对随后出现的P帧或B帧解码所需的帧,是在该P或B帧前被解码器所接收。通常,解码后的帧被临时存储在存储器中然后在显示顺序202中被读出用于显示。
这样的系统很适用于用正常正向播放模式播放视频数据,但是有时用户可能想反向播放视频数据。可想而知,这增加了解码B帧和P帧的复杂性的层级。例如,为显示帧14需要解压缩P13和P16,但是解压缩P13需要解压缩P10,而这又需要解压缩P7,而这又需要解压缩P4,而这又需要解压缩I1。这样,在反向播放模式中解压P帧,需要逆序对所有的P帧解码直到出现一个I帧为止。
图3说明了现有技术中一个支持反向播放模式的MPEG解码器。如图所示,输入设备302存储一个MPEG数据流。解码器304对存储在输入设备302中的压缩数据解码。解码器304用正向播放显示顺序输出解压后的数据以在显示设备306上显示。从解码器304输出的解压后的数据也被存储在帧缓冲存储器308中。在反向播放过程中,访问帧缓冲存储器308,同时以反向显示顺序读出解压后的数据以在显示设备306上显示。为了实现描述中的反向播放,图3中的现有技术要求一个极大的帧缓冲存储器308。
日本专利JP2000-101969号公布了一个和上述图3中所讨论的相似的系统。但是,在这个日本专利文件中,在正向播放中只把I和P帧存储在帧缓冲存储器中。在反向播放中,使用存储的解压后的I和P帧对B帧解压,同时以反向播放顺序播放解压后的帧。可想而知,如果在GOP中的帧的数目很大,则帧缓冲存储器仍旧需要是很大以支持反向播放。
日本专利JP1997-037209号也公布了一个支持反向播放模式的系统。在这个系统中,在反向播放模式中只有I帧被解码和显示。结果,在反向播放模式中只有部分帧被播放。并且作为结果的播放效果极差。
图4说明了另外一个支持反向播放模式的现有技术系统的方框图。如图4说明的系统是基于日本专利JP1994-033111号所公布的。如图所示,输入设备402存储MPEG数据流。解码器404对存储在输入设备402中的压缩数据解码。解码器404在帧存储器406中临时存储解压后的数据。用显示顺序从帧存储器406中读出解码的帧并在显示设备412上显示。在这个正向播放模式的操作中,发送给显示设备412的解码的帧也被I帧编码器410接收。I帧编码器410用I帧格式对解压后的帧进行编码,并将I帧存储在缓冲存储器408中。在反向播放模式中,存储在缓冲存储器408中的帧被读出并被解码器404解码。用反向顺序从缓冲存储器408中读出的解码的帧随后被显示在显示设备412上。
与图3中说明的系统相比较,因为用压缩格式存储帧所以需要较小的存储器。另一方面,需要更多的编码。同时,由于所有的帧都被用I帧格式再编码并存储,在反向播放模式中仍然需要相当大的存储器空间。并且,由于所有被压缩的I帧都必须再被解码才能显示,也需要更多的处理时间。
美国专利第5742347号公布了另一个用于在正向和反向模式中对MPEG数据流解码并显示的系统。如公布所述,每个解压后的P帧都被作为一个I帧再编码并存储在第二存储设备中,在反向播放中,访问第二存储设备以对P帧解码和显示,并且被访问以获得对B帧解码所需的P帧。结果,不需要上述关于图3中所述的对多个P帧解码直到出现一个I帧为止的要求,同时由于把一个单一的帧压缩成一个I帧不需要运动估计和运动补偿,所以对I帧的编码可有效地执行。然而,对于大的GOP来说,这种技术还需要相对较大的第二存储。并且,即使所有的B帧都不被编码进I帧,仍然需要对I帧的编码。因此还存在着对减少处理时间,包括编码和解码时间以及减小第二存储的需求。
发明内容
根据本发明的一种用于反向播放的方法和装置,显著减小了用于对压缩的数据流执行反向播放所需的存储器空间。依照本发明的实施例,在压缩数据流中的正向预测编码图像的一个子集在被解码后被作为锚图被再编码。因为并非所有的正向预测编码图像都被作为锚图被再编码,在反向播放操作中需要较小的存储器空间。
再者,依照本发明的原理,临时性的相邻的锚图构成一个大的图像组中的一个独立的组。该独立组的独立性在于为了执行对组内图像的解码操作而不需要组外的图。这样,用于在反向播放模式中解码和播放数据的解码操作需要较小的存储空间。
在创建再编码的锚图时,本发明的一个实施例要求执行再编码的操作和本发明的任何其他操作模式分离和独立。然而,本发明的另一个实施例在正向播放的操作中创建了再编码的锚图。依照另一个实施例,不是存储需要用于对任何在该独立组中的图像解码所需的每一个解码的图像,而是只在存储器中存储对来临的图像解码必须的解码图像。本实施例需要较小的存储器空间,但是在解码和重放操作中也需要不止一次地对同一个图像解码。
依照另一个实施例,通过对已解码的被作为锚图再编码的正向预测编码图像的子采样,实现了对存储器需求的大大减小。在本发明的另一个实施例中,并未被作为锚图再编码的正向预测编码图像,以反向播放模式被显示时,是基于在反向播放顺序中位于他们之前的图像被解码和再编码的。
附图说明
通过下面的详细说明和附图,本发明将会被更全面的理解,其中同样的元件用同样的只是作为说明的标号来表示,并且并不代表对本发明的限制。
图1说明了根据MPEG标准的GOP;
图2说明了根据MPEG标准的GOP的正向显示顺序和正向播放解码顺序;
图3是说明了支持正向和反向播放模式的现有技术系统的方框图;
图4说明了支持正向和反向播放模式的另一个现有技术系统的方框图;
图5说明了根据本发明的用于采用根据本发明的反向播放方法的结构的一个方框图;
图6说明了根据本发明在正向播放模式中的解码处理的一个流程图;
图7A说明了在GOP级上的一个MPEG流;
图7B说明了在反向播放模式中的GOP的顺序,和在一个GOP中的图像;
图8说明了根据本发明的第一实施例的P帧再编码处理;
图9说明了根据本发明的第一实施例的用于反向播放模式的解码处理;
图10A到10E说明了根据本发明的第一实施例的分别用于反向播放的示例MPEG数据流、再编码的MPEG数据流、反向显示顺序、反向解码顺序和帧存储器内容;
图11A和11B说明了根据本发明的第一实施例的在解码操作前和后的运动矢量;
图12说明了根据本发明的第二实施例的再编码P帧作为锚帧;
图13A和13B说明了根据本发明的第三实施例的分别用于反向播放的反向播放解码顺序和帧存储器内容;
图14说明了根据本发明的支持用于反向播放的方法的第四实施例的系统结构的另一个实施例的方框图;
图15说明了根据本发明的第四实施例的再编码的MPEG流;
图16A和16B说明了根据本发明的第五实施例的在处理前和处理后的编码的MPEG数据流。
具体实施方式
在对实现用于反向播放一个MPEG数据流的方法的结构的描述后描述该方法实施例的示例。
结构:
图5说明了根据本发明的用于采用根据本发明的反向播放方法的系统结构的一个方框图。如图所示,输入接口502输入MPEG数据流,并在输入流缓冲器512中存储MPEG数据流。在控制器506的控制下,视频解码器504对MPEG数据流解压(即解码),并把解压的数据临时存储在帧存储器514中。控制器506还控制显示控制器508以正向播放模式或反向播放模式用适当的显示顺序输出被解压缩的帧。控制器506还控制I帧编码器518把帧存储器514中所选的解码的P帧编码成I帧,并随后存储于再编码流缓冲器516。在反向播放模式中,控制器506控制视频解码器504对存储在再编码流缓冲器516中在反向播放模式中需要用于显示的I帧进行解码。控制器506的操作部分由用户控制器520控制。通过用户控制器520,用户指示对一个MPEG数据流进行停止、暂停、正向播放或反向播放的操作。
控制器506是一个如下讨论所详述的用于实现根据本发明的方法的被编程的传统微处理器。显示控制器508是用于从存储器读出数据和把该数据转换成射频(RF)或数字信号用于显示的任何传统显示控制器。输入流缓冲器512、帧存储器514和再编码流存储器516可以是分离的存储器设备,或者可以被具体化(embodied)成一个在逻辑上被分割成三个不同存储器的单一存储器设备。无论是独立的存储设备或是单一的存储设备,该存储设备可以用传统RAM、HDD、闪速存存储器等来具体化。
正向播放
参照图6描述根据本发明的系统在正向播放模式中的操作。如图所示,在步骤S2,输入接口502在输入流缓冲器512中存储输入MPEG数据流。在控制器506的控制下,视频解码器504访问存储在输入帧缓冲器512中的压缩数据的帧。在步骤S4视频解码器504确定帧的类型。如果帧的类型是I帧,则处理前进到步骤S6,其中I帧被用传统方式编码;即不需要运动补偿。随后在步骤S8,视频解码器把解码的I帧存储到帧存储器514中。
回到步骤S4,如果视频解码器504确定帧的类型是P帧,在步骤S12视频解码器504参考存储在帧存储器514中的在先解码的I帧或P帧,并用传统方式对P帧进行解码。被解码的P帧随后在步骤S14被存储于帧存储器514中。再回到步骤S4,如果视频解码器504确定帧的类型是B帧,则在步骤S16,视频解码器504访问用于解码B帧所需的临时存储于帧存储器514中的在先和随后的解压的I帧和P帧,并用传统方式对B帧进行编码。本处理继续进行,在处理中,随后被解压的帧替代在先被解压并已被显示和在解压过程中不再需要的帧。
此外,一旦足够数量的帧被解压并在帧存储器514中被存储,在控制器506控制下以正向播放显示顺序显示控制器508访问被解压的帧并生成一个显示输出。
反向播放
图7A说明了在GOP层级上的原始的MPEG流。图7B显示在反向播放模式中,GOP被用反向顺序读出。然而,如同在图7B中更进一步所示,虽然GOP被以反向顺序访问或输入,在GOP中的图像仍旧处于如图2说明的解码顺序。因此,在反向播放模式中,构成GOP的图像必须被用一种方式来解码以允许和图2说明的显示顺序相比相反的显示顺序。
第一实施例
参照图8和图9描述本发明的用于反向播放的方法的第一实施例。图8说明了用于反向播放操作的再编码处理。图9说明了用于反向播放的解码处理。
除去用步骤S28替代了步骤S16,并添加了新步骤S20,S22,S24和S26,图8包括了和图6中说明的相同的步骤.因此,同样的标号被用于表示同样的步骤,同时为了省略的目的不再重复对前面这些已表述过的步骤的描述。而替代以只对新步骤进行描述。
参照图8,在把解码的I帧存储于帧存储器514的步骤S8后,在步骤S20在输入流缓冲器512中保存被编码的I帧。参考步骤S4,如果视频解码器504确定帧的类型是B帧,则在步骤S28,在输入流缓冲器512中保存编码的B帧。
在解码的P帧被存储于存储器514后,控制器506在步骤S22确定是否把该P帧作为I帧进行编码。根据本发明的方法,被解码的P帧的一个子集被作为I帧进行编码,其中该子集包括少于所有被解码的P帧。在实施例的示例中,控制器506对GOP中每n个P帧对一个P帧进行编码,其中n是一个大于或等于1的整数。例如,当n等于1时,控制器506在步骤S22使帧编码器518每隔一个P帧作为I帧编码。如果解码的P帧不被作为I帧进行再编码,则在步骤S24,在输入流缓冲器512中保留压缩的P帧。然而,如果控制器506确定该P帧将被作为I帧被再编码,则I帧编码器518从帧存储器514中访问解码的P帧,再把该解码的P帧作为I帧编码,并在步骤S26中把编码的I帧存储在再编码流缓冲器516中。
图10A说明了图1中说明的MPEG数据流的一部分。针对MPEG数据流的这一部分,图10B说明了当控制器506指示I帧编码器518对每隔一个P帧进行编码时如图8所示的处理产生的结果的结果再编码流。即,再编码流704包括I帧I6和I12而不是P帧P6和P12。当图8中用于GOP的再编码处理完成后,对该GOP进行图9中的解码处理。在同时,对下一个GOP进行图8中的编码操作。如图9所示,在步骤S30,控制器506使视频解码器504以反向播放顺序访问在GOP中的临时相邻被编码的I帧。视频解码器504从输入流缓冲器512中访问这些I帧,并把解码的I帧存储在帧存储器514中。
两个在反向显示顺序上临时连续的I帧构成一个独立的小组。在连续的被解码的I帧中间有1个或更多的P帧和4个或更多的B帧。在步骤S32,控制器506使视频解码器504对在独立小组中的每一个P帧解码。如本领域中所知:对P帧和B帧的解码牵涉到基于运动矢量的运动补偿。这些矢量和其他任何矢量一样都有一个方向和一个大小。在如图11A中说明的正向播放中,P帧例如P3的运动矢量是一个指向I帧I0的正向运动矢量,I0在播放顺序上在P帧之前。然而,如图11B所示,在反向播放中I帧I0在反向播放顺序中跟随P帧P3。结果正向运动矢量不再准确地指向I帧I0。作为替代,P帧P3的正向运动矢量需要被转换成一个反向运动矢量以便对P帧解码。对于在对B帧进行运动补偿解码使用的正向和反向运动矢量也是一样(见图11A和11B)。这种为了反向播放的目的对运动矢量的转换在US专利号5739862号中体现的技术中是众所周知的,同时也是在本发明的背景技术部分的讨论中被认为是现有技术中的常识。因此为了省略的目的不对该运动矢量补偿进行详细描述。
如上所述,在步骤S32中对在独立小组中的P帧进行解码。图10C到10E说明了这个处理的一个例子。图10C说明了在图10A中说明的GOP部分的反向显示顺序。图10D说明了根据本发明的这个实施例在反向播放时在图10C中说明的帧的解码顺序,同时图10E说明了根据这个实施例在帧存储器514中存储的GOP的帧。如图所示,根据步骤S30,I帧I12和I6被解码和存储在帧存储器514中来定义一个独立的小组。随后,根据步骤S32,在独立小组中被I帧I12和I6所定义的P帧P9被解码并存储在帧存储器514中。
随后,在步骤S34,在独立小组中的B帧被解码。再参照在图10C到10E中的例子,这牵涉了由I帧I12和I6定义的在独立小组中的B帧B11、B10、B8和B7的解码。图10D说明了这些B帧的解码顺序,同时图10E说明了在这个处理中存储在存储器514的帧。
从图10E中显然可见,不是所有的B帧都被存储在帧存储器514中。如下面进行的详细讨论中所述,在图9中的解码处理中,执行了一个重叠的显示处理,在该处理中被解码的帧被输出用于显示,并且这些在解码处理中不再需要的帧在解码处理中被覆盖。
一旦B帧被解码后,处理前进到步骤S36,其中控制器506确定对于GOP的解码处理是否完成。如果解码处理完成了,则在步骤S38中,启动对于下一个GOP的解码处理,同时为了下一个GOP处理回到步骤S30。但是,如果对于GOP的处理未完成,则在步骤S40,在反向显示顺序中的下一I帧被解码以构成下一个独立的小组。例如,关于图10C到图10E,这个例子中在反向显示顺序中的下一帧是I帧I0。因此,这个I帧被解码并存储在帧存储器中(见图10E)。由于一个独立的小组不依赖于另一个独立的小组来执行解码处理,在前一个独立小组中不重叠的帧不再需要被存储于帧存储器514。如图10E所示,只有I帧I6在两个独立的小组中重叠;所以当处理下一个独立小组开始时I6是唯一留在帧存储器514中的帧。
在步骤S40后,为下一独立小组处理从步骤32继续执行。图10C和10E说明了用于这个下一独立小组的显示顺序、解码顺序和存储在帧存储器514中的帧。
当GOP中的帧被解码,控制器506控制显示控制器508从帧存储器514中访问解码后的帧并生成显示输出。明确地说,一旦一个帧被解码后,显示控制器508被允许执行访问并生成用于那个帧的显示输出。此外如图10E中的例子所示,一旦一个帧被显示控制器显示,同时如果那个帧在解码处理中不再需要,则该帧不再在帧存储器514中保存。
因此,根据本发明的实施例的用于反向播放所需要的帧存储器空间是对B帧解码所需的帧的数目(即2)加上在一个独立小组中没有被作为I帧编码的P帧的数目再加上1个B帧。
根据本发明,因为只有被选择的P帧才被作为I帧编码和存储,所以根据本发明的用于反向播放的方法需要相当小的存储设备。此外,由于根据本方法的反向播放不导致跳跃帧,在反向播放模式中也可以实现极佳的图像质量。
第二实施例
根据本发明的用于反向播放的方法的第二实施例,对应于图8的上述第一实施例的再编码处理是被作为在图6中说明的在正向播放模式下的解码操作的一个部分来执行的。即,当帧被解码以用于正向播放,在输入流缓冲器512中保留编码后的I帧和B帧,同时被选择的被解码的P帧被再编码为I帧并被存储在再编码流缓冲器516中。这个组合的过程在图12中描述。由于图12中的每一个步骤都在上面被图6和图8之一所描述,因此为了省略的需要不再重复对这些步骤的描述。
因此,在第二实施例中,当用户通过用户控制器520选择反向播放模式时,不需要执行第一实施例中的再编码处理。作为替代,通过上面图9中讨论的解码处理开始反向播放模式,同时反向重放如上面讨论的第一实施例而进行。
第三实施例
根据本发明的第三实施例的用于反向播放的方法,除了在其中并非所有用于解码P帧和B帧的解码的帧都被存储于帧存储器514外和本发明的第一实施例或第二实施例相同。结果,根据这个实施例需要较少的用于反向播放的存储器空间,但需要额外的解码步骤。
考虑在图10A中说明的GOP的例子部分和在图10B中说明的GOP部分的再编码的例子,其中每隔一个P帧被再编码作为I帧。在这个例子中,在图10C中说明了反向显示的顺序。根据本发明的这个第三实施例,在帧存储器514中只保留对后面的解码操作所必需的帧。因此,对于在图10A到10C中给出的例子,解码顺序变成如图13A中所示,同时图13B说明在解码处理中存储于帧存储器的帧。图13B和图10E的比较证明了本发明的这个第三实施例在帧存储器中只需存储较少数量的帧,但同时图13A和图10D的比较也证明了这个第三实施例需要额外的解码操作。即,在GOP的反向播放中在图像组中的一个I帧图像在帧存储器514中被解码和存储不止一次。
第四实施例
图14是说明根据本发明的用于实现反向播放的方法的根据本发明的另一个结构的方框图。如图所示,图14中的实施例除了添加了过采样(over-sampling)电路1002和子采样(sub-sampling)电路1004外和图5中所示的一样。过采样电路1002被置于视频编码器504和帧存储器514之间,而子采样电路1004被置于帧存储器514和I帧编码器518之间。
根据这个实施例,被选择的被作为I帧被再编码的P帧经过一个如子采样电路1004所执行的子采样操作。子采样电路1004可以用一个传统的采样器来表示。作为这个子采样操作的结果,较少数量的数据被再编码并存储在再编码流缓冲器516中。图15说明了作为子采样操作结果的结果再编码MPEG流。
在用于反向播放的解码处理中,被解码、子采样的I帧经过一个由过采样电路1002执行的过采样操作,使被解码的子采样的I帧在存储到帧存储器514时被恢复到他们原来的大小。根据上述的本发明的实施例,将这些帧恢复到其原来的大小可以使得在以后对于其他B帧和P帧解码时使用这些帧。
第五实施例
根据本发明的方法,在GOP中的P帧的一个子集被作为I帧编码。根据本发明的这个第五实施例,未被编码成I帧的P帧被作为P帧解压和再编码。然而,该再编码是基于在反向播放顺序中在该P帧之前的I帧(包括被作为I帧编码的P帧)或P帧的。关于图10A中说明的GOP的部分的例子,图16A说明了在不采用本发明的第五实施例时,P帧P9和P3被基于I帧I6和I0分别编码。但是,采用第五实施例导致P帧P9和P3被基于I帧I6和I12被分别解压和编码。这大大地简化了根据本发明的解码处理,尤其是当在一个独立小组中存在超过一个P帧时。
虽然根据本发明的系统和方法和其具体实施例在这里用被分割成帧的MPEG数据流所描述,应该理解本发明适用于任何图像,例如偶字段(field)和奇字段,上字段和下字段等。并且,虽然本发明通过MPEG标准来描述,应当理解本发明适用于任何使用预测编码技术的压缩视频数据流。
虽然这样来描述本发明,显而易见对本发明可以在不脱离本发明的精神和范围的情况下在各方面进行修改,同时本领域的技术人员应当理解所有这些修改都应包括于本发明的权利要求的范围内。

Claims (20)

1.一种用于准备在时间顺序上反向输出压缩的视频流的方法,该方法包括:
接收压缩的视频流,该视频流包括锚图和正向预测编码图像,该正向预测编码图像基于一个在时间上位于前面的锚图或正向预测编码图像被编码;
对接收的正向预测编码图像解码;和
把解码的正向预测编码图像的第一子集作为锚图进行编码,该第一子集包括少于全部解码的正向预测编码图像。
2.如权利要求1所述的方法,其中,对于包括从一个I帧到下一个I帧中的帧的一组图像,对正向预测编码图像进行编码的步骤在编码正向预测图像之前跳过每n个的正向预测编码图像而对一个解码的正向预测编码图像进行编码,其中n为一个大于或等于1的整数。
3.如权利要求2所述的方法,其中正向预测编码图像为P帧。
4.如权利要求1所述的方法,其中在解压和输出被压缩视频流用于以正向顺序播放的处理中执行该对解码的正向预测编码图像的第一子集作为锚图进行编码的步骤。
5.如权利要求1所述的方法,还包括:
在对解码的正向预测编码图像的第一子集进行编码的步骤前对将被编码的解码的正向预测编码图像进行子采样。
6.如权利要求1所述的方法,还包括:
把解码的正向预测编码图像的第二子集进行编码作为反向预测编码图像,该反向预测编码图像基于在反向播放时序上位于前面的锚图或反向预测编码图像进行编码,该第一和第二子集互不包含,该第二子集包括全部解码的正向预测编码图像中除了第一子集中的解码的正向预测编码图像之外的剩余的解码的正向预测编码图像。
7.如权利要求1所述的方法,其中压缩视频流是MPEG视频流。
8.如权利要求1所述的方法,还包括:
存储在对解码的正向预测编码图像的第一子集进行编码的步骤输出的锚图。
9.一种用反向时序顺序和解压的形式输出压缩视频流的方法,该方法包括:
接收压缩的视频流,该视频流包括锚图和正向预测编码图像,该正向预测编码图像基于一个在时间上位于前面的锚图或正向预测编码图像被编码;
把解码的正向预测编码图像的第一子集转换成锚图,该第一子集包括少于全部解码的正向预测编码图像;
使用转换步骤中的锚图输出对用于以反向播放顺序输出的压缩视频流进行解压;和
用反向时序顺序输出解压后的视频流。
10.如权利要求9所述的方法,其中转换步骤包括:
对接收的正向预测编码图像解码;和
把解码的正向预测编码图像的第一子集作为锚图进行编码。
11.如权利要求10所述的方法,其中,对于包括从一个I帧到下一个I帧中的帧的一组图像,对正向预测编码图像进行编码的步骤在编码正向预测图像之前跳过每一个正向预测编码图像而对一个解码的正向预测编码图像进行编码。
12.如权利要求9所述的方法,其中在解压和输出被压缩视频流用于在正向顺序上播放的处理中执行该转换步骤。
13.如权利要求9所述的方法,其中对于在时序上不同的视频数据并行地进行转换和输出步骤。
14.如权利要求9所述的方法,还包括:
在转换步骤前对将被转换的解码的正向预测编码图像进行子采样;
其中,解压步骤包括在对锚图解压前对从转换步骤输出的锚图进行过采样。
15.如权利要求9所述的方法,还包括:
把正向预测编码图像的第二子集转换为反向预测编码图像,该反向预测编码图像基于在时序上位于前面的锚图或反向预测编码图像进行编码,该第一和第二子集互不包含,该第二子集包括全部解码的正向预测编码图像中除了第一子集中的解码的正向预测编码图像之外的剩余的解码的正向预测编码图像。
16.如权利要求9所述的方法,其中压缩视频流是MPEG视频流。
17.如权利要求9所述的方法,其中解压步骤包括:
在存储器中解压和存储一对在反向时序上连续的锚图;
在存储器中解压和存储在时序上位于在反向时序上连续的一对锚图之间的每一正向预测图像。
18.如权利要求9所述的方法,其中在解压一组图像期间解压步骤对该组图像中的一个锚图进行不止一次的解压和存储。
19.一种视频播放器中用于准备在时间顺序上反向输出压缩的视频流的装置,该装置包括:
输入流缓冲器,用于接收压缩视频流,该视频流包括锚图和正向预测编码图像,该正向预测编码图像基于一个在时间上位于前面的锚图或正向预测编码图像被编码;
视频解码器,对接收的正向预测编码图像解码的;和
锚图编码器,把解码的正向预测编码图像的第一子集作为锚图进行编码的,该第一子集包括少于全部解码的正向预测编码图像。
20.一种视频播放器,该播放器包括:
输入流缓冲器,用于接收压缩视频流的,该视频流包括锚图和正向预测编码图像,该正向预测编码图像基于一个在时间上位于前面的锚图或正向预测编码图像被编码;
视频解码器和锚图编码器,把解码的正向预测编码图像的第一子集转换成锚图的,该第一子集包括少于全部解码的正向预测编码图像;
控制器,控制视频解码器使用转换处理中的锚图输出对用于输出反向播放顺序的压缩视频流进行解压的;
显示控制器,用反向时序顺序输出解压后的视频流。
CNB031566510A 2003-01-08 2003-09-08 用于反向播放的方法和装置 Expired - Lifetime CN100574405C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/337,857 2003-01-08
US10/337,857 US7555042B2 (en) 2003-01-08 2003-01-08 Method and apparatus for reverse play

Publications (2)

Publication Number Publication Date
CN1518358A CN1518358A (zh) 2004-08-04
CN100574405C true CN100574405C (zh) 2009-12-23

Family

ID=32507445

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031566510A Expired - Lifetime CN100574405C (zh) 2003-01-08 2003-09-08 用于反向播放的方法和装置

Country Status (5)

Country Link
US (1) US7555042B2 (zh)
EP (1) EP1437894B1 (zh)
KR (1) KR100546329B1 (zh)
CN (1) CN100574405C (zh)
DE (1) DE60333896D1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101931808A (zh) * 2010-07-26 2010-12-29 华为技术有限公司 文件逆序播放方法及装置

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050036614A1 (en) * 2003-08-13 2005-02-17 Pai Ramadas Lakshmikanth DMA engine for fetching words in reverse bit order
US8249113B2 (en) * 2004-03-19 2012-08-21 Broadlogic Network Technologies, Inc. Method and system for providing faster channel switching in a digital broadcast system
JP4638874B2 (ja) * 2004-08-11 2011-02-23 株式会社日立製作所 符号化ストリーム記録媒体、及び画像符号化装置
WO2007020621A2 (en) 2005-08-15 2007-02-22 Nds Limited Video trick mode system
US8594137B2 (en) * 2007-02-20 2013-11-26 Teradici Corporation Apparatus and methods for image decoding
US8179976B2 (en) * 2008-01-11 2012-05-15 Apple Inc. Control of video decoder for reverse playback operation
US8634467B2 (en) * 2008-05-06 2014-01-21 Choy Sai Foundation L.L.C. Flexible Wyner-Ziv video frame coding
KR102077556B1 (ko) 2012-06-28 2020-02-14 엑시스 에이비 가상 인트라-프레임을 사용하여 비디오 콘텐츠를 인코딩하기 위한 시스템 및 방법
US9247179B2 (en) 2012-11-19 2016-01-26 Nvidia Corporation Reverse video playback in a data processing device
CN106303379B (zh) * 2015-05-20 2019-08-30 杭州海康威视数字技术股份有限公司 一种视频文件逆序播放方法及系统
CN106027871B (zh) * 2016-07-19 2023-06-09 上海寅家电子科技股份有限公司 车载摄像头固定装置及具有其的车辆
CN106331718A (zh) * 2016-08-31 2017-01-11 浙江大华技术股份有限公司 一种视频倒放方法及装置
US11582478B2 (en) * 2020-09-08 2023-02-14 Alibaba Group Holding Limited Video encoding technique utilizing user guided information in cloud environment

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5502570A (en) * 1990-02-13 1996-03-26 Canon Kabushiki Kaisha Images reproducing method capable of skipping reproduction of collateral information during reproduction in a special mode
US5623344A (en) * 1992-09-01 1997-04-22 Hitachi America, Ltd. Digital video recording device with trick play capability
US5805762A (en) * 1993-01-13 1998-09-08 Hitachi America, Ltd. Video recording device compatible transmitter
US6115537A (en) * 1994-02-18 2000-09-05 Matsushita Electric Industrial Co., Ltd. Digital signal recording and reproducing apparatus
EP0702493A1 (en) 1994-09-19 1996-03-20 International Business Machines Corporation Interactive playout of videos
CN1156159C (zh) * 1994-12-28 2004-06-30 索尼公司 数据传输装置及其方法
JP3146937B2 (ja) 1995-07-13 2001-03-19 日本ビクター株式会社 高能率符号化された動画像情報から早送り,早戻し画像を再生する再生方法
JP3484834B2 (ja) * 1995-07-28 2004-01-06 ソニー株式会社 データ符号化/復号化方法および装置
JPH1013791A (ja) 1996-06-24 1998-01-16 Matsushita Electric Ind Co Ltd 映像信号復号化方法,及び映像信号復号化装置
US5739862A (en) * 1996-12-23 1998-04-14 Tektronix, Inc. Reverse playback of MPEG video
US6353700B1 (en) 1998-04-07 2002-03-05 Womble Multimedia, Inc. Method and apparatus for playing an MPEG data file backward
US6473558B1 (en) 1998-06-26 2002-10-29 Lsi Logic Corporation System and method for MPEG reverse play through dynamic assignment of anchor frames
JP4120055B2 (ja) 1998-09-17 2008-07-16 ソニー株式会社 再生装置及び再生方法
US6557001B1 (en) * 1998-11-23 2003-04-29 Moonlight Cordless Ltd. Method for enhancing video compression through automatic data analysis and profile selection
JP3840895B2 (ja) * 2000-11-22 2006-11-01 日本電気株式会社 動画像符号化データ変換装置及びその方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101931808A (zh) * 2010-07-26 2010-12-29 华为技术有限公司 文件逆序播放方法及装置
CN101931808B (zh) * 2010-07-26 2013-08-07 华为技术有限公司 文件逆序播放方法及装置

Also Published As

Publication number Publication date
EP1437894B1 (en) 2010-08-25
EP1437894A3 (en) 2007-11-07
US20040131118A1 (en) 2004-07-08
US7555042B2 (en) 2009-06-30
KR100546329B1 (ko) 2006-01-26
EP1437894A2 (en) 2004-07-14
CN1518358A (zh) 2004-08-04
DE60333896D1 (de) 2010-10-07
KR20040063750A (ko) 2004-07-14

Similar Documents

Publication Publication Date Title
CN100574405C (zh) 用于反向播放的方法和装置
EP0665653B1 (en) Apparatus and method for decoding variable-length code
EP0732849A2 (en) Motion picture data decoding system
KR960001482B1 (ko) 정보기록장치 및 재생장치
CN100508585C (zh) 用于控制数字视频比特流逆向播放的装置和方法
US6414608B1 (en) Variable length code decoding device, digital broadcast receiving apparatus, and DVD reproducing apparatus
US5739862A (en) Reverse playback of MPEG video
US20090086818A1 (en) Frame buffer memory operating method used to decompress compressed moving pictures, and decoding apparatus adapted to frame buffer memory operating method
KR0185932B1 (ko) 고속재생을 위한 비디오데이타 복호방법 및 그 장치
JP2911114B2 (ja) 輪郭線復号化装置
JP2611637B2 (ja) 画像圧縮伸長装置
US6271774B1 (en) Picture data processor, picture data decoder and picture data encoder, and methods thereof
US6714681B1 (en) Decoding apparatus and method
US8228214B2 (en) Variable-length code decoding apparatus and method
JP2932950B2 (ja) データの圧縮・記録方法、データの圧縮・記録装置及び圧縮データの復号・再生方法、圧縮データの復号・再生装置
JPH11155129A (ja) Mpeg画像再生装置およびmpeg画像再生方法
JP2801911B2 (ja) 予測符号化による画像データの圧縮装置
JP2001103427A (ja) 圧縮画像再生装置及びプログラム記録媒体
JP2002218396A (ja) 情報再生装置および情報再生方法、記録媒体、並びにプログラム
JPH08223534A (ja) 画像再生装置
JP2002027478A (ja) 画像情報符号化装置及び方法
JPH08130741A (ja) 画像復号化装置
US7602847B1 (en) Device and method for compression of a video stream
JPH05130580A (ja) 可変長符号復号装置
JPH04280190A (ja) 画像復号化方法、及びこの画像復号化方法を用いた画像復号化装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20091223