plv player sdk doc
载入中...
搜索中...
未找到
类型定义 | 函数
直播播放器接口

类型定义

typedef void * PLVLivePlayerPtr
 播放对象, 每一个播放对象同时只能播放一个频道视频, 可以创建多个播放对象.
 
typedef bool(* OnLivePlayerVideoFrameHandler) (PLVVideoFrame *frame, void *data)
 播放视频帧的回调通知.
 
typedef void(* OnLivePlayerStateHandler) (int state, void *data)
 播放状态的回调通知.
 
typedef void(* OnLivePlayerPropertyHandler) (int property, int format, const char *value, void *data)
 播放属性值的回调通知.
 
typedef void(* OnLivePlayerAudioPlayErrorHandler) (void *data)
 音频播放错误回调.
 
typedef void(* OnLivePlayerChannelStateHandler) (int state, void *data)
 频道直播状态回调.
 
typedef void(* OnLivePlayerChannelInfoHandler) (const PLVChannelInfo *info, void *data)
 频道信息回调.
 

函数

PLAYERSDK_API PLVLivePlayerPtr PLAYERSDK_CALL PLVLivePlayerCreate (void *window)
 创建直播播放对象并返回对象指针.
 
PLAYERSDK_API void PLAYERSDK_CALL PLVLivePlayerDestroy (PLVLivePlayerPtr player)
 销毁播放对象.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetVideoFrameHandler (PLVLivePlayerPtr player, OnLivePlayerVideoFrameHandler lockHandler, OnLivePlayerVideoFrameHandler unlockHandler, void *data)
 设置播放视频帧的回调通知.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetStateHandler (PLVLivePlayerPtr player, OnLivePlayerStateHandler handler, void *data)
 设置播放状态的回调通知.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetPropertyHandler (PLVLivePlayerPtr player, OnLivePlayerPropertyHandler handler, void *data)
 设置播放属性值的回调通知.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetAudioPlayErrorHandler (PLVLivePlayerPtr player, OnLivePlayerAudioPlayErrorHandler handler, void *data)
 设置音频播放错误回调.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetChannelStateHandler (PLVLivePlayerPtr player, OnLivePlayerChannelStateHandler handler, void *data)
 设置频道直播状态改变回调.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetChannelInfoHandler (PLVLivePlayerPtr player, OnLivePlayerChannelInfoHandler handler, void *data)
 设置频道信息回调.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetOSDConfig (PLVLivePlayerPtr player, bool enable, const PLVOsdConfigInfo *config)
 设置跑马灯信息
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetOSDConfig (PLVLivePlayerPtr player, PLVOsdConfigInfo *config)
 获取跑马灯信息.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetLogoText (PLVLivePlayerPtr player, bool enable, const PLVLogoTextInfo *config)
 设置 LOGO 信息
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetLogoText (PLVLivePlayerPtr player, PLVLogoTextInfo *config)
 获取 LOGO 信息.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetCacheConfig (PLVLivePlayerPtr player, int cacheMs, bool speedTrackingEnable, bool seekTrackingEnable)
 设置播放缓存信息.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetCacheConfig (PLVLivePlayerPtr player, int *cacheMs, bool *speedTrackingEnable, bool *seekTrackingEnable)
 获取播放缓存信息.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetLine (PLVLivePlayerPtr player, int lineIndex)
 设置播放线路,通过频道信息回调获取频道线路信息.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetQuality (PLVLivePlayerPtr player, int qualityIndex)
 设置播放清晰度,通过频道信息回调获取频道清晰度信息.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetPlayMode (PLVLivePlayerPtr player, int playMode)
 设置播放模式,通过频道信息回调获取频道是否支持音视频播放模式.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetToken (PLVLivePlayerPtr player, const char *token)
 保留接口
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerPlay (PLVLivePlayerPtr player, const char *channelId)
 播放频道直播,始终采用异步模式,中途可随时停止.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerPause (PLVLivePlayerPtr player, bool pause)
 暂停或继续播放.
 
PLAYERSDK_API bool PLAYERSDK_CALL PLVLivePlayerIsPause (PLVLivePlayerPtr player)
 判断是否暂停状态.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerStop (PLVLivePlayerPtr player)
 停止播放.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerMute (PLVLivePlayerPtr player, bool mute)
 设置是否静音状态.
 
