Synchronization and mixing of audio and video streams in network-based video conferencing call systems
First Claim
Patent Images
1. A computer-implemented method for mixing audio streams from N senders, N at least two, the method comprising:
- receiving the N audio streams over a network, the audio streams divided into audio chunks;
buffering the audio chunks;
opening a mix;
cycling through the N senders, for each sender;
if the sender is not yet in the mix, and if a missing audio chunk is available from the buffer, adding the sender'"'"'s audio chunk to the mix;
if the sender is not yet in the mix and if the audio chunk is not available from the buffer, cycling through the remaining senders and rechecking whether the missing chunk is available from the buffer;
on each cycle, if the sender'"'"'s audio chunk is already in the mix and the sender has at least one additional audio chunk buffered, incrementing a wait counter for that sender;
wherein a predetermined early close condition is based on a value of the wait counter(s); and
closing the mix if either audio chunks from all N senders are in the mix or if the predetermined early close condition is met.
2 Assignments
0 Petitions
Accused Products
Abstract
In one aspect, audio streams are added to a mix until the mix is either complete (i.e., all audio streams have been added) or the mix is closed early (i.e., before the mix is complete). In another aspect, audio and video streams are synchronized by playing back the audio stream and then synchronizing display of the video frames to the playback of the audio stream.
-
Citations
13 Claims
-
1. A computer-implemented method for mixing audio streams from N senders, N at least two, the method comprising:
-
receiving the N audio streams over a network, the audio streams divided into audio chunks; buffering the audio chunks; opening a mix; cycling through the N senders, for each sender; if the sender is not yet in the mix, and if a missing audio chunk is available from the buffer, adding the sender'"'"'s audio chunk to the mix; if the sender is not yet in the mix and if the audio chunk is not available from the buffer, cycling through the remaining senders and rechecking whether the missing chunk is available from the buffer; on each cycle, if the sender'"'"'s audio chunk is already in the mix and the sender has at least one additional audio chunk buffered, incrementing a wait counter for that sender; wherein a predetermined early close condition is based on a value of the wait counter(s); and closing the mix if either audio chunks from all N senders are in the mix or if the predetermined early close condition is met. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-implemented method for mixing audio streams from N senders, N at least two, the method comprising:
-
opening a mix; receiving the N audio streams over a network, the audio streams divided into audio chunks; if an audio chunk for the sender is not yet in the mix and has not yet been received, cycling through the remaining senders, and rechecking whether the chunk from the missing sender has been received; as each sender'"'"'s audio chunk is received; if the sender is not yet in the mix and the received audio chunk is the correct audio chunk for the mix, adding the sender'"'"'s audio chunk to the mix; otherwise, buffering the sender'"'"'s audio chunk for a future mix and incrementing a wait counter for the sender, wherein a predetermined early close condition is based on a value of the wait counter(s); and closing the mix if either audio chunks from all N senders are in the mix or if the predetermined early close condition is met. - View Dependent Claims (10, 11, 12, 13)
-
Specification