Media User Agent for Adaptive Streaming Rate Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing media streaming technologies face challenges in accurately estimating bandwidth, leading to variable and low-quality video experiences due to inaccurate client-side bandwidth estimation and increased rate changes, which affect the Quality of Experience (QoE).
Innovation Solution
Introducing a media user agent that autonomously requests media segments from a media server based on a Media Presentation Description (MPD), reducing the need for client-side bandwidth estimation and optimizing network knowledge for better media rate adaptation, thereby improving QoE by reducing uplink traffic and enhancing transfer speed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If client-side bandwidth estimation is used for media rate adaptation, then the client can select appropriate media segments, but the estimation accuracy is poor leading to variable and low-quality video
Solution Approach 1:
The patent introduces a network-side entity (server or network controller) as an intermediary that performs accurate bandwidth measurement and rate adaptation decisions. This intermediary has direct access to network state information and can make informed rate adaptation decisions, eliminating the need for inaccurate client-side estimation while maintaining adaptability to network conditions.
2Reliability
If buffer-based rate adaptation algorithm is used to reduce buffer underrun, then the media rate can be increased, but the rate changes increase negatively affecting QoE
Solution Approach 1:
The patent implements a feedback mechanism where the network-side entity continuously monitors buffer levels, network conditions, and playback state, then adjusts the media rate smoothly based on this feedback. This closed-loop control reduces buffer underrun while minimizing abrupt rate changes that degrade QoE, as the system can anticipate and prepare for rate transitions.
Solution Approach 2:
The network-side entity performs preliminary actions by pre-fetching media segments at appropriate rates and managing the playback buffer proactively. This allows the system to maintain sufficient buffer levels without needing to make aggressive rate changes, thereby reducing QoE degradation while preventing buffer underrun.
3Ease of operation
If look ahead scheme is used to reduce rate changes, then the rate selection can consider future segment sizes, but the achieved media rate is lower during peak hours
Solution Approach 1:
The network-side intermediary has global knowledge of network load and segment sizes that the client cannot obtain. It can perform look-ahead rate adaptation by anticipating future network conditions and segment characteristics, reducing rate changes while maintaining or even increasing the achieved media rate through informed decisions about when to fetch higher-rate segments.
4Adaptability or versatility
If client performs autonomous segment requests based on MPD, then the client can control media fetching, but the client lacks full knowledge of system load affecting rate adaptation
Solution Approach 1:
The network-side intermediary acts as an informed mediator between the client and media server. It receives the client's autonomous segment requests based on MPD information, then modifies or adjusts these requests based on its knowledge of system load and network conditions. This preserves client-side adaptability while compensating for the client's lack of system load knowledge through the intermediary's intelligent mediation.
Data Source
AI summary
A media user agent, a media user client and respective methods performed thereby for providing media from a media server to the media user client in a user terminal are provided. The method performed by the media user agent in a node in a communication network for providing media from a media server to a media user client in a user terminal comprises receiving a request for media from the media user client, the request for media comprising information about the requested media; and transmitting a request of the media to a media server, the request comprising the information about the requested media. The method further comprises receiving an MPD from the media server; and autonomously requesting segment(s) of the media from the media server based on the MPD.


