> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AudioStateMonitor

> AudioStateMonitor

# AudioStateMonitor

Reference material for AudioStateMonitor APIs.

## Functions

| Function                                                                                                                                                      | Description                                                                                                                                                                                                        |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [AudioStateMonitorCallback](/reference/audio/audiostatemonitor/types/audiostatemonitorcallback)                                                               | The callback function, registered by calling IAudioStateMonitor RegisterCallback, which is called by the system when there is a change in the sound level of the audio streams associated with IAudioStateMonitor. |
| [CreateCaptureAudioStateMonitor](/reference/audio/audiostatemonitor/functions/createcaptureaudiostatemonitor)                                                 | Creates a new instance of IAudioStateMonitor that monitors the audio level of all audio capture streams.                                                                                                           |
| [CreateCaptureAudioStateMonitorForCategory](/reference/audio/audiostatemonitor/functions/createcaptureaudiostatemonitorforcategory)                           | Creates a new instance of IAudioStateMonitor that monitors the audio level of all audio capture streams in the specified category.                                                                                 |
| [CreateCaptureAudioStateMonitorForCategoryAndDeviceId](/reference/audio/audiostatemonitor/functions/createcaptureaudiostatemonitorforcategoryanddeviceid)     | Creates a new instance of IAudioStateMonitor that monitors the audio level of all audio capture streams in the specified category for the audio endpoint with the specified device ID.                             |
| [CreateCaptureAudioStateMonitorForCategoryAndDeviceRole](/reference/audio/audiostatemonitor/functions/createcaptureaudiostatemonitorforcategoryanddevicerole) | Creates a new instance of IAudioStateMonitor that monitors the audio level of all audio capture streams in the specified category and with the specified role.                                                     |
| [CreateRenderAudioStateMonitor](/reference/audio/audiostatemonitor/functions/createrenderaudiostatemonitor)                                                   | Creates a new instance of IAudioStateMonitor that monitors the audio level of all audio-rendering streams.                                                                                                         |
| [CreateRenderAudioStateMonitorForCategory](/reference/audio/audiostatemonitor/functions/createrenderaudiostatemonitorforcategory)                             | Creates a new instance of IAudioStateMonitor that monitors the audio level of all audio-rendering streams in the specified category.                                                                               |
| [CreateRenderAudioStateMonitorForCategoryAndDeviceId](/reference/audio/audiostatemonitor/functions/createrenderaudiostatemonitorforcategoryanddeviceid)       | Creates a new instance of IAudioStateMonitor that monitors the audio level of all audio-rendering streams in the specified category for the audio endpoint with the specified device ID.                           |
| [CreateRenderAudioStateMonitorForCategoryAndDeviceRole](/reference/audio/audiostatemonitor/functions/createrenderaudiostatemonitorforcategoryanddevicerole)   | Creates a new instance of IAudioStateMonitor that monitors the audio level of all audio-rendering streams in the specified category and with the specified role.                                                   |

## Enumerations

| Enumeration                                                                                         | Description                                                |
| --------------------------------------------------------------------------------------------------- | ---------------------------------------------------------- |
| [AudioStateMonitorSoundLevel](/reference/audio/audiostatemonitor/enums/audiostatemonitorsoundlevel) | Specifies the sound level of the capture or render stream. |

## Interfaces

| Interface                                                                              | Description                                                                                                                            |
| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| [IAudioStateMonitor](/reference/audio/audiostatemonitor/interfaces/iaudiostatemonitor) | Provides methods that allow desktop apps and games to determine the time their audio streams' sound levels are modified by the system. |

## Conceptual documentation

* [Audio overview](/build/console-features/audio/overviews/audio)
* [Comparison of XDK and GDK audio API](/build/console-features/audio/overviews/comparison-of-xdk-and-gdk-audio-api)

## See also

[Audio API reference](/reference/audio/gc-reference-audio-toc)


## Related topics

- [CreateCaptureAudioStateMonitor](/reference/audio/audiostatemonitor/functions/createcaptureaudiostatemonitor.md)
- [CreateRenderAudioStateMonitor](/reference/audio/audiostatemonitor/functions/createrenderaudiostatemonitor.md)
- [CreateCaptureAudioStateMonitorForCategory](/reference/audio/audiostatemonitor/functions/createcaptureaudiostatemonitorforcategory.md)
- [CreateRenderAudioStateMonitorForCategory](/reference/audio/audiostatemonitor/functions/createrenderaudiostatemonitorforcategory.md)
- [CreateCaptureAudioStateMonitorForCategoryAndDeviceId](/reference/audio/audiostatemonitor/functions/createcaptureaudiostatemonitorforcategoryanddeviceid.md)
