CN102595240A - 缓冲装置与相应的缓冲方法 - Google Patents

缓冲装置与相应的缓冲方法 Download PDF

Info

Publication number
CN102595240A
CN102595240A CN2012100126848A CN201210012684A CN102595240A CN 102595240 A CN102595240 A CN 102595240A CN 2012100126848 A CN2012100126848 A CN 2012100126848A CN 201210012684 A CN201210012684 A CN 201210012684A CN 102595240 A CN102595240 A CN 102595240A
Authority
CN
China
Prior art keywords
cutting apart
bit stream
data
buffer
apart
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.)
Granted
Application number
CN2012100126848A
Other languages
English (en)
Other versions
CN102595240B (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.)
Xueshan Technology Co.,Ltd.
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 CN102595240A publication Critical patent/CN102595240A/zh
Application granted granted Critical
Publication of CN102595240B publication Critical patent/CN102595240B/zh
Active 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/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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/174Methods 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 an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/176Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory

Abstract

本发明提供一种缓冲装置,用以缓冲一多重分割视讯/影像比特流。该多重分割视讯/影像比特流传送多个压缩帧,且每一压缩帧具有多个分割。该缓冲装置包含有一第一比特流缓冲器与一第二比特流缓冲器。该第一比特流缓冲器用以缓冲一特定压缩帧之该多个分割中的一第一分割的资料。该第二比特流缓冲器用以缓冲该特定压缩帧之该多个分割中的一第二分割的资料。本发明的缓冲装置能够提高解码器的解码效率。此外,本发明还提供相应的缓冲方法。

Description

