GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So erstellen Sie Ihren eigenen Internetradiosender mit Icecast und Mixxx auf Ubuntu / Debian oder Fedora

In diesem Artikel wird erklärt, wie Sie Ihren eigenen Internetradiosender erstellen. Dazu verwenden wir die Open-Source-Programme Icecast und Mixxx, die auf Fedora oder Debian, Ubuntu, Linux Mint, Pop! _OS und andere Debian/Ubuntu-basierte Linux-Distributionen.

Icecast (Icecast 2) ist ein Streaming-Media-Server, mit dem Benutzer unseren Internetradiosender streamen können, und Mixxx ist eine DJ-Mixing-Anwendung (die Sie in diesem Fall bei Bedarf auch als einfachen Musikplayer verwenden können). Wir verwenden, um den Audiostream dank seiner Live-Übertragungsfunktion an den Icecast2-Streaming-Server zu senden.

Es ist erwähnenswert, dass Sie Icecast2 und Mixxx auf jeder anderen Linux-Distribution (sowie Windows und macOS) verwenden können, um Ihre eigene Linux-Distribution für Internetradiosender zu erstellen, sodass sich dieser Artikel nur auf Fedora und Debian / Ubuntu konzentriert /P>

Bevor wir beginnen, möchte ich Ihnen etwas mehr über Icecast und Mixxx erzählen.

Icecast ist ein kostenloser, quelloffener, plattformübergreifender Streaming-Server, der Ogg Vorbis- und Theora-, MP3-, Opus- und WebM-Streams mit Unterstützung für mehrere gleichzeitige Audiostreams unterstützt (jeder Stream wird als „Mount Point“ bezeichnet). Die Software kann verwendet werden, um einen öffentlichen Internetradiosender zu erstellen, privat über das lokale Netzwerk zu senden und vieles mehr. Es gibt mehrere Arten von Clients, die sich mit einem Icecast-Server verbinden können, entweder um einen „Einhängepunkt“ für das Streamen von Musik bereitzustellen, wie z. B. Mixxx, oder um das übertragene Audio zu hören.

Mixxx ist eine kostenlose Open-Source-DJ-Software für Windows, Mac und Linux, die die meisten Funktionen der DJS-Software sowie einzigartige Funktionen wie die Unterstützung für erweiterte MIDI- und HID-DJ-Controller enthält. Es wurde sowohl für professionelle als auch für Amateur-DJs entwickelt und bietet neben vielen anderen Funktionen BPM, Tastenerkennung und -synchronisierung, Effekte, Schallplattensteuerung, Auto-DJ und Aufnahme. Ab Version 1.9 ermöglicht Mixxx Live-Übertragungen und unterstützt Shoutcast- und Icecast-Streaming-Server.

Installieren und konfigurieren Sie Icecast und Mixxx, um Ihren eigenen Internetradiosender zu erstellen

1. Installieren Sie Icecast.

Icecast kann entweder auf einem separaten Server oder auf demselben Computer installiert werden, auf dem Mixxx für die Übertragung läuft.

Laden Sie Icecast für Linux / Unix und Windows herunter.

Installieren Sie Icecast2 aus den Repositories:

  • Installieren Sie Icecast2 auf Debian, Ubuntu, Linux Mint, Pop! _OS und andere Debian/Ubuntu-basierte Linux-Distributionen:

sudo apt install icecast2

Während der Icecast2-Installation auf Debian oder Ubuntu werden einige Konfigurationsoptionen angezeigt (dies ist bei Fedora nicht der Fall):

Ersetzen Sie das voreingestellte Passwort durch Ihr eigenes Passwort. Falls Sie die anfängliche Konfiguration übersprungen haben, können Sie sie erneut ausführen, indem Sie sudo dpkg-reconfigure icecast2 verwenden . Sie können diese Anfangseinstellungen und mehr auch ändern, indem Sie die Icecast2-Konfigurationsdatei bearbeiten (dazu kommen wir im nächsten Schritt).

  • Installieren Sie Icecast auf Fedora:
sudo dnf install icecast

2. Icecast konfigurieren.

Der Pfad der Icecast-Konfigurationsdatei auf Debian / Ubuntu (installiert von einem Paketmanager) ist /etc/icecast2/icecast.xml während es auf Fedora /etc/icecast.xml ist . Sie können diese Datei bearbeiten, um die Informationen des Icecast2-Internetradiosenders zu ändern, Beschränkungen festzulegen (die Anzahl der Clients/Zuhörer zu begrenzen), das Passwort für die Benutzer der Quelle, des Relays und des Administrators zu ändern und vieles mehr.

Unter Debian / Ubuntu sollte die anfängliche Icecast2-Konfiguration, die erscheint, wenn Sie Icecast2 zum ersten Mal installieren, den größten Teil dieser Konfiguration übernehmen. Sie können die Icecast2-Konfigurationsdatei immer noch bearbeiten.

Öffnen Sie diese Icecast-Konfigurationsdatei als root mit einem Texteditor wie Nano im Beispiel unten (verwenden Sie Ctrl + O , dann Enter um die Datei mit Nano zu speichern; Um den Nano-Editor nach dem Speichern der Datei zu verlassen, drücken Sie Ctrl + X ):

  • Debian, Ubuntu, Fedora, LinuxMint, Pop! _OS:
sudo nano /etc/icecast2/icecast.xml

  • Fedora:
sudo nano /etc/icecast.xml

In dieser Datei können Sie (unter anderem):

  • Standort und Administrator

    <!-- location and admin are two arbitrary strings that are e.g. visible
         on the server info page of the icecast web interface
         (server_version.xsl). -->
    <location>Earth</location>
    <admin>localhost</admin>

Wie in den Kommentaren zu den Standort- und Administratoreinstellungen erwähnt, handelt es sich um Informationen, die auf der Internetradio-Server-Infoseite der Icecast-Weboberfläche angezeigt werden, also nur zu Anzeigezwecken.

Dieser Abschnitt existiert standardmäßig nicht unter Fedora in der Icecast-Konfigurationsdatei (er befindet sich jedoch am Anfang der Konfigurationsdatei in Debian / Ubuntu).

  • Authentifizierung

    <authentication>
        <!-- Sources log in with username 'source' -->
        <source-password>hackme</source-password>
        <!-- Relays log in with username 'relay' -->
        <relay-password>hackme</relay-password>
        <!-- Admin logs in with the username given below -->
        <admin-user>admin</admin-user>
        <admin-password>hackme</admin-password>
    </authentication>

Stellen Sie hier sicher, dass Sie den Standardwert hackme ersetzen Passwort mit Ihren eigenen Passwörtern.

  • Hostname, Listen-Socket-Port, Bindungsadresse und Stream

    <!-- This is the hostname other people will use to connect to your server.
         It affects mainly the urls generated by Icecast for playlists and yp
         listings. You MUST configure it properly for YP listings to work!
    -->
    <hostname>localhost</hostname>
    <!-- You may have multiple <listen-socket> elements -->
    <listen-socket>
        <port>8000</port>
        <!-- <bind-address>127.0.0.1</bind-address> -->
        <!-- <shoutcast-mount>/stream</shoutcast-mount> -->
    </listen-socket>
    <!--
    <listen-socket>
        <port>8080</port>
    </listen-socket>

Sie können diese Standardwerte verwenden, was bedeutet, dass Sie nur auf dem Localhost streamen und 8000 als Port verwenden. In diesem Fall können Sie in Ihrem Webbrowser mit https://localhost:8000 auf die Icecast 2-Server-Webseite zugreifen , und die Admin-Seite durch Aufrufen von https://localhost:8000/admin . Aber noch nicht, denn im nächsten Schritt müssen wir den Icecast2-Dienst aktivieren und starten (bzw. neu starten).

