IP Library Granted Patent US 11,412,226
Granted Patent B2
US 11,412,226 · App. 17/155,942 · Granted Aug 9, 2022

Context initialization based on slice header flag and slice type

Inventors: Kiran Misra (Vancouver, WA); Christopher Segall (Camas, WA)
Assignee: Velos Media, LLC
H04N19/13H04N19/159H04N19/172H04N19/174H04N19/436H04N19/44H04N19/46H04N19/577H04N19/157
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,412,226
App. No.
17/155,942
Granted
Aug 9, 2022
Kind
B2
Abstract

Technique for initialization of encoders and decoders. In some cases, the decoder receives a slice and identifies if the slice is either a forward predicted B-slice or a backward predicted B-slice, and not both a forward and backward predicted B-slice, and based upon this identification initializes, using a P-slice technique, a context associated with the slice.

Claims (31)

1. A method for encoding a video frame, the method comprising:

encoding, in a bitstream, a syntax element indicative of a slice type of a slice;

when the slice type of the slice is a B slice type, determining an initialization method for initializing a Context-Adaptive Binary Arithmetic Coding (CABAC) context associated with the slice to be one of a first initialization method or a second initialization method, and

in a case that the initialization method is a first initialization method, setting a value of a flag to a first value,

in a case that the initialization method is a second initialization method, setting the value of the flag to a second value, and

encoding, in the bitstream, the flag;

when the slice type of the slice is a P slice type, determining the initialization method for initializing the CABAC context associated with the slice to be one of the first initialization method or the second initialization method, and

in a case that the initialization method is the second initialization method, setting the value of the flag to the first value,

in a case that the initialization method is the first initialization method, setting the value of the flag to the second value, and

encoding, in the bitstream, the flag; and

when the slice type of the slice is an I slice type, the initialization method is a third initialization method.

2. The method of claim 1 , wherein the flag is indicative of the initialization method for slices of the B slice type and the P slice type.

3. The method of claim 1 , further comprising partitioning the video frame into a plurality of slices comprising the slice.

4. The method of claim 1 , wherein the first initialization method comprises using a first set of precomputed values to initialize the CABAC context, the second initialization method comprises using a second set of precomputed values to initialize the CABAC context, and the third initialization method comprises using a third set of precomputed values to initialize the CABAC context.

5. The method of claim 1 , further comprising initializing the CABAC context for the slice using the initialization method.

6. An apparatus for encoding a video frame, the apparatus comprising a processor and memory, the processor, working together with the memory, being configured to:

encoding, in a bitstream, a syntax element indicative of a slice type of a slice;

determining an initialization method for initializing a Context-Adaptive Binary Arithmetic Coding (CABAC) context associated with the slice;

when the slice type of the slice is a B slice type,

in a case that the initialization method is a first initialization method, setting a value of a flag to a first value,

in a case that the initialization method is a second initialization method, setting the value of the flag to a second value, and

encoding, in the bitstream, the flag;

when the slice type of the slice is a P slice type,

in a case that the initialization method is the second initialization method, setting the value of the flag to the first value,

in a case that the initialization method is the first initialization method, setting the value of the flag to the second value, and

encoding, in the bitstream, the flag; and

when the slice type of the slice is an I slice type, the initialization method is a third initialization method.

7. The apparatus of claim 6 , wherein the flag is indicative of the initialization method for slices of the B slice type and the P slice type.

8. The apparatus of claim 6 , wherein the processor, working together with the memory, is further configured to partition the video frame into a plurality of slices comprising the slice.

9. The apparatus of claim 6 , wherein the first initialization method comprises using a first set of precomputed values to initialize the CABAC context, the second initialization method comprises using a second set of precomputed values to initialize the CABAC context, and the third initialization method comprises using a third set of precomputed values to initialize the CABAC context.

10. The apparatus of claim 6 , wherein the processor, working together with the memory, is further configured to initialize the CABAC context for the slice using the initialization method.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2021
From: MISRA, KIRAN; SEGALL, CHRISTOPHER A.
To: SHARP LABORATORIES OF AMERICA, INC.
Reel/Frame 055011/0099 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2021
From: SHARP LABORATORIES OF AMERICA, INC.
To: SHARP KABUSHIKI KAISHA
Reel/Frame 055011/0105 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2021
From: SHARP CORPORATION
To: VELOS MEDIA, LLC
Reel/Frame 055011/0120 →
Continuity (7)
Continuation 16689851 · Nov 20, 2019
Continuation 16227322 · Dec 20, 2018
Continuation 15285619 · Oct 5, 2016
Continuation 15084866 · Mar 30, 2016
Continuation 13294100 · Nov 10, 2011
Continuation 13174564 · Jun 30, 2011
Related Publication 20210144383A1 · May 13, 2021
Cited By (2)
US 12,375,675 US 12,489,902