CN109218822B - 一种视频处理系统 - Google Patents

一种视频处理系统 Download PDF

Info

Publication number
CN109218822B
CN109218822B CN201711366905.0A CN201711366905A CN109218822B CN 109218822 B CN109218822 B CN 109218822B CN 201711366905 A CN201711366905 A CN 201711366905A CN 109218822 B CN109218822 B CN 109218822B
Authority
CN
China
Prior art keywords
post
syntax
decoding
buffer
circuit
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 - Fee Related
Application number
CN201711366905.0A
Other languages
English (en)
Other versions
CN109218822A (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.)
MediaTek Inc
Original Assignee
MediaTek Inc
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 MediaTek Inc filed Critical MediaTek Inc
Publication of CN109218822A publication Critical patent/CN109218822A/zh
Application granted granted Critical
Publication of CN109218822B publication Critical patent/CN109218822B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream

Landscapes

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

Abstract

本发明提供一种视频处理系统。该视频处理系统包括存储设备、多路解复用电路和句法解析器。存储设备包括第一缓存器和第二缓存器。多路解复用电路对输入比特流执行多路解复用操作,以将视频比特流写入到第一缓存器,并将存储在第一缓存器的视频比特流的比特流部分的起点写入到第二缓存器。每个起点表示存储在第一缓存器内的对应比特流部分的起始地址。句法解析器包括句法解析电路和句法解析控制电路;句法解析控制电路从第二缓存器中发出起点,将发出的第一起点分配给句法解析电路,并触发选择的句法解析电路开始根据所述发出的起点从第一缓存器中读出的第一比特流部分的句法解析。本发明能实现低延时且高性能的视频解码。

Description