Möglicherweise möchten Sie jedoch einige dieser Einstellungen ändern. Ersetzen Sie diesen hostname Wert mit dem für den Stream verwendeten Hostnamen / Domain oder IP-Adresse. bind-address ermöglicht es Ihnen, die Adressen zu begrenzen, die Icecast abhört; Wenn für einen bestimmten Listen-Socket keine Bindungsadresse angegeben ist (dies ist die Standardkonfiguration), wird der Socket an alle Schnittstellen gebunden (einschließlich IPv6, falls verfügbar). Port 8000 wird standardmäßig von vielen Projekten verwendet, kann also bereits verwendet werden. In diesem Fall sollten Sie dies ändern.

Es gibt viele andere Einstellungen in dieser Icecast2-Datei, aber die Standardeinstellungen sollten in den meisten Fällen ausreichend sein.

3. Aktivieren und starten Sie den Icecast2-Server.

Aktivieren und starten Sie den Icecast2-Dienst unter Debian / Ubuntu:

sudo systemctl --now enable icecast2

Aktivieren und starten Sie den Icecast-Dienst auf Fedora:

sudo systemctl --now enable icecast

Sie können jetzt in Ihrem Webbrowser auf die Webseite des Icecast-Servers zugreifen, indem Sie https://localhost:8000 aufrufen (dies verwendet die Standardeinstellungen, Sie haben dies möglicherweise geändert) und die Admin-Seite, indem Sie https://localhost:8000/admin besuchen .

Die Status- und Admin-Seite von Icecast2 (mit den Mountpoint-Informationen) nach der Aktivierung der Live-Übertragung in Mixxx:

Außerdem müssen Sie den Icecast2-Systemdienst jedes Mal neu starten, wenn Sie Änderungen an seiner Konfigurationsdatei vornehmen. Dies ist möglich mit:

  • Debian/Ubuntu:
sudo systemctl restart icecast2

  • Fedora:
sudo systemctl restart icecast

Überprüfen Sie den Status des Icecast-Dienstes mit:

  • Debian/Ubuntu:
systemctl status icecast2

  • Fedora:
systemctl status icecast

4. Mixxx installieren.

Laden Sie Mixxx für Linux (Quell-, Ubuntu- und Fedora-Pakete), Windows oder macOS herunter.

Installieren Sie Mixxx aus den Repositories:

  • Auf Debian / Ubuntu, Linux Mint, Pop! _OS usw. können Sie Mixxx aus den Repositories installieren (und libmp3lame0 zur Unterstützung von MP3-Streams):

sudo apt install mixxx libmp3lame0

Sie können auch eine neuere Version von Mixxx auf Ubuntu oder Linux Mint installieren, indem Sie das auf der Mixxx-Downloadseite erwähnte PPA verwenden.

  • Auf Fedora:

Aktivieren Sie das kostenlose RPMFusion-Repository (non-free ist nicht erforderlich), falls Sie dies noch nicht getan haben:

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm

Und installieren Sie Mixxx und Lame (für MP3-Streaming):

sudo dnf install mixxx lame

5. Gehen Sie live mit Ihrem Internetradio! Konfigurieren Sie Mixxx so, dass der Audiostream an den Icecast2-Streamingserver weitergeleitet wird.

Aus dem Mixxx Options Menüstart Preferences , dann wechseln Sie zu Live Broadcasting Tab. Sehen Sie sich hier Server connection an und setzen:

  • Typ:Icecast2
  • Host:der in den Icecast2-Einstellungen angegebene Hostname (mit „localhost“ als Standard)
  • Anmeldung:Quelle
  • Passwort:das Passwort, das Sie für den „Quell“-Benutzernamen in der Icecast2-Konfigurationsdatei (im Authentifizierungsbereich) festgelegt haben.
  • Einhängen:/ streamen
  • Port:8000 (dies ist der Standardport, verwenden Sie Ihren eigenen benutzerdefinierten Port, wenn Sie ihn geändert haben)

