DASH Streaming Rate Pacing and MPD Fragmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current DASH streaming technologies lack effective rate pacing and App-level flow control mechanisms, leading to inefficient network resource utilization and potential data rate inconsistencies during server push strategies, especially in HTTP/2 and WebSocket protocols.
Innovation Solution
Introduction of a new Push Directive type, 'urn:mpeg:dash:fdh:2016:push-rate', which allows clients to specify a data push rate for media data, enabling servers to maintain a minimum sending rate that ensures sufficient data delivery for smooth playback, along with MPD fragmentation to optimize file size and adaptability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If server push strategy is used in DASH streaming, then data delivery efficiency is improved, but rate pacing and flow control become difficult to manage
Solution Approach 1:
The patent implements a feedback mechanism where the client sends a Push Directive message to the server indicating the desired push rate. The server monitors the actual data delivery rate and adjusts its push operations based on feedback from the client about playback status and buffer levels, enabling dynamic rate pacing control in server push mode.
Solution Approach 2:
The patent introduces dynamic rate pacing by allowing the push rate to be adjusted during the streaming session. The client can update the Push Directive message with new rate indications based on current playback conditions, enabling the system to adapt the data delivery rate dynamically rather than using a fixed rate.
2Productivity
If server pushes unsolicited data to client, then network resource utilization improves, but data rate consistency deteriorates
Solution Approach 1:
The client provides continuous feedback to the server about the desired push rate through Push Directive messages. This feedback loop ensures that the server maintains consistent data delivery rates by adjusting its push operations based on client needs, preventing both under-delivery and excessive data transmission.
Solution Approach 2:
The patent changes the parameter of push rate from a fixed server-side decision to a dynamically adjustable parameter based on client feedback. The Push Directive message carries rate information that the server uses to modify its data delivery characteristics, ensuring rate consistency while maintaining efficient resource utilization.
3Loss of information
If complete MPD file is sent to client, then all media content information is provided, but file size and transmission overhead increase
Solution Approach 1:
The patent segments the MPD file into multiple fragments, each containing only the specific media content information relevant to particular segments. Instead of transmitting the complete MPD file, the server sends only the necessary MPD fragments that correspond to the media segments being delivered, reducing overall file size and transmission overhead while maintaining information completeness.
Solution Approach 2:
The patent extracts and transmits only the essential portions of the MPD file that are needed for the current streaming session. By taking out only the relevant MPD information corresponding to active media segments and omitting unnecessary content, the system reduces transmission overhead while ensuring all required media content information is provided.
Data Source
AI summary
A method and system of multimedia streaming services using DASH (Dynamic Adaptive Streaming over HTTP) are disclosed. According to this method, one or more Push Directives are sent from a client to a server to indicate information related to media data requested. Each Push Directive comprises a Push type including Push-rate and Push-rate Directive includes information associated with a push data rate related to the media data requested. If the Push-rate Directive is received by the server, one or more groups of data for the media data requested are pushed from the server to the client according to the push data rate. According to another method, fragmented MPDS are used, where at least one fragmented MPD omits a MPD header, MPD payload, Period header or Period payload. In yet another method, a status message group includes SharedResourceAllocation message that comprises parameters including bandwidth and pacingRate.


