IP Library Granted Patent US 9,973,559
Granted Patent B2
US 9,973,559 · App. 13/929,702 · Granted May 15, 2018

Systems and methods for presenting content streams to a client device

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 9,973,559
App. No.
13/929,702
Granted
May 15, 2018
Kind
B2
Abstract

Systems and methods for presenting content streams to a client device are provided. In some aspects, a method includes providing an indicator of a plurality of content streams to a client device. Each of the plurality of content streams is associated with a variant feature of content to be delivered to the client device. The method includes monitoring one or more requests, from the client device, for at least one of the plurality of content streams based on the variant feature of the content associated with each of the requested plurality of content streams. The method also includes modifying the indicator of the plurality of content streams based on the monitored one or more requests. The method also includes providing the modified indicator of the plurality of content streams to the client device.

Claims (38)

1. A method for presenting a manifest file to a client device, the method comprising:

providing the manifest file including a list of a plurality of content streams to a client device, wherein each of the plurality of content streams is associated with a variable bit rate to be delivered to the client device;

receiving from the client device one or more requests for one or more content streams;

monitoring, at a gateway, the one or more requests, based on the variable bit rate associated with each of the requested one or more content streams;

identifying a predetermined number of consecutive requests from the client device for a first content stream of the plurality of content streams ranked in a ranked listing, wherein each of the plurality of content streams is ranked based on a bit rate;

modifying the manifest file based on the identifying to include a list of content streams with bit rates closer to the first content stream; and

providing the modified manifest file to the client device.

2. The method of claim 1 , wherein a variant feature of the content comprises at least one of bit rate or a non-bit rate feature.

3. The method of claim 1 , wherein monitoring the one or more requests comprises identifying the predetermined number of the consecutive requests from a top half of the ranked listing.

4. The method of claim 1 , wherein the plurality of content streams is ranked in order from a content stream associated with a highest bit rate to a content stream associated with a lowest bit rate.

5. The method of claim 1 , wherein monitoring the one or more requests comprises identifying the predetermined number of the consecutive requests from the client device for a second content stream of the plurality of content streams ranked in a bottom half of the ranked listing or a third content stream of the plurality of content streams ranked between the first content stream and the second content stream.

6. The method of claim 5 , wherein the predetermined number of the consecutive requests is a consecutive number of requests.

7. The method of claim 5 , wherein the first content stream is a highest ranked one of the plurality of content streams, and wherein the second content stream is a lowest ranked one of the plurality of content streams.

8. The method of claim 5 , wherein the predetermined number of the consecutive requests is for the first content stream, and wherein, if the predetermined number of the consecutive requests for the first content stream is identified, modifying the manifest file comprises adding to the ranked listing a content stream ranked higher than the first content stream.

9. The method of claim 1 , wherein, if the predetermined number of the consecutive requests for the first content stream is identified, modifying the manifest file further comprises removing from the ranked listing a second content stream.

10. The method of claim 5 , wherein the predetermined number of the consecutive requests is for the second content stream, and wherein, if the predetermined number of the consecutive requests for the second content stream is identified, modifying the manifest file comprises adding to the ranked listing a content stream ranked lower than the second content stream.

11. The method of claim 10 , wherein, if the predetermined number of the consecutive requests for the second content stream is identified, modifying the manifest file further comprises removing from the listing the first content stream.

12. The method of claim 5 , wherein the predetermined number of the consecutive requests is for the third content stream, and wherein, if the predetermined number of the consecutive requests for the third content stream is identified, modifying the manifest file comprises adding to the ranked listing at least one of i) a content stream ranked lower than the first content stream and ii) a content stream ranked higher than the second content stream.

13. The method of claim 12 , wherein, if the predetermined number of the consecutive requests for the third content stream is identified, modifying the manifest file further comprises removing from the ranked listing at least one of the first content stream and the second content stream.

14. The method of claim 1 , wherein the manifest file comprises a listing of the plurality of content streams, and wherein monitoring the one or more requests comprises identifying a predetermined number of the consecutive requests from the client device for one or more of the plurality of content streams associated with a first variant feature of the content.

15. The method of claim 14 , wherein, if the predetermined number of the consecutive requests is identified, modifying the manifest file further comprises removing from the listing one or more of the plurality of content streams associated with a second variant feature of the content different from the bit rate.

16. A system comprising:

memory comprising instructions for presenting a manifest file to a client device; and

a processor configured to execute the instructions to:

provide the manifest file including a list of a plurality of content streams to a client device, wherein each of the plurality of content streams is associated with a variable bit rate to be delivered to the client device;

receive from the client device one or more requests for one or more content streams;

monitor, at a gateway, the one or more requests, based on the variable bit rate associated with each of the requested one or more content streams;

identify a predetermined number of the consecutive requests from the client device for a first content stream of the plurality of content streams ranked in a ranked listing, wherein each of the plurality of content streams is ranked based on a bit rate;;

modify the manifest file based on the identifying to include a list of content streams with bit rates closer to the first content stream; and

provide the modified manifest file to the client device.

17. The system of claim 16 , wherein the manifest file comprises a listing of the plurality of content streams ranked according to a variant feature of the content.

18. The system of claim 17 , wherein monitoring the one or more requests comprises identifying the predetermined number of the consecutive requests from the client device for a second one of the plurality of content streams ranked in a bottom half of the listing.

19. A computer program product comprising instructions stored in a tangible non-transitory computer-readable medium, the instructions comprising:

instructions for providing a manifest file including a list of a plurality of content streams to a client device, wherein each of the plurality of content streams is associated with a variable bit rate to be delivered to the client device, and wherein the manifest file comprises a ranked listing of the plurality of content streams ranked according to the variable bit rate;

instructions for identifying, at a gateway, a predetermined number of consecutive requests from the client device for a first one of the plurality of content streams ranked in the ranked listing;

instructions for modifying the manifest file based on the identifying to include a list of content streams with bit rates closer to the first content stream; and

instructions for providing the modified manifest file to the client device.

20. The computer program product of claim 19 , wherein the predetermined number of the consecutive requests is for a second content stream, and wherein, if the predetermined number of the consecutive requests for the second content stream is identified, the instructions for modifying the manifest file comprises instructions for adding to the listing a content stream ranked lower than the second content stream.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047422 FRAME: 0464. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048883/0702 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047422/0464 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2013
From: HENG, BRIAN ALLAN
To: BROADCOM CORPORATION
Reel/Frame 030789/0808 →