The Internet is swiftly becoming the next great broadcast medium. RealSystem lets you broadcast live or prerecorded presentations over the Internet or an intranet. This chapter provides background on using broadcast applications and RealServer to broadcast media. Refer to the documentation for RealServer and your tools for instructions on configuring a broadcast.
![]() |
Tip |
---|
Real Broadcast Network provides full services for broadcasting small and large events. For details, see http://www.realnetworks.com/rbn/index.html. |
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 ends, 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, on the other hand, is like a movie shown on a television channel. As with a TV broadcast, there are two types of streaming media broadcasts:
Live content is broadcast as it occurs. For example, you can broadcast the output of a video camera across the Internet or an intranet. RealSystem encodes the content as RealVideo in real time without first saving the content as a RealVideo clip.
Prerecorded content consists of video or audio content you record and save as a digitized file. You can then edit the content before encoding it as a streaming clip and broadcasting it across a network. To the viewer, the presentation looks just like a live broadcast.
The following illustration shows how RealServer delivers both live and prerecorded broadcasts.
To broadcast a presentation, you need the tools described in the following sections.
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.
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, is sent directly from the capture equipment to the broadcast application.
A broadcast application takes the live source and encodes it in the appropriate streaming format, sending the output to RealServer. RealProducer, for example, can encode a video camera's RGB or YUV output as RealVideo in real time. A broadcast application typically runs on a separate computer that has a network connection to the RealServer computer. To broadcast prerecorded content, you typically do not need a broadcast application because RealServer can broadcast the clips itself.
RealSystem's open architecture also lets you build a broadcast application to send RealServer any type of data for broadcast. To build such an application, you need the RealSystem Software Development Kit (SDK), available at this Web address:
http://www.realnetworks.com/devzone/downlds/index.html
Sample RealText and RealPix broadcast applications are available in the RealSystem Authoring Kit, available at this Web page:
http://www.realnetworks.com/products/authkit/index.html
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 limits on its outgoing bandwidth and the number of streams it can produce, verify that your RealServer has capabilities appropriate for your anticipated audience size.
![]() |
Additional Information |
---|
For information on configuring a broadcast, refer to the RealServer Administration Guide, available at http://service.real.com/help/library/servers.html. |
This section provides tips for preparing either a live or a prerecorded broadcast. See the manual or online help for your broadcast application for explicit instructions on how to encode and broadcast content. Note that the RealServer administrator sets up RealServer for the broadcast.
Using SureStream technology, you can broadcast RealAudio or RealVideo at multiple bandwidths. Each viewer's RealPlayer selects an encoding appropriate for its connection speed. When you begin the broadcast, you specify in RealProducer that you want to use SureStream.
To broadcast without using SureStream, you need to have a separate broadcast application running on a separate computer for each bandwidth connection. This is required because older codecs require more CPU power than do SureStream codecs. You then connect each broadcast application to RealServer and broadcast the different streams using different URLs.
![]() |
Additional Information |
---|
For more on codecs, see "Understanding RealAudio" and "Understanding RealVideo". |
RealProducer can broadcast a SureStream clip for several different bandwidths in real time using just a moderately powerful PC. Refer to the RealProducer manual or online help for guidelines on computer requirements for broadcasting.
Using RealProducer, you can 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 RealProducer computer has limited disk space. The RealServer administrator can set up RealServer to archive the live broadcast.
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.
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 that the broadcast results are what you expect. Because you can't edit a live broadcast the way you can a prerecorded file, it's important to set your audio levels and plan your video shots carefully in advance.
![]() |
Additional Information |
---|
For pointers on recording audio, see "Capturing Audio". For tips on capturing 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 10 seconds. Throughout the presentation, keep an eye on the broadcast quality. If you experience problems during your trial run, you may need to either reduce the number of SureStream streams or run RealProducer on a more powerful computer.
If you are broadcasting content that has wide public appeal, advertise your event on RealGuide (http://realguide.real.com/), RealNetworks' online guide to streaming media.
![]() |
Additional Information |
---|
See "Advertising on RealGuide". |
You can use SMIL to coordinate live streams or create a presentation that adds prerecorded content to a live broadcast. This section provides tips on using SMIL with broadcasts.
![]() |
Additional Information |
---|
See Chapter 6 for more on SMIL. Chapter 9 explains how to include ads in broadcasts. |
Within a SMIL file, you treat a broadcast like any other clip. For example, you can assign broadcast streams to SMIL regions and group a broadcast with on-demand clips in a <seq>
or <par>
group. However, you cannot use some SMIL features with broadcast streams:
repeat
attribute.
clip-begin
and clip-end
attributes do not work with broadcasts. However, you can terminate a broadcast before the stream stops by using the SMIL end
attribute.
![]() |
Additional Information |
---|
See "Setting Begin and End Times". |
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 with the live stream, however. This is because the on-demand clip's timeline starts when the viewer requests the presentation, whereas the broadcast stream's timeline starts when the broadcast begins.
To illustrate this, suppose that viewer A requests the presentation 2 minutes after the broadcast begins, and viewer B requests it 4 minutes after the broadcast begins. At 10 minutes into the broadcast, both viewers hear the same audio, but viewer A's RealPix clip is at its 8-minute mark, whereas viewer B's clip is at its 6-minute mark. Hence the relationship between the two timelines varies for each viewer.
If you have multiple broadcast streams for a single presentation, you can synchronize the streams by using 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.
The broadcast streams are timestamped according to the broadcast computers' internal clocks. You should therefore run broadcast applications either on the same computer or on different computers 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 the following example:
<par>
<video src="rtsp://realserver.example.com/encoder/video.rm?wallclock=sync
"/>
<textstream src="rtsp://realserver.example.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. You do not need the wallclock
attribute for an on-demand clip or a single broadcast stream.