IP Library › Granted Patent US 11,601,699
Granted Patent B2
US 11,601,699 · App. 17/320,850 · Granted Mar 7, 2023

Predictive content delivery for video streaming services

Inventors: Jeffrey Allen Hall (Aurora, CO); Federico Buratti (Centennial, CO); Justin Thompson (Frederick, CO)
Assignee: Comcast Cable Communications, LLC
H04N21/251H04N5/23238H04N13/117H04N13/194H04N21/41265H04N21/44218H04N21/4667H04N21/4725H04N21/816
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,601,699
App. No.
17/320,850
Granted
Mar 7, 2023
Kind
B2
Abstract

Methods, systems, and apparatuses for predicting a user field-of-view change and determining transmission regions of immersive video (IV) content for an IV device are presented. A field-of-view change of a user device may be predicted. A transmission region in one or more video frames of the IV content may be determined based on the predicted change.

Claims (133)

1. A method comprising:

determining, by a computing device and based on an upcoming video frame of a plurality of video frames of video content, an object located outside of a display area associated with a user device;

determining, based on a location of the object relative to the display area, a size of a subarea of the upcoming video frame; and

sending, by the computing device and to the user device, the subarea of the upcoming video frame.

2. The method of claim 1 , wherein:

the object is a visual object in the upcoming video frame, and determining the size of the subarea comprises extending the subarea toward a location of the visual object.

3. The method of claim 1 , wherein:

the location of the object is associated with an audio object that is output by an audio output device of the user device during playback of the video content.

4. The method of claim 1 , further comprising:

receiving information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content; and

wherein determining the size of the subarea comprises increasing the size of the subarea based on the probability value.

5. The method of claim 1 , further comprising:

receiving information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content, wherein determining the size of the subarea comprises increasing the size of the subarea based on the probability value;

determining a predicted speed of movement of the FOV; and

determining, based on the predicted speed, one or more of a resolution of the subarea or a size of the subarea.

6. The method of claim 1 , further comprising:

receiving information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content, wherein determining the size of the subarea comprises increasing the size of the subarea based on the probability value;

receiving, by the computing device, an indication of whether the FOV moved toward the object during playback of the video content; and

updating, by the computing device and based on the indication, the probability value.

7. The method of claim 1 , further comprising:

receiving information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content, wherein determining the size of the subarea comprises increasing the size of the subarea based on the probability value;

receiving, by the computing device, an indication of whether the FOV moved toward the object during playback of the video content; and

decreasing, by the computing device and based on determining that the FOV has not moved toward the object during playback of the video content, the probability value.

8. The method of claim 1 , wherein determining the size of the subarea comprises:

determining, based on the location of the object relative to the display area, the subarea to have a size on a first side of the display area greater than a size on a second side of the display area.

9. The method of claim 1 , wherein determining the size of the subarea comprises:

determining, based on a plurality of objects in the upcoming video frame, the size of the subarea.

10. An apparatus comprising:

one or more processors;

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

determine, based on an upcoming video frame of a plurality of video frames of video content, an object located outside of a display area associated with a user device;

determine, based on a location of the object relative to the display area, a size of a subarea of the upcoming video frame; and

send, to the user device, the subarea of the upcoming video frame.

11. The apparatus of claim 10 , wherein:

the object is a visual object in the upcoming video frame, and

wherein the instructions, when executed by the one or more processors, cause the apparatus to determine the size of the subarea by extending the subarea toward a location of the visual object.

12. The apparatus of claim 10 , wherein:

the location of the object is associated with an audio object that is output by an audio output device of the user device during playback of the video content.

13. The apparatus of claim 10 , wherein the instructions, when executed by the one or more processors, further cause the apparatus to:

receive information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content; and

wherein the instructions, when executed by the one or more processors, cause the apparatus to determine the size of the subarea by increasing the size of the subarea based on the probability value.

14. The apparatus of claim 10 , wherein the instructions, when executed by the one or more processors, further cause the apparatus to:

