previous

Appendix C: Configuration File Contents

This appendix gives brief information about the contents of the configuration file for those administrators interested in editing it directly.

Editing the Configuration File

For those RealServer administrators who prefer to modify features by editing the configuration file directly, this appendix shows sample configuration file contents with brief descriptions. Detailed descriptions can be found in the chapters that describe each subject.

The default name of the configuration file is rmserver.cfg, but if you have multiple Servers you may want to rename the files so as to easily identify which server you're working with.

To modify the configuration file with a text editor:

  1. Please read Appendix B, "Configuration File Syntax", which explains the structure of this file.

  2. Save a backup copy of the configuration file.

  3. Open the configuration file, and make any changes you like.

    Be sure to use correct syntax, because RealServer looks for exact spellings and correct use of angle brackets. RealServer does not display messages related to syntax errors; instead, it will ignore those settings it does not understand. It may use minimal settings. See "Minimum Licensed Features".

  4. Restart RealServer after changing any settings with a text editor.

RealSystem Administrator and the Configuration File

Information elsewhere in this manual on customizing RealServer features is based on the settings that appear in RealSystem Administrator. However, RealSystem Administrator mostly displays only those settings that will be changed in everyday use. Other items, such as the file system short name of the basic mount points, are not accessible through RealSystem Administrator. By viewing the configuration file and reading this section you will see the complete listing of settings for each feature.

Tip
A fast way to understand the structure of the configuration file is to first use RealSystem Administrator to make changes, and then examine the configuration file to see the effects. Noticing how lists are created and changed will be especially helpful. Note that you must exit RealSystem Administrator before opening the configuration file with a text editor or unexpected changes may result.

Some Observations About Variables

Most configuration file variable names closely match names in RealSystem Administrator. When there is a difference between the way it is configured in RealSystem Administrator and the actual variable name, the difference is noted here. RealSystem Administrator frequently adds spaces to the variable names (BasePath becomes Base Path, for instance), and those changes are not noted in this appendix.

Some variables, which are not part of lists, can appear anywhere in the configuration file, but are grouped here for clarity.

Variables that use true or false values (such as PlusOnly, the variable that determines whether RealPlayer Plus, rather than the free versions of RealPlayer, can play streams from your RealServer) may be represented in the configuration file with a 1 or the word True. In RealSystem Administrator, a choice of On, Yes, or Enabled usually corresponds to 1 or True in the configuration file, while Off, No, or Disabled usually corresponds to 0 or False. Within the configuration file, you may use either 1 or True to represent the positive condition, and 0 or False for the negative.

For example, <Var PlusOnly="True"/> and <Var PlusOnly="1"/> are equivalent statements.

RealServer Features in the Configuration File

Ad Streaming

Configuration elements of the ad streaming feature are not listed here, as the feature is designed to be configured only with RealSystem Administrator. Ad streaming elements appear within the FSMount section of the configuration file. Ad streaming is described in Chapter 20, "Streaming Targeted Ads".

Access Control

Restricting access to RealServer content via the requesting client's IP address is described in Chapter 14, "Limiting Access to RealServer". For every address or address range to which you want to restrict access, create a list with a unique number. The number can be any length, but a number of more than one digit is recommended in case more lists are added later; with multiple digits, the new lists can be inserted between existing lists.

Each list is called a rule. Rules are processed in numerical order. RealServer searches the list of rules to find the first rule that matches the address. Because RealServer searches the list of rules in numerical order, make your broadest categories first.

Within each list, the following settings are used: Access, Transport, To, From, and a list named Ports.

Access Control Configuration Elements
Element Description
<List Name="AccessControl">
<List Name="100">
<Var Access="Allow"/> Whether access is allowed or denied: set to Allow or Deny.
<Var Transport="TCP"/> Transmission method being accessed. TCP is the only option for this list.
<Var To="127.0.0.1"/> Address of the host RealServer or network card of hosting machine. Use specific address or Any. (This is shown as Server IP Address in RealSystem Administrator.)
<Var From="any"/> Address of the client computer whose access you are limiting. Use specific address or Any. To specify a range of IP addresses, either place a colon after the IP address and give the full subnet mask, or place a slash mark after the IP address and give the number of bytes for the subnet mask. For example, the following are equivalent values to use in the From variable: 172.16.3.0:255.255.255.0 and 172.16.3.0/24. Both examples specify the range of addresses from 172.16.3.0 to 172.16.3.254. (This is shown as Client IP Address in RealSystem Administrator.)
<List Name="Ports"> List of ports to which access is restricted.
<Var Port_01="554"/> The port number should match the port numbers which RealServer is using for other features, such as RTSPPort, HTTPPort, and the port value used by the encoder list.
<Var Port_02="4040"/>
<Var Port_03="5050"/>
<Var Port_04="7070"/>
<Var Port_05="8080"/>
<Var Port_06="9090"/>
</List>
</List>
</List>

Allowance

Settings in this section refer to the allowance plug-in. They are described in Chapter 14, "Limiting Access to RealServer".

If you establish values for both ClientConnections and MaxBandwidth, RealServer will limit access when the lower threshold is reached.

When set to On, ValidPlayerOnly sends a message to any clients other than RealNetworks RealPlayer 5 or RealNetworks RealPlayer 6 directing them to upgrade to the latest version of RealPlayer. If set to Off, all clients can receive all clips. In the free downloadable versions of RealServer, this is set to On and cannot be changed.

Allowance Configuration Elements
Element Description
<Var ClientConnections="25"/> Limits the number of connections that can be in use simultaneously. Must be less than or equal to the number of streams in your license. Range is 1 to 32767. If omitted or set to 0, RealServer uses the number in your license.
<Var MaxBandwidth="64"/> Limits the amount of bandwidth in use by RealServer. The value is given in kilobits per second. The default value is 0, which means to use the maximum number of connections, as allowed by the license.

<Var ValidPlayersOnly="True"/>
Allows only RealPlayer versions 5 and 6 to access content. Any other clients attempting to view or listen to content display a message directing them to upgrade to the latest version of RealPlayer. If ValidPlayerOnly is set to Off, all clients can receive all clips. In Basic Server and Basic Server Plus, this is set to On and cannot be changed.

<Var MinPlayerProtocol="0"/>

Limits access by protocol number. Use one of the following values for MinPlayerProtocol:
0 All clients are permitted to connect
4 RealAudio Player 1.0 and later can connect
7 RealAudio Player 2.0 and later can connect
8 RealAudio Player 3.0 and later can connect
10 RealPlayer 4.0 and later can connect


<Var PlusOnly="False"/>
When set to True, PlusOnly enables only RealPlayer Plus to play content.

Authentication and Commerce

Authentication is described in Chapter 15, "Authenticating RealServer Users".

There are four areas that apply to authentication in the configuration file, and each of these four areas is in a separate list. The four main areas refer to each other, but are kept separate for flexibility. Two separate secure paths might use the same realm (and therefore the same database) to perform the same type of authentication for content kept in different locations. This enables different types of content to share the same list of authorized users.

Authentication Realms

A realm is a way of associating a group of users and the protocol used to verify their credentials.

Each sublist of AuthenticationRealms gives properties for a different realm. Every realm has a name (identified by the Realm variable), and a list that identifies what type of authentication is used in that realm. Depending on which authentication type you choose, different variables are required within the sublist (see the "AuthenticationRealms PluginID Settings" table). When RealServer is installed on a Windows NT system, you can take advantage of NT authentication and direct RealServer to use the list of authorized users.

