DarwinStreamingServer

From Alessandro's Wiki

This is a streaming for the Apple QuickTime format.

* download from: http://static.macosforge.org/dss/downloads/

Installation

  • User: (command may change depending on distribution/version)
groupadd --system qtss; adduser --system --no-create-home -G qtss qtss
id qtss
uid=501(qtss) gid=501(qtss) groups=501(qtss)

From Source

  • run "'Buildit'" script in source.
  • run '"Install'" script in source.
  • edit the configuration file streamingserver.xml in /etc/streaming.
    • bind_ip_addr to the ip to listen to.
    • rtsp_port

another way

#!/bin/bash

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
./Buildit
sudo ./Install

RedHat based (using rpm)

(http://www.howtoforge.com/apples-darwin-streaming-server-on-centos-5.2)
  • yum groupinstall "Development Tools"
  • yum install perl-Net-SSLeay
  • wget http://www.abrahamsson.com/DarwinStreamingServer-6.0.3-2.src.rpm
  • mkdir -p /usr/src/redhat/SOURCES
  • rpm -ivh DarwinStreamingServer-6.0.3-2.src.rpm
  • cd /usr/src/redhat/SPECS/ || cd /root/rpmbuild/SPECS
  • rpmbuild -bb DarwinStreamingServer.spec
  • cd /usr/src/redhat/RPMS/`uname -m` || cd /root/rpmbuild/RPMS/`uname -m`
rpm -Uvh DarwinStreamingServer-6.0.3-2.i686.rpm
  • on another terminal, killall -9 DarwinStreamingServer (because the installation hangs)
rpm -Uvh DarwinStreamingServer-Utils-6.0.3-2.i686.rpm
  • it will say:
Creating administrator user with default password password. Please change it by running qtpasswd

Using it

  • qtpasswd changes QTSS administrator password
  • ubuntu/Debian init script:
/etc/init.d/darwinstreamingserver start|stop
  • RedHat init script:
/etc/init.d/dss start|stop
  • RedHat startup control:
chkconfig --level=35 dss on
  • the configuration files are in (by default):
/etc/dss/

Management interface

  • login: administrator
  • password: the one you set with qtpasswd
  • the user must be in the admin group, usually "admin" in the file qtgroups

Logs

  • admin interface logs:
tail -f /var/dss/logs/streamingadminserver.log
  • streamer logs:
tail -f /var/dss/logs/StreamingServer.log
  • error logs:
tail -f /var/dss/logs/Error.log

Network and Firewall

  • if you work with iptables, these are your lines
iptables -A INPUT --protocol tcp --destination  $ip --dport 554   -m state --state NEW -j ACCEPT      # darwin  
iptables -A INPUT --protocol tcp --destination  $ip --dport 1220 -m state --state NEW -j ACCEPT    # darwin (admin) 
iptables -A INPUT --protocol udp --destination $ip --dport 6970:6989 -m state --state NEW -j ACCEPT   # darwin (udp)
iptables -A INPUT --protocol tcp --destination  $ip --dport 7070  -m state --state NEW -j ACCEPT    # darwin
  • port 80 is needed by the daemon, in case of co-working with Apache, ensure to se either:
    • Apache listen on:
Listen 192.168.0.1:80
Listen 443
    • dss listen to:
 <PREF NAME="bind_ip_addr" >192.168.0.2</PREF>

Users

qtaccess
AuthUserFile /etc/dss/qtusers
qtpasswd user
qtgroup