PLAYERSDK_API bool PLAYERSDK_CALL PLVLivePlayerIsMute (PLVLivePlayerPtr player)
 判断是否静音状态.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetVolume (PLVLivePlayerPtr player, int volume)
 设置播放声音.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetVolumeMax (PLVLivePlayerPtr player, int volume)
 设置声音增益.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetVolume (PLVLivePlayerPtr player)
 获取当前音量值.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerScreenshot (PLVLivePlayerPtr player, const char *filename)
 视频截屏.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetCurrentAudioDevice (PLVLivePlayerPtr player, char deviceId[PLV_MAX_DEVICE_ID_LENGTH])
 获取当前扬声器设备标识.
 
PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetCurrentAudioDevice (PLVLivePlayerPtr player, const char deviceId[PLV_MAX_DEVICE_ID_LENGTH])
 设置当前扬声器设备标识.
 

详细描述

类型定义说明

◆ OnLivePlayerAudioPlayErrorHandler

typedef void(* OnLivePlayerAudioPlayErrorHandler) (void *data)

音频播放错误回调.

参数
[out]data用户自定义上下文数据.

在文件 plv-player-live-CN.h37 行定义.

◆ OnLivePlayerChannelInfoHandler

typedef void(* OnLivePlayerChannelInfoHandler) (const PLVChannelInfo *info, void *data)

频道信息回调.

参数
[out]info频道信息.
参见
PLVChannelInfo.
参数
[out]data用户自定义上下文数据.
注解
: 该回调可能会被调用多次

在文件 plv-player-live-CN.h52 行定义.

◆ OnLivePlayerChannelStateHandler

typedef void(* OnLivePlayerChannelStateHandler) (int state, void *data)

频道直播状态回调.

参数
[out]state频道直播状态.
参见
LIVE_PLAYER_CHANNEL_STATE.
参数
[out]data用户自定义上下文数据.

在文件 plv-player-live-CN.h44 行定义.

◆ OnLivePlayerPropertyHandler

typedef void(* OnLivePlayerPropertyHandler) (int property, int format, const char *value, void *data)

播放属性值的回调通知.

参数
[out]property属性类型.
参见
PLAYER_MEDIA_PROPERTY.
参数
[out]format属性数据类型.
参见
PLAYER_MEDIA_FORMAT.
参数
[out]value属性值.
[out]data用户自定义上下文数据.

在文件 plv-player-live-CN.h31 行定义.

◆ OnLivePlayerStateHandler

typedef void(* OnLivePlayerStateHandler) (int state, void *data)

播放状态的回调通知.

参数
[out]state播放状态.
参见
PLAYER_MEDIA_STATE.
参数
[out]data用户自定义上下文数据.

在文件 plv-player-live-CN.h22 行定义.

◆ OnLivePlayerVideoFrameHandler

typedef bool(* OnLivePlayerVideoFrameHandler) (PLVVideoFrame *frame, void *data)

播放视频帧的回调通知.

参数
[out]frame视频帧.
[out]data用户自定义上下文数据.

在文件 plv-player-live-CN.h15 行定义.

◆ PLVLivePlayerPtr

typedef void* PLVLivePlayerPtr

播放对象, 每一个播放对象同时只能播放一个频道视频, 可以创建多个播放对象.

在文件 plv-player-live-CN.h8 行定义.

函数说明

◆ PLVLivePlayerCreate()

PLAYERSDK_API PLVLivePlayerPtr PLAYERSDK_CALL PLVLivePlayerCreate ( void * window)

创建直播播放对象并返回对象指针.

参数
window绑定播放窗口的句柄.
返回
  • Pointer: 播放对象指针.
注解
如果窗口句柄为空时, 视频将使用自定义渲染模式.

◆ PLVLivePlayerDestroy()

PLAYERSDK_API void PLAYERSDK_CALL PLVLivePlayerDestroy ( PLVLivePlayerPtr player)

销毁播放对象.

参数
player播放对象.
参见
PLVLivePlayerCreate.

◆ PLVLivePlayerGetCacheConfig()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetCacheConfig ( PLVLivePlayerPtr player,
int * cacheMs,
bool * speedTrackingEnable,
bool * seekTrackingEnable )