Authentication Realms Configuration Elements
Element Description
<List Name="AuthenticationRealms">
<List Name="SecureAdmin"> A realm.
<Var Realm="AdminRealm"/> Name of this realm. Lists in the CommerceRules and FSMount lists may refer to this.
<List Name="NTLMAuthenticator"> User-defined description of authentication to use in this realm. Use only one type of authentication per realm.
<Var PluginID="rn-auth-sspi"/> Plug-in which performs the authentication. For a list of options, see the "AuthenticationRealms PluginID Settings" table below.
<Var Provider="NTLM"/>
<Var Group="Administrators"/> Name of an NT administrator-defined user group, whose members are allowed access. In this example, only members of the "Administrators" group are permitted to view content controlled by this realm.
</List>
</List>
<List Name="SecureEncoder"> A realm.
<Var Realm="EncoderRealm"/> See description earlier in this section.
<List Name="RN5Authenticator"> User-defined description of authentication to use in this realm. Use only one type of authentication per realm.
<Var PluginID="rn-auth-rn5"/> Plug-in which performs the authentication. For a list of options, see the "AuthenticationRealms PluginID Settings" table below.
<Var DatabaseID=
"Encoder_RN5"/>
Identifies which database to look in for authentication data. Refers to a list name within the Databases list.
</List>
</List>
<List Name="SecureContent"> A realm.
<Var Realm="ContentRealm"/> See description earlier in this section.
<List Name="NTLMAuthenticator"> User-defined description of authentication to use in this realm. Use only one type of authentication per realm.
<Var PluginID="rn-auth-sspi"/> Plug-in which performs the authentication. For a list of options, see the "AuthenticationRealms PluginID Settings" table below.
<Var Provider="NTLM"/> See description earlier in this section.
</List>
</List>
</List>

AuthenticationRealms PluginID Settings
PluginID Value Authentication Protocol Associated Variables
rn-auth-basic Basic DatabaseID (required)
rn-auth-rn5 RN5 DatabaseID (required)
rn-auth-sspi Windows NTLM Challenge/Response Provider (required), Group (optional)

Commerce Rules List

The commerce rules list associates part of an URL with authentication. When RealServer looks through the URL to decide which plug-in should process the request, it compares each section of the URL with the ProtectedVirtualPath. Should this match, RealServer looks at the other information within the list to determine which realm protects the content, and which database lists the permissions (if any).

Each sublist within SecureContent associates the mount point with the information. The mount point for RealSystem Administrator does not need to go here.

Variables used with sublists are ProtectedVirtualPath, Realm, UseGUIDValidation, EvaluatePermissions, AllowDuplicateIDs, and DatabaseID. Use Realm or UseGUIDValidation, but not both.

Commerce Rules Configuration Elements
Element Description
<List Name="CommerceRules">
<List Name="SecureContent">
<Var ProtectedVirtualPath="/secure"/> Name of the mount path, virtual directory, or actual directory, used in URLs, that you want RealServer to authenticate.
<Var Realm="ContentRealm"/> This points to the realm names in AuthenticationRealms list. Sets up user authentication. Don't use if UseGUIDValidation is also in use.
<Var EvaluatePermissions="True"/> Instructs RealServer whether or not to look at the permissions list, or to just allow access to all content.
<Var DatabaseID="Content_RN5"/> Points to the database identifiers in the Databases list.
<Var AllowDuplicateIDs="False"/> Determines whether someone who's already logged on can successfully log on at another location. When set to False, a user gets the error message "Your account is locked" if they attempt to log on using the same account or player ID.
</List>
<List Name="SecureLiveContent">
<Var ProtectedVirtualPath=
"/encoder/secure"/>
Name of the mount path, virtual directory, or actual directory, used in URLs, that you want RealServer to authenticate.
<Var UseGUIDValidation="True"/> Sets up player authentication. Gathers the client's ID, but not the user's name. Don't use if Realm is in use.
<Var EvaluatePermissions="True"/> See description earlier in this section.
<Var DatabaseID="Content_RN5"/> Points to the database identifiers in the Databases list.
<Var AllowDuplicateIDs="True"/> See description earlier in this section.
</List>
</List>

Player Authentication

In player authentication, the client sends a special string to RealServer indicating that the client is registering. The GUIDRegistrationPrefixes list identifies the special string (the GUIDRegistrationPrefix variable) and the database in which to store the player identification. You must embed this string in the link on the Web page.

Two variables are required for each sublist: GUIDRegistrationPrefix and DatabaseID.

Player Authentication Configuration Elements
Element Description
<List Name="GUIDRegistrationPrefixes">
<List Name="FirstDatabase">
<Var GUIDRegistrationPrefix="register1"/> String required from client in registering. Can be any single word, with any combination of letters and integers. Must be unique in the GUIDRegistrationPrefixes list.
<Var DatabaseID="Content_RN5"/> Name of database, from Databases list, that will store this type of data.
</List>
<List Name="SecondDatabase">
<Var GUIDRegistrationPrefix="register2"/> String required from client in registering. Can be any single word, with any combination of letters and integers. Must be unique in the GUIDRegistrationPrefixes list.
<Var DatabaseID="Content_ODBC"/> Name of database, from Databases list, that will store this type of data.
</List>
</List>

Databases List

The databases list is the master list of available databases for each type of authentication. Databases store usernames and passwords of authorized users.

Within the list, sublists associate database plug-ins with location information.

In the examples shown here, PluginID is always set to rn-db-flatfile. There is only one variable associated with rn-db-flatfile, but other values for PluginID require different variables. Refer to the "Databases PluginID Settings" table.

Databases Configuration Elements
Element Description
<List Name="Databases">
<List Name="Admin_Basic"> Database information for RealSystem Administrator user authentication.
<Var PluginID="rn-db-flatfile"/> Name of plug-in that will interact with the database. See "Databases PluginID Settings" table for a list of options.
<Var Path="C:\Program Files\Real
\RealServer\adm_b_db"/>
Location where the database files are stored or will be stored.
</List>
<List Name="Encoder_RN5"> Database information for encoder authentication.
<Var PluginID="rn-db-flatfile"/> See description earlier in this section.
<Var Path="C:\Program Files\Real\RealServer
\enc_r_db"/>
See description earlier in this section.
</List>
<List Name="Content_RN5"> Database information for live and on-demand user authentication.
<Var PluginID="rn-db-flatfile"/> See description earlier in this section.
<Var Path="C:\Program Files\Real\RealServer
\con_r_db"/>
See description earlier in this section.
</List>
<List Name="PlayerContent"> Database information for player authentication.
<Var PluginID="rn-db-flatfile"/> See description earlier in this section.
<Var Path="c:\Program Files\Real
\RealServer\con_p_db"/>
See description earlier in this section.
</List>
</List>

The table below shows the variables required for each data storage method.

Databases PluginID Settings
Data Store Method PluginID Value Associated Variables
Text file. rn-db-flatfile Path (required)
MSQL database. rn-db-msql Name (required) (called Database Name in RealSystem Administrator)
Password (optional)
TableNamePrefix (optional)
Hostname (optional)
User (optional) (called User Name in RealSystem Administrator)
ODBC-compliant databases. rn-db-odbc Name (required) (called Database Name in RealSystem Administrator)
Password (optional)
TableNamePrefix (optional)
User (optional) (called User Name in RealSystem Administrator)
Data store plug-ins created by third-party companies for use with RealServer version 5. rn-db-wrapper PathToDBPlugin (required)
DBName (required) (Called Database Name in RealSystem Administrator)
DBLoginUsername (optional)
DBLoginPassword (optional)

Each data store method requires different variables. The table below shows the significance of each variable.

