documentation/docs/void-desktop-setup/graphical-session/audio.md

89 lines
2 KiB
Markdown
Raw Normal View History

2023-08-25 17:44:30 +02:00
# Audio
2023-08-16 22:09:10 +02:00
To obtain audio the `pipewire` server will be used with an `alsa-pipewire` plugin in combination with `wireplumber` as session manager.
They may be installed with:
```
# xbps-install -Sy alsa-pipewire pipewire wireplumber
```
Subsequently copy `/usr/share/pipewire/pipewire.conf` to `/etc/pipewire/`.
```
# cp /usr/share/pipewire/pipewire.conf /etc/pipewire/
```
`/etc/pipewire/pipewire.conf` may be configured by inserting:
```
context.exec = [
{ path = "/usr/bin/wireplumber" args = "" }
{ path = "/usr/bin/pipewire" args = "-c pipewire-pulse.conf"}
]
```
Then `/etc/alsa/conf.d` may be created and pipewire configurations may be symlinked:
```
# ln -s /usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/
# ln -s /usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/
```
Pipewire needs to be started by Wayfire.
```
[autostart]
audio = pipewire
```
2023-08-25 17:44:30 +02:00
## Audio control
2023-08-16 22:09:10 +02:00
To obtain some control over the audio `pavucontrol`, `pamixer` and `pa-notify` may be installed.
```
# xbps-install -Sy pavucontrol pamixer pa-notify
```
Volume control bindings may be set with `pamixer` in `.config/wayfire.ini`.
```
[command]
binding_volumeup = KEY_VOLUMEUP
binding_volumedown = KEY_VOLUMEDOWN
binding_mute = KEY_MUTE
command_volumeup = pamixer -i 5 -u
command_volumedown = pamixer -d 5 -u
command_mute = pamixer -t
```
To be notified when changing the volume `pa-notify` may be used. It needs to be started by Wayfire.
```
[autostart]
audio_notify = sleep 1; pa-notify -t 2
```
2023-08-25 17:44:30 +02:00
## Music control
2023-08-16 22:09:10 +02:00
To control music and other media `playerctl` may be used.
```
# xbps-install -Sy playerctl
```
The bindings may be set in `.config/wayfire.ini`.
```
[autostart]
audio_player = playerctld daemon
[command]
binding_playpause = KEY_PLAYPAUSE
binding_next = KEY_NEXTSONG
binding_previous = KEY_PREVIOUSSONG
command_playpause = playerctl play-pause
command_next = playerctl next
command_previous = playerctl previous
2023-08-16 23:26:07 +02:00
```