previous next

Chapter 2: Overview

Welcome to RealServer, the streaming media solution! RealServer streams virtually any datatype, including audio, video, and images. RealServer allows you to grow as your needs and use expand. This chapter shows how you can put RealServer to work for you.

How RealServer Works

RealServer streams both live and on-demand material, through unicasting or multicasting. It works with Web servers to stream to clients over networks and the Internet. Some RealServer features can interact with third-party products to create specialized functions.

This guide is intended for the technical system administrator who will manage RealServer and its activities, but not necessarily create the material to be streamed. Information on creating content is available in a companion book, RealSystem G2 Production Guide.

IS professionals, server administrators, Web masters and others providing Web pages for the Internet and intranet may also find this document useful.

The following diagram shows an overview how RealSystem components work together.

Overview

  1. A visitor browses a Web page and clicks a link to a streaming media presentation served by RealServer.

  2. RealServer creates a small metafile and sends it to the visitor's Web browser.

  3. The browser downloads the metafile and sends it to the visitor's RealPlayer. The metafile, called a Ram file, contains the address (or addresses) of the media presentation mentioned in the link.

  4. RealPlayer reads the link in the metafile and requests the presentation directly from RealServer.

  5. RealServer streams the files in the presentation to the RealPlayer.

    Finally, RealPlayer plays the presentation.

Communication Between RealServer and RealPlayer

As the user clicks a link that points to a RealServer presentation, RealPlayer opens a two-way connection with RealServer. This connection uses TCP to send information back and forth between RealPlayer and RealServer.

Initial TCP Control Connection

Once RealServer approves the request, it sends the requested clip along a one-way UDP channel.

UDP Data Connection

As it receives the streamed clip, RealPlayer plays it at high quality.

SMIL Files

Synchronized Multimedia Integration Language files, or SMIL files, are files that coordinate the delivery of several clips. A SMIL file (pronounced "smile") tells the client what clips to play, in what order, and where to show them on the screen. SMIL files can perform basic or sophisticated timing and layout. For detailed information on creating SMIL files, see RealSystem G2 Production Guide.

Linking to RealSystem Content

A visitor to a Web site clicks links that point to content served by RealServer. The way these links are constructed tells RealServer how to stream them. To understand how to construct a link to RealServer content, you must first learn about key RealServer features such as ports, mount points, and base paths. You will need to give this information to the content creators who will be using your RealServer. They won't need to know the details of RealServer operation, just what information to include in their links.

Once you have read about ports, mount points, and base paths, you'll see how to create links, described in "Linking to Files and Presentations".

This illustration shows the parts of a URL that points to material served by RealServer. More detailed explanations follow this diagram.

Parts of a Link

For example, the following link to a RealVideo file would appear in a Web page:


http://realserver.company.com:8080/Concerts/French/debussy.rm

The key to understanding where to put media files and how to reference them-and therefore how to take full advantage of RealSystem's power-are ports, mount points, file systems, base paths, and virtual paths.

Protocols

RealServer uses two main protocols to communicate with clients: RTSP (Real Time Streaming Protocol) and PNA (Progressive Networks Audio). These protocols work with the two-way TCP connection to send commands from the client such as "start" and "pause," and RealServer sends information about the clips' titles to the client. Authentication demands from RealServer and passwords supplied by the user are also sent along this connection.

RTSP is a client-server protocol designed specifically for serving multimedia presentations. It is an open standard, one that is very useful for large-scale broadcasting. Only RTSP can deliver SureStream™ files with their multiple bandwidth encoding. RealPix also requires RTSP.

PNA is the proprietary client-server protocol designed and used by RealNetworks in RealSystem versions 5.0 and earlier. The ability to serve via PNA is supported in RealServer G2 for compatibility with older versions of RealPlayer.

In both RTSP and PNM, media clips are streamed over a one-way UDP channel which is separate from the TCP channel.

Port Settings

Port settings tell RealServer where it should listen for RTSP, PNA, and HTTP requests. These settings are implied in the URL that points to the content and are assumed by RealPlayer to have certain values. When RealPlayer requests an URL that begins with rtsp://, it sends the request to the RealServer's port 554. RealPlayer directs an URL that begins with pnm:// to port 7070. Requests beginning with http:// are first sent to port 80, and if no response is received, they are redirected to port 8080.

Additional Information
RTSP and PNA are described in "Protocols".

Using Different Port Numbers

If your RealServer and Web server are on the same machine, you may need to modify the HTTP Port setting. See "Running Web Servers and RealServer on the Same System" for additional information.

You can use alternate port numbers if multiple RealServers are using the same IP address, or if you want to segregate requests for different material. If you do use alternate port numbers, be sure to include the new numbers in the links.

Warning
If you change the RealServer port settings, you will have to update URLs to reflect the new, non-default values. If RealPlayer attempts to play a clip for which the port information is incorrect, it may try to request the information via HTTP (a much less efficient delivery method.)

Mount Points

A mount point reference appears in every URL. It tells RealServer which plug-in to use when processing the URL request.

