Поделиться через


AudioStateMonitor Класс

Определение

Позволяет приложению UWP определить, отключена ли в данный момент звук любого из аудиопотоков приложения или уменьшается ли их громкость системой.

public ref class AudioStateMonitor sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 393216)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class AudioStateMonitor final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 393216)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class AudioStateMonitor
Public NotInheritable Class AudioStateMonitor
Наследование
Object Platform::Object IInspectable AudioStateMonitor
Атрибуты

Требования к Windows

Семейство устройств
Windows 10, version 1803 (появилось в 10.0.17134.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v6.0)

Комментарии

Windows динамически отключает или снижает уровень звуковых потоков в ответ на системные события. Например, громкость аудиопотока отрисовки приложения подкастов может быть снижена при звоне будильника. Кроме того, при перемещении приложения в фоновый режим в приложении для записи звука может отключиться поток захвата. Этот класс позволяет приложениям реагировать на изменения уровня аудиопотоков. Например, приложение подкастов может приостановить воспроизведение, когда уровень звука снижается системой, а затем возобновить воспроизведение, когда уровень громкости вернется в нормальное состояние. Или приложение для записи звука может остановить запись, пока его поток захвата отключен.

Создайте AudioStateMonitor , вызвав один из его фабричного метода, который определяет, какие потоки отслеживаются на основе их MediaCategory, AudioDeviceRole, идентификатора связанного звукового устройства, а также отрисовки или записи аудиопотока.

Используйте свойство SoundLevel , чтобы определить текущий уровень звука отслеживаемых потоков. Вы можете проверка значение этого свойства, чтобы определить, будет ли категория аудиопотоков отключена или ее громкость снижена, прежде чем инициировать запись или воспроизведение звука. Вы можете зарегистрировать обработчик для события SoundLevelChanged, чтобы получать уведомления при изменении уровня звука для категории аудиопотоков, а затем проверка свойство SoundLevel, чтобы определить новый текущий уровень звука.

Дополнительные сведения об использовании AudioStateMonitor в приложении UWP см. в статье Обнаружение и реагирование на изменения состояния звука.

Свойства

SoundLevel

Возвращает значение, указывающее текущий уровень звука аудиопотоков, отслеживаемых AudioStateMonitor.

Методы

CreateForCaptureMonitoring()

Инициализирует новый экземпляр класса AudioStateMonitor , который отслеживает уровень звука для всех потоков захвата звука.

CreateForCaptureMonitoring(MediaCategory)

Инициализирует новый экземпляр класса AudioStateMonitor , который отслеживает уровень звука для потоков захвата звука с помощью указанной категории MediaCategory.

CreateForCaptureMonitoring(MediaCategory, AudioDeviceRole)

Инициализирует новый экземпляр класса AudioStateMonitor , который отслеживает уровень звука для потоков захвата звука с помощью указанных MediaCategory и AudioDeviceRole.

CreateForCaptureMonitoringWithCategoryAndDeviceId(MediaCategory, String)

Инициализирует новый экземпляр класса AudioStateMonitor , который отслеживает уровень звука для потоков аудиозахвата с указанной категорией MediaCategory , использующим указанное звуковое устройство.

CreateForRenderMonitoring()

Инициализирует новый экземпляр класса AudioStateMonitor , который отслеживает уровень звука для всех потоков отрисовки звука.

CreateForRenderMonitoring(AudioRenderCategory)

Инициализирует новый экземпляр класса AudioStateMonitor , который отслеживает уровень звука для потоков отрисовки звука с помощью указанной категории MediaCategory.

CreateForRenderMonitoring(AudioRenderCategory, AudioDeviceRole)

Инициализирует новый экземпляр класса AudioStateMonitor , который отслеживает уровень звука для потоков отрисовки с указанными MediaCategory и AudioDeviceRole.

CreateForRenderMonitoringWithCategoryAndDeviceId(AudioRenderCategory, String)

Инициализирует новый экземпляр класса AudioStateMonitor , который отслеживает уровень звука для потоков отрисовки звука с указанной категорией MediaCategory, использующим указанное звуковое устройство.

События

SoundLevelChanged

Происходит, когда система изменяет уровень звука аудиопотоков, отслеживаемых AudioStateMonitor.

Применяется к