获取播放缓存信息.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
cacheMs[out]播放缓存时长(ms)
speedTrackingEnable[out]是否通过变速进行追帧
seekTrackingEnable[out]当数据累积过大时,是否通过自动向前定位进行追帧
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerGetCurrentAudioDevice()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetCurrentAudioDevice ( PLVLivePlayerPtr player,
char deviceId[PLV_MAX_DEVICE_ID_LENGTH] )

获取当前扬声器设备标识.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
[out]deviceId扬声器设备标识.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerGetLogoText()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetLogoText ( PLVLivePlayerPtr player,
PLVLogoTextInfo * config )

获取 LOGO 信息.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
[out]configLOGO 信息.
参见
PLVLogoTextInfo.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerGetOSDConfig()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetOSDConfig ( PLVLivePlayerPtr player,
PLVOsdConfigInfo * config )

获取跑马灯信息.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
[out]config跑马灯信息.
参见
PLVOsdConfigInfo.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerGetVolume()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerGetVolume ( PLVLivePlayerPtr player)

获取当前音量值.

参数
player播放对象.
参见
PLVLivePlayerCreate.
返回
  • 0: 失败.
  • >0: 音量值.

◆ PLVLivePlayerIsMute()

PLAYERSDK_API bool PLAYERSDK_CALL PLVLivePlayerIsMute ( PLVLivePlayerPtr player)

判断是否静音状态.

参数
player播放对象.
参见
PLVLivePlayerCreate.
返回
  • true: 静音.
  • false: 非静音.

◆ PLVLivePlayerIsPause()

PLAYERSDK_API bool PLAYERSDK_CALL PLVLivePlayerIsPause ( PLVLivePlayerPtr player)

判断是否暂停状态.

参数
player播放对象.
参见
PLVLivePlayerCreate.
返回
  • true: 暂停中.
  • false: 非暂停或者空闲中.

◆ PLVLivePlayerMute()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerMute ( PLVLivePlayerPtr player,
bool mute )

设置是否静音状态.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
mute是否静音.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerPause()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerPause ( PLVLivePlayerPtr player,
bool pause )

暂停或继续播放.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
pause是否暂停.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.
注解
: 继续播放将会重新拉流.

◆ PLVLivePlayerPlay()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerPlay ( PLVLivePlayerPtr player,
const char * channelId )

播放频道直播,始终采用异步模式,中途可随时停止.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
channelId频道ID.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.
注解
1.如果当前已经启动播放,需要先停止;
2.播放后将重置暂停、线路与清晰度设置.
3.如果频道处于未直播状态,播放器将一直轮询播放直到遇到以下两种情况:
①.用户主动停止
②.遇到不可恢复错误, 比如频道信息错误, 播放器会回调播放失败.
参见
MEDIA_STATE_FAIL

◆ PLVLivePlayerScreenshot()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerScreenshot ( PLVLivePlayerPtr player,
const char * filename )

视频截屏.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
filenamepng/jpg 截屏文件, 包含路径, 使用 UTF8.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.
注意
路径必须使用 UTF8

◆ PLVLivePlayerSetAudioPlayErrorHandler()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetAudioPlayErrorHandler ( PLVLivePlayerPtr player,
OnLivePlayerAudioPlayErrorHandler handler,
void * data )

设置音频播放错误回调.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
handler回调函数地址.
data用户自定义上下文数据.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetCacheConfig()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetCacheConfig ( PLVLivePlayerPtr player,
int cacheMs,
bool speedTrackingEnable,
bool seekTrackingEnable )

设置播放缓存信息.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
cacheMs播放缓存时长(ms),默认2000ms.
speedTrackingEnable是否通过变速进行追帧来保持播放实时性,默认启用.
seekTrackingEnable当数据累积过大时,是否通过自动向前定位进行追帧来保持播放实时性,默认启用.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.
注解
不建议将缓存时长设置过小以免播放卡顿,建议1000-5000之间.
该设置仅对http-flv类型的实时流生效

◆ PLVLivePlayerSetChannelInfoHandler()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetChannelInfoHandler ( PLVLivePlayerPtr player,
OnLivePlayerChannelInfoHandler handler,
void * data )

设置频道信息回调.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
handler回调函数地址.
data用户自定义上下文数据.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetChannelStateHandler()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetChannelStateHandler ( PLVLivePlayerPtr player,
OnLivePlayerChannelStateHandler handler,
void * data )