Data Store Variables
Variable Purpose
<Var DBLoginName="name"/> Name required by database application.
<Var DBLoginPassword=
"
password"/>
Password required by database application.
<Var DBName="path"/> If you are using a text file storage method, path is the location of the main text file storage directory. If you are using any other method, path is the name or location of the plug-in. Consult your plug-in documentation.
<Var HostName="address"/> IP address or DNS name of computer where database is stored.
<Var Name="name"/> Name required by database application.
<Var Password="password"/> Password required by database application.
<Var Path="path"/> Path to text file storage main directory.
<Var PathToDBPlugin="path"/> Location of plug-in
<Var TableNamePrefix="prefix"/> Prefix used to make field names unique, when used with an existing database.
<Var User="name"/> Name required by database application.

Secure Content

Within the FSMount list, one section refers to authentication. It uses three variables: ShortName, MountPoint, and BasePath.

Secure Configuration Elements
Element Description
<List Name="RealSystem Secure Content"> This file system delivers secure content.
<Var ShortName="pn-local"/> Short name of local file system plug-in. See "ShortName Variable"
<Var MountPoint="/secure/"> All authenticated content uses this mount point.
<Var BasePath="C:\Program Files\Real
\RealServer\Secure"/>
Location of content to be authenticated.
</List>

Broadcast Redundancy

This feature is described in Chapter 4, "Sources of Content". The settings shown in the table below appear in their own section of the configuration file.

Encoder Redundancy Configuration Elements
Element Description
<List Name="RealSystem Broadcast Redundancy Plugin"> Name of this list.
<Var Enabled="1"/> Turns on this feature (0 means turn off the feature).
<Var SeparatorCharacter="."/> Delimeter to use in source to indicate the order that RealServer should use each source. Default is a period (.); options are options are a single quote ('), a tilde (~), or a caret (^).
<Var LiveSourceTimeout="2"/> Number of seconds before RealServer switches to the next source if one source becomes unavailable.
<Var Reconnect="Manual"/> Auto: RealServer will automatically switch all clients to the next available source. Manual: users see an error message and must click OK to be switched to the next source.
<Var ErrorMessage="Broadcast timed out;
click the Play button to restart."
Text of the error message that will appear if one source disappears.
</List>

There are also elements in the FSMount section of the configuration file related to this feature.

FSMount Encoder Redundancy Configuration Elements
Element Description
<List Name="FSMount">
...
<List Name="RealSystem Broadcast
Redundancy">
Name of this list within FSMount list.
<Var ShortName="pn-redundant"/> Short name of this list.
<Var MountPoint="/redundant/"/> Mount point to use in links to redundant content.
</List>
...
</List>

Caching

This section enables media caches to request and cache streams on behalf of clients. Caching is described in Chapter 8, "Advanced Features".

To selectively block media caches from requesting your content, add the media cache's IP address to the AccessControl list. In addition to specifying the IP address, indicate the port number to which access should be denied (usually 7802).

To block all media cache requests, set TSEnable to False.

To disable logging of cache requests, set the TSLog variable to 0.

Cache Configuration Elements
Element Description
<Var TSEnable="True"/> Permits media caches to request and then cache content streamed from RealServer (when set to True). (In RealSystem Administrator this is changed with Cache Requests.)
<Var TSPort="7802"/> Port number to which media caches send their requests to RealServer. Do not change this unless you want to refuse requests from media caches. (In RealSystem Administrator this is changed with Cache Port.)
<Var TSLog="True"/> Turns on the log of requests made by media caches. (This is not shown in RealSystem Administrator.)
<Var TSLogPath="C:\Program Files
\Real\RealServer\Logs\cache.log"/>
Path and file name of cache request log. The default location is the Logs directory, and the default name is cache.log. (In RealSystem Administrator this is changed with Cache Log Path.)
<List Name="NoCacheDir"> List of directories whose content is not available to media caches. If RealServer receives a request for material included in the NoCacheDir list, it streams the file directly to the client rather than allowing it to be cached and re-transmitted. As always, RealServer records the transaction in the access log, and reports a download size of 0 bytes in the cached requests log file.
<Var Directory_01="/nocache1/"/> For each directory you want to restrict, create another Directory variable. Each directory must start and end with a forward slash.
<Var Directory_02="/nocache2/"/>
</List>

Encoders

Both encoding lists appear within the FSMount section.

Encoders

Receiving streams from both RealSystem Encoders and earlier versions are explained in Chapter 11, "Unicasting Live Presentations". These variables are used in this list: ShortName, MountPoint, Port, and EncoderRealm.

Unlike other plug-ins, encoder lists cannot have multiple mount points.

RealSystem Encoders Configuration Elements
Element Description
<List Name="RealSystem G2 Encoders">
<Var ShortName="pn-encoder"/> Short name of G2 live encoder plug-in.
<Var MountPoint="/encoder/"/> Portion of URL that indicates the type of request and therefore which file system will handle the request.
<Var Port="4040"/> Port to which encoders will send their live streams. Default value is 4040.
<Var EncoderRealm="EncoderRealm"/> List of authentication protocols and databases. See AuthenticationRealms list.
</List>

Pre-RealSystem G2 Encoders

The list for encoders such as RealEncoder and RealPublisher versions 5 and earlier uses these variables: ShortName, MountPoint, Port, Realm, and Password.

Unlike other plugins, encoder lists cannot have multiple mount points.

Pre-RealSystem G2 Encoders Configuration Elements
Element Description
<List Name="Pre-RealSystem G2 Encoders">
<Var ShortName="pn-live3"> Short name of version 5 and older live encoder plug-in.
<Var MountPoint="/live/"/> Portion of URL that indicates the type of request and therefore which file system will handle the request.
<Var Port="5050"/> Port to which older encoders will send their live streams. Default value is 5050.
<Var Password="letmein"/> Password used by encoders to connect to RealServer.
</List>

File Systems (FSMount)

The FSMount section gives the names of all the configurable file system plug-ins in use. The plug-ins themselves are stored in a directory indicated by the PluginDirectory variable.

All requests of the RealServer are processed by plug-ins. Plug-ins control which features are available. The modular plug-in design means that new features can be programmed and easily substituted for the existing plug-ins. New plug-ins may require different list arrangements and variables; check with the developer of the plug-in for this information.

Additional Information
RealSystem SDK Developer's Guide provides developers with the public interfaces used to extend and customize RealSystem to stream new data-types, create new clients, or to customize RealServer by building a new plug-in.

Several features are listed within the FSMount list, but they are shown in their own sections in this appendix. Those features include:

ShortName Variable

Each list within FSMount gives a short name for the plug-in. The short name is also stored within the plug-in file itself, and RealServer uses this to identify the correct file to use. To add a plug-in to your RealServer, you must know the name to use in the FSMount section; this name is supplied by the developer of the plug-in. The short name is referenced with the ShortName variable in each file systems list.

Plug-In Names
Local File System

The local file system, which handles requests for nearly all streamed media content, is described in Chapter 3, "Overview of RealServer". In RealSystem Administrator, this section is configured on the Mount Points page.

The local file system handles requests for static media clips. It uses the variables ShortName, MountPoint and BasePath.

If clips are stored on more than one disk drive, add multiple local file system lists, each with its own mount point. The list names need to be unique.

Local File System Configuration Elements
Element Description
<List Name="RealSystem Content"> Identifies this list as the main content list.
<Var ShortName="pn-local"/> The short name indicates which file system handles requests directed to this mount point.
<Var MountPoint="/"/> The mount point for your main content will be set to /, which means that no additional information need be specified in URLs for clips to be handled by the local file system.
<Var BasePath="C:\Program Files\Real
\RealServer\Content"/>
BasePath defaults to the Content subdirectory of your RealServer directory, which refers to the Content directory created during installation. All directories that you refer to in URLs will be relative to this directory.
</List>

HTTP Support

Two lists refer to sending and receiving information via HTTP: HTTPDeliverable and HTTPPostable.

HTTPDeliverable

This feature indicates the mount points, virtual directories, or directories whose content can be streamed via HTTP. It is explained in Chapter 14, "Limiting Access to RealServer".

Each Path variable gives the name of a virtual directory whose content can be streamed via HTTP. Be sure that the following mount points are on this list:

HTTPPostable

Like the list described above, the HTTPPostable list enables virtual directories to receive data from clients.

Each Path variable gives the name of a virtual directory whose content can be streamed via HTTP.

The only item on this list is scalable, and that only needs to appear if the multicast feature is set to send client statistics (SendClientStatistics="True").

There is no way of configuring this list directly in RealSystem Administrator; however, if you use RealSystem Administrator to choose Send Client Statistics, RealSystem Administrator will create the list automatically.

HTTP Postable Configuration Elements
Element Description
<List Name="HTTPPostable">
<Var Path_0="/scalable"/> Each Path variable gives the name of a mount point, directory or virtual directory to which clients can send data via HTTP.

</List>

ISP Hosting

The ISPHosting list contains two other lists: TranslationMounts (which contains one or more lists) and UserLists. Variables are MountPoint, UserPath, and File. ISP Hosting settings are described in Chapter 17, "ISP Hosting".

ISP Hosting scenarios frequently require special base paths, so you will need to create additional mount points in the FSMount list. Examples are shown in this section.

Four items control where RealServer looks for hosted media:

  1. In the user list file, /path/ groups the users. In the configuration file, UserPath has the same value as /path/, or with a portion of it.

  2. Within the TranslationMounts list (of the ISPHosting list), UserPath is associated with the MountPoint variable.

  3. The MountPoint variable of the TranslationMounts list matches a MountPoint variable in the FSMount section of the configuration file.

  4. The MountPoint variable of the FSMount list is associated with a BasePath variable. The directory shown by BasePath is where user directories are located.

Through this path of associated elements, the value for /path/ in the user list file is ultimately associated with a base path.

ISP Hosting Configuration Elements
Element Description
<List Name="ISPHosting">
<List Name="TranslationMounts"> The translation mounts section.
<List Name="ISP Content (Washington
users)">
Description of this sublist.
<Var MountPoint="/wa_isp/"/> Mount point associated with UserPath.
<Var UserPath="/wa/"/> UserPath is the same value as /path/ in the user list file.
</List>
<List Name="ISP Content (Oregon users)">
<Var MountPoint="/or/"/>
<Var UserPath="/or/"/>
</List>
See description earlier in this section.
. <List Name="ISP Content (Idaho users)">
<Var MountPoint="/id_isp/"/>
<Var UserPath="/id/"/>
</List>
</List>
See description earlier in this section.
<List Name="UserLists">
<Var File1="c:\accounts\commercial
\local.txt"/>
Location of user list file. RealServer loads the user lists in the order they appear in the configuration file; if the same user name appears in more than one list, RealServer uses the settings in the last user list.
<Var File2="c:\accounts\commercial
\remote."/>
<Var File3="c:\accounts\personal
\local.txt"/>
</List>
</List>

