The Webcam SDK contains a high performance VoIP and Video conferencing client capable of delivering crystal clear sound and video capturing even for both low and high-bandwidth users. Webcam users are arranged in a tree-structure where each node is a room/channel where users can talk, see Users, send instant messages and share files. Examples of such applications could be Internet phones, conferencing tools, surveillance systems, e-Learning systems, or any other type of application where audio and video transmission between networked clients is an essential part of the application. The Webcam SDK consists of both a client and a server. The Webcam server is a standalone application which provides user authentication and keeps track of connected clients. It can operate in both LAN or WAN (Internet) environments. Each server instance is capable of serving 1000 simultaneous clients. A Webcam client can connect to the server and can from there interact with other clients. The client is wrapped in a DLL file (.so on Linux) which enables developers to add the following features to their application: * Multiple active real time audio and video streams * Instant text messaging * File sharing * Tree structure for grouping clients * Audio capture supported by DirectSound and WinMM * Video capture supported by DirectShow * CELT and Speex audio codecs for VoIP supporting both high and low bandwidth usage * Automatic Gain Control (AGC) and 3D-sound positioning * Audio transmission using push-to-talk (PTT) and voice activation (VAD) * Store all audio transmissions to either .wav or .mp3 format * Video codec supporting variable (VBR) and constant (CBR) bitrate as well as configurable quality * User account system for server authentication * Secure data transmission using TLS and BlowFish encryption (Secure Edition only)and much more