Single-File Multi-Bit-Rate Streaming via HTTP Byte-Range Requests
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current single-bit-rate streaming technologies fail to adapt to varying bandwidth conditions, leading to suboptimal playback experiences as clients may receive either insufficient or excessive data, resulting in poor video quality and delayed playback.
Innovation Solution
Implementing single-file multi-bit-rate streaming that allows clients to dynamically select and request media segments based on available bandwidth, using HTTP-byte-range requests and embedded index information to manage bit-rate adaptation without requiring server modifications, enabling seamless playback across different bit-rates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single bit-rate stream is used for media delivery, then the server and network infrastructure can be simplified, but the playback quality deteriorates when bandwidth conditions vary
Solution Approach 1:
The media document is divided into multiple segments, each encoded at different bit-rates. The client can selectively request segments at appropriate bit-rates based on available bandwidth, while the server maintains a unified segment-based structure that simplifies delivery infrastructure.
Solution Approach 2:
The system enables dynamic bit-rate selection where clients can adaptively choose segments at different bit-rates based on real-time bandwidth conditions. The index structure allows dynamic navigation to segments encoded at various bit-rates without requiring complex server-side stream switching.
2Device complexity
If a single bit-rate stream is delivered, then data transmission is simplified, but either data insufficiency or data excess occurs leading to poor playback experience
Solution Approach 1:
Different segments of the media document are encoded at different bit-rates appropriate for different bandwidth conditions. The index contains information about segments at various bit-rates, allowing clients to select locally appropriate segments based on their specific network conditions rather than receiving uniformly encoded data.
Solution Approach 2:
The system changes the bit-rate parameter of media segments based on client bandwidth conditions. The index structure enables clients to identify and request segments encoded at bit-rates matching their available bandwidth, transforming a static single-bit-rate delivery into a dynamic multi-bit-rate system.
3Reliability
If multiple bit-rate streams are delivered separately, then adaptive playback quality is improved, but server complexity and infrastructure requirements increase
Solution Approach 1:
Multiple bit-rate versions of media segments are merged into a single unified media document structure. The index contains references to segments at different bit-rates within the same document, allowing clients to access multiple bit-rates from a single file rather than requiring separate stream files, thereby simplifying server infrastructure.
Solution Approach 2:
The single media document serves multiple functions by containing segments at different bit-rates. This universal structure allows the same file to serve clients with different bandwidth conditions without requiring separate delivery mechanisms, making the server infrastructure more versatile and less complex.
4Loss of information
If the entire index is transmitted to the client, then complete segment information is available, but initial data transmission time and bandwidth are increased
Solution Approach 1:
Instead of transmitting the complete index to the client, only partial index information necessary for initial playback is provided. The client can request additional index portions as needed, reducing initial data transmission time and bandwidth consumption while still providing sufficient information for immediate playback startup.
Data Source
AI summary
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, relating to single-file multi-bit-rate streaming delivery are described. Media data can be encoded into a single file (or very small number of files), which can then be placed on an unmodified Hypertext Transfer Protocol (HTTP) server. Further, the techniques disclosed here can use HTTP for distribution of the encoded media file and may support multi-bit-rate playback at a client without requiring a modification or plug-in to the server software. Furthermore, these techniques use properties of HTTP and Transmission Control Protocol (TCP) to minimize playback startup time.


