welle.io - DAB+ Radio verteilen mit Snapcast
##########################
In diesem Video zeige ich dir, wie du mit Hilfe eines RTL-SDR USB-Sticks und mit den beiden Software-Paketen welle.io + Snapcast das DAB+ Radio im Haus via LAN / WLAN synchron verteilen kannst.
##########################
Die Anleitung mit allen Befehlen:
https://hoerli.net/welle-io-dab-radio-verteilen-mit-snapcast
welle.io Homepage:
https://www.welle.io/
Snapcast:
https://github.com/badaix/snapcast/releases
Das Video zu Mopidy + Snapcast:
https://hoerli.net/mopidy-snapcast-multi-room-music-setup/
Snapcast-Client zusammenbauen:
https://hoerli.net/raspberry-pi-hifiberry-snapcast-client-einrichten/
Welle.IO Desktop-Client:
https://hoerli.net/welle-io-dab-radio-mit-einem-rtl-sdr-stick-hoeren/
##########################
Telegram-Kanal:
https://t.me/HoerliDE
Mastodon:
https://mastodon.social/@hoerli
Minds.com:
https://www.minds.com/Hoerli/
SteemIt:
https://steemit.com/@hoerli
Homepage:
http://hoerli.net
GameServers:
http://gamemania.org
Livestreams:
https://hoerli.net/livestream/
Facebook:
https://www.facebook.com/hoerli
Twitter:
https://twitter.com/HoerliDE
##########################
Videoinfo
Auflösung: 3840x2160
FPS: 60
Datenrate: 45000kbps
Audio: 320kbps
##########################
In diesem Video zeige ich dir, wie du mit Hilfe eines RTL-SDR USB-Sticks und mit den beiden Software-Paketen welle.io + Snapcast das DAB+ Radio im Haus via LAN / WLAN synchron verteilen kannst.
##########################
Die Anleitung mit allen Befehlen:
https://hoerli.net/welle-io-dab-radio-verteilen-mit-snapcast
welle.io Homepage:
https://www.welle.io/
Snapcast:
https://github.com/badaix/snapcast/releases
Das Video zu Mopidy + Snapcast:
https://hoerli.net/mopidy-snapcast-multi-room-music-setup/
Snapcast-Client zusammenbauen:
https://hoerli.net/raspberry-pi-hifiberry-snapcast-client-einrichten/
Welle.IO Desktop-Client:
https://hoerli.net/welle-io-dab-radio-mit-einem-rtl-sdr-stick-hoeren/
##########################
Telegram-Kanal:
https://t.me/HoerliDE
Mastodon:
https://mastodon.social/@hoerli
Minds.com:
https://www.minds.com/Hoerli/
SteemIt:
https://steemit.com/@hoerli
Homepage:
http://hoerli.net
GameServers:
http://gamemania.org
Livestreams:
https://hoerli.net/livestream/
Facebook:
https://www.facebook.com/hoerli
Twitter:
https://twitter.com/HoerliDE
##########################
Videoinfo
Auflösung: 3840x2160
FPS: 60
Datenrate: 45000kbps
Audio: 320kbps
Category
🤖
TechnikTranskript
00:00Willkommen zum zweiten Part der Anleitung, wie man DAB-Plus-Radio mit einem RTL-SDS-Stick
00:05hören kann.
00:06In diesem Video werden wir Vallejo so konfigurieren, damit wir alles auf zum Beispiel einem Einplatinen-Computer,
00:11wie der Raspberry Pi einer ist, nutzen können.
00:14Wer möchte, kann auch einen normalen PC nutzen.
00:17So können wir unseren kleinen Radioserver recht fix aufsetzen und benötigen hierfür
00:21nicht einmal ein Display am Gerät selbst.
00:23Der Vorteil hierbei ist, dass wir die Gerätschaften an einem Ort aufstellen können, an dem ein
00:29guter DAB-Plus-Empfang vorhanden ist und die Musik dann im Funkloch hören können.
00:34Wir können per Fernzugriff weiterhin das System verwalten.
00:37Zudem verbraucht das Gespann weniger Strom, da kein Display betrieben werden muss.
00:41Ein Raspberry Pi 3B-Plus mit einem USB-Stick benötigt im Betrieb rund 6 bis 8 Watt.
00:47Und an dem ersten Video wurde auch schon die Frage gestellt, warum das Ganze nutzt doch
00:51einfach Internetradio?
00:52Die Frage wurde dort auch schon von einigen mit ein paar kreativen Antworten beantwortet.
00:58Ich mache das Ganze aus zwei Gründen.
01:00Zum einen kann ich hier so Radio hören und auf dem Laufenden bleiben, wenn das Internet
01:05zum Beispiel mal ausgefallen ist und auch kein Mobilfunk zur Verfügung steht.
01:09Versteht mich aber jetzt hier nicht falsch.
01:10Mein Aluhut ist noch nicht verrutscht und mit Weltuntergangsszenarien braucht wir hier
01:16erst gar nicht erst anfangen und die 4 Stunden Playlist von 90% der Radiosender gefällt
01:20mir auch nicht.
01:21Aber wenn man sowas mal braucht, dann hat man eine richtig gute Lösung direkt am Start.
01:27Zum anderen ist es ein lustiges Bastelprojekt, wenn man gerade etwas Freizeit hat.
01:31Jeder kann aber selber seine Antwort zusammenreimen, warum das Ganze Sinn macht oder auch nicht.
01:35Vorab aber ein wichtiger Hinweis.
01:37Diese Anleitung erfordert das Durchspielen von gegebenenfalls weiteren Anleitungen, um
01:42Zusatzsoftware perfekt für deine Verhältnisse zu konfigurieren.
01:46Alle notwendigen Links, Tipps und Tricks findest du unten in der Videobeschreibung verlinkt.
01:51Was brauchen wir alles?
01:52Einen RTL-SDR Stick, ich nutze hier den NoElec RTL-SDR in Version 5, den wir auch im ersten
01:59Part benutzt hatten.
02:00Eine DHB-Plus Antenne, meine war ja im Lieferumfang enthalten.
02:04Ein Computer mit einem Linux System, ich nutze hier den Raspberry Pi 3 B+, eine stabile Netzwerkanbindung,
02:11LAN ist empfohlen, WLAN geht zur Not auch, sofern der Empfang sehr gut ist.
02:15Ein passendes System für den Rechner muss vorinstalliert sein.
02:18Ich nutze hier das aktuelle Raspberry Pi OS.
02:21Grundkenntnisse rund um Linux, damit du dich zum Beispiel via SSH aufschalten kannst und
02:26ein paar Grundbefehle korrekt eingeben kannst, ist nicht verkehrt.
02:30Die weiteren Anleitungen sind natürlich auch notwendig, welche du unten in der Videobeschreibung
02:34findest.
02:35Was werden wir alles tun?
02:36Wir installieren Welle.io mit Welle.cli, wir richten dann die Antenne gegebenenfalls passend
02:41aus und machen noch ein bisschen Feintuning per Software, wir installieren Snapcast und
02:45verteilen darüber dann die Radiostreams und hören am Ende noch kurze Reihen, ob das Ganze
02:50sauber funktioniert.
02:51Als erstes sollten wir das Gespann nun an einem Ort anbringen, wo der Empfang gut ist.
02:56Bei mir ist es ganz oben im Haus.
02:59Dort ist immerhin ein Fenster, wo ich die Antenne passend platzieren kann, damit ein
03:03paar Radiosender empfangbar sind.
03:05Perfekt ist das nicht, was wir gleich merken werden, weil ich an einem Ort wohne, wo allgemein
03:10nur mieser Empfang herrscht und für die Funke hier, egal ob Mobilfunk oder DRB, das Wort
03:15Ausbau einfach als das Fremdwort ist, was keiner da hören will.
03:20Deswegen hören wir nichts.
03:21Den Raspberry Pi habe ich per WLAN in mein Heimnetz angebunden.
03:27Um ihn verwalten zu können, habe ich auch SSH aktiviert.
03:30Den RTL-SDR Stick habe ich an den mittleren USB-Port angeschlossen, der am nächsten zur
03:37Platine ist.
03:38Dort startet der Stick bei mir am besten, bei den äußeren Ports funktioniert er irgendwie
03:43nicht so gut.
03:44Keine Ahnung, ob der Pi einen Schuss hat oder der Stick am Anfang doch zu viel Saft zieht.
03:49Am mittleren Port läuft er sehr zuverlässig.
03:52Ich habe jetzt hier ganz normal einen Linux Mint am Start.
03:55Ihr könnt jetzt hier das Ganze auf einem beliebigen Betriebssystem umsetzen.
03:59Hauptsache, ihr könnt euch auf euren Rechner per SSH dann aufschalten.
04:04Mit Linux Mint kann ich hier ganz normal einen Terminal starten und mich dann per SSH auf
04:09meinen Raspberry Pi aufschalten.
04:11Das Ganze funktioniert mit SSH, Leerzeichen Pi, weil der Standard Benutzer eines Raspberry
04:16Pis ist ja Pi, gefolgt von einem Head und der IP-Adresse des Pis.
04:20In meinem Fall die 192.168.178.61.
04:26Ich schicke das ab, gebe dann kurz das Passwort für den Benutzer ein und schon bin ich auf
04:32meinem Raspberry Pi drauf.
04:33Um jetzt hier notwendige Pakete nachinstallieren zu können, benötigen wir als allererstes
04:38mal Root-Rechte.
04:39Die kriegen wir mit sudo su.
04:41So, jetzt sind wir als Root unterwegs.
04:44Wir können Valle.io und den Treiber direkt aus den offiziellen Paketquellen nachinstallieren.
04:49Denn wir brauchen auch auf jeden Fall den Treiber, denn der ist bei einem Raspberry
04:53Pi nicht standardgemäß enthalten.
04:55Das Ganze bekommen wir hin, indem wir hier ein abt-install Valle.io und ein rtl-sdr
05:01einfach abschicken.
05:02Die Installation von beiden Paketen kann unter Umständen, je nachdem wie schnell deine
05:06SD-Karte ist, einen kleinen Moment Zeit in Anspruch nehmen.
05:09Also gebe kurz dem Pi die Zeit, alles zu installieren.
05:13Perfekt.
05:14Ist das erledigt, müssen wir den Raspberry Pi einmal neu starten, damit der Treiber initialisiert
05:19wird.
05:20Also geben wir kurz noch ein Reboot ein.
05:22Machen wir das nämlich nicht, dann kann der USB-Stick unter Umständen gleich nicht richtig
05:27angesteuert werden und das Ganze funktioniert einfach nicht.
05:30Also warten wir kurz ab, bis der Raspberry Pi neu gestartet ist.
05:34Ist der Pi neu gestartet, verbinden wir uns einfach wieder, geben das Passwort ein und
05:40schon sind wir wieder drauf.
05:42Wir müssen jetzt tatsächlich, um einmal zu testen, ob Valle.cli sauber funktioniert,
05:45gar keine Routerechte erlangen.
05:47Deswegen kann ich hier als ganz normaler Benutzer unterwegs sein.
05:50Ich gebe aber jetzt hier mal kurz noch ein Clear ein, damit wir hier einen schöneren,
05:54sauberen Bildschirm haben.
05:55Wir können jetzt mal probieren, ob das Programm funktioniert, indem wir hier Valle-cli, Leerzeichen
06:02–h eingeben, damit wir Valle.cli mit der Hilfe aufrufen.
06:06Und ja, das sieht gut aus, denn er spuckt uns hier jetzt die Hilfe-Datei aus.
06:11Diese beinhaltet alle Parameter, was das Programm aktuell unterstützt und hat auch ein paar
06:16Beispiele direkt mit dabei.
06:17Wir gehen hier mal kurz das Wichtige durch.
06:19Hier bei Tuning können wir hier direkt den Radio-Tuner selbst einstellen.
06:24Wir können einen Kanal vorgeben, der beim Start ausgewählt werden soll und wer möchte,
06:30kann auch direkt schon einen Sender mitgeben, der abgespielt werden soll.
06:33Wir können auch die empfangenen Daten direkt in eine Datei reinpumpen, wenn wir das müssten,
06:39aber das brauchen wir in der Regel nicht.
06:41Dann haben wir hier den Web-Server, der ist für uns gleich sehr hilfreich, denn darüber
06:45können wir Valle.cli über einen Web-Browser steuern.
06:48Wir haben hier dann die Möglichkeit, über Backend den USB-Stick selber noch anzupassen
06:54oder auch korrekt anzusteuern, sollte der nicht automatisch direkt sauber erkannt werden.
06:59Bei mir wird er zum Glück gleich automatisch sauber erkannt, von dem her muss ich hier
07:03groß nichts tun.
07:05Wichtig hierbei sind zwei Parameter, einmal hier der Gain, also die Verstärkung und hier
07:09unten was noch zum Deaktivieren, das zeige ich euch gleich.
07:12Dann haben wir hier noch bei ABBA drei weitere Sachen, zum einen hier können wir einen Test
07:16ausführen, wenn wir wissen, wie das Ganze funktioniert.
07:18Wir können hier die Hilfe anzeigen lassen mit H, das haben wir ja gerade gemacht und
07:22wir können die Version ausgeben lassen, die gerade installiert ist.
07:25Was ich sehr löblich finde, hier unten gibt es auch direkt ein paar Beispiele, wie man
07:29die verschiedenen Parameter nutzen könnte, um eben mit dem Programm zu arbeiten.
07:35Wir gehen jetzt als allererstes mal hin und prüfen nach, ob Vallecli an sich sauber funktioniert
07:40mit unserem USB-Stick.
07:42Dazu rufen wir einfach den Web-Server auf und gucken dann über eine Webseite nach,
07:47was denn alles geht.
07:48Das Ganze kriegen wir hin, indem wir hier Valle-cli starten mit dem Leerzeichen und
07:53dann Parameter "-w", für Web-Server, und dann müssen wir einen Port eingeben, der eben für den
07:59Web-Server benutzt werden soll.
08:01Hier wird jetzt der Port 8000 zum Beispiel standardgemäß mit angegeben.
08:05Ich benutze aber jetzt hier mal den Port 7777, weil der bei mir frei ist, der ist nicht belegt,
08:10von dem her kann ich den problemlos verwenden.
08:12Ihr müsst eben gucken, dass ihr hier einen Port auswählt, der nicht bei euch durch irgendwelche
08:16anderen Dienste belegt ist.
08:17Auch ein sehr guter Tipp, benutzt einen Port über dem Port 1024, wenn ihr als normaler Benutzer
08:23unterwegs seid, denn alle Ports unter 1024 sind sogenannte vordefinierte Service-Boards,
08:29die eben von gewissen Diensten direkt benutzt werden und die können nicht ohne Routerechte
08:33benutzt werden.
08:34Also einfach irgendeinen Port über 1024 wählen und ihr seid auf der grünen Seite.
08:39Wir schicken das Ganze ab und wir sehen, der Web-Server startet.
08:43Perfekt.
08:44Wir sehen jetzt hier noch direkt ein paar Failed, weil der jetzt automatisch, glaube
08:47ich, einen Kanal angesteuert hat, wo eh nichts kommt, aber das soll uns jetzt erstmal nicht
08:51interessieren.
08:52Wir gehen hier erstmal kurz ein paar Punkte durch, die für einen Laien, so wie ich auch
08:55einer bin hier in der Funk-Welt, ein bisschen wichtig sind, um das Programm einfach sauber
09:00verwenden zu können.
09:01Wir sehen hier oben erstmal die Version des Programms, das ist schön und dann bekommen
09:06wir hier angezeigt, dass er auch den USB-Stick, den wir angesteckt haben, automatisch erkannt
09:10hat mit dem korrekten Treiber und den auch nutzen kann.
09:13Falls bei euch jetzt hier drin steht, dass er euren Stick nicht erkannt hat und auch
09:18nicht nutzen kann, dann müsst ihr unter Umständen mit den Parametern hier oben dann
09:21rumspielen.
09:22Gerade hier das mit dem Backend-Part, damit ihr eben euren USB-Stick sauber ansteuern
09:28könnt.
09:29Dann haben wir hier verschiedene Verstärkungs-Level, die er nutzen kann und zwar, um genau zu sein,
09:3729.
09:38Diese Zahl ist tatsächlich jetzt in dem Fall wichtig.
09:40Wir sehen hier die verschiedenen Verstärkungs-Faktoren, die er eben nutzen kann, die wir auch zum
09:46Beispiel über die grafische Oberfläche mit WelleIO mit dem Schieberegler in den Einstellungen
09:51auswählen können.
09:52Dort war es ja auch so, dass wir nicht gerade Zahlen auswählen konnten, sondern irgendwelche
09:56krummen Werte.
09:57Das sind exakt diese krummen Werte hier.
09:59Auf die kommen wir gleich noch zu sprechen und dann sehen wir hier unten, dass das Ganze
10:03dann gestartet hat und dann, weil er jetzt gerade nichts empfangen kann, knallt er hier
10:07eben diverse Fehler rein.
10:09Das ist aber normal.
10:10Wir können jetzt hingehen und Welle-CLI im Web-Browser aufrufen.
10:14Dazu starten wir einfach mal einen Browser.
10:16Ich nutze hier einfach mal den Firefox und rufe dann dementsprechend die IP-Adresse von
10:21meinem Raspberry Pi auf mit dem gerade definierten Port.
10:24Hier in meinem Fall die 192.168.178.61.7777.
10:32Ich schicke das Ganze ab und hier ist Welle-CLI im Web-Browser.
10:36Wir gehen mal kurz ein paar Punkte durch, was wir hier alles machen können und ablesen
10:41können, damit wir eben jetzt gegebenenfalls die Antennen noch mal ein bisschen besser
10:44ausrichten.
10:45Wir haben hier als allererstes den Kanal, den er jetzt eingestellt hat und abruft.
10:51Denn die verschiedenen Sender werden ja hier immer in Kanäle gebündelt und dann übertragen.
10:55Standardgemäß hat er jetzt hier Kanal 10b gestartet.
10:58Hier kommt einfach bei mir nichts, weil es hier absolut nichts darin gibt.
11:01Wenn ich hier reinklicke, dann kann ich hier einen anderen Kanal auswählen.
11:03Wenn wir hier einfach mit dem Beispiel bleiben vom ersten Video, nutze ich hier mal Kanal
11:078d.
11:08Da kommen die SWR-Sender, die sind bei mir von der Empfangsleistung her am besten.
11:13Ich könnte jetzt hier auch bei mir noch den Kanal 5c oder 11b wählen.
11:18Da kommen auch noch ein paar Sender rein, die ich nutzen könnte.
11:20Wir können hierüber keinen Scan starten, um alle Sender aufzulisten.
11:24Wir müssen hier den Kanal echt von Hand auswählen.
11:27Der Vorteil hierbei ist, der bleibt dann auch drin.
11:29Und nein, wir können nicht mehrere Kanäle gleichzeitig abrufen.
11:33Es geht immer nur einer auf einmal.
11:35Hier bei den zwei Sachen müssen wir nichts verändern, das passt eigentlich so.
11:39Wir haben dann hier drei Links zur Auswahl.
11:41Einmal hier eine Playlist, die wir dann zum Beispiel im VLC-MediaPlayer öffnen können.
11:46Wir können hier den Inhalt, was wir hier dargestellt bekommen, auch per JSON-Datei
11:49abrufen und den FEC-Stream abrufen, den brauchen wir aber auch in der Regel nicht.
11:54Beziehungsweise die zwei Letzteren brauchen wir erstmal nicht, weil die sind für uns
11:58erstmal uninteressant.
11:59Die Playlist hier können wir wie folgt abrufen.
12:02Hier habe ich auch schon bei KIT ein paar Issues gesehen, weil es bei manchen angeblich
12:06nicht funktioniert.
12:07Wir müssen hingehen, hier einen Rechtsklick drauf machen und dann diese Linkadresse kopieren.
12:13Nicht die Datei einfach runterladen, das bringt gar nichts.
12:16Dann öffnen wir zum Beispiel den VLC-MediaPlayer, damit geht das ganz gut.
12:23Sagen dann hier Medien-Netzwerk-Stream öffnen und fügen hier einfach die URL ein.
12:28Wir sehen, hier hat er automatisch die IP-Adresse reingeschrieben mit dem Port 7777 und dann
12:33die Datei mux.m3u, die er hier abrufen will.
12:37Wir drücken hier auf Wiedergabe und wenn wir hier die Playlist ansehen, dann haben
12:42wir hier die Radiosender jetzt dementsprechend vom SWR hier aufgelistet.
12:46Wenn wir einfach nur jetzt die Datei hier runterladen und dann den VLC-MediaPlayer reinschieben,
12:50dann funktioniert hier gar nichts.
12:52Dementsprechend hier immer auf diesem Weg das Ganze öffnen, dann funktioniert das auch.
12:57Ihr hört hier im Hintergrund, ich habe es enorm leise gemacht, damit jetzt hier die
13:00Gamer nicht wieder einen Schlaganfall bekommt.
13:03Es kommt Musik oder es kommt dementsprechend Programm.
13:05Ich schließe das Ganze jetzt hier nochmal und wir machen hier im Webbrowser weiter.
13:09Wir sehen dann hier in Fett gedruckt eben den Kanal Namen.
13:13In dem Fall habe ich halt jetzt den Kanal vom SWR angesteuert.
13:16Wenn ich einen anderen Kanal auswähle, dann steht hier auch was anderes drin.
13:19In der ersten Tabelle selber sind interessante Sachen drin, um die Antenne jetzt passend
13:23auszurichten.
13:24Zum einen haben wir hier den Kanal Namen in Hex dargestellt, das interessiert uns aber
13:28eher weniger.
13:29Was für uns interessant ist, ist jedes SNR-Wert.
13:32Umso höher der ist, umso besser natürlich der Empfang.
13:35Wie auch in der Desktop-Variante gilt hier ein Wert über 10,0 ist ein brauchbarer Wert,
13:42damit man eben einen Radio-Sender empfangen kann, ohne dauernd Abbrüche zu haben.
13:46Hier in meinem Fall ist er jetzt bei 18,19, das ist schon für meine Verhältnisse richtig gut.
13:51Besser geht es leider bei mir nicht.
13:53Dann haben wir hier den RX-Gain, also den Verstärkungsfaktor, den wir auch in der grafischen
13:57Oberfläche in den Einstellungen mit den Schiebereglern hatten.
14:00Das Ganze macht er jetzt eben automatisch.
14:02Er hat jetzt hier einen Verstärkungsfaktor von 29,7 dB.
14:06Wenn wir nochmal kurz zurück ins Terminal gucken, dann sehen wir hier, das ist tatsächlich
14:10ein Faktor, den er hier nutzen kann.
14:12Dann haben wir hier die korrigierbaren Fehler.
14:16Wenn das Ganze so in einem 100er Bereich, also von 0 bis 100 schwankt, dann sind es
14:20meistens Fehler, die er noch irgendwo korrigieren kann.
14:23Wenn das gleich hochschnell dauert, keine Ahnung wie viel tausend, dann haben wir definitiven
14:27Probleme und dann treten auch definitiv Aussätze auf.
14:31Dann haben wir hier das aktuelle Datum in der UTC-Zeit, wichtig hierbei, das über DAB
14:36versendet wird und ein paar weitere Informationen, die uns jetzt aber erstmal nicht interessieren.
14:41In der zweiten Tabelle haben wir dann die verschiedenen Sender, die zur Verfügung stehen
14:45auf dem jeweiligen Kanal und wenn wir hier einen anderen Kanal auswählen, nehme ich
14:49hier einfach mal kurz 5C, dann werden hier dann dementsprechend auch gleich andere Sender
14:54geladen.
14:55Das dauert immer einen kleinen Moment und dann sehen wir hier andere Sender.
14:58Wir sehen jetzt hier auch über 5C habe ich hier einen Wert von 16,0, auch noch brauchbar,
15:03aber er muss hier schon mal mehr verstärken, damit die Qualität auch aufrechterhalten
15:08werden kann.
15:09Schalte ich nochmal kurz um auf 8D und drücke jetzt hier einfach mal kurz bei einem hier
15:14auf Play, damit wir hier gleich ein bisschen mehr sehen, wie guckt man auch, was wir hier
15:18in der zweiten Tabelle alles haben.
15:19Wir haben nämlich hier die verschiedenen Sender mit eben dem Sendernamen.
15:23Zum einen haben wir hier den Sendernamen ausgeschrieben und die Kurzform, die auch gern mal auf Displays
15:29angezeigt wird, die eben nicht so viel Text darstellen können.
15:32Dann haben wir hier den Sendernamen wieder in Hexadezimal, beziehungsweise die Sender-ID,
15:38die ist gleich nachher interessant, wenn wir eben das Ganze im Heimnetz verteilen möchten.
15:42Wir haben hier die Bitrate, die eben vom Radiosender übertragen wird, hier jetzt bei nur meistens
15:47Sprache im 72 Kbit, bei den Musiksendern vom SWR sind es immerhin mal 112 Kbit, bei
15:55den anderen Privatsendern ist es meistens auch 72 Kbit, also nicht besonders viel.
16:00Dann haben wir hier noch weitere Informationen, die uns erstmal nicht interessieren.
16:03Wir haben hier technische Details, wie der Codec und die Frequenz, die genutzt wird und
16:07die Herzangabe, die genutzt wird und hier aber auch das Genre, wo der Radiosender eingestuft
16:13wird, was der eben an Informationen übermittelt, sowie das aktuelle Programm, was aktuell
16:18kommt.
16:19Es dauert immer einen kleinen Moment und dann kriegen wir hier auch ein SLS in Rot angezeigt
16:23mit weißer Schrift und wenn wir drauf drücken, dann kriegen wir auch das Bild angezeigt,
16:28was über DAB Plus dann nachher bei den verschiedenen Sendern übermittelt wird.
16:33Perfekt.
16:34Dann haben wir hier noch die Spalte mit den Fehlern für die verschiedenen Sachen, wenn
16:37wir hier mal auf Error drauf fahren, dann kriegen wir das Ganze auch manchmal angezeigt.
16:42Heute mal gar nicht, jetzt kommt es.
16:44Zum einen haben wir die Fehler bei den Frames, dann haben wir Reed, Solomon und AAC Errors.
16:49Hier sind die ersten beiden für uns interessanter, denn AAC Errors gibt es bei mir irgendwie
16:54nie.
16:55Wir müssen uns hier nur auf die ersten zwei Zahlen konzentrieren und wenn die natürlich
16:58steigen, dann haben wir Aussetzer und das ist natürlich schlecht.
17:02Deswegen müssen wir gucken, dass hier die Zahl im besten Fall bei 0 bleibt oder wirklich
17:06eine kleine Zahl da bleibt oder die Zahl sich dementsprechend nicht sonderbar erhöht.
17:12Wenn euer Empfang wirklich schlecht ist, dann schnellen die Fehler hier schnell mal hoch
17:15in die Tausenden.
17:17Von dem her, dann müsst ihr die Antenne gegebenenfalls nochmal neu ausrichten.
17:21Dann haben wir hier noch das Audio Level, also die Lautstärke, was gerade übertragen
17:25wird, einmal für die linke und rechte Spur und hier eben der Play Button, um eben den
17:29Radiosender über den Webbrowser selber anhören zu können.
17:33Das unterstützt nämlich Welle CLI auch.
17:36Wir könnten nun eben die Antenne versuchen ein bisschen besser auszurichten, sollten
17:39bei euch, wie hier in meinem Fall, noch Fehler existieren.
17:42Hierbei müsst ihr eigentlich nur zwei Werte im Auge behalten.
17:45Einmal der SNR-Wert, wie vorhin gesagt, ein Wert über 10 ist zumindest mal brauchbar,
17:49damit man ein Signal hat, womit man einigermaßen problemlos hören kann und hier der Verstärkungsfaktor.
17:55Umso höher der Verstärkungsfaktor ist, den er automatisch einstellt, umso mehr muss
18:00er natürlich da Gas geben, um ein brauchbares Signal zu haben und umso mehr Rauschen ist
18:05unter Umständen auf der Leitung, was das Signal stören könnte.
18:08In meinem Fall hat er jetzt einen SNR-Wert von 19, was ja okay ist und den Verstärkungsfaktor
18:14auf 29,7.
18:15Also er muss schon einiges draufdrücken, damit er hier ein Signal hat, wo brauchbar
18:19ist.
18:20Ihr könnt nun eben eure Antenne passend ausrichten, damit ihr hier bei RX einen niedrigen Wert
18:25und bei SNR einen hohen Wert habt.
18:27Helfen kann euch dabei auch das, was wir hier unten aufklappen können.
18:30Ich stoppe jetzt einfach mal kurz den Radiosender, dass die wieder die Klappe halten und wir
18:35klappen mal hier unten das Ganze auf.
18:37Wir sehen hier einmal das Spektrum, was grafisch etwas schöner dargestellt ist, als über
18:42die Welle IO grafische Oberfläche.
18:44Wir haben hier nämlich zwei Linien, zum einen die rote Linie, was unser eigentliches Signal
18:50darstellt, das wir empfangen und auch nutzen möchten und einmal die grüne Linie, was
18:54eben ein Störsignal bzw. Rauschen darstellt.
18:57Sofern die rote Linie immer über der grünen Linie ist, haben wir ein Signal, was wir nutzen
19:03können und dementsprechend keine Fehler auf der Leitung.
19:06Wenn die rote und grüne Linie deckungsgleich sind oder werden, wie jetzt gerade hier zum
19:11Beispiel, dann haben wir Fehler auf der Leitung und das Radio setzt dann dementsprechend kurz
19:15aus.
19:16Das ist natürlich dann doof.
19:17Im besten Fall sollte die grüne Linie eine gerade Linie am Boden sein und rot dementsprechend
19:23irgendwo hier oben.
19:24Was hier leider fehlt, sind die Angaben der X- und Y-Achse.
19:27Die gibt es zum Beispiel bei der Desktop-Variante, der mir aber auch nichts sagt und zum Ausrichten
19:32der Antenne auch scheinbar nicht sonderlich hilfreich ist.
19:36Dann haben wir hier noch die Konstellation, die sehen wir auch über die Desktop-Variante.
19:39Das ist das mit den Punkten.
19:41Die Punkte hier sollten im besten Fall vier gerade Linien darstellen.
19:45Dann ist das Signal scheinbar ziemlich gut und er kann das Problemlos empfangen.
19:50Streuen sich die ganzen Punkte hin und her und wir haben hier eigentlich nur noch ein
19:53Gewusel drin.
19:54Dann treten Störungen auf, dann rauscht das Signal so stark, damit er hier eben die verschiedenen
19:59Streams, die eben über einen Kanal verschickt werden, nicht mehr sauber zusammenfügen kann
20:04und dementsprechend kommt Matsch dabei raus.
20:06Zum guten Schluss haben wir hier noch die TII-Info.
20:09Hier will er irgendwie auch ausrechnen, wie weit der Sendemast jetzt hier weg ist und
20:14wie lange das Signal wandern muss, um an meiner Antenne anzukommen.
20:19Die Werte muss man aber mit ein bisschen Vorsicht genießen.
20:22Die stimmen zum Beispiel bei mir jetzt hier von den Kilometerangaben nicht sonderlich.
20:27Bei mir ist der Sendemast über 40 Kilometer weit weg mit dem Auto, von dem her, ja, was
20:32er hier mit 12 und 26 will, keine Ahnung, funktioniert nicht ganz so gut.
20:38Wie wir zum Beispiel diese Angabe auch abstellen können, zeige ich dir gleich.
20:41So, jetzt hast du zumindest mal alle Informationen, die du brauchst, um bei dir eben die Antenne
20:46nochmal passend zu optimieren von der Position her.
20:49Wenn wir noch softwareseitig etwas tunen müssen, dann gehen wir einfach zurück in die Konsole
20:54und beenden hier mal den Web-Server wieder mit STRG-C.
20:58Wenn ich hier nochmal ein bisschen hochscrolle, dann haben wir hier ja die verschiedenen Parameter
21:03und wir können hier den Verstärkungsfaktor, also diesen RX-Gain, den wir hier hatten,
21:09manuell festlegen.
21:11Allerdings funktioniert das Ganze bei mir nicht.
21:13Der macht es immer automatisch, egal was ich eintrage.
21:16Du kannst es aber gerne versuchen.
21:18Das kriegt man einfach hin, indem man hier den Parameter "-g", mitgibt und dann den Wert
21:23angibt, den er eben verstärken soll.
21:26Allerdings, und in diese Falle bin ich auch reingelaufen, geht man davon aus, gut, dann
21:31gebe ich jetzt hier einfach den Verstärkungsfaktor an, den er mir hier ausgegeben hat.
21:35Falsch.
21:36Wir müssen den Verstärkungsfaktor in der Nummerierung angeben, die er hier hat.
21:42Er hat nämlich 29 Verstärkungsfaktoren gefunden und dementsprechend müssen wir hier eine Zahl
21:47zwischen 1 und 29 eingeben.
21:49Steht halt nur nirgendwo.
21:51Muss man irgendwie durch Probieren herausfinden.
21:54Wenn ihr also den Verstärkungsfaktor von Hand angeben möchtet, müsst ihr den Parameter
21:59"-g", angeben und dann einfach zählen, wie stark hier der Faktor sein soll.
22:04Wir fangen hier an 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 bis 29.
22:10Wenn wir also den Verstärkungsfaktor 28 haben wollen, müssen wir die Zahl 16 eintragen,
22:16nicht 28.
22:17Genauso mit dem Verstärkungsfaktor 29,7 müssen wir die 17 eingeben, nicht 29,7.
22:23Wenn ihr zum Beispiel aber auch direkt einen Kanal ansteuern möchtet, weil dort eure Favoritensender
22:29drin sind, können wir das mit dem Parameter "-c", tun.
22:32Das mache ich zum Beispiel sehr gerne, weil standardgemäß hat er jetzt den Kanal 10b
22:37ausgesucht, glaube ich.
22:38Da kommt bei mir halt nichts, weil absolut nichts auf diesem Kanal in meiner Umgebung
22:42an sich nur gesendet wird.
22:44Ich glaube, in ganz BW wird da nichts gesendet.
22:46Dementsprechend kann ich hier auch direkt einen Kanal mit angeben, wo definitiv was
22:50kommt.
22:51Bleiben wir hier einfach bei dem Beispiel mit dem 8d.
22:54Und wenn eben diese TI-Informationen einfach ein bisschen Quatsch sind bzw. uns eh nichts
22:59sagen und wir sie daher nicht brauchen, können wir diese auch deaktivieren.
23:03Denn das spart etwas CPU-Leistung ein, wie wir hier unten dann sehen.
23:07Das Ganze kriegen wir hin mit dem Parameter "-t".
23:10Also basteln wir uns doch einfach mal kurz hier den Befehl so zusammen, damit das Ganze
23:16perfekt für uns läuft.
23:17Wir rufen wir alle CLI mit dem Parameter "-w", für den Web-Server und den Port 7777 wieder
23:22auf.
23:23Sagen ihm dann, hey benutzt doch gleich den Kanal, also "-c", 8d in meinem Fall, weil
23:29da was kommt.
23:30Hier müssen wir auch auf die Groß- und Kleinschreibung achten, also 8 und ein großes d, Leerzeichen
23:35"-t", ein großes t hierbei, um eben die TI-Info zu deaktivieren.
23:41Und wer möchte, eben den Verstärkungsfaktor "-g", und dann zum Beispiel in meinem Fall
23:4516 für 28 db.
23:47Wie gesagt, bei mir funktioniert das nicht, also kann ich das weglassen.
23:51Muss wohl irgendwie noch ein Bug in der Software sein, zumindest mit welche CLI, weil über
23:55die grafische Oberfläche funktioniert es ja.
23:57Wir können das Ganze dann wieder starten und der Web-Server wird auch wieder gestartet.
24:02Das Ganze scheint zu funktionieren und wir kriegen auch in dem Fall keine Fehler mehr
24:05hier direkt reingeschmissen, damit er hier nichts findet.
24:09Gehen wir zurück in den Web-Browser.
24:12Und wir laden mal die Seite kurz neu.
24:15Sehen wir, er hat automatisch hier den Kanal 8d angesteuert, perfekt, und die Sender stehen
24:20uns zur Verfügung.
24:21Jetzt können wir hier wieder auf irgendeinen Sender draufdrücken, nehmen wir hier mal
24:25SWR1 und das ganze Ding funktioniert auch perfekt.
24:29Okay, das Ganze läuft jetzt erstmal so und wir können eben jetzt Radio über den Web-Browser
24:34hören oder wenn wir die Playlist abrufen in einem beliebigen Media Player, wo eine
24:39M3U-Playlist abspielen kann.
24:41Das Problem hierbei ist allerdings, wenn wir jetzt hingehen und hier diese Terminal-Sitzung
24:46schließen, dann wird auch automatisch Welle-CLI wieder beendet und wir können nicht Radio
24:51hören.
24:52Nur wir wollen ja nicht den ganzen Tag hier diese Konsole offen haben.
24:55Deswegen werden wir jetzt noch kurz Welle-CLI so einrichten, dass es als System-Service
24:59läuft und im Hintergrund einfach weckelt und wir auch den Pi problemlos neu starten
25:03können, wenn mal Strom los war oder so und Welle-CLI dann automatisch startet.
25:07Dazu gehen wir hin, beenden mal kurz Welle-CLI wieder mit STRG-C und werden dann noch mal
25:14kurz Root Benutzer, also sudo lehrzeichen su eingeben.
25:18Wir richten nämlich jetzt noch kurz Welle-CLI als System-D Service ein, damit eben darüber
25:24Welle-CLI automatisch gestartet wird.
25:26Hierfür legen wir uns einfach kurz eine Datei an.
25:29Wir öffnen dazu einfach den Editor Nano, gehen dann in den Ordner etc.systemd.system
25:34und legen jetzt hier in meinem Fall die Datei Welle.service an.
25:37Die könnt ihr benennen, wie ihr möchtet.
25:39Es muss einfach mit .service enden.
25:42Ich nenne das ganz einfach Welle, weil es einfach kann man schnell eingeben.
25:46Wir öffnen hier die Datei, die ist hier erst mal leer, ist ja auch eine neue Dateizektion
25:50unten an und fügen hier folgenden Inhalt ein.
25:53Kurz zur Beschreibung, was das Ganze tut.
25:55Wir können hier oben einmal eine Beschreibung bestimmen.
25:57Das hilft uns einfach nachher, wenn wir über die Kommandozeile mal den Status des Dienstes
26:01angucken, dann steht da drin Welle-IO-Radioserver, dann wissen wir einfach, wir sind richtig.
26:07Bei Service starten wir dann das eigentliche Programm.
26:09Wir haben hier ein Arbeits-Directory, das ist einfach usr-bin, da ist erst mal Welle-CLI
26:15drin, deswegen das nicht ändern.
26:18Dann nutzen wir hier einfach den Benutzer Pi und die Gruppe Pi, die jetzt bei einem
26:22Raspberry Pi eben standardgemäß vorhanden ist.
26:24Wenn ihr einen anderen Benutzer habt, den ihr standardgemäß dafür verwenden möchtet,
26:30dann ändert hier einfach den Namen ab.
26:32Der Gruppenname ist in der Regel identisch zum Benutzername.
26:36Wenn ihr das Ganze mit einem Root-Account machen möchtet, dann tragt ihr hier einfach
26:39bei User und bei Group Root ein und dann starten wir einfach Welle-CLI.
26:44Wir rufen es hier mit dem vollen Pfad auf, deswegen steht hier noch usr-bin davor, starten
26:49dann Welle-CLI mit unseren Parametern, die wir gerade so getestet haben, die funktionieren
26:54sollten.
26:55Ich muss hier nur das mit dem Verstärkungsfaktor hier kurz rausnehmen, das funktioniert ja
27:00bei mir eh leider nicht.
27:02So.
27:03Dann haben wir hier noch den Parameter, damit falls das Ding abstürzt, automatisch neu
27:09gestartet wird.
27:10Den gesamten Inhalt findet ihr auch auf meiner Homepage, zum abkopieren müsst ihr also nicht
27:14abschreiben.
27:15Wir speichern die Datei wieder ab, Steuerung X, Y und einmal Enter drücken und schon haben
27:21wir die Datei abgespeichert.
27:23Jetzt müssen wir sie nur noch aktivieren mit systemctl enable welle.service.
27:31Schicken wir das Ganze ab.
27:33Wird der Dienst zumindest mal aktiviert, damit er verfügbar ist.
27:37Jetzt müssen wir ihn nur noch starten mit systemctl start welle.service.
27:44Wir schicken das Ganze ab und Welle-CLI wird nun im Hintergrund gestartet.
27:48Wir sehen jetzt hier über die Kommandozeile nichts mehr.
27:51Wenn wir aber zurückgehen in Webbrowser, dann hat hier auch die Liste schon wieder
27:55geladen.
27:56Wenn wir hier neu laden, um sicher zu gehen, jawohl, hat das Ganze funktioniert und ich
28:00kann jetzt auch hier, nehmen wir einfach mal SWR3, eigentlich wieder Radio hören.
28:05Perfekt funktioniert.
28:06Jetzt ist es aber so, dass wir immer noch hingehen müssen und auf jedem einzelnen Gerät
28:11eben jetzt zum Beispiel in den Webbrowser starten und dann dementsprechend hier auf
28:14die Webseite gehen müssen, um ein Radiostream hören zu können oder wir gehen hin und starten
28:20das ganze Ding eben in einem beliebigen Media Player.
28:23Das Problem dabei ist, die puffern unterschiedlich und dementsprechend haben wir nie eine synchrone
28:27Wiedergabe.
28:28Wenn wir mehrere Wiedergabe-Geräte haben, die gleichzeitig etwas abspielen sollten,
28:32hört sich das einfach krass an, soweit die einfach zu nah aufeinander stehen.
28:36Um jetzt noch die Wiedergabe synchron hinzubekommen, installieren wir uns Snapcast.
28:42Dazu habe ich schon mal eine ausführliche Anleitung erstellt, die geht zwar eine Stunde,
28:46aber ihr habt danach ein richtig geiles und anpassbares Setup für eben das Musikstreaming
28:51im Haus und das Ganze mega gut synchron.
28:54Wir werden jetzt hier in dem Video nur kurz schnell durchgehen, was notwendig ist, um
28:57Snapcast zu installieren und um einen Radiostream der Wahl auf unserem Endgerät hören zu können.
29:03So, ich stoppe jetzt hier erstmal kurz die Wiedergabe wieder und wir besorgen uns jetzt
29:08Snapcast.
29:09Dazu gehen wir hin und rufen hier einmal GitHub auf und rufen hier die Projektseite
29:14von Snapcast auf mit den aktuellen Releases.
29:17Die neueste Version ist jetzt hier die Version 0.2.9.0 bei mir, vor fünf Tagen veröffentlicht,
29:24recht neu, cool.
29:25Und wir scrollen einfach weiter runter bis zu den Assets, zeigen hier einmal alles an
29:31und laden uns hier die passende Version für unser Betriebssystem herunter.
29:35Wir brauchen erstmal den Snapserver, Achtung, nicht hier den Snapclient runterladen, den
29:39brauchen wir später, wir brauchen hier den Snapserver.
29:43In dem Fall habe ich einen Raspberry Pi, der hat eine ARM-CPU und ich habe sogar das 64-Bit-System
29:48drin.
29:49Also kann ich hier aktuell die Bookworm-Version nehmen mit der ARM64-Architektur, also mache
29:56ich hier einfach einen Rechtsklick drauf, sage hier Linkadresse kopieren und lade hier
30:01kurz das Ganze runter über Terminal, also VGET, Leerzeichen, Link einfügen, abschicken.
30:08Perfekt.
30:09Perfekt.
30:10Und dann brauchen wir noch FFmpeg, das ist unter Umständen bei dir noch nicht auf deinem
30:15System drauf, also geben wir noch kurz ein apt-install-ffmpeg, schicken das Ganze ab
30:23und ja, bei mir ist es sogar schon drin, cool, okay, bei dir unter Umständen nicht, also
30:27lass kurz FFmpeg installieren, falls es bei dir noch fehlen sollte.
30:31Dann installieren wir den Snapserver mit apt-install und dann müssen wir einfach den vollen Pfad
30:36angeben, hier in dem Fall Home und dann Pi, hier habe ich es heruntergeladen und dann
30:41die Datei Snapserver in der Version 0.29.0, schicke das Ganze ab und dann wird das installiert.
30:47Soll jetzt hier ein Fehler auftreten, damit da viele Pakete nicht finden kann und die
30:52Abhängigkeit dazu nicht stimmt, hast du einfach die falsche Version heruntergeladen, dann
30:56nimm einfach die andere, die sollte funktionieren.
30:59Okay, wir kriegen dann zwar hier angezeigt, dass hier ein Download fehlgeschlagen ist
31:05wegen Berechtigungsprobleme, ist aber absolut kein Problem, Snapcast hat in der Regel sauber installiert.
31:12Dann können wir auch das Setup direkt wieder löschen, denn das brauchen wir nicht, also
31:15rm und dann noch den Dateinamen angeben, Snapserver in der Version, schicken wir ab und dann haben
31:19wir auch direkt das Ganze schon wieder aufgeräumt.
31:21Jetzt müssen wir noch Snapcast selber konfigurieren, damit er eben gleich die Radiostreams auch
31:29entgegennimmt sauber und ins Netzwerk verteilen kann.
31:33Das kriegen wir hin, indem wir mit dem Editor Nano die Konfiguration öffnen, die sich im
31:38Ordner etc befindet und snapserver.conf nennt.
31:43Wir öffnen das Ganze, dann haben wir hier eben die Snapcast Konfiguration.
31:46Ich gehe jetzt hier nur ganz schnell durch, was wir tun müssen, damit das Ganze sauber
31:50funktioniert.
31:51Im ausführlichen Video zu Mobity und Snapcast gehen wir hier gezielt dadurch, was zu tun ist.
31:56Wir gehen erst mal kurz hin und sagen hier, wir brauchen nur 4 Threads, denn mein Raspberry
32:01Pi hat nur 4 Cores, also beschränke ich das einfach mal.
32:05Dann gehen wir weiter runter zum Bereich Stream.
32:09Hier finden wir ein Beispiel mit einer Source, das brauchen wir nicht, das kommentieren wir
32:16hier aus und wir basteln hier jetzt unseren eigenen Stream rein.
32:21Dazu gehe ich jetzt einfach hin und habe hier schon mal ein Beispiel vorbereitet.
32:26Und zwar erstellen wir hier einen Stream, nutzen dann hier Pipe und legen eine Datei
32:31an oder rufen die Datei ab, um genauer zu sein, im Ordner tmp für Temp und wir nennen
32:37sie einfach snapfifo-dab-svr1 hier in dem Fall jetzt mal und der Anzeigename in Snapcast
32:43selber ist dann dab-svr1, so kann ich das Ganze einfach ein bisschen unterscheiden.
32:48Wenn wir jetzt andere Sender hinzufügen, können wir zum Beispiel hingehen und sagen
32:52hey, ich hätte hier gerne noch einen Sender mit dem Namen svr3, das gibt es ja auch hier
32:57in dem Fall und der Anzeigename ist dann auch hier svr3.
33:00Mehr müssen wir hier erstmal nicht tun, die zwei Dateien werden automatisch, wenn
33:04wir gleich Snapcast nochmal neu starten, angelegt und wir sind dann damit die vorhanden sind
33:09im Ordner tmp.
33:10Der Pfad müssen wir eigentlich nicht ändern, weil es sind ja flüchtige Dateien, die müssen
33:13absolut nicht persistent auf unserer Festplatte liegen bleiben.
33:16Dann können wir noch kurz hingehen und hier das Sample Format einmal einrücken, damit
33:20das Ganze aktiv wird, damit es auch hier diesen Wert beinhaltet, also 48 kHz, 16 bit
33:27bei 2, also Stereo-Signal und dann war es das Ganze eigentlich auch schon.
33:31Wenn ihr möchtet, könnt ihr hier einmal mit dem Codec noch rumspielen, da steht standardgemäßer
33:35Flagg, das passt und mit der Latenz und der Buffergröße.
33:39Ich habe herausgefunden, beim Raspberry Pi 4b funktioniert hier die Millisekundenangabe
33:43mit 26 Millisekunden ganz gut pro Chunk, wenn die Buffergröße hier bei zum Beispiel 350
33:52ist.
33:53Müsst ihr eben selber herausfinden, was mit eurem Netzwerk geht und ab wann es gerade
33:57bei den Wiedergabegeräten dann zu Problemen kommt.
34:00Wenn ihr keine Ahnung habt und hier erstmal nicht rumspielen wollt, dann lasst das Ganze
34:05einfach auskommentiert und lasst es hier bei den Standardwerten, das sollte passen.
34:10Danach gehen wir einfach hin, speichern das Ganze ab mit STRG-X, drücken nochmal Y und
34:14Enter und jetzt müssen wir den Snapcast-Server einmal neu starten mit systemctl restart snapserver.
34:24Abschicken und das ganze Ding wurde neu gestartet.
34:27Ich habe gerade erwähnt, die zwei Dateien für die Streams werden jetzt angelegt und
34:32das ist tatsächlich der Fall.
34:33Wenn wir mal mit ls-ll in den Order tmp schauen, dann haben wir jetzt hier zwei neue Dateien
34:39und zwar hier die Snap-FIFO-DAB-SWR1 und SWR3.
34:45Die hier wurde gerade automatisch noch angelegt mit der Standardkonfiguration vom Snap-Server.
34:51Deswegen die wird jetzt auch nicht mehr befüllt und kann man auch nicht mehr abrufen.
34:55Doch wie kann ich jetzt in die Datei zum Beispiel Musik reinfüllen, damit ich das über ein
35:00Wiedergabegerät dann wieder abfragen kann?
35:01Das geht relativ simpel mit FFmpeg jetzt.
35:05Wir müssen aber als allererstes hier einmal den Benutzer und die Gruppe abändern der
35:08zwei Dateien, ansonsten kriegen wir hier gleich nichts rein und es funktioniert nicht.
35:12Deswegen müssen wir hier kurz hingehen.
35:14Das ist, ich sage mal ein Bug oder ein rechtes Problem von Snapcast an sich.
35:18Ich hoffe, das kriegen sie mal in den Griff.
35:20Wir müssen kurz hingehen mit chown.
35:23In dem Fall gebe ich jetzt das ganze dem Benutzer root, von der Gruppe root.
35:29Das macht absolut nichts aus, wenn das eben gar nicht vom Pi-Benutzer angesteuert werden
35:33kann, was wir gleich sehen und dann sage ich ja einfach die Datei im Ordner temp, wo
35:38sich Snap FIFO minus und ein Sternchen für irgendwas nennt, soll hier editiert werden.
35:44Das schicken wir ab und jetzt sehen wir, wenn wir es nochmal angucken, dass jetzt auf einmal
35:50die zwei Dateien dem root Benutzer gehören.
35:52So ist das jetzt für unseren Fall hier perfekt.
35:55Für den Test hier rufe ich jetzt einfach kurz nochmal ein neues Terminal Fenster auf,
36:00verbinde mich hier auch nochmal kurz mit meinem Raspberry Pi, bin dann als ganz normaler
36:05Pi-Benutzer unterwegs und jetzt befüllen wir einfach die Snap FIFO Datei, die wir dort
36:11haben, mit dem aktuellen Radiostream und das bekommen wir wie folgt hin.
36:15Ich habe jetzt hier schon mal ein Beispielbefehl zusammengebaut.
36:18Wir starten hier mit FFmpeg, den rufen wir einfach auf und rufen hier dann die Datei
36:23von unserem Web-Server von valid.cli ab.
36:27Deswegen habe ich hier meine IP-Adresse von meinem Raspberry Pi mit dem Port 7777.
36:33Dann öffne ich hier den Pfad mp3 und dann habe ich hier einen lustigen Hex-Gramm drin
36:38stehen.
36:39Über den Pfad mp3 stellt eben valid.cli die verschiedenen Streams zur Verfügung und den
36:46Hex-Gramm, den wir hier sehen, ist die ID des Senders, die sehen wir nämlich hier.
36:52Ich habe jetzt hier mal SVR1 reingemacht und der heißt eben hier 0xd301 und genau
36:58das habe ich jetzt auch hier reingeschrieben 0xd301.
37:01Dann haben wir hier noch ein Parameter f, wir geben hier noch ein bisschen Kram mit
37:05an für Codec, Qualität und Tralala.
37:08Wir haben ja auch hier die 48 kHz wieder und wir schieben das Ganze einfach in die Datei
37:14tmp snapfifo.dhb.svr1.
37:15Wenn ihr jetzt einen anderen Radiosender habt, dann müsst ihr hier eben die IP-Adresse noch
37:21ein bisschen anpassen.
37:22Hier die ID editieren und dementsprechend vielleicht einen anderen Namen für die Datei
37:26selber angeben.
37:27Wenn wir das dann abschicken, dann ruft er hier jetzt valid.cli auf und schiebt das Ganze
37:34jetzt in die Datei selber rein.
37:36Wir sehen, er beginnt jetzt hier mit dem Abspielen und nutzt jetzt hier mit dem Flak-Codec eben
37:401536 Kbit.
37:41Alles nur lokal, geht erstmal noch nicht übers Netzwerk.
37:47Wenn wir zurück gucken, hier in valid.cli sehen wir jetzt hier auch bei svr1 gibt es
37:51wieder Ausschlag.
37:52Also hier ist jetzt auch definitiv was im Gange, also unser Pi hört sich selber gerade
37:57zu.
37:58Jetzt befüttern wir hier den Pi, wenn wir zurückgehen auf unsere erste Instanz, dann
38:03möchte ich euch nämlich noch eine Sache kurz zeigen, weshalb wir hier die Rechte auf
38:06den Root-Account gesetzt haben.
38:08Und zwar, wenn ich das Ganze nochmal kurz aktualisiere, dann sehen wir, dass hier die
38:11Dateigröße bei 0 bleibt.
38:15Wenn ihr jetzt hier den Benutzer zum Beispiel auf den Pi-Benutzer abgeändert habt, dann
38:19pumpt er wirklich alles hier in die Datei rein und die Datei wächst ins Unendliche,
38:23weil er es quasi aufnimmt.
38:24Das wollen wir ja nicht.
38:26Also achtet einfach darauf, dass die Datei hier zum Beispiel dem Root-Benutzer gehört.
38:30Jetzt gilt es eigentlich nur noch hier auf unserem Wiedergabegerät den Stream zu öffnen
38:35oder auf den Wiedergabegeräten, denn Snapcast an sich funktioniert ja nicht nur auf Linux,
38:40es geht auch auf Windows, es geht auf Mac, glaube ich, und auf jeden Fall zum Beispiel
38:44auch auf Android.
38:45Also gehen wir kurz hin und laden uns hier noch den Client für mein Linux runter.
38:51Also nehme ich hier erst mal den ersten Download mit AMD64.
38:59Lass das Ganze kurz hier installieren in der neuesten Version, über die Paketquellen gibt
39:03es nur eine ältere Version.
39:07Perfekt.
39:11Und dann kann ich hier kurz ein neues Fenster bei mir lokal auf ein System starten.
39:17Snap Client und dann muss ich hier in meinem Fall die IP-Adresse vom Raspberry Pi angeben,
39:24sonst steuert er mein anderes System an.
39:26Und zack, es funktioniert.
39:31Ich kann jetzt hier automatisch Musik hören, weil der erste Stream, der verfügbar ist,
39:35eben ausgewählt wird.
39:36Ansonsten wird jetzt hier nichts kommen.
39:39Um jetzt hier über Linux das Ganze steuern zu können, bietet auch SnapCast ein Web-Interface
39:44an.
39:45Das kriegen wir geöffnet, indem wir jetzt einfach die IP-Adresse im Browser wieder aufrufen
39:50vom Raspberry Pi und den Port hier 1780 eingeben, dann kriegen wir hier das SnapCast Web-Interface
39:57angezeigt.
39:58Und hier ist aktuell ein Client, das ist meiner, wo ich jetzt die aufnehme.
40:02Ich kann jetzt von hier aus den Sender auswählen, der angesteuert werden soll.
40:06Wir haben jetzt hier nur SWR 1 gerade rein befüllt.
40:10Wenn ich jetzt hier SWR 3 auswähle, dann passiert absolut gar nichts, denn das Ding
40:15wird ja gar nicht befüllt.
40:16Wenn ich wieder SWR 1 auswähle, dann funktioniert das wieder.
40:19Und ich kann hier auch die Lautstärke an sich regulieren von meinem Client, falls mir
40:26die Musik gerade zu laut oder zu leise ist.
40:28Ich kann auch, wenn ich möchte, hier über den Play-Button direkt im Web-Browser hören.
40:32Somit kann ich eben hingehen und jetzt zum Beispiel hier verschiedene Streams direkt
40:38in SnapCast reinleiten lassen und je nach Bedarf, je nach Räumlichkeit zum Beispiel
40:44auch umschalten.
40:45Nur hier habe ich jetzt das leichte Problem, wenn ich jetzt hier eben das Fenster wieder
40:49zu mache, dann funktioniert auch mein Stream nicht mehr.
40:52Ist genau so bescheiden dann.
40:53Also legen wir auch zum Beispiel den Stream jetzt hier mal beispielhaft eine SystemD-Datei
40:59an, um eben das automatisch starten lassen zu können.
41:03Dazu müssen wir auch hier wieder root werden, also sudo so eingeben und mit dem Editor nano
41:08einfach eine Datei im Ordner edlc-systemd-system anlegen und ich benenne das Ganze jetzt einfach
41:14mal SnapCast-dhbsw1bw.service, könnt ihr benennen wieder wie ihr wollt und schmeiß
41:19jetzt hier einfach auch das hier rein.
41:22Wie gesagt, hier nehme ich einfach hey, das ganze Ding heißt dhbsw1bw-stream.
41:28Er soll nachdem der Netzwerkdienst vorhanden ist, gestartet werden, weil ohne Netzwerkdienst
41:34brauche ich das nicht, weil dann kann ich ja SnapCast nicht abrufen, also wenn der WLAN
41:38oder LAN-Verbindung eben da ist und dann starte ich hier einfach FFmpeg wieder mit dem selben
41:44Befehl, den wir gerade verwendet haben.
41:47Ich rufe dann hier eben die passende URL auf, sprich die IP von meinem Raspberry Pi mit
41:52port-mp3 und dann die ID von meinem Radiostream, gebe dann hier noch die Codec-Informationen
41:59an, die er nutzen soll und wir schreiben das Ganze eben in die SnapFIFO-Datei rein, wenn
42:04ich hier noch weiter rübergehe, dann sehen wir hier, ich nenne die auch wieder SnapFIFO-dhbsw1
42:11in dem Fall, sage hier auch wieder restart always und benutze hier den Benutzer und die
42:16Gruppe Pi.
42:17Das war alles.
42:19Ich speichere das Ganze wieder ab und aktiviere auch wieder diesen Dienst mit systemctl enable.
42:26Dann können wir hier das Ganze einfach abkopieren, geht schneller.
42:30Und dann systemctl start snapcastdhbsw1.service und wenn wir dann hier reinschauen mit Status,
42:44sehen wir hier, so langsam fängt er dann wieder an zu starten und im Hintergrund hören
42:55wir dann auch wieder, die Musik hat wieder angefangen hier abzuspielen, denn mein SnapClient
42:59ist ja noch auf und hier über das Webinterface steht das Ganze dann auch zur Verfügung.
43:05Ich könnte es jetzt auch noch eben für SWL-Reihe zum Beispiel gleich anlegen, sprich ich lege
43:09nochmal eine systemd-Datei an, benutze eben den Namen mit Endung SWL3, benutze den passenden
43:16Pfad mit der ID dann dementsprechend, lasst mal gucken, SWL3 hat 0xd303a3 und dann kann
43:24ich auch das abrufen.
43:25Okay, das war es eigentlich, jetzt könnt ihr überall noch den SnapCast Client installieren,
43:29wo ihr möchtet, mit eurem Rechner hier dann verbinden, der eben die Radiostreams zur Verfügung
43:36stellt und dann im ganzen Haus DAB, Radio über LAN oder WLAN hören.
43:41Ich hoffe, das längere Video hier hat jetzt geholfen, hat gefallen, ja, es war ein bisschen
43:46ausführlicher, aber ihr wisst jetzt, was ihr zu tun und zu lassen habt und auf welche
43:49Werte ihr achten müsst, wenn ihr WLCI verwenden möchtet.
43:53Wenn das Video gefallen hat, dann lasst das Täumchen nach oben da hinterlassen, Abo,
43:57dann verpasst du keine weiteren Videos mehr und empfehle natürlich das Video hier an
44:01deine Freunde weiter, soweit die auch gerne mit über DAB Plus Radio hören möchten
44:05und genauso wie ich im Funklochland wohnen, wo man nur mit deutlich mehr Aufwand das Signal
44:12empfangen kann.
44:13Bis dahin wünsche ich dir viel Spaß mit der Umsetzung und hau rein!