EqualizerController 1.0
This interface allows a product to adjust equalizer settings using Alexa, such as decibel (dB) levels and modes.
Capability assertion
EqualizerController 1.0 may be implemented by the device on its own behalf, but not on behalf of any connected endpoints.
New AVS integrations must assert support through Alexa.Discovery, but Alexa will continue to support existing integrations using the Capabilities API.
{ "type": "AlexaInterface", "interface": "EqualizerController", "version": "1.0", "configurations": { "bands": { "supported": [ { "name": "{{STRING}}" }, // This array should contain an object for // each supported band. ], "range": { "minimum": {{INTEGER}}, "maximum": {{INTEGER}} } }, "modes": { "supported": [ { "name": "{{STRING}}" }, // This array should contain an object for // each supported mode. ] } } }
Configuration Parameters
Parameter | Description | Type |
---|---|---|
bands | Contains a list of supported equalizer bands. | object |
bands.supported | List of objects. Includes all supported equalizer bands. | list |
bands.supported.name[i] | Specifies a supported equalizer band. Accepted values: "BASS", "MIDRANGE", "TREBLE". |
string |
bands.range | An object that contains minimum and maximum decibel levels for each supported equalizer band. | list |
bands.range.minimum | Minimum supported decibel level. | integer |
bands.range.maximum | Maximum supported decibel level. | integer |
modes | Contains a list of supported modes. | object |
modes.supported | List of objects. Includes all supported modes. | list |
modes.supported.name[i] | Specifies a supported mode. Accepted values: "MOVIE", "MUSIC", "NIGHT", "SPORT", "TV". |
string |
Context
Alexa expects a client to report EqualizerController state with each event that requires context. To learn more about reporting context, see Context Overview.
Sample Message
{ "header": { "namespace": "EqualizerController", "name": "EqualizerState" }, "payload": { "bands": [ { "name": "{{STRING}}", "level": {{INTEGER}} }, // This list should contain each supported band // and its current level. ], "mode": "{{STRING}}" } }
Payload Parameters
Parameter | Description | Type |
---|---|---|
bands | A list of bands that the product supports. | list |
bands.name[i] | Identifies a supported band. Accepted values: "BASS", "MIDRANGE", "TREBLE". |
string |
bands.level[i] | The level for the specified band. | integer |
mode | Specifies a supported mode. Accepted values: "MOVIE", "MUSIC", "NIGHT", "SPORT", "TV". |
string |
Directives
SetBands
Instructs a client to make an absolute adjustment to an equalizer band or bands. Each object within bands
contains the name
of a band and the absolute equalizer level
.
Sample Message
{ "directive": { "header": { "namespace": "EqualizerController", "name": "SetBands", "messageId": "{{STRING}}", "dialogRequestId": "{{STRING}}" }, "payload": { "bands": [ { "name": "{{STRING}}", "level": {{INTEGER}} } ] } } }
Payload Parameters
Parameter | Description | Type |
---|---|---|
bands | A list of equalizer bands that require an absolute adjustment to decibel levels. | list |
bands.name[i] | Identifies an equalizer band that requires an absolute adjustment to its decibel level. Accepted values: "BASS", "MIDRANGE", "TREBLE". |
string |
bands.level[i] | Specifies the decibel level for an equalizer band. | integer |
AdjustBands
Instructs a client to make a relative adjustment to an equalizer band or bands. Each object within bands
contains the name
of a band, the levelDelta
, and the levelDirection
.
Sample Message
{ "directive": { "header": { "namespace": "EqualizerController", "name": "AdjustBands", "messageId": "{{STRING}}", "dialogRequestId": "{{STRING}}" }, "payload": { "bands": [ { "name": "{{STRING}}", "levelDelta": {{INTEGER}}, "levelDirection": "{{STRING}}" } ] } } }
Payload Parameters
Parameter | Description | Type |
---|---|---|
bands | A list of equalizer bands that require a relative adjustment to decibel levels. | list |
bands.name[i] | Identifies an equalizer band that requires a relative adjustment to its decibel level. Accepted values: "BASS", "MIDRANGE", "TREBLE". |
string |
bands.levelDelta[i] | Specifies the decibel level for an equalizer band. Accepted values: A positive integer. |
integer |
bands.levelDirection[i] | Specifies the decibel level for an equalizer band. Accepted values: "UP", "DOWN". |
string |
ResetBands
Instructs a client to reset an equalizer band or bands. Default levels for each band are product-specific and are set by the client, not by Alexa.
Sample Message
{ "directive": { "header": { "namespace": "EqualizerController", "name": "ResetBands", "messageId": "{{STRING}}", "dialogRequestId": "{{STRING}}" }, "payload": { "bands": [ { "name": "{{STRING}}" } ] } } }
Payload Parameters
Parameter | Description | Type |
---|---|---|
bands | A list of equalizer bands that need to be reset. | list |
bands.name[i] | Identifies an equalizer band. If present, the level for that equalizer band must be reset to the default value for that product. Accepted values: "BASS", "MIDRANGE", "TREBLE". |
string |
SetMode
Instructs a client to enter a specific equalizer mode.
Sample Message
{ "directive": { "header": { "namespace": "EqualizerController", "name": "SetMode", "messageId": "{{STRING}}", "dialogRequestId": "{{STRING}}" }, "payload": { "mode": "{{STRING}}" } } }
Payload Parameters
Parameter | Description | Type |
---|---|---|
mode | Specifies a supported mode. Accepted values: "MOVIE", "MUSIC", "NIGHT", "SPORT", "TV". |
string |
Events
EqualizerChanged
This event provides Alexa with the current decibel levels for supported equalizer bands. It is sent:
- When the client adjusts decibel levels after receiving any of these directives:
- When equalizer bands are adjusted locally (button press or GUI affordance) or via a mobile app
Sample Message
{ "event": { "header": { "namespace": "EqualizerController", "name": "EqualizerChanged", "messageId": "{{STRING}}" }, "payload": { "bands": [ { "name": "{{STRING}}", "level": {{INTEGER}} }, // This should be a complete list of // supported equalizer bands. ], "mode": "{{STRING}}" } } }
Payload Parameters
Parameter | Description | Type |
---|---|---|
bands | A list of supported equalizer bands. | list |
bands.name[i] | Specifies a supported equalizer band. Accepted values: "BASS", "MIDRANGE", "TREBLE". |
string |
bands.level[i] | Specifies the decibel level for an equalizer band. | integer |
mode | Specifies a supported mode. Accepted values: "MOVIE", "MUSIC", "NIGHT", "SPORT", "TV". |
string |