It is optional, but common, to create special mount points in the FSMount section.

ISP Hosting Optional FSMount Configuration Elements
Element Description
<List Name="FSMount">
...other mount points...
<List Name="ISP Mount Points--Washington">
<Var ShortName="pn-local"/>
<Var MountPoint="/wa/"/>
<Var BasePath="C:\UserAccounts"/>
</List>
These sections map the /wa/, /or/, and /id/ mount point to the C:\UserAccounts directories.
<List Name="ISP Mount Points--Oregon">
<Var ShortName="pn-local"/>
<Var MountPoint="/or/"/>
<Var BasePath="C:\UserAccounts"/>
</List>
<List Name="ISP Mount Points--Idaho">
<Var ShortName="pn-local"/>
<Var MountPoint="/id/"/>
<Var BasePath="C:\UserAccounts"/>
</List>
...other mount points...
</List>

How RealServer Looks for Users' Content (Account-Based Hosting)

RealServer uses a combination of the URL, user list file, and the configuration file to determine where to look for user files.

This section describes how RealServer processes all requests when ISP Hosting is in use:

  1. When it receives a request for content, RealServer looks at the account name after the tilde (~).

  2. It looks through the user list for a matching account information.

    If your user list contains individual account names, RealServer searches these to find a match. If it doesn't find an exact match, it uses the generic account information.

  3. Once it finds a match (or the generic information), it looks at the /path/ value. The /path/ information matches the UserPath variable in the configuration file. This is not a physical path; it is used only for the next step, and serves as a way to group user account names logically.

  4. Using the /path/ information, RealServer goes to the ISPHosting list of the configuration file, where it looks within the TranslationMounts list for a matching UserPath. Once it finds a match, RealServer records the MountPoint located within the same list. This translates the logical path to a file system.

  5. Next, RealServer looks in the FSMount list for a file system whose mount point matches the MountPoint from the ISPHosting list. Once it finds the correct mount point, RealServer notes the associated BasePath.

  6. The media will be in a directory relative to BasePath.

Typically, users' content is mapped to a special ISP hosting mount point and base path. User directories are located under the base path.

Example

In the following example, an ISP in the northwest United States has divided its users by geographical location.

Example-User List File

The user list file groups the users in the WA and OR groups, and instructs RealServer to look for all other users in the ID path.

UserList [

Sample URLS:

{chris, /wa/canderson/, 0, 5},

rtsp://server.company.com/~chris/file.rm

{lee, /or/ladams/, 0, 5},

rtsp://server.company.com/~lee/file.rm

{pat, /wa/pbrown/, 0, 5},

rtsp://server.company.com/~pat/file.rm

{sandy, /or/schu/, 0, 5},

rtsp://server.company.com/~sandy/file.rm

{~*, /id/, 0, 5} rtsp://server.company.com/~username/file.rm
]

Example-ISPHosting Section

The ISPHosting section of the configuration file maps the UserPaths to mount points. In this example, each list within the TranslationMounts section maps part of each user path to its own mount point.

<List Name="ISPHosting">
<List Name="TranslationMounts">
<List Name="Washington Users">
<Var MountPoint="/wa_isp/"/>
<Var UserPath="/wa/"/>
</List>
<List Name="Oregon Users">
<Var MountPoint="/or_isp/"/>
<Var UserPath="/or/"/>
</List>
<List Name="Idaho Users">
<Var MountPoint="/id_isp/"/>
<Var UserPath="/id/"/>
</List>
</List>
<List Name="UserLists">
<Var File="c:\users\userlist1.txt"/>
</List>
</List>

Example-FSMount Section

The FSMount section of this example uses the same file system, pn-local, for each group of ISP users.


<List Name="FSMount">
...other mount points...
<List Name="ISP Content (Washington users)">
<Var ShortName="pn-local"/>
<Var MountPoint="/wa_isp/"/>
<Var BasePath="c:\home\washington"/>
</List>
<List Name="ISP Content (Oregon users)">
<Var ShortName="pn-local"/>
<Var MountPoint="/or_isp/"/>
<Var BasePath="c:\home\oregon"/>
</List>
<List Name="ISP Content (Idaho users)">
<Var ShortName="pn-local"/>
<Var MountPoint="/id_isp/"/>
<Var BasePath="c:\home\idaho"/>
</List>
...other mount points...
</List>

Example-User Directories

User directories are stored under directories according to the state where the accounts are based:


C:\home\washington\canderson
C:\home\washington\pbrown
C:\home\oregon\ladams
C:\home\oregon\schu
C:\home\idaho\alex
C:\home\idaho\sam
C:\home\idaho\tracy

