DASH Streaming Server Signaling Media Availability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Dynamic Adaptive Streaming over HTTP (DASH) systems face robustness issues due to imprecise time synchronization between clients and servers, media presentation description mismatches, and encoder clock drifts, leading to media data losses and increased bandwidth consumption.
Innovation Solution
Implementing techniques such as providing a RESTful API, signaling unavailable media data periods with specific HTTP responses, and using empty periods with duration attributes in Media Presentation Descriptions (MPDs) to inform clients of data unavailability, allowing them to avoid requesting missing data and synchronize with server timing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the client continuously requests media data periods from the server, then the client can receive available media content, but bandwidth is wasted requesting unavailable data and connection termination occurs due to excess error responses
Solution Approach 1:
The server performs preliminary action by signaling unavailable media data periods in advance through the Media Presentation Description (MPD) before the client requests those periods. This allows the client to proactively avoid requesting unavailable data, preventing wasted bandwidth and connection termination while maintaining reliable streaming.
2Reliability
If the client requests media data without knowing availability status, then the client can potentially receive data, but error responses increase causing connection termination
Solution Approach 1:
The server provides feedback by including availability status information for different media data periods in the Media Presentation Description (MPD). The client uses this feedback to adjust its requests accordingly, avoiding periods marked as unavailable and maintaining stable connections without generating excess error responses.
3Ease of operation
If the server signals all media data periods as available, then the client can request data freely, but unavailable data requests waste bandwidth and cause errors
Solution Approach 1:
The server performs preliminary action by marking unavailable periods in the MPD before client requests arrive. This maintains ease of operation for the client, who simply requests periods as needed, while the server's advance signaling prevents wasted bandwidth on unavailable data without complicating the client's operation.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
In one example, a device for receiving data related to streaming media data includes one or more network interfaces configured to send and receive data via a network, and one or more processors configured to receive, via the network interfaces, data for a first period of media content and a second period of the media content, wherein the data for the first period indicates that at least some media data of the first period is not available, and wherein the data for the second period indicates available media data for the second period, and based on the data for the first period and the second period, omitting requests for media data of the first period that the data for the first period indicates is not available and sending one or more requests for the media data of the second period.