IP Library Granted Patent US 11,483,360
Granted Patent B2
US 11,483,360 · App. 16/925,896 · Granted Oct 25, 2022

Adaptive streaming with early client indication

Inventor: Alexander Garland MacInnis (Los Altos, CA)
Assignee: Avago Technologies International Sales Pte. Limited
H04L65/60H04L65/61H04L65/762H04L65/80
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,483,360
App. No.
16/925,896
Granted
Oct 25, 2022
Kind
B2
Abstract

Methods and systems for early identification of bitrates for segments in adaptive bitrate streaming can allow the server to begin processing or transcoding content as necessary for delivery, reducing processing and transmission latency. In a first aspect, a client may request a second segment before the first segment has been completely received. The server may begin any transcoding processes for preparing the second segment, and once the server has completed sending the first segment, the server may begin transmitting the now-prepared or partially prepared second segment. The server can then transmit the first and second segment contiguously, with essentially no network dead time. In a second aspect, the client may transmit an early notification of parameters for the request of the second segment, allowing the server to begin transcoding. The client may subsequently request the already-prepared or partially prepared second segment, similarly reducing request-response processing latency.

Claims (39)

1. A method for adaptive bitrate streaming with early client indication, comprising:

transmitting, by a client device to a. media server via a network, a request for a first segment of content generated in accordance with a first parameter;

monitoring, by the client device, a performance characteristic of the network;

transmitting, by the client device to the media server via the network, a notification of a second parameter of a future request for a second segment of content, the second parameter selected based on the monitoring of the performance characteristic of the network, receipt of the notification causing the media server to begin generating the second segment of content in accordance with the second parameter;

receiving, by the client device from the media server via the network, the first segment of content; and

transmitting, by the client device to the media server via the network, a second request for the second segment of content generated in accordance with the second parameter.

2. The method of claim 1 , wherein the first parameter and second parameter comprise a bitrate for the corresponding segment of content.

3. The method of claim 1 , further comprising determining, by the client device based on the monitoring, that the performance characteristic of the network has changed; and

wherein the first parameter is different than the second parameter.

4. The method of claim 1 , further comprising receiving, by the client device from the media server via the network, the second segment of content generated in accordance with the second parameter.

5. The method of claim 4 , further comprising buffering the received second segment of content, by the client device, during decoding or display of the first segment of content.

6. The method of claim 4 , further comprising:

transmitting, by the client device to the media server via the network, a second notification of a third parameter of a future request for a third segment of content, receipt of the notification causing the media server to begin generating the third segment of content in accordance with the third parameter.

7. The method of claim 6 , further comprising detecting, by the client device subsequent to transmission of the second notification, a change in the performance characteristic of the network.

8. The method of claim 7 , further comprising transmitting, by the client device to the media server via the network, a third request for the third segment of content generated in accordance with a different fourth parameter, selected responsive to the detected change in the performance characteristic of the network.

9. The method of claim 8 , further comprising:

receiving, by the client device from the media server via the network, the third segment of content generated in accordance with the fourth parameter, the media server discarding a portion of the third segment of content generated in accordance with the third parameter responsive to receipt of the third request.

10. The method of claim 8 , further comprising:

receiving, by the client device from the media server via the network, the third segment of content generated in accordance with the third parameter, responsive to a determination by the media server that a first time to generate and transmit the third segment of content in accordance with the fourth parameter exceeds a second time to transmit the third segment of content generated in accordance with the third parameter.

11. The method of claim 1 , wherein receipt of the notification causes the media server to begin transcoding the second segment of content from a first encoding in accordance with the first parameter to a second encoding in accordance with the second parameter.

12. The method of claim 1 , wherein receipt of the notification causes the media server to begin encoding a live media stream in accordance with the second parameter.

13. A system for adaptive bitrate streaming with early client indication, comprising:

a client device comprising a processor and a network interface;

wherein the network interface is configured to transmit, to a media server via a network, a request for a first segment of content generated in accordance with a first parameter;

wherein the processor is configured to monitor a performance characteristic of the network; and

wherein the network interface is further configured to:

transmit, to the media server via the network, a notification of a second parameter of a future request for a second segment of content, the second parameter selected based on the monitoring of the performance characteristic of the network, receipt of the notification causing the media server to begin generating the second segment of content in accordance with the second parameter,

receive, from the media server via the network, the first segment of content, and

transmit, to the media server via the network, a second request for the second segment of content generated in accordance with the second parameter.

14. The system of claim 13 , wherein the first parameter and second parameter comprise a bitrate for the corresponding segment of content.

15. The system of claim 13 , wherein the processor is further configured to determine, based on the monitoring, that the performance characteristic of the network has changed; and

wherein the first parameter is different than the second parameter.

16. The system of claim 13 , wherein the network interface is further configured to receive, from the media server via the network, the second segment of content generated in accordance with the second parameter.

17. The system of claim 16 , wherein the processor is further configured to buffer the received second segment of content during decoding or display of the first segment of content.

18. The system of claim 16 , wherein the network interface is further configured to transmit, to the media server via the network, a second notification of a third parameter of a future request for a third segment of content. receipt of the notification causing the media server to begin generating the third segment of content in accordance with the third parameter.

19. The system of claim 18 , wherein the processor is further configured to detect, subsequent to transmission of the second notification, a change in the performance characteristic of the network.

20. The system of claim 19 , wherein the network interface is further configured to transmit, to the media server via the network, a third request for the third segment of content generated in accordance with a different fourth parameter, selected responsive to the detected change in the performance characteristic of the network.

21. The system of claim 20 , wherein the network interface is further configured to receive, from the media server via the network, the third segment of content generated in accordance with the fourth parameter, the media server discarding a portion of the third segment of content generated in accordance with the third parameter responsive to receipt of the third request.

22. The system of claim 20 , wherein the network interface is further configured to receive, from the media server via the network, the third segment of content generated in accordance with the third parameter, responsive to a determination by the media server that a first time to generate and transmit the third segment of content in accordance with the fourth parameter exceeds a second time to transmit the third segment of content generated in accordance with the third parameter.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2020
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 053246/0489 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2020
From: MACINNIS, ALEXANDER GARLAND
To: BROADCOM CORPORATION
Reel/Frame 053246/0492 →
MERGER Recorded Jul 17, 2020
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 053246/0704 →