Note
Notice that the actual directories where the users' content is stored is different from the /path/ shown in the user list file. The /path/ information is actually a method of grouping users.

How RealServer Looks for Users' Content (Dedicated Hosting)

On RealServers dedicated to ISP hosting, the process for locating files is slightly different:

  1. When it receives a request for content, RealServer looks at the directories in the URL. It uses the number of directories indicated by number in the user list file.

  2. Using the /path/ information in the user list, RealServer goes to the ISPHosting list of the configuration file, where it looks within the TranslationMounts list for a matching UserPath. Once it finds a match (it looks for the longest possible match), RealServer records the MountPoint located within the same list. This translates the logical path to a file system.

  3. Next, RealServer looks in the FSMount list for a file system whose mount point matches the MountPoint from the ISPHosting list. Once it finds the correct mount point, RealServer notes the associated BasePath.

  4. The media will be in a directory relative to BasePath.

Typically, users' content is mapped to a special ISP hosting mount point and base path. User directories are located under the base path.

IP Binding

The ability to reserve specific addresses for RealServer's use is explained in Chapter 8, "Advanced Features". This list uses variables numbered sequentially: Address_01, Address_02, and so on. Use one for each IP address you want to set aside for RealServer. Use the RealServer's IP address or DNS name for each variable; however, the IP address allows RealServer to be more efficient.

RealServer will bind to the specified addresses only; it will not bind to localhost.

If you don't use any values for the variables in the IPBindings list, RealServer binds to the host IP address and localhost. It does not bind to any others.

IP Bindings List Configuration Elements
Element Description
<List Name="IPBindings">
<Var Address_01="0.0.0.0"/> Each variable gives an address to reserve for use by RealServer. To reserve all addresses, set the address variable to 0.0.0.0 and remove all other address variables from the list. Use the IP address or DNS name, but RealServer will be more efficient if you use the IP address.

</List>

Distributed Licensing

This feature is best configured with RealSystem Administrator; consult "Distributed Licensing".

Live Archiving

The live archive feature is described in Chapter 11, "Unicasting Live Presentations".

For every virtual directory of live streams that you want to archive, create a list. The list must have the same name as the virtual directory. To archive all streams that arrive at the main content directory, name the list with an asterisk (*).

When live archiving is enabled, RealServer examines all arriving live streams, and compares the names of the streams with the list names in the configuration file. If it contains a list whose name matches the virtual path name of the incoming live stream, RealServer will archive the file. If no matching list name is found, RealServer does not archive the file. Files are archived in locations specified by TargetDirectory.

Each list must include either TargetDirectory (to indicate where to store the archived streams) or NoArchive (to indicate that the streams should not be archived); optional variables are BandwidthNegotiation, FileSize, and FileTime.

Live Archiving Configuration Elements
Element Description
<List Name="LiveArchive">
<List Name="*"> An asterisk for a list name indicates the main content directory.
<Var TargetDirectory="/Archive"/> The path where RealServer will create the archive files. The default is the Archive subdirectory of the Content directory. (This is called "Destination Path" in RealSystem Administrator.)
<Var FileSize="4"/> Creates archive files of live streams by their size. Given in megabytes.
If you give values to both FileTime and FileSize, RealServer will use the first, or lower, limit reached. To save entire broadcasts without limiting the file size, omit both FileTime and FileSize.
<Var BandwidthNegotiation="True"/> Indicates that RealSystem 5-style bandwidth negotiation is in use.
</List>
<List Name="concerts">
<Var TargetDirectory="/Archive"/> See description earlier in this section.
<Var FileTime=1h"/> Creates archive files of live broadcasts in segments of this length. Format is XdYhZm where X is the number of days, Y is the number of hours, and Z is the number of minutes. You must enter them in dhm order. See also FileSize. RealServer requires that the units be in the dhm order, so if you specify a subset, be sure to use the correct order. See "Example FileTime Values" table below.
</List>
<List Name="secure">
<Var NoArchive="True"/> When set to True, disables archiving of live files for the given directory.
</List>

</List>

The table below shows sample values for FileTime.

Example FileTime Values
FileTime Value Resulting File Contents
30m Thirty-minutes
1h One-hour
1h30m One-and-a-half hours
1d1m 24 hours and one minute
1d1h 25 hours (one day plus one hour)
23h59m 23 hours and 59 minutes
1d1h1m 25 hours and one minute

Logging

Logging and reporting features are described in Chapter 19, "Reporting RealServer Activity". Variables which control the locations of the access and error log files are described in "Paths" of this chapter .

Logging Configuration Elements
Element Description
Access Log Variables
<Var LoggingStyle="3"/> Determines how much data about clips served is gathered in the access log.

<Var StatsMask="0"/>
Determines how much data about clients is gathered in the access log.

<Var DisableClientGUID="0"/>
Collects unique client identifiers ("GUIDs"). When set to 1, ignores all client GUIDs and uses 00000000-0000-0000-0000-000000000000 instead. Refer to "Omitting Client Identifiers".

<Var LogRollFrequency="4W"/>
Creates a new access log for each period specified. The period is indicated in the format xD, xW, or xM, where x is a number. See also LogRollSize. For example, 4D will keep 4 days of information in the log file. Name of the rolled access log is based on the filename given by LogPath. For an explanation of the naming convention for rolled log files, see "Rolled Log File Format".

<Var LogRollSize="5"/>
Creates a new access log when the indicated file size is reached, given in megabytes. See also LogRollFrequency. If you include both LogRollFrequency and LogRollSize, RealServer uses the variable with the limit reached first.
Error Log Variables

<Var ErrorLogRollFrequency="1W"/>
Creates a new error log for each period specified. The period is indicated in the format xD, xW, or xM, where x is a number. See also LogRollSize. For example, 4D will keep 4 days of information in the log file. Name of the rolled access log is based on the filename given by ErrorLogPath. For an explanation of the naming convention for rolled log files, see "Rolled Log File Format".

<Var ErrorLogRollSize="3"/>
Creates a new error log when the indicated file size is reached, given in megabytes. See also ErrorLogRollFrequency. If you include both ErrorLogRollFrequency and ErrorLogRollSize, RealServer uses the variable with the limit reached first.

Disable access log file rolling by changing the LogRollFrequency and LogRollSize variables to 0. Disable error log file rolling by changing the ErrorLogRollFrequency and ErrorLogRollSize variables to 0.

MIME Types

Setting up RealServer to send correct MIME type information with clips is described in Chapter 6, "Starting and Stopping RealServer".

MIME Types Configuration Elements
Element
<List Name="MimeTypes">
<List Name="audio/x-pn-realaudio">
<Var Extension_02="ram"/>
</List>
<List Name="image/gif">
<Var Extension_01="gif"/>
</List>
<List Name="image/jpg">
<Var Extension_01="jpg"/>
<Var Extension_02="jpeg"/>
</List>
<List Name="text/html">
<Var Extension_01="html"/>
<Var Extension_02="htm"/>
</List>
</List>

Multicasting

Two methods of multicasting are available: back-channel and scalable. Multicasting methods are described in Chapter 13, "Multicasting Live Presentations". Both methods can send SAP information, described in the next section.

SAP Information

The SAP list gives information about the Session Announcement Protocol files that can be sent to programs configured to read them. See"Publicizing Your Multicasts" for information.

In addition to the information on this list, you will also indicate whether to send SAP files in each scalable multicast list, and in the back-channel multicast list. Three variables appear in the SAP list: ListenAnnouncement, SendAnnouncementEnabled, and HostAddress.

SAP Configuration Elements
Element Description
<List Name="SAP">
<Var ListenAnnouncement="True"/> Indicates whether RealServer should listen for other SAP files.
<Var SendAnnouncementEnabled="True"/> Indicates whether to send the SAP file with multicasts.
<Var HostAddress="address"/> Address of the host RealServer, where the multicasts originate.
</List>

