Einfachstes Internetradio

  • Hallo,


    ich will ein einfaches Internetradio erstellen, dass nur einen Sender abspielt. Dazu habe ich die Anleitung

    https://forums.raspberrypi.com/viewtopic.php?t=150038&__cf_chl_tk=xaUK5f3YmRAuIUpRkYrz_kUCCnUKv3ZiQb91TRWZ1.4-1780752853-1.0.1.1-S8VbgN.mfxCh_65EljYqHzpOPTxD80rvr94xkq4Mcd0

    herangezogen und:

    - einen raspberry 4B neu konfiguriert

    - raspberry pi dac+ aufgesetzt

    - mpc und mpd installiert.

    Gemäß der obigen Anleitung habe ich dann mpc add https://www.ndr.de/resources/metadaten/audio/m3u/ndr2.m3u eingegeben und bekomme die Fehlermeldung MPD error: Connection refused

    Der paspberry pi hat über meine FritzBox! Internetzugang, kann aber von außen nicht erreicht werden.

    Habt ihr eine Lösung?

    Viele Grüße

    Wolfgang

  • das mit den Livestreams der Öffentlich/Rechtlichen ist nicht immer so einfach.
    Am besten ist es, wenn man das vorher in einem Desktop-Linux ausprobiert, dann sieht man, ob der m3u-Verweis abgespielt wird oder nicht - in lezterem Fall kannste dann auch auf Fehlersuche gehen...

    Hinter dem Link (in Firefox deinen Link eingegeben, die Datei ndr2.m3u herunter geladen, mit dem Texteditor geöffnet - steht:
    http://icecast.ndr.de/ndr/ndr2/niedersachsen/mp3/128/stream.mp3

    Probier die mal - aber Achtung, die Adresse ändert sich mit der Zeit

    PS: deinen NDR2-Link konnte ich mit audacious abspielen - vielleicht mag mdp/mpc die Verschachtelung nicht?

    ---

    Denkmal: ein lebenslanger Imperativ

  • Eine m3u ist eine Playlist-Datei in der das eigentliche Ziel steht. Mit einer Playlist in einer Playlist kann mpd / mpc nichts anfangen. Du must den Link zur mp3 oder vergleichbar in Deiner Playlist verwenden oder mit mpc direkt aufrufen.

    //Edit

    Die Playlists sollten hier /var/lib/mpd/playlists liegen, soweit Du in der mpd.conf nichts anderes angegeben hast. Mit

    Code
    ls -l /var/lib/mpd/playlists

    kannst Du die erstellten Listen sehen und mit z.B.

    Code
    sudo nano /var/lib/mpd/playlists/Musik.m3u

    bearbeiten, wenn eine Playlist bei Dir z.B. Musik.m3u heißen sollte.

    Falls da nichts angezeigt wird, dann kannst Du eine erstellen.

  • Ich habe es auch - erfolglos - mit mpc add http://icecast.ndr.de/ndr/ndr2/niede…/128/stream.mp3


    probiert. Gleiches Problem.


    In der conf ist ir folgendes aufgefallen:


    General music daemon options ################################################
    #
    # This setting specifies the user that MPD will run as. MPD should never run as
    # root and you may use this setting to make MPD change its user ID after
    # initialization. This setting is disabled by default and MPD is run as the
    # current user.
    #
    user "mpd"

    Hier ist offenbar nichts bei default disabled. Mein current user it "pi". Muss ich hier etwas ändern?


    # This setting sets the address for the daemon to listen on. Careful attention
    # should be paid if this is assigned to anything other than the default, any.
    # This setting can deny access to control of the daemon. Not effective if
    # systemd socket activation is in use.
    #
    # For network
    bind_to_address "localhost"


    In einem anderen Forum habe ich den Hinweis gefunden, dass man das auf 0.0.0.0 änder soll???????

  • Erstelle mal eine eigene Playlist mit

    Code
    sudo nano /var/lib/mpd/playlists/Radio.m3u

    und schreib dort die Zeilen

    Code
    http://icecast.ndr.de/ndr/ndr2/niedersachsen/mp3/128/stream.mp3
    https://stream.rockantenne.de/rockantenne/stream/mp3

    rein und dann speichern.

    Jetzt mpc clear dann mpc load Radio und mpc play 1 (für NDR) oder mpc play 2 (für Rockantenne)

  • Auch das hilft nichts....

    pi@ndr-piradio:~ $ sudo nano /var/lib/mpd/playlists/Radio.m3u
    pi@ndr-piradio:~ $ mpc clear
    MPD error: Connection refused
    pi@ndr-piradio:~ $ mpc clear
    MPD error: Connection refused
    pi@ndr-piradio:~ $ mpc load Radio
    MPD error: Connection refused
    pi@ndr-piradio:~ $ ppc play1
    -bash: ppc: command not found
    pi@ndr-piradio:~ $


    Fehlt da noch irgendeine soft???? Ich habe nach dem nackten System nur update/upgrade gemacht und mpd und mpc installiert. SOnst nix.....

  • Es ist leider keine 100% Antwort auf deine Frage zu mpd / mpc, vielleicht geht es so mit mpg123:

    mpg123 http://mdr-284330-0.cast.mdr.de/mdr/284330/0/mp3/high/stream.mp3

    Oder als einfaches Script in der "Deluxe Version" mit ffplay:

  • Hier macht mich doch einiges stutzig:


    pi@ndr-piradio:~ $ mpc
    MPD error: Connection refused
    pi@ndr-piradio:~ $ mpd
    server_socket: bind to '0.0.0.0:6600' failed (continuing anyway, because binding to '[::]:6600' succeeded): Failed to bind socket: Address already in use
    exception: Failed to open "/var/lib/mpd/tag_cache": No such file or directory
    exception: Failed to open database plugin; Can't create db file in "/var/lib/mpd": Permission denied
    pi@ndr-piradio:~ $


    Ich versuche mal laienhaft zu interpretieren:

    wenn die Datenbank nicht angelegt werden kann, dann wohl doch weil der user gesetzt werden muss - auf pi?

  • exception: Failed to open database plugin; Can't create db file in "/var/lib/mpd": Permission denied

    Zugriff verweigert . Dem Benutzer fehlen die Rechte um auf das aufgeführte Verzeichniss zugreifen zu dürfen.

    exception: Failed to open "/var/lib/mpd/tag_cache": No such file or directory

    Das aufgeführt Verzeichniss ist nicht vorhanden.

    Wie du das am einfachsten und besten Beheben kannst sagen dir die Experten hier im Forum.
    Ich weiß es leider auch nicht, muss auch erst danach suchen.

    Für das Verzeichniss versuche mal :sudo mkdir /var/lib/mpd/tag_cache in der Eingabeaufforderung.
    Bei den Rechten bin ich erstmal raus.

  • Die Meldungen von

    pi@ndr-piradio:~ $ mpd

    ...

    haben erst mal nichts zu sagen, denn der mpd läuft (durch systemd) offensichtlich.

    Die Ausgaben von journalctl -u mpd und systemctl status mpd wären informativer.

    BTW: Mit Server neu starten meinte ich nur den mpd (sudo systemctl restart mpd) und nicht den ganzen RPi. :green_wink:


  • exception: Failed to open "/var/lib/mpd/tag_cache": No such file or directory
    exception: Failed to open database plugin; Can't create db file in "/var/lib/mpd": Permission denied

    wenn die Datenbank nicht angelegt werden kann, dann wohl doch weil der user gesetzt werden muss - auf pi?

    Schau mal auf deinem PI nach, ob es den user mpd und die Gruppe audio, z. Zt. gibt. Wenn ja, dann versuch mit:

    Code
    sudo chown -R mpd:audio /var/lib/mpd

    EDIT:

    Wenn der mpd lauscht, dann poste die Ausgaben von:

    Code
    sudo ss -ltpna
    sudo sysctl net.ipv6.bindv6only

    EDIT 2:

    BTW: Du kannst IPv6-Dual-Stack für den mpd, in seiner config, auch trennen mit z. B.:

    Code
    bind_to_address "0.0.0.0"
    bind_to_address "::"

    EDIT 3:

    Was ich aus dem Titel deines Threads und aus deinen Beiträgen noch nicht so richtig verstanden habe, ... willst du den mpd auf deinem PI, zu einem Streaming-Server machen?

    Wi-Fi_Signal_Strength  txpower
    iptables chains order scheme iptables-diagram
    nftables-diagram

    Meine PIs

    PI4B/8GB (border device) FreeBSD 15.1R-p1 (arm64): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server

    PI4B/4GB FreeBSD 14.4R-p7 (arm64): SSH-Serv., WireGuard-Serv., ngircd-Serv., Mumble-Serv., ddclient

    PI4B/8GB Bookworm-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server, botamusique, ample

    Edited 4 times, last by rpi444 (June 6, 2026 at 10:17 PM).

  • Hallo , euch allen erst einmal vielen Dank für die Hilfe. Ich denke, ich stehe jetzt bei 99% :)

    Ich habe nach dieser Anleitung https://wiki.archlinux.org/title/Music_Player_Daemon alles neu installiert. Und zwar als "Per user". In der Anleitung ist lediglich ein "kleiner" Fehler: die dort angegebene Beispieldatei /usr/share/doc/mpd/mpdconf.example heißt in Wirklichkeit /usr/share/doc/mpd/mpdconf.example.gz - muss also entpackt werden.

    Dann habe ich in der config lediglich

    audio_output {
    type "alsa"
    name "Raspberry DAC+"
    ## device "hw:0,0" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "default" # optional
    ## mixer_control "PCM" # optional
    ## mixer_index "0" # optional
    }
    gesetzt

    Und dann gestartet:

    i@ndr-piradio:~ $ mpc add http://icecast.ndr.de/ndr/ndr2/niede%E2%80%A6/128/stream.mp3
    pi@ndr-piradio:~ $ mpc play 1
    http://icecast.ndr.de/ndr/ndr2/niede%E2%80%A6/128/stream.mp3
    [playing] #1/1 0:00/0:00 (0%)
    volume: 40% repeat: off random: off single: off consume: off
    pi@ndr-piradio:~ $

    Ich finde, das sieht gut aus :) es kommt aber kein Sound - weder aus dem Raspberry noch aus der DAC+....


    Da heißt es also weiter suchen.

  • ... die dort angegebene Beispieldatei /usr/share/doc/mpd/mpdconf.example heißt in Wirklichkeit /usr/share/doc/mpd/mpdconf.example.gz - muss also entpackt werden.

    Nicht zwingend entpackt werden. Du kannst den Inhalt auch mit z. B.:

    Code
    zcat /usr/share/doc/mpd/mpdconf.example.gz
    # oder
    zcat /usr/share/doc/mpd/mpdconf.example.gz | less

    anschauen.

    Wie ist die Ausgabe von:

    Code
    sudo ss -ltpna

    ?

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!