Webcasting method and system for time-based synchronization of multiple, independent media streams
First Claim
1. A synchronization system for time-based synchronization of streaming media transmitted over a communications network, comprising:
- an input interface adapted for linking to the communications network to receive a first and a second media stream, wherein the first and second media streams comprise a plurality of digital data packets being transmitted over the communications network from a first and a second media source, respectively, and wherein the first and the second media streams each include a streaming video portion;
a first data buffer for storing the data packets of the first media stream;
a second data buffer for storing the data packets of the second media stream; and
a controller communicatively linked to the first and the second data buffers for selectively retrieving the data packets of the first and second media streams to form a first and a second time-adjusted stream, wherein the controller determines a variable transmission delay for the first and the second media streams from the first and second media sources to the input interface and performs the selective retrieving based on the determined variable transmission delays;
wherein the controller is further configured for mixing the first and second time-adjusted streams into a composite media stream wherein the first and second time-adjusted streams are synchronized based on time.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for time-based synchronization of multiple media streams transmitted over a communications network, such as the Internet, by multiple, independent streaming media sources. First and second media streams of data packets are received from first and second media sources. Timing data is parsed from the two media streams, and first and second transmission delay values are determined by comparing the timing data with a reference time. A synchronized media stream is created by combining the first and second media streams into a time-synchronized media stream with adjustments to correct for calculated transmission delay values. Feedback signals are sent to the media sources to control transmission variables such as stream length, transmission rate, and transmittal time to manage the variable delay at the media source. The first and second media streams are decoded into intermediate media streams compatibly formatted to allow mixing of the streams and data packets.
-
Citations
23 Claims
-
1. A synchronization system for time-based synchronization of streaming media transmitted over a communications network, comprising:
-
an input interface adapted for linking to the communications network to receive a first and a second media stream, wherein the first and second media streams comprise a plurality of digital data packets being transmitted over the communications network from a first and a second media source, respectively, and wherein the first and the second media streams each include a streaming video portion; a first data buffer for storing the data packets of the first media stream; a second data buffer for storing the data packets of the second media stream; and a controller communicatively linked to the first and the second data buffers for selectively retrieving the data packets of the first and second media streams to form a first and a second time-adjusted stream, wherein the controller determines a variable transmission delay for the first and the second media streams from the first and second media sources to the input interface and performs the selective retrieving based on the determined variable transmission delays; wherein the controller is further configured for mixing the first and second time-adjusted streams into a composite media stream wherein the first and second time-adjusted streams are synchronized based on time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. An apparatus for synchronizing media streams transmitted over a communication network, comprising:
-
an input interface linked to the communications network and configured for receiving a first and a second media stream transmitted by a first and a second media source, respectively, wherein the first media stream comprises a plurality of data packets of a video stream encoded to a first compression standard and the second media stream comprises a plurality of data packets of a video stream encoded to a second compression standard differing from the first compression standard; a decoder for decoding the first and the second media streams into a first and a second intermediate media stream, respectively, wherein the first and second intermediate streams are compatibly formatted; a streaming media processor for mixing the first and the second intermediate-format media streams into a composite media stream encoded according to an output compression standard; and a controller in communication with the input interface and the streaming media processor adapted for determining a variable transmission delay for the first and the second media streams based on a transmission time for a data packet of the first media stream and a time of receipt at the input interface of the data packet and on a transmission time for a data packet of the second media stream and a time of receipt at the input interface of the data packet; wherein the controller is further configuring for selectively retrieving the first intermediate-format media stream and the second intermediate-format media stream based on the variable transmission delay of the first and the second media stream to create a first and a second time-adjusted stream; wherein the processor combines the first and the second time-adjusted stream to form the composite media stream with the first media stream data packets and the second stream data packets being positioned for concurrent delivery. - View Dependent Claims (15)
-
-
16. A method for time-based synchronization of two or more media streams transmitted over a data communications network, comprising:
-
receiving a first media stream wherein the first media stream comprising a plurality of data packets from one or more video files transmitted over the communications network by a first media source; receiving a second media stream wherein the second media stream comprising a plurality of data packets from one or more video files transmitted over the communications network by a second media source; retrieving timing data from the first and second media stream; comparing the timing data with a reference time to determine a first and a second transmission delay value; adjusting the first and the second media streams to correct for the first and the second transmission delay values, wherein the adjusting includes matching the data packets of the first and the second media streams based on transmittal times from the first and the second media sources; storing the data packets of the first media stream in a first data buffer and the data packets of the second media stream in a second data buffer and wherein the adjusting includes selectively retrieving the data packets of the first media stream from the first data buffer to correct for the first transmission delay value and selectively retrieving the data packets of the second media stream from the second butter to correct for the second transmission delay value creating a synchronized media stream by mixing the first and the second media streams, wherein the first and the second media streams are presented in the synchronized media stream concurrently. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23)
-
Specification