IP Library Granted Patent US 11,470,350
Granted Patent B2
US 11,470,350 · App. 17/352,137 · Granted Oct 11, 2022

Bit depth variable for high precision data in weighted prediction syntax and semantics

Inventors: Yue Yu (San Diego, CA); Limin Wang (San Diego, CA)
Assignee: ARRIS Enterprises LLC
H04N19/577H04N19/573H04N19/70
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,470,350
App. No.
17/352,137
Filed
Jun 18, 2021
Granted
Oct 11, 2022
Kind
B2
Art Unit
2486
USPC
375/240.15
Abstract

Particular embodiments provide a variable, BitDepth, that may be set at a value based on a number of bits used to represent pixels in pictures of a video. The variable may be used in syntax elements in HEVC, such as the HEVC range extension, but other coding standards may be used. By using the variable, different resolutions for the video may be accommodated during the encoding and decoding process. For example, the number of pixels in the pictures may be represented by 8 bits, 10 bits, 12 bits, or another number of bits depending on the resolution. Using the BitDepth variable in the syntax provides flexibility in the motion estimation and motion compensation process. For example, syntax elements used in the weighted prediction process may take into account different numbers of bits used to represent the pictures.

Claims (47)

1. A method for decoding a bitstream, the method comprising:

identifying one or more weight flags signaled in the bitstream that indicates presence of weighting factors for at least one of a luma component and/or a chroma component;

determining a first weighting factor for performing weighted prediction for a current unit of a current picture the first weighting factor for weighting pixels of a first reference unit of a first reference picture when performing motion compensation for the current unit;

determining a second weighting factor for weighting pixels of a second reference unit of a second reference picture when performing motion compensation for the current unit,

wherein when weighting factors for a luma component is present:

determining from a signaled delta_luma_weight_l0 syntax element a difference of the first weighting factor and the second weighting factor applied to a luma prediction value for list 0 prediction using a variable RefPicList0[i] for a first luma component, and

deriving a variable LumaWeightL0 associated with the luma component weighting factors, wherein when the one or more weight flags indicates presence of the weighting factor for a luma component, LumaWeightL0 is derived to be equal to (1<<luma_log2_weight_denom)+delta_luma_weight_l0 in a range of −(1<<(BitDepthy−1)), (1<<(BitDepthy−1)−1), inclusive,

wherein luma_log2_weight_denom is a base 2 logarithm of a denominator for all luma weighting factors, and BitDepthy is a bit depth for the luma component of the respective reference picture; and

wherein when weighting factors for a chroma component is present:

determining from a delta_chroma_weight_l0[i][j] syntax element a difference of the first weighting factor and the second weighting factor applied to a chroma prediction value for list 0 prediction using a variable RefPicList0[i] with j equal to 0 for Cb or j equal to 1 for Cr for a second component; and

