zu 2. und 8. ("type softvol" bzw. "type bluealsa")
Dass es sich dabei um die Instanz eines Plugins handelt ist eigentlich schon nach dem "pcm.GO2_SOFTVOL {" bzw. "pcm.GO2 {" klar. Eine andere Möglichkeit gibt es nämlich nicht. Es geht bei "type X" nur mehr darum festzulegen um welches Plugin es sich dreht.
zu 3. (slave.pcm "GO2")
Die meisten der Plugins geben die Audiodaten nach der Verarbeitung, in dem Fall also nach dem Ändern der Lautstärke, an ein weiteres pcm.X also eine weitere Instanz irgendeines Plugins weiter. "slave.pcm" sagt an wohin die Audiodaten weitergereicht werden sollen.
zu 8. ("type bluealsa")
bluealsa gehört offensichtlich zu den Ausnahmen der eben aufgestellten Behauptung: Es leitet die Audiodaten nicht an ein weiteres pcm.X weiter sondern liefert sie beim beim Bluetoothtreiber ab.
zu 10. ("device "30:C0:1B:72:63:8E"")
Nicht wegen der Authorisierung sondern viel mehr um festzulegen an welches Bluetoothgerät die Audiodaten geleitet werden sollen.
zu 11. ("profile "a2dp"")
Das ist nur das Protokoll mit dem der Bluetooth-Controller die Audiodaten an den Lautsprecher sendet. Was zwischen Anwendung, Ding1 und Ding2 abläuft wird dadurch nicht beeinflusst.
Die geschwungenen Klammern sind nebenbei bemerkt nur eine mögliche Schreibweise. Ich bin mir bei der Syntax nicht ganz sicher und kann nicht ausprobieren ob ich es fehlerfrei hinbekommen habe, aber dasselbe lässt sich glaube ich grunsätzlich auch komplett ohne Klammern schreiben:
Code: Alles auswählen
pcm.GO2_SOFTVOL.type softvol
pcm.GO2_SOFTVOL.slave.pcm "GO2"
pcm.GO2_SOFTVOL.control.name "Bluetooth"
pcm.GO2_SOFTVOL.control.card "Intel"
pcm.GO2.type bluealsa # für Bluetooth zuständiges Alsa-Plugin
pcm.GO2.type.interface "hci0" # Name des Bluetooth-Adapters
pcm.GO2.type.device "30:C0:1B:72:63:8E" # MAC-Adresse des Bluetoothgeräts (via bluetoothctl)
pcm.GO2.type.profile "a2dp" # Bluetooth-Profil