IP Library Granted Patent US 10,848,819
Granted Patent B2
US 10,848,819 · App. 16/141,450 · Granted Nov 24, 2020

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 10,848,819
App. No.
16/141,450
Granted
Nov 24, 2020
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 (72)

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

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

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

determining that a rewind request is likely to be received during the second segment of the media asset in response to:

determining, based on a user profile, that a user is likely to issue a rewind command when consuming a segment of the media asset that comprises low audio level; and

identifying, based on the retrieved metadata of the second segment, that the second segment comprises low audio level;

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

increasing the size of the buffer to a second buffer size; and

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

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

2. 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 end of the second segment, increasing the size of the buffer to the first buffer size.

3. 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.

4. 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.

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

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.

6. 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.

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

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

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

determining that a rewind request is likely to be received during the second segment in response to:

identifying based on the retrieved metadata a language spoken in the second segment;

identifying a preferred language of the user based on the user profile; and

determining that the language spoken in the second segment does not match the preferred language of the user; 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; and

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

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

8. 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 the media asset in a buffer having a first buffer size;

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

determine that a rewind request is likely to be received during the second segment of the media asset in response to:

determining, based on a user profile, that a user is likely to issue a rewind command when consuming a segment of the media asset that comprises low audio level; and

identifying, based on the retrieved metadata of the second segment, that the second segment comprises low audio level;

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

increase the size of the buffer to a second buffer size; and

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

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

9. The system of claim 8 , 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 end of the second segment, increase the size of the buffer to the first buffer size.

10. The system of claim 8 , 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.

11. The system of claim 8 , 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.

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

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.

13. The system of claim 8 , 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.

Assignments (7)
CHANGE OF NAME Recorded Oct 3, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069106/0171 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053481/0790 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: HPS INVESTMENT PARTNERS, LLC
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053458/0749 →
SECURITY INTEREST Recorded Jun 1, 2020
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS INC.; VEVEO, INC.; INVENSAS CORPORATION; INVENSAS BONDING TECHNOLOGIES, INC.; TESSERA, INC.; TESSERA ADVANCED TECHNOLOGIES, INC.; DTS, INC.; PHORUS, INC.; IBIQUITY DIGITAL CORPORATION
To: BANK OF AMERICA, N.A.
Reel/Frame 053468/0001 →
PATENT SECURITY AGREEMENT Recorded Nov 25, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 051110/0006 →
SECURITY INTEREST Recorded Nov 22, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS COLLATERAL AGENT
Reel/Frame 051143/0468 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2018
From: PANCHAKSHARAIAH, VISHWAS SHARADANAGAR; GUPTA, VIKRAM MAKAM
To: ROVI GUIDES, INC.
Reel/Frame 046966/0517 →
Continuity (1)
Related Publication 20200099979A1 · Mar 26, 2020
Cited By (1)
US 12,713,093