Multiple Video Stream Capability Negotiation
First Claim
1. A method to be executed at least in part in a computing device for facilitating a video conference employing video capability negotiation, the method comprising:
- receiving a receiver'"'"'s video receive capabilities comprising a first list of video stream combinations supported by the receiver, each video stream combination including at least one video stream type defined by a resolution, a frame rate, and a bit rate;
determining a sender'"'"'s video send capabilities comprising a second list of video stream combinations supported by the sender, each video stream combination including at least one video stream type;
determining a set of negotiated capabilities based on comparing the first list and the second list of video stream combinations and if a video stream combination exists on both lists selecting that video stream combination;
providing the set of negotiated capabilities to the receiver; and
facilitating the video conference by using a selected video stream combination by the receiver.
2 Assignments
0 Petitions
Accused Products
Abstract
Video send and receive capabilities of participants are determined by the respective machines determining available combinations, as well as preferences for the receivers. Receiver capabilities are forwarded to the source for computation of negotiated video capabilities through a logic intersection of the determined capabilities based on desired number of streams and resolutions. If a resolution of a send capability exists within the receive capability, the highest frame and/or bit rate may be selected for transmission.
-
Citations
20 Claims
-
1. A method to be executed at least in part in a computing device for facilitating a video conference employing video capability negotiation, the method comprising:
-
receiving a receiver'"'"'s video receive capabilities comprising a first list of video stream combinations supported by the receiver, each video stream combination including at least one video stream type defined by a resolution, a frame rate, and a bit rate; determining a sender'"'"'s video send capabilities comprising a second list of video stream combinations supported by the sender, each video stream combination including at least one video stream type; determining a set of negotiated capabilities based on comparing the first list and the second list of video stream combinations and if a video stream combination exists on both lists selecting that video stream combination; providing the set of negotiated capabilities to the receiver; and facilitating the video conference by using a selected video stream combination by the receiver. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A video conference client device for providing video source to a video conference employing video capabilities negotiation, the device comprising:
-
a video capture device; a processor coupled to the video capture device, the processor configured to; maintain a set of video send capabilities comprising video stream combinations supported by the device based on its characteristics, attributes, and applications executed on the device, wherein each video stream combination includes at least one video stream type defined by a resolution, a frame rate, and a bit rate; receive a set of receive video capabilities from each receiver comprising video stream combinations supported by each receiver and a set of video preferences from each receiver; determine a set of negotiated video capabilities based on comparing the set of video send capabilities to the received video receive capabilities and selecting video stream combinations that exist on both sets with a lower one of the bit rate and the frame rate for each receiver; if a receiver'"'"'s video preferences are equal or less to the determined negotiated capabilities for that receiver, provide video streams defined by the video preferences to that receiver;
elseprovide the video stream combination defined by the negotiated video capability to each corresponding receiver. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A computer-readable storage medium with instructions stored thereon for facilitating a video conference with video capability negotiation, the instructions comprising:
-
maintaining a table of video send capabilities comprising video stream combinations supported by a current source client based on its characteristics, attributes, and applications executed on the source client, wherein each video stream combination includes at least one video stream type defined by a resolution, a frame rate, and a bit rate; receiving a set of receive video capabilities from each receiver comprising video stream combinations supported by each receiver when joining the video conference; comparing the received sets of receive video capabilities with the send video capabilities and determining a set of negotiated video capabilities for each receiver by selecting a video stream combination such that XS=XR and YS=YR and FPSR>
=FPSS and BRR>
=BRS, where X and Y denote x and y axes pixel numbers of a display for defining the resolution, FPS denotes the frame rate, BR denotes the bit rate, and the subscripts S and R denote “
send” and
“
receive”
, respectively; andfacilitating the video conference by enabling each receiver to select at least one video stream from the negotiated video stream combination. - View Dependent Claims (20)
-
Specification