Back-Channel Multicasting

Back-channel multicasting is described in "Back-Channel Multicasting" .

Settings used with this list are Enabled, AnnounceSAP, AddressRange, DeliveryOnly, PNAPort, RTSPPort, Resend, and TTL.

Back-Channel Multicasting Configuration Elements
Element Description
<List Name="Multicast"> Back-channel multicast section.
<Var Enabled="True"/> True indicates that back-channel multicast is available.
<Var AnnounceSAP="True"/> Indicates whether to send SAP files.
<Var PNAPort="7070"/> Client port number to which RealServer will direct its streams. Default value is 7070.
<Var RTSPPort="554"/> Client port number to which RealServer will direct its streams. Default value is 554.
<Var TTL="16"/> Time To Live for multicast packets travelling over the network.
<Var Resend="True"/> Allows or denies requests from clients for resends of missing UDP packets.
<Var AddressRange="address-address"/> Range of addresses to which you want to send streams, in the form of address-address. RealServer uses the first available address in this range. If you are using other types of multicast, be sure that the address ranges are different and do not overlap. If your multicast streams are referenced in SMIL files, you will need one address for each stream.
<Var DeliveryOnly="False"/> Requires clients listed in ControlList to receive only multicast transmissions from RealServer. When DeliveryOnly is False, clients on ControlList can receive both multicasts and unicasts. Default value is False. (In RealSystem Administrator this is called "Multicast Delivery Only")
<List Name="ControlList"> The ControlList list gives the addresses of clients required to receive multicast transmissions. (Called "Client Access List" in RealSystem Administrator.)
<List Name="100"> Rule number for this list. For information on choosing rule numbers, refer to Access Control documentation.
<Var Allow="172.16.2.24:255.0.0.0"/> Address and netmask, separated by a colon, of clients allowed to receive multicast transmissions. Uses same format as From variable in AccessControl list. There must always be at least one entry in ControlList. The default value for Allow is Any, which allows all clients to receive multicast.
</List>
<List Name="200">
<Var Allow="201.34.23.0:255.255.255.254/>
</List>
</List>
</List>

Scalable Multicasting

Unlike back-channel multicasting settings, scalable multicasting settings are located within the FSMount list. Scalable multicasting is described in "Scalable Multicasting" .

Located within the FSMount list, scalable multicasting uses the following variables:

  • AddressRange

  • MountPoint

  • ShortName

  • AnnounceSAP

  • Timeout

  • TTL

  • Enabled

  • PortRange

  • VirtualPath

Optional variables include ReuseAddress, AlternateURL, ShiftToUnicast, SendClientStatistics, WebServerAddress, WebServerPort, and WebServerCGIPath.

Create one list within the Sources list for every virtual path you want to make available for scalable multicasting.

Be sure to add the mount point to the HTTPDeliverable list.

Scalable Multicasting Configuration Elements
Element Description
<List Name="Scalable Multicast">
<Var ShortName="pn-scalable"/> Gives the short name of the plug-in file.
<Var MountPoint="/scalable/"/> Mount point used in all URLs for scalable multicasts.
<List Name="Sources"/> Each list within this list represents a virtual directory that is to be streamed via scalable multicast.
<List Name="Concerts"> Name of this list.
<Var VirtualPath="French"/> Live streams encoded to the French virtual directory will be available via scalable multicast. To indicate that all live sources should be available for scalable multicast, use an asterisk (*) for the virtual path name.
<Var Enabled="True"/> Enables scalable multicasting for this virtual directory.
<Var ReuseAddress="True"/> Instructs RealServer to send both the audio and video streams for a given bit rate over the same address.
<Var AddressRange=
"231.1.1.1-231.1.1.10"/>
Range of addresses to which you want to send streams. RealServer uses the first available address in this range.
<Var PortRange="7300-7321"/> Range of ports to which RealServer can send a multicast stream.
<Var AnnounceSAP="True"/> Indicates whether to create and send an SAP file for this scalable multicast.
<Var TTL="16"/> Time To Live for multicast packets travelling over the network.
<Var Timeout="60"> Number of seconds a client will wait for multicast packets before it stops or uses the AlternateURL address.
</List>
<List Name="Live Concerts"> Name of this list.
<Var VirtualPath="Liveconcerts"/> See description earlier in this section.
<Var Enabled="True"/> See description earlier in this section.
<Var AddressRange=
"231.1.1.1-231.1.1.10"/>
See description earlier in this section.
<Var PortRange="7300-7320"/> See description earlier in this section.
<Var TTL="16"/> See description earlier in this section.
<Var Timeout="60"> See description earlier in this section.
<Var ShiftToUnicast="True"/> Allows clients that cannot receive multicast to receive the presentation via unicast. The URL can refer to a unicast version of the stream, or to a Web page containing information about the broadcast.
<Var AlternateURL="rtsp://myserver.com
:554/encoder/live.rm"/>
Alternate URL to which client will switch if multicast data is not received.
<Var SendClientStatistics="True"/> Clients are instructed to send their connection statistics at the end of a scalable multicast or when the user stops the presentation.
<Var WebServerAddress=192.12.12.1"/> Address of Web server or RealServer which will receive client statistics. Required when SendClientStatistics is set to True, even if you indicate that statistics should be sent to the RealServer machine.
<Var WebServerPort="9090"/> Port on Web server or HTTPPort on RealServer which will receive client statistics. Required when SendClientStatistics is set to True, even if you indicate that statistics should be sent to the RealServer machine.
<Var WebServerCGIPath="cgi-bin/stats"/> Location of CGI script on Web server which will collect client statistics. Optional.
</List>
</List>
</List>

Passwords

MonitorPassword is described in Chapter 18, "Monitoring RealServer Activity".

Passwords Configuration Element
Element Description
<Var MonitorPassword="letmein"/> Password used by Java Monitor in connecting to RealServer.

Paths

LogPath and ErrorLogPath are described in Chapter 19, "Reporting RealServer Activity". PluginDirectory is described on Chapter 7, "Customizing RealServer Features". LicenseDirectory is given on Chapter 6, "Starting and Stopping RealServer".

Windows Variables

Path variables, along with typical paths used in Windows and Windows NT, are shown here.

Paths Configuration Elements in Windows and Windows NT
Element Description
<Var LogPath="C:\Program Files\Real
\RealServer\Logs\rmaccess.log"/>
LogPath indicates where and with what name the access log file will be stored. If omitted, RealServer places rmaccess.log in the Logs directory.
<Var ErrorLogPath="C:\Program Files
\Real\RealServer\Logs\rmerror.log"/>
ErrorLogPath gives the path and name of the error log file. If this setting is omitted, RealServer places rmerror.log in the Logs directory.
<Var PluginDirectory="C:\Program Files
\Real\RealServer\Plugins"/>
Shows where the plug-in files are stored.
<Var SupportPluginDirectory=
"C:\Program Files\Real\RealServer\Lib"/>
Shows location of the Lib directory, where files used by G2SLTA, as well as encnet.dll (Windows) and encnet.so.6.0 (UNIX) are stored.
<Var LicenseDirectory="C:\Program File
\Real\RealServer\License"/>
Gives the location of the license files.

UNIX Variables

One additional setting is found on RealServer running on a UNIX system: PidPath. See "Process ID (PID)".

