Vaporsound: Unterschied zwischen den Versionen

aus dem Wiki des Entropia e.V., CCC Karlsruhe
Keine Bearbeitungszusammenfassung
(Aus Kategorie:Projekte:Laufend genommen)
 
(34 dazwischenliegende Versionen von 11 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Das neue Soundsystem. Mit Netzwerk. Soll den bestehenden Vertaerker abloesen. Es gab die Idee, dies mit [https://en.wikipedia.org/wiki/Audio_Video_Bridging AVB] zu realisieren, aber der XMOS AVB Code compiliert nicht. Daher erstmal ohne AVB, dafür aber mit Beaglebone Black.
Ein Soundsystem im Entropia. Mit Netzwerk.
Hardwaredesign: [https://github.com/entropia/vaporsound Vaporsound auf Github]
 
== Instanzen ==
 
Es gibt aktuell folgende Vaporsounds:
{|class="wikitable"
!Ort !! Hostname
|-
|Hauptraum ||  Kein Vaporsound mehr, siehe dazu [[Musiksetup]].
|-
|Zwischen-/Options-/Nebenraum || http://vaporsound-nebenraum.club.entropia.de
|-
|Werkstatt || http://vaporsound-werkstatt.club.entropia.de
|-
|Küche || http://vaporsound-kueche.club.entropia.de
|}
 
== Benutzung ==
 
Wenn du Musik spielen möchtest, verwendest du am besten die Music Player Daemon (MPD) Instanzen, siehe [[Musiksetup]]. So können alle gemeinsam die Musik steuern.
 
Jedes Vaporsound ist eine Pulseaudio- und Shairport-Senke und announced sich auch via Zeroconf als solche.
 
Jedes Vaporsound hat ein Webinterface (z.B. http://vaporsound-nebenraum.club.entropia.de). Aktuell geht damit nur Lautstärkeregelung; more to come.
 
Da das Linux auf den Vaporsounds stateless ist und nach jedem Reboot wieder im Orginalzustand hochkommt kann man sich problemlos als root (Passwort: root) einloggen.
 
Es gibt mehrere Möglichkeiten, um das Vaporsound zum abspielen zu verwenden:
 
* Über unsere [[Musiksetup|MPD's]].
 
* Player mit gesetzter Umgebungsvariable starten: z.B. <code>PULSE_SERVER=vaporsound-werkstatt mplayer ...</code>
 
* Player selbst konfigurieren: z.B. <code>mpv -ao=pulse:vaporsound-nebenraum ...</code>
 
* über Shairport (todo)
 
== Pulseaudio ==
Um Vaporsound über Pulseaudio zu bespielen sind folgende Dinge möglich:


Status: ist gerade im entstehen...
* Pulseaudio-Sink systemweit auswählen:
z.B. bei GNOME: in <code>paprefs</code> "''Make discoverable PulseAudio network sound device available locally''" anhaken¹ (einmalig), dann unter Settings -> Sound (bzw. <code>gnome-control-center sound</code>) die entsprechende Sink auswählen. (¹ Wenn ausgegraut, das Paket <code>pulseaudio-zeroconf</code> instalieren)


Hardwaredesign: [https://github.com/entropia/vaporsound Vaporsound auf Github]
* Zeroconf: 
Benötigt wird Paket: <code>pulseaudio-zeroconf</code>, <code>libpulse</code> und <code>paprefs</code>.
Bei <code>paprefs</code> im ersten Reiter das erste auswählen, anschließend den Service <code>avahi-daemon.service</code> enabeln und
<code>load-module module-zeroconf-discover</code> nach <code>/etc/pulse/default.pa</code> schreiben.
Kurz den Service neustarten und <code>pavucontrol</code> sollte nun die Droehnung erkennen.
Die Audioquelle muss dann nur noch händisch in <code>pavucontrol</code> unter den Ausgabegeräten ausgewählt werden.
(Siehe: [https://wiki.archlinux.org/title/PulseAudio/Examples#Selecting_the_server_with_Zeroconf Arch-Wiki])
 
Für Ubuntu (getestet mit 22.04):


== Bugs in rev0.1 ==
<pre>
apt-get install pulseaudio-module-zeroconf
# braucht root (/etc)
echo "load-module module-zeroconf-discover" >> /etc/pulse/default.pa
systemctl --user restart pulseaudio || pkill pulseaudio
</pre>


Das Ende von R11, was an SDA hängen sollte, ist nicht an SDA angeschlossen, obwohl das entsprechende Via schon direkt neben dem Pad liegt. Lässt sich aber mit einem dünnen Stück Draht reparieren.
== Pipewire Zeroconf ==
In <code>~/.config/pipewire/pipewire.conf.d/zero.conf</code> folgenden Inhalt einfügen
<nowiki>context.modules = [
{  name = libpipewire-module-zeroconf-discover
    args = { }
}
]</nowiki>


[[Kategorie:Projekte]]
Dann pipewire neu starten mit <code>systemctl --user restart pipewire</code>


== Instanzen ==
Siehe auch [https://wiki.archlinux.org/title/PipeWire Pipewire im ArchWiki] und [https://docs.pipewire.org/page_module_zeroconf_discover.html offizielle Dokumentation].


Es gibt aktuell 2 Vaporsounds:
== Bugs in rev0.1 ==
* Im Keller: vaporsound-keller.club.entropia.de
* Im Zwischenraum/Sofaraum: vaporsound-zwischenraum.club.entropia.de


== Benutzung ==
Das Ende von R11, was an SDA hängen sollte, ist nicht an SDA angeschlossen, obwohl das entsprechende Via schon direkt neben dem Pad liegt. Lässt sich aber mit einem dünnen Stück Draht reparieren.


Jedes Vaporsound ist eine Pulseaudio- und Shairport-Senke und announced sich auch via Zeroconf als solche. Weiterhin läuft auf jedem ein MPD, der an voellerei als Storage angeschlossen ist. Letzteres Feature leidet aber beim Starten noch unter einer Race-Condition, sodass der mpd nach einem Reboot manuell gestartet werden muss.
== Konfiguration ==
Um Domain, Hostname oder IP-Adressen dauerhaft zu ändern, müssen die Dateien in <code>/boot/config</code> angepasst werden


Da das Linux auf den Vaporsounds stateless ist und nach jedem Reboot wieder im Orginalzustand hochkommt kann man sich problemlos als root (Passwort: root) einloggen. Das ist z.B. nützlich, um obiges mpd-Problem zu beheben.
[[Kategorie:Projekte]]

Aktuelle Version vom 14. März 2024, 11:53 Uhr

Ein Soundsystem im Entropia. Mit Netzwerk. Hardwaredesign: Vaporsound auf Github

Instanzen

Es gibt aktuell folgende Vaporsounds:

Ort Hostname
Hauptraum Kein Vaporsound mehr, siehe dazu Musiksetup.
Zwischen-/Options-/Nebenraum http://vaporsound-nebenraum.club.entropia.de
Werkstatt http://vaporsound-werkstatt.club.entropia.de
Küche http://vaporsound-kueche.club.entropia.de

Benutzung

Wenn du Musik spielen möchtest, verwendest du am besten die Music Player Daemon (MPD) Instanzen, siehe Musiksetup. So können alle gemeinsam die Musik steuern.

Jedes Vaporsound ist eine Pulseaudio- und Shairport-Senke und announced sich auch via Zeroconf als solche.

Jedes Vaporsound hat ein Webinterface (z.B. http://vaporsound-nebenraum.club.entropia.de). Aktuell geht damit nur Lautstärkeregelung; more to come.

Da das Linux auf den Vaporsounds stateless ist und nach jedem Reboot wieder im Orginalzustand hochkommt kann man sich problemlos als root (Passwort: root) einloggen.

Es gibt mehrere Möglichkeiten, um das Vaporsound zum abspielen zu verwenden:

  • Player mit gesetzter Umgebungsvariable starten: z.B. PULSE_SERVER=vaporsound-werkstatt mplayer ...
  • Player selbst konfigurieren: z.B. mpv -ao=pulse:vaporsound-nebenraum ...
  • über Shairport (todo)

Pulseaudio

Um Vaporsound über Pulseaudio zu bespielen sind folgende Dinge möglich:

  • Pulseaudio-Sink systemweit auswählen:

z.B. bei GNOME: in paprefs "Make discoverable PulseAudio network sound device available locally" anhaken¹ (einmalig), dann unter Settings -> Sound (bzw. gnome-control-center sound) die entsprechende Sink auswählen. (¹ Wenn ausgegraut, das Paket pulseaudio-zeroconf instalieren)

  • Zeroconf:

Benötigt wird Paket: pulseaudio-zeroconf, libpulse und paprefs. Bei paprefs im ersten Reiter das erste auswählen, anschließend den Service avahi-daemon.service enabeln und load-module module-zeroconf-discover nach /etc/pulse/default.pa schreiben. Kurz den Service neustarten und pavucontrol sollte nun die Droehnung erkennen. Die Audioquelle muss dann nur noch händisch in pavucontrol unter den Ausgabegeräten ausgewählt werden. (Siehe: Arch-Wiki)

Für Ubuntu (getestet mit 22.04):

apt-get install pulseaudio-module-zeroconf
# braucht root (/etc)
echo "load-module module-zeroconf-discover" >> /etc/pulse/default.pa
systemctl --user restart pulseaudio || pkill pulseaudio

Pipewire Zeroconf

In ~/.config/pipewire/pipewire.conf.d/zero.conf folgenden Inhalt einfügen

context.modules = [
{   name = libpipewire-module-zeroconf-discover
    args = { }
}
]

Dann pipewire neu starten mit systemctl --user restart pipewire

Siehe auch Pipewire im ArchWiki und offizielle Dokumentation.

Bugs in rev0.1

Das Ende von R11, was an SDA hängen sollte, ist nicht an SDA angeschlossen, obwohl das entsprechende Via schon direkt neben dem Pad liegt. Lässt sich aber mit einem dünnen Stück Draht reparieren.

Konfiguration

Um Domain, Hostname oder IP-Adressen dauerhaft zu ändern, müssen die Dateien in /boot/config angepasst werden