Audio processing optimization in a multi-participant conference
First Claim
1. A non-transitory computer readable medium of a first computing device that participates in a communication session among a plurality of computing devices, the computer readable medium storing a computer program that is executable by at least one processing unit, the computer program comprising:
- a set of instructions for establishing a star network among the plurality of computing devices with the first computing device as a central network hub;
a set of instructions for receiving, through the star network, an audio stream from each of the plurality of computing devices;
a set of instructions for compositing at least a subset of the audio streams, wherein the set of instructions for compositing comprises a set of instructions for generating at least two different composite audio streams for at least two different computing devices, wherein the set of instructions for the generating comprises sets of instructions for (i) identifying a set of silent participants in the communication session by identifying audio data packets that do not contain audio from silent participants based on identified sizes of audio data packets of each received audio stream, (ii) identifying computing devices to which to send a same composite audio stream based on the identified set of silent participants; and
(iii) generating the same composite audio stream for the identified computing devices, wherein the same composite audio stream does not include audio streams from the set of silent participants; and
a set of instructions for sending each computing device the composite audio stream for the device, wherein the same composite audio stream is sent for the identified computing devices.
1 Assignment
0 Petitions
Accused Products
Abstract
A first computing device distributes audio streams to several computing devices of participants in a communication session. Some embodiments establishes a star network with the first computing device as a central network hub for receiving audio streams from other computing devices, compositing the audio streams and distributing the composited audio streams to the other computing devices. Through the star network, the first computing device receives audio streams from the other computing devices. The first computing device generates at least two different composite audio streams for at least two different computing devices by (i) identifying a set of silent participants in the communication session, and (ii) eliminating redundant audio processing operations that produce the same composite audio streams for different computing devices because of the identified set of silent participants. The first computing device sends each computing device the composited audio stream for the device.
-
Citations
15 Claims
-
1. A non-transitory computer readable medium of a first computing device that participates in a communication session among a plurality of computing devices, the computer readable medium storing a computer program that is executable by at least one processing unit, the computer program comprising:
-
a set of instructions for establishing a star network among the plurality of computing devices with the first computing device as a central network hub; a set of instructions for receiving, through the star network, an audio stream from each of the plurality of computing devices; a set of instructions for compositing at least a subset of the audio streams, wherein the set of instructions for compositing comprises a set of instructions for generating at least two different composite audio streams for at least two different computing devices, wherein the set of instructions for the generating comprises sets of instructions for (i) identifying a set of silent participants in the communication session by identifying audio data packets that do not contain audio from silent participants based on identified sizes of audio data packets of each received audio stream, (ii) identifying computing devices to which to send a same composite audio stream based on the identified set of silent participants; and
(iii) generating the same composite audio stream for the identified computing devices, wherein the same composite audio stream does not include audio streams from the set of silent participants; anda set of instructions for sending each computing device the composite audio stream for the device, wherein the same composite audio stream is sent for the identified computing devices. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for a first computing device to distribute audio streams to a plurality of computing devices of participants in a communication session conducted through a network connecting the computing devices, the method comprising:
-
establishing a star network with the first computing device as a central network hub; through the star network, receiving an audio stream from each of the plurality of computing devices; compositing at least a subset of the audio streams and distributing the composited audio streams to the other ones of the plurality of computing devices, wherein said compositing and said distributing comprises; identifying a received audio stream that for at least one particular computing device does not need to be composited with other received audio stream, wherein said identifying the audio stream comprises determining that other audio streams that are to be routed to the particular computing device are from participants in the audio conference who are silent, said determining comprising identifying audio data packets that do not contain audio based on identified sizes of audio data packets of each of the other audio streams; and routing the identified received audio stream to the particular computing device without compositing the identified audio stream with other audio streams. - View Dependent Claims (8, 9)
-
-
10. A non-transitory computer readable medium of a first computing device that participates in a communication session among a plurality of computing devices, the computer readable medium storing a computer program that is executable by at least one processing unit, the computer program comprising:
-
a set of instructions for establishing a star network among the plurality of computing devices with the first computing device as a central network hub for compositing a plurality of audio streams and distributing the composited audio streams to the other computing devices; a set of instructions for receiving, through the star network, the plurality of audio streams, wherein one of the plurality of audio streams is received from each of the plurality of computing devices; a set of instructions for identifying one of the received audio streams that for at least one particular computing device does not need to be composited with any of the other received audio streams, wherein the set of instructions for identifying one of the received audio streams comprises a set of instructions for determining that all audio streams that are to be routed to the particular computing device, other than the identified audio stream, are from participants in the communication session who are silent, by identifying audio data packets that do not contain audio based on identified sizes of audio data packets of each of the other received audio streams; and a set of instructions for routing the identified audio stream to the particular computing device without compositing the identified audio stream with other audio streams. - View Dependent Claims (11, 12)
-
-
13. A method for a first computing device to distribute audio streams to a plurality of computing devices of participants in a communication session conducted through a network connecting the computing devices, the method comprising:
-
establishing a star network among the plurality of computing devices with the first computing device as a central network hub; through the star network, receiving an audio stream from each of the plurality of computing devices; compositing at least a subset of the audio streams, wherein the compositing comprises generating at least two different composite audio streams for at least two different computing devices, wherein the generating comprises (i) identifying a set of silent participants in the communication session by identifying audio data packets that do not contain audio from silent participants based on identified sizes of audio data packets of each received audio stream, (ii) identifying computing devices to which to send a same composite audio stream based on the identified set of silent participants; and
(iii) generating the same composite audio stream for the identified computing devices, wherein the same composite audio stream does not include audio streams from the set of silent participants; andsending each computing device the composite audio stream for the device, wherein the same composite audio stream is sent for the identified computing devices. - View Dependent Claims (14, 15)
-
Specification