设置频道直播状态改变回调.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
handler回调函数地址.
data用户自定义上下文数据.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetCurrentAudioDevice()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetCurrentAudioDevice ( PLVLivePlayerPtr player,
const char deviceId[PLV_MAX_DEVICE_ID_LENGTH] )

设置当前扬声器设备标识.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
deviceId扬声器设备标识.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetLine()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetLine ( PLVLivePlayerPtr player,
int lineIndex )

设置播放线路,通过频道信息回调获取频道线路信息.

参见
OnLivePlayerChannelInfoHandler
参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
lineIndex线路索引,默认0
返回
  • 0: 成功.
  • > 0: 失败, 错误码.
注解
如果索引超出了范围,播放器将选择最近的线路索引.
重新播放时将会重置该设置.
切换线路后将会自动选择默认的清晰度.

◆ PLVLivePlayerSetLogoText()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetLogoText ( PLVLivePlayerPtr player,
bool enable,
const PLVLogoTextInfo * config )

设置 LOGO 信息

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
enable是否使用 LOGO.
configLOGO 信息.
参见
PLVLogoTextInfo.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetOSDConfig()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetOSDConfig ( PLVLivePlayerPtr player,
bool enable,
const PLVOsdConfigInfo * config )

设置跑马灯信息

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
enable是否使用跑马灯.
config跑马灯信息.
参见
PLVOsdConfigInfo.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetPlayMode()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetPlayMode ( PLVLivePlayerPtr player,
int playMode )

设置播放模式,通过频道信息回调获取频道是否支持音视频播放模式.

参见
OnLivePlayerChannelInfoHandler
参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
playMode播放模式.
参见
LIVE_PLAYER_PLAY_MODE
返回
  • 0: 成功.
  • > 0: 失败, 错误码.
注解
如果频道仅支持音频播放,播放器将播放音频,此接口调用无效.
重新播放时将会重置该设置.

◆ PLVLivePlayerSetPropertyHandler()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetPropertyHandler ( PLVLivePlayerPtr player,
OnLivePlayerPropertyHandler handler,
void * data )

设置播放属性值的回调通知.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
handler回调函数地址.
data用户自定义上下文数据.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetQuality()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetQuality ( PLVLivePlayerPtr player,
int qualityIndex )

设置播放清晰度,通过频道信息回调获取频道清晰度信息.

参见
OnLivePlayerChannelInfoHandler
参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
qualityIndex清晰度索引,默认0
返回
  • 0: 成功.
  • > 0: 失败, 错误码.
注解
如果索引超出了范围,播放器将选择最近的清晰度索引.
重新播放时将会重置该设置.

◆ PLVLivePlayerSetStateHandler()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetStateHandler ( PLVLivePlayerPtr player,
OnLivePlayerStateHandler handler,
void * data )

设置播放状态的回调通知.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
handler回调函数地址.
data用户自定义上下文数据.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetToken()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetToken ( PLVLivePlayerPtr player,
const char * token )

保留接口

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
tokenToken.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetVideoFrameHandler()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetVideoFrameHandler ( PLVLivePlayerPtr player,
OnLivePlayerVideoFrameHandler lockHandler,
OnLivePlayerVideoFrameHandler unlockHandler,
void * data )

设置播放视频帧的回调通知.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
lockHandler锁定缓存回调函数地址.
unlockHandler解锁缓存回调函数地址.
data用户自定义上下文数据.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetVolume()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetVolume ( PLVLivePlayerPtr player,
int volume )

设置播放声音.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
volume<0-100> 声音范围, 0 为静音.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerSetVolumeMax()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerSetVolumeMax ( PLVLivePlayerPtr player,
int volume )

设置声音增益.

参数
player播放对象.
参见
PLVLivePlayerCreate.
参数
volume<100-1000> 增益范转, 超过 1000 返回失败.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.

◆ PLVLivePlayerStop()

PLAYERSDK_API int PLAYERSDK_CALL PLVLivePlayerStop ( PLVLivePlayerPtr player)

停止播放.

参数
player播放对象.
参见
PLVLivePlayerCreate.
返回
  • 0: 成功.
  • > 0: 失败, 错误码.