缓冲装置与相应的缓冲方法
技术领域
本发明有关于视讯/影像处理,尤指一种用以缓冲多重分割视讯/影像比特流(multi-partition video/image bitstream)的缓冲装置与其相应的缓冲方法。
背景技术
VP8是一种由谷歌公司
Figure BDA0000131232030000011
所发表的一种开放的视讯压缩格式,如同许多现今的视讯压缩机制,VP8亦是基于将帧(frame)解构为内含像素的正方形子区块、使用之前重建的区块来对这些子区块进行预测(prediction),并采用离散余弦转换(discrete cosine transform,DCT)来针对这些预测结果进行调整(以及针对未预测的区块(unpredicted block)进行合成(synthesis))。然而,在特殊的案例中,VP8则会使用沃尔什-哈达马德转换(Walsh-Hadamard transform,WHT),而非一般采用的离散余弦转换。
WebP是谷歌公司根据VP8所发展的一种影像格式,进一步来说,WebP是基于VP8的帧内编码(intra-frame coding),并采用基于资源交换档案标准格式(resource interchange file format,RIFF)的容器(container),此外,WebP被公开为一种新的开放标准,其针对摄影图像提供有耗损的压缩(lossy compression)。在90万张网页影像的大规模研究中,于相似的影像品质之下,WebP格式的影像相较于联合影像专家小组(Joint Photographic Experts Group,JPEG)格式的影像,其档案大小缩小了38%,因此,网页管理者、网页开发者以及浏览器开发者便可使用WebP格式来提供更小且更好看的影像,进而改善使用者的网页浏览。
依据VP8/WebP的规格,VP8/WebP解码器的输入会是一连串的压缩帧(compressed frame),而其输入次序会与这些帧于时间轴上的次序一致。此外,每一压缩帧中会具有多个分割(partition),由于VP8/WebP比特流是用来传送压缩帧(每一压缩帧中会具有多个分割),因此如何有效率地缓冲并解码一个多重分割VP8/WebP比特流中的每一压缩帧便成为此一技术领域中的一项重要课题。
发明内容
为了解决解码效率不高的问题,本发明揭露了缓冲一多重分割视讯/影像比特流的缓冲装置与其相关方法,以解决上述问题。
本发明揭示了一种用以缓冲一多重分割视讯/影像比特流之缓冲装置。该多重分割视讯/影像比特流传送多个压缩帧,且每一压缩帧具有多个分割。该缓冲装置包含有一第一比特流缓冲器以及一第二比特流缓冲器。该第一比特流缓冲器用以缓冲一特定压缩帧之该多个分割中的一第一分割的资料。该第二比特流缓冲器用以缓冲该特定压缩帧之该多个分割中的一第二分割的资料。
本发明还揭示了一种用以缓冲一多重分割视讯/影像比特流之方法。该多重分割视讯/影像比特流传送多个压缩帧,且每一压缩帧具有多个分割。该方法包含有:使用一第一比特流缓冲器,来缓冲一特定压缩帧之该多个分割中的一第一分割的资料;以及使用一第二比特流缓冲器,来缓冲该特定压缩帧之该多个分割中的一第二分割的资料。
本发明进一步揭示了一种用以缓冲一多重分割视讯/影像比特流之缓冲装置。该多重分割视讯/影像比特流传送多个压缩帧,且每一压缩帧具有多个分割。该缓冲装置包含有一比特流缓冲器以及一预取电路。该比特流缓冲器用以缓冲一特定压缩帧之该多个分割的资料。该预取电路包含有一储存单元以及一预取单元。该预取单元用以于一解码装置正在解码该特定压缩帧之该多个分割中之一第一分割时,从该比特流缓冲器预取该特定压缩帧之该多个分割中之一第二分割的资料,并将所预取的资料储存至该储存单元,其中当该解码装置开始解码该第二分割时,储存于该储存单元之所预取的资料会被该解码装置所读取。
相较于现有技术,本发明所揭示的缓冲装置及缓冲方法采用了专门用来缓冲个别的分割之部份资料的多个比特流缓冲器,因此可避免频繁地释放已缓冲的资料及载入要被处理的资料,使得解码效能改善。
附图说明
图1为被本发明所揭示之缓冲装置所处理之一压缩帧中的多个分割的示意图。
图2为如何将压缩帧中的转换系数封装至4个分割的示意图。
图3为本发明视讯/影像解码系统之第一实施例的示意图。
图4为本发明视讯/影像解码系统之第二实施例的示意图。
图6为本发明视讯/影像解码系统之第三实施例的示意图。
图5为图3所示之缓冲装置的另一种设计的示意图。
图7为本发明视讯/影像解码系统之第四实施例的示意图。
具体实施方式
在说明书及权利要求当中使用了某些词汇来指称特定元件。所属技术领域的技术人员应可理解,制造商可能会用不同名词来称呼同一个元件。本说明书及权利要求并不以名称的差异作为区分元件的方式,而是以元件在功能上的差异作为区分准则。在通篇说明书及权利要求中所提及的“包含”为开放式用语,故应解释成“包含但不限定于”。此外,“耦接”一词在此包含任何直接及间接的电气连接手段。通过以下的实施例的叙述并配合全文的图1至图3说明本发明,但以下叙述中的装置、元件与方法、步骤乃用以解释本发明,而不应当用来限制本发明
依据VP8/WebP的规格,VP8/WebP解码器的输入会是一连串的压缩帧,且每一压缩帧会具有2~9个分割,而这些分割均是开始及结束于比特组边界(byteboundary)。一压缩帧中的导引分割(亦即第一个被传送的分割)会具有两个子区段(subsection):适用于整个压缩帧的标头资讯(header information)以及关于每一宏区块的预测资讯(per-macroblock prediction information)(其包含有压缩帧中每一宏区块的预测资讯)。对于该压缩帧中的其余分割(1个、2个、4个或8个分割),其包含残留讯号(residue signal)的转换系数(例如DCT/WHT系数)。
请参阅图1,其为被本发明所揭示之缓冲装置所处理之一压缩帧中的多个分割的示意图。压缩帧100是透过一VP8/WebP比特流来传送,因此会包含有依序传送的N个分割102_1~102_N,换言之,分割102_1是压缩帧100中的导引分割,以及分割102_N是压缩帧100中的最后一个分割。分割102_1会包含有适用于整个压缩帧100的标头资讯,且另会包含同一压缩帧100中每一个宏区块的预测资讯。对于位于分割102_1之后的其余分割102_2~102_N中的每一分割来说,其会包含有残余量的转换系数(例如DCT/WHT系数)。当压缩帧100包含有一个以上的转换系数分割时,除了最后一个分割以外的每一分割的大小(以比特组为单位)会出现在紧接于上述的导引分割102_1之后的比特流中,而每一个分割大小(partition size)由长度为3个比特组的资料来加以记录,举例来说,图1所示之长度为3个比特组的分割大小PS2用以指示出分割102_2的大小,以及图1所示之长度为3个比特组的分割大小PS3用以指示出分割102_3的大小。这些分割大小使得解码装置可以直接存取记录着离散余弦转换系数/沃尔什-哈达马德转换系数的所有分割,因而致使解码装置可以对这些转换系数进行平行处理(parallel processing)。
然而,VP8/WebP会将宏区块行(MB row)的转换系数(DCT/WHT)封装于个别的分割中。请参阅图2,其为如何将压缩帧中的转换系数封装至4个分割的示意图。如图所示,示范性的压缩帧200具有许多宏区块行MB_0~MB_15。宏区块行MB_0、MB_4、MB_8与MB_12的转换系数会被封装于分割Partition_1中,宏区块行MB_1、MB_5、MB_9与MB_13的转换系数会被封装于分割Partition_2中,宏区块行MB_2、MB_6、MB_10与MB_14的转换系数会被封装于分割Partition_3中,以及宏区块行MB_3、MB_7、MB_11与MB_15的转换系数会被封装于分割Partition_4中。由于连续的两个宏区块行的转换系数并不会封装于同一分割之中,一个宏区块的解码操作便需要读取来自不同分割的资料。假若所使用之比特流缓冲器并没有足够的储存空间来缓冲整个压缩帧的全部资料,则解码器所需要的一些资料便无法立即从比特流缓冲器中得到,因此,比特流缓冲器便需要先释放一个分割的已缓冲资料,接着再载入解码器所需要之位于另一分割中的资料。
然而,不同分割之间的切换会因为所要的资料的载入时间而降低了解码速度,因此,为了改善多重分割VB8/WebP比特流中每一压缩帧的解码效率,本发明便揭示了一种创新的缓冲器管理与控制机制。进一步的细节将于下详述。
图3为本发明视讯/影像解码系统之第一实施例的示意图。视讯/影像解码系统300包含有一缓冲装置302以及一解码装置304。缓冲装置302是用以缓冲一多重分割视讯/影像比特流BS_IN,其传送多个压缩帧,且每一压缩帧具有多个分割。于本实施例中,缓冲装置302包含有多个比特流缓冲器(bitstreambuffer)312_1~312_N、一缓冲控制器(buffer controller)314以及一多工器(multiplexer)315。比特流缓冲器312_1~312_N是用以分别缓冲图1所示之分割102_1~102_N的资料,而比特流资料是依据写入指标(writepointer)WPTR_1~WPTR_N而储存至比特流缓冲器312_1~312_N,以及比特流资料是依据读取指标(read pointer)RWPTR_1~RPTR_N而自比特流缓冲器312_1~312_N中读取出来,更进一步来说,写入指标WPTR_1会控制标头资讯/关于每一宏区块的预测资讯储存至比特流缓冲器312_1的写入位址(writeaddress),以及读取指标RPTR_1会控制分割102_1之已缓冲的标头资讯/关于每一宏区块的预测资讯从比特流缓冲器312_1中读取出来的读取位址(readaddress);写入指标WPTR_2会控制标头资讯/关于每一宏区块的预测资讯储存至比特流缓冲器312_2的写入位址,以及读取指标RPTR_2会控制分割102_2之已缓冲的标头资讯/关于每一宏区块的预测资讯从比特流缓冲器312_2中读取出来的读取位址;以及写入指标WPTR_N会控制标头资讯/关于每一宏区块的预测资讯储存至比特流缓冲器312_N的写入位址,以及读取指标RPTR_N会控制分割102_N之已缓冲的标头资讯/关于每一宏区块的预测资讯从比特流缓冲器312_N中读取出来的读取位址。
于本实施例中,比特流缓冲器312_1~312_N可以是专门用来分别缓冲分割102_1~102_N之资料的连续/不连续的环形缓冲器(continuous/discontinuous ringbuffer),以及当一环形缓冲器具有可使用的储存空间(即,写入指标尚未追上读取指标)时,可允许资料被馈入至该环形缓冲器。于一设计范例中,缓冲控制器314是用来同时监控所有的比特流缓冲器312_1~312_N的写入指标WPTR_1~WPTR_N以及写入指标RPTR_1~RPTR_N,因此,当缓冲控制器314侦测到任一比特流缓冲器具有可用储存空间来缓冲尚未被缓冲的资料时,缓冲控制器314便调整相对应的写入指标,并允许尚未被缓冲的资料可被馈入至该比特流缓冲器。
于另一设计范例中,缓冲控制器314仅用来监控所缓冲之资料正在进行解码之目前使用中的比特流缓冲器的写入指标与读取指标,因此,当缓冲控制器314侦测到目前使用中的比特流缓冲器具有可用储存空间来缓冲尚未被缓冲的资料时,缓冲控制器314便调整相对应的写入指标,并允许尚未被缓冲的资料可被馈入至目前使用中的比特流缓冲器。
于上述的设计范例中,一特定比特流缓冲器之一读取指标以及一写入指标是用以决定/侦测该特定比特流缓冲器是满的或空的,或者用以决定/侦测该特定比特流缓冲器中具有多少可用的储存空间,然而,此仅作为范例说明,而非用以作为本发明的限制,采用其它可以决定/侦测特定比特流缓冲器是满的或空的或者决定/侦测特定比特流缓冲器中上具有多少可用的储存空间的手段亦是可行的。
对于解码装置304来说,其包含有多个比特流直接存储(direct memory access,DMA)控制器316、317以及多个桶形移位器(barrel shifter)318、319。比特流直接存储控制器316是透过直接存储的方式,来将已缓冲的比特流资料(即标头资讯/关于每一宏区块的预测资讯)由比特流缓冲器312_1传送至桶形移位器318,而桶形移位器318则会分析(parse)由前端的比特流直接存储控制器316所提供的比特流资料。比特流直接存储控制器316是透过直接存储的方式,来将已缓冲的比特流资料(亦即转换系数)由多个比特流缓冲器312_2~312_N的其中之一传送至桶形移位器319,而桶形移位器319则会分析由前端的比特流直接存储控制器317所提供的比特流资料。如此一来,图3所示之解码装置304便可同时对两个分割进行解码。
由于多个转换系数分割(亦即分割102_2~102_N)中仅允许一个分割可被解码装置304所解码,因此,缓冲装置302便利用多工器315来选取比特流缓冲器312_2~312_N的其中之一,以作为要被比特流直接存储控制器317所存取的资料来源,举例来说,当分割102_2的系数资料需要在一第一时间点被处理时,多工器315便将比特流缓冲器312_2耦接至比特流直接存储控制器317,然而,当分割102_3的系数资料需要在一第二时间点被处理时,多工器315便将比特流缓冲器312_3耦接至比特流直接存储控制器317。若比特流缓冲器(例如环形缓冲器)312_2~312_N中的每一比特流缓冲器经由适当控制而于具有可用储存空间时便会缓冲要被解码的资料,则需要处理之系数资料便保证会存在于比特流缓冲器312_2~312_N之中,因此,缓冲装置302便不需要先释放一个分割之已缓冲的资料并接着载入另一分割之要被处理的资料,换言之,由于资料缓冲机制采用了专门用来缓冲个别的分割之部份资料(partial data)的多个比特流缓冲器,因此可避免频繁地释放已缓冲的资料及载入要被处理的资料,使得解码效能可大幅改善。
请注意,图3所示之电路组态仅是作为本发明的一个实施例,任何不违反本发明精神的设计变化均落入本发明的范畴,举例来说,只要缓冲装置中包含有多个比特流缓冲器来分别缓冲同一压缩帧中不同分割的资料,均符合本发明的精神。例如,于一设计变化中,缓冲装置302可经由修改而包含有:比特流缓冲器312_1以缓冲分割102_1的比特流资料、比特流缓冲器312_2~312_N中的至少一比特流缓冲器以缓冲分割102_2~102_N中至少其一的比特流资料,以及单一比特流缓冲器以缓冲分割102_2~102_N中其余的分割的比特流资料。于另一设计变化中,缓冲装置302可经由修改而包含有:比特流缓冲器312_2~312_N中至少两个比特流缓冲器以缓冲分割102_2~102_N中至少两个分割的比特流资料,以及单一比特流缓冲器以缓冲分割102_1的比特流资料以及分割102_2~102_N中其余的分割的比特流资料。这些设计变化同样可达到改善解码装置304之解码效能的目的。
解码装置304的解码效能可透过使用一个具有预取(prefetch)机制的缓冲装置而得到进一步的改善。请参阅图4,其为本发明视讯/影像解码系统之第二实施例的示意图。视讯/影像解码系统300与视讯/影像解码系统400之间的主要不同点在于:图4所示之缓冲装置402中具有一预取电路(prefetch circuit)404。于此一实施例中,预取电路404包含有一预取单元(prefetch unit)406以及一储存单元(storage unit)408。预取单元406用以于解码装置304正在解码一目前分割(current partition)时,从储存要被处理之后续分割(next partition)的系数资料的一比特流缓冲器中预取资料,并将所预取的资料储存至储存单元404,其中当解码装置304开始解码该后续分割时,储存于储存单元408中所预取的资料会被解码装置304所读取。储存单元408可以是解码装置304之一内部缓冲器(internalbuffer),因此,储存单元408的资料存取速度便会快于比特流缓冲器213_2~312_N中每一比特流缓冲器的资料存取速度,举例来说,储存单元408可以由一暂存器(register)或一静态随机存储器(static random access memory,SRAM)来加以实作。当解码装置304切换至解码该后续分割时,由于储存单元408中会储存着所预取的资料,因而可节省/降低从比特流缓冲器312_2~312_N的其中之一取得该后续分割的系数资料的所需时间,换言之,取得该后续分割的系数资料的所需时间会隐藏于该目前分割进行解码的时间之中,如此一来,预取电路404的使用确实可以加速整体的解码程序。
于图4所示之实施例中,预取机制是用来预取要被后端的解码装置所解码之后续分割的资料,然而,相同的概念亦可应用于预取要被多个比特流缓冲器的其中之一所缓冲之后续分割的资料。请参阅图5,其为图3所示之缓冲装置302的另一种设计的示意图。缓冲装置502包含有一预取电路504以及上述的比特流缓冲器312_1~312_N与多工器315。预取电路504会同时监控比特流缓冲器312_1~312_N之中正在缓冲一目前分割之系数资料的一比特流缓冲器以及比特流缓冲器312_1~312_N之中用以缓冲后续分割之系数资料的一个或多个比特流缓冲器,并且当比特流缓冲器312_1~312_N之中用以缓冲后续分割之系数资料的一个或多个比特流缓冲器具有可用储存空间来缓冲预取的资料时,预取电路504便会从前一级(例如网际网路(Internet)、中介软体(middleware)或碟片(disk))要求更多的资料。简而言之,当对应一目前分割的比特流缓冲器正在缓冲被后端的解码装置所处理之该目前分割的系数资料时,预取电路504会预取资料并将所预取的资料储存至对应后续分割的至少一比特流缓冲器,因此,透过所采用之预取机制的辅助,缓冲装置的比特流缓冲效率便可以获得改善。
于上述的实施例中,内含预取机制的缓冲装置具有专门用来缓冲个别的分割之资料的N个比特流缓冲器,其中N可以是任何大于1的正整数,然而,本案所揭示的预取机制亦可应用于一个具有用以缓冲多个分割之资料的单一比特流缓冲器的缓冲装置。
请参阅图6,其为本发明视讯/影像解码系统之第三实施例的示意图。视讯/影像解码系统600包含有一缓冲装置602以及一解码装置604,其中缓冲装置602具有单一比特流缓冲器612以及上述的预取电路404,此外,解码装置604具有单一比特流直接存储控制器616与单一桶形移位器618。于本实施例中,单一比特流缓冲器612并非是环形缓冲器,此外,压缩帧100的比特流大小(bitstream size)可能很大,因此,假若单一比特流缓冲器612的缓冲器大小(buffersize)小于压缩帧100的比特流大小,则单一比特流缓冲器612仅会缓冲压缩帧100的一部份资料(亦即,压缩帧100中的目前分割与后续分割的资料),虽然单一比特流缓冲器612可能需要于不同的分割之间进行切换,以便由前一级(例如网际网路、中介软体或碟片)载入所要的资料,不过,于后续分割的解码操作开始进行时,由于可立即地将后续分割中的所要资料馈入至解码装置604,故预取电路404的使用仍然可以改善解码装置604的解码效率。
再者,不论单一比特流缓冲器612的缓冲器大小为何(例如小于/大于/等于压缩帧100的比特流大小),预取电路404的使用仍然可以加速整体的解码程序。由于本领域一般技术人员于阅读以上的段落说明之后应可轻易地了解解码装置604与预取电路404的操作,故进一步的说明便在此省略以求简洁。
图7为本发明视讯/影像解码系统之第四实施例的示意图。视讯/影像解码系统700包含有上述的缓冲装置602与解码装置304,进一步来说,缓冲装置602具有单一比特流缓冲器612以及预取电路404,而解码装置304则具有多个比特流直接存储控制器316、317与多个桶形移位器318、319。相较于图6所示的解码装置604,图7所示之解码装置304可以同时对两个分割进行解码。比特流直接存储控制器316与桶形移位器318的组合是用以处理分割102_1中所包含的标头资讯与关于每一宏区块的预测资讯,而比特流直接存储控制器317与桶形移位器319的组合则是用以处理分割102_2~102_N中所包含的系数资料。同样地,虽然单一比特流缓冲器612可能需要于不同的分割之间进行切换,以便由前一级(例如网际网路、中介软体或碟片)载入所要的资料,不过,于后续分割的解码操作开始进行时,由于可立即地将后续分割中的所要资料馈入至解码装置304,故预取电路404的使用仍然可以改善解码装置304的解码效率。
再者,不论单一比特流缓冲器612的缓冲器大小为何(例如小于/大于/等于压缩帧100的比特流大小),预取电路404的使用仍然可以加速整体的解码程序。由于本领域一般技术人员阅读以上的段落说明之后应可轻易地了解解码装置304与预取电路404的操作,故进一步的说明便在此省略以求简洁。
请注意,上述的实施例是针对一多重分割VP8/WebP比特流的缓冲与解码,然而,此并非是本发明的限制,即,本案所揭示之缓冲机制及/或预取机制也可应用于处理任何基于多重分割的比特流(multi-partition based bitstream)。
上述的实施例仅用来列举本发明的实施方式,以及阐释本发明的技术特征,并非用来限制本发明的范畴。任何所属技术领域的技术人员根据本发明的精神而轻易完成的改变或均等性安排均属于本发明所主张的范围,本发明的权利范围应以权利要求为准。