When RealServer receives a request for a clip, it examines the URL of the requested clip. RealServer looks through its configuration file for a plug-in whose mount point variable matches the first string after the domain name. It then gives the request to the plug-in named by that list. Most on-demand presentations are handled by the local file system plug-in; the G2 encoder plug-in handles live streams.

To specify a mount point that points to the RealServer main content location, use a forward slash mark ("/").

Changing Mount Points

If you change the name of a mount point, remember to update the URLs with the new mount point name.

Multiple Mount Points in One Link

In some cases, a link will include more than one mount point. The Ramgen file system is sometimes used in addition to mount points.

Using different mount points that point to the same base path or use the same file system can be an effective way of providing conceptual organization of content.

For example, if content on your RealServer is being supplied by different people, you may elect to establish a different mount point for each person's material.

Base Paths

While the mount point identifies a virtual directory, the base path gives the actual directory where the clips are stored. The base path identifies the "root directory" for the URLs that point to clips; it can even point to a completely different physical drive. The base path is similar to an alias.

Consider the following directory structure:


(RealServer main directory)
Content
Speeches
Concerts
French
Liveconcerts

If the main mount point is / and the base path is C:\Program Files\RealServer\Content (Windows) or /RealServer/Content (UNIX), a SMIL file link for a clip in the main Content directory would look like this:


rtsp://realserver.company.com/intro.smil

A file in the Speeches subdirectory of the Content directory would appear this way in the URL:


rtsp://realserver.company.com/Speeches/keynote.smil

The Content directory is not mentioned in the URL, because it is already implied in the main mount point's base path.

Using Mount Point and Base Path Together

There are two advantages to using mount point and base path:

Actual Directories

A link to a file named debussy.rm in the French subdirectory of Concerts would look like rtsp://realserver.company.com/Concerts/French/debussy.rm. In this case, the portion of the URL corresponding to a mount point is merely the forward slash after the domain name; the rest matches a directory structure. The directory structure is relative to the base path of the mount point, which in this case is identical to the actual directory structure.

If a mount point named /education/ was added, and its base path was Content (the same base path as the main mount point), a file named lesson1.rm would be referenced as rtsp://realserver.company.com/education/lesson1.rm. In this case, no "education" directory actually exists; the lesson1.rm file can be found in the main content directory.

Virtual Directories

There are two types of virtual directories.

A virtual directory is a combination of a mount point and the actual directories below it.

In the following example, assume a mount point has been defined as /concerts/, and that it refers to the actual Concerts directory:


(RealServer main directory)
Content
Speeches
Concerts
French
Liveconcerts

In the url rtsp://realserver.company.com/Concerts/French/debussy.rm, we refer to /Concerts/French as a virtual directory. The actual French directory is located at the end of a long path.

In the case of live files, the virtual directory can be the location typed in the production tool. It may look like a directory, but not correspond to any actual directories. For example, if a content creator indicated that live files should be encoded to Speeches/Famous/Lincoln.ra, the link to that live file would look like rtsp://realserver.company.com/Speeches/Famous/Lincoln.ra. The Speeches directory is an actual directory in this case, but it has no Famous subdirectory. The virtual directory is Speeches/Famous.

Identifying Mount Points and Virtual Directories

You can't determine which parts of an URL refer to mount points and which parts refer to virtual directories just by looking at the URL; you must examine the mount points pages or the configuration file to see which parts of the URL are mount points.

Using Several Mount Points in One URL

A single link may include more than one mount point, in addition to virtual directories. The Ramgen mount point is frequently combined with other mount points.

Ram Files and Ramgen

A Ram file is a small text file, also known as a metafile, that lists presentations in sequence. SMIL files can do sophisticated presentations, but Ram files can provide a quick way of sequencing clips. Ram files have the extension .ram or .rpm.

The ram file generator, known as Ramgen, sends a temporary file to the RealPlayer. This temporary file contains the address of the presentation given in the URL. The Ramgen component is necessary because some browsers are not configured to start the client when a SMIL or other streaming media file is requested, but all browsers launch the client when they receive Ram files.

If you are using Ram files and are storing them on RealServer (rather than on the Web server), be sure to add the virtual path to the HTTP Deliverable list. "Controlling Access to HTTP Streams".

Additional Information
See RealSystem G2 Production Guide for detailed information on using Ramgen. You can also include commands in the links that include Ramgen references; they are also described in RealSystem G2 Production Guide.

Virtual Paths

This manual makes a distinction between virtual directories and virtual paths. A virtual directory is part of a physical directory; a virtual path is a combination of a mount point and a virtual directory. The notion of a virtual path is used in the authentication feature.

Storing Files and Presentations

The most straightforward location for content files is in the base path directory of the main mount point. Links to these files will be short.

If you have many files however, it makes sense to organize them into subdirectories or even to store them on different computers. Links for these files may become quite lengthy. Adding multiple mount points, with base paths that match the lengthy paths, will shorten the links.

Linking to Files and Presentations

Links to media files streamed by RealServer can appear in four places, and use different protocols, as shown in the following table:

