Master Node Echo Cancellation for VoIP Conferencing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current VoIP conferencing systems face complexity and high CPU bandwidth requirements due to the need for echo cancellation functionality at every participant node, which increases development time and processing demands.
Innovation Solution
Implementing a system where a master node manages echo cancellation and mixes or multiplexes voice streams, reducing the need for echo cancellation at participant nodes by transmitting mixed or multiplexed voice streams, which are then de-mixed or de-multiplexed to exclude the participant's own voice stream, thus reducing complexity and CPU load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If echo cancellation functionality is implemented at every participant node, then echo cancellation is effective, but device complexity and CPU bandwidth requirements increase
Solution Approach 1:
The patent extracts the echo cancellation functionality from individual participant nodes and centralizes it at the master node. The master node receives voice streams from all participants, performs echo cancellation on the combined stream, and returns the cancelled stream to participants. This eliminates the need for each participant to implement complex echo cancellation algorithms locally, thereby reducing device complexity while maintaining effective echo cancellation.
Solution Approach 2:
The patent merges all participant voice streams into a single combined stream at the master node before performing echo cancellation. Instead of each participant handling their own echo cancellation independently, the system combines all streams and applies a unified echo cancellation process, simplifying the architecture and reducing individual participant node complexity.
2Reliability
If echo cancellation functionality is implemented at every participant node, then echo cancellation is effective, but CPU bandwidth requirements increase
Solution Approach 1:
The patent extracts the computationally intensive echo cancellation processing from distributed participant nodes and consolidates it at the master node. This centralization means that instead of multiple participants each consuming CPU bandwidth for echo cancellation, only the master node consumes significant CPU resources for this function, thereby reducing overall CPU bandwidth requirements across the system while maintaining effective echo cancellation.
3Productivity
If mixed or multiplexed voice streams are transmitted over multicast session, then network efficiency improves, but processing complexity at master node increases
Solution Approach 1:
The patent merges all participant voice streams into a single mixed or multiplexed stream that is transmitted over a multicast session to all participants. This approach improves network efficiency by reducing the number of separate transmissions needed. While this increases processing complexity at the master node, it eliminates the need for multiple unicast transmissions, achieving a trade-off that favors overall system efficiency.
Solution Approach 2:
The master node performs multiple functions: receiving individual unicast streams from participants, mixing or multiplexing these streams, performing echo cancellation, and transmitting the result via multicast to all participants. This multi-functional approach consolidates operations at the master node, improving network efficiency through multicast while accepting increased master node complexity.
Data Source
AI summary
A system includes participant nodes that unicast a voice stream to a master node and receive a multicast voice stream from the master node. The multicast voice stream may be a mixed voice stream mixing the voice streams of the participants. In this case, each participant performs echo cancellation on the multicast voice stream. Alternatively, the multicast voice stream may be a multiplexed voice stream multiplexing the voice streams of all participants. In this case, each participant de-multiplexes the multicast voice stream and generates a mixed voice stream that does not include that participant. Alternatively, the multicast voice stream received by each participant may be a multiplexed digital voice stream multiplexing multiple mixed streams including one mixed stream that does not include the voice stream of that participant. In this case, each participant de-multiplexes the multicast voice stream to obtain the mixed stream that does not include that participant.


