Difference between revisions of "Streaming Service with Icecast"
Line 16: | Line 16: | ||
* Make sure you listen on 8000, adjust your <code>iptables</code>: | * Make sure you listen on 8000, adjust your <code>iptables</code>: | ||
-A INPUT -p tcp -m tcp --dport 8000 -j ACCEPT | -A INPUT -p tcp -m tcp --dport 8000 -j ACCEPT | ||
+ | * Create a <code>systemd</code> service file: | ||
+ | <pre> | ||
+ | [Unit] | ||
+ | Description=Icecast | ||
+ | After=network.target | ||
+ | |||
+ | [Service] | ||
+ | Type=simple | ||
+ | ExecStart=/usr/local/bin/icecast -c /usr/local/etc/icecast.xml | ||
+ | ExecReload=/usr/bin/kill -HUP $MAINPID | ||
+ | [Install] | ||
+ | WantedBy=multi-user.target | ||
+ | </pre> | ||
== Configuration == | == Configuration == |
Revision as of 00:09, 17 December 2019
Note: we will be using the icecast-kh
fork that contains some extra stuff (FIXME: unpack stuff).
Installation (Debian)
Note: At time of writing, icecast-kh
suffers from a small compilation problem with OpenSSL.
- Install dependencies
apt install libxslt1-dev libogg-dev libvorbis-dev libtheora-dev libcurl4-openssl-dev
- Get the sources
cd /usr/src git clone https://github.com/karlheyes/icecast-kh
- Compile and install
cd icecast-kh ./configure --with-openssl make make install
- Make sure you listen on 8000, adjust your
iptables
:
-A INPUT -p tcp -m tcp --dport 8000 -j ACCEPT
- Create a
systemd
service file:
[Unit] Description=Icecast After=network.target [Service] Type=simple ExecStart=/usr/local/bin/icecast -c /usr/local/etc/icecast.xml ExecReload=/usr/bin/kill -HUP $MAINPID [Install] WantedBy=multi-user.target