IP Library Granted Patent US 10,523,727
Granted Patent B2
US 10,523,727 · App. 15/892,909 · Granted Dec 31, 2019

Adaptive bitrate optimization upon video streaming initialization

Inventor: Sagar Sehgal (Bangaluru, IN)
Assignee: SLING MEDIA PVT LTD
H04L65/4092G06F3/0484H04N21/234H04N21/2662
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,523,727
App. No.
15/892,909
Granted
Dec 31, 2019
Kind
B2
Abstract

Devices, methods, and program products are provided enabling Adaptive Bitrate (ABR) optimization upon initialization of a streaming video session. In embodiments, the method includes launching a streaming media interface application in response to user input. Substantially concurrently with application launch, the client media receiver further transmits a request over a communications network to a streaming media server for a sample video stream. As the video stream is received, the client media receiver plays the sample video stream as, for example, a background process. When subsequently receiving user input selecting streaming content for end user viewing, the client media receiver determines an optimized ABR setting based upon a recent ABR value of the sample video stream. The client media receiver transmits a request to the streaming media server for user-selected content stream at the optimized ABR setting and then presents the content stream for end user viewing.

Claims (55)

1. A method carried-out by a client media receiver, the method comprising:

launching a streaming media interface application in response to user input received at the client media receiver;

concurrently with launching, transmitting a request over a communications network to a streaming media server for a sample video stream;

in response to an impending streaming video session from the transmitted request to the streaming media server for the sample video stream, pre-testing an Adaptive Bit Rate (ABR) for initialing the impending streaming video session at a pre-optimized ABR setting and not a default ABR setting;

when receiving the sample video stream from the streaming media server, playing the sample video stream on the client media receiver;

in response to user input requesting streaming of user-selected content stream to the client media receiver, determining another ABR of an optimized ABR setting based upon a recent ABR value of the sample video stream;

transmitting a request to the streaming media server for the user-selected content stream at the optimized ABR setting; and

presenting the user-selected content stream, when received from the streaming media server, on a display device associated with the client media receiver.

2. The method of claim 1 wherein playing comprises playing the sample video stream on the client media receiver as a background process.

3. The method of claim 1 wherein playing comprises rendering the sample video stream to be at least partially visible on the display device.

4. The method of claim 1 further comprising:

presenting a graphical user interface of the streaming media interface application in a foreground window on the display device; and

playing the sample video stream in a background window partially, but not wholly covered by the foreground window.

5. The method of claim 1 wherein the sample video stream contains informational or promotional content and is concurrently presented on the display device with a graphic user interface of the streaming media interface application.

6. The method of claim 1 wherein playing comprises concealing the sample video stream such that the sample video stream is not visible on the display device.

7. The method of claim 1 wherein playing comprises playing the sample video stream in a hidden layer of a media player executed on the client media receiver while muting any audio content accompanying the sample video stream.

8. The method of claim 1 wherein playing comprises playing the sample video stream in a hidden layer of a media player executed on the client media receiver without muting audio content accompanying the sample video stream.

9. The method of claim 8 wherein the audio content contains informational messages pertaining to the streaming media interface application.

10. The method of claim 1 wherein transmitting comprises requesting an Over-The-Top (OTT) television channel as the sample video stream, and wherein the method further comprises:

requesting a default OTT television channel as the sample video stream, the default OTT television channel containing informational content pertaining to the streaming media interface application.

11. The method of claim 1 wherein transmitting comprises requesting an Over-The-Top (OTT) television channel as the sample video stream, and wherein the method further comprises:

identifying a user favorite OTT television channel based, at least in part, on past user viewing behaviors;

requesting a default OTT television channel as the sample video stream.

12. The method of claim 1 wherein transmitting comprises requesting a streaming video clip having a predetermined duration as the sample video stream; and

wherein playing comprises playing the streaming video clip as a continual loop until receiving the user input requesting streaming of a user-selected content stream.

13. The method of claim 1 wherein transmitting comprises requesting a streaming video clip having a first predetermined duration as the sample video stream; and

wherein playing comprises periodically playing the streaming video clip at intervals of a second predetermined duration greater than the first predetermined duration.

14. The method of claim 1 wherein determining comprises assigning the optimized ABR setting a value equivalent to the latest ABR value of the sample video stream less a predetermined buffer value.

15. A method carried-out by a client media receiver, the method comprising:

in response to predicting an intent on behalf of an end user to initiate in a streaming video session, transmitting a request over a communications network to a streaming media server for a sample video stream;

in response to transmitting the request to the streaming media server for the sample video stream, pre-testing an Adaptive Bit Rate (ABR) to initialize the streaming video session at a pre-optimized ABR setting and not a default ABR setting;

when receiving the sample video stream from the streaming media server, playing the sample video stream as a background process on the client media receiver;

in response to subsequently receiving requesting streaming of user-selected content, determining an optimized ABR setting based upon a most recent ABR value of the sample video stream;

transmitting a request to the streaming media server for the user-selected content stream at the optimized ABR setting; and

presenting the user-selected content stream, when received from the streaming media server, on a display device associated with the client media receiver.

16. A client media receiver utilized in conjunction with a display device, a streaming media server, and a communications network enabling bidirectional communication between the client media receiver and the streaming media server, the client media receiver comprising:

a processor; and

computer-readable storage media storage computer-executable code that, when executed by the processor, causes the client media receiver to perform the operations of:

launching a streaming media interface application in response to user input received at the client media receiver;

concurrently with launching, transmitting a request over a communications network to a streaming media server for a sample video stream;

in response to the transmitted request to the streaming media server for the sample video stream, pre-testing an Adaptive Bit Rate (ABR) to initialize the streaming video session at a pre-optimized ABR setting and not a default ABR setting;

when receiving the sample video stream from the streaming media server, playing the sample video stream on the client media receiver;

in response to user input requesting streaming of user-selected content stream to the client media receiver, determining an optimized ABR setting based upon a recent ABR value of the sample video stream;

transmitting a request to the streaming media server for the user-selected content stream at the optimized ABR setting; and

presenting the user-selected content stream, when received from the streaming media server, on a display device associated with the client media receiver.

17. The client media receiver of claim 16 wherein, when executed by the processor, the computer-executable code further causes the client media receiver to:

present a graphical user interface of the streaming media interface application in a foreground window on the display device; and

play the sample video stream in a background window that is partially, but not wholly covered by the foreground window.

18. The client media receiver of claim 16 wherein, when executed by the processor, the computer-executable code further causes the client media receiver to request an Over-The-Top (OTT) television channel as the sample video stream.

19. The client media receiver of claim 16 wherein, when executed by the processor, the computer-executable code further causes the client media receiver to:

request a streaming video clip having a predetermined duration as the sample video stream; and

play the streaming video clip as a continual loop until receiving the user input requesting streaming of a user-selected content stream.

20. The client media receiver of claim 16 wherein, when executed by the processor, the computer-executable code further causes the client media receiver to:

request a streaming video clip having a first predetermined duration as the sample video stream; and

periodically play the streaming video clip at intervals of a second predetermined duration greater than the first predetermined duration.

Assignments (2)
CHANGE OF NAME Recorded Sep 1, 2022
From: SLING MEDIA PVT. LTD.
To: DISH NETWORK TECHNOLOGIES INDIA PRIVATE LIMITED
Reel/Frame 061365/0493 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2018
From: SEHGAL, SAGAR
To: C/O SLING MEDIA PVT. LTD.
Reel/Frame 044893/0453 →