Add --music-output-device to route music separately from voice (#350)

* Add --music-output-device to route music separately from voice

Music/media and TTS both play through --audio-output-device today, with no
way to send them to different sinks. Add an optional --music-output-device
(env MUSIC_OUTPUT_DEVICE) that the music player uses instead, defaulting to
--audio-output-device so existing setups are unchanged. Wired through
docker-entrypoint.sh and documented in the README and install docs.

* docs: fix swapped Default/Description columns in env var table

The MIC_VOLUME, MIC_AUTO_GAIN, MIC_NOISE_SUPPRESSION and
AUDIO_INPUT_CHANNELS rows had their Default and Description columns
swapped relative to the table header; fix the ordering and the
'Suppresion' misspelling. Also repair the UNMUTE_SOUND row, whose
description was garbled and which was missing its closing table pipe.

---------

Co-authored-by: Matthew Davis <fedoraproject@virtual.drop.net>
Co-authored-by: Florian Asche <github@florian-asche.de>
Co-authored-by: Omar Amin <65174210+omaramin-2000@users.noreply.github.com>
This commit is contained in:
authored and GitHub committed 2026-08-02 23:49:51 +02:00
1 parent a2d0a4e68e
commit 43a183a232
4 files changed
+18 -7

No files matched your search

+2 -1
View File
@@ -74,7 +74,7 @@ For all other users, we have different installation methods available (Docker, s
💡 **Note:** There is an [environment variable](docs/install_application.md#environment-variables-reference) for each parameter if you use docker or systemd based setup.
```sh
usage: __main__.py [-h] [--name NAME] [--audio-input-device AUDIO_INPUT_DEVICE] [--list-input-devices] [--audio-input-block-size AUDIO_INPUT_BLOCK_SIZE] [--audio-output-device AUDIO_OUTPUT_DEVICE] [--list-output-devices] [--wake-word-dir WAKE_WORD_DIR] [--mic-auto-gain] [--mic-noise-suppression]
usage: __main__.py [-h] [--name NAME] [--audio-input-device AUDIO_INPUT_DEVICE] [--list-input-devices] [--audio-input-block-size AUDIO_INPUT_BLOCK_SIZE] [--audio-output-device AUDIO_OUTPUT_DEVICE] [--music-output-device MUSIC_OUTPUT_DEVICE] [--list-output-devices] [--wake-word-dir WAKE_WORD_DIR] [--mic-auto-gain] [--mic-noise-suppression]
[--wake-model WAKE_MODEL] [--stop-model STOP_MODEL] [--download-dir DOWNLOAD_DIR] [--refractory-seconds REFRACTORY_SECONDS] [--wakeup-sound WAKEUP_SOUND] [--timer-finished-sound TIMER_FINISHED_SOUND] [--processing-sound PROCESSING_SOUND]
[--mute-sound MUTE_SOUND] [--unmute-sound UNMUTE_SOUND] [--preferences-file PREFERENCES_FILE] [--host HOST] [--network-interface NETWORK_INTERFACE] [--port PORT] [--enable-thinking-sound] [--listen-during-wake-sound] [--debug]
```
@@ -85,6 +85,7 @@ usage: __main__.py [-h] [--name NAME] [--audio-input-device AUDIO_INPUT_DEVICE]
| `--audio-input-device` | Soundcard name for input device | Autodetected |
| `--audio-input-block-size` | Audio input block size in samples | 1024 |
| `--audio-output-device` | mpv name for output device | Autodetected |
| `--music-output-device` | mpv name for the music/media output device | `--audio-output-device` |
| `--mic-volume` | Control microphone volume | 100 |
| `--mic-auto-gain` | Add WebRTC Gain to Mic | 0 |
| `--mic-noise-suppression` | Add WebRTC Noise Suppression to Mic | 0 |