Links in RealSystem Files
This location... ...links to this Uses protocol
Web page SMIL file or individual clip http
Web page Ram file http
SMIL files individual file or files rtsp or pnm
Ram files individual file or files rtsp or pnm
The Open Location dialog box of RealPlayer individual file rtsp or pnm

Web pages require a slightly different link format than the other three venues. SMIL files, Ram files, and RealPlayer all use the same format. SMIL files can include additional, sophisticated instructions. Some additional options are available in Ram files. Detailed information on the additional options can be found in RealSystem G2 Production Guide.

For examples of the different types of links, as well as the features of SMIL files, examine the content in the Demo subdirectory of the RealServer Content directory. You can view the demonstrations by clicking Samples in the left-hand frame of RealSystem Administrator, and then clicking one of the SMIL demonstration links.

Links from Web Pages to Streamed Media Clips

Within a Web page you can link to an individual clip, a .ram or .rpm file, or a SMIL presentation.

Linking a Web Page to a SMIL File or Individual Clip

A link in a Web page to an individual RealServer file uses the following format:


http://realserver.company.com:HTTPPort//ramgen/MountPoint/virtual_directory
/filename

RealServer URL Components
Component Meaning
http The protocol used for streaming. Always use http in Web pages.
realserver.company.com Machine and domain name of RealServer. IP address may be substituted.
HTTPPort Port number where RealServer listens for requests sent via HTTP. This value is usually 80 or 8080; see "Port Variables".
ramgen Ram file generator. Omit this only if you are playing clips locally or if this is a live, push splitting, or multicast stream.
MountPoint If the clip is in the main directory, you can omit the mount point. (In this case, a single forward slash is considered the mount point.)
virtual_directory The virtual directory is any actual directory, relative to the base path of the mount point. If the file is located in the base path itself, omit virtual_directory.
filename The file name itself, including the extension. Scalable multicasting adds .sdp after the extension.

Note
Push splitting and pull splitting use a different link format. See "To create the link for push splitting within a SMIL file or Ram file:" and "To create the link for pull splitting:".

Linking a Web Page to a Ram File

A link to a Ram or Rpm file, which you must create and then store on RealServer, has the following format:


http://realserver.company.com:HTTPPort/MountPoint/virtual_directory/
filename.ram

RealServer URL Components
Component Meaning
http The protocol used for streaming. Because you are adding this link to a Web page, the protocol is HTTP.
realserver.company.com Machine and domain name of RealServer. IP address may be substituted.
HTTPPort Port number where RealServer listens for requests sent via HTTP. This value is usually 80 or 8080; see "Port Variables".
MountPoint If the clip is in the main directory, you can omit the mount point. (In this case, a single forward slash is considered the mount point.)
virtual_directory The virtual directory is any actual directory, relative to the base path of the mount point. If the file is located in the base path itself, omit virtual_directory.
filename.ramor filename.rpm The name of the .ram or .rpm file.

Unlike the link to the single file, the link to a Ram file does not include the /ramgen/ mount point.

Note
Ram and Rpm files can also be stored on the Web server; adjust the link accordingly.

Linking from SMIL or Ram Files to Media Clips

The content creator will be making SMIL files, which will contain references to streamed media files served by RealServer. Links to streamed media that appear in SMIL files have the following format:


rtsp://realserver.company.com:RTSPPort/MountPoint/virtual_directory/filename

The following table explains the components in the example above. As the RealServer administrator, you will need to supply content creators with the RealServer address, RTSP port, and mount points. You may also need to supply information about virtual directories.

RealServer URL Components
Component Meaning
rtsp The protocol used for streaming. In SMIL files, this is usually RTSP. Occasionally will be PNM.
realserver.company.com Machine and domain name of RealServer. IP address may be substituted.
RTSPPort Port number where RealServer listens for requests sent via RTSP. This value is usually 554; see "Port Variables". If you used PNM for the protocol, substitute the value of PNAPort for RTSPPort here.
MountPoint If the clip is in the main directory, you can omit the mount point. (In this case, a single forward slash is considered the mount point.)
virtual_directory The virtual directory is any actual directory, as relative to the base path of the mount point. If the file is located in the base path itself, omit virtual_directory.
filename The file name itself.

Note
Pull Splitting uses a different link format. See "To create the link for pull splitting:".

Additional Information
For detailed information on SMIL files and their syntax, see RealSystem G2 Production Guide.

Remember that the Web page links to the SMIL file, and it has a slightly different format. See "Links from Web Pages to Streamed Media Clips".

Linking from RealPlayer

The Open Location dialog box of RealPlayer uses the same syntax as SMIL files. Links begin with rtsp://. See "Linking from SMIL or Ram Files to Media Clips".

Working with Content Creators

Unless you are creating media files and SMIL presentations as well as administering RealServer, you will need to give certain information to content creators so that they can create the proper links in their SMIL files and Web pages. If the content providers are encoding live material, they will need to know where to direct their live data.

On-Demand Content

Content creators will need the following information:

Live Broadcasts and Multicasts

In order to encode a live stream to RealServer, content creators need to know this information:


Copyright © 1998 RealNetworks
This file last updated on 11/13/98 at 13:48:39.
previous next