Streaming Media Client Adaptation to Bandwidth Fluctuations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing streaming media transmission services are prone to interruptions when network bandwidth changes significantly, as they lack adaptive mechanisms to manage fluctuations effectively.
Innovation Solution
A method and system where a client obtains a media presentation description file with priority levels for coding representation groups, selects appropriate coding representations based on current network bandwidth, and requests corresponding media segments from a server, ensuring continuous transmission by prioritizing media components and adjusting bit rates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the same content is encoded into versions with different rates and the client selects media segments based on actual transmission rate, then the system adapts to network bandwidth changes, but when network bandwidth drops below the lowest coding rate, the streaming media transmission service is interrupted
Solution Approach 1:
The media content is divided into multiple coding representation groups, where each group contains media segments with different coding rates. This segmentation allows the client to selectively request segments from different groups based on current network conditions, ensuring continuous playback even when bandwidth fluctuates below the lowest original coding rate.
Solution Approach 2:
The system changes the coding rate parameter of media segments dynamically. By encoding the same content at multiple different coding rates and organizing them into priority-based groups, the system can adapt to varying network bandwidth conditions. When bandwidth decreases, the client requests segments with lower coding rates from appropriate priority groups, maintaining continuous transmission service.
2Adaptability or versatility
If a dedicated streaming server maintains one-to-one session connection to control transmission speed, then the server can adjust streaming media transmission speed according to network bandwidth, but the server becomes a single point of failure and firewall hinders transmission
Solution Approach 1:
The session control function is extracted from the server and transferred to the client. The server no longer maintains one-to-one session connections but instead provides media segments with embedded priority level information. The client independently selects and requests segments based on its own network conditions, eliminating the server as a single point of control and improving transmission reliability.
Solution Approach 2:
The client performs self-service by autonomously selecting media segments from different priority groups based on its current network bandwidth. Instead of relying on the server to control transmission speed through session management, the client independently adjusts its requests to match network conditions, reducing dependency on the server and improving overall system reliability.
3Speed
If the client requests media segments based on current network bandwidth without priority levels, then the system responds to bandwidth changes, but it cannot effectively manage fluctuations when bandwidth changes in a larger range
Solution Approach 1:
Media segments are segmented into multiple priority groups, where each group contains segments with specific coding rate characteristics. This segmentation enables the client to navigate through different priority groups based on the extent of bandwidth changes, providing effective adaptation across a wider range of bandwidth conditions rather than relying on a single selection mechanism.
Solution Approach 2:
The system implements dynamic selection of media segments by introducing priority levels that guide the client's requests. As network bandwidth fluctuates across different ranges, the client dynamically adjusts which priority groups to request from, enabling effective management of bandwidth changes in larger ranges rather than static rate selection.
Data Source
AI summary
A method includes: obtaining, by a client, a media presentation description file, where the media presentation description file includes a priority level of a coding representation group of media; selecting a coding representation group according to the priority level of the coding representation group and a current network bandwidth, and selecting one coding representation from each selected coding representation group; and requesting, according to address information that is of the selected coding representation and is obtained by parsing the media presentation description file, a media segment of the coding representation from a server that is indicated by the address information.


