Stream Videos Across the Internet With Apple's Darwin Streaming Server
If you are interested in streaming media across the Internet using industry standard RTP and RTSP protocols, besides Apple's QuickTime Streaming Server, you also have the option to use Apple's Darwin Streaming Server, the free open source version of Apple's QuickTime Streaming Server which is based on the same code as QuickTime Streaming Server.
Overview
Darwin Streaming Server is an open source project intended for developers who
need to stream QuickTime and MPEG-4 media on alternative platforms such as
Windows, Linux, and Solaris, or those developers who need to extend and/or
modify the existing streaming server code to fit their needs. Darwin Streaming
Server is only supported by the open source community and is not eligible for
technical support from Apple.
Installation & Testing
I installed Darwin Streaming Server on a Windows Server 2003 to see how it
works. The installation requires that you have ActivePerl installed on your
Windows Server 2003. ActivePerl is available for free from
ActiveState. I downloaded ActivePerl's latest version 5.8.7.813 for Windows.
The MSI file was 12.4MB in size. After I installed ActivePerl, I tested the
example scripts and it worked fine. I also used the following TEST.PL script and
ran it in my browser. It worked fine.
#!c:\perl\bin\perl.exe
# ^^^ this must be the first line of the script! ^^^
# start code
use strict;
use CGI;
my $q = new CGI;
# print header and start the markup output
print $q->header( "text/html" ),$q->start_html( "hello from perl cgi!" );
print $q->h2("ActivePerl is working...");
print $q->end_html;
# end code
Here are the basic steps to install and configure the Darwin Streaming Server on Windows Server 2003.
Troubleshooting
Although ActivePerl was installed and working properly on my server, when I
tried to run the StreamingAdminServer.pl file at the command prompt, it failed
to execute. I kept getting the error that ActivePerl was not installed. Needless
to say that I wasn't able to successfully access my server at
http://localhost:1220, as instructed in the documentation. Port 1220 is the
default port used by the Streaming Server.
After spending hours with various settings and looking for troubleshooting help I read somewhere on the Internet that if you try an older version of ActivePerl with the Streaming Server, it should work. The error stated that I must use a version 5.8.0 or later and I was using 5.8.7, which had failed. On ActiveState's Web site I also found the older version 5.6.1.638. I tried that but that didn't help. Fortunately, I stumbled upon another site that had version 5.8.6.811. I downloaded and installed that version and it did the trick. My Darwin Streaming Server was up and running.
Additional Tips
Here are some additional tips. When you install Darwin Streaming Server, it
installs as a service that can be managed in the Services console. Make sure
that the service is configured to start automatically and that it is started.
ActivePerl will install the Perl CGI Extension and the Perl ISAPI Extension in
Internet Information Services (IIS) but you must enable the extensions manually,
as shown in Figure 1 below. The extensions are installed but not enabled. Also,
make sure that both Darwin Streaming Server and ActivePerl are in the path. If
you've looked at your path by typing PATH at the command prompt and then
modified the path statement (Control Panel|System|Advanced|Environment
Variables), you must close and reopen the Command Prompt window to see the
changes. Also, if you can't access http://localhost:1220 in your browser, ensure
that you've executed StreamingAdminServer.pl at the command prompt.
To download Darwin Streaming Server for Windows 2000/2003, Linux RedHat, or Macintosh OS X, click here. To download ActivePerl version 5.8.6.811 click here.
Other useful links:
Darwin Streaming Server Administrator's Guide
How to Stream a QuickTime Streaming Movie
How to Test Streaming Media
Last update: October 26, 2005
Copyright ©2005
Zubair Alexander. All rights reserved.