Adaptive bitrate management on progressive download with indexed media files
First Claim
1. A method performed by one or more processors of an adaptive bitrate manager, the method comprising:
- receiving streaming media data having an original media frame, an original frame index referencing the original media frame, and an original file index;
determining an optimal session bitrate, wherein the optimal session bitrate is based on the available network bandwidth between a server and a terminal;
allocating a frame budget for an output media frame by estimating a frame size of the output media frame based on the original frame index and the optimal session bitrate, wherein the frame budget represents estimated size of the output media frame;
generating the output media frame by processing the original media frame based on first encoding parameters and, if the allocated frame budget is greater than a frame size of the processed media frame, padding the processed media frame;
generating an output file index based on the frame budget and the original file index; and
providing the output media frame associated with the output file index.
8 Assignments
0 Petitions
Accused Products
Abstract
A method includes receiving streaming media data having an original media frame and an original frame index referencing the original media frame; determining an optimal session bitrate, wherein the optimal session bitrate is based on the available network bandwidth between a server and a terminal; allocating a frame budget for an output media frame by estimating a frame size of the output media frame based on the original frame index and the optimal session bitrate; generating the output media frame by processing the original media frame based on first encoding parameters and, if the allocated frame budget is greater than a frame size of the processed media frame, padding the processed media frame; and providing the output media frame.
-
Citations
20 Claims
-
1. A method performed by one or more processors of an adaptive bitrate manager, the method comprising:
-
receiving streaming media data having an original media frame, an original frame index referencing the original media frame, and an original file index; determining an optimal session bitrate, wherein the optimal session bitrate is based on the available network bandwidth between a server and a terminal; allocating a frame budget for an output media frame by estimating a frame size of the output media frame based on the original frame index and the optimal session bitrate, wherein the frame budget represents estimated size of the output media frame; generating the output media frame by processing the original media frame based on first encoding parameters and, if the allocated frame budget is greater than a frame size of the processed media frame, padding the processed media frame; generating an output file index based on the frame budget and the original file index; and providing the output media frame associated with the output file index. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A server configured to receive streaming media data having an original media frame, an original frame index referencing the original media frame, and an original file index, the server comprising:
-
an adaptive bitrate controller module configured to determine an optimal session bitrate, wherein the optimal session bitrate is based on the available network bandwidth between a server and a terminal; a frame budget algorithm module configured to allocate a frame budget for an output media frame by estimating a frame size of the output media frame based on the original frame index and the optimal session bitrate, wherein the frame budget represents estimated size of the output media frame; a quantization algorithm module configured to determine first encoder parameters based on the frame budget, the optimal session bitrate, and the original media frame; an encoder configured to encode the media frame based on the first processing parameters; a frame padder configured to pad the processed media frame to generate the output media frame; a file index generator configured to generate an output file index based on the frame budget and the original file index; and a frame writer configured to provide the output media frame associated with the output file index. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer readable medium that stores a set of instructions that is executable by at least one processor of a server to cause the server to perform a method, the method comprising:
-
receiving streaming media data having an original media frame, an original frame index referencing the original media frame, and an original file index; determining an optimal session bitrate, wherein the optimal session bitrate is based on the available network bandwidth between a server and a terminal; allocating a frame budget for an output media frame by estimating a frame size of the output media frame based on the original frame index and the optimal session bitrate, wherein the frame budget represents estimated size of the output media frame; generating the output media frame by processing the original media frame based on first encoding parameters and, if the allocated frame budget is greater than a frame size of the processed media frame, padding the processed media frame; generating an output file index based on the frame budget and the original file index; and providing the output media frame associated with the output file index. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification