The display command controls the display attached to a receiver over HDMI CEC. volume steps the display's own speaker volume; mute toggles its mute.
| |
|---|
| Command Type | DisplayNet |
| Minimum Version | 5.0 |
Usage
display volume <rx> <delta>
display mute <rx>
Subcommands
| Subcommand | Description |
|---|
volume | Steps the display's volume up or down |
mute | Toggles the display's mute |
Arguments
| Argument | Required | Description |
|---|
rx | Yes | Hostname or MAC address of the receiver the display is connected to. |
delta | Yes | volume only. Signed number of volume steps: positive steps up, negative steps down. Magnitudes above 10 are clamped to 10. |
CEC delivery
Each volume step is sent to the display as a CEC keypress out the receiver's HDMI port. mute sends a single keypress that toggles the display's current mute state.
Delivery is one-way. A success reply means the keypresses were transmitted, not that the display acted on them, and the display's current volume and mute state cannot be read back. The display must have CEC enabled; the setting's name varies by vendor.
Examples
Step the volume up three steps
Step the volume down two steps
Return value
The result contains a display_control array with one entry describing the action performed.
display volume RokuTV 1
{
"status": "SUCCESS",
"request_id": null,
"result": {
"display_control": [
{ "device_id": "6cdffb01f5ba", "device_name": "RokuTV", "action": "volume_up", "steps": 1 }
]
},
"error": null
}
When the requested delta exceeds 10, steps reports the clamped count and clamped is present:
display volume RokuTV 99
{
"status": "SUCCESS",
"request_id": null,
"result": {
"display_control": [
{ "device_id": "6cdffb01f5ba", "device_name": "RokuTV", "action": "volume_up", "steps": 10, "clamped": true }
]
},
"error": null
}
| Member | Type | Description |
|---|
display_control | Array of objects | The action performed: the device, the action (volume_up, volume_down, or mute_toggle), and the number of keypresses sent as steps. clamped is true when the requested delta exceeded 10. |
Errors
On failure, status is "ERROR":
display volume RokuTV 0
{
"status": "ERROR",
"request_id": null,
"result": null,
"error": { "message": "Volume delta must be non-zero", "reason": "DISPLAY API ERROR" }
}
| Error | Cause |
|---|
<rx> is not a valid device | rx does not name a known device |
display control targets a receiver — <name> is not an RX | rx names a transmitter |
'<delta>' is not a signed step count (e.g. 3 or -2) | delta is not an integer |
Volume delta must be non-zero | delta is 0 |
REST API
| Subcommand | Operation | Parameters |
|---|
mute | display_mute | rx |
volume | display_volume | rx delta |
See also
send: one-shot CEC, RS-232, and infrared payloads
kvm streamdeck dial: bind a dial's rotation and press to volume and mute