Paths Configuration Elements in UNIX
Element Description
<Var LogPath="/usr/bin/RealServer/Logs
/rmaccess.log"/>
LogPath indicates where and with what name the access log file will be stored. If omitted, RealServer places rmaccess.log in the Logs directory.
<Var ErrorLogPath="/usr/bin/RealServer
/Logs/rmerror.log"/>
ErrorLogPath gives the path and name of the error log file. If this setting is omitted, RealServer places rmerror.log in the Logs directory.
<Var PluginDirectory="/usr/bin/RealServer
/Plugins"/>
Shows where the plug-in files are stored.
<Var SupportPluginDirectory="/usr/bin
/RealServer/Lib"/
Shows location of the Lib directory, where files used by G2SLTA are stored.
<Var LicenseDirectory="/usr/bin/RealServer
/License"/>
Gives the location of the license files.
<Var PidPath="/usr/bin/RealServer/Logs
/rmserver.pid"/>
In UNIX systems, the location of the process id file.

Ports

Port settings for RTSPPort, PNAPort, and HTTPPort are described in Chapter 7, "Customizing RealServer Features". MonitorPort is described in Chapter 18, "Monitoring RealServer Activity".

Ports Configuration Elements
Element Description
<Var RTSPPort="554"/> Where RealServer listens for RTSP requests. Default value is 554.

<Var PNAPort="7070"/>
Where RealServer listens for PNA requests. Default value is 7070.

<Var HTTPPort="8080"/>
Where RealServer listens for HTTP requests. Default value is 80 or 8080 if port 80 was unavailable during installation.

<Var MonitorPort="9090"/>
The port which monitors (such as Java Monitor) connect to RealServer. Default value is 9090.

<Var AdminPort="7845"/>
Port number for RealSystem Administrator connection. No default value; the port number is given a random number during Setup.

Ramgen

Ramgen is described in"Ram Files and Ramgen" and in RealSystem Production Guide. There are only two variables associated with Ramgen: ShortName and MountPoint.

This list is located within the FSMount section.

Ramgen Configuration Elements
Element Description
<List Name="RAM File Generator">
<Var ShortName="pn-ramgen"/> The short name of the ram file generator is pn-ramgen.
<Var MountPoint="/ramgen/"/> The default mount point is /ramgen/.

</List>

RealSystem Administrator

Two file systems work together to operate RealSystem Administrator: the local file system and the administration file system.

The administration file system accepts the initial URL for RealSystem Administrator. It requests the HTML files from the local file system. Once the local file system delivers the HTML files, the administration file system looks up your RealServer's values and displays them at the appropriate points in RealSystem Administrator.

Three variables are used for the RealAdministrator list: ShortName, MountPoint, and BasePath.

Five variables are use in the RealAdministrator_Files list: ShortName, MountPoint, Authorized_User_Group, Authentication, and Realm.

This tool is described in Chapter 7, "Customizing RealServer Features".

RealSystem Administrator Configuration Elements
Element Description
<!-- Local File System; HTML --> Location and files used by RealSystem Administrator.
<List Name="RealSystem Administrator HTML">
<Var ShortName="pn-local"/> RealSystem Administrator uses the local file system.
<Var MountPoint="/admin/html/"/> Mount point, used when RealAdministrator_Files list requests files from this plug-in. The default value is /admin/html/. If you change this, be sure to change the RealAdministrator_Files list's BaseMountPoint to match.
<Var BasePath="C:\Program Files\Real
\RealServer\RealAdministrator"/>
Location of the RealSystem Administrator files.
</List>
<!-- Local File System; DOCS--> The HTML version of this guide is served with this information.
<List Name="RealSystem Administrator DOCS">
<Var ShortName="pn-local"/> RealSystem Administrator uses the local file system.
<Var MountPoint="/admin/Docs/"/> Mount point used for files in the guide.
<Var BasePath="C:\Program Files\Real
\RealServer\RealAdministrator\Docs"/>
Main location of the HTML guide files.
</List>
<!-- Local File System; JAVAMONITOR --> Information and file locations for Java Monitor files.
<List Name="RealSystem Administrator JAVAMONITOR">
<Var ShortName="pn-local"/> Java Monitor uses the local file system.
<Var MountPoint="/admin/JavaMonitor/"/> Mount point used for referencing the monitor.
<Var BasePath="C:\Program Files\Real
\RealServer\RealAdministrator\JavaMonitor"/>
Main location of the Java Monitor files.
</List>
<!-- Local File System; IMAGES --> Information and file locations for graphics used by RealSystem Administrator.
<List Name="RealSystem Administrator IMAGES">
<Var ShortName="pn-local"/> RealSystem Administrator uses the local file system.
<Var MountPoint="/admin/images/"/> Mount point used by RealSystem Administrator in linking to graphics.
<Var BasePath="C:\Program Files\Real
\RealServer\RealAdministrator\images"/>
Main location of graphics used in RealSystem Administrator.
</List>
<!-- XML Tag Handler File System -->
<List Name="RealSystem Administrator SSI"> Server-side include handler; creates HTML pages in RealSystem Administrator.
<Var ShortName="pn-xmltag"/>
<Var MountPoint="/admin/includes/"/> Mount point used in requests
<Var BaseMountPoint="/admin/html/"/> Mount point of RealSystem Administrator.
<List Name="TagHandlers"> List of plugins used for interpreting XML tags.
<Var h1="pn-includer"/>
<Var h2="pn-vsrctaghdlr"/>
</List>
</List>
<!-- Admin File System -->
<List Name="RealAdministrator_Files">
<Var ShortName="pn-admin"> RealSystem Administrator uses the pn-admin plug-in.
<Var MountPoint="/admin/"/> The default value for MountPoint is /admin/. If you change this, you will need to type a new URL to connect to RealSystem Administrator.
<Var BaseMountPoint="/admin/includes/"/> This special form of mount point reflects the mount point of the RealAdministrator list.
<Var Realm="company.AdminRealm"/> The Realm variable identifies which AuthenticationRealm settings will be used with requests sent to the RealSystem Administrator mount point.
</List>

Splitting

Chapter 12, "Splitting Live Presentations" describes this feature.

In addition to the special settings required on the transmitter and on the receiver, splitting information is located in the FSMount list.

All the settings shown are required; only MountPoint can be changed by the user.

FSMount Splitting Configuration Elements
Element Description
<List Name="FSMount">
...
<List Name="RealSystem Broadcast Distribution"> FSMount entry for splitting.
<Var ShortName="pn-broadcast-receiver-fs"/> Short name of this plug-in.
<Var MountPoint="/broadcast/"> Mount point to use in broadcasts.
</List>
...
</List>

Transmitter Settings

Settings necessary for the transmitter to send its live streams to receivers are shown below. The following variables are optional on the transmitter:

  • AcquisitionDataInterval

  • RedundancySendInterval

  • FECLevel

  • ResendSupported

  • Protocol

  • TTL

