Prywatne radio.

Szukałem rozwiązania na zrobienie jednego punktu dystrybucji mojej muzyki i najlepiej gdyby był to mój prywatny serwer, dlatego że na co dzień korzystam z firmowego laptopa którego nie chce zaśmiecać prywatnymi rzeczami. Idea była taka aby było to w miarę proste i zarządzane z konsoli.

Okazało się, że to wcale nie jest takie trudne jakby się mogło zdawać.

Centralnym miejscem całego rozwiązania jest icecast2 co najmniej w wersji 2.3.1 oraz mpd co najmniej w wersji 0.12.

Instalujemy sobie icecast2. W konfiguracji /etc/icecast2/icecast.xml najważniejsze jest ustawienie odpowiedniej autoryzacji dla źródeł muzyki i administratora:

<authentication>
        <source-password>mojehaslo</source-password>
        <admin-user>admin</admin-user>
        <admin-password>mojehaslo</admin-password>
</authentication>

Dodatkowo w zależności od przepustowości łącza pomiędzy klientem a serwerem warto także pobawić się parametrami:M

        <burst-on-connect>1</burst-on-connect>
        <burst-size>1048576</burst-size>

W moim przypadku ustawiłem 1Mb co pozwoliło mi na uniknięcie dużych opóźnień ( serwer jest oddalony o jakieś 1000 km ).

Następny krok to instalacja i konfiguracja mpd. W konfiguracji /etc/mpd.conf ustawiamy odpowiednio katalogi:

music_directory     "/home/music"
playlist_directory   "/var/lib/mpd/playlists"
db_file                 "/var/lib/mpd/tag_cache"
log_file                "/var/log/mpd/mpd.log"
error_file              "/var/log/mpd/errors.log"
pid_file                "/var/run/mpd/pid"

oraz oczywiście parametry wyjścia dla icecast:

audio_output {
        type           "shout"
        name          "Taihen's Music Stream"
        host           "localhost"
        port           "8000"
        mount        "/mpd.ogg"
        password    "mojehaslo"
        bitrate        "128"
        format        "44100:16:1"
        user           "source"
        description "All kind of shit"
        genre        "Everything"
}

Ewentualnie możemy sobie zmienić bitrate. 128kbit jest jak dla mnie wystarczające.

Jako sterownie mpd wystarczy nam np. ncmpc którego sobie też zainstalujemy na zdalnej maszynie.

Na koniec jeżeli wszystko się udało, możemy sobie otworzyć dowolnego grajka obsługującego stream np. Foobar, mplayer, Amarok itp i jako adres naszego radia wpisać http://ipserver:8000/mpd.ogg.m3u.

Miłego słuchania.