SC Trans installieren und konfigurieren Beitrag drucken

SC Trans installieren und konfigurieren

Immer wieder taucht in diversen Foren die Frage auf, wie man den SC Trans installiert und konfiguriert. Dieser Artikel soll euch dabei behilflich sein.

Da man für die Installation nur Grundkenntnisse im Umgang mit Linux benötig, werde ich diese auch nur in Stichpunkten beschreiben. Wer damit nicht klar kommt sollte sich überlegen, ob ein eigener Server wirklich das richtige für sie/ihn ist und ob ein Streamhoster nicht die bessere Lösung wäre.
Dies mag vielleicht arrogant klingen, aber ich bezweifel stark, dass in diesem Fall eine ausreichende Sicherheit des Servers gewährleistet ist. Es gibt schon genug „Zombis“ im Netz und Ihr seid erst einmal die, die bei Missbrauch des Servers (unter Umständen auch straf-/zivilrechtlich) zur Verantwortung gezogen werden können.

Installation:

  1. Einen Benutzer anlegen unter dem SC Trans und ggf. der SHOUTcastserver laufen soll
  2. Einen Ordner im Homeverzeichnis des Benutzers anlegen (z.B. Autostream)
  3. Per wget die aktuelle Version des SC Trans, (hier unter den Stickies zu finden) in den neu angelegten Ordner laden
  4. Die auf den Server geladene Datei entpacken mitels des Befehls
    tar xvzf Dateiname

    entpacken

Konfiguration:

Die einfachste Weise, den SC Trans zu konfigurieren ist die Nutzung des Configbuilders (englisch), welcher im Verzeichnis config_builder zu finden ist. Ich werde hier jedoch die wichtigsten Parameter der sc_trans.conf erklären.

Pfadangaben können in der Konfig absolut oder relativ angegeben werden. Ich empfehle jedoch die absulute (also vollständige) Angabe der Pfade. Ansonsten kann es sein, dass die Pfade nicht gefunden werden. Beispielsweise wenn man den SC Trans mittels eines Start-Script in /etc starten will. Für dieses Beispiel ist SC Trans im Verzeichnis /home/stream/autostream/ installiert und gehört dem Benutzer stream. Ferner werden zwei Playlisten und Moderatoren angelegt sowie ein 192kpbs MP3 Hauptstream und ein 64kbps AAC Plus Modemstream im SHOUTcast Protokoll 1 Betrieb (SHOUTcast Streamserver 19.x). Am Ende des Artikels erkläre ich dann noch die Nutzung im SHOUTcast Protokoll 2 und 3 zur Nutzung der Multistreamfähigkeit (SHOUTcast Streamserver 2.x).

sc_trans.conf (SHOUTcast 1 Protokoll)

; Logging
; ----------------------------------------
Screenlog=0
logfile=/home/stream/autostream/logs/sc_trans.log

; API
; ----------------------------------------
adminport=7999
adminuser=admin
adminpassword=goaway

; Konfig beim beenden speichern
; ----------------------------------------
configrewrite=0
calendarrewrite=0

; MP3 Encoderlizenz
; ----------------------------------------
unlockkeyname=Max Mustermann
unlockkeycode=XXXXX-XXXXX-XXXXX-XXXXX

; Playlisten
; ----------------------------------------
playlistfile=/home/stream/autostream/playlists/master.lst
playlists=/home/stream/autostream/playlists/priority
archive=/home/stream/autostream/playlists/archiv
playlistfilename_1=Jingles
playlistfilepath_1=/home/stream/autostream/playlists/jingles.lst
playlistfilename_2=News
playlistfilepath_2=/home/stream/autostream/playlists/news.lst
shuffle=1
xfade=5
xfadethreshold=10

; Moderatoren Login
; ----------------------------------------
djport=9000
djport2=9010
autodumpsourcetime=10
djcapture=0
djbroadcasts=/home/stream/autostream/streamrecords
djfilepattern=_%Y_%m_%d_%H_%M_%S.

djlogin_1=Jane_Doe
djpassword_1=geheim
djpriority_1=2

djlogin_2=John_Doe
djpassword_2=auch_geheim
djpriority_2=1

