对比文件名称:2011-10-11_US8036517B_发明授权_US08036517B2 Parallel decoding of intra-encoded video
目标专利名称:285多线程纹理解码CN104041050B
模型名称:DeepSeek-R1
| 技术特征描述及公开性判断 | 对比文件原文引用 | 公开性论述 |
| **A: 其包含:将VP8帧的第一宏块指派给第一硬件线程并将所述VP8帧的第二宏块指派给第二硬件线程** <br>《隐含公开》 | 第[0048]段:”In the presently described example, DSP 16 includes six parallel DSP processors. ... Each DSP processor executes a separate thread of instructions and is considered to be a different work entity. All threads receive work to do from a separate queue.” <br> 第[0052]-[0055]段描述了线程T1处理MB0,线程T2处理MB5等。例如,第[0055]段:”DSP thread T1 pops the EMP for MB2 from the queue, and thread T2 pops the EMIP for MB5 from the queue.” | 对比文件公开了一种并行解码视频帧内编码部分(EMIPs)的方法,其使用多个工作实体(例如,并行的DSP处理器或软件线程)同时解码不同的EMIPs(每个EMIP对应一个宏块)。具体地,通过一个控制实体(如DSP 16上运行的进程)根据前驱表(predecessor table)识别出没有未解码前驱的EMIPs,并将它们放入共享队列。然后,不同的工作线程(如T1, T2)从队列中取出不同的EMIPs进行并行解码。这实质上公开了将不同宏块(EMIPs)指派给不同的硬件线程(工作实体)。虽然对比文件主要示例为H.264/MPEG4,但其描述的并行解码机制(识别可并行解码的块并分配给多个处理实体)是一种通用的多线程视频解码方法。本领域技术人员可以理解,为了在多线程处理器上实现VP8帧的并行解码,必然需要将不同的宏块指派给不同的硬件线程。因此,对比文件隐含公开了将第一宏块指派给第一硬件线程并将第二宏块指派给第二硬件线程的技术特征。 |
| **B: 以及经由以下步骤来通过所述第一硬件线程解码所述第一宏块并同时通过所述第二硬件线程解码所述第二宏块:重构所述第一宏块及所述第二宏块** <br>《直接公开》 | 第[0048]段:”In one example, DSP 16 includes six parallel DSP processors. ... Each DSP processor executes a separate thread of instructions and is considered to be a different work entity.” <br> 第[0052]-[0055]段及图12-23描述了多个线程同时解码不同宏块。例如,第[0055]段:”The EMIPs for MB2 and MB5 are thereafter decoded simultaneously by different work entities (in this case, different threads).” <br> 第[0036]段描述了解码过程包括重构(reconstruction):”The difference pixel values are ordered such that difference pixel values for a first macroblock are output, and then difference pixel values for a second macroblock are output... Each pixel value of difference macroblock D is added to a pixel value from macroblock P to generate a pixel value of a reconstructed (but unfiltered) macroblock (UF).” | 对比文件明确公开了使用多个不同的工作实体(例如,不同的DSP处理器线程)同时(simultaneously)解码不同的宏块(EMIPs),如图12-23所示的解码流程,其中MB2和MB5被同时解码。同时,解码过程明确包括“重构(reconstruction)”步骤,即通过将预测宏块P与差值宏块D相加来生成未滤波的重构宏块UF(见图4及第[0036]段)。因此,对比文件直接公开了通过第一硬件线程解码第一宏块并同时通过第二硬件线程解码第二宏块,且该解码过程包括重构所述宏块。 |
| **C: 将所述第一宏块和所述第二宏块的经重构像素存储于行缓冲器及列缓冲器中的至少一者内以执行帧内预测** <br>《直接公开》 | 第[0058]段:”To provide access to these prefiltered values for the subsequent decoding of EMIPs for other macroblocks, the bottom edge strip of prefiltered values of the EMIP being decoded is stored into a buffer prior to deblocking filtering. Similarly, ... the right edge strip of prefiltered values of the EMIP being decoded is stored into the buffer.” <br> 第[0059]段:”FIG. 25 illustrates a buffer 28 that is used to store prefiltered reconstructed values for use in decoding subsequent EMIPs in the same frame. Buffer includes several vertically extending column sections 29-32 and several horizontally extending row sections 33-37.” <br> 第[0060]段:”When the EMIP for macroblock MB12 is decoded, the values in portion 35 of buffer may be used in intra-decoding.” | 对比文件详细描述了在去块滤波之前,将解码得到的“预滤波(prefiltered)”重构值(即经重构但未滤波的像素值)存储在一个缓冲区(buffer 28)中。该缓冲区具有垂直延伸的列部分(column sections)和水平延伸的行部分(row sections),分别对应于宏块列的底部边缘条带和宏块行的右侧边缘条带(见图25, 26)。存储这些值的明确目的,就是为了在后续解码同一帧内其他宏块(依赖于这些边缘像素)时,用于帧内预测(intra-decoding)(见第[0060]段)。这直接公开了将经重构像素(即预滤波值)存储于行缓冲器和列缓冲器(即缓冲区的行部分和列部分)中以用于执行帧内预测。 |
| **D: 以及在所述第一硬件线程或所述第二硬件线程重构另外的宏块之前,紧随所述第一宏块及所述第二宏块的重构来执行对所述第一宏块及所述第二宏块的回路滤波。** <br>《未公开》 | 第[0038]段:”Deblocking filter 25 outputs the reconstructed and filtered current macroblock (F).” <br> 第[0050]段:”From step 103, decoding also continues such that the reconstructed macroblock (UF) is deblock filtered to generate a reconstructed and filtered macroblock.” | 对比文件虽然公开了在解码流程中存在去块滤波(deblock filtering,相当于回路滤波)步骤,并且该滤波是在重构(生成UF)之后进行的。然而,对比文件的核心发明点之一是支持并行解码,其关键技术手段是在重构后、滤波前,将预滤波值(UF)存入缓冲区以供后续宏块的帧内预测使用(见第[0058]段)。这意味着,一个宏块的重构完成与它的滤波之间,可能存在延迟,因为需要先将其边缘像素值存入缓冲区。对比文件并未教导或暗示“紧随重构”(immediately following the reconstruction)就执行滤波。相反,其流程更可能是:重构(UF) -> 存储UF的边缘值到缓冲区 -> (可能稍后)去块滤波(F)。目标专利强调“紧随重构”进行滤波,是为了在宏块级别而非帧边界进行滤波以实现并行,但对比文件通过存储预滤波值来解耦重构与滤波的严格时序依赖,其滤波时机未必是“紧随”重构。因此,对比文件没有公开“在第一/第二硬件线程重构另外的宏块之前,紧随第一/第二宏块的重构来执行对其的回路滤波”这一特定时序限制特征。 |
| **E: 其中所述第一宏块和所述第二宏块来自不同行。** <br>《直接公开》 | 图15及对应描述(第[0054]-[0055]段):该图显示了MB2和MB5被同时解码。从图7、11的宏块编号布局可知,MB2位于第0行,MB5位于第1行(假设行从上到下编号,每行4个宏块)。因此,MB2和MB5来自不同行。 | 对比文件的图15明确展示了同时被解码的两个宏块MB2和MB5。根据对比文件图7的宏块排列(4x5网格),MB2的索引为2(第一行第三个),MB5的索引为5(第二行第一个)。因此,MB2和MB5确实来自不同的行。这直接公开了被同时解码的两个宏块可以来自不同行。 |
| **F: 其进一步包含将未经滤波像素存储于所述行缓冲器及所述列缓冲器中的至少一者中。** <br>《直接公开》 | 第[0058]段:”To provide access to these prefiltered values for the subsequent decoding of EMIPs for other macroblocks, the bottom edge strip of prefiltered values of the EMIP being decoded is stored into a buffer prior to deblocking filtering. Similarly, ... the right edge strip of prefiltered values of the EMIP being decoded is stored into the buffer.” <br> 第[0059]段描述了缓冲区28的行部分和列部分。 | 对比文件明确记载了在去块滤波(deblocking filtering)之前,将“预滤波值(prefiltered values)”存储到缓冲区中。这里的“预滤波值”即指已经重构但尚未进行去块滤波的像素值,也就是“未经滤波像素”。并且这些值被存储在缓冲区的行部分(row sections)和列部分(column sections)中。这直接公开了将未经滤波像素存储于行缓冲器和列缓冲器中的技术特征。 |
| **G: 所述解码进一步包含:在每一硬件线程中重构一个宏块** <br>《直接公开》 | 第[0048]段:”Each DSP processor executes a separate thread of instructions and is considered to be a different work entity.” <br> 第[0052]段:”The first thread (denoted T1 in FIG. 1) picks it up for decoding on the first virtual DSP processor and decodes the EMIP for MB0 in accordance with the methodology of FIG. 4.” <br> 图4的方法论包括重构步骤(见第[0036]段及求和节点21生成UF)。 | 对比文件公开了每个工作实体(例如,一个DSP处理器线程)负责解码一个EMIP(对应一个宏块),并且该解码过程包括重构该宏块(见图4,生成未滤波的重构宏块UF)。例如,线程T1解码MB0,线程T2解码MB5等。这直接公开了在每一硬件线程中重构一个宏块。 |
| **H: 且接着对所述经重构宏块进行滤波。** <br>《未公开》 | 第[0038]段:”Deblocking filter 25 outputs the reconstructed and filtered current macroblock (F).” <br> 第[0050]段:”From step 103, decoding also continues such that the reconstructed macroblock (UF) is deblock filtered to generate a reconstructed and filtered macroblock.” | 对比文件公开了解码流程中包含对重构宏块(UF)进行去块滤波(deblock filtering)以生成滤波后宏块(F)的步骤。然而,如特征D所述,对比文件并未明确或必然地教导“紧接着(且接着)”重构步骤就立即执行滤波。其流程设计(存储预滤波值到缓冲区)允许甚至暗示了重构与滤波之间可能存在其他操作或间隔,以支持并行解码中的依赖管理。目标专利中“且接着”所表达的紧接时序关系,在对比文件中未被披露。因此,该特征未被公开。 |
| **I: 其中所述解码进一步包含:将从先前宏块到所述第一宏块和所述第二宏块的经重构像素存储于所述行缓冲器和所述列缓冲器中** <br>《直接公开》 | 第[0058]-[0060]段及图25-26:详细描述了当解码一个宏块(如MB7)基本完成(即重构后)时,将其右侧边缘和底部边缘的预滤波(即经重构)像素值分别存储到缓冲区28的对应行部分和列部分中,以供后续解码右侧(如MB8)和下方(如MB12)的宏块时使用。 | 对比文件明确公开了存储“先前宏块”(例如MB7)的经重构(预滤波)像素值到缓冲区(包括行部分和列部分)中。这些存储的值正是用于后续宏块(如MB8, MB12)的帧内预测。这直接对应于目标专利中存储从先前宏块到当前宏块的经重构像素于行/列缓冲器中的技术特征。 |
| **J: 以及使用所述先前宏块的经重构邻近者信息执行帧内预测。** <br>《直接公开》 | 第[0060]段:”When the EMIP for macroblock MB8 is to be decoded, the values in portion 30 of buffer 28 may be used in intra-decoding.” <br> 第[0036]段:”In this intra-decoding, note that the portion of the prediction macroblock (P) is not a portion of a filtered macroblock taken from the output of a deblocking filter block 25, but rather is a portion of a prefiltered macroblock taken from the output of summer 21.” | 对比文件明确说明了存储在缓冲区28中的预滤波值(即经重构但未滤波的像素值)用于后续EMIP的“帧内解码(intra-decoding)”。帧内解码的核心步骤之一就是使用来自同一帧内已解码邻近块的像素信息进行预测,即“帧内预测”。对比文件第[0036]段也指出,用于帧内解码的预测宏块P来自预滤波宏块(即重构输出)。因此,对比文件直接公开了使用先前宏块的经重构邻近者信息(存储于缓冲区中的预滤波值)来执行帧内预测。 |
| **K: 其中解码包含对所述VP8帧的所述第一宏块和所述第二宏块中的每一者进行纹理解码。** <br>《隐含公开》 | 第[0030]-[0038]段及图4:描述了完整的解码流程,包括熵解包、系数重缩放、逆变换、预测(帧间/帧内)、重构、去块滤波。这涵盖了视频解码的核心步骤,与“纹理解码(texture decoding)”所涵盖的预测、逆变换、重构、滤波等关键处理阶段在功能上实质对应。 | 对比文件详细描述了对视频帧内编码部分(EMIPs,对应宏块)的解码过程,该过程包括:预测(基于帧内或帧间)、逆变换、重构以及去块滤波。这些步骤共同构成了对宏块像素数据的解码,即广义上的“纹理解码”。虽然对比文件针对的是H.264/MPEG4格式,而目标专利针对VP8格式,但“纹理解码”作为视频解码中处理像素数据(纹理)的核心流程,其基本步骤(预测、变换/逆变换、重构、滤波)在不同编解码标准中是相通的概念。本领域技术人员能够理解,对比文件公开的对H.264/MPEG4宏块的解码,即是对该宏块进行纹理解码。因此,对比文件隐含公开了解码包含对宏块进行纹理解码这一技术特征。 |
| **L: 其进一步包含将所述多线程处理器集成到移动电话、机顶盒、音乐播放器、视频播放器、娱乐单元、导航装置、计算机、手持式个人通信系统PCS单元、便携式数据单元及固定位置数据单元中的至少一者中。** <br>《直接公开》 | 第[0004]-[0005]段,第[0025]段:背景技术部分以蜂窝电话(cellular telephone)为例说明应用场景。 <br> 第[0063]段:”The decoding method need not be embodied on a mobile communication device, but rather may be embodied on another device. In one embodiment, the decoding method is performed by a video reader (for example, Windows Media Player) application that executes on a personal computer. The decoding method can be performed by video decoding hardware and/or software embodied in televisions, video disc players, and other video decoding and viewing devices.” | 对比文件明确以移动通信设备(mobile communication device),特别是蜂窝电话(cellular telephone)作为其解码方法的主要实施例和应用场景(见第[0004]-[0005], [0025]段)。此外,在第[0063]段中,对比文件进一步说明该方法还可以实施于其他设备,包括个人计算机(执行视频播放器应用)、电视、视频光盘播放器以及其他视频解码和观看设备。这覆盖了目标专利权利要求中列举的多种设备类型(如移动电话、计算机、视频播放器、娱乐单元等)。因此,对比文件直接公开了将包含多线程解码功能的处理器集成到所述各类设备中的技术特征。 |
<<<B>>><<<C>>><<<E>>><<<F>>><<<G>>><<<I>>><<<J>>><<<L>>><<<a>>><<<k>>>