deriving a variable ChromaWeightL0 associated with the chroma component weighting factor, wherein when the one or more weight flags indicates presence of the weighting factor for a chroma component, ChromaWeightL0 is derived to be equal to ((1<<(luma_log2_weight_denom+delta_chroma_log2_weight_denom))−+delta_chroma_weight_l0, delta_chroma_weight_l0 in a range of −(1<<(BitDepthc−1)), ((1<<BitDepthc−1)−1), inclusive,

wherein delta_chroma_log2_weight_denom is a difference of a base 2 logarithm of a denominator for all chroma weighting factors, and BitDepthc is a bit depth for the chroma component of the respective reference picture;

wherein the delta_chroma_weight_l0[i][j] syntax element is within the range set by the ChromaWeightL0, and

wherein the second component comprises a chroma component of the first reference unit or the second reference unit;

wherein a determination of at least one value present in a pred_weight_table is dependent on a variable ChromaArrayType;

wherein said delta_luma_weight_l0 syntax element is included in said pred_weight_table.

2. One or more computer-readable memory or storage devices storing encoded data as part of a bitstream, the encoded data being organized to facilitate decoding by a video decoder performing operations, the video decoder being implemented using memory and one or more processing units, the operations comprising:

identifying one or more weight flags signaled in the bitstream that indicates presence of weighting factors for at least one of a luma component and/or a chroma component;

determining a first weighting factor for performing weighted prediction for a current unit of a current picture the first weighting factor for weighting pixels of a first reference unit of a first reference picture when performing motion compensation for the current unit;

determining a second weighting factor for weighting pixels of a second reference unit of a second reference picture when performing motion compensation for the current unit,

wherein when weighting factors for a luma component is present:

determining from a signaled delta_luma_weight_l0 syntax element a difference of the first weighting factor and the second weighting factor applied to a luma prediction value for list 0 prediction using a variable RefPicList0[i] for a first luma component, and

deriving a variable LumaWeightL0 associated with the luma component weighting factors, wherein when the one or more weight flags indicates presence of the weighting factor for a luma component, LumaWeightL0 is derived to be equal to (1<<luma_log2_weight_denom)+delta_luma_weight_l0 in a range of −(1<<(BitDepthy−1)), (1<<(BitDepthy−1)−1), inclusive,

wherein luma_log2_weight_denom is a base 2 logarithm of a denominator for all luma weighting factors, and BitDepthy is a bit depth for the luma component of the respective reference picture; and

wherein when weighting factors for a chroma component is present:

determining from a delta_chroma_weight_l0[i][j] syntax element a difference of the first weighting factor and the second weighting factor applied to a chroma prediction value for list 0 prediction using a variable RefPicList0[i] with j equal to 0 for Cb or j equal to 1 for Cr for a second component; and

deriving a variable ChromaWeightL0 associated with the chroma component weighting factor, wherein when the one or more weight flags indicates presence of the weighting factor for a chroma component, ChromaWeightL0 is derived to be equal to ((1<<(luma_log2_weight_denom+delta_chroma_log2_weight_denom))+delta_chroma_weight_l0, delta_chroma_weight_l0 in a range of −(1<<(BitDepthc−1)), ((1<<BitDepthc−1)−1), inclusive,

wherein delta_chroma_log2_weight_denom is a difference of a base 2 logarithm of a denominator for all chroma weighting factors, and BitDepthc is a bit depth for the chroma component of the respective reference picture;

wherein the delta_chroma_weight_l0[i][j] syntax element is within the range set by the ChromaWeightL0, and

wherein the second component comprises a chroma component of the first reference unit or the second reference unit;

wherein a determination of at least one value present in a pred_weight_table is dependent on a variable ChromaArrayType;

wherein said delta_luma_weight_l0 syntax element is included in said pred_weight_table.

3. A computing device comprising:

a video encoder configured to provide a bitstream and perform operations comprising:

providing one or more weight flags signaled in the bitstream that indicates presence of weighting factors for at least one of a luma component and/or a chroma component;

wherein a first weighting factor for performing weighted prediction for a current unit of a current picture the first weighting factor for weighting pixels of a first reference unit of a first reference picture when performing motion compensation for the current unit;

wherein a second weighting factor for weighting pixels of a second reference unit of a second reference picture when performing motion compensation for the current unit, wherein when weighting factors for a luma component is present:

providing from a signaled delta_luma_weight_l0 syntax element a difference of the first weighting factor and the second weighting factor applied to a luma prediction value for list 0 prediction using a variable RefPicList0[i] for a first luma component, and

wherein a variable LumaWeightL0 associated with the luma component weighting factors, wherein when the one or more weight flags indicates presence of the weighting factor for a luma component, LumaWeightL0 is derived to be equal to (1<<luma_log2_weight_denom)+delta_luma_weight_l0 in a range of −(1<<(BitDepthy−1)), (1<<(BitDepthy−1)−1), inclusive, wherein luma_log2_weight_denom is a base 2 logarithm of a denominator for all luma weighting factors, and BitDepthy is a bit depth for the luma component of the respective reference picture; and

wherein when weighting factors for a chroma component is present:

providing from a delta_chroma_weight_l0[i][j] syntax element a difference of the first weighting factor and the second weighting factor applied to a chroma prediction value for list 0 prediction using a variable RefPicList0[i] with j equal to 0 for Cb or j equal to 1 for Cr for a second component; and

wherein a variable ChromaWeightL0 associated with the chroma component weighting factor, wherein when the one or more weight flags indicates presence of the weighting factor for a chroma component, ChromaWeightL0 is derived to be equal to ((1<<(luma_log2_weight_denom+delta_chroma_log2_weight_denom))+delta_chroma_weight_l0, delta_chroma_weight_l0 in a range of −(1<<(BitDepthc−1)), ((1<<BitDepthc−1)−1), inclusive,

wherein delta_chroma_log2_weight_denom is a difference of a base 2 logarithm of a denominator for all chroma weighting factors, and BitDepthc is a bit depth for the chroma component of the respective reference picture;

wherein the delta_chroma_weight_l0[i][j] syntax element is within the range set by the ChromaWeightL0, and

wherein the second component comprises a chroma component of the first reference unit or the second reference unit;

wherein a determination of at least one value present in a pred_weight_table is dependent on a variable ChromaArrayType;

wherein said delta_luma_weight_l0 syntax element is included in said pred_weight_table.

Assignments (8)
SECURITY INTEREST Recorded Apr 8, 2026
From: ARRIS ENTERPRISES LLC; RUCKUS IP HOLDINGS LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 075476/0814 →
RELEASE OF SECURITY INTEREST AT REEL/FRAME 058843/0712 Recorded Jan 12, 2026
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: ARRIS ENTERPRISES LLC; COMMSCOPE NORTH CAROLINA, LLC (F/K/A COMMSCOPE, INC. OF NORTH CAROLINA); COMMSCOPE TECHNOLOGIES LLC
Reel/Frame 074591/0389 →
RELEASE OF SECURITY INTEREST AT REEL/FRAME 058875/0449 Recorded Dec 19, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: ARRIS ENTERPRISES LLC (F/K/A ARRIS ENTERPRISES, INC.); COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC
Reel/Frame 069743/0057 →
SECURITY INTEREST Recorded Dec 17, 2024
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE INC., OF NORTH CAROLINA; OUTDOOR WIRELESS NETWORKS LLC; RUCKUS IP HOLDINGS LLC
To: APOLLO ADMINISTRATIVE AGENCY LLC
Reel/Frame 069889/0114 →
SECURITY INTEREST Recorded Nov 19, 2021
From: ARRIS SOLUTIONS, INC.; ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA; RUCKUS WIRELESS, INC.
To: WILMINGTON TRUST
Reel/Frame 060752/0001 →
TERM LOAN SECURITY AGREEMENT Recorded Nov 15, 2021
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 058875/0449 →
ABL SECURITY AGREEMENT Recorded Nov 15, 2021
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 058843/0712 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2021
From: YU, YUE; WANG, LIMIN
To: ARRIS ENTERPRISES LLC
Reel/Frame 056589/0841 →
Continuity (4)
Continuation 16548836 · Aug 22, 2019
Continuation 14533369 · Nov 5, 2014
Provisional Application 61900332 · Nov 5, 2013
Related Publication 20210314608A1 · Oct 7, 2021