IP Library Granted Patent US 7,463,598
Granted Patent B1
US 7,463,598 · App. 10/052,446 · Granted Dec 9, 2008

Multi-stream jitter buffer for packetized voice applications

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,463,598
App. No.
10/052,446
Granted
Dec 9, 2008
Kind
B1
Abstract

In one embodiment the invention is a method. The method includes receiving data from a first party into a multiplexing device or a plurality of multiplexing devices. The method also includes receiving from a second party into a first jitter buffer, processing the data from the second party, and sending output data from the first jitter buffer to a multiplexing device or a plurality of multiplexing device. The method also includes receiving data from a third party into a second jitter buffer, processing the data from the third party, and sending output data from the second jitter buffer to a multiplexing device or a plurality of multiplexing devices. The method further includes sending data from one or a plurality of the multiplexing devices to a first output device. The method further includes sending data from one or a plurality of the multiplexing devices to a second output device. Moreover, data is further sent from one or a plurality of the multiplexing devices to a third output device. In one embodiment the data received from the first party, second party, and third party is packetized voice data.

Claims (66)

1. A method comprising:

receiving a first data from a first party through an input module directly into a multiplexing device or a plurality of multiplexing devices;

receiving a second data from a second party into a first jitter buffer, processing the second data from the second party, and sending a second output data from the first jitter buffer to the multiplexing device or the plurality of multiplexing devices;

receiving a third data from a third party into a second jitter buffer, processing the third data from the third party, and sending a third output data from the second jitter buffer to the multiplexing device or the plurality of multiplexing devices, wherein the first data received from the first party is not received into the first or the second jitter buffer; and

determining whether to combine the second output data and the third output data into a first output data for the first party subsequent to the receiving the first data based on a connect message.

2. The method of claim 1 wherein the data from the first party, the second party and the third party comprises packetized voice data.

3. The method of claim 1 wherein the multiplexing device or the plurality of multiplexing devices comprises a voice mixing device or a plurality of voice mixing devices.

4. The method of claim 1 wherein the first party, second party, and the third party are communicating through a three-way phone call.

5. The method of claim 1 wherein the first party is communicating with the second party and the third party through a call-waiting feature.

6. An apparatus comprising:

multiplexing logic and circuitry for a multi-stream voice application;

a first jitter buffer logic and circuitry coupled with the multiplexing logic and circuitry for the multi-stream voice application, the first jitter buffer logic and circuitry to receive a second data from a destination subscriber, the first jitter buffer logic and circuitry sending a second output data to the multiplexing logic and circuitry based on the second data;

a second jitter buffer logic and circuitry coupled with the multiplexing logic and circuitry for the multi-stream voice application, the second jitter buffer logic and circuitry to receive a third data from an add-on subscriber, the second jitter buffer logic and circuitry sending a third output data to the multiplexing logic and circuitry based on the third data;

an input logic and circuitry coupled with the multiplexing logic and circuitry for the multi-stream voice application, the input logic and circuitry to receive a first data from an originating subscriber; and

an output logic and circuitry for the multi-stream voice application, the output logic and circuitry to receive a first output data from the multiplexing logic and circuitry, the output logic and circuitry to send the first output data to an output logic and circuitry associated with the originating subscriber, wherein the multiplexing logic and circuitry determining whether to combine the second output data and the third output data for the first output data subsequent to the receiving the first data based on a connect message.

7. The apparatus of claim 6 wherein the multi-stream voice application accepts packetized voice data.

8. The apparatus of claim 6 wherein the multi-stream voice application accepts packetized video data.

9. The apparatus of claim 6 wherein the multiplexing logic and circuitry mixes data from multiple streams.

10. A system comprising:

a processor;

computer readable media connected to the processor storing instructions for multi stream jitter buffers for packetized voice applications executed by the processor;

storage connected to the processor that stores a software code having a plurality of separately compliable routines, wherein the processor executes the instructions on the code to

receive a first data from a first party through an input module directly into a multiplexing module or a plurality of multiplexing modules;

receive a second data from a second party into a first jitter buffer, processing the second data from the second party, and sending a second output data from the first jitter buffer to the multiplexing module or the plurality of multiplexing modules;

receive a third data from a third party into a second jitter buffer, processing the third data from the third party, and sending a third output data from the second jitter buffer to the multiplexing module or the plurality of multiplexing modules, wherein the first data received from the first party is not received into the first or the second jitter buffer; and

determine whether to combine the second output data and the third output data into a first output data subsequent to the receiving the first data based on a connect message.

11. The system of claim 10 wherein the data received from the first party, the second party and the third party comprises packetized voice data.

12. The system of claim 10 wherein the multiplexing device or the plurality of multiplexing devices comprises a voice mixing device or a plurality of voice mixing devices.

13. The system of claim 10 wherein the first party, second party, and the third party are communicating through a three-way phone call.

14. The system of claim 10 wherein the first party is communicating with the second party and the third party through a call-waiting feature.

15. A computer readable storage medium containing executable computer program instructions which when executed cause a method for accessing data in a memory to be performed, said method comprising:

receiving a first data from a first party through an input module directly into a multiplexing device or a plurality of multiplexing devices;

receiving a second data from a second party into a first jitter buffer, processing the data from the second party, and sending a second output data from the first jitter buffer to the multiplexing device or the plurality of multiplexing devices;

