CN101461247A - 视频块的并行批量解码 - Google Patents

视频块的并行批量解码 Download PDF

Info

Publication number
CN101461247A
CN101461247A CNA2007800208332A CN200780020833A CN101461247A CN 101461247 A CN101461247 A CN 101461247A CN A2007800208332 A CNA2007800208332 A CN A2007800208332A CN 200780020833 A CN200780020833 A CN 200780020833A CN 101461247 A CN101461247 A CN 101461247A
Authority
CN
China
Prior art keywords
batch
video blocks
decoded
thread
picture frame
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
CNA2007800208332A
Other languages
English (en)
Other versions
CN101461247B (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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN101461247A publication Critical patent/CN101461247A/zh
Application granted granted Critical
Publication of CN101461247B publication Critical patent/CN101461247B/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/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
    • 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

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

视频块的并行批量解码
相关申请案
本申请案与2006年1月25日申请的题为“经帧内编码视频的并行解码(PARALLELDECODING OF INTRA-ENCODBD VIDEO)”的第11/340,378号共同待决申请案有关。
技术领域
本发明涉及数字视频处理,且更明确地说,涉及用于由多个视频块界定的图像帧的解码技术。
背景技术
数字视频能力可并入到较广范围的装置中,包含数字电视、数字直播系统、无线通信装置、个人数字助理(PDA)、膝上型计算机、台式计算机、数码相机、数字记录装置、蜂窝式或卫星无线电话、直接双向通信装置(有时称为“对讲机”)等。无线电话和其它通信装置可利用数字视频来支持视频电话(VT)和视频电话会议特征。
已经为对数字视频序列进行编码建立了许多不同的视频编码标准。举例来说,移动图片专家组(Moving Picture Experts Group,MPEG)已经开发了许多标准,包含MPEG-1、MPEG-2和MPEG-4,其它视频编码标准包含由国际电信联盟(InternationalTelecommunications Union,ITU)开发的ITU H.263和ITU H.264。另外,许多私有视频编码标准也已经由个别公司开发,且新的私有和非私有标准继续涌现。
视频编码标准通常有助于以压缩图像帧所需量的数据的方式来对视频序列的图像帧进行编码。举例来说,按照MPEG标准和/或TTU H.263和TTU H.264标准,编码技术可利用相继视频帧之间的类似性,称为时间或帧间相关性,以便实现帧间压缩。另外,视频编码技术可利用帧内的类似性,称为空间或帧内相关性,以压缩视频帧。
对于帧内编码和帧间编码,视频编解码器(CODEC)可对界定视频序列的图像帧内的像素块进行操作。举例来说,在MPEG-4标准中,编码器通常将待传输的视频帧分成“宏块”,所述宏块包括16×16像素阵列。MPEG-4还可允许将所述宏块再分成8×8视频块。作为另一实例,IT7 H.264标准支持16×16视频块(宏块),且允许再分成16×8视频块、8×16视频块、8×8视频块、8×4视频块、4×8视频块和4×4视频块。
对于给定视频块的帧间编码,CODEC搜索一个或一个以上紧接在前的视频帧(或在后的帧)的大小类似的视频块,以便识别最类似的视频块,有时称为“最佳预测”。将当前视频块与其它帧的视频块进行比较的过程通常称为运动估计。一旦针对视频块识别了“最佳预测”,编码器就可经由称为运动补偿的过程对当前视频块与所述最佳预测之间的差异进行编码。运动补偿包括创建差异块的过程,所述差异块指示待编码的当前视频块与最佳预测之间的差异。运动补偿通常涉及使用运动向量来取最佳预测块,且接着从输入块中减去所述最佳预测,以产生差异块。
对于帧内压缩,将当前视频块与同一视频帧的其它视频块进行比较的过程通常称为帧内预测(通常为空间估计或频域估计)。帧内编码过程通常指代基于经由空间估计或频域估计发现的最佳预测而为经帧内编码的视频创建差异块的过程。因此,帧内预测和帧内编码通常是用于帧内压缩的过程,其类似于帧间压缩的运动估计和运动补偿。
在运动补偿或帧内编码已创建了差异块之后,通常执行一系列额外编码步骤,以进一步对所述差异块进行编码和压缩。这些额外编码步骤可视所使用的编码标准而定。举例来说,所述额外编码步骤可包含8×8离散余弦变换,接着是标量量化,接着是光栅到Z字形重排序,接着是游程长度编码,接着是霍夫曼编码(Huffman encoding)。还可执行去块滤波,以便去除可能出现在图像帧的视频块之间的块效应假象。
发明内容
本发明描述利用并行处理技术以便加速图像帧的解码过程的视频解码技术。所述技术可在具有多个处理器的装置中或在利用支持多个并行线程的单个处理器的装置中使用。所述技术包含界定待解码的多批视频块。根据本发明,所界定的批次中的一者或一者以上可彼此并行地解码。
明确地说,将每批视频块传递到处理器中的一者或多线程处理器的线程中的一者。每批视频块由相应的处理器或线程串行解码。然而,对两个或两个以上批次进行解码可并行于对其它批次进行解码而执行。以此方式,图像帧的解码可加速,只要图像帧的不同视频块与其它视频块并行解码。本发明的技术经配置以确保所有必要信息都可用于对视频块进行解码,这可能是具有挑战性的,尤其对于经帧内编码的块来说。
在一个实施例中,本发明提供一种方法,所述方法包括:界定图像帧的第一批视频块;以串行方式对所述第一批视频块进行解码;相对于所述第一批视频块而界定第二批视频块和第三批视频块;以及彼此并行地对所述第二批视频块和第三批视频块进行解码。
如果在软件中实施,那么本发明的技术可在计算机可读媒体上实施。在所述情况下,所述计算机可读媒体包括指令,所述指令在视频编码装置中执行后致使所述装置界定图像帧的第一批视频块,以串行方式对所述第一批视频块进行解码,相对于第一批视频块而界定第二批视频块和第三批视频块,且彼此并行地对所述第二和第三批视频块进行解码。
在另一实施例中,本发明提供一种装置,所述装置包括:解码控制单元,其界定图像帧的第一批视频块,且相对于第一批视频块而界定第二和第三批视频块;以及一个或一个以上处理器,其以串行方式对第一批视频块进行解码,且并行于彼此对第二和第三批视频块进行解码。
在另一实施例中,本发明提供一种对视频序列的图像帧进行解码的装置,其中所述装置界定图像帧的第一批视频块,以串行方式对所述第一批视频块进行解码,相对于所述第一批视频块而界定第二批视频块和第三批视频块,且彼此并行地对所述第二批视频块和第三批视频块进行解码。
在另一实施例中,本发明提供一种装置,所述装置包括:用于界定图像帧的第一批视频块的装置;用于以串行方式对所述第一批视频块进行解码的装置;用于相对于所述第一批视频块而界定第二批视频块和第三批视频块的装置;以及用于彼此并行地对所述第二批视频块和第三批视频块进行解码的装置。
在附图和下文的描述内容中陈述各个实施例的额外细节。其它特征、目标和优势将从所述描述内容和图式且从权利要求书中变得明显。
附图说明
图1是根据本发明实施例的视频编码装置的示范性框图。
图2是说明图像帧的包含多个视频块的一部分的概念图。
图3是说明根据本发明实施例的视频编码装置的一些示范性组件的框图。
图4A到图4T是说明包含界定批次且彼此并行地对所述批次中的一些进行解码的解码过程的一系列概念图。
图5是说明根据本发明实施例的解码技术的流程图。
具体实施方式
本发明描述利用并行过程来加速图像帧的解码的视频解码技术。所述技术涉及界定图像帧的多批视频块,以进行处理。可将所述各个批次并行于其它批次进行解码。并行解码过程可由多个处理器、多线程处理器所执行的不同线程或上述两者的组合执行。以此方式,视频块批次由并行过程(即,一组并行处理器中的一者,或多线程处理器的一组线程中的一者)处理。每批视频块由相应的过程(即,相应的处理器或线程)串行解码。然而,对两个或两个以上不同批次进行解码可并行于对其它批次进行解码而执行。以此方式,图像帧的解码可相对于依靠单个处理器来以串行模式处理视频块的解码技术而加速。
本发明的技术经配置以确保所有必要信息均可用于对视频块进行解码。明确地说,特定以确保所有必要信息均可用于对视频块进行解码的方式来界定批次。由于视频块可能以不同方式编码(例如,帧内编码或帧间编码),所以界定批次的过程应确保可对每个视频块进行解码,而不管视频块的类型以及其如何被编码。为了这样做,必须相对于一个批次的块而关注帧的其它视频块,一般来说,每当过程(线程或处理器)变得可用于解码,且针对待串行解码的一批视频块存在所有必要信息时,界定新的批次。
举例来说,经帧内编码的视频块具有帧内依赖性,且通常依赖于邻近于所述经帧内编码的块的视频块子集中的一个视频块。此外,对于例如MPEG-4、ITU H.263和ITUH.264的标准,帧内依赖性通常仅相对于先前编码的块而界定,所述先前编码的块在帧的空间布置内位于当前视频块上方,或位于当前视频块的左侧。为了对具有此帧内依赖性的视频块进行解码,可能重要的是,在对当前视频块进行解码之前,对用于当前视频块的帧内编码的邻近视频块进行解码。根据本发明,可以确保在给定视频块将解码时给定视频块的每一可能视频块依赖性均被考虑的方式,来界定多批视频块。
一旦已对第一批次进行解码,就可界定两个新批次(第二和第三批次),同时仍确保每一可能的视频块依赖性均被考虑。一旦已对第二和第三批次进行解码,就可界定三个新的批次(第四、第五和第六批次)。一旦已对第四、第五和第六批次进行解码,就可界定至多达四个额外批次,依此类推。所述过程可通过为多个处理器或线程增加多个并行批次来继续。然而,随着所述过程接近给定图像帧的尾部,所述过程可能减少并行处理的批次的数目。根据本发明,在图像帧的解码过程中界定的第一批次和最后批次每一者可至少部分独立地解码,同时图像帧的每一其它批次可与其它批次并行处理。在对批次进行并行处理的过程中,获得与使用多个处理器(或多个线程)相关联的处理效率。
在以下揭示内容中,以简化方式提供许多细节。明确地说,描述许多细节,其中在界定下一组批次之前,界定一组批次并接着对其进行处理。然而,实际上,可通过异步地界定批次来获得更多效率。也就是说,任一给定处理器或线程一变得可用,例如一旦所述处理器或线程已完成其当前批次,就可为所述处理器或线程界定新的批次。只要所有必要信息均可用于对一组视频块进行解码,且处理器或线程可用,就可界定下一批次。然而,为了简单起见,本文的许多细节说明多个批次正被以组的形式同步界定以用于并行处理。然而,每当资源变得可用时,优选允许异步地界定每个后继批次。
图1是根据本发明的视频编码装置2的框图。编码装置2可包括可用于对视频序列进行编码或解码的多种装置中的任何一者。编码装置2的实例通常包含任何计算机,例如服务器、工作站或任何其它台式计算装置,或移动计算装置,例如膝上型计算机或个人数字助理(PDA)。其它实例包含数字电视广播卫星和接收装置,例如数字电视、数码相机、数字视频相机或其它数字记录装置。此外,其它实例包含数字视频电话,例如具有视频能力的移动电话、具有视频能力的直接双向通信装置、其它无线视频装置等。
编码装置2包含执行视频编码和视频解码的CODEC 4。出于本发明的目的,仅描述视频解码。然而,CODEC 4还可包含促进视频编码的组件,例如运动估计器、运动补偿器、空间估计器(或帧内预测器)、帧内编码器、差异计算单元等。然而,为了本发明中的简单性,未展示用于视频编码的这些组件。
如图1中所示,CODEC 4包含解码单元6,其经由存储器控制器10耦合到存储器8。存储器控制器10控制存储器取视频数据和将视频数据加载到解码单元6。视频序列的经编码的图像帧存储在存储器8中,且在对图像帧进行解码之后,经解码的帧也可存储在存储器8中。存储器8通常表示多种可能存储器配置中的任何一者。
存储器8可包括任何易失性或非易失性存储元件。存储器12(例如)在编码和解码过程期间存储视频序列。在一些情况下,存储器8可包含芯片上和芯片外存储器两者。举例来说,存储器8可包含存储视频序列的相对较大的芯片外存储器空间,以及在解码过程中使用的较小且较快的本地芯片上存储器。在所述情况下,芯片外存储器可包括动态随机存取存储器(dynamic random access memory,DRAM)或快闪存储器,且本地芯片上存储器可包括同步随机存取存储器(synchronous random access memory,SRAM)。然而,为了简单性,说明单个存储器8,以表示可用于促进视频编码的任何数目的存储器元件。在一些情况下,存储器8可经组织以界定线缓冲器,其允许存储器为其它存储应用装置2所共享,且在此情况下,存储器控制器10可促进存储器8的此种多用途。
CODEC4可经由系统总线15耦合到多种其它组件。在图1所说明的实例中,装置2还包含视频俘获装置12(例如,数码相机),以促进视频图像序列的视频俘获。另外,装置2可包含显示器13,其向用户呈现经解码的视频序列。而且,装置2可包含促进与其它装置的无线通信的传输器/接收器14。在此情况下,可经由传输器/接收器14来传输或接收经编码的视频序列。在接收到经编码的视频序列后,(例如)可将所述序列存储在存储器8中,且由解码单元6解码,且接着可经由显示器13将经解码的视频序列呈现给用户。
CODEC 4通常指代编码器、解码器或集成的编解码器。本文所描述的技术最可应用于解码,但还可在编码期间应用,特别在解码技术被用作编码步骤的一部分的情况下。可在硬件、软件、固件、一个或一个以上数字信号处理器(DSP)、微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散硬件组件或其各种组合内实施CODEC4。
根据本发明,解码单元6包含批量解码控制单元16和一组并行过程18。并行过程18通常指代多个处理器或由单个处理器执行的多个线程。在一个实例中,并行过程18指代独立于彼此而操作的多个离散处理器。在替代实例中,并行过程18指代包含多个线程的单个处理器(例如,DSP)。可将DSP的多个线程视为可独立地处理不同批次的视频块的并行解码的虚拟处理器。
根据本发明,批量解码控制单元16界定图像帧的第一批视频块,且一旦第一批次被解码,就基于第一批次而界定第二和第三批次。并行过程18以串行方式对第一批视频块进行解码,且彼此并行地对第二和第三批视频块进行解码。在并行过程18的给定一者中串行处理第二和第三批次,但第二批次可通过过程18中的不同过程(例如,在多线程处理器的不同线程中)与第三批次并行处理。
一旦最初三个批次被解码,批量解码控制单元16接着就可界定另外三个批次(例如,第四、第五和第六批次)。在对所述三个批次进行解码之后,可界定一组四个批次。在对所述四个批次进行解码之后,可界定一组五个批次。每个批次的大小和对可同时解码的批次的数目的限制可由方案来界定。此类限制可基于过程18的数目(例如,线程的数目)、待解码的图像帧的大小以及其它因素。再次,本发明通过说明被界定为同步组的批次,来提供更多细节。然而,优选的是,每当处理器或线程变得可用时,就尽快(异步地)界定每个相应批次。这避免了停工期(down-time),例如原本会在将批次界定为同步组且对一个批次进行解码所花费的时间比其它批次长得多的情况下发生的停工期。事实上,如果对一个批次进行解码花费较长时间(例如,由于视频块的数目或此区块的复杂性的缘故),那么当其它批次完成解码时,可用处理器或线程可立即对新批次进行解码。
给定批次的所有视频块在图像帧内可能是邻接的,且可由过程18中的相应一者串行处理。然而,并行处理的不同批次通常不彼此邻接,且通常驻存在图像帧的不同行中。每个批次可由界定图像帧内的列的列参数、界定图像帧内的行的行参数以及相应批次中邻接视频块的数目来界定。还可界定视频块的此大小,例如16×16、8×8或4×4(如果这未由相应标准确定的话)。
图2是说明图像帧20的包含多个视频块的一部分的概念图。图像帧20的所说明部分的不同视频块被标记为1到18。一般来说,这些视频块中的每一者可包括像素块,且可包含用于不同像素值(R、G、B值)的多组数据,或用于色度和亮度值的多组数据。因此,本文所描述的每个视频块实际上可表示界定图像帧的离散区域的视觉特征的多组数据。可使用若干数据块来表示给定视频块,例如通过针对色度和亮度使用单独的数据块。此数据块的大小可由于由视频块界定的给定区域的色度相对于亮度的过取样或欠取样而变化。视频块可指代用于给定区域中的色度和亮度的数据块。
通常以串行方式从图像帧的左上角到右下角处理视频块。换句话说,通常从视频块1到视频块18串行处理视频块。这通常适用,因为经帧内编码的块可以此串行方式依赖于先前处理的视频块。举例来说,如果图2的编号为8的视频块经帧内编码,那么其可依赖于编号为1、2、3或7的视频块。如果以串行方式对视频块进行解码,那么当到了对编号为8的视频块进行解码的时间时,视频块1、2、3和7中的每一者将均已被解码。因此,即使编号为8的视频块经帧内编码,所有必要数据也应可用于对此视频块进行解码。
在经帧内编码的情况下,帧的视频块之间的关系使同时对若干视频块进行解码较为困难。根据本发明,界定可并行处理的多批视频块。所述批次每一者包含邻接的视频块,但并行处理的不同批次可不彼此邻接。每个批次均相对于所述批次的视频块串行解码,但与其它批次的视频块并行解码。重要的是,每个相应批次的第一视频块是可使用所有必要解码信息的视频块,即使所述视频块经帧内编码时也如此。在对每个批次的所述第一视频块进行解码之后,下一视频块应具有所有必要解码信息。因此,只要对每个批次进行串行解码,就可同时对不同批次进行解码,而不管所述不同批次中的视频块的类型如何。
图3是说明根据本发明实施例的视频编码装置30的一些示范性组件的概念图框图。装置30的所说明的组件可对应于图1的装置2的那些组件。如图3中所示,装置3包含批量解码控制单元35、存储器32、存储器控制器34和DSP 36,DSP 36执行充当多个虚拟处理器38A到38N的不同线程。虚拟处理器38A到38N中的每一者可包括DSP 36的能够独立于其它线程而执行解码任务的线程。尽管说明三个虚拟处理器,但在大多数实施例中,虚拟处理器的数目可大于3。举例来说,DSP 36可包含六个虚拟处理器(即,六个线程)。
批量解码控制单元35可包括与DSP 36分离的微处理器,或可能是硬件、软件、固件或其任一组合。在任何情况下,批量解码控制单元35界定多批视频块,其可如本文所描述同时被解码。再次,所述批次每一者包含邻接的视频块,但并行处理的不同批次可不与其它批次邻接。可单独对第一批视频块进行解码。第二和第三批次可相对于第一批次而界定,且并行解码。其后,后继组的批次还可逐渐增加地包含更多批次。不同虚拟处理器38以串行方式处理每个批次。然而,不同虚拟处理器38中的处理可同时发生。只要每个批次以串行方式解码,不同批次就可由虚拟处理器38的不同者同时解码。可将批次作为组处理(同步),但更优选的是,在虚拟处理器38的一者完成其当前批次的任何时间界定新的批次。只要必要信息可用于界定可解码的一批视频块,且虚拟处理器可用,就应为所述处理器界定批次,以避免停工期。
在任一给定时间,每个批次的大小和对批次数目的限制可由批量解码控制单元35基于经编程参数而界定。此类对批次的限制可基于DSP 36中虚拟处理器38的数目和待解码的图像帧的大小,但其它因素也可影响批次大小和对批次数目的限制。批量解码控制单元35可通过界定图像帧内的列的列参数、界定图像帧内的行的行参数以及相应批次中邻接视频块的数目来界定每个批次。还可界定视频块的大小和形状(如果此信息未由标准设置的话)。
界定一个批次中视频块的最小数目的参数还可用于确保批次不会太小或太大。如果批次太小,那么与界定所述批次相关联的处理额外开销可能超过来自所述处理的并行性质的处理增益。而且,如果允许批次变得太大,那么处理增益可能丧失。
图4A到图4T是说明包含界定图像帧的多批视频块且彼此并行地对各个批次中的视频块进行解码的解码过程的一系列概念图。图4A到图4T的每一者说明解码过程的各个阶段处的示范性图像帧40。在此相对较简单的实例中,批次的数目限于3。每批次的视频块的数目不存在最小值,但将最大值界定为每批次8个视频块。
可基于同步解码最佳地理解图4A到图4T的相对较简单的实例。在此情况下,通过所述过程的每一次迭代来界定多组批次,且所有所述批次均在界定新的一组批次之前完成。然而,更优选的是,可使用异步解码,在所述情况下,每当线程变得可用且用于视频块的必要信息可用于界定批次时,可在任何时间为相应处理线程界定新的批次。然而,尽管可用异步过程来实现更多效率,但图4A到图4T的同步图解提供对并行解码的优势的认识。
图4A到图4T的每一者包含界定图像帧40内的经编码视频块、图像帧40内的经解码视频块和当前批次中界定的那些视频块的关键码(key)。尽管图4A到图4T中所说明的视频块全部具有类似大小,但本发明的技术不限于此方面。换句话说,不同视频块可例如根据ITU H.264标准或允许对宏块进行再分或通常允许不同大小的视频块的其它标准而具有不同大小。
在图4A中,图像帧40的所有视频块都是经编码的视频块。在解码过程中的此点处,批量解码控制单元35界定第一批次,如图4B中所示。第一批次401包含八个视频块。批次401的视频块以串行方式由虚拟处理器38A解码,且因此变成经解码的视频块,如图4C中所示。
在对第一批次401进行解码之后,批量解码控制单元界定额外批次,如图4C中所示。图4C的批次包含两个批次402和403,其分别包含八个视频块和七个视频块。批次402是与批次401在同一行上的一组视频块,而批次403是在批次401下方的下一行上的一组视频块。再次参看图2和上文关于确保即使在视频块经帧内编码的情况下也可能进行解码所需的信息的论述,应明白,由于批次401被解码,所以所有信息可用于对批次402和403进行解码。明确地说,批次402和403每一者中的第一视频块在帧内编码可能依赖的邻近位置中具有经解码的视频块。
批次402和403的视频块每一者以串行方式由不同虚拟处理器38A和38B解码。此外,批次402和403的解码虽然相对于相应批次的视频块是串行的,但相对于彼此是并行的。换句话说,批次402由虚拟处理器38A串行解码,而批次402由虚拟处理器38B串行解码。图4D说明在对批次402和403中的所有视频块进行解码之后的图像帧40。
接下来,批量解码控制单元35界定更多批次,如图4E中所示。明确地说,图4E展示三个批次405、406和407。批次405包含四个视频块、批次406包含八个视频块,且批次407包含六个视频块。批次405、406和407中的每一者包含邻接视频块,但不同批次的视频块不彼此邻接。批次405、406和407的每一者驻存在图像帧的不同视频块行中。
对于图4E中所示的批次组,确保对不同批次的成功解码所需的所有信息在界定批次405、406和407时存在。批次405、406和407的视频块每一者以串行方式由不同虚拟处理器38A、38B和38N解码。此外,批次405、406和407的解码虽然相对于相应批次内的视频块是串行的,但相对于不同批次中的视频块是并行的。换句话说,批次405由虚拟处理器38A串行解码,而批次406同时由虚拟处理器38B串行解码,而批次407同时由另一虚拟处理器(例如处理器38N)串行解码。图4F说明在对批次405、406和407中的所有视频块进行解码之后的图像帧40。
图4G说明另一组批次,其由批量解码控制单元35界定。在此实例中,界定另外三个批次,即批次411、批次412和批次413。这些不同批次的这些视频块由处理器38中的不同处理器串行处理,且相对于彼此而并行。图4H说明在对批次411、412和413中的所有视频块进行解码之后的图像帧40。
图4I说明另一组批次,其可由批量解码控制单元35界定。在此实例中,存在另外三个批次,即批次415、批次416和批次417。这些不同批次的这些视频块由处理器38中的不同处理器串行处理,且相对于彼此而并行处理。图4J说明在对批次415、416和417中的所有视频块进行解码之后的图像帧40。
图4K说明另一组批次,其由批量解码控制单元35界定。在此实例中,存在三个新的批次,即批次419、批次420和批次421。这些不同批次的这些视频块由处理器38中的不同处理器串行处理,且相对于彼此而并行处理。图4L说明在对批次419、420和421中的所有视频块进行解码之后的图像帧40。
图4M说明额外批次,其可由批量解码控制单元35界定。在此实例中,界定另外三个批次,即批次423、批次424和批次425。这些不同批次的这些视频块由处理器38中的不同处理器串行处理,且相对于彼此而并行处理。图4N说明在对批次423、424和425中的所有视频块进行解码之后的图像帧40。
图4O说明额外批次,其可由批量解码控制单元35界定。不同于先前批次组,图4O仅说明两个批次,即批次427和批次428。这是因为所述过程接近图像帧40的尾部。所述过程通常在最初几个迭代中增加批次的数目,针对中间迭代维持批次的最大数目,且接着针对最后迭代减小批次的数目。在任何情况下,类似于其它迭代,这些不同批次427和428的视频块由处理器38的不同处理器串行处理,且相对于彼此而并行处理。图4P说明在对批次427和428中的所有视频块进行解码之后的图像帧40。
图4Q说明另一组批次,其可由批量解码控制单元35界定。在此实例中,展示另外两个批次,即批次432和批次433。这些不同批次的这些视频块由处理器38中的不同处理器串行处理,且相对于彼此而并行处理。图4R说明在对批次432和433中的所有视频块进行解码之后的图像帧40。
图4S说明最终批次435,其由批量解码控制单元35界定。因此,单独对所述过程的第一批次和最后批次进行解码。在同时处理两个或两个以上批次的过程中获得与使用多个处理器(或多个线程)相关联的处理效率。相对于最终批次435,处理器38A串行处理视频块。图4T说明在对最终批次435中的所有视频块进行解码之后的经完全解码的图像帧40。
尽管图4A到图4T的示范性图解仅使批次的数目增加到最大为3,但本发明并非局限于此。事实上,批次的最大数目可能更大,特别是针对每行具有显著更多视频块的图像。每一迭代可添加额外批次,直到达到最大值或给定行中视频块的数目由于可界定帧内依赖性的经解码视频块不足而限制批次为止。
在图4A到图4T的图解中,界定每个相应批次,以确保所述批次的串行解码还将确保所述批次的所有视频块可被解码。然而,在一些情况下,可基于其它批次将被并行解码的假定而将批次界定为较大。举例来说,参看图4G,可基于批次412的最初几个视频块将在批次413的最后(额外)视频块被解码之前被解码的假定,而将批次413界定为包含额外视频块。因此,可将批次413界定为包含直到批次412的一个或一个以上视频块被解码才可被解码的一个或一个以上视频块。如果假定并预期批次412与413的并行解码,那么所述过程仍可起作用,即使具有向批次413添加的视频块时也如此,且此类向批次413添加的视频块可提供更多效率。
而且,图4A到图4T的相对较简单的实例涉及同步解码,其中通过所述过程的每一迭代来界定多组批次,且所有批次均在界定新的一组批次之前完成。然而,更优选的是,可使用异步解码,在所述情况下,可在处理线程可用且用于视频块的必要信息可用于界定批次的任何时间界定新的批次。换句话说,根据本发明,批量解码控制单元35可在第一虚拟处理器38A(第一线程)完成对当前批次的解码后为第一虚拟处理器38A界定另一批次,且在第二虚拟处理器38B(第一线程)的当前批次的解码完成后独立地为所述第二虚拟处理器38B界定另一批次。以此方式,在任何给定线程的当前批次完成后,可将新的批次传递给所述任何给定线程,只要用于视频块的必要信息可用于界定新的批次即可。因此,当线程中的一者可用于执行解码且所有必要信息可用于一组邻接视频块时,界定所述批次中的每一者。
图5是说明根据本发明实施例的解码技术的流程图。如图5中所示,批量解码控制单元35界定第一批次(51),且处理器38中的给定一者对所述第一批次进行解码(52)。接下来,批量解码控制单元35界定第二和第三批次(53)。处理器38中的不同处理器并行地对第二和第三批次进行解码(54)。
接下来,批量解码控制单元35相对于最初的第二和第三批次而界定第三、第四和第五批次(55),且处理器38中的不同处理器并行地对不同批次进行解码(56)。批量解码控制单元35接着界定后继批次(57),且处理器38中的不同处理器并行地对不同批次进行解码(58)。所述批次中的每一者由每个处理器串行处理,但相对于其它批次并行处理。当处理器38中的给定一者可用且足够的信息也可用于界定批次时,界定任何给定批次。因此,第三、第四和第五批次可不同时界定,而是可尽快(例如在处理器38中的一者可用且足够的信息也可用于界定相应批次时)分别界定。在所述过程开始时,界定单个批次,但在对所述第一批次进行解码之后,可界定两个或两个以上批次。随着越来越多的批次被解码,界定新批次的能力增加。
图5的过程可无限继续,直到图像帧的所有视频块都被解码为止。随着过程接近图像帧的尾部,可界定很少批次用于并行解码。任何给定图像帧的第一和最后批次可单独解码,而不与其它批次并行解码,而图像帧的所有其它批次可与一个或一个以上其它批次并行解码。可异步且独立于其它批次而界定每个相应批次,或可以同步方式界定多组批次。
此外,图5的过程可针对形成视频序列的相继图像帧而重复。可界定的批次的最大数目针对每行具有显著更多视频块的图像帧可能变得显著较大。如所述过程所展现,可界定额外批次用于并行解码,直到达到最大值为止(例如,限于虚拟处理器或线程的数目)。在一些情况下,给定行中的视频块的数目可能由于可界定帧内依赖性的经解码视频块不足而限制批次。所述过程可增加待并行解码的批次的数目,维持并行解码的批次的最大数目,且接着当所述过程接近图像帧的尾部时,减小并行解码的批次的数目。每个图像帧的最初和最后批次可至少部分地自行解码,而所有其它批次与其它批次一起解码。
已描述了若干实施例。然而,可在不脱离所附权利要求书的精神和范围的情况下,对本文所描述的技术作出各种修改。本文所描述的技术可在硬件、软件、固件或其任一组合中实施。如果在软件中实施,所述技术还可由包括程序代码的计算机可读媒体实施,所述程序代码在装置中执行后,执行本文所描述的解码技术中的一者或一者以上。在所述情况下,计算机可读媒体可包括随机存取存储器(RAM)(例如,同步动态随机存取存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器等。
所述程序代码可以计算机可读指令的形式存储在存储器上。在所述情况下,例如DSP的处理器可执行存储在存储器中的指令,以便实行所述解码技术中的一者或一者以上。在一些情况下,所述技术可由调用各种硬件组件来加速解码过程的DSP执行。在其它情况下,本文所描述的单元可实施为微处理器、一个或一个以上专用集成电路(ASIC)、一个或一个以上现场可编程门阵列(FPGA)或某一其它硬件-软件组合。这些和其它实施例在所附权利要求书的范围内。

Claims (34)

1.一种方法,其包括:
界定图像帧的第一批视频块;
以串行方式对所述第一批视频块进行解码;
相对于所述第一批视频块而界定第二批视频块和第三批视频块;以及
彼此并行地对所述第二和第三批视频块进行解码。
2.根据权利要求1所述的方法,其中对所述第二和第三批次进行解码包含用并行过程对所述第二和第三批次进行解码。
3.根据权利要求2所述的方法,其中用并行过程对所述第二和第三批次进行解码包含使用两个或两个以上不同处理器。
4.根据权利要求2所述的方法,其中以并行方式对所述第二和第三批视频块进行解码包含:
使用多线程处理器的第一线程以串行方式对所述第二批次进行解码;以及
使用所述多线程处理器的第二线程以串行方式对所述第三批次进行解码。
5.根据权利要求4所述的方法,其进一步包括:
在完成对所述第二批次的所述解码后,为所述第一线程界定另一批次;以及
在完成对所述第三批次的所述解码后,为所述第二线程界定另一批次。
6.根据权利要求5所述的方法,其中当所述线程中的一者可用于执行解码且所有必要信息可用于一组邻接视频块时,界定所述批次中的每一者。
7.根据权利要求4所述的方法,其进一步包括:
相对于所述第一、第二和第三批视频块而界定第四、第五和第六批视频块;以及以并行方式对所述第四、第五和第六批视频块进行解码。
8.根据权利要求7所述的方法,其中以并行方式对所述第四、第五和第六批视频块进行解码包含:
使用所述多线程处理器的所述第一线程以串行方式对所述第四批次进行解码;
使用所述多线程处理器的所述第二线程以串行方式对所述第五批次进行解码;以及
使用所述多线程处理器的第三线程以串行方式对所述第六批次进行解码。
9.根据权利要求1所述的方法,其中:
所述第一批次的所有视频块在所述图像帧内是邻接的;
所述第二批次的所有视频块在所述图像帧内是邻接的;
所述第三批次的所有视频块在所述图像帧内是邻接的;以及
所述第二批次的所述视频块与所述第三批次的所述视频块不邻接。
10.根据权利要求1所述的方法,其中界定所述批次包括界定所述批次的参数。
11.根据权利要求10所述的方法,其中对于每个相应批次,界定参数包含界定所述图像帧内的列,界定所述图像帧内的行以及界定所述相应批次的邻接视频块的数目。
12.根据权利要求1所述的方法,其进一步包括界定相继批次,以及对视频序列的图像帧的所有所述视频块的所述相继批次进行解码。
13.一种计算机可读媒体,其包括指令,所述指令在视频编码装置中执行时致使所述装置:
界定图像帧的第一批视频块;
以串行方式对所述第一批视频块进行解码;
相对于所述第一批视频块而界定第二批视频块和第三批视频块;以及
彼此并行地对所述第二和第三批视频块进行解码。
14.根据权利要求13所述的计算机可读媒体,其中在执行时所述指令:
使用多线程处理器的第一线程以串行方式对所述第二批次进行解码;以及
使用所述多线程处理器的第二线程以串行方式对所述第三批次进行解码。
15.根据权利要求14所述的计算机可读媒体,其中在执行时所述指令:
在完成对所述第二批次的所述解码后,为所述第一线程界定另一批次;以及
在完成对所述第三批次的所述解码后,为所述第二线程界定另一批次。
16.根据权利要求15所述的计算机可读媒体,其中当所述线程中的一者可用于执行解码且所有必要信息可用于一组邻接视频块时,界定所述批次中的每一者。
17.根据权利要求14所述的计算机可读媒体,其中在执行时所述指令:
相对于所述第一、第二和第三批视频块而界定第四、第五和第六批视频块;以及
以并行方式对所述第四、第五和第六批视频块进行解码。
18.根据权利要求17所述的计算机可读媒体,其中在执行时所述指令:
使用所述多线程处理器的所述第一线程以串行方式对所述第四批次进行解码;
使用所述多线程处理器的所述第二线程以串行方式对所述第五批次进行解码;以及
使用所述多线程处理器的第三线程以串行方式对所述第六批次进行解码。
19.根据权利要求13所述的计算机可读媒体,其中:
所述第一批次的所有视频块在所述图像帧内是邻接的;
所述第二批次的所有视频块在所述图像帧内是邻接的;
所述第三批次的所有视频块在所述图像帧内是邻接的;以及
所述第二批次的所述视频块与所述第三批次的所述视频块不邻接。
20.根据权利要求13所述的计算机可读媒体,其中在执行时所述指令通过界定所述批次的参数来界定所述批次,其中对于每一相应批次,所述指令界定所述图像帧内的列,界定所述图像帧内的行且界定邻接视频块的数目。
21.根据权利要求13所述的计算机可读媒体,其中在执行时所述指令界定相继批次,且对视频序列的图像帧的所有所述视频块的所述相继批次进行解码。
22.一种装置,其包括:
解码控制单元,其界定图像帧的第一批视频块,且相对于所述第一批视频块而界定第二和第三批视频块;以及
一个或一个以上处理器,其以串行方式对所述第一批视频块进行解码且彼此并行地对所述第二和第三批视频块进行解码。
23.根据权利要求22所述的装置,其中所述一个或一个以上处理器包括执行多个并行线程的数字信号处理器(DSP),其中所述DSP:
使用所述DSP的第一线程以串行方式对所述第二批次进行解码;以及
使用所述DSP的第二线程以串行方式对所述第三批次进行解码。
24.根据权利要求22所述的装置,其中所述解码控制单元:
在完成对所述第二批次的所述解码后,为所述第一线程界定另一批次;以及
在完成对所述第三批次的所述解码后,为所述第二线程界定另一批次。
25.根据权利要求24所述的装置,其中当所述线程中的一者可用于执行解码且所有必要信息可用于一组邻接视频块时,所述解码控制单元界定所述批次中的每一者。
26.根据权利要求23所述的装置,其中:
所述解码控制单元相对于所述第一、第二和第三批视频块而界定第四、第五和第六批视频块;以及
所述DSP以并行方式对所述第四、第五和第六批视频块进行解码。
27 根据权利要求26所述的装置,其中所述DSP:
使用所述第一线程以串行方式对所述第四批次进行解码;
使用所述第二线程以串行方式对所述第五批次进行解码;以及
使用所述第三线程以串行方式对所述第六批次进行解码。
28.根据权利要求22所述的装置,其中:
所述第一批次的所有视频块在所述图像帧内是邻接的;
所述第二批次的所有视频块在所述图像帧内是邻接的;
所述第三批次的所有视频块在所述图像帧内是邻接的;以及
所述第二批次的所述视频块与所述第三批次的所述视频块不邻接。
29.根据权利要求22所述的装置,其中所述解码控制单元通过界定所述批次的参数来界定所述批次,其中对于每个相应批次,所述解码控制单元界定所述图像帧内的列,界定所述图像帧内的行且界定邻接视频块的数目。
30.根据权利要求13所述的计算机可读媒体,其中所述解码控制单元界定相继批次,且所述一个或一个以上处理器对视频序列的图像帧的所有所述视频块的所述相继批次进行解码。
31.一种对视频序列的图像帧进行解码的装置,其中所述装置:
界定图像帧的第一批视频块;
以串行方式对所述第一批视频块进行解码;
相对于所述第一批视频块而界定第二批视频块和第三批视频块;以及
彼此并行地对所述第二和第三批视频块进行解码。
32.根据权利要求31所述的装置,其中所述装置:
使用多线程处理器的第一线程以串行方式对所述第二批次进行解码;以及
使用所述多线程处理器的第二线程以串行方式对所述第三批次进行解码。
33.根据权利要求32所述的装置,其中所述装置:
在完成对所述第二批次的所述解码后,为所述第一线程界定另一批次;以及
在完成所述第三批次的所述解码后,为所述第二线程界定另一批次,其中当所述线程中的一者可用于执行解码且所有必要信息可用于一组邻接视频块时,界定所述批次中的每一者。
34.一种装置,其包括:
用于界定图像帧的第一批视频块的装置;
用于以串行方式对所述第一批视频块进行解码的装置;
用于相对于所述第一批视频块而界定第二批视频块和第三批视频块的装置;以及用于彼此并行的对所述第二和第三批视频块进行解码的装置。
CN2007800208332A 2006-06-08 2007-01-27 视频块的并行批量解码 Expired - Fee Related CN101461247B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/450,622 2006-06-08
US11/450,622 US8019002B2 (en) 2006-06-08 2006-06-08 Parallel batch decoding of video blocks
PCT/US2007/061177 WO2007143235A1 (en) 2006-06-08 2007-01-27 Parallel batch decoding of video blocks

Publications (2)

Publication Number Publication Date
CN101461247A true CN101461247A (zh) 2009-06-17
CN101461247B CN101461247B (zh) 2011-07-27

Family

ID=38441913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800208332A Expired - Fee Related CN101461247B (zh) 2006-06-08 2007-01-27 视频块的并行批量解码

Country Status (6)

Country Link
US (1) US8019002B2 (zh)
EP (1) EP2025172A1 (zh)
JP (1) JP2009540680A (zh)
KR (2) KR20100097237A (zh)
CN (1) CN101461247B (zh)
WO (1) WO2007143235A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102004770A (zh) * 2010-11-16 2011-04-06 杭州迪普科技有限公司 一种网页审计方法及装置
CN102427533A (zh) * 2011-11-22 2012-04-25 苏州科雷芯电子科技有限公司 视频传输装置及方法
CN102473109A (zh) * 2009-07-23 2012-05-23 英派尔科技开发有限公司 利用批调度的线程调度
CN101710986B (zh) * 2009-11-18 2012-05-23 中兴通讯股份有限公司 基于同构多核处理器的h.264并行解码方法和系统
CN105100803A (zh) * 2014-04-29 2015-11-25 三星电子(中国)研发中心 视频解码优化方法
CN106604034A (zh) * 2015-10-19 2017-04-26 腾讯科技(北京)有限公司 数据帧的解码方法及装置
TWI694704B (zh) * 2018-12-28 2020-05-21 鴻海精密工業股份有限公司 數據分批封存方法、裝置及電腦存儲介質
US11258583B2 (en) 2018-12-28 2022-02-22 Hon Hai Precision Industry Co., Ltd. Method for data storage, device, and computer readable data storage medium
CN117063468A (zh) * 2021-03-30 2023-11-14 高通股份有限公司 使用多个比特流引擎的视频处理

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080008137A (ko) * 2006-07-19 2008-01-23 삼성전자주식회사 영상 복원 장치 및 방법
US8345756B2 (en) * 2006-08-31 2013-01-01 Ati Technologies, Inc. Method and system for parallel intra-prediction decoding of video data
JP2008072647A (ja) * 2006-09-15 2008-03-27 Toshiba Corp 情報処理装置、デコーダおよび再生装置の動作制御方法
CN101584216A (zh) * 2006-12-27 2009-11-18 英特尔公司 解码和编码视频信息的方法和装置
US20080225950A1 (en) * 2007-03-13 2008-09-18 Sony Corporation Scalable architecture for video codecs
US20090010326A1 (en) * 2007-07-05 2009-01-08 Andreas Rossholm Method and apparatus for parallel video decoding
US8725520B2 (en) * 2007-09-07 2014-05-13 Qualcomm Incorporated Power efficient batch-frame audio decoding apparatus, system and method
TW200943175A (en) * 2008-01-17 2009-10-16 Nec Corp Synchronization control method and information processing device
CN102113326A (zh) 2008-08-04 2011-06-29 杜比实验室特许公司 重叠块差异估计和补偿体系结构
US8311111B2 (en) 2008-09-11 2012-11-13 Google Inc. System and method for decoding using parallel processing
CN102177715A (zh) * 2008-11-10 2011-09-07 松下电器产业株式会社 图像解码装置、图像解码方法、集成电路以及程序
KR101590633B1 (ko) * 2008-11-11 2016-02-02 삼성전자주식회사 슬라이스 단위로 분할된 동영상을 처리하는 동영상 부호화/복호화장치 및 동영상 부호화/복호화방법
US8607234B2 (en) * 2009-07-22 2013-12-10 Empire Technology Development, Llc Batch scheduling with thread segregation and per thread type marking caps
US8799912B2 (en) * 2009-07-22 2014-08-05 Empire Technology Development Llc Application selection of memory request scheduling
KR101733205B1 (ko) * 2010-04-05 2017-05-08 삼성전자주식회사 오디오 디코딩 시스템 및 그것의 오디오 디코딩 방법
JP5482414B2 (ja) * 2010-05-07 2014-05-07 富士通セミコンダクター株式会社 動きベクトル生成回路及び動きベクトル生成方法
KR101171149B1 (ko) * 2011-06-15 2012-08-06 전자부품연구원 멀티 쓰레드 부호화 및 복호화 방법 및 이를 적용한 인코더, 디코더 및 컴퓨터로 읽을 수 있는 기록매체
US9100657B1 (en) 2011-12-07 2015-08-04 Google Inc. Encoding time management in parallel real-time video encoding
KR20130086009A (ko) * 2012-01-20 2013-07-30 삼성전자주식회사 병렬 처리를 위한 단일화된 신택스를 이용하는 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
US11228769B2 (en) * 2013-06-03 2022-01-18 Texas Instruments Incorporated Multi-threading in a video hardware engine
US11425395B2 (en) 2013-08-20 2022-08-23 Google Llc Encoding and decoding using tiling
US9596470B1 (en) * 2013-09-27 2017-03-14 Ambarella, Inc. Tree-coded video compression with coupled pipelines
US20150103909A1 (en) 2013-10-14 2015-04-16 Qualcomm Incorporated Multi-threaded video encoder
US10257529B2 (en) * 2014-06-30 2019-04-09 Intel Corporation Techniques for generating wave front groups for parallel processing a video frame by a video encoder
KR101636649B1 (ko) * 2015-04-23 2016-07-05 삼성전자주식회사 슬라이스 단위로 분할된 동영상을 처리하는 동영상 부호화/복호화장치 및 동영상 부호화/복호화방법
CN106954066A (zh) * 2016-01-07 2017-07-14 鸿富锦精密工业(深圳)有限公司 视频解码方法
US9794574B2 (en) 2016-01-11 2017-10-17 Google Inc. Adaptive tile data size coding for video and image compression
US10542258B2 (en) 2016-01-25 2020-01-21 Google Llc Tile copying for video compression
JP2018011258A (ja) * 2016-07-15 2018-01-18 日本電気株式会社 処理制御装置、処理制御方法及びプログラム
WO2019185822A1 (en) * 2018-03-29 2019-10-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Accelerating video encoding and decoding

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5852630A (en) 1997-07-17 1998-12-22 Globespan Semiconductor, Inc. Method and apparatus for a RADSL transceiver warm start activation procedure with precoding
US6065406A (en) * 1998-06-24 2000-05-23 Katzer; Matthew A. Model train control system
US20030066056A1 (en) * 2001-09-28 2003-04-03 Petersen Paul M. Method and apparatus for accessing thread-privatized global storage objects
CN100340114C (zh) * 2004-02-24 2007-09-26 上海交通大学 多路并行可变长码解码的方法
KR100694058B1 (ko) 2004-09-30 2007-03-12 삼성전자주식회사 멀티 타임 스캔 방식에 기초한 인트라 모드 인코딩 및디코딩 방법 및 장치
CN100448293C (zh) * 2005-02-03 2008-12-31 联想(北京)有限公司 一种二维离散余弦变换装置及方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102473109A (zh) * 2009-07-23 2012-05-23 英派尔科技开发有限公司 利用批调度的线程调度
US8839255B2 (en) 2009-07-23 2014-09-16 Empire Technology Development Llc Scheduling of threads by batch scheduling
CN102473109B (zh) * 2009-07-23 2015-07-01 英派尔科技开发有限公司 利用批调度的线程调度方法及装置
CN101710986B (zh) * 2009-11-18 2012-05-23 中兴通讯股份有限公司 基于同构多核处理器的h.264并行解码方法和系统
CN102004770A (zh) * 2010-11-16 2011-04-06 杭州迪普科技有限公司 一种网页审计方法及装置
CN102427533A (zh) * 2011-11-22 2012-04-25 苏州科雷芯电子科技有限公司 视频传输装置及方法
CN105100803A (zh) * 2014-04-29 2015-11-25 三星电子(中国)研发中心 视频解码优化方法
CN106604034A (zh) * 2015-10-19 2017-04-26 腾讯科技(北京)有限公司 数据帧的解码方法及装置
CN106604034B (zh) * 2015-10-19 2019-11-08 腾讯科技(北京)有限公司 数据帧的解码方法及装置
TWI694704B (zh) * 2018-12-28 2020-05-21 鴻海精密工業股份有限公司 數據分批封存方法、裝置及電腦存儲介質
US11258583B2 (en) 2018-12-28 2022-02-22 Hon Hai Precision Industry Co., Ltd. Method for data storage, device, and computer readable data storage medium
CN117063468A (zh) * 2021-03-30 2023-11-14 高通股份有限公司 使用多个比特流引擎的视频处理

Also Published As

Publication number Publication date
EP2025172A1 (en) 2009-02-18
KR20100097237A (ko) 2010-09-02
KR20090025298A (ko) 2009-03-10
US8019002B2 (en) 2011-09-13
CN101461247B (zh) 2011-07-27
WO2007143235A1 (en) 2007-12-13
US20070286288A1 (en) 2007-12-13
KR101184244B1 (ko) 2012-09-21
JP2009540680A (ja) 2009-11-19

Similar Documents

Publication Publication Date Title
CN101461247B (zh) 视频块的并行批量解码
US11647190B2 (en) Image coding apparatus, image coding method, image decoding apparatus, image decoding method, and program
US8036517B2 (en) Parallel decoding of intra-encoded video
CN101248673B (zh) 用于根据多个视频标准进行视频编码的去块滤波技术
CN100586180C (zh) 用于进行解块滤波的方法和系统
US20090125538A1 (en) Video encoding and decoding using parallel processors
US20080205508A1 (en) Method and apparatus for low complexity video encoding and decoding
US20100316123A1 (en) Moving image coding device, imaging device and moving image coding method
WO2011084754A1 (en) Temporal and spatial video block reordering in a decoder to improve cache hits
JP4879269B2 (ja) 復号化方法及び装置
CN101651829A (zh) 一种环路滤波的方法、装置及一种移动多媒体终端芯片
CN110679150A (zh) 相同帧运动估计和补偿
CN109891887B (zh) 解耦视频系数的规范和实现数据路径交织的转换缓冲器
CN113676726A (zh) 高质量先进邻居管理编码器体系结构
US5973744A (en) Apparatus for decoding video data
US6097843A (en) Compression encoding apparatus, encoding method, decoding apparatus, and decoding method
US20070153909A1 (en) Apparatus for image encoding and method thereof
JP2004222262A (ja) 動画圧縮のための内蔵型メモリ装置
CN112449187B (zh) 视频解码方法、编码方法、装置、介质及电子设备
US20230010681A1 (en) Bit-rate-based hybrid encoding on video hardware assisted central processing units
KR100968808B1 (ko) 가변길이부호 디코딩 시스템 및 그것의 디코딩 방법
Lin et al. Systematic analysis and methodology of real-time DSP implementation for hybrid video coding

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110727

Termination date: 20190127