Dynamic Bandwidth Allocation for Multi-Stream Videoconference Quality
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Prior art videoconferencing systems, such as the iPower system, statically divide bandwidth among video streams, leading to compromised video quality when multiple streams are present, as they prioritize one stream over others and do not dynamically adjust bit rates based on frame changes.
Innovation Solution
A videoconferencing unit with multiple encoders and a controller that dynamically adjusts bit rates by comparing frame changes (Sum of Absolute Differences) and allocating bandwidth accordingly, ensuring consistent quality across all streams.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If bandwidth is statically divided among video streams, then system complexity is reduced and ease of operation is improved, but video quality deteriorates when multiple streams are present
Solution Approach 1:
The patent implements dynamic bandwidth allocation where the controller continuously monitors frame changes from multiple encoders and adjusts bit rates in real-time. The system transitions from static predetermined bandwidth division to dynamic adjustment based on actual video content complexity, allowing the bandwidth allocation to adapt to changing video conditions while maintaining multiple video streams at acceptable quality levels
Solution Approach 2:
The system changes the bit rate parameter for each encoder based on measured frame changes. The controller calculates the number of frame changes for each video stream and adjusts the bit rate allocation accordingly, allocating more bandwidth to streams with higher frame changes and less to those with lower changes, thereby optimizing overall video quality
2Device complexity
If one video stream is prioritized over others, then bandwidth allocation is simplified, but video quality of non-prioritized streams deteriorates
Solution Approach 1:
The patent applies different bit rate allocations to different video streams based on their individual frame change characteristics. Each encoder receives a customized bit rate tailored to its specific video content complexity rather than a uniform or predetermined allocation, ensuring that each stream receives appropriate quality level relative to its content requirements
Solution Approach 2:
The system implements a feedback mechanism where encoders report frame change information to the controller, which then adjusts bit rate allocations accordingly. This closed-loop control ensures that bandwidth is continuously optimized based on actual video conditions, preventing quality degradation in any stream while managing overall bandwidth effectively
3Manufacturing precision
If dynamic bandwidth adjustment is implemented for multiple video streams, then video quality is maintained across all streams, but system complexity increases
Solution Approach 1:
The patent divides the bandwidth allocation task into separate handling for each encoder. The controller independently calculates frame changes and determines bit rate adjustments for each video stream separately, then coordinates their allocations to fit within total available bandwidth. This segmented approach manages complexity by treating each stream individually while maintaining overall system coherence
Solution Approach 2:
Each encoder independently calculates its own frame change metrics and communicates this information to the controller. The encoders essentially serve themselves by providing the necessary data for their own quality assessment, reducing the burden on the controller and simplifying the overall system architecture while maintaining dynamic optimization
Data Source
AI summary
A videoconferencing unit includes first and second encoder that each encodes a video stream of frames and generates variables indicating changes between frames of the video streams. The unit also includes a controller operatively coupled to the first and second encoders. The controller compares the variables from the encoders and determines first and second bit rates for the first and second encoders based on the comparison. Then, the controller sets the first and second encoders to the first and second bit rates, respectively. Preferably, comparing the variables, determining the bit rates, and setting the bit rates are dynamically repeated as the unit operates. In addition, the dynamic repetition is preferably allowed or limited to one or more predetermined intervals of time.