receive information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content;

increase, based on the probability value, the size of the subarea;

determine a predicted speed of movement of the FOV; and

determine, based on the predicted speed, one or more of a resolution of the subarea or a size of the subarea.

15. The apparatus of claim 10 , wherein the instructions, when executed by the one or more processors, further cause the apparatus to:

receive information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content;

increase, based on the probability value, the size of the subarea;

receive an indication of whether the FOV moved toward the object during playback of the video content; and

update, based on the indication, the probability value.

16. The apparatus of claim 10 , wherein the instructions, when executed by the one or more processors, further cause the apparatus to:

receive information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content;

increase, based on the probability value, the size of the subarea;

receive an indication of whether the FOV moved toward the object during playback of the video content; and

decrease, based on determining that the FOV has not moved toward the object during playback of the video content, the probability value.

17. The apparatus of claim 10 , wherein the instructions, when executed by the one or more processors, cause the apparatus to determine the size of the subarea by determining, based on the location of the object relative to the display area, the subarea to have a size on a first side of the display area greater than a size on a second side of the display area.

18. The apparatus of claim 10 , wherein the instructions, when executed by the one or more processors, further cause the apparatus to:

determine, based on a plurality of objects in the upcoming video frame, the size of the subarea.

19. A non-transitory computer-readable medium storing instructions that, when executed, cause:

determining, based on an upcoming video frame of a plurality of video frames of video content, an object located outside of a display area associated with a user device;

determining, based on a location of the object relative to the display area, a size of a subarea of the upcoming video frame; and

sending, to the user device, the subarea of the upcoming video frame.

20. The non-transitory computer-readable medium of claim 19 , wherein:

the object is a visual object in the upcoming video frame, and

the instructions, when executed, cause the determining the size of the subarea by extending the subarea toward a location of the visual object.

21. The non-transitory computer-readable medium of claim 19 , wherein:

the location of the object is associated with an audio object that is output by an audio output device of the user device during playback of the video content.

22. The non-transitory computer-readable medium of claim 19 , wherein the instructions, when executed, further cause:

receiving information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content; and

wherein determining the size of the subarea comprises increasing the size of the subarea based on the probability value.

23. The non-transitory computer-readable medium of claim 19 , wherein the instructions, when executed, further cause:

receiving information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content, wherein determining the size of the subarea comprises increasing the size of the subarea based on the probability value;

determining a predicted speed of movement of the FOV; and

determining, based on the predicted speed, one or more of a resolution of the subarea or a size of the subarea.

24. The non-transitory computer-readable medium of claim 19 , wherein the instructions, when executed, further cause:

receiving information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content, wherein determining the size of the subarea comprises increasing the size of the subarea based on the probability value;

receiving an indication of whether the FOV moved toward the object during playback of the video content; and

updating, based on the indication, the probability value.

25. The non-transitory computer-readable medium of claim 19 , wherein the instructions, when executed, further cause:

receiving information indicating a probability value representing a probability that a field-of-view (FOV) will move toward the object during playback of the video content, wherein determining the size of the subarea comprises increasing the size of the subarea based on the probability value;

receiving an indication of whether the FOV moved toward the object during playback of the video content; and

decreasing, based on determining that the FOV has not moved toward the object during playback of the video content, the probability value.

26. The non-transitory computer-readable medium of claim 19 , wherein the instructions, when executed, cause the determining the size of the subarea by determining, based on the location of the object relative to the display area, the subarea to have a size on a first side of the display area greater than a size on a second side of the display area.

27. The non-transitory computer-readable medium of claim 19 , wherein the instructions, when executed, further cause:

determining, based on a plurality of objects in the upcoming video frame, the size of the subarea.

28. A method comprising:

determining, by a computing device, a field-of-view (FOV) of a user device displaying video content comprising a plurality of video frames, wherein the FOV of the user device is associated with a display area of the user device;

determining, by the computing device, a previous change to the FOV;

