harmony(鸿蒙)OHOS::AVSession::AVPlaybackState

2022-12-22 浏览 (778)

OHOS::AVSession::AVPlaybackState

概述

音视频播放状态类,提供获取和设置播放界面的信息。

汇总

结构体

名称描述
Positionstruct
播放位置的相关信息。

Public 类型

名称描述
{
PLAYBACK_STATE_INITIAL = 0, PLAYBACK_STATE_PREPARING = 1, PLAYBACK_STATE_PLAYING = 2, PLAYBACK_STATE_PAUSED = 3, PLAYBACK_STATE_FAST_FORWARD = 4, PLAYBACK_STATE_REWIND = 5, PLAYBACK_STATE_STOP = 6, PLAYBACK_STATE_MAX = 7
}
描述播放状态的枚举。
{
PLAYBACK_KEY_STATE = 0, PLAYBACK_KEY_SPEED = 1, PLAYBACK_KEY_POSITION = 2, PLAYBACK_KEY_BUFFERED_TIME = 3, PLAYBACK_KEY_LOOP_MODE = 4, PLAYBACK_KEY_IS_FAVORITE = 5, PLAYBACK_KEY_MAX = 6
}
播放界面信息的枚举。
{ LOOP_MODE_SEQUENCE = 0, LOOP_MODE_SINGLE = 1, LOOP_MODE_LIST = 2, LOOP_MODE_SHUFFLE = 3 }循环模式的枚举。
PlaybackStateMaskType = std::bitset< PLAYBACK_KEY_MAX >

Public 成员函数

名称描述
Marshalling (Parcel &parcel) const overrideIPC通信数据序列化。
IsValid () const验证当前信息的有效性。
SetState (int32_t state)设置音视频的播放状态。
GetState () const获取当前音视频的播放状态。
SetSpeed (double speed)设置播放倍速。
GetSpeed () const获取当前播放倍速。
SetPosition (const Position &position)设置播放位置,通过更新时间与经过时间来计算,单位ms。
GetPosition () const获取播放位置。
SetBufferedTime (int64_t time)设置缓冲时间,单位为ms。
GetBufferedTime () const获取当前缓冲时间,单位为ms。
SetLoopMode (int32_t mode)设置循环模式。
GetLoopMode () const获取当前循环模式。
SetFavorite (bool isFavorite)设置是否收藏。
GetFavorite () const获取是否收藏。
GetMask () const获取掩码。

静态 Public 成员函数

名称描述
Unmarshalling (Parcel &parcel)IPC通信数据反序列化。
localCapability内联函数指针数组AVPlaybackState,用于分布式业务,设置播放界面信息。
CopyToByMask (PlaybackStateMaskType &mask, AVPlaybackState &out) const通过掩码拷贝信息到新的AVPlaybackState对象。
CopyFrom (const AVPlaybackState &in)根据当前对象的mask_掩码,将输入的AVPlaybackState类型的信息复制到当前对象。

成员枚举类型说明

anonymous enum

anonymous enum

描述: 描述播放状态的枚举。

枚举值描述
PLAYBACK_STATE_INITIAL初始状态
PLAYBACK_STATE_PREPARING缓冲状态
PLAYBACK_STATE_PLAYING播放状态
PLAYBACK_STATE_PAUSED暂停状态
PLAYBACK_STATE_FAST_FORWARD快进状态
PLAYBACK_STATE_REWIND快退状态
PLAYBACK_STATE_STOP停止状态
PLAYBACK_STATE_MAX无效类型,内部用于判断状态是否有效

anonymous enum

anonymous enum

描述: 播放界面信息的枚举。

枚举值描述
PLAYBACK_KEY_STATE播放状态,包括正在播放、暂停、快进等
PLAYBACK_KEY_SPEED播放倍数
PLAYBACK_KEY_POSITION播放位置
PLAYBACK_KEY_BUFFERED_TIME缓冲时间
PLAYBACK_KEY_LOOP_MODE循环模式
PLAYBACK_KEY_IS_FAVORITE设置喜欢(收藏)
PLAYBACK_KEY_MAX无效类型,内部用于判断key是否有效

anonymous enum

anonymous enum

描述: 循环模式的枚举。

枚举值描述
LOOP_MODE_SEQUENCE顺序播放
LOOP_MODE_SINGLE单曲循环
LOOP_MODE_LIST列表循环
LOOP_MODE_SHUFFLE随机播放

成员函数说明

CopyFrom()

bool OHOS::AVSession::AVPlaybackState::CopyFrom (const AVPlaybackState & in)

描述: 根据当前对象的mask_掩码,将输入的AVPlaybackState类型的信息复制到当前对象。

参数:

名称描述
inAVPlaybackState类型。

返回:

如果有至少一个播放界面信息被拷贝,返回true;如果一个播放界面信息都没有被拷贝,返回false。

参见:

CopyToByMask

GetMask

CopyToByMask()

bool OHOS::AVSession::AVPlaybackState::CopyToByMask (PlaybackStateMaskType & mask, AVPlaybackState & out ) const

描述: 通过掩码拷贝信息到新的AVPlaybackState对象。

mask对应位上有值的对象拷贝给out。

参数:

名称描述
mask输入的掩码**}。 out 输出的音视频的播放状态 AVPlaybackState}。 如果有至少一个播放界面信息被拷贝,返回true;如果一个播放界面信息都没有被拷贝,返回false。 CopyFrom 9 1.0 **