一种视频处理系统
技术领域
本发明的所公开实施例涉及视频数据处理,且更具体而言,涉及一种具有多个句法解析(syntax parsing)电路和/或多个后解码(post decoding)电路的视频处理系统。
背景技术
一个传统的视频系统设计包括视频发送系统(或者视频记录系统)和视频接收系统(或者视频播放系统)。关于视频发送系统/视频记录系统,其包括视频编码器、音频/视频多路复用电路和发送电路。关于视频接收系统/视频播放系统,其包括接收电路、音频/视频多路解复用电路、视频解码器和显示引擎。然而,由于视频发送系统/视频记录系统中超长记录延时以及视频接收系统/视频播放系统中超长播放时间,传统的视频系统设计无法满足某些超低延时应用的要求。一般地,熵解码是视频解码的性能瓶颈,并且熵解码的性能对比特率比较敏感。高比特率实现更好质量,但是导致较大延时。通常,单个熵编码电路根据其容量具有最高比特率上限。因此,使用单个熵解码电路无法满足视频接收系统/视频播放系统的低延时且高性能的要求。
发明内容
根据本发明的示例性实施例,本发明提出一种具有多个句法解析电路和/或多个后解码电路的视频处理系统来解决上述问题。
根据本发明的第一方面,公开一种实例性的视频处理系统。所述实例性的视频处理系统包括存储设备、多路解复用电路和句法解析器。存储设备包括第一缓存器和第二缓存器。多路解复用电路用于接收输入比特流,并对所述输入比特流执行多路解复用操作,以将视频比特流写入到所述第一缓存器,并将存储在所述第一缓存器的所述视频比特流的多个比特流部分的多个起点写入到所述第二缓存器,其中每个起点表示存储在所述第一缓存器内的对应比特流部分的起始地址。句法解析器包括多个句法解析电路和句法解析控制电路。所述句法解析控制电路用于从所述第二缓存器中发出第一起点,将所述发出的第一起点分配给从所述多个句法解析电路中选择的空闲的第一句法解析电路,并触发所述选择的第一句法解析电路开始根据所述发出的第一起点开始句法解析从所述第一缓存器中读出的第一比特流部分。
根据本发明的第二方面,公开一种实例性的视频处理系统。所述实例性的视频处理系统包括存储设备、多路解复用电路、句法解析器和后解码器。存储设备包括第一缓存器和第二缓存器。多路解复用电路用于接收输入比特流,并对所述输入比特流执行多路解复用操作,以将视频比特流写入到所述第一缓存器。句法解析器用于对所述视频比特流的多个比特流部分执行句法解析,以分别生成多个通用二进制熵句法数据部分,并将通用二进制熵句法数据部分写入到第二缓存器中,其中每个所述比特流部分包含算术编码的句法数据,每个所述通用二进制熵句法数据不包含算术编码句法数据。所述后解码器包括多个后解码电路和后解码控制电路。每个所述后解码电路包括通用二进制熵句法解码器,所述通用二进制熵句法解码器用于对从所述第二缓存器中读出的一个通用二进制熵句法数据部分执行通用二进制熵句法解码,以输出解码句法数据。后解码控制电路用于将第一通用二进制熵起点分配给从所述多个后解码电路中选择的空闲的第一后解码电路,并触发所述选择的第一后解码电路开始根据所述第一通用二进制熵起点从所述第二缓存器中读出的第一通用二进制熵句法数据部分的后解码,其中所述第一通用二进制熵起点表示存储在所述第二缓存器内的所述第一通用二进制熵句法数据部分的起始地址。
本发明通过多个句法解析电路来执行不同编码块行的比特流部分的算术解码,和/或通过多个后解码电路执行不同编码块行的UBE句法数据部分的后解码,从而实现低延时且高性能的视频解码器系统。
在阅读以下对各图及图式中所例示的优选实施例的详细说明之后,本发明的这些及其它目标无疑将对所属领域的技术人员显而易见。
附图说明
图1是例示根据本发明实施例的视频处理系统的结构示意图。
图2是例示根据本发明实施例的两阶段句法解析装置的示意图。
图3是例示根据本发明实施例的两阶段句法解析装置第一示例的示意图。
图4是例示根据本发明实施例的两阶段句法解析装置第二示例的示意图。
图5是例示根据本发明实施例的视频帧的第一分区设计的示意图。
图6是例示根据本发明实施例的视频帧的第二分区设计的示意图。
图7是例示根据本发明实施例的控制一个视频帧的句法解析过程的方法的流程图。
图8是例示根据本发明实施例的控制一个视频帧的后解码过程的方法的流程图。
图9是例示根据本发明实施例的使用一个句法解析器内有两个句法解析电路和后解码器内有三个后处理电路来执行两阶段句法解析操作的示意图。
图10是例示根据本发明实施例的设置在UBE句法数据缓存器内的环形缓存器的第一存储状态的示意图。
图11是例示根据本发明实施例的设置在UBE句法数据缓存器内的环形缓存器的第二存储状态的示意图。
具体实施方式
本说明书及权利要求书通篇中所用的某些用语指代特定部件。如所属领域的技术人员可以理解的是,电子设备制造商可利用不同名称来指代同一个部件。本文并非以名称来区分部件,而是以功能来区分部件。在以下说明书及权利要求书中,用语“包括”是开放式的限定词语,因此其应被解释为意指“包括但不限于…”。另外,用语“耦合”旨在意指间接电连接或直接电连接。因此,当一个装置耦合到另一装置时,则这种连接可以是直接电连接或通过其他装置及连接部而实现的间接电连接。
图1是根据本发明实施例的视频处理系统的结构示意图。例如,该视频处理系统100包括视频接收系统(或者视频播放系统),其应用于超低延时应用,如虚拟现实(virtualreality,VR)应用。在本实施例中,视频处理系统100包括接收(receiving,RX)电路102、音频/视频多路解复用(用“A/V DEMUX”表示)104,句法解析器106、后解码器108、存储设备110、显示控制电路112(用“显示Ctrl”表示)以及显示引擎114。视频处理系统100采用两阶段句法解析方案,以使得句法解析器106将算术编码的比特流(例如,数据依赖的内容自适应二进制算术编码(context-adaptive binary arithmetic coding,CABAC)熵编码比特流)变换成非数据依赖的通用二进制熵(universal binary entropy,UBE)句法比特流,并且,后解码器108内UBE句法解码可以执行并行UBE句法解码以实现高解码性能。在本实施例中,句法解析器106包括句法解析控制电路(用“SP Ctrl”表示)107和多个句法解析电路SP1,SP2,…,SPN,后解码器108包括后解码控制电路(用“PD Ctrl”表示)109和多个后解码电路PD1,PD2,…,PDM。视实际设计考虑,正整数值N可以与正整数值M相同或者不同。
在本实施例中,存储设备110可以用内部存储设备、外部存储设备或者其结合来实现。例如,内部存储设备可以是静态随机读取存储器(static random access memory,SRAM)或者触发器(flip-flop)。外部存储设备可以是动态随机存取存储器(dynamicrandom access memory,DRAM)、闪存、硬盘或者软盘。如图1所示,存储设备可以视为具有其内部设置的多个缓存器,如比特流缓存器121、起点缓存器122、UBE句法数据缓存器123和重构帧缓存器124。
图2是根据本发明实施例的两阶段句法解析装置的示意图。为了简化和清楚,该两阶段句法解析装置200示出为具有一个句法解析电路202和一个后解码电路204。但是,此仅作为示意目的,不限制本发明。该两阶段句法解析装置200可以具有多个句法解析电路和/或多个后解码电路。例如,该句法解析电路202可以是图1中的句法解析电路SP1-SPN中的任意一个,和/或后解码电路204可以是图1中后解码电路PD1-PDM中的任意一个。
视频比特流BS是视频发送系统(或者视频记录系统)的熵编码器的输出。例如,熵解码器可以采用算术编码技术,如CABAC。因此,该视频比特流BS是算术编码的比特流(例如,CABAC编码比特流)。算术编码经常应用于在预测和/或量化之后所生成的比特串(bitstring)。并且,需要传输不同的编码参数和系统配置信息。这些编码参数和系统配置信息将被二值化成bin串(bin string),并进行算术编码。总之,算术编码通常应用于与一些句法元素相关的bin串,如运动矢量差分(motion vector difference,MVD)、用于编码单元(coding unit,CU)的分区模式、预测残差的量化后的变换系数的符号和绝对值等。如图2所示,句法解析电路202具有算术解码器203。根据两阶段句法分析方案,算术解码器203用作超前比特流重新格式化处理电路(look-ahead bitstream reformatting processingcircuit)。将视频比特流BS馈入到算术解码器203内,然后对编码视频比特流BS进行算术解码,以恢复bin串(其为算术解码bin串)。该算术解码的bin串也可以用作非算术的bin串,或者UBE句法数据。然后将UBE句法数据存储在UBE句法数据缓存器206内。如图1所示,当该句法解析电路202是句法解析电路SP1-SPN中的一个,并且该后解码电路204是后解码电路PD1-PDM中的一个时,UBE句法数据缓存器206可以是图1所示的UBE句法数据缓存器123。当UBE句法数据缓存器206内已经缓存足够的UBE句法数据(算术解码bin串)时,从UBE句法数据缓存器206内读取该UBE句法数据,并且后解码电路204对该UBE句法数据进行后解码。
如图2所示,后解码电路204包括UBE句法解码器(例如,变长解码器(variablelength decoder,VLD)或者表查找电路(table look-up circuit))212。UBE句法解码器212解码UBE句法数据以输出表示预测残差的解码句法数据、不同的编码参数和系统配置信息。解码句法数据将提供给后解码电路204内的其他处理电路,以重构视频数据。例如,其他处理电路可以包括逆量化电路(用“IQ”表示)214、逆变换电路(用“IT”表示)216、重构电路(用“REC”表示)218、运动矢量计算电路(用“MV生成”表示)220、运动补偿电路(用“MC”表示)222、帧内预测电路(用“IP”表示)224、帧间/帧内模式选择电路226、环形滤波器(例如,去块滤波器(deblocking filter,DF)228)以及参考帧缓存器230。由于本领域的技术人员很容易理解包含在处理电路213内的这些电路元件214-230,为了简洁,此处将不作进一步描述。
本申请所使用的该两阶段句法解析方案可以通过使用美国专利申请2016/0241854 A1所提出的算术解码器来实现,该美国专利申请的名称为“METHOD ANDAPPARATUS FOR ARITHMETIC DECODING”,并且以引用的方式并入本文中。该美国专利申请的发明人也是本申请的合作者。
在一个示例设计中,句法解析电路202所生成的UBE句法数据是算术解码的bin串。例如,在HEVC标准中,句法元素last_sig_coeff_x_prefix指定了变换块内在扫描顺序上最后一个显著系数的列位置的前缀。根据HEVC标准,对句法元素last_sig_coeff_x_prefix进行算术编码。一元编码可以用于对句法元素last_sig_coeff_x_prefix进行二值化。如表1所示,为用于句法元素last_sig_coeff_x_prefix的示例性的一元编码,其中最长编码有6比特,并且bin位置用binIdx表示。
表1
Figure BDA0001512921810000071
在编码器侧,用于扫描顺序上的最后一个显著系数的列位置的前缀值prefixVal被二值化为各自的bin串。例如,等于3的前缀值prefixVal被二值化为“1110”。使用算术编码对二值化后的bin串进行进一步编码。根据本发明实施例,在如图3所示的解码器侧,算术解码器203(其用作超前比特流重新格式化处理电路)处理算术编码比特流。将来自于算术解码器203(其用作超前比特流重新格式化处理电路)的算术解码的bin串“1110”存储到UBE句法数据缓存器206内。在存在足够可用的bin串后,将该存储的bin串“1110”提供给UBE句法解码器(例如,没有算术解码的VLD)212,以恢复句法值,即last_sig_coeff_x_prefix=3。
可选地,句法解析电路202所生成的UBE句法数据由UBE句法数据缓存器206内的具有特定数据结构的解码句法值(即,解码句法元素值)组成。例如,在HEVC标准中,句法元素last_sig_coeff_x_prefix指定了变换块内在扫描顺序上最后一个显著系数的列位置的前缀,句法元素last_sig_coeff_y_prefix指定了变换块内在扫描顺序上最后一个显著系数的行位置的前缀,句法元素last_sig_coeff_x_suffix指定了变换块内在扫描顺序上最后一个显著系数的列位置的后缀,以及句法元素last_sig_coeff_y_suffix指定了变换块内在扫描顺序上最后一个显著系数的行位置的后缀。根据HEVC标准,对句法元素last_sig_coeff_x_prefix,last_sig_coeff_y_prefix,last_sig_coeff_x_suffix和last_sig_coeff_y_suffix进行算术编码。根据本发明的实施例,在如图4所示的解码器侧,算术解码器203(其用作超前比特流重新格式化处理电路)处理算术编码比特流。算术解码器203(其用作超前(look-ahead)比特流重新格式化处理电路)获得句法元素last_sig_coeff_x_prefix,last_sig_coeff_y_prefix,last_sig_coeff_x_suffix和last_sig_coeff_y_suffix的算术解码句法值“3”,“2”,“4”和“5”,并根据特定的数据结构将其存储到UBE句法数据缓存器206内指定的存储位置。也就是说,UBE句法数据缓存器206内所分配的第一特定存储空间用于记录句法元素last_sig_coeff_x_prefix的解码前缀值,UBE句法数据缓存器206内所分配的第二特定存储空间用于记录句法元素last_sig_coeff_y_prefix的解码前缀值,UBE句法数据缓存器206内所分配的第三特定存储空间用于记录句法元素last_sig_coeff_x_suffix的解码后缀值,UBE句法数据缓存器206内所分配的第四特定存储空间用于记录句法元素last_sig_coeff_y_suffix的解码后缀值。在存在足够可用的句法值后,将存储的句法值“3”,“2”,“4”和“5”提供给UBE句法解码器(例如,表查找电路)212,以最终恢复该句法,即,last_sig_coeff_x_prefix=3,last_sig_coeff_y_prefix=2,last_sig_coeff_x_suffix=4和last_sig_coeff_y_suffix=5。该替代设计也落入本发明的范围内。
算术编码过程是非常依赖于数据的,并且常常引起解码吞吐量的问题。为了解决这个问题,两阶段句法解析方法通过将UBE句法数据(其包括非算术编码的句法数据)存储到UBE句法数据缓存器206内,以将算术解码与UBE句法解码(其为非算术解码)进行分离。相对于算术解码器203,由于UBE句法解码器212相对简单,系统设计仅需要考虑到用于句法解析电路202的吞吐量问题。如图1所示,句法解析器106被配置为具有多个句法解析电路SP1-SPN。此外,后解码器108被配置为具有多个后解码电路PD1-PDM。在一个示例性实现中,图2所示的句法解析电路202可以是图1所示的句法解析电路SP1-SPN中的任意一个,图2所示的后解码电路204可以是任何后解码电路PD1-PDM。因此,句法解析器106和后解码器108是两阶段句法解析装置的一部分。使用多句法解析电路SP1-SPN可以增加句法解析/算术解码的处理速度,并且使用多个后解码电路PD1-PDM可以增加UBE句法解码/非算术解码的处理速度以及重建的帧生成。图1所示的视频处理系统100的更多细节描述如下。
编码块是视频编码标准的基本处理单元。例如,当视频编码标准为H.264时,一个编码块为一个宏块(macroblock,MB)。又例如,当视频编码标准是VP9时,一个编码块为一个超级块(super block,SB)。还例如,当视频编码标准为高效视屏编码(HEVC,HighEfficiency Video Coding)时,一个编码块是一个编码树单元(coding tree unit,CTU)。一个视频帧可以被分割成多个片(slice),从而每个片包括部分视频帧。由于通用术语“片”在不同的视频编码标准中均已定义,为了简洁此处不在作进一步说明。图5是根据本发明实施例的视频帧的第一分区设计。一个视频帧IMG具有多个编码块行(例如,MB行,SB行或者CTU行):行0,行1,行2,…,行n,每行具有多个编码块(例如,MB,SB或者CTU)。在第一分区设计中,每个编码块行是一个片。因此,视频帧IMG被分区成片0,片1,片2,…,片n。图6是根据本发明实施例的视频帧的第二分区设计。一个视频帧IMG具有多个编码块行(例如,MB行,SB行或者CTU行):行0,行1,行2,…,行n,每行具有多个编码块(例如,MB,SB或者CTU)。在第二分区设计中,每个编码块行包括多个片。因此,视频帧IMG被分区成片0,0-片0,m,片1,0-片1,m,片2,0-片2,m,…,片n,0-片n,m。具有多个句法解析电路SP1-SPN和多个后解码电路PD1-PDM的视频处理系统100可以在假设一个视频帧被分割成多个片的情况下使用,其中,片能够包含一个编码块行(例如,MB/SB/CTU行)的部分或者全部编码数据,但是不能包含多个编码块行(例如,MB/SB/CTU行)的部分或者全部编码数据。
关于视频处理和视频播放,RX电路102可以接收来自视频发送系统(或者视频记录系统)的无线传输信号(例如,WiFi信号),并且从该无线传输信号中提取输入比特流BS_IN,其中,输入比特流BS_IN包括编码视频数据和编码音频数据。音频/视频多路解复用电路104接收该输入比特流BS_IN,进而从该输入比特流BS_IN中提取视频比特流BS_V,并将其写入到存储设备110的比特流缓存器121内。另外,音频/视频多路解复用电路104进一步将存储在比特流缓存器121内的视频比特流BS_V的多个比特流部分的多个起点写入到起点缓存器122内,其中,每个起点表示存储在比特流缓存器121内的对应的比特流部分的起始地址。例如,每个比特流部分由一个编码块行(例如,MB/SB/CTU行)的比特流数据组成。因此,比特流部分BS1包括视频帧内该一个编码块行(例如,MB/SB/CTU行)的编码数据,而比特流部分BS2包括该视频帧内下一个编码块行(例如,MB/SB/CTU行)的编码数据。将表示存储在比特流缓存器121内的比特流部分BS1的一个起点存储在起点缓存器122内,并将表示存储在比特流缓存器121内的比特流部分BS2的一个起点存储在起点缓存器122内。
句法解析控制电路107管理存储在比特流缓存器内的比特流部分的句法解析过程(算术解码过程)。例如,如图1所示,句法解析控制电路107给一个句法解析电路分配起点S1,输出控制信号S2以停止一个句法解析电路,以及接收通知信号S3,其表示一个句法解析电路的空闲状态。图7是根据本发明实施例的控制一个视频帧的句法解析过程的方法的示意图。假设结果实质上是相同的,无需严格按照图7中的顺序来执行这些步骤。句法解析控制电路107可以使用图7中的方法。在步骤702中,句法解析控制电路107将索引值n初始化为1(即,n=1)。在步骤704中,句法解析控制电路107监测起点缓存器122的缓存状态,以检测该起点缓存器122是否为空。如果起点缓存器122的缓存状态表示起点缓存器122为空,则意味着起点缓存器122当前没有等待发出(fetch)和处理的起点。因此,句法解析控制电路107保持监测起点缓存器122的缓存状态(步骤704)。
如果起点缓存器122的缓存状态表示起点缓存器122不为空,则意味着起点缓存器122具有当前等待发出和处理的一个或多个起点。开始时,句法解析电路SP1-SPN均为空闲状态。在步骤706中,句法解析控制电路107从起点缓存器122中发出一个起点S1(例如,比特流部分BS1的起点),并将该发出的起点S1分配给空闲状态的具有索引值n(n=1)的句法解析电路SPn。在步骤708中,句法解析控制电路107触发所选择的句法解析电路SPn(n=1)开始比特流部分(例如,比特流部分BS1)的句法解析(算术解码),该比特流部分是根据所发出的起点S1从比特流缓存器121中读出的。当所选择的句法解析电路SPn(n=1)完成比特流部分(例如,比特流部分BS1)的句法解析(算术解码)时,其返回到空闲状态,并通过发送一个通知信号S3来通知句法解析控制电路107其处于空闲状态。
由于比特流部分BS1对应于一个视频帧的第一编码块行(即最上层编码块行),通过默认设置初始化用于解码(例如,CABAC解码)的内容表CTX。在比特流部分(例如,比特流部分BS1)的句法解析(算术解码)期间,每次生成一个解码bin/字符时,句法解析电路SPn(n=1)更新该内容表CTX,并且,更新后的内容表CTX用于后续算术编码数据的句法解析(算术解码)。此外,根据HEVC,波前并行处理(Wavefront Parallel Processing,WPP)允许每个CTU行以并行方式进行编码/解码。如果当前CTU行不是一个视频帧内的最高CTU行,由更新在上层CTU行内特定位置处的内容表CTX来初始化用于编码/解码该当前CTU行的内容表CTX。因此,当在HEVC WPP过程下生成视频比特流BS_V时,由一个句法解析电路在解码一个CTU行的过程中所更新的内容表CTX可以初始化由另一个句法解析电路解码下一个CTU行所使用的内容表CTX。
在步骤710中,句法解析控制电路107检测是否存在待解码的一个视频帧的剩余比特流部分。如果同一视频帧的所有比特流部分均被句法解析器106处理过,句法解析控制电路107检测是否所有句法解析电路SP1-SPN均是空闲状态(步骤712)。若句法解析电路SP1-SPN均是空闲状态,则表示完成一个视频帧的句法解析(算术编码)。这样,一个视频帧的句法解析过程结束。
若一个视频帧的至少一个比特流部分还没有被句法解析器106处理,则句法解析控制电路107检测起点缓存器122的缓存状态,从而确定起点缓存器122是否为空(步骤714)。如果起点缓存器122的缓存状态表示起点缓存器122为空,则意味着起点缓存器122当前没有等待发出和处理的起点。因此,句法解析控制电路107继续监测起点缓存器122的缓存状态(步骤714)。如果起点缓存器122的缓存状态表示起点缓存器122不为空,则意味着起点缓存器122具有当前等待发出和处理的一个或多个起点。在步骤716中,根据如下伪代码,句法解析控制电路107更新索引值n。
Figure BDA0001512921810000121
在本实施例中,依次循环选择句法解析电路SP1-SPN来处理连续编码块行(例如,MB/SB/CTU行)的比特流部分。因此,如果最近选择并且使用的句法解析电路SPn是SPN,则将选择并使用的下一个句法解析电路SPn是SP1。如果最近选择并且使用的句法解析电路SPn不是SPN,则将选择并使用的下一个句法解析电路SPn是SPn+1。在步骤718中,句法解析控制电路107检测所选择的具有更新后的索引值n(n=1或n=n+1)的句法解析电路SPn是否为空闲状态。若所选择的具有更新后的索引值n(n=1或n=n+1)的句法解析电路SPn还不为空闲状态,表示所选择的具有更新后的索引值n(n=1或n=n+1)的句法解析电路SPn仍在处理上一比特流部分。这样,句法解析控制电路107等待所选择的句法解析电路SPn进入空闲状态(步骤718)。若所选择的具有更新后的索引值n(n=1或n=n+1)的句法解析电路SPn为空闲状态,句法解析控制电路107检测所选择的具有更新后的索引值n(n=1或n=n+1)的句法解析电路SPn的内容表CTX是否被更新/初始化(步骤720)。若所选择的具有更新后的索引值n(n=1或n=n+1)的句法解析电路SPn的内容表CTX已被更新/初始化,句法解析控制电路107从起点缓存器中发出一个起点S1(例如,下一比特流部分BS2的起点),并给所发出的起点S1分配空闲的具有更新后的索引值n(例如,n=2)的句法解析电路SPn(步骤706)。
第一比特流部分的句法解析的处理时间可以与第二比特流部分的句法解析的处理时间重叠,索引值n设置为第一值(例如,n=1)的第一句法解析电路SPn执行第一比特流部分的句法解析,索引值n设置为第二值(例如,n=2)的第二句法解析电路SPn执行第二比特流部分的句法解析。这样,通过使用多个句法解析电路SP1-SPN,可以改善在两阶段句法解析方案中使用的句法解析器106的句法解析性能(算术解码性能)。
应注意,步骤720是可选的。例如,当在HEVC WPP过程下生成视频比特流BS_V时,图7中的控制流程包含步骤720,并且,当在HEVC WPP过程下没有生成视频比特流BS_V时,图7中的控制流程省略步骤720。
不同编码块行(例如,MB/SB/CTU行)的比特流部分的句法解析(算术编码)之间是数据依赖的。因此,句法解析控制电路107进一步监测不同句法解析电路当前所处理的不同比特流部分的句法解析过程。例如,不同比特流部分包括同一视频帧内的第一编码块行的第一比特流部分和第二编码块行的第二比特流部分,其中第一编码块行和第二编码块行相邻,并且第一编码块行位于第二编码块行的上方。当第一比特流部分被发送到第一句法解析电路以用于句法解析(算术编码),且第二比特流部分被发送到第二句法解析电路以用于句法解析(算术编码)时,句法解析控制电路107监测第一比特流部分的句法解析和第二比特流部分的句法解析,并在第二比特流部分的句法解析所需要的空间上相邻数据尚未从第一比特流部分的句法解析中获取的时候,输出控制信号S2至第二句法解析电路以停止第二比特流部分的句法解析。例如,连续选择第一句法解析电路和第二句法解析电路,且句法解析控制电路107触发其按照顺序处理第一比特流部分和第二比特流部分。也就是说,若第二句法解析电路SPp(p=1~N)是当前选择的句法解析电路,则第一句法解析电路Previous_SP(SPp)是上次选择的句法解析电路。使用如下伪代码定义该第一句法解析电路Previous_SP(SPp)。
Figure BDA0001512921810000141
例如,若第二句法解析电路SPp是SP1,则第一句法解析电路Previous_SP(SPp)是SPN。又例如,若第二句法解析电路SPp是SP2,则第一句法解析电路Previous_SP(SPp)是SP1。还例如,若第二句法解析电路SPp是SPN,则第一句法解析电路Previous_SP(SPp)是SP(N-1)
句法解析控制电路107监测第二句法解析电路SPp的当前处理坐标pu_x和第一句法解析电路Previous_SP(SPp)的当前处理坐标pu_x,以确定空间上相邻的数据是否对第二句法解析电路SPp可用,其中当前处理坐标pu_x表示一个句法解析电路当前正在处理的编码块(例如,MB、SB或CTU)的列位置。如果第一句法解析电路Previous_SP(SPp)的坐标(pu_x+TH1)小于或等于第二句法解析电路SPp的当前处理坐标pu_x,句法解析控制电路107确定空间上相邻的数据对第二句法解析电路SPp不可用,并输出控制信号S2指示第二句法解析电路SPp停止第二比特流部分的句法解析。否则,第二句法解析电路SPp正常工作以执行第二比特流的句法解析。基于设计需求,阈值TH1可以是正数。
当句法解析电路SP1-SPN中的任意一个完成一个比特流部分的句法解析(算术解码),将UBE句法数据部分存储在UBE句法数据缓存器123内。例如,句法解析电路SP1-SPN分别用于处理从比特流缓存器121中读出的比特流部分BS1-BSN,然后句法解析电路SP1-SPN分别输出UBE句法数据部分UBE1-UBEN至UBE句法数据缓存器123。应注意,比特流部分BS1-BSN中的每个包含算术编码的句法数据,而UBE句法数据部分UBE1-UBEN中的每个不包含算术编码的句法数据。
后解码控制电路109管理存储在UBE句法数据缓存器123内的UBE句法数据部分的后解码过程(其包括非算术解码过程)。例如,如图1所示,后解码控制电路109给一个后解码电路分配一个UBE起点P1,输出控制信号P2以停止一个后解码电路,并接收表示一个后解码电路的空闲状态的通知信号P3。图8是根据本发明实施例的控制后解码过程的方法的示意图。假设结果实质上是相同的,无需严格按照图8中的顺序来执行这些步骤。后解码控制电路109可以使用图8中的方法。在步骤802中,后解码控制电路109将索引值m初始化为1(即,m=1)。在步骤804中,后解码控制电路109检测行计数器132所维护的计数值,以确定UBE句法数据缓存器内是否还有当前等待被后解码的UBE句法数据部分。在本实施例中,在响应于每次后解码电路SP1-SPN完成一个UBE句法数据部分的后解码时,后解码控制电路107所生成的一个通知信号SC1,行计数器132则更新其计数值。例如,每次一个编码块行的一个UBE句法数据部分的句法解析中生成一个UBE句法数据部分时,行计数器132的计数值则叠加增量值(例如,1)。因此,行计数器132所维护的计数值表示UBE句法数据缓存器123内是否还有当前等待被后解码的UBE句法数据部分。若行计数器132的计数值等于0时,表示UBE句法数据缓存器123内没有当前等待被后解码的UBE句法数据部分。因此,后解码控制电路109继续监测行计数器132(步骤804)。
如果行计数器132所维护的计数值大于0,则意味着行计数器132具有当前等待后解码的一个或多个UBE句法数据部分。开始时,后解码电路PD1-PDM均为空闲状态。在步骤806中,后解码控制电路109将UEB起点P1(例如,存储在UBE句法数据缓存器123内的UBE句法数据部分UBE1的起始地址)分配至空闲的具有索引值m(m=1)的后解码电路PDm,并将行计数器132的计数值减小递减值(例如,1)。在本实施例中,每个UBE起点表示存储在UBE句法数据缓存器123内对应的UBE句法数据部分的起始地址。在步骤808中,后解码控制电路109触发所选择的后解码电路PDm(m=1)开始UBE句法数据部分(例如,UBE句法数据部分UBE1)的后解码(其包含非算术解码),该UBE句法数据部分是根据所分配的UBE起点P1从UBE句法数据缓存器123中读出的。当所选择的后解码电路PDm(m=1)完成UBE句法数据部分(例如,UBE句法数据部分UBE1)的后解码时,其返回到空闲状态,并通过发送一个通知信号P3来通知后解码控制电路109其处于空闲状态。
在步骤810中,后解码控制电路109检测是否存在待解码的一个视频帧的剩余UBE句法数据部分。如果同一视频帧的所有UBE句法数据部分均被后解码器108处理过,后解码控制电路109检测是否所有后解码电路PD1-PDM均是空闲状态(步骤812)。若后解码电路PD1-PDM均是空闲状态,则表示完成一个视频帧的后解码(其包含非算术解码)。这样,一个视频帧的后解码过程结束。
若一个视频帧的至少一个UBE句法数据部分还没有被后解码器108处理,则后解码控制电路109检测行计数器132所维护的计数值,从而确定UEB句法数据缓存器123内是否存在当前等待被后解码的UBE句法数据部分(步骤814)。若行计数器132的计数值等于0时,表示UBE句法数据缓存器123内没有当前等待被后解码的UBE句法数据部分。因此,后解码控制电路109继续监测行计数器132(步骤814)。若行计数器132的计数值大于0时,则意味着UBE句法数据缓存器123内具有当前等待被后解码的一个或多个UBE句法数据部分。在步骤816中,根据如下伪代码,后解码控制电路109更新索引值m。
Figure BDA0001512921810000171
在本实施例中,依次循环选择后解码电路PD1-PDM用于处理连续编码块行(例如,MB/SB/CTU行)的UBE句法数据部分。因此,如果最近选择并且使用的后解码电路PDm是PDM,则将选择并使用的下一个后解码电路PDm是PD1。如果最近选择并且使用的后解码电路PDm不是PDM,则将选择并使用的下一个后解码电路PDm是PDm+1。在步骤818中,后解码控制电路109检测所选择的具有更新后的索引值m(m=1或m=m+1)的后解码电路PDm是否为空闲状态。若所选择的具有更新后的索引值m(m=1或m=m+1)的后解码电路PDm还不为空闲状态,表示所选择的具有更新后的索引值m(m=1或m=m+1)的后解码电路PDm仍在处理上一UBE句法数据部分。这样,后解码控制电路109等待所选择的后解码电路PDm进入空闲状态(步骤818)。若所选择的具有更新后的索引值m(m=1或m=m+1)的后解码电路PDm为空闲状态,后解码控制电路109给该空闲的具有索引值m(例如,m=2)的后解码电路PDm分配UBE起点P1(例如,存储在UBE句法数据缓存器123内的UBE句法数据部分UBE2的起始地址),并将行计数器132的计数值减少递减值(例如,1)(步骤806)。
如上所述,每次从一个编码块行的一个比特流部分的句法解析中生成一个UBE句法数据部分时,行计数器132的计数值叠加增量值(例如,1)。关于图8中的示例性控制流程,每次给一个空闲的后解码电路分配UBE起点时,行计数器132的计数值减少递减值(例如,1)。因此,执行步骤814以检测行计数器132所维持的计数值是否大于0。当行计数器132所维持的计数值大于0时,步骤814确定UBE句法数据缓存器123内有当前等待被后解码的一个或多个UBE句法数据部分。但是,上述仅作示意目的,不用于限制本发明。在可选的设计中,可以修改步骤806以省略将行计数器123减少增量值(例如,1)的操作。因此,当逐步完成同一视频帧内的编码块行的比特流部分的句法解析时,单调递增行计数器132的计数值。换句说,在一个视频帧的编码块行的句法解析和后解码的过程中,行计数器132所设置的下一计数值总是大于行计数器132所设置的当前计数值。可以修改步骤814以检测行计数器132的计数值是否增加到更大的值。当行计数器132的计数值增加到更大的值时,表示UBE句法数据缓存器123内有当前等待被后解码的一个或多个UBE句法数据部分。同样实现了使用行计数器132的计数值来控制后解码过程的目的。这个可选设计也落入本发明的范围。
第一UBE句法数据部分的后解码的处理时间可以与第二UBE句法数据部分的后解码的处理时间重叠,索引值m设置为第一值(例如,m=1)的第一后解码电路PDm执行第一UBE句法数据部分的后解码,索引值m设置为第二值(例如,m=2)的第二后解码电路PDm执行第二UBE句法数据部分的后解码。这样,通过使用多个后解码电路PD1-PDM,其中每个具有一个UBE句法解码器来执行UBE句法解码(非算术解码),可以改善在两阶段后解码方案中使用的后解码器108的后解码性能。
不同编码块行(例如,MB/SB/CTU行)的UBE句法数据部分的UBE句法解码(非算术解码)之间没有数据依赖。因此,可以并行执行不同编码块行(例如,MB/SB/CTU行)的UBE句法数据部分的UBE句法解码(非算术解码)。但是,如图2所示,后解码过程进一步包括其他解码阶段,其包括IQ、IT、REC、IP、MC、DF等。例如,当将DF过程应用于从当前编码块行中重构的部分视频帧内的块边界的时候,DF阶段需要空间上相邻的数据。因此,不同编码块行(例如,MB/SB/CTU行)的比特流部分的句法解析(算术编码)之间是数据依赖的。在本实施例中,后解码控制电路109进一步监测不同后解码电路当前所处理的不同UBE句法数据部分的后解码过程。例如,不同UBE句法数据部分包括同一视频帧内的第一编码块行的第一UBE句法数据部分和第二编码块行的第二UBE句法数据部分,其中第一编码块汗和第二编码块行相邻,并且第一编码块行位于第二编码块行的上方。当第一UBE句法数据部分被发送到第一后解码电路以用于后解码,且第二UBE句法数据部分被发送到第二后解码电路以用于后解码时,后解码控制电路109监测第一UBE句法数据部分的后解码和第二UBE句法数据部分的后解码,并在第二UBE句法数据部分的后解码所需要的空间上相邻数据尚未从第一UBE句法数据部分的后解码中获取的时候,输出控制信号P2至第二后解码电路以停止第二UBE句法数据部分的后解码。例如,后解码控制电路109连续并触发选择第一后解码电路和第二后解码电路,以按照顺序处理第一UBE句法数据部分和第二UBE句法数据部分。也就是说,若当前选择的是第二后解码电路PDp(p=1~M),则上次选择的是第一后解码电路Previous_PD(PDp)。使用如下伪代码定义该第一后解码电路Previous_PD(PDp)。
Figure BDA0001512921810000191
例如,若第二后解码电路PDp是PD1,则第一后解码电路Previous_PD(PDp)是PDM。又例如,若第二后解码电路PDp是PD2,则第一后解码电路Previous_PD(PDp)是PD1。还例如,若第二后解码电路PDp是PDM,则第一后解码电路Previous_PD(PDp)是PD(M-1)
后解码控制电路109监测第二后解码电路PDp的当前处理坐标pu_x和第一后解码电路Previous_PD(PDp)的当前处理坐标pu_x,以确定空间上相邻的数据是否对第二后解码电路PDp可用,其中当前处理坐标pu_x表示一个后解码电路当前正在处理的编码块(例如,MB、SB或CTU)的列位置。如果第一后解码电路Previous_PD(PDp)的坐标(pu_x+TH2)小于或等于第二后解码电路PDp的当前处理坐标pu_x,后解码控制电路109确定空间上相邻的数据对第二后解码电路PDp不可用,并输出控制信号P2指示第二后解码电路PDp停止第二UBE句法数据部分的后解码。否则,第二后解码电路PDp正常工作以执行第二比特流的后解码。基于设计需求,阈值TH2可以是正数。
两阶段句法解析方案将算术解码从UBE句法解码(非算术解码)中分离出来,使用多个句法解析电路来执行不同编码块行(例如,MB/SB/CTU行)的比特流部分的算术解码,以及使用多个后解码电路来执行不同编码块行(例如,MB/SB/CTU行)的UBE句法数据部分的后解码。这样可以实现低延时且高性能的视频解码器系统。
图9是根据本发明实施例的使用句法解析器内的两个句法解析电路SP1和SP2以及后解码器内的三个后解码电路PD1、PD2和PD3来执行两阶段句法解析操作的示意图。在本示例中,每个编码块行是一个CTU行。图9的左部分示出了句法解析(算术解码)过程,其为两阶段句法解析方案的第一阶段,图9的右部分示出了后解码过程(其包含UBE句法解码),其为两阶段句法解析方案的第二阶段。开始时,句法解析电路SP1和SP2以及后解码电路PD1、PD2和PD3均为空闲状态。因此,在两阶段句法解析的开端,选择并触发空闲的句法解析电路SP1处理CTU行0。在句法解析电路SP1完成CTU行0之前,可以选择并触发空闲的句法解析电路SP2处理CTU行1。在句法解析电路SP1完成CTU行0之后,选择并触发空闲的后解码电路PD1处理CTU行0,并且,可以选择并触发空闲的句法解析电路SP1处理CTU行2。在句法解析电路SP2完成CTU行1之后,选择并触发空闲的后解码电路PD2处理CTU行1,并且,可以选择并触发空闲的句法解析电路SP2处理CTU行3。在句法解析电路SP1完成CTU行2之后,选择并触发空闲的后解码电路PD3处理CTU行2,并且,可以选择并触发空闲的句法解析电路SP1处理CTU行4。由于使用多个句法解析电路SP1和SP2,一个编码块行(例如,CTU行3)的句法解析(算术解码)的处理时间可以与另一个编码块行(例如,CTU行4)的句法解析(算术解码)的处理时间重叠。由于使用多个后解码电路PD1-PD3,一个编码块行(例如,CTU行0)的后解码(其包括UBE句法解码)的处理时间可以与另一个编码块行(例如,CTU行1或者2)的后解码(其包括UBE句法解码)的处理时间重叠。进一步地,由于在句法解析电路SP1-SP2和后解码电路PD1-PD3之间使用行级解码流水线(pipeline),一个编码块行(例如,CTU行1)的句法解析(算术解码)的处理时间可以与另一个编码块行(例如,CTU行0)的后解码(其包括UBE句法解码)的处理时间重叠。
根据句法解析电路SP1-SP2和后解码电路PD1-PD3之间的行级解码流水线,直到一个句法解析电路完成特定CTU行的句法解析,一个后解码电路才开始该特定CTU行的后解码。但是,此仅用作示意目的,不用于限制本发明。也即是,句法解析电路SP1-SP2和后解码电路PD1-PD3之间的解码流水线不限于行级流水线。可选地,根据实际设计需求,句法解析电路SP1-SP2和后解码电路PD1-PD3之间的解码流水线可以是块级流水线、片级流水线或者编码块级别流水线。因此,通过句法解析电路SP1-SP2和后解码电路PD1-PD3之间的解码流水线的合适结构,句法解析器106和后解码器108可以处理不同帧。例如,当句法解析器106执行当前视频帧的编码块行的比特流部分的句法解析时,后解码器108可以执行前一视频帧的编码块行的UBE句法数据部分的后解码。换句话说,句法解析器106的一个句法解析电路可以处理一个视频帧的编码块行,而后解码器108的一个后解码电路正在处理不同视频帧的编码块行。
当后解码电路PD1-PDM中的任意一个完成与一个编码块行(例如,MB/SB/CTU行)相关的一个UBE句法数据部分的后解码,将重构帧部分(即重构部分视频帧)存储在重构帧缓存器124内。如上所述,视频处理系统可以是超低延时应用所使用的视频接收系统(或者视频播放系统),如VR应用。因此,如图1所述,视频处理系统100进一步包括显示控制电路112和显示引擎114用于处理视频播放过程。显示控制电路112管理存储在重构帧缓存器124内的重构帧数据的视频播放,显示引擎114是显示装置(未示出)的驱动电路。例如,显示控制电路112检测线计数器142所维护的计数值以判断重构像素线的数量是否达到预设的阈值。在本实施例中,响应于每次后解码电路PD1-PDM中的任意一个完成一个UEB句法数据部分的后解码时,后解码控制电路109所生成的一个通知信号SC2,线计数器142则更新其计数值。在本实施例中,每次一个编码块行的一个UBE句法数据部分的后解码中生成一个重构帧部分时,线计数器142的计数值则叠加增量值(例如,等于一个编码块的高度的值)。因此,线计数器142所维护的计数值表示一个视频帧的重构像素线的数量。当一个视频帧的重构像素线的数量达到预设的阈值时,显示控制电路112将存储在重构帧缓存器124的重构帧的起始地址Addr分配给显示引擎114,并触发显示引擎114开始显示该重构帧。换句说,在后解码器108获取到该重构视频帧的所有重构像素线之前,开始显示该重构帧。
当视频源具有超高分辨率时,一个视频帧的句法解析所生成的UBE句法数据的数量可能很大。采用UBE句法数据缓存器123完全容纳具有超高分辨率的视频帧的所有UBE句法数据无法避免地需要大量的缓存器。为了减低存储空间的使用,本发明进一步提出在UBE句法数据缓存器123内使用多个环形缓存器,以分别用于句法解析电路SP1-SPN。例如,第一环形缓存器用于缓存句法解析电路SP1所生成的UBE句法数据部分UBE1,第二环形缓存器用于缓存句法解析电路SP2所生成的UBE句法数据部分UBE2,以及第N环形缓存器用于缓存句法解析电路SPN所生成的UBE句法数据部分UBEN。因此,一个环形缓存器用于缓存一个特定句法解析电路的句法解析输出,其中该环形缓存器内所缓存的句法解析输出可以被一个或多个空闲的后解码电路进行后解码,该一个或多个空闲的后解码电路是从后解码电路PD1-PDM中选择的。
图10是根据本发明实施例的分配在UBE句法数据缓存器123内的环形缓存器的第一存储状态的示意图。在本示例中,环形缓存器100设置在用于句法解析电路SP1的UBE句法数据缓存器123内,并具有顶部物理地址v_start和底部物理地址v_end。可以按照从顶部物理地址v_start到底部物理地址v_end的方向,然后从底部物理地址v_end返回到顶部物理地址v_start,来访问(读/写)该环形缓存器1000。为了简洁,假设每个编码块行是一个CTU行,句法解析电路SP1为空闲的句法解析电路,其被重复选择以执行连续CTU行的比特流部分的句法解析,两个后解码电路PD1和PD2是空闲的后解码器,其被顺序选择用于后解码该连续CTU行的UBE句法数据部分。最初,语法解析电路SP1是空闲的。这样,选择空闲的句法解析电路SP1来对CTU行0执行句法解析。在CTU行0的句法解析期间,句法解析电路SP1将UBE句法数据写入该环形缓存器1000,这样写指针wptr(其表示将UBE句法数据写入到设置在UBE句法数据缓存器123内的环形缓存器1000的当前写地址)向下移动。在完成CTU行0的句法解析之后,将CTU行0的对应的UBE句法数据部分存储在该环形缓存器1000内,并且句法解析电路SP1进入空闲状态。由于句法解析电路SP1处于空闲状态,选择其以对CTU行1执行句法解析。在CTU行1的句法解析期间,句法解析电路SP1将UBE句法数据写入该环形缓存器1000,这样写指针wptr向下移动。在完成CTU行1的句法解析之后,将CTU行1的对应的UBE句法数据部分存储在该环形缓存器1000内,并且句法解析电路SP1进入空闲状态。由于句法解析电路SP1处于空闲状态,选择其以对CTU行2执行句法解析。在CTU行2的句法解析期间,写指针wptr达到底部物理地址v_end。此时,用于句法解析电路SP1的环形缓存器1000被存储满了。由于句法解析电路SP1不能将任何新UBE句法数据写入到环形缓存器1000内,句法解析电路SP1暂停CTU行2的句法解析。
图11是根据本发明实施例的设置在UBE句法数据缓存器123内的环形缓存器的第二存储状态的示意图。开始时,后解码电路PD1和PD2处于空闲状态。这样,在完成CTU行0的句法解析之后,选择空闲的后解码电路PD1来对CTU行0执行后解码。在CTU行0的后解码期间,后解码电路PD1从环形缓存器1000中读出UBE句法数据,从而读指针rptr(其表示设置在UBE句法数据缓存器123内的环形缓存器1000中读出UBE句法数据的当前读地址)向下移动。由于读指针rptr的移动,通过覆盖CTU行0的后解码的UBE数据,环形缓存器100具有可用于存储新的CTU行2的UBE数据的存储空间。因此,句法解析电路SP1恢复CTU行2的句法解析,并且,写指针wptr返回到顶部物理指针v_start,以继续将CTU行2的UBE数据写入到环形缓存器1000内。此外,选择空闲的后解码电路PD2来对CTU行1执行后解码。这样,由于CTU行1的后解码,读指针rptr继续向下移动。应注意,若在读指针rptr达到底部物理地址v_end之后继续UBE数据的后解码,读指针rptr将返回到顶部物理地址v_start,以继续从环形缓存器1000中读出UBE数据。
由于环形缓存器(例如,设置用于句法解析电路SP1-SPN中的每个的环形缓存器)的内部特性,写指针wptr跟随读指针rptr,并且,读指针rptr也跟随写指针wptr。写指针wptr和读指针rptr之间使用竞赛模式,以控制该环形缓存器(例如,设置用于句法解析电路SP1-SPN中的每个的环形缓存器)的访问(读/写)。例如,句法数据缓存器123具有多个设置在其内部的环形缓存器BF1-BFN,并且,句法解析电路SP1-SPN中的每个将UBE句法数据输出写入到相应的环形缓存器内,其由从后解码电路PD1-PDM中选择的一个或多个后解码电路读出。关于图10-11中所示的示例,句法解析电路SP1将UBE句法数据部分写入到环形缓存器1000内,并且选择多个后解码电路PD1和PD2来从环形缓存器1000中读出UBE句法数据部分,以用于后解码。
在仅一个所选择的后解码电路(例如,PDm,1≦m≦M)读用于一个句法解析电路(例如,SPn,1≦n≦N)的环形缓存器(例如,BFn,1≦n≦N)的情况下,将句法解析电路SPn的写指针wptr更新至后解码电路PDm,以作为竞赛模式环形缓存器访问控制方案所使用的实际写指针wptr,并将后解码电路PDm所使用的读指针rptr更新至句法解析电路SPn,以作为竞赛模式环形缓存器访问控制方案所使用的实际读指针rptr。关于后解码电路PDm,其比较其读指针rptr与接收到的写指针wptr。当读指针rptr追上写指针wptr时(例如,rptr==wptr),后解码电路PDm停止从环形缓存器中读取UBE句法数据部分的数据。这样,竞赛模式环形缓存器访问控制方案防止后解码电路PDm从环形缓存器中获取错误的UBE句法数据。关于句法解析电路SPn,其比较其写指针wptr与接收到的读指针rptr。当写指针wptr与读指针rptr之间的差达到阈值(例如,wptr==rptr-1)时,句法解析电路SPn将停止将UBE句法数据部分的数据写入到环形缓存器BFn中。这样,竞赛模式环形缓存器访问控制方案防止句法解析电路SPn覆盖掉还没有进行后解码的UBE句法数据。
在多个所选择的后解码电路(例如,PDm和PDs,1≦m≦M,1≦s≦M,且m≠s)读用于一个句法解析电路(例如,SPn,1≦n≦N)的环形缓存器(例如,BFn,1≦n≦N)的另一种情况下,将句法解析电路SPn的写指针wptr更新至后解码电路PDm和PDs中的每个,以作为竞赛模式环形缓存器访问控制方案所使用的实际写指针wptr,并将后解码电路PDm和PDs的读指针rptr中的一个更新至句法解析电路SPn,以作为竞赛模式环形缓存器访问控制方案所使用的实际读指针rptr。例如,在当前所选择的从环形缓存器中读出数据的多个后解码电路的读指针中,将读指针更新至将数据写入到该环形缓存器内的句法解析电路,该读指针与读取具有最小行索引值的编码块行的UBE句法数据部分相关。假设选择后解码电路PDm来处理视频帧的第一编码块行(例如,CTU行0)的UBE句法数据部分,选择后解码电路PDs来处理同一视频帧的第二编码块行(例如,CTU行2)的UBE句法数据部分,且第一编码块行的行索引值小于第二编码块行的行索引值。将后解码电路PDm的读指针rptr更新至句法解析电路SPn,以作为竞赛模式环形缓存器访问控制方案所使用的实际读指针rptr。
关于后解码电路PDm和PDs,其比较其读指针rptr与接收到的写指针wptr。当读指针rptr追上写指针wptr时(例如,rptr==wptr),后解码电路PDm/PDs停止从该环形缓存器中读取UBE句法数据部分的数据。这样,竞赛模式环形缓存器访问控制方案防止后解码电路PDm/PDs从环形缓存器中获取错误的UBE句法数据。关于句法解析电路SPn,其比较其写指针wptr与接收到的读指针rptr。当写指针wptr与读指针rptr之间的差达到阈值(例如,wptr==rptr-1)时,句法解析电路SPn将停止将UBE句法数据部分的数据写入到环形缓存器BFn中。这样,竞赛模式环形缓存器访问控制方案防止句法解析电路SPn覆盖掉还没有进行后解码的UBE句法数据。
当视频源具有超高分辨率时,一个视频帧的输入比特流的音频/视频多路解复用(A/V demultiplexing)所生成的视频比特流数据的数量可能也很大。采用比特流缓存器121完全容纳具有超高分辨率的视频帧的所有视频比特流数据无法避免地需要大容量的缓存器。为了减低存储空间的使用,本发明进一步提出使用环形缓存器来实现由音频/视频多路解复用电路104和句法解析电路SP1-SPN来访问的比特流缓存器121。相似地,写指针wptr和读指针rptr之间使用竞赛模式,以控制该比特流缓存器121的访问(读/写)。在本示例中,将音频/视频多路解复用电路104的写指针wptr更新至句法解析电路SP1-SPN中的每个,以作为竞赛模式环形缓存器访问控制方案所使用的实际写指针wptr,并将句法解析电路SP1-SPN的读指针rptr中的一个更新至音频/视频多路解复用电路104,以作为竞赛模式环形缓存器访问控制方案所使用的实际读指针rptr。例如,在当前处于活动状态以从比特流缓存器121中读出数据的多个句法解析电路的读指针中,该比特流缓存器121为环形缓存器,将读指针更新至音频/视频多路解复用电路104,该读指针与读取具有最小行索引值的编码块行的比特流部分相关。关于句法解析电路SP1-SPN中的每个,其比较其读指针rptr与接收到的写指针wptr。当读指针rptr追上写指针wptr时(即,rptr==wptr),句法解析电路停止从该比特流缓存器121中读取比特流部分的数据。这样,竞赛模式环形缓存器访问控制方案防止句法解析电路从比特流缓存器121中获取错误的视频比特流数据。关于音频/视频多路解复用电路104,其比较其写指针wptr与接收到的读指针rptr。当写指针wptr与读指针rptr之间的差达到阈值(例如,wptr==rptr-1)时,音频/视频多路解复用电路104将停止将视频比特流数据写入到比特流缓存器121中。这样,竞赛模式环形缓存器访问控制方案防止音频/视频多路解复用电路104覆盖掉还没有进行句法解析的视频比特流数据。
在图1所示的实施例中,两阶段句法解析方案的句法解析器106具有在其内部实现的多个句法解析电路SP1-SPN,两阶段句法解析方案的后解码器108具有在其内部实现的多个后解码电路PD1-PDM。但是,此仅用作示意目的,不用于限制本发明。在第一个可选的设计中,可以修改两阶段句法解析方案的句法解析器106,以使其仅具有单个句法解析电路SP1,两阶段句法解析方案的后解码器108仍具有在其内部实现的多个后解码电路PD1-PDM。在第二个可选的设计中,两阶段句法解析方案的句法解析器106仍在其内部实现的多个句法解析电路SP1-SPN,两阶段句法解析方案的后解码器108仍仅具有单个后解码电路PD1。这些可选设计均将落入本发明的范围内。
所属领域的技术人员易知,可在保持本发明的教示内容的同时对装置及方法作出诸多修改及变动。因此,以上公开内容应被视为仅受随附权利要求书的范围的限制。

