Open source software security

Steps to install Darwin Quicktime Streaming Server on Linux

30 November -0001
Sept. 25, 2003
Make a clean install of linux

Download Darwin Streaming Server from http://developer.apple.com/darwin/projects/streaming/. Grab the Red Hat sources (they're in .tar.gz format and will work with any Linux distribution). Be aware that there are two links for downloads on this page. You want to get the 'Server' download rather than the 'Proxy' download.
-You'll have to sign up for an apple login to download the source code

- read the administrators guide (in .pdf format)
After you download the server you want to unzip it with 'gunzip Darwing-xxx.tar.gz' (where xxx is whatever the rest of the download name is) then untar it with 'tar -xvf Darwin-xxx.tar'. This will create the directory for install. You need Perl installed on your system to do the install so make sure you've got it (in Mandrake or Red Hat try 'rpm -q perl'). Then cd into the install directory and fire off the install with './Install' and make sure there aren't any errors. Be sure to remember your passwords.

One caveat you want to look out for is setting the QTSS (Quick Time Streaming Server) to stream over port 80. If you've got a webserver on port 80 then doing this will cause the QTSS and your web server to fail.

Once you've installed the server you can administer it via a web browser by navigating to 'http://127.0.0.1:1220'. This administrator is set to port 1220, you probably only want to allow local access to this port and firewall it off from any remote access.

By default the default streaming port is 554/tcp, so be sure to allow it through your firewall. To test the server, fire up QuickTime and go to File -> Open URL then type in 'rtsp://yourserver/sample_300kbit.mov' which is one of the sample movies installed in /usr/local/movies by default. If the sample opens then the streaming server is working.

In order to stream a movie embedded in a web page you have to make a pointer movie to sit in Apache (or whatever webserver you're using) to point to the RTSP movie using MakeRefMovie tool from Apple (http://developer.apple.com/quicktime/quicktimeintro/tools/). Make a pointer movie with MakeRefMovie (create a new movie, then go to 'Movie' -> 'Add URL' -> Type in the URL of the actual movie (rtsp or whatever). You need to put the target movie in /usr/local/movies (or whatever default was specified on the Darwin install) and put the pointer movie in /var/www/html or whatever your root web directory is.

Next put this code on the webpage:

<HTML>
<BODY>

This is a sample use of the EMBED tag.<BR>
<EMBED SRC="http://my.webserver.com/linkimage.mov" width="150"
height="64" href="rtsp://my.streamingserver.com/sample.mov"
target="QuickTimePlayer">
</BODY>
</HTML>


and take a look at it in your web browser. If you get an 'ERROR 415' you likely didn't save the actual movie in the correct format. ***Make sure the movie is properly hinted when it is created***

Now if you want to stream an MP3 playlist first what you have to do is first create a playlist (use the management console (Playlists link on the left, then Create MP3 Playlist)) by dragging items from your music list (default from the media location you specified on install) into the playlist. Name your playlist and be sure to remember the mount point (this will be important). Next you have to create a playlist (.pls) which is actually just a specially crafted text file. You have to put the playlist on your website or somewhere that folks can get at it. Darwin streams MP3's over port 7070 by default. Here's a sample .pls from a playlist with the mount point '/techno'

[playlist]
numberofentries=8
File1=http://66.92.168.92:7070/techno
Title1=Madirish streaming techno music for all your house funkiness
Length1=-1Version=2
Note that spelling is VERY important. Feel free to toy with what you want and see if it works. On a Windows machine you can just drag this playlist into winamp and it'll play.