IP Library Granted Patent US 11,516,477
Granted Patent B2
US 11,516,477 · App. 17/173,961 · Granted Nov 29, 2022

Intra block copy scratch frame buffer

Inventors: Kapil Garg (Fremont, CA); Gaurav Patil (San Jose, CA); Yasutomo Matsuba (San Diego, CA); Vladan Andrijanic (San Diego, CA); Prasanth Gomatam (San Diego, CA); Rajesh Chowdary Chitturi (San Diego, CA)
Assignee: Qualcomm Incorporated
H04N19/146H04N19/132H04N19/159H04N19/176
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,516,477
App. No.
17/173,961
Granted
Nov 29, 2022
Kind
B2
Abstract

An example apparatus includes a first frame buffer configured to store video data; a second frame buffer configured to store video data; and one or more processors configured to: reconstruct samples of a first block of a current picture of video data; store, in parallel, a compressed version of the samples of the first block of video data in the first frame buffer and an uncompressed version of the samples of the first block of video data in the second frame buffer; and responsive to determining to reconstruct a second block of the current picture of video data using intra block copy: obtain, from the second frame buffer, samples of a predictor block located in the current picture of video data, the predictor block at least partially overlapping the first block of video data; and predict, based on the obtained samples of the predictor block, samples of the second block.

Claims (50)

1. An apparatus configured to code video data, the apparatus comprising:

a first frame buffer configured to store video data;

a second frame buffer configured to store video data; and

one or more processors implemented in circuitry, the one or more processors configured to:

reconstruct samples of a first block of a current picture of video data;

store, in parallel, a compressed version of the samples of the first block of video data in the first frame buffer and an uncompressed version of the samples of the first block of video data in the second frame buffer; and

responsive to determining to reconstruct a second block of the current picture of video data using intra block copy:

obtain, from the second frame buffer, samples of a predictor block located in the current picture of video data, the predictor block at least partially overlapping the first block of video data; and

predict, based on the obtained samples of the predictor block, samples of the second block.

2. The apparatus of claim 1 , wherein a size of the first frame buffer is less than a size of the second frame buffer.

3. The apparatus of claim 2 , wherein the size of the first frame buffer is selected to store a single picture of video data and the size of the second frame buffer is selected to store a plurality of pictures of video data.

4. The apparatus of claim 1 , wherein, to store the compressed version of the samples in the first frame buffer and the uncompressed version of the samples in the second frame buffer, the one or more processors are configured to:

write, to the first frame buffer, the compressed version of the samples; and

write, to the second frame buffer, the uncompressed version of the samples.

5. The apparatus of claim 4 , wherein the one or more processors complete writing the uncompressed version of the samples to the second frame buffer before the one or more processors complete writing the compressed version of the samples to the first frame buffer.

6. The apparatus of claim 5 , wherein the one or more processors are configured to:

refrain from obtaining the samples of the predictor block until after completing writing the uncompressed version of the samples to the second frame buffer.

7. The apparatus of claim 4 , wherein, to write the compressed version to the samples to the first frame buffer, the one or more processors are configured to:

generate the compressed version of the samples from the uncompressed version of the samples; and

write the compressed version of the samples to the first frame buffer.

8. The apparatus of claim 1 , wherein the apparatus is configured to decode video data.

9. The apparatus of claim 1 , further comprising a display configured to display decoded video data obtained via the first frame buffer.

10. The apparatus of claim 1 , further comprising a camera configured to capture a picture of video data.

11. The apparatus of claim 1 , wherein the apparatus comprises one or more of a camera, a computer, a mobile device, a broadcast receiver device, or a set-top box.

12. A method for coding video data, the method comprising:

reconstructing samples of a first block of a current picture of video data;

storing, in parallel, a compressed version of the samples of the first block of video data in a first frame buffer and an uncompressed version of the samples of the first block of video data in a second frame buffer; and

responsive to determining to reconstruct a second block of the current picture of video data using intra block copy:

obtaining, from the second frame buffer, samples of a predictor block located in the current picture of video data, the predictor block at least partially overlapping the first block of video data; and

predicting, based on the obtained samples of the predictor block, samples of the second block.

13. The method of claim 12 , wherein a size of the first frame buffer is less than a size of the second frame buffer.

14. The method of claim 13 , wherein the size of the first frame buffer is selected to store a single picture of video data and the size of the second frame buffer is selected to store a plurality of pictures of video data.

15. The method of claim 12 , wherein storing the compressed version of the samples in the first frame buffer and the uncompressed version of the samples in the second frame buffer comprises:

causing the first frame buffer to write the compressed version of the samples; and

causing the second frame buffer to write the uncompressed version of the samples.

16. The method of claim 15 , wherein the second frame buffer completes writing the uncompressed version of the samples before the first frame buffer completes writing the compressed version of the samples.

17. The method of claim 16 , further comprising:

refraining from obtaining the samples of the predictor block until after the second frame buffer completes writing the uncompressed version of the samples.

18. A non-transitory computer readable storage medium storing instruction that, when executed, cause one or more processors to:

reconstruct samples of a first block of a current picture of video data;

store, in parallel, a compressed version of the samples of the first block of video data in a first frame buffer and an uncompressed version of the samples of the first block of video data in a second frame buffer; and

responsive to determining to reconstruct a second block of the current picture of video data using intra block copy:

obtain, from the second frame buffer, samples of a predictor block located in the current picture of video data, the predictor block at least partially overlapping the first block of video data; and

predict, based on the obtained samples of the predictor block, samples of the second block.

19. The non-transitory computer readable storage medium of claim 18 , wherein the instructions that cause the one or more processors to store the compressed version of the samples in the first frame buffer and the uncompressed version of the samples in the second frame buffer comprise instructions that cause the one or more processors to:

cause the first frame buffer to write the compressed version of the samples; and

cause the second frame buffer to write the uncompressed version of the samples.

20. The non-transitory computer readable storage medium of claim 19 , wherein the second frame buffer completes writing the uncompressed version of the samples before the first frame buffer completes writing the compressed version of the samples.

21. The non-transitory computer readable storage medium of claim 20 , further comprising instructions that cause the one or more processors to:

refrain from obtaining the samples of the predictor block until after the second frame buffer completes writing the uncompressed version of the samples.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2021
From: GARG, KAPIL; PATIL, GAURAV; GOMATAM, PRASANTH; CHITTURI, RAJESH CHOWDARY
To: QUALCOMM INCORPORATED
Reel/Frame 057346/0438 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2021
From: MATSUBA, YASUTOMO; ANDRIJANIC, VLADAN
To: QUALCOMM INCORPORATED
Reel/Frame 055448/0922 →
Continuity (1)
Related Publication 20220256167A1 · Aug 11, 2022
Cited By (2)
US 12,382,018 US 12,641,267