Indexed File Layout for Client-Side Bitrate Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current bitrate-switching streaming solutions face challenges in optimizing client-side viewing experiences due to the variability of internet bandwidth and the need for additional server resources to manage client-specific requirements, often resulting in rebuffering issues.
Innovation Solution
An indexed file layout for segmented streaming of multimedia content, where each streaming segment is encoded at multiple bitrates, allowing clients to perform pure client-side bitrate selection and switching at segment boundaries, with index information facilitating efficient content delivery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If server-side bitrate selection is implemented, then streaming quality can be optimized for each client, but additional server resources and complexity are required
Solution Approach 1:
The patent extracts the bitrate selection decision-making process from the server and relocates it to the client side. The server provides multiple bitrate versions of content segments, but the actual selection of which bitrate to download is performed by the client based on its own buffer state and network conditions, eliminating the need for complex server-side client management
Solution Approach 2:
The client is empowered to autonomously manage its own streaming quality by monitoring its buffer fullness and network bandwidth, then automatically selecting appropriate bitrates for downloading content segments. This self-service approach eliminates dependency on server-side bitrate management while maintaining optimized streaming quality
2Reliability
If client buffer is adjusted to account for network variability, then startup delay can be managed, but rebuffering situations occur that interrupt viewing experience
Solution Approach 1:
The patent implements dynamic bitrate selection where the client continuously monitors its buffer state and network conditions, then adjusts the downloaded bitrate in real-time. When buffer levels are high, the client can download at higher bitrates to build buffer reserves; when buffer levels are low, it switches to lower bitrates to prevent rebuffering, creating a dynamic adaptation mechanism
Solution Approach 2:
The client proactively monitors buffer fullness and predicts potential rebuffering events before they occur. By anticipating buffer depletion based on current download speed and playback rate, the client can pre-emptively switch to lower bitrates or accelerate downloads to maintain continuous playback
3Adaptability or versatility
If multiple bitrate versions of each segment are provided, then client-side bitrate switching is enabled, but file layout and download management become more complex
Solution Approach 1:
The patent divides the streaming content into discrete segments, where each segment is available in multiple bitrate versions. This segmentation allows the client to independently select bitrates for different segments based on current conditions, enabling flexible bitrate switching without requiring complex whole-file management
Solution Approach 2:
The patent introduces an index structure that acts as an intermediary between the server and client. The index contains metadata about available bitrate versions for each segment, allowing the client to efficiently query and select appropriate bitrates without the server needing to manage complex file layouts or understand client-specific requirements
Data Source
AI summary
An indexed file layout, comprising index information, is defined for segmented streaming of multimedia content. The index information can comprise program description information and streaming segment index information. In addition, the layout can comprise files containing streaming segments of the program, where the streaming segments are each encoded at one or more bitrates independently of other streaming segments of the program. The layout supports client switching between different bitrates at segment boundaries. Optimized client-side rate control of streaming content can be provided by defining a plurality of states, selecting available paths based on constraint conditions, and selecting a best path through the states (e.g., based on a distortion measure). In one client-side rate control solution states correspond to a specific bitrate of a specific streaming segment, and in another client-side rate control solution states correspond to a measure of client buffer fullness.


