Developer:Davaar:VolumeService

From LinnDocs
Revision as of 18:48, 23 November 2010 by Eamonnb (talk | contribs) (Actions)
Jump to: navigation, search

Architecture Overview

The Volume Service provides a means of controlling various settings which affect the product's volume (signal amplitude) measured at the output channels. A product may have one or more output channels. Balance or Fade settings may result in different volumes at each output. In the Mute state, all output channels are reduced to zero volume.

Volume

Volume is an adjustable setting that controls the loudness of the audio at the output channels of the product. Volume can be set to an absolute value or incremented/decremented in single steps. The maximum Volume setting is defined by the current value of VolumeLimit. The minimum Volume setting is zero. If an attempt is made to set the Volume above VolumeLimit, the Volume will be set to the VolumLimit. If an attempt is made to set the Volume above VolumeMax, an error will be reported.

Volume Limit

VolumeLimit specifies the upper limit of the Volume. Any attempt to set Volume above the VolumeLimit will reset Volume to the value of VolumeLimit. If VolumeLimit is changed, Volume is checked and automatically reduced if necessary. The maximum VolumeLimit setting is defined by the VolumeMax Characteristic.

Balance

Balance is an adjustable setting that specifies the bias in volume between the left and right output channels of the product. Balance can be set to an absolute value or incremented/decremented in single steps. The maximum Balance setting is defined by the BalanceMax Characteristic. The minimum Balance setting is defined by (-BalanceMax) .

Fade

Fade is an adjustable setting that specifies the bias in volume between the front and rear output channels of the products. Fade can be set to an absolute value or incremented/decremented in single steps. The maximum Fade setting is defined by the FadeMax Characteristic. The minimum Fade setting is defined by (-FadeMax) .

Mute

Mute is an adjustable state that determines if the output channels of the product are muted or not. When muted, all output channels of the product are silent.


Characterstics

Each product has six read only values that define its volume Characteristics.

VolumeMax

VolumeMax defines the absolute maximum Volume setting.

VolumeUnity

VolumeUnity defines the value of Volume that will result in unity system gain (ie output amplitude = input amplitude).

VolumeSteps

VolumeSteps defines the number of step increments required to increase the Volume from zero to VolumeMax.

VolumeMilliDbPerStep

VolumeMilliDbPerStep defines the size of each volume step in binary milli decibels (bmdB). [1024bmdB = 1dB]

BalanceMax

BalanceMax defines the maximum Balance setting. The minimum Balance setting is (-BalanceMax)

FadeMax

FadeMax defines the maximum Fade setting. The minimum Fade setting is (-FadeMax)


Action

Volume

The Volume action reports the current Volume setting.

SetVolume

The SetVolume action provides a means of setting the Volume to an absolute value.

Volume Inc

The VolumeInc action provides a means of increasing the Volume by 1.

Volume Dec

The VolumeDec action provides a means of decreasing the Volume by 1.

VolumeLimit

The VolumeLimit action reports the current VolumeLimit setting.

Balance

The Balance action reports the current Balance setting.

SetBalance

The SetBalance action provides a means of setting the Balance to a specific value.

BalanceInc

The BalanceInc action provides a means of increasing the Balance by 1.

BalanceDec

The BalanceDec action provides a means of decreasing the Balance by 1.

Fade

The Fade action reports the current Fade setting of the product.

SetFade

The SetFade action provides a means of setting the Fade to a specific value.

FadeInc

The FadeIncaction provides a means of increasing the Fade by 1.

FadeDec

The FadeDec action provides a means of decreasing the Fade by 1.

Mute

The Mute action reports the current Mute state of the product.

SetMute

The SetMute action provides a means of setting the Mute state.

Characteristics

The Characteristics action returns all six characteristic values of the product.

API Reference

Volume Service Description (XML)

Migration Guide

The Volume service replaces the Preamp service that existed in Cara. All preamp actions relating to configuration have been removed as part of the migration to the Volume service. The exception to this is the VolumeLimit action. This can be used to read the current value of the VolumeLimit.

The domain for the Cara Preamp service was linn.co.uk. The domain for the Volume service is av.openhome.org.


Actions

Volume

The arguments have changed their names as follows:

  • aVolume -> Value

SetVolume

The arguments have changed their names as follows:

  • aVolume -> Value

Balance

The arguments have changed their names as follows:

  • aBalance -> Value

SetBalance

The arguments have changed their names as follows:

  • aBalance -> Value

Mute

The arguments have changed their names as follows:

  • aMute -> Value

SetMute

The arguments have changed their names as follows:

  • aMute -> Value

VolumeLimit

The arguments have changed their names as follows:

  • aVolumeLimit -> Value


Fade

This is a new action.

SetFade

This is a new action.

FadeInc

This is a new action.

FadeDec

This is a new action.

BalanceInc

This is a new action.

BalanceDec

This is a new action.

Characteristics

This is a new action.

Obsolete Preamp Functions

  • SetVolumeLimit
  • SetStartupVolume
  • StartupVolume
  • SetStartupVolumeEnabled
  • StartupVolumeEnabled