Das ist alles, was Sie einrichten müssen, damit die Dinge funktionieren. Sie können auch die Codierung ändern (wählen Sie eine höhere Bitrate zum Streamen oder ändern Sie das Format von MP3 zu Ogg Vorbis), Metadaten (die Informationen, die angezeigt werden, wenn eine Musik-App Ihren Internetradiosender abspielt) und aktivieren Sie „Public Stream“, wodurch Ihre Internetradiostation im öffentlichen Icecast-Verzeichnis, damit andere sie entdecken können.

Wenn Sie mit diesen Einstellungen fertig sind, klicken Sie auf Apply und schließen Sie Preferences Fenster.

Es ist an der Zeit, Musik zu Mixx hinzuzufügen. Doppelklicken Sie auf einen Song, um ihn zu Deck 1 hinzuzufügen, und klicken Sie dann auf die Wiedergabeschaltfläche für dieses Deck, um mit der Wiedergabe des Songs zu beginnen:

Sie können jetzt mit der Übertragung über Mixxx beginnen, indem Sie zu gehen. zu Fuß Options -> Enable Live Broadcasting . Ihr Internetradiosender ist dann live. Oben rechts im Mixxx-Fenster befindet sich auch ein Symbol, auf das Sie klicken können, um die Live-Übertragung zu aktivieren / deaktivieren. Dieses Symbol wird auch verwendet, um den Status der Live-Übertragung anzuzeigen:

Verwenden Sie einen Audioplayer wie VLC, Audacious usw. und öffnen Sie Ihre Internetradio-URL:https://localhost:8000/stream.m3u oder https://localhost:8000/stream.xspf (mit localhost und 8000 ist der Standard-Hostname und -Port, den Sie möglicherweise in den Einstellungen geändert haben!). Sie können diese Links auch finden, indem Sie Ihre Icecast2-Serverstatusseite in Ihrem Webbrowser besuchen:https://localhost:8000/status.xsl (erneut localhost:8000 ersetzen mit Ihrem Hostnamen und Port).

Extra (dies ist optional):Sie möchten mit Mixxx an Icecast senden, aber Mixxx sollte auf Ihrem System stumm bleiben und nur Ihre Internetradio-Hörer können den Ton hören (das bedeutet, dass nicht jeder Ton von Ihrem System weitergeleitet wird den Icecast-Stream, wird also nur die Tonausgabe von Mixxx auf dem Icecast-Stream abgespielt)? Dazu können Sie JACK mit einer Dummy-Ausgabe ausführen. Installieren Sie JACK:

  • Debian/Ubuntu:
sudo apt install jackd

  • Fedora:
sudo dnf install jack-audio-connection-kit

Führen Sie als Nächstes JACK mit einem Dummy-Ausgabetreiber aus:

jackd -d dummy

Gehen Sie dann zu Mixxx Preferences -> Sound Hardware , und setzen Sie den Sound API Option auch JACK Audio Connection Kit (die Master Die Ausgabe weiter unten auf dieser Seite kann auf None gesetzt werden oder system ). Wenn Sie JACK nicht unter den Sound-API-Optionen sehen, starten Sie Mixxx neu.


Debian
  1. So schützen Sie Ihren Server mit badIPs.com und melden IPs mit Fail2ban unter Debian

  2. So installieren Sie Spamassassin mit Postfix und Dovecot auf Ubuntu/Debian Server

  3. So installieren Sie Virtualbox 4.3 auf Ubuntu / Debian / Fedora

  4. So erstellen und löschen Sie einen Benutzer unter Debian 9

  5. Wie man mit Debian / Ubuntu, Fedora, Arch Linux / Manjaro und mehr in den Konsolenmodus (Textmodus) bootet

So booten Sie Ubuntu und Fedora auf Ihrem PC dual

So erstellen und führen Sie ein Shell-Skript in Debian 10 aus

So zeigen Sie die Internetgeschwindigkeit auf dem Debian- und Ubuntu-Desktop an

So richten Sie ModSecurity mit Nginx unter Debian/Ubuntu ein

So erstellen Sie einen Sudo-Benutzer unter Ubuntu und Debian

So erstellen Sie einen E-Commerce mit Prestashop und Ubuntu 18.04