harmony 鸿蒙native_audio_session_manager.h
native_audio_session_manager.h
概述
声明音频会话管理相关的接口。
包含创建音频会话管理器、激活/停用音频会话、检查音频会话是否已激活,以及监听音频会话停用事件。
库: libohaudio.so
引用文件:
系统能力: SystemCapability.Multimedia.Audio.Core
起始版本: 12
相关模块: OHAudio
汇总
结构体
|名称|typedef关键字|描述|
|–|–|–|
|OH_AudioSession_Strategy|OH_AudioSession_Strategy|音频会话策略。|
|OH_AudioSession_DeactivatedEvent|OH_AudioSession_DeactivatedEvent|音频会话已停用事件。|
|OH_AudioSessionManager|OH_AudioSessionManager|声明音频会话管理器。
用于管理音频会话相关功能。|
枚举
|名称|typedef关键字|描述| |–|–|–| |OH_AudioSession_ConcurrencyMode|OH_AudioSession_ConcurrencyMode|音频并发模式。| |OH_AudioSession_DeactivatedReason|OH_AudioSession_DeactivatedReason|音频会话停用原因。|
函数
|名称|typedef关键字|描述| |–|–|–| |typedef int32_t (*OH_AudioSession_DeactivatedCallback)(OH_AudioSession_DeactivatedEvent event)|OH_AudioSession_DeactivatedCallback|这个函数指针将指向用于监听音频会话停用事件的回调函数。| |OH_AudioCommon_Result OH_AudioManager_GetAudioSessionManager(OH_AudioSessionManager **audioSessionManager)|-|获取音频会话管理器。使用音频会话管理器相关功能,首先需要获取音频会话管理器实例。| |OH_AudioCommon_Result OH_AudioSessionManager_ActivateAudioSession(OH_AudioSessionManager *audioSessionManager, const OH_AudioSession_Strategy *strategy)|-|激活音频会话。| |OH_AudioCommon_Result OH_AudioSessionManager_DeactivateAudioSession(OH_AudioSessionManager *audioSessionManager)|-|停用音频会话。| |bool OH_AudioSessionManager_IsAudioSessionActivated(OH_AudioSessionManager *audioSessionManager)|-|检查音频会话是否已激活。| |OH_AudioCommon_Result OH_AudioSessionManager_RegisterSessionDeactivatedCallback(OH_AudioSessionManager *audioSessionManager, OH_AudioSession_DeactivatedCallback callback)|-|注册音频会话停用事件回调。| |OH_AudioCommon_Result OH_AudioSessionManager_UnregisterSessionDeactivatedCallback(OH_AudioSessionManager *audioSessionManager, OH_AudioSession_DeactivatedCallback callback)|-|取消注册音频会话停用事件回调。|
枚举类型说明
OH_AudioSession_ConcurrencyMode
enum OH_AudioSession_ConcurrencyMode
描述
音频并发模式。
起始版本: 12
|枚举项|描述| |–|–| |CONCURRENCY_DEFAULT = 0|默认使用系统策略。| |CONCURRENCY_MIX_WITH_OTHERS = 1|和其它正在播放应用进行混音。| |CONCURRENCY_DUCK_OTHERS = 2|后来播放应用压低正在播放应用的音量。| |CONCURRENCY_PAUSE_OTHERS = 3|后来播放应用暂停正在播放应用。|
OH_AudioSession_DeactivatedReason
enum OH_AudioSession_DeactivatedReason
描述
音频会话停用原因。
起始版本: 12
|枚举项|描述| |–|–| |DEACTIVATED_LOWER_PRIORITY = 0|应用焦点被抢占。| |DEACTIVATED_TIMEOUT = 1|应用停流后超时。|
函数说明
OH_AudioSession_DeactivatedCallback()
typedef int32_t (*OH_AudioSession_DeactivatedCallback)(OH_AudioSession_DeactivatedEvent event)
描述
这个函数指针将指向用于监听音频会话停用事件的回调函数。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_AudioSession_DeactivatedEvent event|指向OH_AudioSession_Deactivated_Event音频会话已停用事件。|
OH_AudioManager_GetAudioSessionManager()
OH_AudioCommon_Result OH_AudioManager_GetAudioSessionManager(OH_AudioSessionManager **audioSessionManager)
描述
获取音频会话管理器。
使用音频会话管理器相关功能,首先需要获取音频会话管理器实例。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_AudioSessionManager **audioSessionManager|指向OH_AudioSessionManager音频会话管理器实例。|
返回:
|类型|说明|
|–|–|
|OH_AudioCommon_Result|AUDIOCOMMON_RESULT_SUCCESS: 函数执行成功。
AUDIOCOMMON_RESULT_ERROR_SYSTEM:系统错误。|
OH_AudioSessionManager_ActivateAudioSession()
OH_AudioCommon_Result OH_AudioSessionManager_ActivateAudioSession(OH_AudioSessionManager *audioSessionManager, const OH_AudioSession_Strategy *strategy)
描述
激活音频会话。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_AudioSessionManager *audioSessionManager|指向OH_AudioManager_GetAudioSessionManager创建的音频会话管理实例。| |const OH_AudioSession_Strategy *strategy|指向OH_AudioSession_Strategy,用于设置音频会话策略。 |
返回:
|类型|说明|
|–|–|
|OH_AudioCommon_Result| AUDIOCOMMON_RESULT_SUCCESS:函数执行成功。
AUDIOCOMMON_RESULT_ERROR_INVALID_PARAM:
1. 参数audioSessionManager为nullptr;
2. 参数strategy无效。
AUDIOCOMMON_RESULT_ERROR_ILLEGAL_STATE:非法状态。|
OH_AudioSessionManager_DeactivateAudioSession()
OH_AudioCommon_Result OH_AudioSessionManager_DeactivateAudioSession(OH_AudioSessionManager *audioSessionManager)
描述
停用音频会话。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_AudioSessionManager *audioSessionManager|指向OH_AudioManager_GetAudioSessionManager创建的音频会话管理实例。|
返回:
|类型|说明|
|–|–|
|OH_AudioCommon_Result| AUDIOCOMMON_RESULT_SUCCESS:函数执行成功。
AUDIOCOMMON_RESULT_ERROR_INVALID_PARAM:参数audioSessionManager为nullptr。
AUDIOCOMMON_RESULT_ERROR_ILLEGAL_STATE:非法状态。|
OH_AudioSessionManager_IsAudioSessionActivated()
bool OH_AudioSessionManager_IsAudioSessionActivated(OH_AudioSessionManager *audioSessionManager)
描述
检查音频会话是否已激活。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_AudioSessionManager *audioSessionManager|指向OH_AudioManager_GetAudioSessionManager创建的音频会话管理实例。|
返回:
|类型|说明| |–|–| |bool|用于返回当前应用的音频会话是否已激活,true表示已激活,false表示已停用。|
OH_AudioSessionManager_RegisterSessionDeactivatedCallback()
OH_AudioCommon_Result OH_AudioSessionManager_RegisterSessionDeactivatedCallback(OH_AudioSessionManager *audioSessionManager, OH_AudioSession_DeactivatedCallback callback)
描述
注册音频会话停用事件回调。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_AudioSessionManager *audioSessionManager|指向OH_AudioManager_GetAudioSessionManager创建的音频会话管理实例。| |OH_AudioSession_DeactivatedCallback callback|指向OH_AudioSessionDeactivatedCallback,用于接收音频会话已停用事件。|
返回:
|类型|说明|
|–|–|
|OH_AudioCommon_Result| AUDIOCOMMON_RESULT_SUCCESS:函数执行成功。
AUDIOCOMMON_RESULT_ERROR_INVALID_PARAM:
1. 参数audioSessionManager为nullptr;
2. 参数callback为nullptr。|
OH_AudioSessionManager_UnregisterSessionDeactivatedCallback()
OH_AudioCommon_Result OH_AudioSessionManager_UnregisterSessionDeactivatedCallback(OH_AudioSessionManager *audioSessionManager, OH_AudioSession_DeactivatedCallback callback)
描述
取消注册音频会话停用事件回调。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_AudioSessionManager *audioSessionManager|指向OH_AudioManager_GetAudioSessionManager创建的音频会话管理实例。| |OH_AudioSession_DeactivatedCallback callback|指向OH_AudioSessionDeactivatedCallback,用于接收音频会话已停用事件。|
返回:
|类型|说明|
|–|–|
|OH_AudioCommon_Result| AUDIOCOMMON_RESULT_SUCCESS:函数执行成功。
AUDIOCOMMON_RESULT_ERROR_INVALID_PARAM:
1. 参数audioSessionManager为nullptr;
2. 参数callback为nullptr。|
你可能感兴趣的鸿蒙文章
harmony 鸿蒙Interface (AudioCapturer)
harmony 鸿蒙Interface (AudioManager)
harmony 鸿蒙Interface (AudioRenderer)
harmony 鸿蒙Interface (AudioRoutingManager)
harmony 鸿蒙Interface (AudioSessionManager)
harmony 鸿蒙Interface (AudioSpatializationManager)
harmony 鸿蒙Interface (AudioStreamManager)
- 所属分类: 后端技术
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