Adaptive Bit Rate Streaming Server with Dynamic Profile Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing adaptive bit rate (ABR) streaming technologies require significant dynamic random access memory (DRAM) bandwidth and processing resources, and struggle to rapidly adapt to fluctuating network conditions, often advertising multiple profiles that are not reflective of actual stream characteristics, leading to inefficient resource utilization and user experience.
Innovation Solution
An ABR server that continuously monitors network conditions and adjusts bit rates by using two transcoders to quickly switch to lower bit rates when necessary, advertising a single profile while dynamically modifying encoding characteristics, such as frame rate and resolution, to optimize resource usage and adapt to changing network conditions, and supports channel bonding for equitable bandwidth distribution among clients.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multiple ABR profiles are advertised to clients, then adaptability to different network conditions is improved, but DRAM bandwidth and processing resources are excessively consumed
Solution Approach 1:
The patent segments the video stream into multiple representations at different bit rates, but the server only actively maintains and advertises a single ABR profile at a time. This segmentation allows the system to provide adaptability through multiple representations while reducing resource consumption by not simultaneously processing and advertising all profiles.
Solution Approach 2:
The server dynamically switches between different ABR profiles based on monitored network conditions. Instead of statically maintaining multiple profiles, the system dynamically adapts by monitoring effective network performance and switching to the most appropriate profile, thereby maintaining adaptability while reducing the processing burden of maintaining all profiles simultaneously.
2Speed
If the server rapidly adapts to network fluctuations by switching bit rates, then responsiveness to network conditions is improved, but processing complexity increases
Solution Approach 1:
Multiple video representations are pre-encoded at different bit rates before transmission. This preliminary action allows the server to rapidly switch between representations in response to network conditions without performing real-time transcoding, thereby achieving fast adaptation while keeping processing complexity manageable.
Solution Approach 2:
The server creates multiple copies of the video content at different bit rates in advance. These pre-generated copies enable rapid switching based on network conditions without requiring complex real-time processing, as the server simply selects and transmits the appropriate pre-encoded copy.
3Use of energy by moving object
If a single ABR profile is advertised, then resource utilization is optimized, but adaptability to varying network conditions deteriorates
Solution Approach 1:
The server continuously monitors network conditions and uses this feedback to dynamically switch between different ABR profiles. This feedback mechanism allows the system to maintain a single advertised profile (optimizing resource utilization) while still adapting to varying network conditions through proactive switching based on monitored performance metrics.
Solution Approach 2:
The system uses the client's reported effective network performance to automatically determine the appropriate ABR profile to advertise and switch to. This self-service approach allows the server to optimize resource utilization by maintaining a single profile while adapting to network conditions through automated, feedback-driven profile selection.
4Adaptability or versatility
If multiple representations are maintained at the server, then client choice and adaptability are improved, but memory bandwidth consumption increases
Solution Approach 1:
The video content is segmented into multiple representations at different bit rates, providing client choice and adaptability. However, the server only actively maintains and serves one ABR profile at a time, reducing memory bandwidth consumption by not simultaneously managing all representations in active service.
Solution Approach 2:
A single ABR profile serves multiple functions by being dynamically adjusted based on network conditions. The server maintains one universal profile that can adapt to different network scenarios through switching mechanisms, rather than maintaining separate dedicated profiles for each network condition, thereby reducing memory bandwidth requirements.
Data Source
AI summary
A device for providing adaptive bit rate streaming that includes a first transcoder configured to transcode a video stream based at least in part on an encoding characteristic to generate a first transcoded video stream, a network monitor configured to monitor network conditions including a network bandwidth of a network, an adjustment module configured to cause the transcoder to adjust the encoding characteristic in response to a change in the network conditions, an advertising module configured to advertise to a client device an ABR profile that corresponds to the first transcoded video stream, wherein the advertising module updates the advertised single ABR profile when the at least one encoding characteristic is adjusted, and a network interface configured to transmit segments of the first transcoded video stream to the client device via the network in response to requests therefor.


