Audio conferencing utilizing packets with unencrypted power level information
First Claim
1. A computer-implemented method comprising:
- receiving a plurality of packet streams input from different endpoints, packets of each stream including header and payload portions, the header portion including first and second portions, the second portion containing audio power level information that includes power levels for each of a respective plurality of frequencies, each power level comprising a moving average of a normalized power level at a particular frequency, the second portion further including timebase information associated with the moving average;
comparing the audio power level information contained in the packets of each of the packet streams at a particular point in time to select N, where N is an integer, greater than or equal to one, packet streams with loudest audio;
decoding the N packet streams to obtain audio content contained in the payload portion of each of the N packet streams; and
mixing the audio content of the N packet streams to produce one or more output packet streams.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a method that includes receiving a plurality of packet streams input from different endpoints, packets of each stream including encrypted and unencrypted portions, the unencrypted portion containing audio power level information. The audio power level information contained in the packets of each of the packet streams is then compared to select N packet streams with loudest audio. The N packet streams are then decrypted to obtain audio content, and the audio content of the N packet streams mixed to produce one or more output packet streams. It is emphasized that this abstract is provided to comply with the rules requiring an abstract that will allow a searcher or other reader to quickly ascertain the subject matter of the technical disclosure.
45 Citations
23 Claims
-
1. A computer-implemented method comprising:
-
receiving a plurality of packet streams input from different endpoints, packets of each stream including header and payload portions, the header portion including first and second portions, the second portion containing audio power level information that includes power levels for each of a respective plurality of frequencies, each power level comprising a moving average of a normalized power level at a particular frequency, the second portion further including timebase information associated with the moving average; comparing the audio power level information contained in the packets of each of the packet streams at a particular point in time to select N, where N is an integer, greater than or equal to one, packet streams with loudest audio; decoding the N packet streams to obtain audio content contained in the payload portion of each of the N packet streams; and mixing the audio content of the N packet streams to produce one or more output packet streams. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-implemented method comprising:
-
receiving a plurality of packet streams input from a corresponding plurality of endpoints, packets of each stream including header and payload portions, the header portion containing audio power level information that includes timebase information and a moving average of normalized power levels for each of a respective plurality of frequencies, wherein portions of the header and payload are encrypted the timebase information and the moving average being included in an unencrvpted portion of the header; comparing the audio power level information contained in the packets of each of the packet streams at a particular point in time to select N, where N is an integer greater than or equal to one, packet streams with loudest audio; decoding the N packet streams to obtain audio content contained in the payload portion of each of the N packet streams; and mixing the audio content of the N packet streams to produce N+1 output packet streams. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory machine-readable storage medium encoded with a computer program, when executed, the computer program operable to:
-
receive a plurality of packet streams input from different endpoints, packets of each stream including encrypted and unencrypted portions, the unencrypted portion containing audio power level information that includes a moving average of normalized power levels for each of a respective plurality of frequencies, the audio power level information further including timebase information associated with the moving average; compare the audio power level information contained in the packets of each of the packet streams at a particular point in time to select N, where N is an integer greater than or equal to one, packet streams with loudest audio; decrypt the N packet streams to obtain audio content contained in the encrypted portion of each of the N packet streams; and mix the audio content of the N packet streams to produce one or more output packet streams. - View Dependent Claims (18, 19, 20)
-
-
21. A system comprising:
-
a conferencing server; and a mixer coupled to receive control information from the conferencing server, the mixer being operable to; examine an unencrypted portion of each of a plurality of packets associated with streams input from corresponding endpoints, the unencrypted portion containing audio power level information at one or more frequencies associated with human speech, the audio power level information including a moving average of normalized power levels at the one or more frequencies, the unencrypted portion further including a timebase associated with the moving average; select, based on the audio power level information, N packet streams having highest power levels, where N is an integer greater than or equal to one; mix audio content from the N packet streams to produce a plurality of output packet streams; and send the output packet streams to the endpoints. - View Dependent Claims (22, 23)
-
Specification