IP Library Granted Patent US 11,272,199
Granted Patent B2
US 11,272,199 · App. 16/906,358 · Granted Mar 8, 2022

Device and method for coding video data

Inventors: Chih-Yu Teng (Hsinchu, TW); Yu-Chiao Yang (Hsinchu, TW); Po-Han Lin (Taipei, TW)
Assignee: FG Innovation Company Limited
H04N19/44H04N19/105H04N19/119H04N19/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,272,199
App. No.
16/906,358
Granted
Mar 8, 2022
Kind
B2
Abstract

A method of decoding a bitstream by an electronic device is provided. A block unit is determined from an image frame received from the bitstream. First motion information having a first list flag for selecting a first reference frame and second motion information having a second list flag for selecting a second reference frame are received from a candidate list to reconstruct the block unit. A predefined one of the first and the second motion information is stored for a sub-block determined in the block unit without checking whether the first and second reference frames are included in a reference list indicated by a flag value different from the two list flags when the first list flag is identical to the second list flag. A following block is reconstructed based on the stored motion information when the following block is reconstructed based on the sub-block.

Claims (53)

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

receiving an image frame of the bitstream;

determining a block unit from the received image frame;

determining a split line of the block unit;

receiving first motion information and second motion information from a candidate list to reconstruct the block unit, wherein the first motion information includes a first list flag for selecting a first reference frame and the second motion information includes a second list flag for selecting a second reference frame;

determining a sub-block in the block unit;

determining whether the sub-block is included in a specific one of a plurality of block regions separated based on the split line, wherein the specific one of the plurality of block regions covers the split line;

comparing the first list flag with the second list flag when the sub-block is included in the specific one of the plurality of block regions;

storing a predefined one of the first motion information and the second motion information as a stored motion information for the sub-block without checking whether the first reference frame and the second reference frame are included in a specific one of a plurality of reference lists indicated by a specific one of a plurality of flag values different from the first list flag and the second list flag when the first list flag is identical to the second list flag and the sub-block is included in the specific one of the plurality of block regions;

storing the first motion information and the second motion information together as the stored motion information for the sub-block when the first list flag is different from the second list flag and the sub-block is included in the specific one of the plurality of block regions; and

reconstructing a following block based on the stored motion information when the following block is being reconstructed based on the sub-block.

2. The method according to claim 1 , further comprising:

storing the first motion information as the stored motion information for the sub-block when the sub-block is included in a first one of the plurality of block regions corresponding to the first motion information; and

storing the second motion information as the stored motion information for the sub-block when the sub-block is included in a second one of the plurality of block regions corresponding to the second motion information,

wherein each of the first one of the plurality of block regions and the second one of the plurality of block regions is different from the specific one of the plurality of block regions.

3. The method according to claim 2 , wherein the predefined one of the first motion information and the second motion information is the second motion information.

4. The method according to claim 1 , wherein the specific one of the plurality of reference lists indicated by the specific one of the plurality of flag values is different from another one of the plurality of reference lists indicated by the first list flag when a number of the plurality of reference lists is equal to two and the first list flag is identical to the second list flag.

5. 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 an image frame of the bitstream;

determine a block unit from the received image frame;

determine a split line of the block unit;

receive first motion information and second motion information from a candidate list to reconstruct the block unit, wherein the first motion information includes a first list flag for selecting a first reference frame and the second motion information includes a second list flag for selecting a second reference frame;

determine a sub-block in the block unit;

determine whether the sub-block is included in a specific one of a plurality of block regions separated based on the split line, wherein the specific one of the plurality of block regions covers the split line;

compare the first list flag with the second list flag when the sub-block is included in the specific one of the plurality of block regions;

store a predefined one of the first motion information and the second motion information as a stored motion information for the sub-block without checking whether the first reference frame and the second reference frame are included in a specific one of a plurality of reference lists indicated by a specific one of a plurality of flag values different from the first list flag and the second list flag when the first list flag is identical to the second list flag and the sub-block is included in the specific one of the plurality of block regions;

store the first motion information and the second motion information together as the stored motion information for the sub-block when the first list flag is different from the second list flag and the sub-block is included in the specific one of the plurality of block regions; and

reconstruct a following block based on the stored motion information when the following block is being reconstructed based on the sub-block.

6. The electronic device according to claim 5 , wherein the plurality of instructions, when executed by the at least one processor, further causes the at least one processor to:

store the first motion information as the stored motion information for the sub-block when the sub-block is included in a first one of the plurality of block regions corresponding to the first motion information; and

store the second motion information as the stored motion information for the sub-block when the sub-block is included in a second one of the plurality of block regions corresponding to the second motion information,

wherein each of the first one of the plurality of block regions and the second one of the plurality of block regions is different from the specific one of the plurality of block regions.

7. The electronic device according to claim 6 , wherein the predefined one of the first motion information and the second motion information is the second motion information.

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

receiving an image frame of the bitstream;

determining a block unit from the received image frame;

determining a split line of the block unit;

receiving first motion information and second motion information from a candidate list to reconstruct the block unit, wherein the first motion information includes a first list flag and the second motion information includes a second list flag;

determining a sub-block in the block unit;

determining whether the sub-block is included in a specific one of a plurality of block regions separated based on the split line, wherein the specific one of the plurality of block regions covers the split line;

determining, based only on a comparison between the first list flag and the second list flag, whether the first motion information and the second motion information are stored together as a stored motion information for the sub-block, when the sub-block is included in the specific one of the plurality of block regions;

storing the first motion information and the second motion information together as the stored motion information for the sub-block when the first list flag is different from the second list flag; and

reconstructing a following block based on the stored motion information when the following block is being reconstructed based on the sub-block.

9. The method according to claim 8 , further comprising:

storing the first motion information as the stored motion information for the sub-block when the sub-block is included in a first one of the plurality of block regions corresponding to the first motion information; and

storing the second motion information as the stored motion information for the sub-block when the sub-block is included in a second one of the plurality of block regions corresponding to the second motion information,

wherein each of the first one of the plurality of block regions and the second one of the plurality of block regions is different from the specific one of the plurality of block regions.

10. The method according to claim 9 , further comprising:

storing the second motion information as the stored motion information for the sub-block when the first list flag is equal to the second list flag and the sub-block is included in the specific one of the plurality of block regions.

11. The method according to claim 8 , wherein the block unit is reconstructed prior to reconstructing the following block.

12. The method according to claim 8 , wherein a predefined one of the first motion information and the second motion information is stored as the stored motion information for the sub-block without checking whether a first reference frame selected based on the first list flag and a second reference frame selected based on the second list flag are included in a specific one of a plurality of reference lists indicated by a specific one of a plurality of flag values different from the first list flag when the first list flag is equal to the second list flag.

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 Jun 19, 2020
From: TENG, CHIH-YU; YANG, YU-CHIAO; LIN, PO-HAN
To: FG INNOVATION COMPANY LIMITED
Reel/Frame 052989/0917 →