Systems for Live Webcasting

A minimal Webcasting system includes an encoder and a server. More elaborate systems may include multiple encoders and/or multiple servers, with some being used in replication mode.

The following setups for live Webcasting use today's common unicast (non-multicast) technologies.

Stored files. A standard HTTP Web server may generally be used to deliver stored audio files and simultaneously serve normal text and graphics Web pages. The files may then be made available for download or streamed to listeners in real time. Audio files may be created using a software encoder. This simple, low-cost method is widely used for distribution of encoded audio files, such as those popular in the growing .mp3 (MPEG layer 3) audio community.

Live encoders. This component accepts the audio signal and generates a compressed bitstream for delivery to the server. Encoders may be either dedicated hardware or software running on a general-purpose CPU with an installed audio card. Software encoders usually require near the full capacity of a fast PC because of the intensive processing required, so it is usually not possible to combine the server and the encoder on one machine.

Live servers. These are designed for live-stream transmission. A standard Web server generally requires a significant memory block to be dedicated to each connection and is inefficient in CPU usage. It's possible to serve many simultaneous listeners using specialized server software optimized for the live-stream application.

Replication servers. These servers allow you to replicate more streams than possible with the main server alone. They expand capacity and can provide geographic dispersion of stream sources. They accept a single-stream output from an upstream server as input and provide additional fan-out. In a unicast world, these are a requirement to serve large numbers of listeners. IP Multicast would replace these with replication within Internet router nodes.

There are a number of such systems on the market. As part of its effort to disseminate NT, Microsoft has included Microsoft Netshow in its NT server package. The 2.0 version of this platform represents a significant leap forward from the earlier 1.0 release. The main features are extensibility and support for IP Multicast protocols. A wide variety of audio and video codecs are possible, either in software ACM/VCM (Audio Compression Manager/Video Compression Manager) modules, or via external equipment. On the client side, the standard Microsoft player may be used, or custom players which take advantage of the provided ActiveX control (on the Windows platform, of course) may be created.

Commercial Webcasting systems available for servers other than NT include Progressive Networks' RealAudio and RealVideo, VDO's VDOLive, Xing's StreamWorks, and Audioactive's Live Audio.

Live Audio comes from broadcast-gear manufacturer Telos Systems. The company is widely known in the radio broadcast industry, and this background shows in its Internet audio product. The most evident difference from the systems developed by software-oriented companies is in the use of a dedicated hardware encoder. While most systems would use a dedicated PC running encoder software, this is a professional-grade MPEG-2 Layer 3 encoder with 18-bit analog-to-digital conversion and a multiple-DSP compression engine. Audioactive uses two servers, one operating in replication mode. The machine hosting the streaming replicator also serves regular Web documents.

One encoder and one server can constitute a complete system, but an unlimited number of replication servers can be added to serve a greater number of listeners or to locate the server closer to the listeners or to available bandwidth.

Figure 1 shows a system that enables proximity to high-capacity Internet bandwidth. Normally, this would be at an ISP's site, and the source of audio and encoder would reside elsewhere. This arrangement avoids having to extend the "big pipe" Internet connection, which saves money.

Having multiple encoders permits different programs or bit rates to be transmitted simultaneously.