DETAILED ACTION
This action is responsive to the Amendments and Remarks received 09/17/2025 in which claims 15–20 are cancelled, claims 1, 8, and 13 are amended, and claims 21–26 are added as new claims.
Response to Arguments
Examiner incorporates herein previous Response to Arguments.
On pages 10–11 of the Remarks, Applicant contends that Nguyen is deficient for failing to teach or suggest inferring all transform coefficient levels to be zero when the sb_coded_flag is equal to the second value, i.e. equal to 0. The skilled artisan knows, from all the way back to much earlier video compression standards, that the coded block flag indicates whether there is coded information for a particular block or whether the block is full of all zeros. To argue that the sb_coded_flag being zero is not taught by the prior art is unreasonable. On page 11, Applicant argues Nguyen does not teach a case in which the sb_coded_flag is not present and inferred to be zero. This argument is belied by the evidence, particularly Nguyen’s second and third “Otherwise” statements. Nguyen teaches “when coded_sub_block_flag[ xS ][ yS ] is not present” and one or more conditions are true, then the flag is inferred to be equal to 1 and otherwise the flag is inferred to be equal to 0. In other words, Nguyen teaches that when the flag is not present and the enumerated conditions are not present, then the flag is inferred to be zero. Therefore, contrary to Applicant’s argument, Nguyen actually explicitly describes a case wherein the sb_coded_flag is not present and is inferred to be zero. Again, how does Applicant ignore this specific teaching of Nguyen: “Otherwise, coded_sub_block_flag[ xS ][ yS ] is inferred to be equal to 0.”? To bolster the evidence that the skilled artisan had in his possession the inference of the sb_coded_flag to be zero, the rejection further cites to the teachings of Fan, which also teaches inferring the flag to be zero when not present. Therefore, the rejection demonstrates by a preponderance of evidence that such a feature is not inventive. Accordingly, the averred feature is obvious under 35 U.S.C. 103.
On page 12 of the Remarks, Applicant contends Nguyen, in teaching that when sb_coded_flag is equal to 0, all transform coefficient levels are inferred to be equal to zero, fails to teach or suggest the opposite, that when sb_coded_flag is 1, there are non-zero values present. Such an argument profoundly unreasonable to one skilled in the art. First, the coded block flag concept has been around in this art for decades and the skilled artisan knows that the use of the flag indicates whether there are any non-zero coefficients coded for the block. Second, the flags used in this art in general, and certainly specifically the coded block flag, are binary indicators such that a teaching of a flag that indicates one thing when false necessarily means another thing when true (absent some other signal being a contraindication, which is outside the scope of this discussion). Third, the flags used in this art represent logic. Logically, when the prior art says the sb_coded_flag equal to false means there are no non-zero coefficients in the block, then the sb_coded_flag equal to true must mean there are non-zero coefficients in the block. For all the foregoing reasons, Applicant’s argument that, “Nguyen is completely silent about the values for the transform coefficient levels of the subblock when the flag sb_coded_flag is equal to 1,” is unpersuasive of error. Accordingly, the averred feature is obvious under 35 U.S.C. 103.
Other claims are not argued separately. Remarks, 13.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1–14 and 21–26 are rejected under 35 U.S.C. 103 as being unpatentable over Nguyen, “Proposed Fix for Ticket #1547: sub_coded_flag non-present inference,” JVET-Z0249-v1, 26th Meeting: by teleconference, 20–29 April 2022 (herein “Nguyen”), in view of Swarrington, “sb_coded_flag non-present inference logic error,” Bug # 1547, accessed on 12/18/2024 at https://jvet.hhi.fraunhofer.de/trac/vvc/ticket/1547 (ticket opened 04/13/2022) (herein “Swarrington”) and Fan (US 2022/0159259 A1).
Examiner notes that Nguyen’s contribution got the name of the flag wrong (used HEVC name rather than VVC name), but that such a typographical error does not amount to a patentable distinction and that the skilled artisan would have immediately recognized the correct flag name in context. Indeed, Nguyen’s publication, right before the errand flag name, coded_sub_block_flag[ xS ][ yS ], used the correct flag name, sb_coded_flag[ xS ][ yS ].
Regarding claim 1, the combination of Nguyen, Swarrington, and Fan teaches or suggests a method for decoding a video bitstream, the method comprising: determining a flag sb_coded_flag for a subblock of a current transform block (Nguyen, Section 2: teaches the sb_coded_flag which specifies transform coefficient information for a subblock), determining the flag sb_coded_flag comprising: determining whether a first flag specifying whether a transform skip is applied to the transform block is 0 or a second flag specifying whether a transform skip residual coding process is disabled is equal to 1 (Nguyen, Section 2: teaches determining the value of transform_skip_flag[ x0 ][ y0 ][ cIdx ] is equal to 0 or sh_ts_residual_coding_disabled_flag is equal to 1 as a condition to invoke further pseduocode), in response to determining that the first flag is equal to 0 or the second flag is equal to 1, in response to determining that the flag sb_coded_flag for the subblock is not present, inferring the flag sb_coded_flag for the subblock to be a first value in response to determining one or more conditions are true (Nguyen, Section 2: teaches an “Otherwise” pseudocode statement that applies when coded_sub_block_flag[ xS ][ yS ] is not present and one or more following conditions are true), the conditions comprising a first condition that the subblock is a DC subblock (Examiner notes the skilled artisan knows the DC frequency component is located at ( 0, 0 ); Nguyen, Section 2: teaches under the applicable “Otherwise” pseudocode statement noted supra a first condition, ( xS, yS ) is equal to ( 0, 0 )) and a second condition that the subblock is a last subblock in the transform block containing a non-zero coefficient level (Nguyen, Section 2: teaches under the applicable “Otherwise” pseudocode statement noted supra, a second condition, ( xS, yS ) is equal to ( LastSignificantCoeffX >> log2SbW, LastSignificantCoeffY >> log2SbH )), or inferring the flag sb_coded_flag for the subblock to be a second value in response to determining that the conditions are not true (Nguyen, Section 2: teaches under the applicable “Otherwise” pseudocode statement noted supra, a second “Otherwise” statement following the two conditions noted supra, that the sub-block coded block flag is inferred to be equal to zero), in response to determining that the flag sb_coded_flag for the subblock is present, determining a context index for an arithmetic decoding process used for decoding the flag sb_coded_flag for the subblock based, at least in part, upon flags sb_coded_flag of previous subblocks (Examiner interprets this limitation consistent with Applicant’s original claim 6; Swarrington, Description: teaches the ctxInc for sb_coded_flag[0][1] using eq. 1548 and specifically csbfCtx += sb_coded_flag[ xS + 1 ][ yS ], wherein the coded sub-block flag context queries the value of the previous subblock; Examiner notes prior art eq. 1547 and 1548 in the VVC Specification (JVET-T2001) shows context initialization may depend on neighboring coded block flags wherein eq. 1547 moves the position for the x-coordinate and 1548 moves the position for the y-coordinate and that these equations are found in Section 9.3.4.2.6, titled, “Derivation process of ctxInc for the syntax element sb_coded_flag), decoding the flag sb_coded_flag for the subblock according to the arithmetic decoding process with the determined context index (See previous limitation; Examiner notes it is obvious to decode this flag based on its CABAC context as taught by Swarrington and Section 9.3.4.2.6 of JVET-T2001); and decoding the transform block by decoding at least a portion of the bitstream based on the determined flag sb_coded_flag (Nguyen, Section 2: teaches that the value of the sb_coded_flag informs whether transform coefficient syntax elements are present or not in the bitstream); wherein in response to the flag sb_coded_flag being equal to the second value, all transform coefficient levels of the subblock are inferred to be equal to 0 (Examiner notes this feature is simply reciting what the flag means, which the skilled artisan already knows; Fan, ¶ 0370: teaches coded_sub_block_flag can be inferred to be 0 and when the flag is zero, all coefficients in the block are zero), wherein the flag sb_coded_flag equal to the second value comprises the flag sb_coded_flag is not present and inferred to be the second value (Nguyen, Section 2: teaches under the applicable “Otherwise” pseudocode statement noted supra, a second “Otherwise” statement following the two conditions noted supra, that the sub-block coded block flag is inferred to be equal to zero; Examiner notes a flag can be inferred if not present, otherwise the flag is present and can take on one of two values; Fan, ¶ 0370: teaches coded_sub_block_flag can be inferred to be 0 and when the flag is zero, all coefficients in the block are zero); wherein when the first flag is equal to 1 and the second flag is equal to 0, and when the flag sb_coded_flag is equal to the first value, at least one of the transform coefficient levels of the subblock has a non-zero value (Examiner notes the first flag is the transform skip flag and a value of 1 means the transform is skipped; Examiner notes the second flag is a TSRC disabled flag and a value of 0 means TSRC is not disabled; Examiner notes the first value for sb_coded_flag is 1, meaning the sub-block has non-zero valued data therein; The recited scenario is found in the last Otherwise statement of pseudocode in Nguyen, which teaches the coded block flag indicates non-zero data is present).
One of ordinary skill in the art, before the effective filing date of the claimed invention, would have been motivated to combine the elements taught by Nguyen, with those of Swarrington, because both references are drawn to the same field of endeavor such that one wishing to fix the relevant bug identified by Swarrington would be led to their relevant teachings and because the unintended editorial mistake was fixed by merely going back to similar behavior for the coded block flag used in HEVC as described or suggested in both publications (Nguyen uses the HEVC name for the coded block flag). Therefore, because the claimed invention is nothing more than a mere combination of prior art elements, because the claimed invention amounts to little more than fixing a typographical error, and because others admit and Applicant admits in JVET-Z150 that the correct behavior was already in use in the VTM software, the invention is nothing more than a mere combination of prior art elements, according to known methods, to yield a predictable result. This rationale applies to all combinations of Nguyen and Swarrington used in this Office Action unless otherwise noted. In addition, this rationale applies to all findings of obviousness used in this Office Action unless otherwise noted.
One of ordinary skill in the art, before the effective filing date of the claimed invention, would have been motivated to combine the elements taught by Nguyen and Swarrington, with those of Fan, because all three references are drawn to the same field of endeavor such that one wishing to fix the relevant bug identified by Swarrington would be led to their relevant teachings and because Fan is merely teaching what the skilled artisan already knows, i.e. that the coded block flag signals whether there are any non-zero coefficients in the sub-block (i.e. coefficient group). Therefore, the invention is nothing more than a mere combination of prior art elements, according to known methods, to yield a predictable result. This rationale applies to all combinations of Nguyen, Swarrington, and Fan used in this Office Action unless otherwise noted.
Regarding claim 2, the combination of Nguyen, Swarrington, and Fan teaches or suggests the method of claim 1, wherein the first flag is transform_skip_flag[ x0 ][ y0 ][ cldx ] and the second flag is sh_ts_residual_coding_disabled_flag, wherein (x0, y0) specifies a luma location of a top-left sample of the transform block relative to a top-left sample of the frame, and cldx is a colour component index (Nguyen, Section 2: teaches determining the value of transform_skip_flag[x0][y0][cIdx] is equal to 0 or sh_ts_residual_coding_disabled_flag is equal to 1 as a condition to invoke further pseudocode; Examiner notes the skilled artisan knows the cIdx variable index indicates luma and chroma components).
Regarding claim 3, the combination of Nguyen, Swarrington, and Fan teaches or suggests the method of claim 1, wherein determining that the first condition is true comprises determining that an index for the subblock (xS, yS) is equal to (0,0) (Nguyen, Section 2: teaches under the applicable “Otherwise” pseudocode statement noted supra a first condition, ( xS, yS ) is equal to ( 0, 0 )).
Regarding claim 4, the combination of Nguyen, Swarrington, and Fan teaches or suggests the method of claim 1, wherein determining that the second condition is true comprises determining that a scan location of the subblock (xS, yS) is equal to (LastSignificantCoeffX >> log2SbW, LastSignificantCoeffY >> log2SbH), where LastSignificantCoeffX denotes a position of a last significant coefficient in the transform block in a horizontal direction, LastSignificantCoeffY denotes a position of the last significant coefficient in the transform block in a vertical direction, log2SbW denotes a binary logarithm of a width of the subblock, and log2SbH denotes a binary logarithm of a height of the subblock (Nguyen, Section 2: teaches under the applicable “Otherwise” pseudocode statement noted supra, a second condition, ( xS, yS ) is equal to ( LastSignificantCoeffX >> log2SbW, LastSignificantCoeffY >> log2SbH )).
Regarding claim 5, the combination of Nguyen, Swarrington, and Fan teaches or suggests the method of claim 1, wherein the first value is 1 and the second value is 0 (Nguyen, Section 2: teaches an “Otherwise” pseudocode statement that applies when coded_sub_block_flag[ xS ][ yS ] is not present and one or more following conditions are true and wherein if one or more of the following are true the claimed “first value” is inferred to be equal to 1 and 0 otherwise).
Regarding claim 6, the combination of Nguyen, Swarrington, and Fan teaches or suggests the method of claim 1, wherein determining the context index for the arithmetic decoding process comprises: determining a variable csbfCtx based on a location of the subblock (xS, yS), decoded sb_coded_flags for previous subblocks in a scan order, a width of the transform block, and a height of the transform block; determining a context index increment ctxInc based on the variable csbfCtx; and determining the context index for the arithmetic decoding process using the context index increment ctxInc (Swarrington, Description: teaches the ctxInc for sb_coded_flag[0][1] using eq. 1548 and specifically csbfCtx += sb_coded_flag[ xS + 1 ][ yS ], wherein the coded sub-block flag context queries the value of the previous subblock; Examiner notes prior art eq. 1547 and 1548 in the VVC Specification (JVET-T2001) shows context initialization may depend on neighboring coded block flags wherein eq. 1547 moves the position for the x-coordinate and 1548 moves the position for the y-coordinate and that these equations are found in Section 9.3.4.2.6, titled, “Derivation process of ctxInc for the syntax element sb_coded_flag).
Regarding claim 7, the combination of Nguyen, Swarrington, and Fan teaches or suggests the method of claim 6, wherein the previous subblocks in the scan order comprises a first neighbouring subblock on a right side of the subblock and a second neighbouring subblock below the subblock (Swarrington, Description: teaches the ctxInc for sb_coded_flag[0][1] using eq. 1548 and specifically csbfCtx += sb_coded_flag[ xS + 1 ][ yS ], wherein the coded sub-block flag context queries the value of the previous subblock; Examiner notes prior art eq. 1547 and 1548 in the VVC Specification (JVET-T2001) shows context initialization may depend on neighboring coded block flags wherein eq. 1547 moves the position for the x-coordinate and 1548 moves the position for the y-coordinate and that these equations are found in Section 9.3.4.2.6, titled, “Derivation process of ctxInc for the syntax element sb_coded_flag).
Claim 8 lists the same elements as claim 1, but in CRM form rather than method form. Therefore, the rationale for the rejection of claim 1 applies to the instant claim.
Claim 9 lists the same elements as claim 2, but in CRM form rather than method form. Therefore, the rationale for the rejection of claim 2 applies to the instant claim.
Claim 10 lists the same elements as claim 3, but in CRM form rather than method form. Therefore, the rationale for the rejection of claim 3 applies to the instant claim.
Claim 11 lists the same elements as claim 4, but in CRM form rather than method form. Therefore, the rationale for the rejection of claim 4 applies to the instant claim.
Claim 12 lists the same elements as claim 5, but in CRM form rather than method form. Therefore, the rationale for the rejection of claim 5 applies to the instant claim.
Claim 13 lists the same elements as claim 6, but in CRM form rather than method form. Therefore, the rationale for the rejection of claim 6 applies to the instant claim.
Claim 14 lists the same elements as claim 7, but in CRM form rather than method form. Therefore, the rationale for the rejection of claim 7 applies to the instant claim.
Claim 21 lists the same elements as claim 1, but is drawn to the corresponding encoding method rather than the decoding method. Therefore, the rationale for the rejection of claim 1 applies to the instant claim.
Claim 22 lists the same elements as claim 2, but is drawn to the corresponding encoding method rather than the decoding method. Therefore, the rationale for the rejection of claim 2 applies to the instant claim.
Claim 23 lists the same elements as claim 3, but is drawn to the corresponding encoding method rather than the decoding method. Therefore, the rationale for the rejection of claim 3 applies to the instant claim.
Claim 24 lists the same elements as claim 4, but is drawn to the corresponding encoding method rather than the decoding method. Therefore, the rationale for the rejection of claim 4 applies to the instant claim.
Claim 25 lists the same elements as claim 6, but is drawn to the corresponding encoding method rather than the decoding method. Therefore, the rationale for the rejection of claim 6 applies to the instant claim.
Claim 26 lists the same elements as claim 7, but is drawn to the corresponding encoding method rather than the decoding method. Therefore, the rationale for the rejection of claim 7 applies to the instant claim.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Gan et al., “Alternate proposed fix for ticket #1547 and crosscheck of JVET-Z0249,” JVET-Z0250-v1, 26th Meeting: by teleconference, 20–29 April 2022 (uploaded 04/28/2022). This publication is Applicant’s own work and admits the problem solved by the filed patent application is nothing more than a fix for a typographical error in the VVC specification text (Introduction). The decoding behavior of the sb_coded_flag for RRC was incorrectly modified by the editorial members during publication of the draft specification at the 14th (“N”) meeting (Introduction). This publication admits that the intended behavior as executed by the software was prior art and that the contribution is merely fixing documentation to adhere to the behavior of the VTM software, the VTM software being prior art. When comparing Sections 2 and 3, which describe the fix proposed by another and the fix proposed by Applicant, respectively, the only difference is a trivial and redundant set of language that says that when the coded sub-block flag is 1, at least one transform coefficient level has a non-zero value. The skilled artisan already knows that, as that has been the point of the cbf for several generations of the video coding standard.
Yoo (US 2022/0046247 A1) teaches transform skip, the ctxIdx and csbfCtx syntax elements, etc.
Sarwer (US 2020/0404332 A1) teaches the context coding of coded_sub_block_flag in VVC for transform skip mode using top and left neighbors, block width and height information, and color component index cIdx, among other things relevant to the claims (¶ 0126).
Wang (US 2023/0024545 A1) teaches, “If the syntax element sb_coded_flag is equal to 0, it indicates that the sub-block contains all zero coefficient levels” (¶ 0023).
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any extension fee pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Michael J Hess whose telephone number is (571)270-7933. The examiner can normally be reached Mon - Fri 9:00am-5:30pm.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, William Vaughn can be reached on (571)272-3922. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8933.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/MICHAEL J HESS/Examiner, Art Unit 2481