IP Library Granted Patent US 11,368,704
Granted Patent B2
US 11,368,704 · App. 17/223,331 · Granted Jun 21, 2022

Device and method for coding video data

Inventors: Yu-Chiao Yang (Taipei, TW); Chih-Yu Teng (Taipei, TW)
Assignee: FG Innovation Company Limited
H04N19/44H04N19/137H04N19/176H04N19/46
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,368,704
App. No.
17/223,331
Granted
Jun 21, 2022
Kind
B2
Abstract

A method of decoding a bitstream by an electronic device is provided. The electronic device receives the bitstream and determines, from the bitstream, a prediction mode enabled flag and an affine enabled flag both corresponding to one or more image frames. The electronic device determines, from the bitstream, a maximum index corresponding to the one or more image frames when the affine enabled flag is true. An index value of the maximum index is in an index range determined based on the prediction mode enabled flag. The electronic device determines a maximum number of zero or more subblock-based merging motion vector prediction (MVP) candidates based on the maximum index when the affine enabled flag is true. The electronic device reconstructs the one or more image frames based on the maximum number of the zero or more subblock-based merging MVP candidates.

Claims (53)

1. A method of decoding a bitstream by an electronic device, the method comprising:

receiving the bitstream;

determining, from the bitstream, a prediction mode enabled flag and an affine enabled flag both corresponding to one or more image frames;

determining, from the bitstream, a maximum index corresponding to the one or more image frames when the affine enabled flag is true, wherein an index value of the maximum index is in an index range determined based on the prediction mode enabled flag;

determining a maximum number of zero or more subblock-based merging motion vector prediction (MVP) candidates based on the maximum index when the affine enabled flag is true;

determining the maximum number based on the prediction mode enabled flag and a temporal MVP flag without determining the maximum index from the bitstream when the affine enabled flag is false; and

reconstructing the one or more image frames based on the maximum number of the zero or more subblock-based merging MVP candidates.

2. The method according to claim 1 , wherein the index value of the maximum index is in an index range of 0 to N-K, N being an integer and K being equal to the prediction mode enabled flag and less than N.

3. The method according to claim 2 , wherein N is equal to five.

4. The method according to claim 2 , wherein:

the maximum number is determined by subtracting the index value of the maximum index from N, and

the maximum number is in a value range of the prediction mode enabled flag to N.

5. The method according to claim 2 , wherein:

the index value of the maximum index is in the index range of 0 to N- 1 and the maximum number is in a value range of 1 to N when the prediction mode enabled flag is equal to 1, and

the index value of the maximum index is in the index range of 0 to N and the maximum number is in a value range of 0 to N when the prediction mode enabled flag is equal to 0.

6. The method according to claim 1 , wherein:

the prediction mode enabled flag is included in a sequence parameter set (SPS) of the bitstream, and

each of the one or more image frames is reconstructed based on the SPS.

7. The method according to claim 6 , wherein the affine enabled flag and the maximum index are included in the SPS.

8. The method according to claim 1 , wherein the prediction mode enabled flag is a subblock-based temporal MVP enabled flag indicating whether a subblock-based temporal MVP mode is enabled in the one or more image frames.

9. The method according to claim 1 , wherein:

the temporal MVP flag is included in a picture header corresponding to at least one of the one or more image frames and included in the bitstream, and

the at least one of the one or more image frames is reconstructed based on the picture header.

10. An electronic device for decoding a bitstream, the electronic device comprising:

at least one processor; and

a storage device coupled to the at least one processor and storing a plurality of instructions which, when executed by the at least one processor, causes the at least one processor to:

receive the bitstream;

determine, from the bitstream, a prediction mode enabled flag and an affine enabled flag both corresponding to one or more image frames;

determine, from the bitstream, a maximum index corresponding to the one or more image frames when the affine enabled flag is true, wherein an index value of the maximum index is in an index range determined based on the prediction mode enabled flag;

determine a maximum number of zero or more subblock-based merging motion vector prediction (MVP) candidates based on the maximum index when the affine enabled flag is true;

determine the maximum number based on the prediction mode enabled flag and a temporal MVP flag without determining the maximum index from the bitstream when the affine enabled flag is false; and

reconstruct the one or more image frames based on the maximum number of the zero or more subblock-based merging MVP candidates.

11. The electronic device according to claim 10 , wherein the index value of the maximum index is in an index range of 0 to N-K, N being an integer and K being equal to the prediction mode enabled flag and less than N.

12. The electronic device according to claim 11 , wherein:

the maximum number is determined by subtracting the index value of the maximum index from N, and

the maximum number is in a value range of the prediction mode enabled flag to N.

13. The electronic device according to claim 10 , wherein:

the prediction mode enabled flag is included in a sequence parameter set (SPS) of the bitstream, and

each of the one or more image frames is reconstructed based on the SPS.

14. The electronic device according to claim 10 , wherein the prediction mode enabled flag is a subblock-based temporal MVP enabled flag indicating whether a subblock-based temporal MVP mode is enabled in the one or more image frames.

15. The electronic device according to claim 10 , wherein:

the temporal MVP flag is included in a picture header corresponding to at least one of the one or more image frames and included in the bitstream, and

the at least one of the one or more image frames is reconstructed based on the picture header.

16. A method of decoding a bitstream by an electronic device, the method comprising:

receiving the bitstream;

determining, from the bitstream, an affine enabled flag corresponding to one or more image frames;

determining, from the bitstream, a maximum index corresponding to the one or more image frames for a maximum number of zero or more subblock-based merging motion vector prediction (MVP) candidates when the affine enabled flag is true;

determining the maximum number of zero or more subblock-based merging MVP candidates based on a prediction mode enabled flag and a temporal MVP flag without determining the maximum index from the bitstream when the affine enabled flag is false; and

reconstructing the one or more image frames based on the maximum number of the zero or more subblock-based merging MVP candidates.

17. The method according to claim 16 , wherein an index value of the maximum index is in an index range of 0 to N-K, N being an integer and K being equal to the prediction mode enabled flag and less than N.

18. The method according to claim 16 , further comprising:

determining the maximum number by subtracting an index value of the maximum index from N when the affine enabled flag is true, wherein the maximum number is in a value range of the prediction mode enabled flag to N.

19. The method according to claim 16 , wherein the prediction mode enabled flag is a subblock-based temporal MVP enabled flag indicating whether a subblock-based temporal MVP mode is enabled in the one or more image frames.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2024
From: FG INNOVATION COMPANY LIMITED
To: SHARP KABUSHIKI KAISHA
Reel/Frame 068656/0188 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2021
From: YANG, YU-CHIAO; TENG, CHIH-YU
To: FG INNOVATION COMPANY LIMITED
Reel/Frame 055836/0022 →