Claims (17)

1.一种视频处理系统,包括:
存储设备,包括:
第一缓存器;以及
第二缓存器;
多路解复用电路,用于接收输入比特流,并对所述输入比特流执行多路解复用操作,以将视频比特流写入到所述第一缓存器,并将存储在所述第一缓存器的所述视频比特流的多个比特流部分的多个起点写入到所述第二缓存器,其中每个起点表示存储在所述第一缓存器内的对应比特流部分的起始地址;
句法解析器,包括:
多个句法解析电路:以及
句法解析控制电路,用于从所述第二缓存器中发出第一起点,将所述发出的第一起点分配给从所述多个句法解析电路中选择的空闲的第一句法解析电路,并触发选择的所述第一句法解析电路根据所述发出的第一起点开始句法解析所述第一缓存器中读出的第一比特流部分;
其中所述存储设备还包括:
第三缓存器,用于分别存储从用于所述多个比特流部分的所述句法解析器输出的多个通用二进制熵句法数据部分,其中每个所述比特流部分包含算术编码的句法数据,且每个所述二进制熵句法数据部分不包含算术编码的句法数据;
所述视频处理系统还包括后解码器,所述后解码器包括:
多个后解码电路,每个所述后解码电路包括通用二进制熵句法解码器,所述通用二进制熵句法解码器用于对从所述第三缓存器中读出的一个通用二进制熵句法数据部分执行通用二进制熵句法解码,以输出解码句法数据;以及
后解码控制电路,用于将第一通用二进制熵起点分配给从所述多个后解码电路中选择的空闲的第一后解码电路,并触发所述选择的第一后解码电路开始根据所述第一通用二进制熵起点后解码从所述第三缓存器中读出的第一通用二进制熵句法数据部分,其中所述第一通用二进制熵起点表示存储在所述第三缓存器内的所述第一通用二进制熵句法数据部分的起始地址;
其中,所述后解码控制电路包括计数器,所述计数器用于在响应每次完成一个比特流部分的句法解析时所述句法解析控制电路所生成的一个通知信号时,更新计数值;
所述后解码控制电路参考所述计数器所维护的所述计数值来将所述第一通用二进制熵起点分配给第一后解码电路,并触发选定的所述第一后解码电路。
2.如权利要求1中所述的视频处理系统,其特征在于,所述句法解析控制电路进一步用于从所述第二缓存器中发出第二起点,将所述发出的第二起点分配给从所述多个句法解析电路中选择的空闲的第二句法解析电路,并触发所述选择的第二句法解析电路根据所述发出的第二起点开始句法解析所述第一缓存器中读出的第二比特流部分;所述第一比特流部分的句法解析的处理时间与所述第二比特流部分的句法解析的处理时间重叠。
3.如权利要求2中所述的视频处理系统,其特征在于,所述第一比特流部分包含帧的第一编码块行的编码数据,且所述第二比特流部分包含同一帧的第二编码块行的编码数据。
4.如权利要求2中所述的视频处理系统,其特征在于,所述句法解析控制电路进一步用于监测所述第一比特流部分的句法解析以及所述第二比特流部分的句法解析,并在所述第二比特流部分的句法解析所需要的空间上相邻的数据尚未从所述第一比特流部分的句法解析中获取时,停止所述第二比特流部分的句法解析。
5.如权利要求1中所述的视频处理系统,其特征在于,所述第一缓存器为环形缓存器;所述多路解复用电路进一步用于将写指针更新到每个所述句法解析电路,其中所述写指针表示将所述视频比特流的数据写入到所述第一缓存器内的当前写地址;
所述第一句法解析电路进一步用于在所述第一句法解析电路所使用的读指针追上所述写指针时停止所述第一比特流部分的句法解析,其中,所述读指针表示从所述第一缓存器中读取所述第一比特流部分的数据的当前读地址。
6.如权利要求1中所述的视频处理系统,其特征在于,所述第一缓存器为环形缓存器;
所述第一句法解析电路进一步用于将读指针更新到所述多路解复用电路,其中,所述读指针表示从所述第一缓存器中读取所述第一比特流部分的数据的当前读地址;
所述多路解复用电路进一步用于在所述多路解复用电路所使用的写指针与所述读指针之间的差达到阈值时停止将所述视频比特流写入到所述第一缓存器内,其中所述写指针表示将所述视频比特流写入到所述第一缓存器内的当前写地址。
7.如权利要求1中所述的视频处理系统,其特征在于,所述后解码控制电路进一步用于将第二通用二进制熵起点分配给从所述多个后解码电路中选择的空闲的第二后解码电路,并触发所述选择的第二后解码电路开始根据所述第二通用二进制熵起点后解码从所述第三缓存器中读出的第二通用二进制熵句法数据部分,其中所述第二通用二进制熵起点表示存储在所述第三缓存器内的所述第二通用二进制熵句法数据部分的起始地址;
所述第一通用二进制熵句法数据部分的后解码的处理时间与所述第二通用二进制熵句法数据部分的后解码的处理时间重叠。
8.如权利要求7中所述的视频处理系统,其特征在于,所述第一通用二进制熵句法数据部分包含帧的第一编码块行的通用二进制熵句法数据,且所述第二通用二进制熵句法数据部分包含同一帧的第二编码块行的通用二进制熵句法数据。
9.如权利要求7中所述的视频处理系统,其特征在于,所述后解码控制电路进一步用于监测所述第一通用二进制熵句法数据部分的后解码以及所述第二通用二进制熵句法数据部分的后解码,并在所述第二通用二进制熵句法数据部分的后解码所需要的空间上相邻的数据尚未从所述第一通用二进制熵句法数据部分的后解码中获取时,停止所述第二通用二进制熵句法数据部分的后解码。
10.如权利要求1中所述的视频处理系统,其特征在于,所述第三缓存器包括多个环形缓存器,分别用于存储所述多个句法解析电路所生成的通用二进制熵句法数据部分;
所述第一句法解析电路进一步用于将写指针更新到所述第一后解码电路;
当读指针追上所述写指针时,所述第一后解码电路进一步用于停止从存储有所述第一句法解析电路所生成的所述第一通用二进制熵句法数据部分的环形缓存器中读出所述第一通用二进制熵句法数据部分的数据,其中,所述读指针表示从所述环形缓存器中读取通用二进制熵句法数据的当前读地址,所述写指针表示将通用二进制熵句法数据写入到所述环形缓存器内的当前写地址。
11.如权利要求1中所述的视频处理系统,其特征在于,所述第三缓存器包括多个环形缓存器,分别用于存储所述多个句法解析电路所生成的多个通用二进制熵句法数据部分;
所述第一后解码电路进一步用于将读指针更新到所述第一句法解析电路;
当写指针与所述读指针之间的距离达到阈值时,所述第一句法解析电路进一步用于停止将所述第一通用二进制熵数据部分的数据写入到环形缓存器中,其中,所述读指针表示从所述环形缓存器中读取通用二进制熵句法数据的当前读地址,所述写指针表示将通用二进制熵句法数据写入到所述环形缓存器内的当前写地址。
12.如权利要求1中所述的视频处理系统,其特征在于,所述存储设备进一步包括:
第四缓存器,用于分别存储用于所述多个通用二进制熵句法数据部分的所述后解码器所输出的多个重构帧部分;以及
所述视频处理系统进一步包括:
显示控制电路,用于参考所述计数值将存储在所述第四缓存器内的重构帧的起始地址分配给显示引擎,并触发所述显示引擎开始显示所述重构帧。
13.一种视频处理系统,包括:
存储设备,包括第一缓存器和第二缓存器;
多路解复用电路,用于接收输入比特流,并对所述输入比特流执行多路解复用操作,以将视频比特流写入到所述第一缓存器;
句法解析器,用于对所述视频比特流的多个比特流部分执行句法解析,以分别生成多个通用二进制熵句法数据部分,并将所述多个通用二进制熵句法数据部分写入到所述第二缓存器,其中每个所述比特流部分包含算术编码的句法数据,每个所述通用二进制熵句法数据部分不包含算术编码句法数据;以及
后解码器,所述后解码包括:
多个后解码电路,每个所述后解码电路包括通用二进制熵句法解码器,所述通用二进制熵句法解码器用于对从所述第二缓存器中读出的一个通用二进制熵句法数据部分执行通用二进制熵句法解码,以输出解码句法数据;
后解码控制电路,用于将第一通用二进制熵起点分配给从所述多个后解码电路中选择的空闲的第一后解码电路,并触发所述选择的第一后解码电路开始根据所述第一通用二进制熵起点后解码从所述第二缓存器中读出的第一通用二进制熵句法数据部分,其中所述第一通用二进制熵起点表示存储在所述第二缓存器内的所述第一通用二进制熵句法数据部分的起始地址;
其中,所述后解码控制电路包括计数器,所述计数器用于在响应每次完成一个比特流部分的句法解析时所述句法解析控制电路所生成的一个通知信号时,更新计数值;
所述后解码控制电路参考所述计数器所维护的所述计数值来将所述第一通用二进制熵起点分配给第一后解码电路,并触发选定的所述第一后解码电路。
14.如权利要求13中所述的视频处理系统,其特征在于,所述后解码控制电路进一步用于将第二通用二进制熵起点分配给从所述多个后解码电路中选择的空闲的第二后解码电路,并触发所述选择的第二后解码电路开始根据所述第二通用二进制熵起点后解码从所述第二缓存器中读出的第二通用二进制熵句法数据部分,其中所述第二通用二进制熵起点表示存储在所述第二缓存器内的所述第二通用二进制熵句法数据部分的起始地址;
所述第一通用二进制熵句法数据部分的后解码的处理时间与所述第二通用二进制熵句法数据部分的后解码的处理时间重叠。
15.如权利要求14中所述的视频处理系统,其特征在于,所述第一通用二进制熵句法数据部分包含帧的第一编码块行的通用二进制熵句法数据,且所述第二通用二进制熵句法数据部分包含同一帧的第二编码块行的通用二进制熵句法数据。
16.如权利要求14中所述的视频处理系统,其特征在于,所述后解码控制电路进一步用于监测所述第一通用二进制熵句法数据部分的后解码以及所述第二通用二进制熵句法数据部分的后解码,并在所述第二通用二进制熵句法数据部分的后解码所需要的空间上相邻的数据未从所述第一通用二进制熵句法数据部分的后解码中获取时,停止所述第二通用二进制熵句法数据部分的后解码。
17.如权利要求13中所述的视频处理系统,其特征在于,所述存储设备进一步包括:
第三缓存器,用于分别存储用于所述多个通用二进制熵句法数据部分的所述后解码器所输出的多个重构帧部分;
所述视频处理系统进一步包括:
显示控制电路,用于参考所述计数值将存储在所述第三缓存器内的重构帧的起始地址分配给显示引擎,并触发所述显示引擎开始显示所述重构帧。
CN201711366905.0A 2016-07-12 2017-12-18 一种视频处理系统 Expired - Fee Related CN109218822B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662361096P 2016-07-12 2016-07-12
US15/644,815 2017-07-09
US15/644,815 US20180020228A1 (en) 2016-07-12 2017-07-09 Video processing system with multiple syntax parsing circuits and/or multiple post decoding circuits