; Streamserver 1 (192kbps MP3 Stream)
; ----------------------------------------
endpointname_1=192kbps_MP3_Stream
encoder_1=MP3
bitrate_1=192000
samplerate_1=44100
channels_1=2
mp3quality_1=1
mp3mode_1=0

outprotocol_1=1
serverip_1=127.0.0.1
serverport_1=8000
password_1=confidential
streamid_1=1

; Streamserver 2 (64kbps AAC Plus Stream)
; ----------------------------------------
endpointname_2=64kbps_AACP_Stream
encoder_2=aacp
bitrate_2=64000
samplerate_2=44100
channels_2=2

outprotocol_2=1
serverip_2=127.0.0.1
serverport_2=8010
password_2=confidential
streamid_2=1

; Stream Metadaten
; ----------------------------------------
streamtitle=Radio WasWeissIch
streamurl=http://www.radio-wasweissich.de
genre=Rock, Metal
aim=NA
irc=NA
icq=NA
public=0
usemetadata=1
nextlookahead=0

Logging
  • Zeile 3 [screenlog]
    Ermöglicht das (De)Aktivieren der Logausgabe auf der Konsole. Im Daemonbetrieb sollte diese Option deaktiviert sein.
    Optionen: 1 (Aktiviert) | 0 (Deaktiviert)
  • Zeile 4 [logfile]
    Absoluter oder relativer Pfad zum Logfile. Ich empfehle die absolute Pfadangabe. Das Logfile wird beim Starten des SC Trans automatisch erstellt.
API

Dient zum festlegen der Verbindungsparameter zur SC Trans API. Auch wenn man diese Schnittstelle nicht nutzt, sollten diese auf jeden Fall eingetragen und angepasst werden. Ansonsten stellt SC Trans die Standardwerte ein und jeder, der die URL kennt, kann über die API die Einstellungen eures SC Trans ändern.

  • Zeile 8 [adminport]
    Port, der von externen Quellen (z.B. einem Webinterface) zur Verbindung mit der API genutzt wird.
  • Zeile 9 [adminuser]
    Benutzername zur Authentifizierung
  • Zeile 10 [adminpass]
    Passwort zur Authentifizierung
Konfig beim beenden speichern

Macht nur Sinn, wenn man den SC Trans über die Api steuert, ansonsten sollten diese Optionen deaktiviert bleiben.

  • Zeile 14 [configrewrite]
    Speichert die Konfigurationsdatei beim Beenden von SC Trans
    Optionen: 1 (Aktiviert) | 0 (Deaktiviert)
  • Zeile 15 [calendarrewrite]
    Speichert die calendar.xml beim Beenden des SC Trans
    Optionen: 1 (Aktiviert) | 0 (Deaktiviert)
MP3 Encoderlizenz

Um im MP3 Format zu Streamen, benötigt SC Trans eine Encoderlizenz, welche man HIER erwerben kann.

  • Zeile 19 [unlockkeyname]
    Name, unter dem die Lizenz erworben wurde
  • Zeile 20 [unlockkeycode]
    Der Lizenzschlüssel im Format XXXXX-XXXXX-XXXXX-XXXXX
Playlisten
  • Zeile 24 [playlistfile]
    Relativer oder absoluter Pfad zur Master-Playliste. Ich empfehle die absolute Pfadangabe.
    Die Master-Playliste ist die Playliste, welche immer dann läuft, wenn kein anderes Event aktiv ist und muss in jedem Fall angegeben werden.
  • Zeile 25 [playlists]
    Relativer oder absoluter Pfad zum Verzeichnis in dem priorisierte Playlisten liegen. Ich empfehle die absolute Pfadangabe.
    Playlisten in diesem Ordner werden beim nächsten Songwechsel automatisch abgespielt, ohne das ein Event hierfür angelegt werden muss.
  • Zeile 26 [archive]
    Relativer oder absoluter Pfad zum Playlistarchiv. Ich empfehle die absolute Pfadangabe. Das Verzeichnis muß ggf. angelegt werden.
    Priorisierte Playlisten (Siehe Zeile 25) werden in diese Verzeichnis verschoben, nachdem sie durchgelaufen sind.
  • Zeile 27 [playlistfilename_n]
    Interner Name einer Playliste für ein Playlist-Event welches über die calendar.xml aufgerufen wird. Der Name mus mit dem Playlistnamen in der calendar.xml identisch sein.
    _n ist durch eine fortlaufende Nummer zu ersetzen also z.B. _1, _2, …
  • Zeile 28 [playlistfilepath_n]
    Relativer oder absoluter Pfad zur Playliste (Zeile 27). Ich empfehle die absolute Pfadangabe.
    _n muss mit der Nummer aus Zeile 27 identisch sein
  • Zeile 29 und 30 -> Siehe Zeile 27 und 28
  • Zeile 31 [shuffle]
    Globale (De)Aktivierung der Shuffle Funktion (Wiedergabe der Songs aus der Playliste in zufälliger Reihenfolge)
    In der calendar.xml kann die Shuffelfunktion explizit (de)aktiviert, bzw. die globale Einstellung übernommen werden.
  • Zeile 32 [xfade]
    Länge des Überblendens (Crossfading) zwischen den Songs in Sekunden
    Zeile 33 [xfadethreshold]
    Mindestlänge in Sekunden, die ein Titel haben muß, um übergeblendet zu werden.
