IP Library Granted Patent US 11,711,570
Granted Patent B2
US 11,711,570 · App. 17/688,629 · Granted Jul 25, 2023

Systems and methods for adjusting buffer size

Inventors: Vishwas Sharadanagar Panchaksharaiah (Karnataka, IN); Vikram Makam Gupta (Karnataka, IN)
Assignee: Rovi Guides, Inc.
H04N21/44004H04N21/432H04N21/4392H04N21/4532
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,711,570
App. No.
17/688,629
Granted
Jul 25, 2023
Kind
B2
Abstract

Methods and systems are provided for adjusting a size of a buffer based on a probability that a rewind request will be received during a currently playing segment of media. When the system determines that receiving a rewind request is likely, the system will increase the size of a buffer such that the rewind request can be accommodated using data from the buffer. When the system determines that receiving a rewind request is unlikely, the system will decrease the size of the buffer to free resources for other system components.

Claims (81)

1. A method for dynamically adjusting a size of a buffer of a media consumption device, the method comprising:

buffering a first segment of a media asset in a buffer having a first buffer size;

retrieving metadata associated with a second segment of the media asset;

determining, based on the retrieved metadata and a user profile, whether a rewind request is likely to be received during the second segment of the media asset; and

in response to determining that the rewind request is likely to be received:

increasing the size of the buffer to a second buffer size by:

identifying an average length of rewind requests received from a plurality of users while consuming the second segment of the media asset;

calculating an amount of memory needed to store a portion of the second segment corresponding to the average length of the rewind requests; and

setting the size of the buffer based on the calculated amount of memory; and

buffering the second segment of the media asset in the buffer having the second buffer size.

2. The method of claim 1 , further comprising reducing the size of the buffer to the first buffer size, in response to detecting an end of the second segment.

3. The method of claim 1 , wherein determining, based on the retrieved metadata and the user profile, whether the rewind request is likely to be received during the second segment of the media asset, comprises:

identifying, based on the retrieved metadata, a genre of the second segment;

identifying, based on a profile of the user, a preferred genre of the user; and

determining that a rewind request is likely to be received during the second segment of the media asset when the genre of the second segment matches the preferred genre of the user.

4. The method of claim 1 , further comprising:

in response to determining that the rewind request is not likely to be received:

decreasing the size of the buffer to a third buffer size; and

buffering the second segment of the media asset in the buffer having the third buffer size; and

in response to detecting the end of the second segment, increasing the size of the buffer to the first buffer size.

5. The method of claim 1 , further comprising:

receiving a rewind request during the second segment of the media asset; and

in response to receiving the rewind request:

rewinding the second segment; and

playing content of the buffer on the media consumption device from a point to which the second segment was rewound.

6. The method of claim 1 , wherein increasing the size of the buffer comprises:

calculating an amount of memory needed to store the entire second segment of the media asset; and

setting the size of the buffer based on the calculated amount of memory.

7. The method of claim 1 , wherein increasing the size of the buffer comprises:

identifying an average length of rewind requests received from the user while consuming media segments that are similar to the second segment of the media asset;

calculating an amount of memory needed to store a portion of the second segment corresponding to the average length of the rewind requests; and

setting the size of the buffer based on the calculated amount of memory.

8. The method of claim 1 , wherein increasing the size of the buffer comprises:

determining a duration of the second segment;

determining a bitrate for the media asset;

calculating an amount of memory needed to store the second segment by multiplying the bitrate for the media asset by the duration; and

setting the size of the buffer based on the calculated amount of memory.

9. The method of claim 1 , wherein setting the size of the buffer based on the calculated amount of memory, comprises:

determining a maximum buffer size for the media consumption device;

in response to determining that the calculated amount of memory is greater than the maximum buffer size, setting the size of the buffer to the maximum buffer size; and

in response to determining that the calculated amount of memory is not greater than the maximum buffer size, setting the size of the buffer to the calculated amount of memory.

10. A system for dynamically adjusting a size of a buffer of a media consumption device, the system comprising control circuitry configured to:

buffer a first segment of a media asset in a buffer having a first buffer size;

retrieve metadata associated with a second segment of the media asset;

determine, based on retrieved metadata of the second segment of the media asset and a user profile, whether a rewind request is likely to be received during the second segment of the media asset; and

in response to determining that the rewind request is likely to be received:

increase the size of the buffer to a second buffer size by:

identifying an average length of rewind requests received from a plurality of users while consuming the second segment of the media asset;

calculating an amount of memory needed to store a portion of the second segment corresponding to the average length of the rewind requests; and

setting the size of the buffer based on the calculated amount of memory; and

buffer the second segment of the media asset in the buffer having the second buffer size.

11. The system of claim 10 , wherein the control circuitry is further configured to reduce the size of the buffer to the first buffer size in response to detecting an end of the second segment.

12. The system of claim 10 , wherein the control circuitry is further configured, when determining, based on the retrieved metadata and the user profile, whether the rewind request is likely to be received during the second segment of the media asset, to:

identify, based on the retrieved metadata, a genre of the second segment;

identify, based on a profile of the user, a preferred genre of the user; and

determining that a rewind request is likely to be received during the second segment of the media asset when the genre of the second segment matches the preferred genre of the user.

13. The system of claim 10 , wherein the control circuitry, in response to determining that the rewind request is not likely to be received, is further configured to:

decrease the size of the buffer to a third buffer size; and

buffer the second segment of the media asset in the buffer having the third buffer size; and

in response to detecting the end of the second segment, increase the size of the buffer to the first buffer size.

14. The system of claim 10 , wherein the control circuitry is further configured to:

receiving a rewind request during the second segment of the media asset; and

in response to receiving the rewind request:

rewinding the second segment; and

playing content of the buffer on the media consumption device from a point to which the second segment was rewound.

15. The system of claim 10 , wherein the control circuitry is further configured, when increasing the size of the buffer, to:

calculating an amount of memory needed to store the entire second segment of the media asset; and

setting the size of the buffer based on the calculated amount of memory.

16. The system of claim 10 , wherein the control circuitry is further configured, when increasing the size of the buffer, to:

identifying an average length of rewind requests received from the user while consuming media segments that are similar to the second segment of the media asset;

calculating an amount of memory needed to store a portion of the second segment corresponding to the average length of the rewind requests; and

setting the size of the buffer based on the calculated amount of memory.

17. The system of claim 10 , wherein the control circuitry is further configured, when increasing the size of the buffer, to:

determine a duration of the second segment;

determine a bitrate for the media asset;

calculate an amount of memory needed to store the second segment by multiplying the bitrate for the media asset by the duration; and

setting the size of the buffer based on the calculated amount of memory.

18. The system of claim 10 , wherein the control circuitry is further configured, when setting the size of the buffer based on the calculated amount of memory, to:

determine a maximum buffer size for the media consumption device;

in response to determining that the calculated amount of memory is greater than the maximum buffer size, setting the size of the buffer to the maximum buffer size; and

in response to determining that the calculated amount of memory is not greater than the maximum buffer size, setting the size of the buffer to the calculated amount of memory.

Assignments (3)
CHANGE OF NAME Recorded Oct 3, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069106/0171 →
SECURITY INTEREST Recorded May 3, 2023
From: ADEIA GUIDES INC.; ADEIA IMAGING LLC; ADEIA MEDIA HOLDINGS LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR ADVANCED TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC; ADEIA SOLUTIONS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 063529/0272 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2022
From: PANCHAKSHARAIAH, VISHWAS SHARADANAGAR; GUPTA, VIKRAM MAKAM
To: ROVI GUIDES, INC.
Reel/Frame 059278/0315 →
Continuity (3)
Continuation 17077421 · Oct 22, 2020
Continuation 16141450 · Sep 25, 2018
Related Publication 20220201358A1 · Jun 23, 2022
Cited By (2)
US 12,316,906 US 12,713,093