determining, by the computing device and based on the previous change to the FOV, a subarea of an upcoming video frame of the plurality of video frames; and

sending, by the computing device and to the user device, the subarea of the upcoming video frame.

29. The method of claim 28 , wherein:

the previous change to the FOV comprises an FOV change, during playback of one or more previous video frames, by a user other than a user of the user device.

30. The method of claim 28 , wherein:

the previous change to the FOV comprises an FOV change that occurred during playback of second video content different from the video content.

31. The method of claim 28 , wherein:

the previous change to the FOV is associated with a first playback of the video content; and

determining the subarea comprises determining the subarea for a second playback of the video content.

32. The method of claim 28 , further comprising:

changing, based on a probability that the FOV will zoom in or out, at least one of a size or a resolution of the subarea.

33. The method of claim 28 , further comprising:

determining, based on a plurality of objects in the upcoming video frame, a size of the subarea.

34. An apparatus comprising:

one or more processors;

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

determine a field-of-view (FOV) of a user device displaying video content comprising a plurality of video frames, wherein the FOV of the user device is associated with a display area of the user device;

determine a previous change to the FOV;

determine, based on the previous change to the FOV, a subarea of an upcoming video frame of the plurality of video frames; and

send, to the user device, the subarea of the upcoming video frame.

35. The apparatus of claim 34 , wherein:

the previous change to the FOV comprises an FOV change, during playback of one or more previous video frames, by a user other than a user of the user device.

36. The apparatus of claim 34 , wherein:

the previous change to the FOV comprises an FOV change that occurred during playback of second video content different from the video content.

37. The apparatus of claim 34 , wherein:

the previous change to the FOV is associated with a first playback of the video content; and wherein the instructions, when executed by the one or more processors, cause the apparatus to determine the subarea by determining the subarea for a second playback of the video content.

38. The apparatus of claim 34 , wherein the instructions, when executed by the one or more processors, further cause the apparatus to change, based on a probability that the FOV will zoom in or out, at least one of a size or a resolution of the subarea.

39. The apparatus of claim 34 , wherein the instructions, when executed by the one or more processors, further cause the apparatus to determine, based on a plurality of objects in the upcoming video frame, a size of the subarea.

40. A non-transitory computer-readable medium storing instructions that, when executed, cause:

determining a field-of-view (FOV) of a user device displaying video content comprising a plurality of video frames, wherein the FOV of the user device is associated with a display area of the user device;

determining a previous change to the FOV;

determining, based on the previous change to the FOV, a subarea of an upcoming video frame of the plurality of video frames; and

sending, to the user device, the subarea of the upcoming video frame.

41. The non-transitory computer-readable medium of claim 40 , wherein:

the previous change to the FOV comprises an FOV change, during playback of one or more previous video frames, by a user other than a user of the user device.

42. The non-transitory computer-readable medium of claim 40 , wherein:

the previous change to the FOV comprises an FOV change that occurred during playback of second video content different from the video content.

43. The non-transitory computer-readable medium of claim 40 , wherein:

the previous change to the FOV is associated with a first playback of the video content; and

the instructions, when executed, cause the determining the subarea by determining the subarea for a second playback of the video content.

44. The non-transitory computer-readable medium of claim 40 , wherein the instructions, when executed, further cause:

changing, based on a probability that the FOV will zoom in or out, at least one of a size or a resolution of the subarea.

45. The non-transitory computer-readable medium of claim 40 , wherein the instructions, when executed, further cause:

determining, based on a plurality of objects in the upcoming video frame, a size of the subarea.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2022
From: HALL, JEFFREY ALLEN; BURATTI, FEDERICO; THOMPSON, JUSTIN
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 060430/0066 →
Continuity (3)
Continuation 16450333 · Jun 24, 2019
Continuation 15852715 · Dec 22, 2017
Related Publication 20210274232A1 · Sep 2, 2021
Cited By (1)
US 12,675,392