Video decoder which processes multiple video streams
First Claim
1. A method, comprising:
- receiving, by a decoder of a first video conferencing endpoint, a video stream comprising time multiplexed video packets from two or more video conferencing endpoints of a plurality of video conferencing endpoints participating in a video conference with the first video conferencing endpoint;
sorting, by the decoder, the video packets into buffers according to the video packets respective video source conferencing endpoint;
spatially multiplexing, by the decoder, two or more video images into a first composite video frame, wherein the two or more video images are formed using the video packets from the respective buffers;
passing the first composite video frame to a virtual decoder of the first video conferencing endpoint;
finding, by the virtual decoder, boundaries of the two or more video images within the first composite video frame;
separating, by the virtual decoder, the two or more video images into separate video images;
compositing, by the first videoconferencing endpoint, a second composite video frame comprising a plurality of video images, wherein the plurality of video images includes at least one of the separate video images;
transmitting to a second video conferencing endpoint of the plurality of video conferencing endpoints the second composite video frame; and
transmitting to the second video conferencing endpoint information regarding which video images of the plurality of video images of the second composite video frame are to be included in a third composite video frame, wherein the third composite video frame is to be generated by the second video conferencing endpoint.
4 Assignments
0 Petitions
Accused Products
Abstract
In some embodiments, a spatially multiplexed output decoder may spatially multiplex video packets received in a time multiplexed video stream. A video stream with video packets from two or more sources may be received along with metadata. In some embodiments, a decoder may organize the video packets into respective buffers (e.g., each buffer including video packets for a respective video image). The spatially multiplexed output decoder may spatially multiplex the video images (which are made up of data from the respective video packets) into a video frame to be outputted (e.g., to a separate buffer). The video images in the video frame may then be demultiplexed in other parts of the system (e.g., in a virtual decoder) using information provided about the video frame (e.g., in metadata formed with the video frame).
123 Citations
22 Claims
-
1. A method, comprising:
-
receiving, by a decoder of a first video conferencing endpoint, a video stream comprising time multiplexed video packets from two or more video conferencing endpoints of a plurality of video conferencing endpoints participating in a video conference with the first video conferencing endpoint; sorting, by the decoder, the video packets into buffers according to the video packets respective video source conferencing endpoint; spatially multiplexing, by the decoder, two or more video images into a first composite video frame, wherein the two or more video images are formed using the video packets from the respective buffers; passing the first composite video frame to a virtual decoder of the first video conferencing endpoint; finding, by the virtual decoder, boundaries of the two or more video images within the first composite video frame; separating, by the virtual decoder, the two or more video images into separate video images; compositing, by the first videoconferencing endpoint, a second composite video frame comprising a plurality of video images, wherein the plurality of video images includes at least one of the separate video images; transmitting to a second video conferencing endpoint of the plurality of video conferencing endpoints the second composite video frame; and transmitting to the second video conferencing endpoint information regarding which video images of the plurality of video images of the second composite video frame are to be included in a third composite video frame, wherein the third composite video frame is to be generated by the second video conferencing endpoint. - View Dependent Claims (2, 3, 4, 6, 7, 8, 9, 10)
-
-
5. A method, comprising:
-
receiving, by a decoder of a first video conferencing endpoint, a video stream comprising time multiplexed video packets from two or more video conferencing endpoints of a plurality of video conferencing endpoints participating in a video conference with the first video conferencing endpoint; receiving, by the decoder, metadata with the video stream;
wherein the metadata includes identification information for the video packets in the video stream;sorting, by the decoder, the video packets into buffers according to the video packets respective video conferencing endpoint, wherein the metadata is used to sort the video packets into the respective buffers; spatially multiplexing, by the decoder, video images into a first composite video frame, wherein the video images are formed using the video packets from the respective buffers; passing the first composite video frame to a virtual decoder of the first video conferencing endpoint; finding, by the virtual decoder, boundaries of the video images within the first composite video frame; separating, by the virtual decoder, the video images of the first composite video frame into separate video images; receiving from a second video conferencing endpoint of the plurality of video conferencing endpoints a set of instructions specifying which of the separate video images are to be included in a second composite video frame; compositing, by the first video conferencing endpoint, the second composite video frame comprising the specified separate video images; and transmitting the second composite video frame to a third video conferencing endpoint of the plurality of video conferencing endpoints. - View Dependent Claims (11, 12, 13, 14, 15, 21)
-
-
16. A video conferencing endpoint operable to perform multi-way video conferencing, the video conferencing endpoint comprising:
-
a communication device configured to; receive a video stream comprising time multiplexed video packets from two or more source video conferencing endpoints of a plurality of remote video conferencing endpoints participating in a video conference with the video conferencing endpoint; transmit to a first video conferencing endpoint of the plurality of remote video conferencing endpoints a second composite video frame; and transmit to each video conferencing endpoint of the plurality of remote video conferencing endpoints a respective set of instructions; a decoder coupled to the communication device, and configured to; sort the video packets into buffers according to the video packets respective video conferencing endpoint; and spatially multiplex two or more video images into a first composite video frame, wherein the two or more video images are formed using the video packets from the respective buffers; and a virtual decoder coupled to the decoder, and configured to; receive the first composite video frame from the decoder; and separate the two or more video images into separate video images; a compositor coupled to the virtual decoder and the communication device, and configured to; composite the second composite video frame comprising a plurality of video images, wherein the plurality of video images includes at least one of the separate video images; and a processor coupled to the communication device, and configured to; determine the respective sets of instructions, wherein, for each respective endpoint of the plurality of remote video conferencing endpoints, the respective set of instructions specifies at least one endpoint of the plurality of remote video conferencing endpoints, wherein frames originated by the at least one endpoint are to be included in composite frames transmitted by the respective endpoint. - View Dependent Claims (17, 18, 19, 20, 22)
-
Specification