View Full Version : Darwin Streaming Server on Ubuntu

December 28th, 2007, 12:34 AM
Translated by Google Translator from German to English from source:


Thanks goes out to our German counterparts who took the time to write this guide and to Google for doing a not so bad job of translating, and to myself for light grammar editing :(

Darwin Streaming Server

This article was for the following Ubuntu versions tested:
Feisty Fawn 7.04 Gutsy Fawn 7.04
Dapper Drake 6.06 (Long Term Support)Darwin Streaming Server is the free version of QuickTime commercial server from Apple. Here are some of it's features:

Support for open standards: MP3, MPEG-4, H.264/AVC, RTP, RTSP
Open Source pursuant to Apple Public Source License (http://www.opensource.apple.com/apsl/)
No term, no user restrictions, etc.
FreeIn addition, the server through a Web interface, a simple configuration, even from another computer.


The Darwin server is suited for on-demand streaming, where the audio / video data is already in coded form as a file and available on demand by a user of each other. In connection with the Live encoder mp4live from mpeg4ip project, but it can also live streaming applications (eg Internet-TV).

The following instructions should assist in the installation and configuration of the Darwin server.


For the installation of the Darwin Streaming Server, the following two packages need to be installed:

Libstdc + +5 (is already installed by default)
Checkinstall (Dapper)

To the Darwin streaming server after installation test can also be a good player for playback. This can be either locally on the server, or even better on a second computer to the server network is installed. It is proposed to take this opportunity to install the VLC media player with MPEG-4 support, but there are certainly other players to use.

The Darwin Streaming Server is not as a finished package for Ubuntu or Debian available, but must via Web browser as tar file from Apple's Web Download (http://developer.apple.com/opensource/server/streaming/index.html) (registration required). The installation is described here the package Official Release - DSS 5.5.5 -> Linux -> streaming server (http://www.opensource.apple.com/projects/streaming/release/DarwinStreamingSrvr5.5.5-Linux.tar.gz) is required, which the Linux binaries. The file is then downloaded and unpacked in the home directory.


After unpacking a terminal is opened and executed the following commands:

cd DarwinStreamingSrvrlinux Linux
sudo addgroup --system qtss
sudo adduser --system --no-create-home --ingroup qtss qtss

Gutsy Fawn

Under Ubuntu 7.04 Dapper Fawn the command is:
sudo. / Install
Dapper Drake

Under Ubuntu 6.06 Dapper Drake is the call warrant against:
sudo checkinstall - pkgname = darwin-server - pkgversion = 5.5.5. / Install
Here is a brief explanation of what the different commands effect:
Change in the scale when unpacking subdirectory
Creating a user group "qtss" (otherwise the installation doesn't work)
Creating a user "qtss" (as before, but strangely ubuntu not necessary?)
Calling the installation routineAfter entering the last command line, the installation routine automatically and directed all the necessary directories and so spontaneous. It will also name and password for the administrator of the Darwin server queried. After completing the installation, the Darwin server automatically.

The installation of the server software is closed and the terminal can be closed.


The following table presents an overview of the most important files and directories of the Darwin server:

/usr/local/sbin/Darwin Streaming Server ---- Server Software
/usr/local/sbin/streamingadminserver.pl ---- Web Frontend
/etc/streaming ---- Configuration Dir
/etc/streaming/streamingserver.xml ---- Configuration File Server
/var/streaming/logs ---- Logs
/usr/local/movies ---- Default directory for video files

Then, the file /etc/streaming/streamingserver.xml must be given write privledges, otherwise no configuration can be saved:
sudo chmod 755 /etc/streaming/streamingserver.xml
Configuration and Test

The configuration of the Darwin server via a web interface and the following link called:


After signing up as an administrator using the software installation previously elected login information can now be made more settings. When you first call up the site initially queried following information:
MP3 Broadcast Password
Secure Administration
Media Folder: /usr/local/movies
Streaming on Port 80 Streaming on Port 80It is important here first is that the path to the video files (Media Folder) correctly specified, all other issues can safely with the "Next" button skipped.In the specified directory /usr/local/movies are already some demo videos, for the first function tests can be used. It is therefore appropriate that this requirement to make changes at any time are on the configuration menu. After defining these four points will eventually configuration mask for the Darwin server, in other settings can be made. Leave the configuration screen by clicking on "Sign Out" (left column bottom).

Now you can test whether the Darwin server works as desired. This is the VLC media player (http://wiki.ubuntuusers.de/VLC) opened and the menu "File -> Open Network Stream" stream following address:


If everything is installed correctly, you should now be a player in the supplied sample videos will be shown. Congratulations! :)

Start Server

During power of the computer is not of the Darwin server automatically, but servers and web interface must either in a terminal on the following two lines of command

sudo /usr/local/sbin/DarwinStreamingServer

Or by corresponding entries in the Start menu manually invoked. As servers and web interface can also start automatically, is contributing startup. In addition, there are init scripts for the Darwin server and the admin interface.

MPEG-4 video streaming

In order to use the server as streaming video-on-demand server videos must be in MPEG-4 format (file extension .mp4). Using the under video editing or DVD rippin tools. Videos in Quicktime format (. Mov) could also be used, but are probably less interesting.

However, before an MPEG-4 video with the Darwin server can be streamed must have known in advance hint tracks in the data stream added. They are required to fast forward and rewind the video. For inserting the hint tracks use Tool MP4Box in the package:
gpac (multiverse, [2])The syntax for the command call for inserting the hint tracks reads:

MP4Box -hint dateiname.mp4

With the option-unhint can be inserted information may also be removed.

Alternatively, can the hint tracks with the tool mp4creator from the MPEG4IP project (http://mpeg4ip.sourceforge.net/).

After inserting the hint tracks, the video file only in the video directory of the Darwin server will be copied or moved, immediately thereafter, the video for the call may be accessed via the web interface also includes a playlist can be created.

MP3 audio streaming

With the Darwin server can not only MPEG-4 videos, but also MP3 audio files stream. As you can create MP3 files, for example, in the contribution rip CDs. To existing MP3 files on stream, must first play lists, which, thanks to the existing web interfaces but made relatively quickly. (Guide in German, not included)

The MP3 player, the create play lists at the address:

December 28th, 2007, 08:07 AM
GREAT Tutorial!!! I have been wondering how to set up DSS/QTSS for a very long time!!! This also tutorial also works for 7.10. Gpac works like a charm, just use it to convert your mp4s for hint!:KS

April 23rd, 2008, 09:38 AM


must be run as root too

sudo /usr/local/sbin/streamingadminserver.pl

or otherwise you'll get an error

Couldn't find the en language messages file! at /usr/local/sbin/streamingadminserver.pl line 2167.

Killing the server

root@mansikki:~# ps -Af | grep -i stream
root 5857 1 0 11:28 ? 00:00:00 /usr/local/sbin/DarwinStreamingServer
qtss 5858 5857 0 11:28 ? 00:00:00 /usr/local/sbin/DarwinStreamingServer
qtss 6061 1 0 11:32 ? 00:00:00 /usr/bin/perl /usr/local/sbin/streamingadminserver.pl
root 6233 6205 0 11:35 pts/9 00:00:00 grep -i stream

killall DarwinStreamingServer
kill 6061

July 18th, 2008, 05:05 PM
I just build latest version (6.0.3) * , It works on mp4 files, but are you able to start the playlist feature ?

It fails to start :

An error occurred while starting or stopping your playlist.

* get the dss package at http://rzr.online.fr/q/apt

October 26th, 2008, 07:06 PM
I created necessary files (find attached) to produce debian package of the Darwin Streaming Server using debuild program. The rules are for building the DSS for amd64, but should be trivial to adopt for i386 arch. The checkinstall approach was not working properly, as the original Install script is too interactive for that.

The files should be unpacked inside of the DarwinStreamingSrvr6.0.3-Source directory, that is automatically created by dss.sh script from following URL:

October 29th, 2008, 02:27 AM

I build it for amd64 on hardy too :

But maybe we can merge out works since it's needed to be patched ...

I plan also to fill a bug on debian side


November 10th, 2008, 07:33 PM
Can you help? the amd 64 package installed well but the password is not the same as the one I set in using the source. or can you tell me where the password is stored so that I can change it, TIA

November 10th, 2008, 08:03 PM
There is file /etc/streaming/qtusers

to manage the file use qtpasswd tool as follows:

/usr/bin/qtpasswd -c -p password administrator

November 11th, 2008, 05:03 PM
Thanks for the reply, I did find that. When I tried that it created a new password file and still wouldn't allow me to log in with the newly created u/p, the streamingadmin page. I even killed the two servers "Darwinstream and streamingadmin" any other help would be appreciated.

November 12th, 2008, 01:34 AM
I found the answer disabling all authentication.


December 4th, 2008, 03:13 PM
Start Server

During power of the computer is not of the Darwin server automatically, but servers and web interface must either in a terminal on the following two lines of command

sudo /usr/local/sbin/DarwinStreamingServer

Or by corresponding entries in the Start menu manually invoked. As servers and web interface can also start automatically, is contributing startup. In addition, there are init scripts for the Darwin server and the admin interface.

I downloaded and followed the instructions in the tutorial but I got stuck in the part where I can view the server on the ipaddress:1220 part. I'm using Ubuntu JeOS 8.04 and I think it has something to do with that... I'm not sure though... I've tried to use the above instructions in starting the server but there's no file there that says DarwinStreamingServer or the other one. All it says is:

root@ubuntu-jeos:~# ls /usr/local/bin/
createuserstreamingdir PlaylistBroadcaster StreamingLoadTool
MP3Broadcaster qtpasswd

Any ideas?


I got it to work by using:

useradd -g qtss qtss

thanks anyways!

December 12th, 2008, 04:43 PM
Let me link this post to : http://bugs.debian.org/508353

December 24th, 2008, 07:36 PM
With the Darwin Server,
can one insert dynamically created audio content and
send it to the streamed mp3 file? This would be useful
in broadcasting one's voice (from a mic) or even
inserting output from a text-to-speech translator
into the stream. Thanks!

December 25th, 2008, 09:16 AM
Yes, you can use the Darwin as a reflector, in which case it can accept broadcast of rtp stream (produced by vlc) and rebroadcast it as an rtsp stream. For that vlc can be run as follows (for broadcasting both video and audio):

/usr/local/bin/vlc $VideoFile -Irc --sout '#transcode{vcodec="H263",width='$width',height='$height',vb="'$vbitrate'",fps="'$fps'",acodec="samr",ab="'$abitrate'",samplerate="8000",channels="1"}:rtp{dst="'$LocalIP'",port-audio="22002",port-video="22000",ttl="6",sdp="file:///usr/local/movies/vlc.sdp"}'

June 12th, 2009, 07:37 PM
Here's working tutorial getting Darwin Streaming Server up and running on hardy - http://www.jusupov.com/2009/06/13/how-to-install-darwin-streaming-server-on-ubuntu-hardy/

June 26th, 2009, 09:05 AM
I simplified the start/stop script to make it work for DSS 6.0.3 on Ubuntu 9.04 (no need to start DSS and admin separatly as pl script is doing it).

# chkconfig: 35 92 12
# description: Quicktime Streaming Media Server
# init script to start up the quicktime (Darwin) streaming server

case "$1" in
if test -r /var/lock/dssd
echo "Lockfile /var/lock/dssd exists. Server not started."
echo "Starting Darwin Streaming Server: "
touch /var/lock/dssd
echo "Darwin Streaming Server started..."

echo "Stopping Darwin Streaming Server: "
[ -f /var/lock/dssd ] || exit 0
echo "stopping..."
killall streamingadminserver.pl
rm -f /var/lock/dssd

$0 stop
sleep 1
$0 start

echo "Usage: $0 [start|stop|restart]"
exit 1
exit 0

August 23rd, 2009, 08:37 PM

I have a problem with DSS, I'm unable to stream over internet but i have no problem to stream into a my local lan.

I have installed DSS versions 5.5.5 and 6.0.3 on a Ubuntu 9.04 Server and
Desktop editions. I try combinatiosn over 4 diferent servers.

The streaming works's fine with this clients on a local lan:

Quicktime ( Windows )
Mplayer ( Linux 1.0rc2-4.3.3 )
Vlc ( Linux 0.9.9a)
MP4Player ( Linux 1.6 )

But DSS only works fine with VLC client over internet ( with artifacts),
all other clients fail.

Is not a ports problem.

== Mplayer log when fail. ==


mplayer rtsp:// (
MPlayer 1.0rc2-4.3.3 (C) 2000-2007 MPlayer Team
CPU: Intel(R) Core(TM)2 Duo CPU T9300 @ 2.50GHz (Family: 6, Model:
23, Stepping: 6)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote

Playing rtsp:// (
Resolving for AF_INET6...
Couldn't resolve name for AF_INET6:
Connecting to server[]: 554...
A single media stream only is supported atm.
rtsp_session: unsupported RTSP server. Server type is 'DSS/6.0.3
(Build/526.3; Platform/Linux; Release/Darwin Streaming Server;
State/Development; )'.
STREAM_LIVE555, URL: rtsp:// (
Stream not seekable!
file format detected.
Initiated "video/H264" RTP subsession on port 50260
Initiated "audio/MPEG4-GENERIC" RTP subsession on port 34514
demux_rtp: Failed to guess the video frame rate
VIDEO: [H264] 0x0 0bpp 0.000 fps 0.0 kbps ( 0.0 kbyte/s)
FPS not specified in the header or invalid, use the -fps option.
================================================== ========================
Forced audio codec: mad
Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
FAAD: compressed input bitrate missing, assuming 128kbit/s!
AUDIO: 16000 Hz, 2 ch, s16le, 128.0 kbit/25.00% (ratio: 16000->64000)
Selected audio codec: [faad] afm: faad (FAAD AAC (MPEG-2/MPEG-4 Audio)
================================================== ========================
AO: [pulse] 16000Hz 2ch s16le (2 bytes per sample)
Video: no video
Starting playback...
A: 0.0 (unknown) of 70.0 (01:10.0) ??,?%

Exiting... (End of file)


== Mp4player log when fail ==

16:59:05.320-plugin-6: Adding video plugin rawv
16:59:05.321-plugin-6: Adding RTP plugin enc-mpeg4-generic:audio
16:59:05.321-plugin-6: Adding video plugin xvid-10
16:59:05.321-plugin-6: Adding audio plugin rawa
16:59:05.322-plugin-6: Adding RTP plugin mpeg4-generic
16:59:05.322-plugin-6: Adding RTP plugin h264
16:59:05.322-plugin-6: Adding audio plugin a52dec
16:59:05.323-plugin-6: Adding RTP plugin isma-href
16:59:05.323-plugin-6: Adding audio plugin g711
16:59:05.323-plugin-6: Adding RTP plugin rfc3267
16:59:05.324-plugin-6: Adding audio plugin celp
16:59:05.326-plugin-6: Adding audio plugin mp3
16:59:05.331-plugin-6: Adding video plugin MPEG4 ISO
16:59:05.335-plugin-6: Adding audio plugin ffmpeg audio
16:59:05.335-plugin-6: Adding audio plugin aac
16:59:05.336-plugin-6: Adding video plugin ffmpeg
16:59:05.336-plugin-6: Adding video plugin h261
16:59:05.337-plugin-6: Adding RTP plugin enc-mpeg4-generic:video
16:59:05.337-plugin-6: Adding RTP plugin rfc-2429
16:59:05.337-plugin-6: Adding RTP plugin h261
16:59:05.337-plugin-6: Adding text plugin plaintext
16:59:05.338-plugin-6: Adding text plugin href
16:59:05.338-plugin-6: Adding audio plugin wav
16:59:05.338-plugin-6: Adding RTP plugin mpeg4-latm
16:59:05.459-videosync-6: Max Window resolution 1680x1050
16:59:05.459-videosync-7: Setting video mode 176 144 1 1
16:59:05.642-my_player-7: Creating streaming
rtsp:// (
16:59:05.814-my_player-7: setting control url to
rtsp:// (
16:59:05.869-ffmpeg-7: codec value 0x7f42eb726420
16:59:05.869-plugin-7: Found matching video plugin ffmpeg
16:59:05.870-plugin-7: Found matching audio plugin aac
16:59:05.870-videosync-7: persistence is 0x2373790
16:59:05.870-my_player-7: First port is 1024
16:59:05.870-my_player-7: Ip ports are 1024 1025
16:59:05.957-media-6: Transport returned is
16:59:05.957-media-6: setting default source address from rtsp
16:59:06.021-my_player-7: First port is 1026
16:59:06.021-my_player-7: Ip ports are 1026 1027
16:59:06.107-media-6: Transport returned is
16:59:06.107-media-6: setting default source address from rtsp
16:59:06.204-my_player-7: rtp info is
'url=rtsp://;seq=53704;rtptime=739307306,url=rtsp://;seq=19711;rtptime=977869175 (;seq=53704;rtptime=739307306,url=rtsp://;seq=19711;rtptime=977869175)'
16:59:36.206-avsync-2: No media has been initialized or received
16:59:36.207-avsync-2: Fatal error while initializing hardware
16:59:36.207-avsync-6: sync changed state Init to Done
16:59:36.208-avsync-6: sync changed state Done to Exit
16:59:36.293-media-7: closing down media 0
16:59:36.332-media-5: Video decoder skipped 0 frames
16:59:36.332-media-7: closing down media 1
16:59:36.829-video-5: video Sync Stats:
16:59:36.829-video-5: Displayed-behind frames 0
16:59:36.829-video-5: Total frames displayed 0
16:59:36.829-video-5: Max behind time 0
16:59:36.829-video-5: Skipped rendering 0
16:59:36.829-video-5: Filled frames 0
16:59:36.829-avsync-7: grabbed persist
16:59:36.829-audiobuf-6: total samples played: 0
16:59:36.829-audiobuf-6: sync samples added : 0
16:59:36.829-audiobuf-6: sync samples removed: 0

September 20th, 2009, 08:11 AM

May 12th, 2010, 03:28 PM
I can't get this to work in ubuntu 9.10 server.
At the end of the installation; after the administrator username and password is entered,
I get the message:

./Install: line 408: /usr/local/bin/qtpasswd: No such file or directory
./Install: line 416: /usr/local/bin/qtpasswd: No such file or directory

also my usr/local/sbin only contains a map called StreamingServerModules with nothing in it..

The /etc/streaming/streamingserver.xml and the binarys to start the server are also nowhere to be found...:'(

May 14th, 2010, 09:42 AM
Okay so i tried it again, but this time on ubuntu desktop 9.10 and desktop 10.04.
But i get the exact same errors as i mentioned above??
I don't understand what am I doing wrong....? anyone?

June 4th, 2010, 09:16 PM
how to install and use DSS? on ubuntu 10.04 ? I'm sick from reading about old tutorials :confused:

June 6th, 2010, 07:58 AM
how to install and use DSS? on ubuntu 10.04 ? I'm sick from reading about old tutorials :confused:

Hi there

+1 for this one!

By The Way, it is commonly known that AKAMAI is using Darwin to provide the mobile version of Youtube.

Does anyone know what version they use and under what OS (and version)?

If AKAMAI have "In house modded" DSS, do they then have to offer modifications or do they get away with it cause of the "SaaS loophoole"?

Just some thoughts because knowledge of what they manageded to deploy so largely would be interesting even in smaller scale.:popcorn:


August 13th, 2010, 11:52 PM
how to install and use DSS? on ubuntu 10.04 ? I'm sick from reading about old tutorials :confused:

I as well am having this problem. Ubuntu 10.04

Couldn't find the en language message file!

I've tried everything from DSS 5.5.5 to 6.0.3 special builds. The ones that work.

Has anyone succeeded?

November 22nd, 2010, 09:02 PM
Hi I use this script


sudo apt-get install build-essential wget
sudo addgroup --system qtss
sudo adduser --system --no-create-home --ingroup qtss qtss

wget http://static.macosforge.org/dss/downloads/DarwinStreamingSrvr6.0.3-Source.tar
tar -xvf DarwinStreamingSrvr6.0.3-Source.tar
mv DarwinStreamingSrvr6.0.3-Source DarwinStreamingSrvr6.0.3-Source.orig
wget http://dss.macosforge.org/trac/raw-attachment/ticket/6/dss-6.0.3.patch
patch -p0 < dss-6.0.3.patch
mv DarwinStreamingSrvr6.0.3-Source.orig DarwinStreamingSrvr6.0.3-Source
wget http://dss.macosforge.org/trac/raw-attachment/ticket/6/dss-hh-20080728-1.patch
patch -p0 < dss-hh-20080728-1.patch
#need to answer n then y
cd DarwinStreamingSrvr6.0.3-Source
mv Install Install.orig
wget http://dss.macosforge.org/trac/raw-attachment/ticket/6/Install
chmod +x Install
sudo ./Install