Moderatoren Login
  • Zeile 37 [djport]
    Verbindungsport für Moderatoren die im SHOUTCast-Protokoll 1 senden. Das Passwort wird hier im Format djlogin:djpassord eingegeben.
    Zu beachten ist, dass SC Trans den Port djport und den Port djport +1 benötigt. In diesem Beispiel also 9000 und 9001.
  • Zeile 38 [djport2]
    Verbindungsport für Moderatoren die im SHOUTcast-Protokoll 2 senden. Wird meines Wissens nach derzeit nur vom SHOUTcast DSP Plugin für Winamp und der aktuellen Version von SAM (Version 4.9.x) unterstüzt. Eine 0 (Null) deaktiviert den Port.
    Zu beachten ist, dass SC Trans den Port djport und den Port djport +1 benötigt. In diesem Beispiel also 9010 und 9011.
  • Zeile 39 [autodumpsourcetime]
    Zeit, nach der eine Moderatorenverbindung bei Inaktivität getrennt wird.
  • Zeile 40 [djcapture]
    Globale Einstellung ob moderierte Sendungen aufgezeichnet werden sollen oder nicht. Diese Option kann in der calendar.xml für jeden Moderator noch einmal seperat (de)aktiviert werden.
  • Zeile 41 [djbroadcasts]
    Absolute oder vollständige Pfadangabe zum Verzeichnis, in dem moderierte Sendungen aufgezeichnet werden. Ich empfehle die absolute Pfadangabe
  • Zeile 42 [djfilepattern]
    Format für den Dateinamen, unter dem moderierte Sendungen aufgezeichnet werden. Der String wird mittels strftime formatiert. Die möglichen Parameter findet man z.B. HIER
    Standard: _%Y_%m_%d_%H_%M_%S. Ergibt als Dateiname z.B.: Moderatorenname_2012_11_12_20_00_14.mp3 (oder .aac wenn der Moderator in AAC Plus sendet).
  • Zeile 44 [djlogin_n]
    Loginname des Moderatiors, _n ist durch eine fortlaufende Nummer zu ersetzen also z.B. _1, _2, …
    Es sollte nach möglichkeit nur die Zeichen a-z, A-Z, 0-9, – und _ jedoch keine Sonder- und Leerzeichen verwendet werden.
  • Zeile 45 [djpassword_n]
    Passwort des Moderators, _n muss mit der Nummer aus Zeile 44 identisch sein.
    Es sollte nach möglichkeit nur die Zeichen a-z, A-Z, 0-9, – und _ jedoch keine Sonder- und Leerzeichen verwendet werden.
  • Zeile 46 [djpriority_n]
    Priorität des Moderators, _n muss mit der Nummer aus Zeile 44 identisch sein. Höhere Priorität hat vorrang vor niedriger Priorität.
  • Zeilen 48 – 50 -> siehe Zeilen 44 – 46

