Nächste: , Vorige: , Nach oben: Dienste   [Inhalt][Index]


12.9.10 Tondienste

Das Modul (gnu services sound) stellt einen Dienst zur Verfügung, um das Advanced-Linux-Sound-Architecture-System (ALSA) zu konfigurieren, so dass PulseAudio als bevorzugter ALSA-Ausgabetreiber benutzt wird.

Scheme-Variable: alsa-service-type

Dies ist der Typ des Dienstes für das als Advanced Linux Sound Architecture (ALSA) bekannte System, das die Konfigurationsdatei /etc/asound.conf erzeugt. Der Wert für diesen Diensttyp ist ein alsa-configuration-Verbundsobjekt wie in diesem Beispiel:

Siehe die folgenden Details zur alsa-configuration.

Datentyp: alsa-configuration

Repräsentiert die Konfiguration für den Dienst alsa-service.

alsa-plugins (Vorgabe: alsa-plugins)

alsa-plugins-Paket, was benutzt werden soll.

pulseaudio? (Vorgabe: #t)

Ob ALSA-Anwendungen transparent den PulseAudio-Audioserver benutzen sollen.

Wenn PulseAudio benutzt wird, können Sie gleichzeitig mehrere Anwendungen mit Tonausgabe ausführen und sie unter anderem mit pavucontrol einzeln einstellen.

extra-options (Vorgabe: "")

Die Zeichenkette, die an die Datei /etc/asound.conf angehängt werden soll.

Wenn einzelne Benutzer von ALSAs Systemkonfiguration abweichende Einstellungen vornehmen möchten, können Sie das mit der Konfigurationsdatei ~/.asoundrc tun:

# In Guix müssen wir den absoluten Pfad von Plugins angeben.
pcm_type.jack {
  lib "/home/alice/.guix-profile/lib/alsa-lib/libasound_module_pcm_jack.so"
}

# ALSA an jack weiterleiten:
# <http://jackaudio.org/faq/routing_alsa.html>.
pcm.rawjack {
  type jack
  playback_ports {
    0 system:playback_1
    1 system:playback_2
  }

  capture_ports {
    0 system:capture_1
    1 system:capture_2
  }
}

pcm.!default {
  type plug
  slave {
    pcm "rawjack"
  }
}

Siehe https://www.alsa-project.org/main/index.php/Asoundrc für die Details.

Scheme-Variable: pulseaudio-service-type

Dies ist der Diensttyp für den PulseAudio-Soundserver. Mit ihm können die Voreinstellungen systemweit abgeändert werden. Dazu benutzen Sie eine pulseaudio-configuration, siehe unten.

Warnung: Durch diesen Dienst werden Einstellungen vorgenommen, die Vorrang vor den Konfigurationsdateien des Benutzers haben. Wenn PulseAudio Konfigurationsdateien in ~/.config/pulse beachten soll, müssen Sie die Umgebungsvariablen PULSE_CONFIG und PULSE_CLIENTCONFIG in Ihrer ~/.bash_profile deaktivieren.

Warnung: Dieser Dienst sorgt alleine noch nicht dafür, dass auf ihrer Maschine das pulseaudio-Paket vorliegt. Er fügt bloß Konfigurationsdateien dafür hinzu, wie im Folgenden beschrieben. Für den (zugegebenermaßen unwahrscheinlichen) Fall, dass Ihnen ein pulseaudio-Paket fehlt, möchten Sie es vielleicht durch den oben genannten alsa-service-type aktivieren.

Datentyp: pulseaudio-configuration

Repräsentiert die Konfiguration für den Dienst pulseaudio-service.

client-conf (Vorgabe: '())

Eine Liste der Einstellungen, die in client.conf vorgenommen werden. Hierfür wird eine Liste von entweder Zeichenketten oder Symbol-Wert-Paaren akzeptiert. Eine Zeichenkette wird so, wie sie ist, eingefügt, mit einem Zeilenumbruch danach. Ein Paar wird als „Schlüssel = Wert“ formatiert, auch hier gefolgt von einem Zeilenumbruch.

daemon-conf (Vorgabe: '((flat-volumes . no)))

Eine Liste der Einstellungen, die in daemon.conf vorgenommen werden, im gleichen Format wie client-conf.

script-file (Vorgabe: (file-append pulseaudio "/etc/pulse/default.pa"))

Eine Datei mit dem als default.pa zu nutzenden Skript. Wenn Sie das Feld extra-script-files von weiter unten benutzen, wird ans Ende des angegebenen Skripts eine .include-Direktive angehängt, die auf /etc/pulse/default.pa.d zeigt.

extra-script-files (Vorgabe: '())

Eine Liste dateiartiger Objekte, die zusätzliche PulseAudio-Skripte definieren, die bei der Initialisierung des pulseaudio-Daemons ausgeführt werden, nachdem das Hauptskript aus script-file durchgelaufen ist. Die Skripte werden im Verzeichnis /etc/pulse/default.pa.d abgelegt und sollten als Dateinamenserweiterung ebenso ‘.pa’ haben. Eine Referenz der verfügbaren Befehle bekommen Sie durch Ausführen von man pulse-cli-syntax.

system-script-file (Vorgabe: (file-append pulseaudio "/etc/pulse/system.pa"))

Welche Skriptdatei als system.pa verwendet werden soll.

Im folgenden Beispiel werden das Standard-PulseAudio-Kartenprofil, das Standard-Ziel und die Standard-Quelle für eine alte SoundBlaster-Audigy-Soundkarte eingerichtet:

(pulseaudio-configuration
 (extra-script-files
  (list (plain-file "audigy.pa"
                    (string-append "\
set-card-profile alsa_card.pci-0000_01_01.0 \
  output:analog-surround-40+input:analog-mono
set-default-source alsa_input.pci-0000_01_01.0.analog-mono
set-default-sink alsa_output.pci-0000_01_01.0.analog-surround-40\n")))))

Wir merken an, dass pulseaudio-service-type zu %desktop-services dazugehört. Wenn Ihre Betriebssystemdeklaration also von einer der „Desktop“-Vorlagen abstammt, dann werden Sie das obige Beispiel anpassen wollen, damit stattdessen der in %desktop-services bestehende pulseaudio-service-type-Dienst modifiziert wird mit modify-services (siehe modify-services) und kein neuer Dienst angelegt wird.

Scheme-Variable: ladspa-service-type

Der Diensttyp für den Dienst, der die LADSPA_PATH-Variable festlegt, damit sie beachtende Programme, z.B. PulseAudio, LADSPA-Plugins laden können.

Das folgende Beispiel wird den Dienst so einrichten, dass Module aus dem swh-plugins-Paket aktiviert werden:

(service ladspa-service-type
         (ladspa-configuration (plugins (list swh-plugins))))

Siehe http://plugin.org.uk/ladspa-swh/docs/ladspa-swh.html für die Details.


Nächste: , Vorige: , Nach oben: Dienste   [Inhalt][Index]