previous next

Chapter 11: Broadcasting a Presentation

The Internet is swiftly becoming the next great broadcast medium. RealSystem G2 lets you broadcast live or prerecorded presentations over the Internet or an intranet. This chapter provides background on using broadcast applications and RealServer G2 to broadcast media. Refer to your tools and RealServer manuals for explicit instructions on setting up a broadcast.

Broadcasting vs. On-demand Delivery

When a streaming presentation is delivered on demand, it starts from its beginning when the viewer clicks the presentation link in a Web page. Each viewer can receive the presentation at any time and use RealPlayer's controls to fast-forward or rewind through the presentation.

In a streaming broadcast, however, the user hosting the broadcast starts the presentation at a certain time. Viewers who click the presentation link join the broadcast in progress. Before the broadcast begins and after it completes, the presentation URL is not valid. During the broadcast the RealPlayer fast-forward and rewind controls do not function.

To make an analogy, on-demand content is like a movie on videotape. The viewer can see it at any time, skip forward, rewind, and pause. A streaming broadcast, though, is like a movie shown on a television channel. As with a TV broadcast, there are two types of streaming media broadcasts:

Broadcasting Live or Prerecorded Content

Broadcasting Tools

To broadcast a presentation, you need the tools described in the following sections.

Source Capture Equipment

This equipment captures the broadcast content. It is typically a microphone or video camera connected to an audio or video capture card. For text it could be a live text feed coming in over a network.

Editing Equipment

When you broadcast prerecorded content, you first write the source to a digitized file. You can then use editing software to optimize the file for broadcast. Live content, however, goes directly from the capture equipment to the broadcast application.

Broadcast Application

The broadcast application takes the live source and encodes it in the appropriate streaming format, sending the output to RealServer. A RealVideo broadcast application, for example, encodes a camera's video output as RealVideo in real-time. A broadcast application typically runs on a separate machine that has a network connection to the RealServer machine. To broadcast prerecorded content, you typically do not need a broadcast application because RealServer can broadcast the clips itself.

RealNetworks encoding tools have live broadcast capability for audio and RGB or YUV video. They guide you through the broadcast process and let you connect to RealServer easily. RealSystem's open architecture also lets you build a broadcast application to send RealServer any type of data for broadcast. To build a broadcast application, you need the RealSystem G2 Software Development Kit (SDK).

Additional Information
You can get RealAudio and RealVideo encoding tools from http://www.realnetworks.com/developers/. Sample RealText and RealPix broadcast applications are available in the RealSystem G2 Authoring Kit at http://www.realnetworks.com/products/authkit/index.html. You can download the entire RealSystem G2 SDK from http://www.real.com/devzone/.

RealServer G2

RealServer streams the broadcast to RealPlayer. The RealServer administrator can give you the broadcast URL and parameters for connecting a broadcast application to RealServer. Because each RealServer has a limit on the number of streams it can produce, verify that the RealServer you intend to use has broadcast capabilities appropriate for your anticipated audience size.

Tip
Real Broadcast Network (RBN) provides full services for broadcasting small and large events. For details, see http://www.real.com/rbn/.

Additional Information
For information on configuring a broadcast, get RealServer Administration Guide, available at http://service.real.com/help/library/servers.html.

Preparing a Broadcast

The following are tips for preparing a live or prerecorded broadcast. See the manual or online help for your broadcast application for explicit instructions on how to encode and broadcast content.

Use SureStream with RealSystem G2 Codecs

SureStream technology and RealSystem G2 codecs let you broadcast RealAudio or RealVideo at multiple bandwidths. Each viewer's RealPlayer selects an encoding appropriate for its connection speed. RealNetworks encoding tools let you specify SureStream when you begin the broadcast.

Multiple-Bandwidth Broadcast through SureStream

To broadcast without using SureStream and the RealSystem G2 codecs, you need a separate broadcast application running on a separate computer for each bandwidth connection you intend to support. This is required because older codecs require more CPU for each encoding than do RealSystem G2 codecs. You then connect each broadcast application to RealServer and broadcast the different encodings under different URLs.

Additional Information
For more on codecs, see "Choosing RealAudio Codecs" and "Choosing RealVideo Codecs".

Verify that the Broadcast Machine has Enough CPU Power

RealNetworks tools can broadcast a SureStream clip for several different bandwidths in real-time using just a moderately powerful PC. Refer to your broadcast application's manual or online help for guidelines on machine requirements for broadcasting.

Decide Whether to Archive a Live Broadcast

