Back to Applications

What Is Darwin Streaming Server


Darwin Streaming Server allows you to stream video and audio clips in MP3 and MPEG-4 formats. Darwin Streaming Server is the open-source version of Apple's QuickTime Streaming Server technology that allows you to send streaming media to clients across the Internet using the industry standard RTP and RTSP protocols. Based on the same code base as QuickTime Streaming Server, Darwin Streaming Server provides a high level of customizability and runs on a variety of platforms allowing you to manipulate the code to fit your needs.

Installing Darwin Streaming Server

For installation instructions, please click here.

Using Darwin Streaming Server

Darwin Streaming Server is a streaming media solution provided by Apple as a free product to allows you to stream MP3s and MPEG-4s. For more information about Darwin Streaming Server, visit their site at http://developer.apple.com/darwin/projects/streaming/.

Logging Into Darwin Streaming Server Administration

Once the Darwin Streaming Server is installed on your account, you will be able to access the administration page in the following ways:

  1. Click on Darwin Streaming Server under Media in the Site Application section of your Site Manager. There will be a link on this page called Darwin Streaming Server Administrator.

    OR

  2. You can access the administration page directly by pointing your preferred browser to the following address:

    http://yourdomain.com:1220/
    (make sure to replace yourdomain.com with your actual domain name)

You will then be required to enter the administrator username and password you created when installing Darwin Streaming Server. Once you have entered them in the appropriate fields, click the login button to log into your Darwin Streaming Server Administration (Figure 1).


(Figure 1: Darwin Streaming Server Administration Login Screen Example)

Navigating Darwin Streaming Server Administration

The Darwin Streaming Server Administration is split into 3 different sections (Figure 2):

  • Top Bar Pane: This section allows you to Disable/Enable the Darwin Streaming Server and displays the current status of your Darwin Streaming Server.
  • Navigation Bar Pane: This section allows you to navigate between the various sections of the Darwin Streaming Server administration.
  • Main Body Pane: This section contains the main Darwin Streaming Server administration contents. This section will change as you navigate through the Darwin Streaming Server administration and will be your main work area as you make changes and view information.


(Figure 2: Darwin Streaming Server Administration Main Window Example)

Connected Users

To see the Connected Users pane, click Connected Users in Streaming Server Admin (Figure 3).

In this pane, you can view information about the client users currently connected to your streaming server. You can display the information in several  ways using the onscreen controls:

  • To change the number of entries displayed, choose a number from the "Display __ entries" pop-up menu.
  • To change how often the list is updated, choose a number from the "Page Refresh Interval" pop-up menu.
  • To select the sort column, click the column label by which you want to sort the user information.
  • To select the sort order, click the arrow next to the selected column label.


(Figure 3: Connected Users Screen Example)

Relay Status

Relays are used to accept a stream from one streaming server and send the stream on, or "relay" it, to another streaming server. The Relay Status section allows you to view the connected relays on your Darwin Streaming Server (Figure 4).


(Figure 4: Relay Status Example Screen)

General Settings

Use General Settings in Streaming Server Admin to access the streaming server functions listed (Figure 5).

To see the general settings, click General Settings.

  • Media Directory contains the media files available to streaming server clients. The files must be properly formatted streaming media files. The media files must be located in the media directory or any of its subdirectories.
  • Max. Number of Connections lets you set the maximum number of connections. When this number is reached, users who try to connect see a message that the server is busy (error 453).
  • Max. Throughput lets you set the maximum throughput of the server. If the maximum throughput is reached, no one else can connect. Users who try to connect see a message that the server is busy (error 453).
  • Default Authentication Scheme lets you choose between basic or digest. By default, the server uses the more secure digest authentication. However, digest authentication requires that users connect with QuickTime 5 or later. Basic authentication is less secure than digest but is compatible with earlier versions of QuickTime.


(Figure 5: General Settings Example Screen)

Change Administrator Username/Password

The Change Administrator Username/Password section allows you to change your Darwin Streaming Server username and password (Figure 6). You will need to supply your current username and password and then enter your desired new username and password, then click the Change Password button to finish.


