harmony 鸿蒙native_avsession.h

2025-06-12 浏览 (1)

native_avsession.h

概述

媒体会话定义,可用于设置元数据、播放状态信息等操作。

库: libohavsession.so

引用文件: <multimedia/av_session/native_avsession.h>

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

起始版本: 13

相关模块:OHAVSession

汇总

结构体

名称描述
struct AVSession_PlaybackPosition媒体播放位置的相关属性。

类型定义

名称描述
typedef struct AVSession_PlaybackPosition AVSession_PlaybackPosition媒体播放位置的相关属性。
typedef enum AVSession_ControlCommand AVSession_ControlCommand播控命令。
typedef AVSessionCallback_Result(* OH_AVSessionCallback_OnCommand) (OH_AVSession *session, AVSession_ControlCommand command, void *userData)通用的执行播控命令的回调。
typedef AVSessionCallback_Result(* OH_AVSessionCallback_OnFastForward) (OH_AVSession *session, uint32_t seekTime, void *userData)快进的回调。
typedef AVSessionCallback_Result(* OH_AVSessionCallback_OnRewind) (OH_AVSession *session, uint32_t seekTime, void *userData)快退的回调。
typedef AVSessionCallback_Result(* OH_AVSessionCallback_OnSeek) (OH_AVSession *session, uint64_t seekTime, void *userData)进度调节的回调。
typedef AVSessionCallback_Result(* OH_AVSessionCallback_OnSetLoopMode) (OH_AVSession *session, AVSession_LoopMode curLoopMode, void *userData)设置循环模式的回调。
typedef AVSessionCallback_Result(* OH_AVSessionCallback_OnToggleFavorite) (OH_AVSession *session, const char *assetId, void *userData)收藏的回调。
typedef struct OH_AVSession OH_AVSession播控会话对象定义。

枚举

名称描述
AVSession_Type {
SESSION_TYPE_AUDIO = 0,
SESSION_TYPE_VIDEO = 1,
SESSION_TYPE_VOICE_CALL = 2,
SESSION_TYPE_VIDEO_CALL = 3 }
会话类型。
AVSession_PlaybackState {
PLAYBACK_STATE_INITIAL = 0,
PLAYBACK_STATE_PREPARING = 1,
PLAYBACK_STATE_PLAYING = 2,
PLAYBACK_STATE_PAUSED = 3,
PLAYBACK_STATE_FAST_FORWARDING = 4,
PLAYBACK_STATE_REWINDED = 5,
PLAYBACK_STATE_STOPPED = 6,
PLAYBACK_STATE_COMPLETED = 7,
PLAYBACK_STATE_RELEASED = 8,
PLAYBACK_STATE_ERROR = 9,
PLAYBACK_STATE_IDLE = 10,
PLAYBACK_STATE_BUFFERING = 11,
PLAYBACK_STATE_MAX = 12
}
媒体播放状态的相关属性。
AVSession_LoopMode {
LOOP_MODE_SEQUENCE = 0,
LOOP_MODE_SINGLE = 1,
LOOP_MODE_LIST = 2,
LOOP_MODE_SHUFFLE = 3,
LOOP_MODE_CUSTOM = 4
}
媒体播放循环模式。
AVSession_ControlCommand {
CONTROL_CMD_INVALID = -1,
CONTROL_CMD_PLAY = 0,
CONTROL_CMD_PAUSE = 1,
CONTROL_CMD_STOP = 2,
CONTROL_CMD_PLAY_NEXT = 3,
CONTROL_CMD_PLAY_PREVIOUS = 4
}
播控命令。
AVSessionCallback_Result {
AVSESSION_CALLBACK_RESULT_SUCCESS = 0,
AVSESSION_CALLBACK_RESULT_FAILURE = -1 }
回调执行的结果。

函数

