System and method for peer-to-peer multi-party voice-over-IP services
First Claim
1. A method for providing multi-party voice-over-IP services, the method on an information processing system comprising:
- establishing a peer-to-peer distribution tree to broadcast a composite audio signal from a root mixing node to a plurality of participating nodes, wherein a subset of the participating nodes are originating nodes that provide a respective audio stream output received by the root mixing node to produce the composite audio signal; and
identifying, independently of the peer-to-peer distribution tree, a first intermediate mixing node from within the plurality of participating nodes, the first intermediate mixing node providing to the root mixing node a mixing of respective audio stream outputs provided by a first subset of originating nodes to the first intermediate mixing node.
3 Assignments
0 Petitions
Accused Products
Abstract
A system, method, and computer program product for establishing multi-party VoIP conference audio calls in a distributed, peer-to-peer network where any number of nodes are able to arbitrarily and asynchronously start or stop producing audio output to be mixed into a single composite audio stream that is distributed to all nodes. A single distribution tree is used that has optimal communications characteristics to distribute the composite audio signal to all nodes. An audio mixing tree is established and maintained by adaptively and dynamically adding and merging intermediate mixing nodes operating between user nodes and the root of the single distribution tree. The intermediate mixing nodes and the root of the single distribution tree are all hosted, in an exemplary embodiment, on user nodes that are endpoints of the distribution tree.
-
Citations
19 Claims
-
1. A method for providing multi-party voice-over-IP services, the method on an information processing system comprising:
-
establishing a peer-to-peer distribution tree to broadcast a composite audio signal from a root mixing node to a plurality of participating nodes, wherein a subset of the participating nodes are originating nodes that provide a respective audio stream output received by the root mixing node to produce the composite audio signal; and
identifying, independently of the peer-to-peer distribution tree, a first intermediate mixing node from within the plurality of participating nodes, the first intermediate mixing node providing to the root mixing node a mixing of respective audio stream outputs provided by a first subset of originating nodes to the first intermediate mixing node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A peer-to-peer processing node for participating in multi-party voice-over-IP services, the peer-to-peer processing node comprising:
-
a distribution tree processor that establishes a peer-to-peer distribution tree to broadcast a composite audio signal from a root mixing node to a plurality of participating nodes, wherein a subset of the participating nodes are originating nodes that provide a respective audio stream output received by the root mixing node to produce the composite audio signal; and
a mixing tree processor that identifies, independently of the distribution tree, a first intermediate mixing node from within the plurality of participating nodes;
a mixer that provides to the root mixing node a mixing of respective audio stream outputs provided by a first subset of originating nodes to the mixer. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A computer program product for providing multi-party voice-over-IP services, the computer program product comprising instructions for:
-
establishing a peer-to-peer distribution tree to broadcast a composite audio signal from a root mixing node to a plurality of participating nodes, wherein a subset of the participating nodes are originating nodes that provide a respective audio stream output received by the root mixing node to produce the composite audio signal; and
identifying, independently of the peer-to-peer distribution tree, a first intermediate mixing node and a backup intermediate mixing node from within the plurality of participating nodes, the first intermediate mixing node providing to the root mixing node a mixing of respective audio stream outputs provided by a first subset of originating nodes to the first intermediate mixing node. - View Dependent Claims (19)
-
Specification