Audio¶
The device has one audio output in the current release: HDMI, driven through ALSA. This page covers reading and changing volume/mute.
Check current audio state¶
Web UI: Audio page.
Change volume or mute¶
curl -X POST http://10.99.0.1/api/v1/audio \
-H 'Content-Type: application/json' \
-d '{"volume": 60, "mute": false}'
volume is 0–100, mapped internally to the HDMI output's dB range. Both fields apply
immediately (pushed to ALSA live) and are persisted, so they survive a reboot. You can omit
either field to leave it unchanged.
You can also change volume through the general configuration API
(PATCH /config {"audio": {"volume": 60, "mute": false}}) — both routes end up at the same
place; POST /audio is the more convenient shortcut for this specific, frequently-changed pair
of fields.
Web UI: Audio page → volume slider / mute toggle — changes apply as you move the slider.
Audio output¶
audio.output (currently only "hdmi" is a valid value) is set through
configuration and is reboot_required — it exists as a forward-looking
field for boards/configurations with more than one possible output (e.g. a future 3.5 mm jack or
USB audio); there is nothing to switch to in the current release.
Where sound comes from¶
Audio follows whatever the displayed page plays (e.g. a <video> or <audio> element, or the
Web Audio API) through the browser's normal HDMI audio path — there's no separate "device audio"
concept beyond the volume/mute controls above. If a bundle or remote page is silent, check that
its own media isn't muted or blocked by autoplay policy before assuming a device-level problem.
See also¶
- Configuration — the full config document, including
audio.*. - Displaying content — showing the content whose audio you're controlling.