plv player sdk doc
载入中...
搜索中...
未找到
plv-player-def-CN.h
浏览该文件的文档.
1#pragma once
2#include <stddef.h>
3#include <stdio.h>
4#include <stdarg.h>
5#include <string.h>
6#include <stdlib.h>
7#include <stdint.h>
8
9#if defined(_WIN32)
10#define WIN32_LEAN_AND_MEAN
11#include <windows.h>
12#define PLAYERSDK_CALL __cdecl
13#if defined(PLAYERSDK_EXPORT)
14#define PLAYERSDK_API extern "C" __declspec(dllexport)
15#else
16#define PLAYERSDK_API extern "C" __declspec(dllimport)
17#endif
18#elif defined(__APPLE__)
19#include <TargetConditionals.h>
20#define PLAYERSDK_API __attribute__((visibility("default"))) extern "C"
21#define PLAYERSDK_CALL
22#elif defined(__ANDROID__) || defined(__linux__)
23#define PLAYERSDK_API extern "C" __attribute__((visibility("default")))
24#define PLAYERSDK_CALL
25#else
26#define PLAYERSDK_API extern "C"
27#define PLAYERSDK_CALL
28#endif
29
30#ifdef __cplusplus
31extern "C" {
32#endif // __cplusplus
33
36
56
86
96
106
115
121#ifdef _WIN32
128
135#endif// end _WIN32
136};
137
151
193
231
237
252 userId(0),
253 secretKey(0),
254 appId(0),
255 appSecret(0),
256 subAccount(false)
257 {}
258 const char* userId;
262 const char* secretKey;
263 const char* appId;
267 const char* appSecret;
269};
270
311
312
316 text(0),
317 textSize(16),
318 textColor(0),
319 borderSize(1),
320 borderColor(0),
321 alignX(1),
322 alignY(-1)
323 {
324 }
325 const char* text;
327 const char* textColor;
329 const char* borderColor;
332};
333
340
345 vids(NULL),
346 page(1),
347 pageSize(10)
348 {
349 }
351 const char* vids;
352 int page;
354};
358 encrypt(false),
359 cateId(0),
360 status(0),
361 duration(0),
362 ratesNum(0),
364 vid(NULL),
365 title(NULL),
366 thumbnailURL(NULL),
367 coverURL(NULL),
368 rates(NULL)
369 {
370 }
384 double duration;
385 struct Rate {
386 int64_t filesize;
387 int rate;
389 int fps;
391 int width;
392 };
395 const char* vid;
396 const char* title;
397 const char* thumbnailURL;
398 const char* coverURL;
399};
400
416
419 uint8_t* data[8];
420 uint32_t linesize[8];
421 uint64_t timestamp;
422 uint32_t width;
423 uint32_t height;
424 uint32_t format;
425};
426
427#ifdef __cplusplus
428}
429#endif
430
PLAYER_MEDIA_FORMAT
@ MEDIA_FORMAT_STRING
字符串.
@ MEDIA_FORMAT_INT64
整型.
@ MEDIA_FORMAT_DOUBLE
浮动型.
SDK_ERROR_TYPE
@ E_MEDIA_UNLOAD
视频未加载.
@ E_STILL_REQUEST
还在请求视频信息中.
@ E_CORE_MAX
超过此值时,其错误码为播放器内核错误码(code - E_CORE_MAX).
@ E_MEDIA_LOADING
视频正在加载中.
@ E_DOWNLOAD_ERR
下载失败, 可能出现打开文件或者路径失败.
@ E_NO_SPACE
硬盘剩余空间不足.
@ E_ZIP_ERR
下载 zip 包失败或者 zip 包解压失败.
@ E_ABORT_OPERATION
用户主动中断操作.
@ E_NO_ERR
成功.
@ E_NO_SUPPORT
SDK 不支持此接口.
@ E_PARAM_ERR
参数传递不合法.
@ E_VID_ERR
视频 id 不合法.
@ E_DOWNLOADING
此文件正在下载中.
@ E_M3U8_ERR
下载 m3u8 文件失败或者 m3u8 文件不合法.
@ E_CAFILE_ERR
ca证书文件错误.
@ E_NO_INIT
SDK 未初始化.
@ E_DELETE_VIDEO
用户主动取消下载并删除文件.
@ E_KEY_ERR
下载 key 文件失败或者 key 文件不合法.
@ E_MAC_NOT_ALLFILESACCESS
在 mac 上, 软件防录制必须要有完全磁盘访问权限
@ E_MEDIA_UNINIT
未调用视频的初始化接口(setvideo).
@ E_FILE_INCOMPLETE
视频文件不完整.
@ E_OBJECT_NULL
对象为空.
@ E_NO_FILE
没有此文件.
@ E_DELETE_ERR
删除文件失败.
@ E_MIGRATE_ERR
迁移出错, 可能是 key 文件不正常等.
@ E_OUTFLOW
流量超额.
@ E_NO_AUDIO_DEVICE
无扬声器设备.
@ E_HTTP_ERR
网络请求失败, 请检查网络.
@ E_PATH_ERR
文件路径不合法.
@ E_NO_RATE
没有此视频清晰度.
@ E_NETWORK_ERR
网络错误.
@ E_VIEWERID_EMPTY
viewerId 为空. 播放 vrm12/vrm13 视频, 为空会播放失败.
@ E_INVOKE_ERR
调用接口失败.
@ E_TSFILESIZE
ts 文件为空.
@ E_OSDFONT_ERR
跑马灯没有字体文件.
@ E_HTTP_MAX
超过此值时,其错误码为 http api返回的错误码(code - E_HTTP_MAX).
SOFTWARE_RECORDING_NOTIFY_TYPE
@ SOFTWARE_RECORDING_NONE
@ SOFTWARE_RECORDING_STOP
@ SOFTWARE_RECORDING_START
PLAYER_MEDIA_STATE
@ MEDIA_STATE_LOADED
加载完成.
@ MEDIA_STATE_PAUSE
暂停中.
@ MEDIA_STATE_FAIL
播放失败.
@ MEDIA_STATE_PLAY
播放中.
@ MEDIA_STATE_END_SEEKING
停止跳转.
@ MEDIA_STATE_END_CACHE
停止缓存.
@ MEDIA_STATE_BEGIN_SEEKING
开始跳转.
@ MEDIA_STATE_END
播放结束.
@ MEDIA_STATE_BEGIN_CACHE
开始缓存.
@ MEDIA_STATE_NONE
无效值
@ MEDIA_STATE_LOADING
加载中.
DEVICE_CHANGED_TYPE
@ HDMI_DEVICE_UNUSE
@ HDMI_DEVICE_USE
@ DEVICE_CHANGED_NONE
OSD_DISPLAY_TYPE
@ OSD_DISPALY_ROLL
从右到左滚动.
@ OSD_DISPALY_BLINK
随机位置闪烁.
VIDEO_OUTPUT_DEVICE
@ VIDEO_OUTPUT_DIRECT3D
@ VIDEO_OUTPUT_GDI
@ VIDEO_OUTPUT_NONE
@ VIDEO_OUTPUT_GPU
LOG_FILTER_TYPE
@ LOG_FILTER_INFO
@ LOG_FILTER_DEBUG
@ LOG_FILTER_OFF
@ LOG_FILTER_WARN
@ LOG_FILTER_ERROR
@ LOG_FILTER_FATAL
PLAYER_MEDIA_PROPERTY
@ MEDIA_PROPERTY_VIDEO_BITRATE
视频码率. MEDIA_FORMAT_INT64.
@ MEDIA_PROPERTY_DURATION
播放时长. 单位:毫秒. MEDIA_FORMAT_INT64.
@ MEDIA_PROPERTY_VIDEO_HEIGHT
视频高度. MEDIA_FORMAT_INT64.
@ MEDIA_PROPERTY_AUDIO_CODEC
音频编码. MEDIA_FORMAT_STRING.
@ MEDIA_PROPERTY_CACHE_TIME
缓存时间. 单位:毫秒. MEDIA_FORMAT_INT64.
@ MEDIA_PROPERTY_VIDEO_WIDTH
视频宽度. MEDIA_FORMAT_INT64.
@ MEDIA_PROPERTY_VIDEO_FPS
视频帧率. MEDIA_FORMAT_DOUBLE.
@ MEDIA_PROPERTY_HWDEC
硬件编码. MEDIA_FORMAT_STRING.
@ MEDIA_PROPERTY_NONE
无效值.
@ MEDIA_PROPERTY_CACHE_SPEED
缓存速度, 单位:字节数. MEDIA_FORMAT_INT64.
@ MEDIA_PROPERTY_POSTION
播放进度.
@ MEDIA_PROPERTY_AUDIO_BITRATE
音频码率. MEDIA_FORMAT_INT64.
@ MEDIA_PROPERTY_CACHE_PROGRESS
缓存进度, 100%. MEDIA_FORMAT_STRING.
@ MEDIA_PROPERTY_VIDEO_CODEC
视频编码. MEDIA_FORMAT_STRING.
const int PLV_MAX_DEVICE_ID_LENGTH
VIDEO_REQUEST_TYPE
@ VIDEO_REQUEST_PAGE
使用分页查询.
@ VIDEO_REQUEST_VID
使用 vid 查询, 可支持多个 vid 查询. eg: 1b448be3231361255350f047cd7ed6bb_1,1b448be323b8d9b9489dcd7e8e09f087_1.
@ VIDEO_REQUEST_NONE
无效值.
VIDEO_RATE_TYPE
@ VIDEO_RATE_HD
超清.
@ VIDEO_RATE_SD
高清.
@ VIDEO_RATE_LD
流畅.
@ VIDEO_RATE_SOURCE
源文件清晰度.
@ VIDEO_RATE_AUTO
只在播放中使用, 不能用在下载接口.
SDK_HTTP_REQUEST
@ ONLY_HTTP_REQUEST
@ ONLY_HTTPS_REQUEST
@ FIRST_HTTP_REQUEST
@ FIRST_HTTPS_REQUEST
bool subAccount
use sub account.
const char * appSecret
子账号的appSecret,如果使用主帐号, 此项可以为空, 请向 SDK 供应商获取.
const char * userId
主帐号的userId, 请向 SDK 供应商获取.
const char * secretKey
主帐号的secretKey, 如果使用子帐号, 此项可以为空, 请向 SDK 供应商获取.
const char * appId
子帐号的appId, 如果使用主帐号, 此项可以为空, 请向 SDK 供应商获取.
const char * text
LOGO 内容信息, 必须使用 utf8.
int alignY
[-1 0 1] 垂直位置 上中下, 默认值 -1.
const char * borderColor
描边颜色值 ARGB, 默认值 #FFFFFFFF.
int textSize
字体大小, [1, 255], 默认值 55.
const char * textColor
字体颜色值 ARGB, 默认值 #FF000000.
int alignX
[-1 0 1] 水平位置 左中右, 默认值 1.
int borderSize
描边大小, [0, 255], 0 值时描边失效 ,默认值 1.
const char * text
跑马灯内容, 必须使用 utf8.
int displayDuration
单次跑马灯显示的时长, 单位: 秒. 默认值 5 秒.
const char * borderColor
描边颜色值 ARGB, 默认值 #FFFFFFFF.
int fadeDuration
跑马灯文字从显示到消失的渐变动画的时长, 单位: 秒. 默认值 3 秒.
int textSize
字体大小, [1, 255], 默认值 55.
OSD_DISPLAY_TYPE animationEffect
跑马灯显示动效类型, 默认值 OSD_DISPALY_ROLL.
const char * textColor
字体颜色值 ARGB, 默认值 #FF000000.
int displayInterval
两次跑马灯显示的间隔时长, 单位: 秒. 默认值 1 秒.
int borderSize
描边大小, [0, 255], 0 值时描边失效 ,默认值 1.
uint8_t * data[8]
帧数据.
uint32_t width
帧宽.
uint64_t timestamp
时间戳-ns.
uint32_t linesize[8]
帧数据行宽.
uint32_t format
帧格式-目前仅RGBX.
uint32_t height
帧高.
int64_t filesize
编码后视频大小, 单位: 字节.
int width
分辨率宽, 单位: 像素.
int rate
清晰度, 参见 @VIDEO_RATE_TYPE
int bitrate
视频码率, 单位: kbps.
int height
分辨率高, 单位: 像素.
Rate * rates
清晰度列表.
const char * coverURL
首图地址, 大图.
const char * vid
视频id, use UTF8.
int cateId
分类id, 如1为默认分类.
int status
视频状态.
const char * title
视频标题, use UTF8.
double duration
视频时长, 单位: 秒.
const char * thumbnailURL
首图地址, 小图.
int ratesNum
清晰度数量.
int64_t sourceFilesize
源文件大小, 单位: 字节.
bool encrypt
是否加密.
int pageNumber
当前页数索引.
VIDEO_REQUEST_TYPE type
请求的类型.
int pageSize
每页数量, 最大支持 1000 个.
const char * vids
vids 集合, 多个 vid 使用英文逗号隔开, 最大支持 100 个 vid. eg: 1b448be3231361255350f047cd7ed6bb_1,1b448be323b8d9b9489d...
int page
分页索引. 从索引 1 开始.
VIDEO_REQUEST_TYPE type
查询类型.