Publications (2)

Publication Number Publication Date
CN109218822A CN109218822A (zh) 2019-01-15
CN109218822B true CN109218822B (zh) 2021-09-21

Family

ID=60942170

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711366905.0A Expired - Fee Related CN109218822B (zh) 2016-07-12 2017-12-18 一种视频处理系统

Country Status (3)

Country Link
US (1) US20180020228A1 (zh)
CN (1) CN109218822B (zh)
TW (1) TWI675584B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105468659B (zh) * 2014-09-28 2019-01-04 阿里巴巴集团控股有限公司 一种数据同步方法及装置
CN105187845B (zh) * 2015-08-10 2018-07-03 珠海全志科技股份有限公司 视频数据解码装置及解码方法
US11606575B2 (en) * 2018-07-10 2023-03-14 Qualcomm Incorporated Multiple history based non-adjacent MVPs for wavefront processing of video coding
JP6982253B2 (ja) * 2018-10-31 2021-12-17 日本電信電話株式会社 復号装置、符号化装置、復号方法、符号化方法、及びプログラム
CN113767624A (zh) * 2019-03-08 2021-12-07 瑞典爱立信有限公司 提供相关/独立分区编码/解码的方法和有关装置
US20220224927A1 (en) * 2021-01-14 2022-07-14 Samsung Electronics Co., Ltd. Video decoding apparatus and video decoding method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101002268A (zh) * 2004-06-11 2007-07-18 索尼株式会社 数据处理设备、数据处理方法、程序、程序记录介质、数据记录介质、以及数据结构

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671292B1 (en) * 1999-06-25 2003-12-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for adaptive voice buffering
EP1355265B1 (en) * 2002-04-15 2016-04-13 Canon Kabushiki Kaisha Colour data buffering for colour printing
US7242736B2 (en) * 2003-05-15 2007-07-10 Sun Microsystems, Inc. Data transfer
US7301485B2 (en) * 2003-10-29 2007-11-27 Nec Corporation Decoding device or encoding device having intermediate buffer interposed between an arithmetic code decoder or encoder and a reverse binarization device or binarization device
US20100043038A1 (en) * 2008-08-14 2010-02-18 Zoran Corporation System and method for efficient video and audio instant replay for digital television
US9973768B2 (en) * 2010-03-16 2018-05-15 Texas Instruments Incorporated CABAC decoder with decoupled arithmetic decoding and inverse binarization
US20120251085A1 (en) * 2011-03-31 2012-10-04 Hown Cheng Video multiplexing
KR101718488B1 (ko) * 2012-01-20 2017-03-21 지이 비디오 컴프레션, 엘엘씨 병렬 처리, 전송 디멀티플렉서 및 비디오 비트스트림을 허용하는 코딩 개념
HUE031183T2 (en) * 2012-04-13 2017-06-28 Ge Video Compression Llc Scalable stream and network entity
US20170064321A1 (en) * 2015-08-27 2017-03-02 Stmicroelectronics International N.V. System and method for decoding a video digital data stream using a table of range values and probable symbols

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101002268A (zh) * 2004-06-11 2007-07-18 索尼株式会社 数据处理设备、数据处理方法、程序、程序记录介质、数据记录介质、以及数据结构

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于双环形缓冲器区的数据采集系统设计;杨泽林等;《仪表技术与传感器》;20161231(第11期);全文 *

