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.
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:
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 writing the content to a RealVideo clip first.
Prerecorded content consists of video or audio you record and write to a digitized clip. You can then edit the clip before converting it to a streaming format and broadcasting it across a network. To the viewer, the presentation looks just like a live broadcast.
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, goes directly from the capture equipment to the 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 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. |
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.
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.
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". |
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.
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.
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 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.
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". |
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. |
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:
repeat attribute.
clip-begin and clip-end attributes do not work with broadcasts. You can terminate a broadcast before the stream stops by using the SMIL end attribute, however.
|
|
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 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.
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.
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.
|
|
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. |