OHOS::AVSession::AVPlaybackState


OHOS::AVSession::AVPlaybackState

概述

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

汇总

结构体

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

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 override IPC通信数据序列化。
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
1

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

枚举值 描述
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
1

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

枚举值 描述
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
1

描述: 循环模式的枚举。

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

成员函数说明

CopyFrom()

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

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

参数:

名称 描述
in AVPlaybackState类型。

返回:

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

参见:

CopyToByMask

GetMask

CopyToByMask()

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

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

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

参数:

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

GetBufferedTime()

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

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

返回:

返回缓冲时间。

参见:

SetBufferedTime

GetFavorite()

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

描述: 获取是否收藏。

返回:

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

参见:

SetFavorite

GetLoopMode()

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

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

返回:

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

参见:

SetLoopMode

GetMask()

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

描述: 获取掩码。

返回:

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

参见:

CopyFrom

GetPosition()

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

描述: 获取播放位置。

返回:

返回播放位置Position

参见:

SetPosition

GetSpeed()

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

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

返回:

返回当前播放倍速。

参见:

SetSpeed

GetState()

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

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

返回:

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

参见:

SetState

IsValid()

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

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

返回:

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

Marshalling()

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

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

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

参数:

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

返回:

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

参见:

Unmarshalling

SetBufferedTime()

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

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

参数:

名称 描述
time 缓冲时间。

参见:

GetBufferedTime

SetFavorite()

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

描述: 设置是否收藏。

参数:

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

参见:

GetFavorite

SetLoopMode()

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

描述: 设置循环模式。

参数:

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

参见:

GetLoopMode

SetPosition()

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

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

参数:

名称 描述
position 播放位置Position

参见:

GetPosition

SetSpeed()

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

描述: 设置播放倍速。

参数:

名称 描述
speed 播放倍速。

参见:

SetSpeed

SetState()

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

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

参数:

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

参见:

GetState

Unmarshalling()

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

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

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

参数:

名称 描述
parcel 序列化对象Parcel

返回:

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

参见:

Marshalling

结构体成员变量说明

localCapability

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

Value:

{
 PLAYBACK_KEY_STATE,
 PLAYBACK_KEY_SPEED,
 PLAYBACK_KEY_POSITION,
 PLAYBACK_KEY_BUFFERED_TIME,
 PLAYBACK_KEY_LOOP_MODE,
 PLAYBACK_KEY_IS_FAVORITE,
 }
1
2
3
4
5
6
7
8

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