| ARRIS Enterprises, Inc. Confidential Information |
Audio Output ServiceThe Audio Output Service provides functionality to get information about the set-top box hardware audio output devices, to change the audio format mappings and to control the volume. Configuration changes are stored in the STB flash memory. ToiAudioOutputServiceThe ToiAudioOutputService provides a way for applications to know what physical
audio outputs the STB has. It also tells the user what different inputs are
fed to the mixer. The characteristic of each connection is described by
For example, a set-top box could have these inputs and outputs: Inputs
Outputs
The ToiAudioOutputService also provides methods to control volume and mute state for connections that support these options. ToiAudioOutputService Event SubscriptionsEvent subscriptions are used by the applications to receive events when the volume of a connection,
or the mute state of a connection changes.
The events also tell interested applications if the audio
format mapping configuration of the STB has changed.
Event subscriptions are done using the ToiAudioOutputConfigurationA ToiAudioOutputConfiguration provides an interface to get and set the current audio format mappings used by the STB.
The The ToiAudioOutputConfigurationSessionA ToiAudioOutputConfigurationSession inherits all the capabilities ToiAudioOutputConfiguration. It also adds support for setting the STB's audio format mapping. A session is a transaction object. It is possible to do several get/set calls within the transaction, and when ready you must either call
The event The NULL output format explainedThe Also, on some box models, some output format combinations are not valid due to hardware limitations. The NULL format can be used as an intermediate step to break deadlocks/limitations. For example, suppose on one kind of box model, setting the HDMI output mapping as AC3->AC3 and the SPDIF output mapping as AC3->PCM_2CH is not valid combination. Now you have AC3 as an input format and all three outputs set to PCM_2CH (stereo) and want to set AC3 on HDMI and SPDIF (pass through). You should firstly change the SPDIF from AC3->PCM_2CH to AC3->NULL. Then you are able to change HDMI from AC3->PCM to AC3->AC3 and finally you can set SPDIF to AC3->AC3. Note that in this case, the NULL output format should only be used inside a transaction to "unlock" available output formats. If you actively choose output format as NULL and commit the transaction ( See also: |