Adaptive Streaming Media Segment Temporal Level Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current HTTP-based adaptive video streaming techniques face issues with re-buffering due to sudden changes in network capacity, leading to media rendering freezes and wastage of downloaded media segments, as they often request lower representations too late to prevent freezes and do not efficiently manage multiple temporal levels.
Innovation Solution
A media client and server system that divides media content into multiple temporally scaling segments, allowing for prioritized and hierarchical requests and transmissions of temporal levels using HTTP/2, enabling efficient bitrate adaptation and recombination of segments to maintain smooth playback.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the media client requests a lower representation segment upon detecting low buffer or throughput, then re-buffering is avoided, but media rendering freeze occurs because the action is too late
Solution Approach 1:
The media segment is divided into multiple temporal levels (e.g., base layer and enhancement layers). The client can selectively request and receive only the necessary temporal levels based on current buffer status and network conditions, allowing for finer-grained control and earlier adaptation without waiting to detect low buffer conditions.
Solution Approach 2:
The client proactively manages temporal level requests based on predicted buffer needs and network conditions rather than reacting only after low buffer is detected. This preliminary action allows the client to prevent rendering freezes before they occur by ensuring adequate buffer content is loaded in advance.
2Adaptability or versatility
If the media client aborts the download of a media segment, then lower representation can be requested, but the downloaded fraction of the media segment is wasted
Solution Approach 1:
By segmenting the media content into temporal levels, the client can abort requests for higher temporal levels while retaining successfully downloaded lower temporal levels. This partial reception capability eliminates waste because the client utilizes whatever data has been successfully downloaded rather than discarding the entire segment.
Solution Approach 2:
The system recovers value from partially downloaded segments by utilizing the successfully received temporal levels even when higher levels fail to download. Instead of discarding the entire segment when adaptation is needed, the client recovers and uses the available lower temporal levels to maintain playback continuity.
3Productivity
If multiple temporal levels are requested simultaneously, then complete media segment is received faster, but network bandwidth is consumed inefficiently during network irregularities
Solution Approach 1:
The temporal level requests are dynamically adjusted based on real-time buffer status and network conditions. The client can flexibly request multiple temporal levels when conditions are good for faster reception, but scale back to fewer levels when network irregularities occur, optimizing the balance between reception speed and bandwidth consumption.
Solution Approach 2:
The client changes the parameter of temporal level request quantity based on network conditions and buffer status. When network capacity is high and buffer is sufficient, more temporal levels are requested to speed up reception. When network capacity drops or buffer is low, the number of requested temporal levels is reduced to conserve bandwidth and prevent waste.
Data Source
AI summary
An adaptive streaming system is described in which media content is provided by a media server as a sequence of consecutive media segments for being individually requested by a media client. A method implementation performed by a media client of the system comprises the generation of at least one request in relation to a media segment. The media segment is divided into multiple temporally scaling media segment levels and the at least one request includes a reference to at least one temporal level of the media segment. The media client then triggers transmission of the one or more request towards the media server and processes the one or more temporal levels of the media segment received from the media server in response to the one or more requests.


