native_audio_routing_manager.h

概述

声明与音频路由管理器相关的接口。

包含用于创建audioRoutingManager,设备连接状态发生变化时的注册和注销功能,以及存储设备信息的指针数组的释放。

库: libohaudio.so

引用文件:<ohaudio/native_audio_routing_manager.h>

系统能力: SystemCapability.Multimedia.Audio.Core

起始版本: 12

相关模块:OHAudio

汇总

类型定义

名称 描述
typedef struct OH_AudioRoutingManager OH_AudioRoutingManager 声明音频路由管理器,用于路由和设备相关功能的音频路由管理器的句柄。
typedef int32_t (*OH_AudioRoutingManager_OnDeviceChangedCallback)(OH_AudioDevice_ChangeType type, OH_AudioDeviceDescriptorArray *audioDeviceDescriptorArray) 此函数指针将指向用于返回更改的音频设备描述符的回调函数,可能返回多个音频设备描述符。
typedef void (*OH_AudioRoutingManager_OnDeviceBlockStatusCallback)(OH_AudioDeviceDescriptorArray *audioDeviceDescriptorArray, OH_AudioDevice_BlockStatus status, void *userData) 此函数指针将指向用于返回音频设备堵塞状态的回调函数,可能返回多个音频设备描述符。

函数

名称 描述
OH_AudioCommon_Result OH_AudioManager_GetAudioRoutingManager(OH_AudioRoutingManager **audioRoutingManager) 查询音频路由管理器句柄,该句柄应设置为路由相关函数中的第一个参数。
OH_AudioCommon_Result OH_AudioRoutingManager_GetDevices(OH_AudioRoutingManager *audioRoutingManager, OH_AudioDevice_Flag deviceFlag, OH_AudioDeviceDescriptorArray **audioDeviceDescriptorArray) 根据输入的deviceFlag查询可用的设备。
OH_AudioCommon_Result OH_AudioRoutingManager_GetAvailableDevices(OH_AudioRoutingManager *audioRoutingManager, OH_AudioDevice_Usage deviceUsage, OH_AudioDeviceDescriptorArray **audioDeviceDescriptorArray) 获取音频可选设备列表。
OH_AudioCommon_Result OH_AudioRoutingManager_GetPreferredOutputDevice(OH_AudioRoutingManager *audioRoutingManager, OH_AudioStream_Usage streamUsage, OH_AudioDeviceDescriptorArray **audioDeviceDescriptorArray) 根据音频输出流的使用场景,获取优先级最高的输出设备。
OH_AudioCommon_Result OH_AudioRoutingManager_GetPreferredInputDevice(OH_AudioRoutingManager *audioRoutingManager, OH_AudioStream_SourceType sourceType, OH_AudioDeviceDescriptorArray **audioDeviceDescriptorArray) 根据音频输入流的使用场景,获取优先级最高的输入设备。
OH_AudioCommon_Result OH_AudioRoutingManager_RegisterDeviceChangeCallback(OH_AudioRoutingManager *audioRoutingManager, OH_AudioDevice_Flag deviceFlag, OH_AudioRoutingManager_OnDeviceChangedCallback callback) 注册音频路由管理器的设备更改回调。
OH_AudioCommon_Result OH_AudioRoutingManager_UnregisterDeviceChangeCallback(OH_AudioRoutingManager *audioRoutingManager, OH_AudioRoutingManager_OnDeviceChangedCallback callback) 取消注册音频路由管理器的设备更改回调。
OH_AudioCommon_Result OH_AudioRoutingManager_ReleaseDevices(OH_AudioRoutingManager *audioRoutingManager, OH_AudioDeviceDescriptorArray *audioDeviceDescriptorArray) 释放音频设备描述符数组对象。
OH_AudioCommon_Result OH_AudioRoutingManager_IsMicBlockDetectionSupported(OH_AudioRoutingManager *audioRoutingManager, bool *supported) 查询当前设备是否支持麦克风堵塞状态检测。
OH_AudioCommon_Result OH_AudioRoutingManager_SetMicBlockStatusCallback(OH_AudioRoutingManager *audioRoutingManager, OH_AudioRoutingManager_OnDeviceBlockStatusCallback callback, void *userData) 设置麦克风是否堵塞状态回调。