Claims (20)

1.一种缓冲装置,其用于缓冲一多重分割视讯/影像比特流,该多重分割视讯/影像比特流传送多个压缩帧,每一压缩帧具有多个分割,该缓冲装置包含有:
一第一比特流缓冲器,用以缓冲一特定压缩帧之该多个分割中的一第一分割的资料;以及
一第二比特流缓冲器,用以缓冲该特定压缩帧之该多个分割中的一第二分割的资料。
2.如权利要求1所述的缓冲装置,其特征在于,该第一比特流缓冲器与该第二比特流缓冲器为专门用来分别缓冲该第一分割的资料与该第二分割的资料的环形缓冲器。
3.如权利要求1所述的缓冲装置,其特征在于,该第一分割的资料包含有适用于整个的该特定压缩帧之标头资讯以及该特定压缩帧中每一宏区块的预测资讯;以及该第二分割的资料包含有转换系数。
4.如权利要求1所述的缓冲装置,其特征在于,该特定压缩帧之该多个分割系依序地传送;该第一分割为依序传送之该多个分割中的一导引分割;以及该第二分割为在该导引分割之后所传送之其余的分割中的其中之一。
5.如权利要求1所述的缓冲装置,其特征在于,该第一分割的资料包含有转换系数,以及该第二分割的资料包含有转换系数。
6.如权利要求1所述的缓冲装置,其特征在于,该特定压缩帧之该多个分割系依序地传送;以及该第一分割与该第二分割为在一导引分割之后所传送之其余的分割中的两个分割。
7.如权利要求1所述的缓冲装置,其特征在于,该多重分割视讯/影像比特流为一VP8/WebP比特流。
8.如权利要求1所述的缓冲装置,其特征在于,该特定压缩帧之该多个分割系依序地传送,以及该缓冲装置另包含有:
一预取电路,用以于该第一比特流缓冲器正在缓冲该第一分割的资料时,预取资料并将所预取的资料储存至该第二比特流缓冲器。
9.如权利要求1所述的缓冲装置,其特征在于,该缓冲装置另包含有:
一预取电路,包含有:
一储存单元;以及
一预取单元,用以于一解码装置正在解码该第一分割时,从该第二比特流缓冲器预取资料并将所预取的资料储存至该储存单元,其中当该解码装置开始解码该第二分割时,储存于该储存单元之中的所预取的资料会被该解码装置所读取。
10.一种用以缓冲一多重分割视讯/影像比特流之方法,该多重分割视讯/影像比特流传送多个压缩帧,每一压缩帧具有多个分割,该方法包含有:
使用一第一比特流缓冲器,来缓冲一特定压缩帧之该多个分割中的一第一分割的资料;以及
使用一第二比特流缓冲器,来缓冲该特定压缩帧之该多个分割中的一第二分割的资料。
11.如权利要求10所述的方法,其特征在于,使用该第一比特流缓冲器的步骤包含:使用专门用来缓冲该第一分割的资料之一环形缓冲器;以及使用该第二比特流缓冲器的步骤包含:使用专门用来缓冲该第二分割的资料之一环形缓冲器。
12.如权利要求10所述的方法,其特征在于,该第一分割的资料包含有适用于整个的该特定压缩帧之标头资讯以及该特定压缩帧中每一宏区块的预测资讯;以及该第二分割的资料包含有转换系数。
13.如权利要求10所述的方法,其特征在于,该特定压缩帧之该多个分割系依序地传送;该第一分割为依序传送之该多个分割中的一导引分割;以及该第二分割为在该导引分割之后所传送之其余的分割中的其中之一。
14.如权利要求10所述的方法,其特征在于,该第一分割的资料包含有转换系数,以及该第二分割的资料包含有转换系数。
15.如权利要求10所述的方法,其特征在于,该特定压缩帧之该多个分割系依序地传送;以及该第一分割与该第二分割为在一导引分割之后所传送之其余的分割中的两个分割。
16.如权利要求10所述的方法,其特征在于,该多重分割视讯/影像比特流为一VP8/WebP比特流。
17.如权利要求10所述的方法,其特征在于,该特定压缩帧之该多个分割系依序地传送,以及该方法另包含有:
于该第一比特流缓冲器正在缓冲该第一分割的资料时,预取资料并将所预取的资料储存至该第二比特流缓冲器。
18.如权利要求10所述的方法,其特征在于,该方法另包含有:
于该第一分割之解码正在执行时,从该第二比特流缓冲器预取资料并缓冲所预取的资料,其中当该第二分割之解码开始执行时,已缓冲之所预取的资料会被读取。
19.一种用以缓冲一多重分割视讯/影像比特流之缓冲装置,该多重分割视讯/影像比特流传送多个压缩帧,每一压缩帧具有多个分割,该缓冲装置包含有:
一比特流缓冲器,用以缓冲一特定压缩帧之该多个分割的资料;以及
一预取电路,包含有:
一储存单元;以及
一预取单元,用以于一解码装置正在解码该特定压缩帧之该多个分割中之一第一分割时,从该比特流缓冲器预取该特定压缩帧之该多个分割中之一第二分割的资料,并将所预取的资料储存至该储存单元,其中当该解码装置开始解码该第二分割时,储存于该储存单元之中的所预取的资料会被该解码装置所读取。
20.如权利要求19所述的缓冲装置,其特征在于,该多重分割视讯/影像比特流为一VP8/WebP比特流。
CN201210012684.8A 2011-01-17 2012-01-16 视讯/影像解码系统与相应的视讯/影像解码方法 Active CN102595240B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161433272P 2011-01-17 2011-01-17
US61/433,272 2011-01-17
US13/304,372 2011-11-24
US13/304,372 US9497466B2 (en) 2011-01-17 2011-11-24 Buffering apparatus for buffering multi-partition video/image bitstream and related method thereof

