filename: Readme.FreeBSD author: Craig Harman (craig@cif.rochester.edu) created: 13 March 2002 last revised: 11 February 2004 INSTALLATION This archive contains a binary distribution of Apple's Darwin Streaming Server (DSS) v5.0 for FreeBSD. The files were built on a FreeBSD 4.8-STABLE machine using GCC 2.95.3. I have been told that some people have been unable to build the source using GCC 3.2.1. The archive was last available at: http://www.cs.rochester.edu/~charman/DSS_FreeBSD/ The included 'Install' shell script should install the software on your FreeBSD machine. The Install script will prompt you for a username and password for the DSS administrator account. To manually start the DSS server, execute the command: /usr/local/sbin/DarwinStreamingServer To manually start DSS web-based administrative interface, execute the command: /usr/local/sbin/streamingadminserver.pl If you would like DSS to start whenever your system is rebooted, copy the file 'darwinss.sh' to the directory: /usr/local/etc/rc.d Please note that that the 'darwinss.sh' script will only launch DSS; the web-based administrative interface will not be launched on startup by this script. To configure DSS, connect to port 1220 on your machine using a web browser, enter the username and password that you specified when you ran the 'Install' script, and follow the onscreen instructions. TESTING YOUR INSTALLATION I found the QuickTime documentation to be unnecessarily fragmented. After I installed DSS, it took me longer than expected to figure out how to test the server. Hopefully these instructions will make your life a little easier. To test your DSS installation, start by opening your QuickTime Player. In your QuickTime Settings, make certain that your Player's Streaming Transport setting (UDP on port 554 vs. HTTP on port 80) is configured to match your Server's Streaming Transport setting. Go to the 'File' menu, select 'Open URL in New Player...', and enter the following URL: rtsp://yourwebserver.net/moviename.mov RTSP stands for Real-Time Streaming Protocol. This is the protocol that DSS uses to stream movies. DSS comes with three movies (sample_56kbit.mov, sample_100kbit.mov and sample_300kbit.mov) that are installed by default in: /usr/local/movies If you did not change the default media directory during the DSS configuration process, then you can specify one of these movies in the URL. If DSS is configured properly, the movies should stream to your Player. OPENING STREAMING VIDEOS FROM WEB PAGES Once DSS is working, you will likely want to open streaming videos from web pages. Unfortunately, you cannot enter RTSP URL's directly into your web browser. The following HTML code will not work: You need to create a QuickTime reference movie that will redirect users to the streaming version of your movie. The reference movie should be placed on an HTTP server. Apple's free 'MakeRefMovie' (currently available only for Windows and MacOS) can be downloaded from: http://developer.apple.com/quicktime/quicktimeintro/tools/ Start MakeRefMovie, enter a filename for your reference movie, and then select 'Add URL...' from the 'Movie' menu. Enter the RTSP URL for your movie. Now place the reference movie on an HTTP server. When you enter the URL for the reference movie in your web browser, your browser should be redirected to the DSS server and should use a QuickTime plugin to display the streaming video. I suspect it is possible to bypass this reference movie step if you have configured DSS to listen in on port 80. I have not tested this configuration, however, and make no claims that it will work. RECREATING THIS ARCHIVE In case you are paranoid about installing untrusted binaries on your machine, I have provided instructions explaining how to recreate the contents of this archive directly from files that can be downloaded from Apple. These instructions were originally posted to the comp.unix.bsd.freebsd.misc newsgroup, which I have included below. ------------------------------------- Date: Wed, 13 Mar 2002 13:55:52 -0500 From: Craig Harman Newsgroups: comp.unix.bsd.freebsd.misc Subject: Installation instructions for Darwin Streaming Server I am posting FreeBSD installation instructions for Apple's Darwin Streaming Server (DSS) v4.0 because I was unable to find them anywhere else, had to resort to figuring things out myself, and hope to save others the trouble. Darwin Streaming Server is the open-source version of QuickTime Streaming Server. My apologies if this post is off topic. The source code for DSS can be downloaded from Apple: http://developer.apple.com/darwin/projects/streaming/ as: DarwinStreamingServerSrc.tar.gz The archive comes with two relevant scripts: Buildit - A shell script that is used instead of a Makefile Install - The installation shell script COMPILING The Buildit script compiled the code on my machine (FreeBSD 4.5) with a few warnings (signed vs. unsigned, etc), but no errors. The Install script, however, does not work properly on FreeBSD because the executables and configuration files are not in the locations that the Install script expects them to be. I tried copying the files over manually, but the server wouldn't start at first because the configuration files were broken. I tried fixing the configuration files manually, and while I was able to get the server to start, I encountered broken links when using the DSS web interface. My advice - Do not use the Install script or configuration files that come with the source code archive to install DSS on FreeBSD. Use the Buildit script to compile the executables, then follow the installation instructions below. INSTALLING The DSS Install script was designed to be used with the DSS binary distributions. Go back to: http://developer.apple.com/darwin/projects/streaming/ and download the Linux binary distribution: DarwinStreamingSrvr4.0-Linux.tar.gz Run the Install script to create the configuration files and directories (/etc/streaming, /var/streaming, etc) and copy over the Linux binaries to the appropriate directories. I know it's possible to run Linux binaries on FreeBSD, but I'm not certain how to do this. I just replaced the Linux binaries with the FreeBSD binaries that I compiled earlier. The Install script that comes with the Linux binaries will try to run qtpasswd to change the DSS administrator account's QuickTime password. If your machine is not configured to run Linux binaries, this will obviously fail. You should run the FreeBSD version of qtpasswd after the installation to create the admin account and set a password. You should also remove the default administrator account using this command (taken from the Install script): # Remove the default admin username to /etc/streaming/qtusers /usr/local/bin/qtpasswd -F -d 'aGFja21l' > /dev/null You should be able to copy the FreeBSD binaries over by running this shell script from inside of the StreamingServer directory that was created from the source archive: #!/bin/sh cp DarwinStreamingServer /usr/local/sbin cp PlaylistBroadcaster.tproj/PlaylistBroadcaster /usr/local/bin cp MP3Broadcaster/MP3Broadcaster /usr/local/bin cp qtpasswd.tproj/qtpasswd /usr/local/bin # -- FreeBSD version of DSS doesn't come with StreamingLoadTool, # -- so we remove the Linux binary version of this program rm /usr/local/bin/StreamingLoadTool Now you can start up the server: /usr/local/sbin/streamingadminserver.pl and then connect to the DSS web interface by pointing your web browser to: http://localhost:1220/ (or something similar).