(Figure 6: Changing Administration Username/Password Example Screen)

Port Settings

You can view and change port settings in Streaming Server Admin (Figure 7).

To see the port settings, click Port Settings.

  • Streaming on Port 80 lets you serve QuickTime streams over HTTP port 80. If you need to serve streams past firewalls, you may need to enable streaming on port 80. If your computer is also running a web server, enabling streaming on port 80 causes a port conflict that results in one or both of the servers not behaving properly.


(Figure 7: Port Settings Example Screen)

Relay Settings

Relays are used to accept a stream from one streaming server and send the stream on, or "relay" it, to another streaming server. You set up relays using the Relay Settings pane in Streaming Server Admin (Figure 8).

To see the Relay Settings pane, click Relay Settings.

The Default Relay relays all incoming broadcasts that are automatically announced to the streaming server to one or more destinations. The default relay is set up just like any other relay except there are no source settings. The default relay appears in the Relay Status pane with the name ***qtssDefaultRelay***. The default relay can accept only forwarded media streams using the RTSP announce protocol. UDP streams are not supported.

  • Status: _ Enabled" instructs the server to relay any broadcast that is announced to it as soon as the relay is saved.
  • Relay Name is used to identify the relay in Relay Settings and the Relay Status pane.
  • Source Hostname or IP Address is the DNS hostname or IP address of the source computer.
  • Mount Point is the name of the source that needs to be relayed. For example, if you want to relay the incoming broadcast announced as "birthdayceleb. sdp," the mount point is set to birthdayceleb. sdp. You could also relay a source acquired by acting as a client and requesting it from the source server. In this case, the mount point must be the URL of the resource to acquire.
  • Request incoming stream directs the streaming server to send a request to the source computer for the incoming stream before it gets relayed. This feature can be used to relay a reflected live broadcast (from another server). It can also be used to request a stored file and turn it into an outgoing live stream.
  • In any of these fields, User Name/Password is used if the source or destination computers require automatic broadcasts to be authenticated with a name and password.
  • Wait for the announced stream(s) directs the server to wait for the incoming stream and then relay it. Relays set to wait for announced streams can accept only media streams using the RTSP announce protocol. User Datagram Protocol (UDP) streams are not supported.
  • Relay via TCP sets broadcasts to announce the stream to the destination computer via TCP. The destination computer must support the automatic announcing of broadcasts. For Relay via TCP, the mount point is the path to the destination URL. Like any mount point, it points to a Session Description Protocol (SDP) file and must end in ".sdp" (for example, Keynote_Relay. SDP). If a mount point is not supplied, then the mount point of the source is automatically used.
  • Relay via UDP sets broadcasts that don't require announcing to stream over a UDP port. Use this if streaming media is being relayed directly to a QuickTime client or a multicast address, or to a streaming server that doesn't support automatic broadcasting.
  • Base Port is the port number the destination computer uses to listen for incoming streams. A UDP port is required for each stream. A typical relay can have multiple streams, usually one audio stream and one video stream. The Base Port field must contain the UDP port of the first stream that is relayed. It must be an even port number greater than 6000. Consecutive even numbers are chosen for the remaining UDP ports. Even numbers are for Real-Time Transport Protocol (RTP), and the intermediate odd numbers are for Real-Time Transport Control Protocol (RTCP). If the base port is set to 6000, then 6002, 6004, and so on are automatically chosen as the remaining UDP ports for multiple streams.
  • Multicast TTL is the time-to-live (TTL) value specifying the number of times a media stream can be passed from one router to another before the stream is no longer transmitted. The value can be any number between 1 and 255. A value of 1 reaches client computers on the local area network. The larger the number, the farther the multicast packets will travel.


(Figure 8: Relay Settings Example Screen)

Log Settings

You can view logs and change log settings in Streaming Server Admin (Figure 9).