Erklärung der Prioritäten: Ob John und Jane Doe verwand bzw. Verheiratet sind entzieht sich meiner Kenntniss. Sollten sie es sein, scheint jedoch Jane die Hosen anzuhaben, da ihre Priorität höher ist als die von John. Sollte John also auf Sendung sein und Jane entschliesst sich jetzt senden zu wollen, würde SC Trans die Verbindung von John trennen und Jane den Stream übergeben. Hätten Jane und John beide die selbe Priorität, könnten sie sich gegenseitig beim Verbinden vom Stream werfen. Welche Folgen dies für den Sendebetrieb des Radios und die vermeintliche Beziehung der beiden hätte, überlasse ich eurer Phantasie 😉

Streamserver 1 (192kbps MP3 Stream)
  • Zeile 54 [endpointname]
    Name des Endpoints zur internen Verwendung von SC Trans
  • Zeile 55 [encoder_n]
    Mediatyp in den encodiert wird.
    Um im MP3 Format zu Streamen, benötigt SC Trans eine Encoderlizenz, welche man HIER erwerben kann.
    _n ist durch eine fortlaufende Nummer zu ersetzen also z.B. _1, _2, …
    Optionen: mp3 (MP3 Stream) | aacp (AAC Plus Stream)
  • Zeile 56 [bitrate_n]
    Bitrate in der encodiert wird. Die Angabe erfolgt in Bit statt Kilobit (also 192000 für einen 192kbps Stream)
    _n muss mit der Nummer aus Zeile 55 identisch sein.
  • Zeile 57 [samplerate_n]
    Samplerate in der encodiert wird. Die Angabe erfolgt in Hz, nicht in kHz (also z.B. 44100 für 44.1Khz).
    _n muss mit der Nummer aus Zeile 55 identisch sein.
  • Zeile 58 [channels_n]
    Anzahl der Channel.
    Optionen: 1 (Mono) | 2 (Stereo)
    _n muss mit der Nummer aus Zeile 55 identisch sein.
  • Zeile 59 [mp3quality_n]
    Encodingqualität
    Optionen: 0 (fast resampling) | 1 (High Quality)
    _n muss mit der Nummer aus Zeile 55 identisch sein.
  • Zeile 60 [mp3mode_n]
    MP3 Encoding Modus
    Optionen:
    0 (CBR) Konstante Bitrate
    1 (VBR – Höchste Qualität) Variable Bitrate
    2 (VBR – Hohe Qualität) Variable Bitrate
    3 (VBR – Mittlere Qualität) Variable Bitrate
    4 (VBR – Niedrige Qualität) Variable Bitrate
    5 (VBR – Niedrigste Qualität) Variable Bitrate
    Empfohlen wird Option 0
    _n muss mit der Nummer aus Zeile 55 identisch sein.
  • Zeile 62 [outprotocol_n]
    Verwendetes Sende-Protokoll
    Optionen: 1 (SHOUTcast 1.9.x Protokoll) | 2 (SHOUTcast 2 Protokoll) | 3 (SHOUTcast 2 UVOX Protokoll)
    _n muss mit der Nummer aus Zeile 55 identisch sein.
  • Zeile 63 [serverip_n]
    Hostname oder IP des Streamservers ( z.B. 127.0.0.1 oder example.com)
    _n muss mit der Nummer aus Zeile 55 identisch sein.
  • Zeile 64 [serverport_n]
    Port des SHOUTcast-Servers. Verwendet wird Port und Port +1, in diesem Beispiel also 8000 und 8001
    _n muss mit der Nummer aus Zeile 55 identisch sein.
  • Zeile 65 [password_n]
    Streampasswort des Streamservers. (Bei SHOUTcast 2 Servern nicht mit dem Adminpasswort verwechseln)
    _n muss mit der Nummer aus Zeile 55 identisch sein.
  • Zeile 66 [streamid_n]
    Stream ID des Streams. Diese Option ist nur wichtig, wenn der Streamserver im SHOUTcast Protokollmodus 2 bzw. 3 Betrieben wird (Multistream). In dem Falls muss die hier angegebene Stream ID mit der Stream ID des Streamservers übereinstimmen (Siehe SHOUTcast Protokoll 2 und 3 Konfiguration weiter unten)
    _n muss mit der Nummer aus Zeile 55 identisch sein.
Streamserver 2 (64kbps AAC Plus Stream)
  1. Zeilen 70 – 80 -> Siehe Erklärung der Zeilen 54 – 66
