Raspberry Pi Whole Home Synchronous Audio mit Telefon-App-Fernbedienungen - Gunook
Raspberry Pi Whole Home Synchronous Audio mit Telefon-App-Fernbedienungen - Gunook
Anonim
Raspberry Pi Whole Home Synchronous Audio mit Telefon-App-Fernbedienungen
Raspberry Pi Whole Home Synchronous Audio mit Telefon-App-Fernbedienungen
Raspberry Pi Whole Home Synchronous Audio mit Telefon-App-Fernbedienungen
Raspberry Pi Whole Home Synchronous Audio mit Telefon-App-Fernbedienungen

Das Ziel sind synchronisierte Audio- und/oder einzelne Quellen in jedem Raum, die einfach mit einem Telefon oder Tablet über iTunes Remote (Apple) oder Retune (Android) gesteuert werden können. Ich möchte auch, dass sich die Audiozonen automatisch ein- und ausschalten, also habe ich mich an den Raspberry Pi und Hifiberry gewandt, um eine Set-and-Forge-Lösung zu finden.

Teileliste für eine Audiozone:

  • Himbeer-Pi 3 $ 35
  • SD-Karte 16G $8
  • Hifiberry AMP2 $50
  • Netzteil 5,5 mm x 2,1 mm DC-Stecker, 12V 5A 60W $12
  • Lautsprecher $ 75 (wetterfest für die Badezimmerdecke)
  • Musikserver (PC mit iTunes)

Nur zur Einrichtung

  • USB-Maus
  • USB-Tastatur
  • HDMI-Display
  • USB-Netzstecker
  • USB-zu-Micro-USB-Kabel

Schritt 1: Auf Ihren PC herunterladen

UPDATE 05.07.19 ÜBERSPRINGEN Sie diese Anleitung und installieren Sie einfach

Oh mein Gott, es ist immer einfach einzurichten / zu verwenden und bietet alles, was Sie von diesem Tutorial erhalten würden, und noch viel mehr. Sie können es sogar so einstellen, dass es als Zugangspunkt ausgeführt wird, wenn Sie möchten, damit Sie Ihr fantastisches kopfloses Audiosystem ausgeschaltet genießen können das Gitter.

  1. Laden Sie den SD-Kartenformatierer herunter (oder nicht, ich habe ihn nicht benötigt) Dieser Build wird nur als Flughafenverstärker verwendet, daher ist 16G viel Platz und die Karte wurde als fat32 formatiert.
  2. NOOBS Auf meinem Windows 10-Rechner habe ich einfach meine SD-Karte als Ziel gewählt, um NOOBS nach dem Download zu entpacken.
  3. Installieren Sie den VNC-Viewer auf einem PC, damit Sie den Desktop nach der Einrichtung von einem Remote-Desktop auf Ihren Pi übertragen können. Es ist bereits auf Ihrem Raspberry Pi installiert.

Schritt 2: Raspbian OS installieren

Raspbian OS installieren
Raspbian OS installieren
  1. Legen Sie die SD-Karte in Ihre Himbeere und schließen Sie den HDMI-Monitor, die USB-Tastatur und die USB-Maus an
  2. Versorgen Sie den Pi mit dem Mini-USB-Anschluss. Verwenden Sie NICHT den USB-Strom, wenn Ihr Hifiberry-Verstärker installiert ist. (Der Hifiberry-Verstärker treibt Ihre Himbeere an)
  3. Die USB-Maus und -Tastatur funktionieren beim Einschalten für Sie. Wählen Sie unten auf dem Bildschirm Ihre Sprache/Tastatur aus.
  4. Wählen Sie das Raspian-Betriebssystem aus.
  5. Wenn Sie WLAN verwenden, wählen Sie Ihr WLAN-Netzwerk aus und melden Sie sich an. Viele coole Sachen werden verfügbar, nachdem Ihr Pi Ihrem Netzwerk beigetreten ist, tun Sie es nicht. Bleib einfach bei Raspbian. Klicken Sie auf Installieren. Sehen Sie sich während der Installation Informationen über Ihre Himbeere auf dem Bildschirm an. War nur Spaß. Machen Sie etwas und schauen Sie später noch einmal vorbei, es wird eine Weile dauern.

