Adaptive bitrate management for streaming media over packet networks
DCFirst Claim
Patent Images
1. A method comprising:
- receiving a receiver report from a terminal having a media player;
estimating one or more network conditions of a media network using the receiver report;
determining an optimal session bitrate using the estimated one or more network conditions;
allocating the optimal session bitrate between audio media data and video media data to produce an optimal audio bitrate and an optimal video bitrate, wherein allocating the optimal session bitrate between audio and video media data is based on a metric selected from a group including a predetermined allocation, a user preference, an optimal performance data, privileging one type of data over the other, and an amount of audio and video media data to be provided;
encoding audio and video media data according to the optimal audio bitrate and the optimal video bitrate; and
providing media data to the terminal according to the optimal audio bitrate and the optimal video bitrate.
8 Assignments
Litigations
0 Petitions
Accused Products
Abstract
A method including receiving a receiver report from a terminal; estimating one or more network conditions of a media network based at least in part on the receiver report; determining an optimal session bitrate based on the estimated one or more network conditions; and providing media data to the terminal based on the optimal session bitrate.
80 Citations
25 Claims
-
1. A method comprising:
-
receiving a receiver report from a terminal having a media player; estimating one or more network conditions of a media network using the receiver report; determining an optimal session bitrate using the estimated one or more network conditions; allocating the optimal session bitrate between audio media data and video media data to produce an optimal audio bitrate and an optimal video bitrate, wherein allocating the optimal session bitrate between audio and video media data is based on a metric selected from a group including a predetermined allocation, a user preference, an optimal performance data, privileging one type of data over the other, and an amount of audio and video media data to be provided; encoding audio and video media data according to the optimal audio bitrate and the optimal video bitrate; and providing media data to the terminal according to the optimal audio bitrate and the optimal video bitrate. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
receiving a receiver report from a terminal; estimating one or more network conditions of a media network using the receiver report; determining the stability of the media network using the estimations; controlling a bitrate based on the determination; allocating the bitrate between audio media data and video media data to produce an optimal audio bitrate and an optimal video bitrate, wherein allocating the bitrate between audio and video media data is based on a metric selected from a group including a predetermined allocation, a user preference, an optimal performance data, privileging one type of data over the other, and an amount of audio and video media data to be provided; and providing the bitrate to an encoder for encoding audio and video media data, and transmitting media data according to the optimal audio bitrate and the optimal video bitrate. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A method comprising:
-
receiving an optimal session bitrate; allocating the optimal session bitrate between audio and video media data to produce an optimal audio bitrate and an optimal video bitrate, wherein allocating the optimal session bitrate between audio and video media data is based on a metric selected from a group including a predetermined allocation, a user preference, an optimal performance data, privileging one type of data over the other, and an amount of audio and video media data to be provided; encoding audio and video media data according to the optimal audio bitrate and the optimal video bitrate; and providing the encoded audio and video data for transmittal to a terminal. - View Dependent Claims (17)
-
-
18. A system comprising:
-
an adaptive bitrate manager comprising a processor and a memory, the adaptive bitrate manager configured to; receive a receiver report provided by a terminal having a media player, estimate one or more network conditions using the receiver report, determine an optimal session bitrate based on the estimated one or more network conditions, and provide media data to the terminal according to the optimal session bitrate, and wherein the adaptive bitrate manager further comprises an encoder configured to; obtain the optimal session bitrate, allocate the optimal session bitrate between audio and video media data to produce an optimal audio bitrate and an optimal video bitrate, wherein allocating the optimal session bitrate between audio and video media data is based on a metric selected from a group including a predetermined allocation, a user preference, an optimal performance data, privileging one type of data over the other, and an amount of audio and video media data to be provided, and encode audio and video media data according to the optimal audio bitrate and the optimal video bitrate, and provide the encoded audio and video media data for transmittal to the terminal. - View Dependent Claims (19, 20)
-
-
21. A non-transitory computer readable storage medium storing instruction that, when executed by a computer, cause the computer to perform a method for processing a receiver report, the method comprising:
-
receiving the receiver report from a terminal; estimating one or more network conditions of a media network using the receiver report; determining the stability of the media network using the estimations; controlling a bitrate based on the determination; allocating the bitrate between audio media data and video media data to produce an optimal audio bitrate and an optimal video bitrate, wherein allocating the bitrate between audio and video media data is based on a metric selected from a group including a predetermined allocation, a user preference, an optimal performance data, privileging one type of data over the other, and an amount of audio and video media data to be provided; and providing the bitrate to an encoder for transmitting media data according to the optimal audio bitrate and the optimal video bitrate. - View Dependent Claims (22)
-
-
23. A non-transitory computer readable storage medium storing instruction that, when executed by a computer, cause the computer to perform a method for processing an optimal session bitrate, the method comprising:
-
receiving the optimal session bitrate; allocating the optimal session bitrate between audio and video media data to produce an optimal audio bitrate and an optimal video bitrate, wherein allocating the optimal session bitrate between audio and video media data is based on a metric selected from a group including a predetermined allocation, a user preference, an optimal performance data, privileging one type of data over the other, and an amount of audio and video media data to be provided; encoding audio and video media data according to the optimal audio bitrate and the optimal video bitrate; and providing the encoded audio and video media data for transmittal to a terminal.
-
-
24. A terminal comprising:
-
a processor; a memory; a buffer configured to receive media data packets transmitted by an adaptive bitrate manager over a media network; and a media player configured to receive media data packets and provide a receiver report to the adaptive bitrate manager configured to; receive the receiver report, estimate one or more network conditions of the media network based at least in part on the receiver report, determine an optimal session bitrate based on the estimated one or more network conditions, and provide media data to the buffer according to the optimal session bitrate, wherein the adaptive bitrate manager further comprises an encoder configured to; obtain the optimal session bitrate, allocate the optimal session bitrate between audio and video media data to produce an optimal audio bitrate and an optimal video bitrate, wherein allocating the optimal session bitrate between audio and video media data is based on a metric selected from a group including a predetermined allocation, a user preference, an optimal performance data, privileging one type of data over the other, and an amount of audio and video media data to be provided encode audio and video media data according to the optimal audio bitrate and the optimal video bitrate, and provide the encoded audio and video media data for transmittal to the terminal. - View Dependent Claims (25)
-
Specification