Publications (2)

Publication Number Publication Date
CN102595240A true CN102595240A (zh) 2012-07-18
CN102595240B CN102595240B (zh) 2016-12-07

Family

ID=45098804

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210012684.8A Active CN102595240B (zh) 2011-01-17 2012-01-16 视讯/影像解码系统与相应的视讯/影像解码方法

Country Status (4)

Country Link
US (1) US9497466B2 (zh)
EP (1) EP2477401A3 (zh)
CN (1) CN102595240B (zh)
TW (1) TWI499282B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105812819A (zh) * 2015-01-21 2016-07-27 联发科技股份有限公司 在编码单元进行视讯编码时执行混成多重假设移动补偿预测的方法以及装置
CN109246475A (zh) * 2016-07-12 2019-01-18 联发科技股份有限公司 一种视频处理系统及视频接收系统

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120251085A1 (en) * 2011-03-31 2012-10-04 Hown Cheng Video multiplexing
CN102769755B (zh) * 2012-08-03 2015-02-25 龙芯中科技术有限公司 一种视频编解码访存优化系统和方法
KR101966064B1 (ko) * 2012-09-06 2019-04-05 삼성전자주식회사 파이프라인 디코딩을 위한 비트스트림 처리 장치 및 이를 포함하는 멀티미디어 장치
US9990298B2 (en) * 2014-05-12 2018-06-05 Western Digital Technologies, Inc System and method for caching solid state device read request results
US9853920B2 (en) * 2015-08-24 2017-12-26 Cisco Technology, Inc. Systems and methods for performing packet reorder processing
TWI565303B (zh) 2015-08-24 2017-01-01 晨星半導體股份有限公司 影像處理系統及影像處理方法
US11237708B2 (en) 2020-05-27 2022-02-01 Bank Of America Corporation Video previews for interactive videos using a markup language
US11461535B2 (en) 2020-05-27 2022-10-04 Bank Of America Corporation Video buffering for interactive videos using a markup language
US20220236399A1 (en) * 2021-01-27 2022-07-28 Texas Instruments Incorporated System and method for the compression of echolocation data

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504823A (en) * 1992-09-23 1996-04-02 Daewoo Electronics Co. Ltd. Image data partitioning circuit for parallel image decoding system
US5802052A (en) * 1996-06-26 1998-09-01 Level One Communication, Inc. Scalable high performance switch element for a shared memory packet or ATM cell switch fabric
US20050276325A1 (en) * 2001-01-09 2005-12-15 Sony Corporation Code quantity control apparatus, code quantity control method and picture information transformation method
CN101057224A (zh) * 2004-11-15 2007-10-17 皇家飞利浦电子股份有限公司 具有预取的高速缓冲存储器
CN101448061A (zh) * 2008-12-26 2009-06-03 北京中星微电子有限公司 一种图像处理装置及方法
US20100021142A1 (en) * 2006-12-11 2010-01-28 Panasonic Corporation Moving picture decoding device, semiconductor device, video device, and moving picture decoding method
US20100061455A1 (en) * 2008-09-11 2010-03-11 On2 Technologies Inc. System and method for decoding using parallel processing
US7813431B2 (en) * 2002-05-20 2010-10-12 Broadcom Corporation System, method, and apparatus for decoding flexibility ordered macroblocks

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3824678B2 (ja) 1995-05-09 2006-09-20 株式会社ルネサステクノロジ 画像復号表示装置
US6625740B1 (en) * 2000-01-13 2003-09-23 Cirrus Logic, Inc. Dynamically activating and deactivating selected circuit blocks of a data processing integrated circuit during execution of instructions according to power code bits appended to selected instructions
US6477086B2 (en) * 2000-12-29 2002-11-05 Intel Corporation Local sensing of non-volatile memory
US6538583B1 (en) 2001-03-16 2003-03-25 Analog Devices, Inc. Method and apparatus for context modeling
US6741256B2 (en) * 2001-08-27 2004-05-25 Sun Microsystems, Inc. Predictive optimizer for DRAM memory
US20030112758A1 (en) * 2001-12-03 2003-06-19 Pang Jon Laurent Methods and systems for managing variable delays in packet transmission
US7457847B2 (en) * 2002-01-02 2008-11-25 International Business Machines Corporation Serial redirection through a service processor
US6791352B2 (en) * 2002-02-08 2004-09-14 International Business Machines Corporation Method and apparatus for debugging a chip
US7203356B2 (en) * 2002-04-11 2007-04-10 Canesta, Inc. Subject segmentation and tracking using 3D sensing technology for video compression in multimedia applications
AU2003298558A1 (en) 2002-08-21 2004-05-04 Gentex Corporation Image acquisition and processing methods for automatic vehicular exterior lighting control
US7656461B2 (en) * 2003-03-27 2010-02-02 Sony Corporation Method of and apparatus for utilizing video buffer in a multi-purpose fashion to extend the video buffer to multiple windows
EP1503597A3 (en) 2003-07-28 2007-01-03 Matsushita Electric Industrial Co., Ltd. Video decoding apparatus
US7418146B2 (en) 2004-02-10 2008-08-26 Sanyo Electric Co., Ltd. Image decoding apparatus
US7298297B1 (en) * 2004-08-18 2007-11-20 Mediatek Inc. Hardware-implemented Huffman decoder
JP4219887B2 (ja) * 2004-12-28 2009-02-04 富士通マイクロエレクトロニクス株式会社 画像処理装置及び画像処理方法
CN100411044C (zh) 2005-06-15 2008-08-13 联发科技股份有限公司 处理光盘的读回数据发生解码错误的数据管理方法及光驱
TWI318758B (en) * 2005-06-21 2009-12-21 Avermedia Information Inc Method for adjusting display range of image obtained by document camera
TW200713242A (en) 2005-09-23 2007-04-01 Mediatek Inc Pecording apparatus and recording method
JP4799118B2 (ja) * 2005-10-14 2011-10-26 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理システム、通信中継装置および通信制御方法
FR2894740A1 (fr) 2005-12-12 2007-06-15 Thomson Licensing Sa Dispositif de codage, procede de codage, systeme de decodage procede de decodage de donnees video
TWI342154B (en) * 2006-05-17 2011-05-11 Realtek Semiconductor Corp Method and related apparatus for determining image characteristics
US7554468B2 (en) 2006-08-25 2009-06-30 Sony Computer Entertainment Inc, Entropy decoding methods and apparatus using most probable and least probable signal cases
JP4789753B2 (ja) 2006-08-28 2011-10-12 富士通セミコンダクター株式会社 画像データバッファ装置、画像転送処理システム、及び画像データバッファ方法
US7443318B2 (en) 2007-03-30 2008-10-28 Hong Kong Applied Science And Technology Research Institute Co. Ltd. High speed context memory implementation for H.264
CN101543082B (zh) 2007-05-22 2011-07-20 松下电器产业株式会社 运动图像解码装置以及运动图像解码方法
US8300699B2 (en) * 2007-05-31 2012-10-30 Qualcomm Incorporated System, method, and computer-readable medium for reducing required throughput in an ultra-wideband system
US8488668B2 (en) 2007-06-15 2013-07-16 Qualcomm Incorporated Adaptive coefficient scanning for video coding
CN100508604C (zh) 2007-06-21 2009-07-01 北京中星微电子有限公司 算术编码电路和算术编码控制方法
US8254455B2 (en) 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
US9648325B2 (en) 2007-06-30 2017-05-09 Microsoft Technology Licensing, Llc Video decoding implementations for a graphics processing unit
US8265144B2 (en) 2007-06-30 2012-09-11 Microsoft Corporation Innovations in video decoder implementations
JP4569840B2 (ja) 2007-09-12 2010-10-27 ソニー株式会社 画像符号化装置、画像符号化方法
US8385404B2 (en) * 2008-09-11 2013-02-26 Google Inc. System and method for video encoding using constructed reference frame
US8326075B2 (en) * 2008-09-11 2012-12-04 Google Inc. System and method for video encoding using adaptive loop filter
JP4962476B2 (ja) 2008-11-28 2012-06-27 ソニー株式会社 算術復号装置
US20100226441A1 (en) 2009-03-06 2010-09-09 Microsoft Corporation Frame Capture, Encoding, and Transmission Management
US20100265260A1 (en) 2009-04-17 2010-10-21 Jerzy Wieslaw Swic Automatic Management Of Buffer Switching Using A Double-Buffer
US8638850B2 (en) 2009-05-06 2014-01-28 Advanced Micro Devices, Inc. Execution units for context adaptive binary arithmetic coding (CABAC)
US20110164685A1 (en) 2010-01-04 2011-07-07 Vixs Systems, Inc. Entropy decoder with entropy decoding interface and methods for use therewith
US8615043B2 (en) 2010-03-04 2013-12-24 Texas Instruments Incorporated Fixed length coding based image data compression
US20120294366A1 (en) * 2011-05-17 2012-11-22 Avi Eliyahu Video pre-encoding analyzing method for multiple bit rate encoding system
US9251555B2 (en) 2012-06-08 2016-02-02 2236008 Ontario, Inc. Tiled viewport composition

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504823A (en) * 1992-09-23 1996-04-02 Daewoo Electronics Co. Ltd. Image data partitioning circuit for parallel image decoding system
US5802052A (en) * 1996-06-26 1998-09-01 Level One Communication, Inc. Scalable high performance switch element for a shared memory packet or ATM cell switch fabric
US20050276325A1 (en) * 2001-01-09 2005-12-15 Sony Corporation Code quantity control apparatus, code quantity control method and picture information transformation method
US7813431B2 (en) * 2002-05-20 2010-10-12 Broadcom Corporation System, method, and apparatus for decoding flexibility ordered macroblocks
CN101057224A (zh) * 2004-11-15 2007-10-17 皇家飞利浦电子股份有限公司 具有预取的高速缓冲存储器
US20100021142A1 (en) * 2006-12-11 2010-01-28 Panasonic Corporation Moving picture decoding device, semiconductor device, video device, and moving picture decoding method
US20100061455A1 (en) * 2008-09-11 2010-03-11 On2 Technologies Inc. System and method for decoding using parallel processing
CN101448061A (zh) * 2008-12-26 2009-06-03 北京中星微电子有限公司 一种图像处理装置及方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105812819A (zh) * 2015-01-21 2016-07-27 联发科技股份有限公司 在编码单元进行视讯编码时执行混成多重假设移动补偿预测的方法以及装置
CN105812819B (zh) * 2015-01-21 2019-02-15 寰发股份有限公司 执行混成多重假设移动补偿预测的方法以及装置
CN109246475A (zh) * 2016-07-12 2019-01-18 联发科技股份有限公司 一种视频处理系统及视频接收系统

