IP Library Granted Patent US 11,800,135
Granted Patent B2
US 11,800,135 · App. 17/859,569 · Granted Oct 24, 2023

Method for wrap around motion compensation with reference picture resampling

Inventors: Byeongdoo Choi (Palo Alto, CA); Stephan Wenger (Hillsborough, CA); Shan Liu (Vancouver, WA)
Assignee: TENCENT AMERICA LLC
H04N19/51H04N19/132H04N19/172H04N19/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,800,135
App. No.
17/859,569
Granted
Oct 24, 2023
Kind
B2
Abstract

A method of generating an encoded video bitstream using at least one processor, including making a first determination regarding whether a current layer of a current picture is an independent layer; making a second determination regarding whether reference picture resampling is enabled for the current layer; based on the first determination and the second determination, disabling wrap-around compensation for the current layer; and encoding the current layer without the wrap-around compensation.

Claims (47)

1. A method of generating a coded video bitstream using at least one processor, the method comprising:

receiving video data;

encoding a current layer of the video data without horizontal wrap-around motion compensation;

setting a first flag pps_ref_wraparound_enabled_flag, wherein the first flag pps_ref_wraparound_enabled_flag being equal to 1 specifies that the horizontal wrap-around motion compensation is enabled for pictures referring to a picture parameter set in a coded video stream;

determining whether a reference picture is not scaled based on whether refPicWidthInLumaSamples is equal to pic_width_in_luma_samples of a current picture;

in response to the reference picture being not scaled, setting a second flag refWraparoundEnabledFlag to be equal to a value of the first flag pps_ref_wraparound_enabled_flag; and

generating a coded video bitstream based on the encoded current layer, the picture parameter set, the first flag pps_ref_wraparound_enabled_flag, and the second flag refWraparoundEnabledFlag.

2. The method of claim 1 , wherein the horizontal wrap-around motion compensation is disabled based on at least one of a first determination indicating that the current layer is not the independent layer, or a second determination indicating that the reference picture resampling is enabled for the current layer.

3. The method of claim 2 , wherein the first determination is made based on a flag signaled in a first syntax structure, and

wherein the second determination is made based on a flag signaled in a second syntax structure lower than the first syntax structure.

4. The method of claim 1 , wherein the first flag pps_ref_wraparound_enabled_flag is signaled in a picture parameter set.

5. The method of claim 4 , wherein the horizontal wrap-around motion compensation is disabled based on the first flag pps_ref_wraparound_enabled_flag being absent from the sequence parameter set.

6. The method of claim 2 , further comprising:

based on the first determination indicating that the current layer is not the independent layer, and the second determination indicating that the reference picture resampling is enabled for the current layer, making a third determination regarding whether a width of the current picture is different from a width of a current reference picture,

wherein the horizontal wrap-around motion compensation is disabled based the third determination indicating that the width of the current picture is different from the width of the current reference picture.

7. The method of claim 6 , wherein the third determination is made during an interpolation process for motion compensation.

8. A device for generating a coded video bitstream, the device comprising:

at least one memory configured to store program code; and

at least one processor configured to read the program code and operate as instructed by the program code, the program code including:

receiving code configured to cause the at least one processor to receive video data;

encoding code configured to cause the at least one processor to encode a current layer of the video data without horizontal wrap-around motion compensation;

first setting code configured to cause the at least one processor to set a first flag pps_ref_wraparound_enabled_flag, wherein the first flag pps_ref_wraparound_enabled_flag being equal to 1 specifies that the horizontal wrap-around motion compensation is enabled for pictures referring to a picture parameter set in a coded video stream;

determining code configured to cause the at least one processor to determine whether a reference picture is not scaled based on whether refPicWidthInLumaSamples is equal to pic_width_in_luma_samples of a current picture;

second setting code configured to cause the at least one processor to, in response to the reference picture being not scaled, set a second flag refWraparoundEnabledFlag to be equal to a value of the first flag pps_ref_wraparound_enabled_flag; and