GetBufferedTime()

int64_t OHOS::AVSession::AVPlaybackState::GetBufferedTime () const

描述: 获取当前缓冲时间,单位为ms。

返回:

返回缓冲时间。

参见:

SetBufferedTime

GetFavorite()

bool OHOS::AVSession::AVPlaybackState::GetFavorite () const

描述: 获取是否收藏。

返回:

是否收藏,是则返回true,否则返回false。

参见:

SetFavorite

GetLoopMode()

int32_t OHOS::AVSession::AVPlaybackState::GetLoopMode () const

描述: 获取当前循环模式。

返回:

返回循环模式,范围LOOP_MODE_SEQUENCELOOP_MODE_SHUFFLE之间。

参见:

SetLoopMode

GetMask()

PlaybackStateMaskType OHOS::AVSession::AVPlaybackState::GetMask () const

描述: 获取掩码。

返回:

返回播放界面信息的掩码PlaybackStateMaskType

参见:

CopyFrom

GetPosition()

Position OHOS::AVSession::AVPlaybackState::GetPosition () const

描述: 获取播放位置。

返回:

返回播放位置Position

参见:

SetPosition

GetSpeed()

double OHOS::AVSession::AVPlaybackState::GetSpeed () const

描述: 获取当前播放倍速。

返回:

返回当前播放倍速。

参见:

SetSpeed

GetState()

int32_t OHOS::AVSession::AVPlaybackState::GetState () const

描述: 获取当前音视频的播放状态。

返回:

返回当前音视频的播放状态,范围PLAYBACK_STATE_INITIALPLAYBACK_STATE_MAX之间。

参见:

SetState

IsValid()

bool OHOS::AVSession::AVPlaybackState::IsValid () const

描述: 验证当前信息的有效性。

返回:

有效返回true;无效则返回false。

Marshalling()

bool OHOS::AVSession::AVPlaybackState::Marshalling (Parcel & parcel) const

描述: IPC通信数据序列化。

将AVPlaybackState类型的信息,序列化为Parcel类型的信息,用来进行IPC通信。

参数:

名称描述
parcel保存序列化值的对象Parcel

返回:

成功返回true;失败返回false。

参见:

Unmarshalling

SetBufferedTime()

void OHOS::AVSession::AVPlaybackState::SetBufferedTime (int64_t time)

描述: 设置缓冲时间,单位为ms。

参数:

名称描述
time缓冲时间。

参见:

GetBufferedTime

SetFavorite()

void OHOS::AVSession::AVPlaybackState::SetFavorite (bool isFavorite)

描述: 设置是否收藏。

参数:

名称描述
isFavorite是否收藏,是则为true,否则false。

参见:

GetFavorite

SetLoopMode()

void OHOS::AVSession::AVPlaybackState::SetLoopMode (int32_t mode)

描述: 设置循环模式。

参数:

名称描述
mode循环模式,范围LOOP_MODE_SEQUENCELOOP_MODE_SHUFFLE之间。

参见:

GetLoopMode

SetPosition()

void OHOS::AVSession::AVPlaybackState::SetPosition (const Position & position)

描述: 设置播放位置,通过更新时间与经过时间来计算,单位ms。

参数:

名称描述
position播放位置Position

参见:

GetPosition

SetSpeed()

void OHOS::AVSession::AVPlaybackState::SetSpeed (double speed)

描述: 设置播放倍速。

参数:

名称描述
speed播放倍速。

参见:

SetSpeed

SetState()

void OHOS::AVSession::AVPlaybackState::SetState (int32_t state)

描述: 设置音视频的播放状态。

参数:

名称描述
state音视频的播放状态,范围PLAYBACK_STATE_INITIALPLAYBACK_STATE_MAX之间。

参见:

GetState

Unmarshalling()

static AVPlaybackState* OHOS::AVSession::AVPlaybackState::Unmarshalling (Parcel & parcel)

描述: IPC通信数据反序列化。

将通过IPC接收的Parcel类型的信息,反序列化为AVPlaybackState类型的信息。

参数:

名称描述
parcel序列化对象Parcel

返回:

如果反序列化成功,则返回AVPlaybackState对象; 如果反序列化失败,则返回nullptr。

参见:

Marshalling

结构体成员变量说明

localCapability

const std::vector<int32_t> OHOS::AVSession::AVPlaybackState::localCapability

Value:

{
 PLAYBACK_KEY_STATE,
 PLAYBACK_KEY_SPEED,
 PLAYBACK_KEY_POSITION,
 PLAYBACK_KEY_BUFFERED_TIME,
 PLAYBACK_KEY_LOOP_MODE,
 PLAYBACK_KEY_IS_FAVORITE,
 }

描述: 内联函数指针数组AVPlaybackState,用于分布式业务,设置播放界面信息。

你可能感兴趣的鸿蒙文章

harmony(鸿蒙)Native API

harmony(鸿蒙)OHOS::AVSession::AVPlaybackState::Position

harmony(鸿蒙)AudioDecoder

harmony(鸿蒙)AudioEncoder

harmony(鸿蒙)CodecBase

harmony(鸿蒙)Core

harmony(鸿蒙)Drawing

harmony(鸿蒙)OHOS::AVSession::AVControllerCallback

harmony(鸿蒙)HiLog

harmony(鸿蒙)MindSpore

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