Schritt 3: Nach der Installation von Raspbian OS

  1. Nachdem Sie Ihren neuen Raspbian-Desktop gestartet haben, klicken Sie auf die Himbeere (es ist wie das Startmenü in Windows).
  2. Wählen Sie Raspberry Pi Configuration und gehen Sie wie folgt vor:

    1. PASSWORT ÄNDERN!
    2. Schnittstellen

      SSH und VNC aktivieren (ich bevorzuge VNC, ich erzähle dir später warum)

    3. Lokalisierung

      Stellen Sie alle Ihre Sachen ein (Zeitzone, Land, …)

    4. Hostnamen ändern

      Ändern Sie dies in den Namen der Audiozone. Machen Sie den Namen eindeutig, Sie werden mehrere Zonen haben

  3. Neustart.

Schritt 4: Finden Sie die IP-Adresse von Rasberry

  1. Himbeeren, die als Headless-Audioquellen eingerichtet sind, werden nicht bequem direkt zugänglich sein, Sie sollten von einem PC aus darauf zugreifen.
  2. Sie müssen die IP-Adresse Ihres Pi kennen.

    Wenn Sie auf dem Raspberry-Desktop mit der Maus über das WLAN-Symbol in der Taskleiste fahren, wird eine Infobox angezeigt, in der Sie die IP sehen können, die Ihr Router der Himbeere zugewiesen hat. Mein Router verfügt über eine Funktion, um Geräte im Netzwerk auszuwählen und immer dieselbe IP zuzuweisen. Dies war der Weg des geringsten Widerstands, um meinem Pi eine „statische“IP-Adresse zuzuweisen. Eine dedizierte IP-Adresse macht das Leben viel einfacher

Schritt 5: Sachen installieren

Installiere Sachen
Installiere Sachen
Installiere Sachen
Installiere Sachen
Installiere Sachen
Installiere Sachen

Wenn Sie Ihre Soundkarte / Ihren Verstärker noch nicht angeschlossen haben, tun Sie dies jetzt mit heruntergefahrenem Pi

Schalten Sie Ihren Pi ein und öffnen Sie den VNC-Viewer auf Ihrem PC. Eine VNC-Server-App ist in Ihrem Himbeer-Pi enthalten und Sie haben sie in einem vorherigen Schritt aktiviert. Stellen Sie eine neue Verbindung her und teilen Sie dem VNC-Viewer die IP Ihrer Himbeere mit.

Es gibt eine Befehlsfenster-Verknüpfung in der Taskleiste auf dem Desktop Ihrer Himbeere. Öffnen Sie die Eingabeaufforderung und geben Sie ein:

sudo apt-get update

Geben Sie nach Abschluss ein:

sudo apt-get upgrade

Schließen Sie die Eingabeaufforderung und öffnen Sie das Himbeermenü, wir installieren auf einfache Weise einige Software.

Klicken Sie auf Einstellungen => Software hinzufügen/entfernen

suche nach shairport-sync und installiere es

mach das gleiche für den EQ

du könntest den EQ auch mit installieren

sudo apt-get install -y libasound2-plugin-equal

Schritt 6: Noch einmal in der Eingabeaufforderung

Wir müssen etwas über die Soundkarte wissen

Öffnen Sie eine Befehlszeilenaufforderung.

Geben Sie wie im Beispiel hier den Befehl aplay –l ein.

Beachten Sie, dass der Hifiberry-Verstärker Karte 1 ist

pi@Balcony:~ $ aplay -l

**** Liste der WIEDERGABE-Hardwaregeräte **** Karte 0: ALSA [bcm2835 ALSA], Gerät 0: bcm2835 ALSA [bcm2835 ALSA] Untergeräte: Untergerät #0: Untergerät #0 Untergerät #1: Untergerät #1 Untergerät #2: Subdevice #2 Subdevice #3: Subdevice #3 Subdevice #4: Subdevice #4 Subdevice #5: Subdevice #5 Subdevice #6: Subdevice #6 Subdevice #7: Subdevice #7 Karte 0: ALSA [bcm2835 ALSA], Device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI] Untergeräte: Untergerät #0: Untergerät #0 Karte 1: sndrpihifiberry [snd_rpi_hifiberry_dacplus], Gerät 0: HiFiBerry DAC+ HiFi pcm512x-hifi-0 Untergeräte: Untergerät #0.: Untergerät