RealNetworks encoding tools let you write a live broadcast to a file. RealServer can also archive the broadcast to a file. The latter option may be the better solution if your broadcast is long and your broadcast machine has limited disk space. The RealServer administrator can set up RealServer to archive the live broadcast.

Get the Broadcast URL and RealServer Parameters

The RealServer administrator can give you the parameters you need to connect a broadcast application to RealServer. The administrator will also provide the broadcast URL or URLs.

Perform a Trial Run of a Live Broadcast

When you broadcast live content, you don't get a second chance. It's good practice to perform a trial run to ensure that the equipment works properly and the broadcast results are what you expect. Because you can't edit a live broadcast the way you can edit a prerecorded file, it's important to set your audio levels and plan your video shots carefully in advance.

Additional Information
For pointers on producing audio, see "Capturing Audio". For video, see "Recording Video".

During both the trial run and the live broadcast, view the broadcast output with RealPlayer. When RealPlayer connects, check that the buffering time for receiving a live stream does not exceed 5-10 seconds. Throughout the presentation, keep an eye on the broadcast quality.

If you experience problems with the broadcast output, use the broadcast application to lower the video frame size and frame rate (fps), or select lower-bandwidth codecs. If these adjustments do not help, you may need to run your broadcast application on a more powerful machine.

Advertise a Public Broadcast Event

If you are broadcasting content that has wide public appeal, advertise your event on RealGuide (http://realguide.real.com/), the online guide to RealAudio and RealVideo.

Additional Information
See "Advertising on RealGuide".

Using SMIL with a Broadcast

You can use SMIL to coordinate live streams or create a presentation that adds prerecorded content to a live broadcast. The following sections gives you tips on using SMIL with broadcasts.

Additional Information
See Chapter 7 for more on SMIL. Chapter 9 tells how to include ads in broadcasts.

SMIL Limitations for Broadcasts

Within a SMIL file, you treat a broadcast like any other clip. You can assign broadcast streams to SMIL regions and group a broadcast with on-demand clips in a <seq> or <par> group, for example. However, you cannot use some SMIL features with broadcast streams:

Including On-Demand Clips with Broadcasts

Using SMIL, you can easily embed a broadcast in a multiclip presentation. SMIL can deliver an on-demand RealPix slideshow along with live RealAudio, for example, when both are in a <par> group. It cannot synchronize the on-demand clip to the live stream, however. The on-demand clip's timeline starts when the viewer requests the presentation. The broadcast stream's timeline starts when the broadcast begins.

To illustrate this, suppose viewer A requests the presentation two minutes after the broadcast begins, while viewer B requests it four minutes after the broadcast begins. At ten minutes into the broadcast, both A and B hear the same audio, but viewer A's RealPix clip is at its eight-minute mark, whereas viewer B's clip is at its six-minute mark. Hence the relationship of the two timelines varies for each viewer.

Synchronizing Multiple Broadcast Streams

If you have multiple broadcast streams for a single presentation, you can synchronize the streams through SMIL. This compensates for the fact that you typically cannot start two broadcast applications at exactly the same time. For example, you might start a live RealText encoding application a few seconds before a live RealVideo stream. When it receives the streams, RealPlayer delays playing the RealText stream until it can synchronize it with the RealVideo stream.

Tip
RealPlayer synchronizes broadcast streams to audio. For this reason, start your RealAudio/RealVideo broadcast application last. This way RealPlayer will have received and buffered the other streams by the time it receives the audio.

The broadcast streams are timestamped according to the broadcast machines' internal clocks. You should therefore run broadcast applications on the same machine, or on different machines that have synchronized clocks. To make RealPlayer synchronize streams, add a ?wallclock=name option to the broadcast source tag URLs in the SMIL file as shown in this example:


<par>
<video src="rtsp://realserver.company.com/encoder/video.rm?wallclock=sync"/>
<textstream src="rtsp://realserver.company.com/live/text.rt?wallclock=sync"/>
</par>

All wallclock attributes should use the same name value (sync in the example above), which can be any name you choose. The wallclock attribute is not needed for an on-demand clip or a single broadcast stream.

Warning
The wallclock attribute works with all RealNetworks clip types, including RealAudio, RealVideo, RealPix, and RealText. It may not function with other clip types broadcast by RealServer, however.

Additional Information
Sample RealText and RealPix broadcast applications are available in the RealSystem G2 Authoring Kit at http://www.realnetworks.com/products/authkit/index.html.


Copyright © 1998-1999 RealNetworks
For information on RealNetworks' technical support, click here.
Comments on this document? Click here.
This file last updated on 06/21/99 at 10:44:40.
previous next