名称描述
AVSession_ErrCode OH_AVSession_Create (AVSession_Type sessionType, const char *sessionTag, const char *bundleName, const char *abilityName, OH_AVSession **avsession)创建会话对象。
AVSession_ErrCode OH_AVSession_Destroy (OH_AVSession *avsession)销毁会话对象。
AVSession_ErrCode OH_AVSession_Activate (OH_AVSession *avsession)激活会话。
AVSession_ErrCode OH_AVSession_Deactivate (OH_AVSession *avsession)取消激活媒体会话。
AVSession_ErrCode OH_AVSession_GetSessionType (OH_AVSession *avsession, AVSession_Type *sessionType)获取会话类型。
AVSession_ErrCode OH_AVSession_GetSessionId (OH_AVSession *avsession, const char **sessionId)获取会话id。
AVSession_ErrCode OH_AVSession_SetAVMetadata (OH_AVSession *avsession, OH_AVMetadata *avmetadata)设置媒体元数据。
AVSession_ErrCode OH_AVSession_SetPlaybackState (OH_AVSession *avsession, AVSession_PlaybackState playbackState)设置播放状态。
AVSession_ErrCode OH_AVSession_SetPlaybackPosition (OH_AVSession *avsession, AVSession_PlaybackPosition *playbackPosition)设置播放位置。
AVSession_ErrCode OH_AVSession_SetFavorite (OH_AVSession *avsession, bool favorite)设置收藏状态。
AVSession_ErrCode OH_AVSession_SetLoopMode (OH_AVSession *avsession, AVSession_LoopMode loopMode)设置循环模式。
AVSession_ErrCode OH_AVSession_RegisterCommandCallback (OH_AVSession *avsession, AVSession_ControlCommand command, OH_AVSessionCallback_OnCommand callback, void *userData)注册通用播控的回调。
AVSession_ErrCode OH_AVSession_UnregisterCommandCallback (OH_AVSession *avsession, AVSession_ControlCommand command, OH_AVSessionCallback_OnCommand callback)取消注册通用播控的回调。
AVSession_ErrCode OH_AVSession_RegisterForwardCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnFastForward callback, void *userData)注册快进的回调。
AVSession_ErrCode OH_AVSession_UnregisterForwardCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnFastForward callback)取消注册快进的回调。
AVSession_ErrCode OH_AVSession_RegisterRewindCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnRewind callback, void *userData)注册快退的回调。
AVSession_ErrCode OH_AVSession_UnregisterRewindCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnRewind callback)取消注册快退的回调。
AVSession_ErrCode OH_AVSession_RegisterSeekCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnSeek callback, void *userData)注册跳转的回调。
AVSession_ErrCode OH_AVSession_UnregisterSeekCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnSeek callback)取消注册跳转的回调。
AVSession_ErrCode OH_AVSession_RegisterSetLoopModeCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnSetLoopMode callback, void *userData)注册设置循环模式的回调。
AVSession_ErrCode OH_AVSession_UnregisterSetLoopModeCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnSetLoopMode callback)取消注册设置循环模式的回调。
AVSession_ErrCode OH_AVSession_RegisterToggleFavoriteCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnToggleFavorite callback, void *userData)设置收藏的回调。
AVSession_ErrCode OH_AVSession_UnregisterToggleFavoriteCallback (OH_AVSession *avsession, OH_AVSessionCallback_OnToggleFavorite callback)取消设置收藏的回调。

你可能感兴趣的鸿蒙文章

harmony 鸿蒙AVSession Kit(音视频播控服务)

harmony 鸿蒙AVSession_PlaybackPosition

harmony 鸿蒙OHAVSession

harmony 鸿蒙媒体会话管理错误码

harmony 鸿蒙@ohos.app.ability.MediaControlExtensionAbility (播控扩展能力)(系统接口)

harmony 鸿蒙@ohos.multimedia.avCastPickerParam (投播组件参数)

harmony 鸿蒙@ohos.multimedia.avsession (媒体会话管理)(系统接口)

harmony 鸿蒙js-apis-avsession

harmony 鸿蒙MediaControlExtensionContext (播控扩展能力上下文)(系统接口)

harmony 鸿蒙native_avmetadata.h

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/buzGsU