Skip to content
Snippets Groups Projects
Commit 56d5ab86 authored by ale's avatar ale
Browse files

add a short section on transcoding

parent b49f402c
No related branches found
No related tags found
No related merge requests found
...@@ -3,19 +3,19 @@ ...@@ -3,19 +3,19 @@
autoradio autoradio
========= =========
The AutoRadio service aims to provide a reliable, fault-tolerant Icecast The *autoradio* service aims to provide a reliable, fault-tolerant
streaming cluster for audio and video. It provides all the necessary Icecast streaming cluster for audio and video. It provides all the
components to ensure that the traffic from the source to the clients necessary components to ensure that the traffic from the source to the
is uninterrupted, even in face of high load or server crashes. All clients is uninterrupted, even in face of high load or server crashes.
this, if possible, without any operator intervention. All this, if possible, without any operator intervention.
It is a full-stack service, meaning that it includes its own DNS and It is a full-stack service, meaning that it includes its own DNS and
HTTP servers, for full control of the request flow. HTTP servers, for full control of the request flow.
AutoRadio works by using etcd_ to coordinate the various nodes and store Autoradio works by using etcd_ to coordinate the various nodes and store
the global mount configuration. The intended target is a set of the global mount configuration. The intended target is a set of
homogeneous servers (or virtual machines) dedicated to this purpose. homogeneous servers (or virtual machines) dedicated to this purpose.
AutoRadio also needs a dedicated DNS domain (or a delegation for a Autoradio also needs a dedicated DNS domain (or a delegation for a
subdomain). subdomain).
...@@ -117,7 +117,7 @@ Operation ...@@ -117,7 +117,7 @@ Operation
--------- ---------
In order to create a new stream (*mount*, in the Icecast terminology), In order to create a new stream (*mount*, in the Icecast terminology),
assuming you are running AutoRadio on the ``example.com`` domain: assuming you are running autoradio on the ``example.com`` domain:
#. On any node, run:: #. On any node, run::
...@@ -168,6 +168,18 @@ The ``radiod`` and ``redirectord`` daemons can send runtime metrics to ...@@ -168,6 +168,18 @@ The ``radiod`` and ``redirectord`` daemons can send runtime metrics to
a *statsd* server (by default on localhost:8125). a *statsd* server (by default on localhost:8125).
Transcoding
+++++++++++
It is possible to set up a mount to relay an upstream mount re-encoded
with different parameters, using the ``radioctl
create-transcoding-mount`` command. In this case, autoradio will
automatically start up a process (a liquidsoap_ instance) to perform
the re-encoding, which will connect as the mount source. A
master-election protocol is used to ensure that only one such process
per mount is started in the whole cluster.
Testing Testing
------- -------
...@@ -187,3 +199,4 @@ Use ``vagrant ssh`` to inspect them. ...@@ -187,3 +199,4 @@ Use ``vagrant ssh`` to inspect them.
.. _autoca: https://git.autistici.org/ai/autoca .. _autoca: https://git.autistici.org/ai/autoca
.. _Vagrant: http://www.vagrantup.com/ .. _Vagrant: http://www.vagrantup.com/
.. _godep: https://github.com/tools/godep .. _godep: https://github.com/tools/godep
.. _liquidsoap: http://savonet.sourceforge.net/
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment