Method and apparatus for audio flow control during teleconferencing
First Claim
1. A teleconferencing system, comprising:
- (a) a plurality of client terminals; and
(b) a bridge terminal, wherein each of said client terminals transmits audio data to said bridge terminal and said bridge terminal mixes said audio data from said client terminals and transmits mixed audio data to said client terminals, wherein said bridge terminal mixes audio data selectively, whereby each client terminal receives mixed audio data corresponding to each other client terminal.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, apparatuses, and systems for processing audio data for a teleconference. A preferred system has a bridge terminal and a plurality of client terminals configured on a local area network. The bridge terminal intermittently receives packets of audio data from each client terminal, selectively mixes the audio data, and transmits packets of mixed audio data to the client terminals. The rate at which the bridge terminal mixes data is preferably greater than the rates at which the client terminals capture and play back audio data. Each client terminal implements special processing to determine how to handle each new packet of mixed audio data received from the bridge terminal. The special processing is based on the number of packets in the receiving buffer of the client terminal.
95 Citations
34 Claims
-
1. A teleconferencing system, comprising:
-
(a) a plurality of client terminals; and (b) a bridge terminal, wherein each of said client terminals transmits audio data to said bridge terminal and said bridge terminal mixes said audio data from said client terminals and transmits mixed audio data to said client terminals, wherein said bridge terminal mixes audio data selectively, whereby each client terminal receives mixed audio data corresponding to each other client terminal. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus for providing teleconferencing between a plurality of client terminals, comprising:
-
(a) a receiver for receiving audio data from each of said client terminals; (b) a controller for selectively mixing said audio data; and (c) a transmitter for transmitting said selectively mixed audio data to said client terminals, wherein said controller mixes audio data at a rate greater than the average rate at which said receiver receives audio data from said client terminals and wherein said controller mixes a silent packet for each of said client terminals for which said receiver has no new audio data. - View Dependent Claims (9)
-
-
10. A method for processing audio data received by a client terminal of a plurality of client terminals in a teleconference, comprising the steps of:
-
(a) receiving a new packet of said audio data; (b) adding said new packet and a silent packet to a receiving buffer of said client terminal, if the number of packets in said receiving buffer is less than a first threshold; (c) adding said new packet to said receiving buffer, if the number of packets in said receiving buffer is less than a second threshold but not less than said first threshold, wherein said second threshold is greater than said first threshold; (d) characterizing the amount of information in said new packet, if the number of packets in said receiving buffer is less than a third threshold but not less than said second threshold, wherein said third threshold is greater than said second threshold; (e) adding said new packet to said receiving buffer, if the amount of information in said new packet is not less than an information level threshold; (f) skipping said new packet, if the amount of information in said new packet is less than said information level threshold; (g) skipping said new packet, if the number of packets in said receiving buffer is not less than said third threshold; and (h) processing the data in said receiving buffer to playback said audio data. - View Dependent Claims (11, 12, 13, 14)
-
-
15. An apparatus for processing audio data in a teleconference, comprising:
-
(a) a client computer for; receiving a new packet of said audio data; adding said new packet and a silent packet to a receiving buffer of said client computer, if the number of packets in said receiving buffer is less than a first threshold; adding said new packet to said receiving buffer, if the number of packets in said receiving buffer is less than a second threshold but not less than said first threshold, wherein said second threshold is greater than said first threshold; characterizing the amount of information in said new packet, if the number of packets in said receiving buffer is less than a third threshold but not less than said second threshold, wherein said third threshold is greater than said second threshold; adding said new packet to said receiving buffer, if the amount of information in said new packet is not less than an information level threshold; skipping said new packet, if the amount of information in said new packet is less than said information level threshold; and skipping said new packet, if the number of packets in said receiving buffer is not less than said third threshold; and (b) an audio playback device for processing the data in said receiving buffer to playback said audio data. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A method for processing audio data in a teleconference, comprising the steps of:
-
(a) generating packets of audio data by a plurality of client terminals, wherein each of said client terminals comprises a computer, an audio capture device for capturing said audio data, and an audio playback device for playing audio data; (b) transmitting said packets of audio data from said client terminals to a bridge terminal over a local area network, wherein said bridge terminal comprises a receiver for receiving audio data from each of said client terminals, a controller for selectively mixing said audio data, and a transmitter for transmitting said selectively mixed audio data to said client terminals; (c) selectively mixing said packets by said bridge terminal at a rate greater than the average rate at which said bridge terminal receives said packets of audio data from said client terminals and greater than the average rate at which said client terminals process packets of audio data, wherein said bridge terminal mixes a silent packet for each of said client terminals for which said bridge terminal has no new audio data; (d) transmitting a new packet of mixed audio data to a client terminal of said plurality of client terminals over said local area network, wherein said new packet corresponds to audio data from each of the other client terminal of said plurality of client terminals; (e) adding said new packet and a silent packet to a receiving buffer of said client terminal, if the number of packets in said receiving buffer is less than a first threshold; (f) adding said new packet to said receiving buffer, if the number of packets in said receiving buffer is less than a second threshold but not less than said first threshold, wherein said second threshold is greater than said first threshold; (g) characterizing the amount of information in said new packet, if the number of packets in said receiving buffer is less than a third threshold but not less than said second threshold, wherein said third threshold is greater than said second threshold; (h) adding said new packet to said receiving buffer, if the amount of information in said new packet is not less than an information level threshold; (i) skipping said new packet, if the amount of information in said new packet is less than said information level threshold; (j) skipping said new packet, if the number of packets in said receiving buffer is not less than said third threshold; and (k) processing the data in said receiving buffer to playback said audio data.
-
-
21. A teleconferencing system, comprising:
-
(a) a local area network; (b) a plurality of client terminals, configured on said local area network, wherein each of said client terminals comprises a computer, an audio capture device for capturing audio data, and an audio playback device for playing audio data; and (c) a bridge terminal, configured on said local area network, wherein said bridge terminal comprises a receiver for receiving audio data from each of said client terminals, a controller for selectively mixing said audio data, and a transmitter for transmitting said selectively mixed audio data to said client terminals, wherein; each of said plurality of client terminals; generates packets of audio data; and transmits said packets of audio data to said bridge terminal over said local area network; said bridge terminal; selectively mixes said packets at a rate greater than the average rate at which said bridge terminal receives said packets of audio data from said client terminals and greater than the average rate at which said client terminals process packets of audio data, wherein said bridge terminal mixes a silent packet for each of said client terminals for which said bridge terminal has no new audio data; transmits a new packet of mixed audio data to a one client terminal of said plurality of client terminals over said local area network, wherein said new packet corresponds to audio data from each of the other client terminal of said plurality of client terminals; and said one client terminal; adds said new packet and a silent packet to a receiving buffer of said one client terminal, if the number of packets in said receiving buffer is less than a first threshold; adds said new packet to said receiving buffer, if the number of packets in said receiving buffer is less than a second threshold but not less than said first threshold, wherein said second threshold is greater than said first threshold; characterizes the amount of information in said new packet, if the number of packets in said receiving buffer is less than a third threshold but not less than said second threshold, wherein said third threshold is greater than said second threshold; adds said new packet to said receiving buffer, if the amount of information in said new packet is not less than an information level threshold; skips said new packet, if the amount of information in said new packet is less than said information level threshold; skips said new packet, if the number of packets in said receiving buffer is not less than said third threshold; and said audio playback device processes the data in said receiving buffer to playback said audio data.
-
-
22. A teleconferencing system, comprising:
-
(a) a plurality of client terminals; and (b) a bridge terminal, wherein each of said client terminals transmits audio data to said bridge terminal and said bridge terminal mixes said audio data from said client terminals and transmits mixed audio data to said client terminals, wherein a client terminal of said plurality of client terminals; receives a new packet of said mixed audio data; adds said new packet and a silent packet to a receiving buffer of said client terminal, if the number of packets in said receiving buffer is less than a first threshold; adds said new packet to said receiving buffer, if the number of packets in said receiving buffer is less than a second threshold but not less than said first threshold, wherein said second threshold is greater than said first threshold; characterizes the amount of information in said new packet, if the number of packets in said receiving buffer is less than a third threshold but not less than said second threshold, wherein said third threshold is greater than said second threshold; adds said new packet to said receiving buffer, if the amount of information in said new packet is not less than an information level threshold; skips said new packet, if the amount of information in said new packet is less than said information level threshold; skips said new packet, if the number of packets in said receiving buffer is not less than said third threshold; and processes the data in said receiving buffer to playback said mixed audio data. - View Dependent Claims (23, 24, 25, 26, 27, 28)
-
-
29. A teleconferencing system, comprising:
-
(a) a plurality of client terminals; and (b) a bridge terminal, wherein; each of said client terminals transmits audio data to said bridge terminal; said bridge terminal mixes said audio data from said client terminals and transmits mixed audio data to said client terminals; said bridge terminal mixes audio data at a rate greater than the average rate at which said bridge terminal receives audio data from said client terminals; and said bridge terminal mixes a silent packet for each of said client terminals for which said bridge terminal has no new audio data. - View Dependent Claims (30, 31, 32, 33, 34)
-
Specification