Video negotiation is a process whereby an endpoint that proposes to send video can determine the video capabilities of the receiving endpoint before it sends the video stream. The purpose of video negotiation is to make sure that the sending endpoint can produce and send a given resolution and that the receiving endpoint can receive and render that same resolution. The negotiation follows an offer/answer model until common agreement is found. The highest-quality video capability held in common is used in peer-to-peer calls, unless the user at the receiving end prefers a lower resolution or frame rate.
An endpoint’s video capability is based on several qualities, including CPU, available memory, attached devices, and network resources. For example, a user may have a camera that can send VGA video at 15 frames per second (fps) or Common Intermediate Format (CIF) video at 30 fps, but that cannot handle high-definition (HD) video. These different capabilities are assessed as part of video negotiation.
Video negotiation always resolves to CIF at 15 fps for multiparty video conferencing.
The video preference of the user at the receiving endpoint also helps to determine the final negotiated format. For example, a user may want to select a smaller video window even though the negotiated video settings allow a higher resolution. In such cases, the receiver instructs the sender to adopt a lower video format. The ability to specify video preferences in this way prevents inefficient use of bandwidth. Office Communicator offers three window sizes and therefore three preference settings: small, large, and full screen.