generating a coded video bitstream based on the encoded current layer, the picture parameter set, the first flag pps_ref_wraparound_enabled_flag, and the second flag refWraparoundEnabledFlag.

9. The device of claim 8 , wherein the horizontal wrap-around motion compensation is disabled based on at least one of a first determination indicating that the current layer is not the independent layer, or a second determination indicating that the reference picture resampling is enabled for the current layer.

10. The device of claim 9 , wherein the first determination is made based on a flag signaled in a first syntax structure, and

wherein the second determination is made based on a flag signaled in a second syntax structure lower than the first syntax structure.

11. The device of claim 8 , wherein the first flag pps_ref_wraparound_enabled_flag is signaled in a picture parameter set.

12. The device of claim 11 , wherein the horizontal wrap-around motion compensation is disabled based on the first flag pps_ref_wraparound_enabled_flag being absent from the sequence parameter set.

13. The device of claim 9 , wherein the program code further includes third determining code configured to cause the at least one processor to, based on the first determination indicating that the current layer is not the independent layer, and the second determination indicating that the reference picture resampling is enabled for the current layer, make a third determination regarding whether a width of the current picture is different from a width of a current reference picture, and

wherein the horizontal wrap-around motion compensation is disabled based the third determination indicating that the width of the current picture is different from the width of the current reference picture.

14. The device of claim 13 , wherein the third determination is made during an interpolation process for motion compensation.

15. A non-transitory computer-readable medium storing instructions, the instructions comprising: one or more instructions that are configured to, when executed by one or more processors of a device for decoding a coded video bitstream, cause the one or more processors to:

receive video data;

encode a current layer of the video data without horizontal wrap-around motion compensation;

set a first flag pps_ref_wraparound_enabled_flag, wherein the first flag pps_ref_wraparound_enabled_flag being equal to 1 specifies that the horizontal wrap-around motion compensation is enabled for pictures referring to a picture parameter set in a coded video stream;

determine whether a reference picture is not scaled based on whether refPicWidthInLumaSamples is equal to pic_width_in_luma_samples of a current picture;

in response to the reference picture being not scaled, set a second flag refWraparoundEnabledFlag to be equal to a value of the first flag pps_ref_wraparound_enabled_flag; and

generating a coded video bitstream based on the encoded current layer, the picture parameter set, the first flag pps_ref_wraparound_enabled_flag, and the second flag refWraparoundEnabledFlag.

16. The non-transitory computer-readable medium of claim 15 , wherein the horizontal wrap-around motion compensation is disabled based on at least one of a first determination indicating that the current layer is not the independent layer, or a second determination indicating that the reference picture resampling is enabled for the current layer.

17. The non-transitory computer-readable medium of claim 15 , wherein the first flag pps_ref_wraparound_enabled_flag is signaled in a picture parameter set, and

wherein the second flag is signaled in a sequence parameter set.

18. The non-transitory computer-readable medium of claim 17 , wherein the horizontal wrap-around motion compensation is disabled based on the first flag pps_ref_wraparound_enabled_flag being absent from the sequence parameter set.

19. The non-transitory computer-readable medium of claim 16 , wherein the one or more instructions further cause the one or more processors to, based on the first determination indicating that the current layer is not the independent layer, and the second determination indicating that the reference picture resampling is enabled for the current layer, make a third determination regarding whether a width of the current picture is different from a width of a current reference picture,

wherein the horizontal wrap-around motion compensation is disabled based the third determination indicating that the width of the current picture is different from the width of the current reference picture.

20. The non-transitory computer-readable medium of claim 19 , wherein the third determination is made during an interpolation process for motion compensation.

Continuity (3)
Continuation 17064172 · Oct 6, 2020
Provisional Application 62955520 · Dec 31, 2019
Related Publication 20220345738A1 · Oct 27, 2022