To see the log settings, click Log Settings.

  • Error Log shows error and informational messages. Use this log to troubleshoot problems with the server.
  • Access Log shows the number of times each media file has been accessed when it was accessed, and who has accessed it since the log was reset. Access errors are also reported in the log. Currently, MP3 client connections are not displayed. A raw MP3 access log can be viewed by looking in /Library/QuickTimeStreaming/Logs/mp3_access.log (for Mac OS X), c:\Program Files\Darwin Streaming Server\Logs\ (for Windows), or /var/streaming/Logs/mp3_access.log (for other supported platforms).

You can specify that each log be reset after a certain number of days or after it reaches a certain size (in KB).


(Figure 9: Log Settings Example Screen)

Viewing Error Logs and Access History

If logging is turned on in the Logging Settings pane of Streaming Server Admin, information about access and errors are saved to log files.

Click Error Log (Figure 10) or Access History (Figure 11) to choose which log you want to view.

The information stored in the access log can be analyzed using software from other vendors. The access history log is updated only as client connections are disconnected. Any currently connected clients at the time of a power failure or server crash are never logged, and won't appear in the access log when the server is restarted.

These logs and some additional logs you might find useful are, with the exception noted below, stored in the following locations:

  • Mac OS X: /Library/QuickTimeStreaming/Logs/
  • Windows: c:\Program Files\Darwin StreamingServer\Logs\
  • Other supported platforms: /var/streaming/Logs/

The default file names are as follows:

  • Error Log: Error.log
  • QuickTime movie and broadcast requests log: StreamingServer.log
  • Streaming MP3 requests log: mp3_access.log
  • Streaming admin server requests log: streamingadminserver.log
  • Playlists log (one per playlist): playlist name. err

Where the playlist name is the name of the playlist.

The playlist log is stored in the following locations (where playlistname is the name of the playlist):

  • Mac OS X: /Library/QuickTimeStreaming/Playlists/playlistname/
  • Windows: c:\Program Files\Darwin Streaming Server\Logs\
  • Other supported platforms: /var/streaming/Playlists/playlistname/


(Figure 10: Error Log Example Screen)


(Figure 11: Access History Example Screen)

Embed a Movie On an HTML Page

While we try to provide the basics of using the Darwin Streaming Server with your account, we can not provide full documentation on every aspect of the third-party applications we provide. If the below documentation does not answer all of your questions, we ask that you consult the official QuickTime Streaming Server Administration Documentation.

Here are the following steps in embedding a movie on an HTML page:

  1. Create your HTML page (e.g. streaming.html):

    <html>
    <head>
      <title>Streaming Test</title>
    </head>
    <body>
    Streaming Example<br />
    <object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" width="320" height="256" codebase="http://www.apple.com/qtactivex/qtplugin.cab">
    <param name="src" value="sampleref.mov">
    <param name="autoplay" value="true">
    <embed src="sampleref.mov" width="320" height="256" pluginspage="http://www.apple.com/quicktime/" autoplay="true" />
    </object>
    </body>
    </html>

  2. Create a reference file, which is used in the "param" and "embed" links above. You can name it anything you want, and it does not need to have the same name as the movie being streamed. This is a regular text file. You can put this file anywhere in the webroot, and all you need to do is customize the domain name (yourdomain.com), and the movie name. You can create a reference file by running the following command via an SSH command prompt:

    $ cat >/var/www/html/sampleref.mov <<EOI
    RTSPtextRTSP://example.com:8554/sample.mov
    EOI

  3. Make sure that the movie referenced in your reference file is in the movies directory (this directory is defined in the General Settings section of your Darwin Streaming Server administration) and that it is a properly hinted movie. In this case, the file "sample.mov" would be "/usr/local/darwin-streaming-server-5.5.4/movies/sample.mov".
  4. Point your browser to http://yourdomain.com/streaming.html (make sure to replace yourdomain.com with your actual domain name) and click on the movie to watch it stream.


Related Articles

How To Activate SSL In OSCommerce
How To Reset My OSCommerce Password
What Is OSCommerce
How To Reset My Drupal Password
What Is Drupal

Can’t Find what you need?

No worries, Our experts are here to help.