Server-Side Adaptive Bitrate Streaming Scheduling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current media streaming systems face performance degradation due to inefficient resource allocation when multiple media devices request high-resolution, high-bitrate video streams, leading to intermittent interruptions for other devices served by the same content server.
Innovation Solution
Implementing a server-side approach with a schedule module that determines optimal bitrates and segment scheduling for each client within a predefined schedule window, using a Need Parameter Vector (NPV) to maximize network utilization and maintain video quality across multiple clients, rather than relying on client-driven selection.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If a media device requests high-resolution, high-bitrate video streams, then video quality is improved, but network bandwidth and content server resources are consumed, causing degraded performance for other media devices
Solution Approach 1:
The system dynamically adjusts bitrate parameters based on client status and buffer conditions. The server selects optimal bitrates from multiple encoding variants and modifies delivery parameters in real-time to balance quality and resource allocation across multiple clients, preventing any single client from monopolizing bandwidth.
Solution Approach 2:
The patent implements dynamic bitrate selection and scheduling that adapts to changing network conditions and client requirements. The schedule module continuously monitors buffer status and client state, dynamically adjusting segment delivery timing and bitrate selection to maintain fair performance across all media devices.
2Ease of operation
If client-driven selection is used for video stream selection, then device autonomy is improved, but suboptimal resource allocation occurs leading to interruptions
Solution Approach 1:
The system implements feedback mechanisms where the server monitors buffer conditions, network status, and client behavior. Based on this feedback, the schedule module adjusts scheduling decisions to prevent interruptions. The server receives status information from clients and uses this feedback to make informed scheduling decisions that maintain both autonomy and reliability.
Solution Approach 2:
The patent introduces a schedule module as an intermediary between the client and content server. This mediator manages the scheduling decisions, balancing client autonomy with server-side optimization. The schedule module acts as a mediator that coordinates resource allocation across multiple clients while maintaining individual client preferences and buffer conditions.
3Manufacturing precision
If the content server allocates resources to high-bitrate streams, then video quality for that client is improved, but other clients experience intermittent interruptions
Solution Approach 1:
The system delivers partial content at optimal quality levels rather than always providing maximum bitrate. The schedule module selects appropriate bitrate segments based on actual buffer needs and network conditions, avoiding excessive bandwidth allocation when not necessary. This partial action approach maintains quality while improving overall efficiency for multiple clients.
Solution Approach 2:
The patent implements preliminary buffer filling and pre-scheduling of segments. The server proactively schedules segment delivery based on predicted buffer depletion and client playback patterns, rather than reacting to interruptions after they occur. This preliminary scheduling action prevents interruptions before they happen while optimizing resource allocation.
Data Source
AI summary
A method for providing video content from a server to a plurality of media devices is disclosed, the method comprising: determining, by the server, the bandwidth to allocate to each of the plurality of media devices using a hypertext transfer protocol-based live streaming client model or a need parameter vector and providing the allocated bandwidth to each of the plurality of media devices, wherein the video content is transmitted in a plurality of segments from the server, and wherein each segment is transmitted at a bitrate that may vary from segment to segment.


