MPEG dual-channel decoder data and control protocols for real-time video streaming
First Claim
1. A method of producing a real-time video stream from stored MPEG encoded video clips, the MPEG encoded video clips being contained in data storage of a video server, the method comprising:
- reading segments of the MPEG encoded video clips from the data storage, the segments of the MPEG encoded video clips being decoded by respective first and second decoders in a decoder pair, the first decoder decoding at least a portion of a first MPEG encoded video clip and the second decoder decoding at least a portion of a second MPEG encoded video clip, the real-time video stream being obtained by operating a video switch to switch between a video output of the first decoder and a video output of the second decoder to select a specified In-point frame in the second MPEG encoded video clip that is selectable as any MPEG frame type at any location in an MPEG group of pictures (GOP) structure.
9 Assignments
0 Petitions
Accused Products
Abstract
A system for producing multiple concurrent real-time video streams from stored MPEG video clips includes a video server and at least one MPEG decoder array. The decoder array has multiple decoder pairs, each pair having a video switch for switching from one decoder in the pair to the other at a specified time. Switching may occur from a specified Out-point frame to a specified In-point frame, and the specified frames can be any frame type at any location in the group of pictures (GOP) structure. In a preferred construction, the video server has a controller server linked to a series of data mover computers, each controlling one or more respective decoder arrays. The data mover computers use a control protocol to control the decoder arrays, and each decoder uses a data protocol to request data from a respective data mover computer.
-
Citations
51 Claims
-
1. A method of producing a real-time video stream from stored MPEG encoded video clips, the MPEG encoded video clips being contained in data storage of a video server, the method comprising:
reading segments of the MPEG encoded video clips from the data storage, the segments of the MPEG encoded video clips being decoded by respective first and second decoders in a decoder pair, the first decoder decoding at least a portion of a first MPEG encoded video clip and the second decoder decoding at least a portion of a second MPEG encoded video clip, the real-time video stream being obtained by operating a video switch to switch between a video output of the first decoder and a video output of the second decoder to select a specified In-point frame in the second MPEG encoded video clip that is selectable as any MPEG frame type at any location in an MPEG group of pictures (GOP) structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
17. A method of producing a real-time video stream from stored MPEG-2 encoded video clips, the MPEG-2 encoded video clips being contained in data storage of a video server, the method comprising:
-
reading segments of the MPEG-2 encoded video clips from the data storage, the segments of the MPEG-2 encoded video clips being decoding by respective first and second decoders in a decoder pair, the first decoder decoding at least a portion of a first MPEG-2 encoded video clip and the second decoder decoding at least a portion of a second MPEG-2 encoded video clip, the real-time video stream being obtained by operating a video switch to switch between a video output of the first decoder and a video output of the second decoder at an occurrence of a specified time code to select a specified In-point frame in the second MPEG-2 encoded video clip that is selectable as any MPEG-2 frame type at any location in an MPEG-2 group of pictures (GOP) structure, which includes operating the decoders and the video switch in response to control commands from the video server, the control commands include streaming commands used to control the In-point of the second MPEG-2 encoded video clip included in the real-time video stream, and which includes the decoders requesting and obtaining MPEG-2 encoded data from the video server. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A system for producing multiple concurrent real-time video streams from stored MPEG encoded video clips, said system comprising:
-
a video server including data storage containing the MPEG encoded video clips; and
at least one MPEG decoder array linked to the video server for receiving control commands and data from the video server, the decoder array including multiple decoder pairs, each decoder pair having a video switch for switching from a video output of one decoder in said each decoder pair to a video output of the other decoder of said each decoder pair at an occurrence of a specified time code, the video server and the decoder array being programmed for switching each video switch for selecting a specified In-point frame that is selectable as any MPEG frame type at any location in an MPEG group of pictures (GOP) structure, wherein the video server and the decoder array are programmed for the video server to control the decoder array by sending control commands from the video server to the decoder array, and the video server and the decoder array are programmed for each decoder to request and obtain MPEG-encoded data from the video server. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33)
-
-
34. A system for producing multiple concurrent real-time video streams from MPEG encoded video clips, said system comprising:
-
a video server for storing the MPEG encoded video clips, and at least one MPEG decoder array coupled to the video server for producing the multiple concurrent real-time video streams from the MPEG encoded video clips stored in the video server;
wherein the video server includes cached disk storage for storing the MPEG encoded video clips, multiple data mover computers coupled to the cached disk storage for streaming segments of the MPEG encoded video clips from the cached disk storage to the MPEG decoder array, and a controller server computer coupled to the data mover computers for controlling the data mover computers; and
wherein the decoder array includes a respective decoder pair and a respective video switch for each of the multiple concurrent real-time video streams, the video switch selecting a video output from either one of the decoders in the decoder pair for production of said each of the multiple concurrent real-time video streams by switching from the video output from one of the decoders in the decoder pair to a specified In-point frame in the video output from the other of the decoders in the decoder pair, wherein the In-point frame is selectable as any frame and any frame type in a group of pictures (GOP) structure of the MPEG encoded video, and the decoders in the decoder pair are coupled to a respective one of the data mover computers for receiving segments of the MPEG encoded video clips for the production of said each of the multiple concurrent real-time video streams. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
-
-
45. A system for producing multiple concurrent real-time video streams from MPEG-2 encoded video clips, said system comprising:
-
a video server for storing the MPEG-2 encoded video clips, and at least one MPEG-2 decoder array coupled to the video server for producing the multiple concurrent real-time video streams from segments of the MPEG-2 encoded video clips stored in the video server;
an operator control station coupled to the video server for transmitting a play list and edit commands from an operator to the video server for controlling and editing content of the multiple concurrent real-time video streams; and
wherein the video server includes cached disk storage for storing the MPEG-2 encoded video clips, multiple data mover computers coupled to the cached disk storage for streaming the segments of the MPEG-2 encoded video clips from the cached disk storage to the MPEG-2 decoder array, and a controller server computer coupled to the data mover computers for controlling the data mover computers in response to the play list and edit commands from the operator control station; and
wherein the decoder array includes a respective decoder pair and a respective video switch for each of the multiple concurrent real-time video streams, the video switch selecting a video output from either one of the decoders in the decoder pair for production of said each of the multiple concurrent real-time video streams by switching from the video output from one of the decoders in the decoder pair to a specified In-point frame in the video output from the other of the decoders in the decoder pair, wherein the In-point frame is selectable as any frame and any frame type in a group of pictures (GOP) structure of the MPEG-2 encoded video, the decoders in the decoder pair being coupled to a respective one of the data mover computers for receiving segments of the MPEG-2 encoded video clips for the production of said each of the multiple concurrent real-time video streams, and the decoder array further includes a decoder controller coupled to the decoders and the video switches for controlling the decoders and the video switches, the decoder controller being coupled to at least one of the data mover computers for receiving control commands for the production of the multiple concurrent real-time video streams, wherein the control commands include configuration commands to allow the video server to determine a configuration of the decoder array and to set up configuration parameters, streaming commands to control the In-points of the MPEG-2 video clips included in each of the multiple concurrent real-time video streams, asynchronous status reports of significant events from the decoder array; and
edit commands to allow the decoders in the decoder array to be controlled for editing content of the multiple concurrent real-time video streams; and
wherein the respective data mover computer for each decoder pair is programmed to prepare for switching from the video output from one of the decoders in the decoder pair to a specified In-point frame in the video output from the other of the decoders in the decoder pair by initiating a stream of MPEG-2 encoded data from the respective data mover computer to the other of the decoders in the decoder pair in response to a request from the other of the decoders in the decoder pair; and
wherein the system further includes a house clock generator coupled to the video server and the MPEG-2 decoder array for switching to the specified In-point frames when the house clock generator provides respective specified time code values. - View Dependent Claims (46, 47, 48, 49, 50, 51)
-
Specification