Stream Metadaten
  • Zeile 84 [streamtitle]
    Der Streamtitel bzw. der Name des Radios (Wird in Klammern hinter den Songinformationen angezeigt)
  • Zeile 85 [streamurl]
    Stream URL oder URL zur Radiowebseite
  • Zeile 86 [genre]
    Das Genre / die Genre, die euer Radio hauptsächlich sendet. Mit einführung von SHOUTcast 2 bzw. dem YP2 Protokoll akzeptiert SHOUTcast nur noch die Angabe von max. 3 Genre
  • Zeile 87 [aim]
    AIM Name, über den das Radio erreichbar ist oder NA
  • Zeile 88 [irc]
    IRC Channel des Radios oder IRC Link im Format irc://irc_server.tld/Channelname oder NA
  • Zeile 89 [icq]
    ICQ Name über den das Radio erreichbar ist oder NA
  • Zeile 90 [public]
    Radio im SHOUTcast Stationlisting eintragen
    Optionen: 0 (nein) | 1 (ja)
    Anm.: Diese option kann in der Konfiguration des Streamservers überschrieben werden!
  • Zeile 91 [usemetadata]
    Nutzen der im ID3Tag enthaltenen Titelinformationen
    Optionen: 0 (Titelinformationen werden aus dem Dateinamen extrahiert) | 1 (Titelinformationen werden aus dem ID3Tag gelesen)
    Empfohlen wird die Option auf 1 zu setzen
  • Zeile 92 [nextlookahead]
    Anzahl der in der Titelvorschau angezeigten, folgenden Songs.
    Diese Option ist nur bei der Verwendung der SHOUTcast-Protokolle 2 und 3 nötig.
    WICHTIG: Da die Titelvorschau in Deutschland gegen die GVL-Regeln für Webradios verstößt, diese Option immer auf 0 setzen!

SHOUTcast-Protokolle 2 und 3

Die Konfiguration der Endpoints ist im Grunde weitestgehend identisch zur Konfiguration im SHOUTcast Protokoll 1 Modus. Hierbei wird lediglich der gleiche Port für die Endpunkte genutzt und die Unterscheidung erfolgt über die Stream ID

Beispiel für 2 Streams mit unterschiedlicher Bitrate im SHOUTcast-Protokoll Modus 2 bzw. 3

[...]
endpointname_1=192kbps_MP3_Stream
encoder_1=MP3
bitrate_1=192000
samplerate_1=44100
channels_1=2
mp3quality_1=1
mp3mode_1=0

outprotocol_1=2
serverip_1=127.0.0.1
serverport_1=8000
password_1=confidential
streamid_1=1

endpointname_2=64kbps_AACP_Stream
encoder_2=aacp
bitrate_2=64000
samplerate_2=44100
channels_2=2

outprotocol_2=2
serverip_2=127.0.0.1
serverport_2=8000
password_2=confidential
streamid_2=2
[...]

Die Stream ID mus mit der Stream ID, welche in der Konfiguration des SHOUcast Streamservers eingetragen ist, übereinstimmen. Um das SHOUTcast-Protokoll 3 zu nutzen, ändert man einfach entsprechend den outprotocol_n Parameter von 2 auf 3.
Wichtig ist darauf zu achten, dass für jeden Endpoint alle Verbindungsdaten mit eindeutiger Nummer (_n) angegeben werden.

Folgendes Beispiel geht NICHT:

[...]
endpointname_1=192kbps_MP3_Stream
encoder_1=MP3
bitrate_1=192000
samplerate_1=44100
channels_1=2
mp3quality_1=1
mp3mode_1=0
outprotocol_1=2
streamid_1=1

endpointname_2=64kbps_AACP_Stream
encoder_2=aacp
bitrate_2=64000
samplerate_2=44100
channels_2=2
outprotocol_2=2
streamid_2=2

serverip=127.0.0.1
serverport=8000
password=confidential
[...]

Die Konfiguration der Events in der calendar.xml erkläre ich in einem separaten Artikel.

Social Media

Wenn Dir der Artikel gefallen hat, würden wir uns über eine Bewertung oder ein "Like" freuen.

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5,00 out of 5)
Loading...

Bisher keine Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

You may use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>