receiving a third data from a third party into a second jitter buffer, processing the third data from the third party, and sending a third output data from the second jitter buffer to the multiplexing device or the plurality of multiplexing devices, wherein the first data received from the first party is not received into the first or the second jitter buffer; and

determining whether to combine the second output data and the third output data into a first output data subsequent to the receiving the first data based on a connect message.

16. A computer readable medium as in claim 15 wherein the data from the first party, the second party and the third party comprises packetized voice data.

17. A computer readable medium as in claim 15 wherein the multiplexing device or the plurality of multiplexing devices comprises a voice mixing device or a plurality of voice mixing devices.

18. A computer readable medium as in claim 15 wherein the first party, second party, and the third party are communicating through a three-way phone call.

19. A computer readable medium as in claim 15 wherein the first party is communicating with the second party and the third party through a call-waiting feature.

20. A system, comprising:

means for receiving a first data from a first party through an input module directly into a multiplexing device or a plurality of multiplexing devices;

means for receiving a second data from a second party into a first jitter buffer, processing the second data from the second party, and sending a second output data from the first jitter buffer to the multiplexing device or the plurality of multiplexing devices;

means for receiving a third data from a third party into a second jitter buffer, processing the third data from the third party, and sending a third output data from the second jitter buffer to the multiplexing device or the plurality of multiplexing devices, wherein the first data received from the first party is not received into the first or the second jitter buffer; and

means for determining whether to combine the second output data and the third output data into a first output data subsequent to the receiving the first data based on a connect message.

21. The system of claim 20 wherein the data from the first party, the second party and the third party comprises packetized voice data.

22. The system of claim 20 wherein the multiplexing device or the plurality of multiplexing devices comprises a voice mixing device or a plurality of voice mixing devices.

23. The system of claim 20 wherein the first party, second party, and the third party are communicating through a three-way phone call.

24. The system of claim 20 wherein the first party is communicating with the second party and the third party through a call-waiting feature.

25. The method of claim 1 , further comprising:

sending the first output data from the multiplexing device or the plurality of multiplexing devices to a first output device;

sending the second output data from the multiplexing device or the plurality of multiplexing devices to a second output device; and

sending the third output data from the multiplexing device or the plurality of multiplexing devices to a third output device.

26. The system of claim 10 , wherein the process further causes the process to

send the first output data from the multiplexing device or the plurality of multiplexing modules to a first output module;

send the second output data from the multiplexing device or the plurality of multiplexing modules to a second output module; and

send the third output data from the multiplexing device or the plurality of multiplexing modules to a third output module.

27. The computer readable medium as in claim 15 , wherein the method further comprises:

sending the first output data from the multiplexing device or the plurality of multiplexing devices to a first output device;

sending the second output data from the multiplexing device or the plurality of multiplexing devices to a second output device; and

sending the third output data from the multiplexing device or the plurality of multiplexing devices to a third output device.

28. The system of claim 20 , further comprising:

means for sending the first output data from the multiplexing device or the plurality of multiplexing devices to a first output device;

means for sending the second output data from the multiplexing device or the plurality of multiplexing devices to a second output device; and

means for sending the third output data from the multiplexing device or the plurality of multiplexing devices to a third output device.

29. The apparatus of claim 6 wherein the originating subscriber, destination subscriber, and an add-on subscriber are communicating through a three-way phone call.

30. The apparatus of claim 6 wherein the originating subscriber is communicating with the destination subscriber, and the add-on subscriber through a call-waiting feature.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded May 11, 2022
From: BANK OF AMERICA, N.A.
To: CALIX, INC.
Reel/Frame 059929/0453 →
RELEASE OF SECURITY INTEREST Recorded Apr 18, 2022
From: BANK OF AMERICA, N.A.
To: CALIX, INC.
Reel/Frame 059802/0579 →
SECURITY INTEREST Recorded Jan 28, 2020
From: CALIX, INC.
To: BANK OF AMERICA, N.A., AS AGENT
Reel/Frame 051719/0348 →
RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Jan 27, 2020
From: SILICON VALLEY BANK
To: CALIX, INC.
Reel/Frame 051714/0883 →
SECURITY INTEREST Recorded Aug 9, 2017
From: CALIX, INC.
To: SILICON VALLEY BANK
Reel/Frame 043495/0424 →
RELEASE OF SECURITY INTEREST Recorded Aug 9, 2017
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT FOR LENDERS
To: CALIX, INC.
Reel/Frame 043494/0549 →
SECURITY AGREEMENT Recorded Jul 29, 2013
From: CALIX, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 030899/0597 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2012
From: OCCAM NETWORKS, LLC
To: CALIX, INC. (A CORPORATION OF DELAWARE)
Reel/Frame 028441/0515 →
CHANGE OF NAME Recorded Jun 22, 2012
From: OCEAN SUB II, LLC (A DELAWARE LIMITED LIABILITY COMPANY)
To: OCCAM NETWORKS, LLC (A DELAWARE LIMITED LIABILITY COMPANY)
Reel/Frame 028432/0694 →
MERGER Recorded Jun 21, 2012
From: OCCAM NETWORKS, INC. (A DELAWARE CORPORATION)
To: OCEAN SUB II, LLC (A DELAWARE LIMITED LIABILITY COMPANY)
Reel/Frame 028432/0394 →