The Simulated Live Transfer Agent (SLTA) is a Helix Universal Server utility that allows you to stream a prerecorded clip or a broadcast archive as if it were a live event. Using SLTA, you can deliver encore presentations, or simulate radio or TV programming using any number of clips. This chapter covers the basic and advanced modes of SLTA, explaining how to set up SLTA, create playlists, and run your simulated live broadcast.
SLTA is a command line tool installed with Helix Universal Server. Running on Windows or UNIX, it sends a media stream to Helix Universal Server, which then broadcasts the stream to media players. SLTA supports all broadcasting features:
| For More Information: See "Bandwidth Consumption" for more about bandwidth use in splitting arrangements. |
| For More Information: For the basics of splitting, see "Understanding Splitting". |
SLTA can simulate an audio or video broadcast in RealMedia, QuickTime, MPEG (including MP3), AU, WAV, or Windows Media format. Other RealNetworks formats, such as RealText and RealPix, can be broadcast through separate applications. Sample RealText and RealPix broadcast applications are included with the Software Development Kit (SDK), available for download at this Web page:
http://proforma.real.com/rnforms/resources/server/realsystemsdk/ind ex.html
| Tip: To simulate a broadcast using QuickTime clips, you can also use Playlist Broadcaster to deliver prerecorded media to Helix Universal Server, which then broadcasts it as described in "Broadcasting QuickTime, MPEG, and RTP-Based Media". |
SLTA has two modes: basic and advanced. Basic mode simulates account- based broadcasting in Helix Producer. It allows you to push the broadcast stream to a single Helix Universal Server. It automatically sets to predefined values certain stream delivery variables that are configurable in advanced mode. For example, basic mode always uses a 10% forward error correction rate and a 30-second data acquisition interval.
In advanced mode, SLTA functions like a transmitter in a splitting setup, sending a stream to one or more Helix Universal Servers configured as receivers, as described in "Setting Up a Receiver". The receivers then broadcast the stream to media players. The following table summarizes the features available in basic and advanced modes.
| Feature or Requirement | Basic | Advanced | Reference |
|---|---|---|---|
| RealMedia, Windows Media, QuickTime, or MPEG | yes | yes | click here |
| Helix Universal Server configured as a receiver | no | yes | click here |
| SLTA configuration file necessary | no | yes | click here |
| pull delivery | no | yes | click here |
| push delivery | yes | yes | click here |
| push delivery to multiple servers | no | yes | click here |
| multicast delivery to multiple servers | no | yes | click here |
| SureStream-aware delivery | no | yes | click here |
| configurable forward error correction | no | yes | click here |
| ignore server resend requests | no | yes | click here |
| configurable metadata transmit rate | no | yes | click here |
| path name preceding stream name | no | yes | click here |
| SLTA-buffered transport | no | yes | click here |
| broadcast redundancy | yes | yes | click here |
| UDP transport | yes | yes | click here |
| TCP transport | yes | yes | click here |
| clip playlists | yes | yes | click here |
| shuffle play | yes | yes | click here |
| clip title, author, and copyright overrides | yes | yes | click here |
| wallclock synchronization | yes | yes | click here |
Using SLTA requires a small amount of setup on Helix Universal Server.
SLTA's basic mode is authenticated, so you need to set up a user name and password on Helix Universal Server:
| Tip: In basic mode, SLTA uses the port range defined on the RealMedia broadcasting page (Broadcasting>RealNetworks Encoding). The default settings are generally sufficient. |
When you run SLTA in advanced mode, you configure Helix Universal Server as a receiver, as described in "Setting Up a Receiver". RealNetworks recommends that you do this before you define your SLTA configuration file.
When you're ready to broadcast, you run SLTA from the command line,
specifying the configuration file, the clip or playlist, and any additional
options. For each broadcast, you define a single stream name, such as
encore.rm, which is used in place of the actual clip or playlist name. When
viewers click the link to this stream, they join the broadcast in progress.
| Note: To run SLTA, you must be able to open a command prompt on your operating system, and navigate to a specific directory. This chapter does not explain how to perform these functions. |
The following tutorials are optional. They introduce you to the procedures for simulating a broadcast, using the smallest set of variables and commands required to configure and run SLTA. Once you understand the overall operation of SLTA, you'll more easily pick up the many additional configuration features and command line options that you can use.
| Note: In the following tutorials, you run SLTA on your Helix Universal Server machine. In a production environment, however, RealNetworks recommends that you run SLTA and Helix Universal Server on separate machines. |
In this tutorial you run SLTA in basic mode.
| To simulate a basic mode broadcast with a prerecorded clip: |
Simulate, and copy the following files to it:slta.exe (Windows) or slta (UNIX) file from the Helix Universal Server Bin directory.slta.bat (Windows) or slta.sh (UNIX) file from the Helix Universal Server Bin directory.real9video.rm clip from the Helix Universal Server Content directory. You can use another RealMedia clip if you wish.The location of Helix Universal Server in a default installation on Windows is C:\Program Files\Real\Helix Server.
Simulate directory. Enter one of the following commands to transmit the real9video.rm clip (or another clip if you wish) under the stream name live.rm. On Windows:slta.bat 127.0.0.1 80 |
slta.sh 127.0.0.1 80 |
127.0.0.1 if your files are not on the same machine as Helix Universal Server, or you're not using the local host address.80 entry refers to the standard HTTP port, which may be different on your Helix Universal Server. See "Defining Communications Ports" for port information.rtsp://127.0.0.1/broadcast/live.rm |
You need to substitute the actual Helix Universal Server address if your RealOne Player is not on the same machine as Helix Universal Server, or you're not using the local host address. You'll also need to include the RTSP port number if Helix Universal Server does not use port 554.
kill command with the process ID on UNIX. After a few seconds, the broadcast stops playing in RealOne Player.Follow the steps in this tutorial to run SLTA in advanced mode, creating both a transmitter and a receiver on your Helix Universal Server computer.
| To simulate an advanced mode broadcast with a prerecorded clip: |
Simulate, and copy the following files to it:slta.exe (Windows) or slta (UNIX) file from the Helix Universal Server Bin directory.slta.bat (Windows) or slta.sh (UNIX) file from the Helix Universal Server Bin directory.real9video.rm clip from the Helix Universal Server Content directory. You can use another RealMedia clip if you wish.The location of Helix Universal Server in a default installation on Windows is C:\Program Files\Real\Helix Server.
| Setting | Value | Notes |
|---|---|---|
| Transmitter Name | Simulation |
A transmitter can have any name, but the name should not include spaces. |
| Transmitter Address | 127.0.0.1 |
Using this value requires that your Helix Universal Server binds to the local host address, which it does by default. If you've changed this as described in "Binding to an IP Address", use the actual network address or host name. |
| Transmitter Netmask | 32 bits |
This is required when using local host. It's not required if using a full address. |
| Security Type | None |
This option requires no password. In an actual broadcast, RealNetworks recommends that you always use Basic security. |
transmit.cfg in your Simulate directory. You'll need to change the Address variable if you're not using the local host address. Also, make sure that the PortRange variable matches the setting on the receiver. Values must be quoted, and variable tags must end with a slash (/).<List Name="BroadcastDistribution"> |
| Note: This configuration sets up SLTA as a push transmitter. The variables for pull splitting, which are not shown in the preceding example, are different. |
Simulate directory. Enter one of the following commands to transmit the real9video.rm clip (or another clip if you wish) under the stream name live.rm. On Windows:
slta.bat -c transmit.cfg live.rm |
slta.sh -c transmit.cfg live.rm |
rtsp://127.0.0.1/broadcast/Simulation/live.rm |
You need to substitute the actual Helix Universal Server address if your RealOne Player is not on the same machine as Helix Universal Server, or you're not using the local host address. You'll also need to include the RTSP port number if Helix Universal Server does not use port 554.
kill command with the process ID on UNIX. After a few seconds, the broadcast stops playing in RealOne Player.You do not need to configure SLTA to run in basic mode. In advanced mode, SLTA relies on an XML-based configuration file for instructions on transmitting to each Helix Universal Server receiver. When you run SLTA, you indicate which configuration file to use. This allows you to define multiple configuration files for different transmission scenarios. The following sections explain how to set up your configuration file for advanced mode broadcasting.
| Tip: It's a good idea to set up Helix Universal Server as a receiver before you write your configuration file. To do this, follow the instructions in "Setting Up a Receiver". |
The main Helix Universal Server installation directory contains a template for
the SLTA configuration file, slta.cfg. You can edit this template with any text
editor, and save new configuration files as plain text under any name. The .cfg
extension is recommended, but not necessary. The following example shows
the contents of the slta.cfg template:
<List Name="BroadcastDistribution"> |
| Tip: If you are not familiar with XML-formatted lists and variables, read "Editing the Configuration File" for an overview. |
The configuration template has an outer list named BroadcastDistribution,
which you should not change. This main list contains a variable for the
transmitter name, and separate sections for push splitting and pull splitting
variables. Typically, you need to define only one of these sections depending
on the type of splitting you use:
<List Name="BroadcastDistribution"> |
Tip:
When using push splitting, you can delete the pull
splitting variables, and vice versa. This is not necessary,
though, and if you do so, be careful not to delete an element
you need, such as a closing </List> tag. Missing elements will
cause an error when you run SLTA.
|
Whether you use push splitting or pull splitting, you define a name for the
SLTA transmitter in the SourceName variable at the top of the file:
<Var SourceName="ExampleSourceName"/> |
If you plan to run multiple instances of SLTA on the same machine simultaneously, each configuration file should define a different source name. This name appears in Web page links for push transmissions, so it should not include spaces. Here is an example:
<Var SourceName="BroadcastEncore"/> |
| Tip: It helps you to keep track of transmitters and receivers if you use same name you defined for SLTA in the Broadcast Transmitters box on the Helix Universal Server receiver. |
In push splitting, SLTA initiates the connection, contacting one or more Helix
Universal Server receivers, and delivering the simulated live stream. The push
splitting section starts with the Destinations list, which encompasses a single
receiver definition predefined as ExampleName. This name is for your
convenience, and is not used in the broadcast. Change the name to any value
that describes the Helix Universal Server receiver. Here's an example:
<List Name="Destinations"> |
If you intend to deliver the same simulated live broadcast to more than one
Helix Universal Server, duplicate the receiver list within the Destinations list,
and give the second receiver a new name, as shown in the following example.
Each receiver list then defines the same set of variables, but with different
values as appropriate for each receiver. You can set up as many receivers as
necessary:
<List Name="Destinations"> |
SLTA can unicast a separate stream to each receiver, or multicast a single stream on a multicast-enabled network. As explained in Chapter 9, you can also use a Helix Universal Server receiver to transmit (or "split") the SLTA stream to any number of other receivers. This may be a better solution if your SLTA transmitter has limited outgoing bandwidth and you cannot multicast from SLTA to all of the receivers.
| Tip: Using virtual paths, you can define a single configuration file for multiple receivers, but deliver a stream only to certain receivers when you run SLTA. For more information, see "Directing Streams through Paths". |
The following table describes the SLTA push splitting variables you define for
each receiver you use. Several transmitter variables correspond to receiver
variables that must have a similar value. Minimally, you need to ensure that
the Address, PortRange, Protocol, and Password variables match the settings on
the receiver, as described in "Setting Up a Receiver". The section "Setting Up a
Transmitter" describes many of the transmitter features in greater detail.
| Variable | Value | Function | Reference |
|---|---|---|---|
PathPrefix |
*|path |
Streams all broadcasts with "*", or specifies a virtual path name. |
click here |
PortRange |
port-port |
Indicates the range of ports set up on the receiver for data transmission. | click here |
AcquisitionDataInterval |
seconds |
Sets the frequency that the transmitter sends metadata information. Valid range is 0 to 60. | click here |
FECLevel |
integer |
Sets a percentage of corrective packets sent. The valid range is 0 to 100. |
click here |
SureStreamAware |
0|1 |
Indicates whether to use SureStream-aware transmission. The value 0 is "no," 1 is "yes." |
click here |
BufferlessTransport |
0|1 |
Uses the clip's timestamp information. The value 0 is "no," 1 is "yes." (Always set this value to 1.) |
click here |
LocalAddress |
address |
Specifies the address or host name of the SLTA transmitter. | click here |
Address |
address |
Indicates the address or host name of the receiver. | click here |
TTL |
integer |
Sets the time to live for multicasting. | click here |
ResendSupported |
0|1 |
Ignores (0) or honors (1) the receiver's resend requests. |
click here |
Protocol |
protocol |
Sets the protocol used in transmitting streams. Choices are udp/unicast, udp/multicast, and tcp. |
click here |
Type |
Basic|None |
Sets the type of security used. | click here |
Password |
password |
Provides a password for Basic security. |
click here |
Tip:
It's OK to ignore variables for features that you do not use.
For example, TTL is used only with multicasts, so its setting
does not affect unicasts.
|
To broadcast all streams to all defined receivers, leave PathPrefix set to its
default value of "*" for each receiver. As described in "Multiple Splitting
Definitions", however, you can use virtual path names and stream names to
direct different broadcasts to different receivers. Suppose that you define three
different receivers, and give each a different PathPrefix value as shown in the
following example:
<List Name="Destinations"> |
The Sydney receiver, which uses the default path "*", gets all streams broadcast
by SLTA using this configuration file. The Tokyo receiver gets only the streams
that specify the news/ virtual path along with the stream name, which can be
anything, when you start the broadcast. The Bombay receiver gets only the
broadcast streams named news/hourly.rm.
The advantage of using virtual paths is that you can use one configuration file to deliver different streams to different receivers at different times. Instead of creating a separate configuration file for each receiver, you can define all receivers in one configuration file, then use the virtual paths to determine which receivers get which streams when you run SLTA.
Alternatively, you can create multiple configuration files to direct broadcasts to different receivers. Then, instead of specifying a path when starting the broadcast, you select the appropriate configuration file. Either method can create the same results, and you should choose the method that you find more convenient.
| For More Information: The section "Starting SLTA" explains how to indicate the path when you start the broadcast. |
Note:
As noted in the table "SLTA Pull Splitting Variables",
pull splitting definitions can include a virtual path prefix, too.
There is generally no need to set this path, however. In pull
splitting, SLTA responds to requests. It does not actively direct
streams as it does in push splitting. You can therefore leave the
default path prefix of "/" set for pull splitting.
|
For most clip types, you should leave BufferlessTransport set to its default value
of "1". In this mode, SLTA transmits the clip according to the clip's internal
timestamp information, which is appropriate for most streaming audio and
video formats. If you set this variable to "0", SLTA buffers clip data itself and
builds its own broadcast scheduler, which increases broadcast latency and
processor overhead. You can enable bufferless transport only for clips that
stream at a constant bit rate.
In pull splitting, Helix Universal Server initiates the connection, contacting
SLTA to acquire the stream when the first media player requests the simulated
live broadcast. The pull splitting section starts with the Pull Settings list, which
encompasses a single definition predefined as PullSource1. Change this
definition name, which is not used in broadcasts, to anything that describes
your SLTA transmitter:
<List Name="Pull Settings"> |
Any number of receivers can pull the same stream from a single SLTA transmitter. You therefore do not need to replicate the pull splitting variables for each receiver in use, as you do with push splitting. You need to define multiple configuration files only if you intend to deliver different streams to one or more receivers at the same time. You then run multiple instances of SLTA, using a different configuration file, stream name, and playlist for each instance.
The following table describes the SLTA pull splitting configuration variables you define. Most configuration is done on the receiver, which must be enabled for pull splitting, as described in "Enabling Pull Splitting Requests". The section "Setting Up a Transmitter" describes transmitter features in greater detail.
| Variable | Value | Function | Reference |
|---|---|---|---|
PathPrefix |
/|path |
Streams all broadcasts with "/", or specifies a virtual path name. |
click here |
ListenPort |
port |
Set the port where SLTA listens for stream requests. | click here |
SureStreamAware |
0|1 |
Indicates whether to use SureStream-aware transmission. The value 0 is "no," 1 is "yes." |
click here |
LocalAddress |
address |
Specifies the address or host name of the SLTA transmitter. | click here |
Type |
Basic|None |
Sets the type of security used. | click here |
Password |
password |
Provides a password for Basic security. |
click here |
You do not need to write a playlist to broadcast a single clip. If you have a series of clips to broadcast, though, you list them in sequence in the playlist. A playlist can contain any number of clips. When you run SLTA, you can play the clips in the order they're listed, or in random order (shuffle play). Refer to "Using SLTA Options" for information about command line options that affect playlists.
In a text file (file extension .txt), list on a separate line each file that you want
SLTA to stream. If the files do not reside in the same directory as the playlist,
include either their full paths, or paths relative to the location of the playlist.
In the following example, clips reside in the same directory as the playlist:
CompanyLogo.rm |
| Warning! All files in the playlist must be in the same media format, and must be encoded at the same bit rate. If you use SureStream, all clips in the playlist must be SureStream clips encoded for the same set of rates. You cannot mix SureStream clips with single-rate RealAudio or RealVideo clips. |
| Tip: You can determine a clip's encoded bit rate or rates by opening it in RealOne Player, and giving the View>Clip>Clip Source command. |
Prerecorded clips often have title, author, and copyright information encoded into them. Through the playlist, you can override this information on a clip- by-clip basis. Or, you can set the same title, author, and copyright values for all clips. RealOne Player users display this information through the clip info command (Ctrl+i). Information about a certain clip displays only as that clip is broadcast.
| Tip: Although a playlist isn't required to broadcast a single clip, you can write a playlist containing a single clip just to use the title, author, and copyright overrides. |
To include the same title, author, and copyright information for every clip,
add title, author, and copyright tags to the beginning of the playlist. This
information overrides any encoded information in the clip. End each tag with
a colon, as shown in the following example:
title: Annual Report |
| Tip: Presentation information, which you can specify in addition to clip information, is not supported directly through SLTA. You can add overall presentation information by delivering the simulated live broadcast through SMIL, however. For more information, see Introduction to Streaming Media. |
If you append individual title, author, and copyright parameters to a clip in the
playlist, the specified information overrides the playlist values described
above, as well as values encoded in the clip. You can use any combination of
title, author, and copyright parameters for each clip. Use double quotation
marks around values. Separate the first parameter from the clip file name
with a question mark (?). Precede all subsequent parameters with an
ampersand (&), as shown in this example:
Welcome.rm?title="Annual Report"&author="Chris Lee"©right="(c) 2002" |
You can mix the different ways of delivering clip information. When you do this, keep in mind that clip information is used in the following order:
In the following playlist example, suppose that each clip has a title, author, and copyright value encoded directly in the clip:
copyright: (c) 2001-2002 |
Within this playlist, the title parameter for each clip overrides the titles
encoded in the clips. The playlist's copyright parameter sets the same copyright
value for all clips in the list, also overriding the clips' encoded values. No
author values are specified, though, so each clip uses its encoded author text.
This section describes the SLTA command line syntax, environment variables, and options. To run SLTA in advanced mode, you must first configure your Helix Universal Server receiver, set up your SLTA configuration file, and, optionally, write your playlist.
RealNetworks recommends that you do not run SLTA from your Helix
Universal Server machine. This reserves the Helix Universal Server's processor
power for stream delivery alone. To install SLTA on another machine on your
network, copy the slta.exe (slta on UNIX) executable file from the Bin
subdirectory of the main Helix Universal Server directory. Then, copy to the
same directory the following libraries, which reside in Helix Universal Server's
Plugins and Lib directories.
| Tip: You can run SLTA on an operating system different from the one that hosts your Helix Universal Server. To get the appropriate libraries, you can download the free version of Helix Universal Server for the operating system on which SLTA runs. |
Running SLTA on your Helix Universal Server machine (but not on a different machine) requires that you set two environment variables. If you plan to use SLTA on your Helix Universal Server machine frequently, set the following environment variables permanently. This lets you run the SLTA executable file directly:
SLTA_PLUGIN_PATH |
Full path to the directory that holds Helix Universal Server plug-ins |
SLTA_SUPPORT_PATH |
Full path to the directory that holds Helix Universal Server libraries (DLLs). |
| Tip: If you plan to use SLTA only occasionally, you can run the provided batch (Windows) or shell (UNIX) file described in "Starting SLTA" to set the variables for your current session. |
To set SLTA environment variables permanently on a default installation of Helix Universal Server on Windows, add the following two lines to your environment:
set SLTA_PLUGIN_PATH=C:\Program Files\Real\Helix Server\Plugins |
If you installed Helix Universal Server in a location other than the default, modify the C:\Program Files\Real\Helix Server portion of the paths above to the actual base path where Helix Universal Server resides.
How you add variables to your environment depends on the operating system you're using. On Windows 2000, for example, you add environment variables with the Start>Settings>Control Panel>System>Advanced>Enviornment Variables command.
On Helix Universal Server, SLTA files are located in the Bin subdirectory of the
main Helix Universal Server directory. Although you can run SLTA from this
location, RealNetworks recommends that you move the necessary files to a
different directory, preferably on a different machine. The file you run
depends on your machine, operating system, and whether you've set
environment variables permanently.
| SLTA Location | Windows | UNIX |
|---|---|---|
| On a machine other than Helix Universal Server, as described in "Moving SLTA to a Different Machine". | slta.exe |
slta |
| On your Helix Universal Server machine with variables set permanently. | slta.exe |
slta |
| On your Helix Universal Server machine without having set variables permanently. | slta.bat |
slta.sh |
From a command prompt, use the following syntax to run SLTA in basic mode.
slta[. |
stream_name.ext, specify the name of the simulated live stream. This name appears in links to the broadcast, and uses the appropriate media extension, such as .rm for a RealMedia broadcast. When broadcasting QuickTime or MPEG, use .mov or an appropriate MPEG extension (such as .mpeg or .mp4) for the stream name. You do not need to use an SDP file.Running from a machine other than the Helix Universal Server computer, or
with the environment variables set permanently on Helix Universal Server, you
would use a command such as the following to broadcast a single RealMedia
archive (awards.rm) as a simulated live event (encore.rm), using no additional
SLTA options:
slta.exe helixserver.example.com 80 simulator k56weiq9 encore.rm awards.rm |
From a command prompt, use the following syntax to run SLTA in advanced mode.
slta[. |
config_file.cfg, give the full or relative path to a configuration file you created according to instructions in "Configuring SLTA for Advanced Mode".stream_name.ext, specify the name of the simulated live stream. This name appears in links to the broadcast, and uses the appropriate media extension, such as .rm for a RealMedia broadcast. When broadcasting QuickTime or MPEG, use .mov or an appropriate MPEG extension (such as .mpeg or .mp4) for the stream name. You do not need to use an SDP file.If you defined virtual paths for receivers, as described in "Directing Streams through Paths", you can include a virtual path in front of the stream name, as in news/live.rm. This path, which does not correspond to any directory on the machine, uses a Web-style forward slash even on Windows.
Running from a machine other than the Helix Universal Server computer, or
with the environment variables set permanently on Helix Universal Server, you
would use a command such as the following to broadcast a single RealMedia
archive (awards.rm) as a simulated live event (encore.rm), using no additional
SLTA options:
slta.exe -c transmit.cfg encore.rm awards.rm |
In both basic and advanced modes, SLTA supports redundant encoders as described in "Using Broadcast Redundancy". This allows the Helix Universal Server receiver to switch to a backup stream if the primary encoder stream fails. Although you can run two instances of SLTA on the same machine, this provides process redundancy only. For true redundancy, run an instance of SLTA on two separate machines that use different power supplies and network connections.
To set up SLTA redundancy, install SLTA on your backup machine as described in "Moving SLTA to a Different Machine". Copy over the configuration file, the playlist (if used), and the broadcasted clip or clips. Because the content is prerecorded, you want to start SLTA on both machines at the same time, or as close as possible. You may want to set up a script appropriate for your operating system that launches both SLTA processes on the two machines simultaneously.
The only difference between the two SLTA instances is the stream name used
in the command that starts SLTA. Each stream name needs a delimiter that
identifies it as the primary or the backup. The following example builds on an
example in a preceding section by appending .1 to the stream name to identify
it as the primary stream:
slta.exe -c transmit.cfg |
With SLTA on your backup machine, you add .2 to the stream name:
slta.exe -c transmit.cfg |
SLTA provides optional command line arguments that affect the simulated live broadcast. The options appear last on the command line in any order, each option preceded by a hyphen. Here is an example:
slta.exe -c transmit.cfg encore.rm playlist.txt |
The following table summarizes the options. Some options are useful only with playlists. Unless noted otherwise, all options are available in basic or advanced mode.
| Option | Function | Reference |
|---|---|---|
c |
Use the specified configuration file (advanced mode only) | click here |
e |
Disable playlist title, author, and copyright information. | click here |
f |
Force playlist title, author and copyright updates. This is the default. | click here |
nN |
Play N files, then stop, where N is an integer that specifies the number of files to play. Using just -n sets up a continuous loop, which is the default behavior. |
click here |
r |
Transmit playlist files in a random order (shuffle play). | click here |
t |
Force TCP transport instead of UDP (basic mode only). | click here |
w |
Enable wallclock synchronization with other streams. | click here |
By default, SLTA transmits a clip or playlist in a continuous loop. If you
specify just one file, for example, SLTA continuously transmits that file until
you stop the broadcast. You can use command line -nN and -r options to
modify the default playback.
The -nN switch specifies the total number of files to play. To play a clip just
once, for instance, you specify -n1. To play it twice, use -n2. For a single
playback of a playlist that contains 3 clips, for example, you specify -n3. A
value such as -n5 means to play the single clip five times, or to play the first
five clips on the playlist (not to play each clip in the playlist five times). If you
use -n5 for a playlist that has just three clips, SLTA plays the three clips in
order, then returns to the start of the list to play the first two clips again, for a
total of five clips played.
When SLTA loops a playlist, either continuously (the default behavior) or a
predetermined number of times because of the -nN option, it reads the playlist
each time it starts a loop. This allows you to change the playlist during the
broadcast. Simply edit the existing playlist, or replace the playlist with another
of the same name. SLTA uses the modified playlist after it has played all of the
clips in the current playlist.
| Tip: This feature lets you stream long broadcasts without writing a single, long playlist. Your first playlist might last an hour. During that hour of the broadcast, you can change the playlist to specify the clips that play during the second hour, and so on. |
When you use a playlist, you can create shuffle play by including the -r option.
If you use just this option without -nN, the playlist cycles continuously,
playing clips in a random order during each cycle. You can use both the -r and
-nN switches to cycle randomly through the playlist a certain number of times.
For example, -r and -n10 cause SLTA to transmit a playlist of five clips twice,
with clips playing in a random order each time.
If you use the -e option, title, author, and copyright information included in
the playlist is not used. RealOne Player still displays any title, author, and
copyright information encoded in the clips, however. The -f option, which is
the default, preserves all playlist overrides, which are described in "Adding
Title, Author, and Copyright Information".
In basic mode, SLTA opens a UDP connection to Helix Universal Server unless
you use the -t option to force a TCP connection. Although TCP provides a
more reliable connection in a lossy environment, it increases the network
overhead. In advanced mode, the -t option is not available because you specify
TCP or UDP transport in the SLTA configuration file.
When you include the -w option, SLTA sets the first timestamp of the packet
stream to the time defined by the clock on the SLTA computer. You can then
use the SMIL wallclock timing feature to synchronize events in a SMIL
presentation to specific times in the broadcast stream. For example, you might
pop up an advertisement at 2:35 P.M. as recorded by the SLTA computer clock.
| For More Information: For information about the SMIL wallclock feature, see the advanced timing chapter of RealNetworks Production Guide. |
As SLTA runs, it displays the name of the file it is currently transmitting. A
line of asterisks indicates the percentage of the file that has been sent. For
example, a row of asterisks that lines up below the number 5 indicates that the
file is approximately 50 percent complete. Here is an example:
Transmitting Welcome.rm...
0----1----2----3----4----5----6----7----8----9----10
***********************
SLTA stops automatically and displays the text Done when it has finished
transmitting all of the files according to the playlist (if used) and the specified
options. If it cannot transmit a file in a playlist because it cannot find the file,
or the file is encoded in a format different from the preceding files, it skips
that file, prints an error message, and transmits the next file.
Ordinarily, you will not need to stop SLTA manually except to halt the
broadcast before it completes, or to terminate a continuously looping
broadcast. To stop SLTA, press Ctrl+c at the command line from which you
started SLTA on Windows. On UNIX, use the kill command with the process
ID of the SLTA process.
The following sections explain simulated live broadcast link formats in general, and provide example links for RealMedia broadcasts. For broadcasts in other formats, you need to use transmitter mount points and stream names as appropriate for that format.
Links to SLTA broadcasts in basic mode use the unicast URL formats described in "Linking to Unicasts".
A Web page link to a RealMedia broadcast in which Helix Universal Server uses the default port 80 for HTTP might look like this:
http://helixserver.example.com/ramgen/broadcast/archive.rm |
/ramgen/ mount point launches RealOne Player, as explained in "Using a Client Launch Utility". For a Windows Media broadcast, you use /asxgen/./broadcast/, which you use for all media formats delivered by SLTA. If you are using redundant SLTA transmitters, use the /redundant/ mount point instead. This default mount point can be changed as described in "Modifying Encoder Redundancy Settings".archive.rm, is the stream name you specify when starting SLTA. You do not use the actual name of the broadcasted clip or playlist.You can also launch a simulated, live RealMedia broadcast through a Ram file
or SMIL file, as described in "Using Metafiles". The URL format is similar to
the preceding example, but it specifies RTSP or MMS, and omits the /ramgen/
or /asxgen/ parameter. In the following example, the port number is omitted,
which means that port 554 is used for RTSP:
rtsp://helixserver.example.com/broadcast/archive.rm |
Links for advanced mode broadcasts use the same format as split broadcasts, which are described in "Linking to Split Content". Push splitting links point to the Helix Universal Server receiver, but include the name of the SLTA transmitter to identify the broadcast.
A Web page link to a RealMedia broadcast in which Helix Universal Server uses the default port 80 for HTTP might look like this:
http://helixserver.example.com/ramgen/broadcast/Simulated/news/archive.rm |
/ramgen/ mount point launches RealOne Player, as explained in "Using a Client Launch Utility". For a Windows Media broadcast, you use /asxgen/./broadcast/, but the Helix Universal Server receiver may define a different mount point. If you are using redundant SLTA transmitters, use the /redundant/ mount point instead. This default mount point can also be changed, as described in "Modifying Encoder Redundancy Settings"./Simulated/. The name is set in the SourceName variable of the configuration file, as explained in "Setting Basic Transmitter Properties".news/ is optional. You include it only if you've specified a value other than "*" for the PathPrefix variable in the configuration file. For more information, see "Directing Streams through Paths".archive.rm, is the stream name you specify when starting SLTA. You do not use the actual name of the broadcasted clip or playlist.You can also launch a simulated, live RealMedia broadcast through a Ram file
or SMIL file, as described in "Using Metafiles". The URL format is similar to
the preceding example, but it specifies RTSP or MMS, and omits the /ramgen/
or /asxgen/ parameter. In the following example, the port number is omitted,
which means that port 554 is used for RTSP:
rtsp://helixserver.example.com/broadcast/Simulated/news/archive.rm |
As with push splitting, a pull splitting link requests the stream from the receiver, and indicates the transmitter where the broadcast originates. The link does not use the transmitter name given in the SLTA configuration file, however. Instead, it provides the address and listen port of the transmitter so that the receiver can locate the transmitter and pull the broadcast stream.
A Web page link to a RealMedia broadcast in which the Helix Universal Server receiver uses the default port 80 for HTTP might look like this:
http://helixserver.example.com/ramgen/broadcast/pull/simulator.example.com:2030/news/archive.rm |
/ramgen/ mount point launches RealOne Player, as explained in "Using a Client Launch Utility". For a Windows Media broadcast, you use /asxgen/./broadcast/, but the Helix Universal Server receiver may define a different mount point. If you are using redundant SLTA transmitters, use the /redundant/ mount point instead. This default mount point can also be changed, as described in "Modifying Encoder Redundancy Settings"./pull/. The name is set in the receiver definition, as explained in "Enabling Pull Splitting Requests"./simulator.example.com:2030/. The SLTA configuration file defines the listen port, as described in "Setting Pull Configuration Values".| Note: When broadcasting Windows Media, you need to mask the address and port through an alias, as described in "Using URL Aliases". |
news/ is optional. You include it only if you've specified a value other than "/" for the PathPrefix variable in the configuration file. For more information, see "Setting Pull Configuration Values".archive.rm, is the stream name you specify when starting SLTA. You do not use the actual name of the broadcasted clip or playlist.You can also pull a RealMedia broadcast through a Ram file or SMIL file, as
described in "Using Metafiles". The URL format is similar to the preceding
example, but it specifies RTSP or MMS, and omits the /ramgen/ or /asxgen/
parameter. In the following example, the receiver's RTSP port number is
omitted, which means that port 554 is used for RTSP:
rtsp://helixserver.example.com/broadcast/pull/simulator.example.com:2030/news/archive.rm |
| Note: When broadcasting Windows Media, you need to mask the address and port through an alias, as described in "Using URL Aliases". |
|
|
© 2002 RealNetworks, Inc. All rights reserved.
For more information, visit RealNetworks Click here if the Table of Contents frame is not visible at the left side of your screen. |