IP Library Granted Patent US 11,463,704
Granted Patent B2
US 11,463,704 · App. 17/094,215 · Granted Oct 4, 2022

Systems and methods for compressing video

Inventor: Alexander Giladi (Princeton, NJ)
Assignee: Comcast Cable Communications, LLC
H04N19/142H04N19/105H04N19/159H04N19/172H04N19/179H04N19/517H04N19/577H04N19/87H04N19/107
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,463,704
App. No.
17/094,215
Granted
Oct 4, 2022
Kind
B2
Abstract

Systems, methods, and apparatuses are described for compressing digital content. The digital content may comprise a plurality of frames. The plurality of frames may comprise a plurality of crossfade frames. A first boundary frame of the crossfade frames may be determined. A second boundary frame of the crossfade frames may be determined. At least a portion of the crossfade frames may be coded as inter-predicted frames using a weighting factor and based on the first boundary frame or the second boundary frame.

Claims (60)

1. A method comprising:

determining a plurality of frames, of a content asset, associated with a transition from a first scene to a second scene, wherein the plurality of frames comprises a first boundary frame associated with the first scene, a second boundary frame associated with the second scene, and a plurality of transition frames;

determining, for a transition frame of the plurality of transition frames, a first motion vector based on a first weighting factor associated with a proximity of the transition frame to the first boundary frame;

determining, for the transition frame, a second motion vector based on a second weighting factor associated with a proximity of the transition frame to the second boundary frame; and

encoding, based on the first motion vector and the second motion vector, the transition frame.

2. The method of claim 1 , wherein the determining the plurality of frames of the content asset is based, at least, on one or more histograms associated with one or more frames of the plurality of frames.

3. The method of claim 1 , further comprising determining not to encode at least one frame of the plurality of transition frames.

4. The method of claim 1 , wherein the determining the plurality of frames is based on a comparison of data associated with at least one of intensity, chroma, luminance, or luma of pixels of the first boundary frame and data associated with the at least one of intensity, chroma, luminance, or luma of pixels of at least another frame of the plurality of frames.

5. The method of claim 1 , wherein the determining the plurality of frames comprises:

determining a boundary confidence value for the first boundary frame; and

determining that the boundary confidence value at least one of meets or exceeds a boundary confidence threshold value.

6. The method of claim 1 , further comprising:

determining, based on the determining the plurality of frames, not to calculate a data size of a subset of the plurality of transition frames as one or more encoded frame types.

7. The method of claim 1 , further comprising encoding at least one of the first boundary frame or the second boundary frame as an intra-coded frame (I-frame).

8. The method of claim 1 , wherein the proximity of the transition frame to the first boundary frame or the second boundary frame is based on at least one of:

a number of frames between the transition frame and the first boundary frame or the second boundary frame; or

a position of the transition frame within a sequence of the the plurality of transition frames.

9. The method of claim 1 , wherein the determining the first motion vector based on the first weighting factor comprises scaling the first motion vector by the first weighting factor, and wherein the determining the second motion vector based on the second weighting factor comprises scaling the second motion vector by the second weighting factor.

10. A method comprising:

receiving an indication of a plurality of frames, of a content asset, associated with a transition from a first scene to second scene, wherein the plurality of frames comprises a first boundary frame associated with the first scene, a second boundary frame associated with the second scene, and a plurality of transition frames; and

encoding a transition frame of the plurality of transition frames based on a first motion vector weighted based on a proximity of the transition frame to the first boundary frame and a second motion vector weighted based on a proximity of the transition frame to the second boundary frame.

11. The method of claim 10 , further comprising encoding at least one of the first boundary frame or the second boundary frame as an intra-coded frame (I-frame).

12. The method of claim 10 , wherein the indication of the plurality of frames is based on one or more histograms associated with one or more frames of the plurality of frames.

13. The method of claim 10 , wherein the first motion vector is weighted by scaling the first motion vector by a first weighting factor, and wherein the second motion vector is weighted by scaling the second motion vector by a second weighting factor.

14. The method of claim 10 , wherein the proximity of the transition frame to the first boundary frame or the second boundary frame is based on at least one of:

a number of frames between the transition frame and the first boundary frame or the second boundary frame; or

a position of the transition frame within a sequence of the plurality of transition frames.

15. A device comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the device to:

determine a plurality of frames, of a content asset, associated with a transition from a first scene to a second scene, wherein the plurality of frames comprises a first boundary frame associated with the first scene, a second boundary frame associated with the second scene, and a plurality of transition frames;

determine, for a transition frame of the plurality of transition frames, a first motion vector based on a first weighting factor associated with a proximity of the transition frame to the first boundary frame;

determine, for the transition frame, a second motion vector based on a second weighting factor associated with a proximity of the transition frame to the second boundary frame; and

encode, based on the first motion vector and the second motion vector, the transition frame.

16. The device of claim 15 , wherein the instructions that cause the device to determine the plurality of frames of the content asset cause the device to determine the plurality of frames based, at least, on one or more histograms associated with one or more frames of the plurality of frames.

17. The device of claim 15 , wherein the instructions further cause the device to determine not to encode at least one frame of the plurality of transition frames.

18. The device of claim 15 , wherein the instructions that cause the device to determine the plurality of frames cause the device to compare data associated with at least one of intensity, chroma, luminance, or luma of pixels of the first boundary frame and data associated with the at least one of intensity, chroma, luminance, or luma of pixels of at least another frame of the plurality of frames.

19. The device of claim 15 , wherein the instructions that cause the device to determine the plurality of frames cause the device to:

determine a boundary confidence value for the first boundary frame; and

determine that the boundary confidence value at least one of meets or exceeds a boundary confidence threshold value.

20. The device of claim 15 , wherein the instructions further cause the device to:

determine, based on the determining the plurality of frames, not to calculate a data size of a subset of the plurality of transition frames as one or more encoded frame types.

21. The device of claim 15 , wherein the instructions further cause the device to code at least one of the first boundary frame or the second boundary frame as an intra-coded frame (I-frame).

22. The device of claim 15 , wherein the proximity of the transition frame to the first boundary frame or the second boundary frame is based on at least one of:

a number of frames between the transition frame and the first boundary frame or the second boundary frame; or

a position of the transition frame within a sequence of the plurality of transition frames.

23. The device of claim 15 , wherein the instructions that cause the device to determine the first motion vector based on the first weighting factor cause the device to scale the first motion vector by the first weighting factor; and

wherein the instructions that cause the device to determine the second motion vector based on the second weighting factor causes the device to scale the second motion vector by the second weighting factor.

24. A device comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the device to:

receive an indication of a plurality of frames, of a content asset, associated with a transition from a first scene to second scene, wherein the plurality of frames comprises a first boundary frame associated with the first scene, a second boundary frame associated with the second scene, and a plurality of transition frames; and

encode a transition frame of the plurality of transition frames based on a first motion vector weighted based on a proximity of the transition frame to the first boundary frame and a second motion vector weighted based on a proximity of the transition frame to the second boundary frame.

25. The device of claim 24 , wherein the first boundary frame and the second boundary frame comprise intra-coded frames (I-frames).

26. The device of claim 24 , wherein the instructions that cause the device to determine the plurality of frames of the content asset cause the device to determine the plurality of frames based, at least, on one or more histograms associated with one or more frames of the plurality of frames.

27. The device of claim 24 , wherein the first motion vector weighted based on the proximity of the transition frame to the first boundary frame comprises the first motion vector scaled by a first weighting factor; and

the second motion vector weighted based on the proximity of the transition frame to the second boundary frame comprises the second motion vector scaled by a second weighting factor.

28. The device of claim 24 , wherein the proximity of the transition frame to the first boundary frame or the second boundary frame is based on at least one of:

a number of frames between the transition frame and the first boundary frame or the second boundary frame; or

a position of the transition frame within a sequence of the plurality of transition frames.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2020
From: GILADI, ALEXANDER
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 054485/0568 →
Continuity (3)
Continuation 16376781 · Apr 5, 2019
Provisional Application 62653970 · Apr 6, 2018
Related Publication 20210168374A1 · Jun 3, 2021