Also Published As

Publication number Publication date
TW201806385A (zh) 2018-02-16
US20180020228A1 (en) 2018-01-18
CN109218822A (zh) 2019-01-15
TWI675584B (zh) 2019-10-21

Similar Documents

Publication Publication Date Title
CN109218822B (zh) 一种视频处理系统
US11705924B2 (en) Low-latency encoding using a bypass sub-stream and an entropy encoded sub-stream
US10587286B1 (en) Methods and devices for handling equiprobable symbols in entropy coding
US6842124B2 (en) Variable length decoder
US8781000B2 (en) Dynamic video data compression
US7286066B1 (en) Acceleration of bitstream decoding
US8462841B2 (en) System, method and device to encode and decode video data having multiple video data formats
US20030152148A1 (en) System and method for multiple channel video transcoding
US7800519B2 (en) Method and apparatus for compressing and decompressing data
JPH08116266A (ja) 符号化方法、符号化装置、符号化器、コーディング装置、復号方法、復号装置、復号器、エントロピー復号器、及び初期化方法
US20070115154A1 (en) Method of decoding bin values using pipeline architecture and decoding device therefor
US7728742B2 (en) Method and apparatus for compressing and decompressing data
US7298297B1 (en) Hardware-implemented Huffman decoder
CN109246475B (zh) 一种视频处理系统
US8443413B2 (en) Low-latency multichannel video port aggregator
US8194753B2 (en) Apparatus processing video stream
US6820087B1 (en) Method and apparatus for initializing data structures to accelerate variable length decode
US9137541B2 (en) Video data cache
US6313766B1 (en) Method and apparatus for accelerating software decode of variable length encoded information
US9712848B2 (en) Frame buffer compression using separate aggregation of fixed-length and variable-length components of codewords
US11431978B2 (en) Video decoding method and video decoding device for improving decoding efficiency
KR20170069074A (ko) 디코더의 동작 방법, 및 상기 디코더를 포함하는 어플리케이션 프로세서의 동작 방법
US7675972B1 (en) System and method for multiple channel video transcoding
CN109218725B (zh) 一种视频编码器、视频解码器及视频处理系统
US11669281B1 (en) Count circuit for symbol statistics

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210921

CF01 Termination of patent right due to non-payment of annual fee