Synchronization of audio and video signals in a live multicast in a LAN
First Claim
Patent Images
1. A method for synchronizing audio and video data streams of a live multicast transmitted from a source station to a plurality of receiving stations in a LAN, said method comprising the steps of:
- 1) receiving in a video FIFO queue at each receiving station a sequence of video messages, said video messages being of variable size and each video message containing coded data for one video frame, each received video frame having a time stamp associated therewith, said time stamp being embedded in said video data stream,2) receiving in an audio FIFO queue at each receiving station a sequence of fixed sized audio messages, each audio message containing one or more chunks, each chunk containing audio data corresponding to one video frame, each audio message including a time stamp embedded in said audio data stream which is used to determine a time stamp for each said chunk in said audio message, wherein said time stamp in said audio message is the same as the time stamp of one of said video frames of said fixed number of video frames presented simultaneously as audio reproduced from said audio message.3) transferring said audio chunks from said audio queue to an audio decoder,4) transferring video data for each frame from said video queue to a video decoder,5) comparing said time stamp for said next chunk with said time stamp associated with a next video frame in said video queue to be decoded,6) if said comparison indicates that said next chunk is too early for said next video frame, delaying said next video frame, and7) if said comparison indicates that said next chunk is too late for said next video frame, discarding said next video frame.
3 Assignments
0 Petitions
Accused Products
Abstract
In a live multicast in a LAN environment, audio and video streams are transmitted from a source station to a plurality of receiving stations. A technique is disclosed for synchronizing the audio decoder clock at each receiving station with the source station. A technique is also disclosed for synchronizing the audio and video data streams received at each receiving station.
-
Citations
4 Claims
-
1. A method for synchronizing audio and video data streams of a live multicast transmitted from a source station to a plurality of receiving stations in a LAN, said method comprising the steps of:
-
1) receiving in a video FIFO queue at each receiving station a sequence of video messages, said video messages being of variable size and each video message containing coded data for one video frame, each received video frame having a time stamp associated therewith, said time stamp being embedded in said video data stream, 2) receiving in an audio FIFO queue at each receiving station a sequence of fixed sized audio messages, each audio message containing one or more chunks, each chunk containing audio data corresponding to one video frame, each audio message including a time stamp embedded in said audio data stream which is used to determine a time stamp for each said chunk in said audio message, wherein said time stamp in said audio message is the same as the time stamp of one of said video frames of said fixed number of video frames presented simultaneously as audio reproduced from said audio message. 3) transferring said audio chunks from said audio queue to an audio decoder, 4) transferring video data for each frame from said video queue to a video decoder, 5) comparing said time stamp for said next chunk with said time stamp associated with a next video frame in said video queue to be decoded, 6) if said comparison indicates that said next chunk is too early for said next video frame, delaying said next video frame, and 7) if said comparison indicates that said next chunk is too late for said next video frame, discarding said next video frame. - View Dependent Claims (2)
-
-
3. A method for transmitting audio and video data streams of a live multicast from a source station to a plurality of receiving stations in a LAN, said method comprising the steps of:
-
1) generating at said source station a sequence of video messages, each video message containing data of one compressed video frame, said video messages being of variable size and each video message having a time stamp, said time stamp being embedded in said video data stream, 2) generating at said source station a sequence of audio messages, each audio message being of fixed size and containing audio data corresponding to a fixed number of video frames, each audio message having a time stamp embedded in said audio data stream which is the same as the time stamp of one of said video frames to which the audio message corresponds, and 3) transmitting said audio and video messages via said LAN to said receiving stations.
-
-
4. A method for receiving audio and video data streams of a live multicast in a receiving station in a LAN comprising the steps of:
-
1) receiving in an audio queue at said receiving station a sequence of audio messages, each audio message containing one or more chunks, each chunk containing audio data corresponding to one video frame, each audio message including a time stamp embedded in said audio data stream which is used to determine a time stamp for each said chunk in said audio message, 2) synchronizing an audio decode clock at said receiving station with a source station of said multicast by detecting an occupancy of said audio queue which is above an upper threshold or below a lower threshold, 3) receiving in a video queue at the receiving station a sequence of video messages, said video messages being of variable size and each video message containing coded data for one video frame, each received video frame having a time stamp, said time stamp being embedded in said video data stream, 4) transferring said audio chunks from said audio queue to an audio decoder, 5) transferring video data for each frame from said video queue to a video decoder, 6) comparing said time stamp for said next chunk with said time stamp associated with a next video frame in said video queue to be decoded, 7) if said comparison indicates that said next chunk is too early for said next video frame, delaying said next video frame, and 8) if said comparison indicates that said next chunk is too late for said next video frame, discarding said next video frame.
-
Specification