Schritt 7: Erstellen Sie die Datei Asound.conf

Sie benötigen eine Datei "asound.conf" unter /etc/asound.conf

Lass es uns machen. (Jetzt kommen wir zu dem Grund, warum ich es mag, dass VNC in Ihren Pi im Vergleich zu etwas wie Kitt ferngesteuert wird)

Gehen Sie an einer Eingabeaufforderung auf Ihrem Pi in das Verzeichnis /etc/ und geben Sie Folgendes ein:

sudo leafpad asound.conf

Wenn Sie Putty verwenden, würde der Befehl leafpad nicht funktionieren. In diesem Fall würden Sie Folgendes eingeben:

sudo nano asound.conf

Der nano-Befehl öffnet einen Texteditor im Befehlsfenster. Es ist einfach zu bedienen, aber etwas klobig. Sie können Ihre Maus nicht benutzen und ich finde es etwas schwer zu lesen.

Leafpad hingegen öffnet ein separates Fenster, das sich wie Notepad in Fenstern verhält. Ich finde es einfacher zu lesen und viel einfacher zu bedienen.

Wie auch immer Sie dort angekommen sind, müssen Sie Ihre asound.conf wie folgt aussehen lassen:

pcm.!Standard {

Typ plug slave.pcm plugequal; } ctl.!default { type hw card 1 } ctl.equal { type equal; } pcm.plugequal { Typ gleich; slave.pcm "plughw:1, 0"; } pcm.equal { Typ Stecker; slave.pcm steckergleich; }

Beachten Sie die Zeilen, die hw card 1 und plughw:1, 0. sagen

Wenn Ihr im vorherigen Schritt gefundenes Audiogerät nicht Karte 1 ist, müssen Sie die Zeilen hier ändern, um Ihre Karte widerzuspiegeln.

Sichere deine Arbeit. Sie muss asound.conf heißen und sich im Verzeichnis /etc/ befinden.

Schließen Sie die Eingabeaufforderung. (Sie können den Befehl "exit" eingeben, um das Terminal zu schließen)

Neustart! Ich habe an dieser Stelle schon einmal vergessen, einen Neustart durchzuführen, und das ist so frustrierend, wenn Sie denken, dass etwas schief gelaufen ist und Sie mit der Fehlersuche beginnen, wenn Sie nur noch einen Neustart benötigen.

Sie müssen hier neu starten.

Schritt 8: Ändern der EQ-Pegel

Ändern der EQ-Pegel
Ändern der EQ-Pegel

Nach dem Hochfahren sollten Sie nun in der Lage sein, Ihre Himbeere direkt von Ihrem Telefon aus zu übertragen. Dadurch wird keine Multiroom-Synchronisierung durchgeführt, aber es ist immer noch großartig. Spielen Sie etwas.

Sie werden vielleicht feststellen, dass der Raum etwas EQ benötigt. Öffnen Sie noch einmal eine Eingabeaufforderung auf Ihrer Himbeere und wir erhalten das EQ-Set.

Geben Sie an Ihrer Eingabeaufforderung das Home-Verzeichnis ein:

sudo -u shairport-sync alsamixer -D gleich

Was bewirkt das?

sudo = Administratorrechte

-u shairport-sync = Befehl als anderer Benutzer ausführen, in diesem Fall shairport-sync

alsamixer -D gleich = öffnet des Equalizers

Übrigens, wenn Sie eingeben:

alsamixer

Sie gelangen zu den Einstellungen für Ihre Soundkarte.

Schritt 9: Verwenden Sie iTunes von einem PC aus und sparen Sie die Akkulaufzeit Ihres Telefons

Verwenden Sie iTunes von einem PC aus und sparen Sie Akkulaufzeit auf Ihrem Telefon
Verwenden Sie iTunes von einem PC aus und sparen Sie Akkulaufzeit auf Ihrem Telefon
Verwenden Sie iTunes von einem PC aus und sparen Sie Akkulaufzeit auf Ihrem Telefon
Verwenden Sie iTunes von einem PC aus und sparen Sie Akkulaufzeit auf Ihrem Telefon

Zu diesem Zeitpunkt haben Sie bereits einen ziemlich großartigen Flughafen-Audioplayer. Jetzt können wir es verbessern, indem wir iTunes öffnen.

