Summary
The real-Time communications (RTC) client of Microsoft Windows is comprised of a series of core components that provide rich communication characteristics. These features are presented to users through Windows Messager and other applications that use this application programming interface (APIS). This article outlines media-related features and the enhancements that these components provide. Application developers may want to integrate the RTC feature into their own programs to improve the user experience. Developers can also use the RTC feature to build their own communities.
Introduction
Microsoft Windows XP combines and enhances rich communication features to provide the basis for the RTC experience. These features are used by Microsoft Windows Messager to provide real-time voice and video, instant messaging, and other collaborative capabilities for communication between users. In addition, the application programming interfaces (APIs) provided by them make these rich communication features available to any application.
This article discusses in detail the media enhancements that are added to the RTC, which allow for a more enjoyable experience for both end users and developers. When the application is built on the RTC client API, the end user gets a rich audio and video experience, and the developer can make the program a series of free improvements. Applications built with these APIs also have access to the instant messaging and presence capabilities provided by the RTC. Information about these APIs is available in the Windows Platform SDK.
The following features and improvements are discussed in this article:
Availability of audio and video codecs
echo Cancellation (AEC)
Redundant audio coding
Dynamic jitter Buffering and tuning
Automatic gain Control (AGC)
Bandwidth estimation
Quality control algorithm
Availability of audio and video codecs
The Windows RTC client supports the audio codec (codec) listed in the following table, and lists the associated sampling rate and bit rate. Choosing which codec depends on both the capabilities and bandwidth of the communication. For example, if one of the parties uses a 56KBps dial-up connection, then g.711 will be disabled because it exceeds the available bandwidth limit. For example, if one party supports siren and the other does not, the preferred codec siren will be disabled. If both sides support siren and the bandwidth is sufficient, then siren is preferred in all codecs.
Codec |
Sample Rate |
Bit rate |
RTP Packet Length |
G.711 |
Kilohertz (KHz) |
Kilobits per second (Kbps) |
Milliseconds (msec) |
g.722.1 |
Khz |
Kbps |
msec |
g.723 |
8 Khz |
6.4 Kbps |
msec, msec or msec |
Gsm |
8 Khz |
Kbps |
msec |
DVI4 |
8 Khz |
Kbps |
msec |
Siren |
Khz |
Kbps |
msec or msec |
H.263 is a video-supported codec that has a bitrate ranging from 6KBps to 125KBps. For compatibility reasons, H.261 is also a supported codec. This version only supports OCIF (176x144). The plug-in for a third-party codec is not supported.