Also Published As

Publication number Publication date
US9497466B2 (en) 2016-11-15
CN102595240B (zh) 2016-12-07
TWI499282B (zh) 2015-09-01
TW201233189A (en) 2012-08-01
EP2477401A2 (en) 2012-07-18
EP2477401A3 (en) 2012-08-01
US20120185620A1 (en) 2012-07-19

Similar Documents

Publication Publication Date Title
CN102595240A (zh) 缓冲装置与相应的缓冲方法
CN103828372B (zh) 用于缓冲装置的读取指针暂存的方法、缓冲控制器以及缓冲装置
EP1887575B1 (en) Digital video recorder having hierarchical memories and method for implementing hierarchical memories
JP2007221323A (ja) 情報処理方法、動画サムネイル表示方法、復号化装置、および情報処理装置
WO2007024413A2 (en) Transpose buffering for video processing
CN101771843A (zh) 信息处理设备和方法
TWI675584B (zh) 具有多個句法解析電路和/或多個後解碼電路的視訊處理系統
JP2008072336A (ja) 復号装置および復号方法
JP4964774B2 (ja) ビデオ処理のための階層的プロセッサ構造
JP2005102144A (ja) Mpegのデータ処理装置
CN101094368B (zh) 再现装置以及再现方法
CN1148061C (zh) 图像重放设备
CN101847394B (zh) 用以解码及显示视讯文件的存储器映射方法及装置
US7903885B2 (en) Data converting apparatus and method
US8539170B2 (en) Decoding circuit
CN100527818C (zh) 数字影音资料的内存存取方法及装置
JP2008199657A (ja) 画像圧縮システム及び画像圧縮方法
CN101261605A (zh) 融合存储器设备及方法
CN104994391A (zh) 一种高效的VP9熵解码prob数据获取方法及设备
TWI470575B (zh) 用於緩衝裝置之讀取指標暫存的方法、緩衝控制器以及緩衝裝置
CN103747253A (zh) 一种基于fifo的视频编码数据传输方法
JP2009237790A (ja) Dmaコントローラ
US20060230241A1 (en) Buffer architecture for data organization
CN1728245B (zh) 光存储及记录系统及其处理方法
KR100713623B1 (ko) 범용 프로세서와 비디오 프로세서의 결합구조에서의 nal처리 시스템 및 방법

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220214

Address after: ottawa

Patentee after: Xueshan Technology Co.,Ltd.

Address before: China Taiwan Hsinchu Science Park Hsinchu city Dusing a road No.

Patentee before: MEDIATEK Inc.