Splitting Configuration Elements-Transmitter Settings
Element Description
<List Name="BroadcastDistribution">
<Var SourceName="example"/> Name of this transmitter. Set to the host name during Setup.
<List Name="Destinations"> List of receivers.
<List Name="Destinations_0"> First rule for a broadcast stream.
<Var AcquisitionDataInterval="30"/> Frequency, in seconds, that the transmitter sends metadata information. The range is 0 to 60.
<Var PathPrefix="/encoder/"/> Virtual path name of this broadcast stream. The default value is /encoder/.
<Var Address="australia.example.com"/> Name of receiver for this broadcast stream.
<Var Protocol="udp/unicast"/> Protocol to use in transmitting streams. Refer to RealSystem Administrator for a list of options. Both the transmitter and the receiver must use the same values.
<Var FECLevel="10"/> Forward Error Correction rate-the percent of corrective packets sent. A higher number results in better quality, but consumes more network bandwidth. The default value for use over the Internet is 20. If you're using splitting within a network, you can set this value to 0, since you are unlikely to need error correction. Range of values is 0 to 100.
<Var RedundancySendInterval="1000"/> Interval in milliseconds that elapses before repeat packets are sent by the transmitter to the receiver. In use only when FECLevel is set to 100. This variable is not added by RealSystem Administrator; it must be added by hand.
<Var ResendSupported="0"/> Whether receivers' resend requests are honored. 0 means they are ignored; 1 indicates the transmitter will resend packets. (In RealSystem Administrator, this is shown as Honor Resend Requests.) Default is 0.
<Var SessionTimeout="30000"/> Time (in milliseconds) that the receiver waits before cancelling a connection with the transmitter in which no data is received. Default is 30000. This variable is not added by RealSystem Administrator; it must be added by hand.
<Var RelayMode="0"/> Permits transmitters and receivers to be configured in a chain. Default value is 0, or False; change to 1 to enable chaining. Refer to "Chaining Receivers".
<List Name="Security"> Type of security in use. If security is in use here, the receiver must use matching settings.
<Var Type="basic"/> Options are None and Basic. Choosing Basic means you elect to encrypt the transmission between transmitter and receiver.
<Var Password="letmein"/> User-defined password to use when the security Type is set to Basic.
</List>
</List>
<List Name="Pull Settings"> Pull splitting feature.
<List Name="PullSource1"> Name for this rule.
<List Name="Security"> Security settings for pull splitting; these may be different than those used in regular splitting (shown above).
<Var Type="basic"/> See description earlier in this section.
<Var Password="letmein"/> See description earlier in this section.
</List>
<Var ListenPort="2030"/> Port number on which this transmitter should listen for resend requests. If you leave this field blank, RealServer randomly sets the value. Type here to override RealServer's setting.
<Var PathPrefix="/encoder/"/>
<Var AcquisitionDataInterval="30"/> Frequency, in seconds, that the transmitter sends metadata information. The range is 0 to 60.
</List>
</List>
</List>
</List>

Receiver Settings

Settings necessary for the receiver are shown below. Optional settings are:

  • MulticastAddress

  • ResendSupported

  • Protocol

  • SessionTimeout

If pull splitting is in use, these settings are optional:

  • AcquisitionDataInterval

  • UseTCPForPullBackchannel

  • FECLevel

Splitting Configuration Elements-Receiver Settings
Element Description
<List Name="BroadcastReceiver">
<List Name="Receivers">
<List Name="Transmitter1">
<Var OriginSpec="japan.example.com"/> Address or host name of transmitter.
<Var PortRange="30000-30050"/> Port range on receiver where RealServer listens for the broadcast. Must match port range used on transmitter.
<Var MulticastAddress="address"/> Class D address for receiver to join the broadcast. Used only if Protocol is set to udp/multicast.
<Var SAPTransmissionEnabled="1"/> Indicates that SAP files may be used for multicast streams. Used only if Protocol is set to udp/multicast. Refer to "Sending SAP Information with Your Multicasts". This variable is not added by RealSystem Administrator; it must be added by hand.
<Var TTL="1"/> Time-to-live for multicast packets. Used only if Protocol is set to udp/multicast. For a list of values, refer to the "Time to Live (TTL) Values" table.
<Var Protocol="udp/unicast"/> Protocol; must match the setting on the transmitter. If omitted, RealServer uses udp/unicast. Refer to RealSystem Administrator for a list of options.
<Var ResendSupported="0"/> Whether to make resend requests to the receiver. 1 means to make requests. Produces higher quality but requires more overhead.
<Var SessionTimeout="30000"/> Duration of time (in milliseconds) the receiver waits to stop the session with the transmitter after no packets are received.
<Var PushBufferingTime="6"/> Interval (in seconds) that the receiver maintains a packet buffer before serving it to clients. This variable is not added by RealSystem Administrator; it must be added by hand.
<List Name="Security"> These settings must match those used on transmitter.
<Var Type="basic"/>
<Var Password="letmein"/>
</List>
<Var PullSplitEnabled="1"/> Pull splitting is in use for this rule. Default value is 0 (off).
<Var UseTCPForPullBackchannel="0"/> When set to 1, creates a back channel for initiation and resend requests. Used only when Protocol is set to udp/unicast or udp/multicast. The default value is 0. This variable is not added by RealSystem Administrator; it must be added by hand.
<Var PathPrefix="/pull/"/> Path that indicates to RealServer that this is a pull splitting request. It does not need to be unique for this broadcast.
<Var FECLevel="20"/> Forward Error Correction rate-the percent of corrective packets sent. A higher number results in better quality, but consumes more network bandwidth. The default value for use over the Internet is 20. If you're using splitting within a network, you can set this value to 0, since you are unlikely to need error correction. Range of values is 0 to 100.
<Var AcquisitionDataInterval="30"/> Frequency, in seconds, that the transmitter sends metadata information. The range is 0 to 60.
</List>
</List>

UNIX-Only Settings

These settings are also described in "UNIX-Only Features".

UNIX-Only Configuration Elements
Element Description
<Var Group="users"/> Group name under which RealServer runs. The group name must already exist on the computer on which RealServer is running; otherwise, RealServer will not start. If you do not specify a group name, this variable defaults to the group name of the user who first starts RealServer. The default value is %-1.
<Var User="canderson"/> User name under which RealServer runs. The user name must exist on the computer on which RealServer is running; otherwise, RealServer will not start. If you don't specify a user name during Setup, the user name defaults to the user name of the user who first logs in and starts RealServer. The default value is %-1.

View Source

The view source feature is described in "Displaying Source Code for SMIL Files and Media Clips".

The following variables are in use for view source:

  • ViewSourceLongName

  • Path

  • Mount

  • AllowViewSource

  • HidePaths

In addition, the view source feature adds settings to other lists within the configuration file. It adds a plug-in listing to the Real System Administrator SSI list. Also, it requires an entry in the HTTPDeliverable list.

View Source Configuration Elements
Element Description
<!-- V I E W S O U R C E -->
<List Name="ViewSourceConfiguration">
<Var ViewSourceLongName="View Source Tag
FileSystem"/>
<List Name="/"> Mount point or virtual path to which the following settings apply. Create one such sublist for each mount point or path.
<Var AllowViewSource="1"/> Enables the view source feature (when set to 1) or disables the feature (when set to 0).
<Var HidePaths="1"/> Replaces paths with ellipses (when set to 1). Displays the entire path (when set to 0).
</List>
</List>

Settings in the Content Browsing section refer to the content browsing feature of view source.

Variables are:

The following entries appear within the FSMount list.

View Source FSMount Configuration Elements
<List Name="View Source File System">
<Var ShortName="pn-vsrcfsys"/> Plug-in short name.
<Var MountPoint="/vsrcfsys/"/> Mount point used (within RealServer) for view source requests.
</List>
<!-- View Source Tag File System; Source Insertion -->
<List Name="View Source Tag FileSystem">
<Var ShortName="pn-xmltag"/> Plug-in used by tag handler.
<Var MountPoint="/viewsource/"/> Mount point for view source requests.
<Var BaseMountPoint="/vsrcfsys/"/> Original mount point for view source requests.
<List Name="TagHandlers"> Plug-in used by tag handler.
<List Name="ViewSource Tag Handler">
<Var ShortName="pn-vsrctaghdlr"/>
</List>
</List>
</List>

Features Available Only Through Direct Editing

Some of the more specialized lists and variables are only configurable by editing the configuration file directly; they cannot be changed via RealSystem Administrator.

These elements are:


Copyright © 2000 RealNetworks
For information on RealNetworks' technical support, click here.
Comments on this document? Click here.
This file last updated on 11/28/00 at 17:35:17.
previous