Installieren Sie die iTunes Remote-App oder Retune auf Android. Öffnen Sie diese App und Sie können Ihr Gerät mit dem laufenden iTunes auf Ihrem PC verbinden.

Jetzt haben Sie das Tolle von shairport-sync. Alle Ihre Zonen spielen als eine. Sie können die Lautstärke in jeder Zone steuern und Ihre iTunes-Mediathek von allen Geräten aus durchsuchen, auf denen Sie die App installieren. Ihre Frau kann die Musikwiedergabe starten und Sie können die App auf Ihrem Telefon öffnen, auf Jetzt spielen klicken und sehen, was abgespielt wird, als ob Sie es selbst gemacht hätten, und die Kontrolle darüber übernehmen. Oder Sie können den Raum, in dem Sie sich befinden, ausschalten und etwas anderes direkt von Ihrem Telefon in Ihre Zone übertragen, wie Sie es vor iTunes getan haben.

Wir lassen iTunes die ganze Zeit auf einem PC im Keller laufen, wo sich unsere sehr große iTunes-Bibliothek auf einem RAID1-NAS befindet.

Fast hätte ich vergessen zu erwähnen, dass man dieses System auch mit einer Apple Watch steuern kann. Da die Apple Watch wasserdicht ist, kann ich unter der Dusche Songs wechseln und die Lautstärke regulieren.

Schritt 10: Bonusschritt: Erweiterte Shairport-Sync-Parameter

Die Art und Weise, wie dieses instructable Ihre Himbeere eingerichtet hat, sind keine Änderungen an der Datei shairport-sync.conf erforderlich, aber ich nehme diese Anpassung an meinen Audiozonen-Builds vor, damit ich sie hier besser aufliste.

Verwenden Sie Ihre bevorzugte Methode zum Bearbeiten von Befehlszeilentext, wie Sie es in den vorherigen Schritten getan haben, und nehmen Sie eine Änderung an der shairport-sync-Konfigurationsdatei vor, /etc/shairport-sync.conf

Ich entkommentiere "allow_session_interruption" und ändere es in = "yes"

// Erweiterte Parameter zum Steuern, wie ein Shairport-Sync ausläuftsessioncontrol = { // run_this_before_play_begins = "/full/path/to/application and args"; // Stellen Sie sicher, dass die Anwendung über eine ausführbare Berechtigung verfügt. Wenn es sich um ein Skript handelt, fügen Sie das #!…-Zeug in die erste Zeile ein // run_this_after_play_ends = "/full/path/to/application and args"; // Stellen Sie sicher, dass die Anwendung über eine ausführbare Berechtigung verfügt. Wenn es sich um ein Skript handelt, fügen Sie das #!…-Zeug in die erste Zeile ein // wait_for_completion = "no"; // auf "yes" setzen, damit Shairport Sync wartet, bis die "run_this…"-Anwendungen beendet wurden, bevor es fortfährt allow_session_interruption = "yes"; // auf "yes" setzen, damit ein anderes Gerät Shairport Sync unterbrechen kann, während es von einer vorhandenen Audioquelle abgespielt wird // session_timeout = 120; // Warten Sie nach dem Verschwinden einer Quelle diese Anzahl von Sekunden, bevor Sie die Sitzung beenden und wieder verfügbar werden. };

Auf diese Weise können Sie eine Audiozone mit Ihrer Quelle kapern, wenn sie von jemand anderem verwendet wird.

Ohne diese Änderung könnte eine Zone die Wiedergabe Ihrer Musik verweigern, wenn sie bereits von einer anderen Person verwendet wird. Dies ist nicht erforderlich, wenn Sie die iTunes-Remote-Apps verwenden. Alle Geräte, die diese App verwenden, fungieren nur als Fernbedienungen, um dieselbe Quelle zu steuern. Diese shairport-sync.conf-Änderung ist für den Fall, dass Sie von einer neuen Quelle in eine Zone übertragen werden, z. B. direkt von Ihrem Telefon zu einer einzelnen Zone, die bereits von einer anderen Quelle abgespielt wurde. Wenn Sie denken, dass eine Sitzungsunterbrechung nach Audio-Anarchie klingt, die nur zu Blutvergießen führen kann, ignorieren Sie diesen Bonusschritt.

Empfohlen: