接口速查
更新时间:2024-03-28
为了便于用户查询,提供播放器、HLS下载的相关接口列表。P
表示属性, F
表示方法。
播放器
BDCloudMediaPlayerAuth
负责AccessKey鉴权:
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | sharedInstance | F | - | 单例实例 | 获取单例 |
2 | delegate | P | - | - | 设置鉴权代理,一般是AppDelegate |
3 | authenticateLicenseID: completionHandler |
F | 字符串 LicenseID | - | 设置LicenseID,发起异步鉴权操作 |
BDCloudMediaPlayerAuthDelegate
AccessKey鉴权回调事件:
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | authStart | F | - | - | 鉴权开始 |
2 | authEnd | F | NSError 错误 | - | 鉴权结束,错误为空值表示鉴权成功 |
BDCloudMediaPlayerBitrateItem
抽象多码率HLS视频的一个码率item:
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | resolution | P | - | - | 分辨率,单位像素 |
2 | bitrate | P | - | - | 码率,单位 bps |
BDCloudMediaPlayerMeidaItem
抽象无缝切换视频的一个视频item,主要用于视频的无缝切换:
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | itemFromString | F | NSString 视频信息 | - | 初始化视频信息 |
2 | resolution | P | - | - | 分辨率,单位像素 |
3 | bitrate | P | - | - | 码率,单位 bps |
BDCloudMediaPlayerController
主要接口
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | view | P | - | - | 负责渲染视频画面,需要添加到UI上并设置布局信息。 |
2 | contentURL | P | - | - | 视频播放地址(NSURL形式) |
3 | contentString | P | - | - | 视频播放地址(NSString形式) |
4 | isPreparedToPlay | P | - | - | 是否已准备好播放 |
5 | playbackState | P | - | - | 播放器当前播放状态 |
6 | loadState | P | - | - | 播放器当前加载状态 |
7 | scalingMode | P | - | - | 画面缩放模式 |
8 | initialPlaybackTime | P | - | - | 设置或获取视频起始播放位置,单位秒 |
9 | currentPlaybackTime | P | - | - | 设置或获取设置视频播放,单位秒 |
10 | naturalSize | P | - | - | 获取视频的分辨率 |
11 | videoDAR | P | - | - | 自定义视频长宽比 |
12 | duration | P | - | - | 获取视频的总时长,单位秒 |
13 | playableDuration | P | - | - | 获取视频当前可播放时长,单位秒 |
14 | shouldAutoplay | P | - | - | 设置或获取是否允许视频自动播放 |
15 | shouldAutostop | P | - | - | 设置或获取是否允许视频自动停止播放 |
16 | playbackRate | P | - | - | 设置或获取倍速播放速率 范围[0.0, 4.0] |
17 | playbackVolume | P | - | - | 视频播放音量 范围[0.0, 1.0] |
18 | downloadSpeed | P | - | - | 获取在线视频下载速度,单位Bps |
19 | clearCanvasWhenReset | P | - | - | 设置或获取播放器Reset是否清屏,默认为NO |
20 | videoBitrate | P | - | - | 当前视频编码器输出的比特率,单位 kbps |
21 | audioBitrate | P | - | - | 当前音频编码器输出的比特率,单位 kbps |
22 | initWithContentURL: | F | NSURL | 实例 | 传入视频播放地址(NSURL形式)初始化播放器 |
23 | initWithContentString: | F | NSString | 实例 | 传入视频播放地址(NSString形式)初始化播放器 |
24 | prepareToPlay | F | - | - | 开始异步初始化视频 |
25 | play | F | - | - | 播放视频,isPreparedToPlay为YES时,SDK自动调用 |
26 | pause | F | - | - | 暂停播放 |
27 | stop | F | - | - | 停止播放,停止后需要重新初始化视频 |
28 | reset | F | - | - | 重置播放器,重置后可以设置其他的视频URL |
29 | seek: | F | NSTimeInterval | - | 快速定位播放位置 |
30 | isPlaying | F | - | BOOL | 是否正在播放视频 |
31 | setPauseInBackground: | F | BOOL | - | App切后台后,是否自动暂停播放 |
32 | enableLooping: | F | BOOL | - | 是否循环播放 |
33 | enableAutoIdleTimerDisabled: | F | BOOL | - | 设置播放器自动控制屏幕长亮 |
34 | setMaxCacheSizeInBytes: | F | NSUInteger | - | 设置缓冲区大小,单位字节 |
35 | setCachePauseTime: | F | NSTimeInterval | - | 设置缓冲区最少时长。单位秒 |
36 | setFirstBufferingTime: | F | NSTimeInterval | - | 设置起播放时最大缓冲时长。单位秒 |
37 | toggleFrameChasing: | F | BOOL | - | 是否开启追帧播放 |
38 | setTimeoutInUs: | F | int | - | 设置连接建立和数据下载过程中的超时时长。单位微秒 |
39 | thumbnailImageAtCurrentTime | F | - | UIImage | 截图 |
40 | proxy | p | - | - | 播放器网络代理 |
41 | setMaxCacheDurationInSeconds: | F | NSTimeInterval | - | 设置缓冲区的时长。单位秒 |
42 | playType | p | 视频播放类型 | - | 设置视频播放类型。默认点播。 |
43 | userDefine | p | NSDictionary | - | 设置用户自定义信息 |
44 | tcpLoadSizeBlock | p | - | - | 设置TCP数据下载回调 |
45 | startRecording:videoCompressionSettings:audioCompressionSettings:recordCallBack: | F | 1.NSString(文件录制地址)2.NSDictionary (视频录制配置,参考接口文件)3.NSDictionary (音频录制配置,参考接口文件)4.void(^)(int status) (录制状态回调函数) | - | 开启视频录制文件 |
46 | stopRecord: | F | void(^)(int status) (录制状态回调函数) | - | 停止视频录制文件 |
47 | setEnableDecodeSubtitle: | F | BOOL | - | 设置是否解码字幕Track。 默认不解码。如果打开此功能,字幕会通过 BDCloudMediaPlayerTimedTextNotification 通知给到用户 |
48 | addExtSubtitleUrl: | F | NSString | - | 添加外挂字幕,在播放器prepared之后调用 |
49 | selectTrack: | F | int | - | 选择轨道,传入参数对应getTrackInfo返回数组的下标 |
50 | deselectTrack: | F | int | - | 反选轨道,传入参数对应getTrackInfo返回数组的下标 |
51 | getSelectedTrack: | F | BDCloudTrackType | int | 获取当前选中的视频/音频/字幕轨 |
52 | getTrackInfo: | F | - | NSMutableArray | 获取所有音视频track的信息 |
53 | isPipRenderMode: | P | - | - | 设置或获取是否进入画中画渲染模式 |
54 | toggleEnableHdr: | F | BOOL | - | 设置是否开启HDR渲染 |
55 | toggleEnableSr: | F | BOOL | - | 设置是否开启超分处理 |
硬件加速
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | setVideoDecodeMode: | F | 解码模式 | - | 设置解码模式 |
2 | viaHardwareAccelerate | F | - | BOOL | 获取是否当前视频启用了硬件加速 |
多码率快速切换(HLS)
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | getSupportedBitrates | F | - | 多码率列表 | 获取多码率列表 |
2 | bitrateIndex | F | - | 码率索引 | 获取当前码率索引 |
3 | setBitrateIndex: | F | 码率索引 | - | 设置当前码率索引 |
多码率无缝切换(HLS,MP4等主流媒体格式)
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | setMediaItemsInputType: | F | 视频输入格式 | - | 设置视频输入格式 |
2 | setMediaItems: | F | 视频地址列表 | - | 设置视频地址列表 |
3 | getMediaItems: | F | - | 视频列表信息 | 获取视频列表的视频信息 |
4 | mediaItemIndex | F | - | 视频索引 | 获取当前播放视频索引 |
5 | setMediaItemIndex: | F | 视频索引 | BOOL | 切换视频 |
类方法
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | + setLogReport: | F | BOOL | - | 设置是否开启日志 |
2 | + setLogLevel: | F | 日志级别 | - | 设置日志级别 |
3 | + setLogPath: | F | NSString | - | 设置日志输出路径 |
4 | + logPath | F | - | NSString | 获取日志路径 |
5 | + clearDiskLog | F | - | - | 清除当前路径日志 |
6 | + getSDKVersion | F | - | SDK版本 | 获取SDK版本 |
DRM
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | setPlayerID:key: | F | playerId playerKey |
- | 设置自定义的playerId、playerKey |
2 | setToken: | F | token | - | 设置加密视频的临时token |
水印
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | setWatermark: | F | UIImage | - | 设置水印图片 |
2 | setWatermarkPosition: | F | CGPoint位置 | - | 设置水印位置,布局变化时可能需要重新设置 |
选项
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | setOptionValue:forKey:ofCategory | F | NSString NSString BDCloudMediaPlayerOptionCategory |
- | 设置播放器选项,选项值为字符串。 |
2 | setOptionIntValue:forKey:ofCategory | F | int64_t NSString BDCloudMediaPlayerOptionCategory |
- | 设置播放器选项,选项值为整数值。 |
HLS下载
BDCloudMediaItem
抽象一个离线HLS视频。
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | identify: | P | - | - | 只读。标识(SDK自动生成)。 |
2 | url: | P | - | - | 只读。视频的原始URL。 |
3 | title: | P | - | - | 只读。视频的title。 |
4 | path: | P | - | - | 只读。视频数据保存路径。 |
5 | index: | P | - | - | 只读。可播放文件名。全路径为 path/index |
6 | size: | P | - | - | 只读。数据文件大小。下载完成后有值。 |
7 | status: | P | - | - | 只读。状态。Downloading/Ready/Miss。 |
8 | progress: | P | - | - | 只读。下载进度。 |
BDCloudMediaDownloadTask
抽象一个下载任务。
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | item: | P | - | - | 只读。离线HLS视频相关信息。 |
2 | state: | P | - | - | 只读。任务的状态。Wait/Running/Suspend/Canceled/Failure/Finish |
3 | progress: | P | - | - | 只读。任务下载进度。值与item.progress 一致。 |
BDCloudMediaDownload
下载管理。
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | delegate: | P | - | - | 设置或获取事件代理 |
2 | initWithUser: | F | 用户 | - | 传入用户名进行初始化,事件代理可通过属性设置 |
3 | initWithUser:delegate: | F | 用户 事件代理 |
- | 同时设置用户名、事件代理进行初始化 |
4 | frozen: | F | BOOL是否冻结调度 | - | 设置是否冻结调度 |
5 | mediaItems | F | - | 离线HLS视频信息数组 | 返回所有下载中和完成的离线HLS视频信息 |
6 | removeMediaItem: | F | 离线HLS视频信息 | - | 删除一个离线HLS视频 |
7 | downloadTaskWithURL:title:error: | F | 视频URL 视频title 错误 |
下载任务 | 创建一个下载任务 |
8 | suspendTask: | F | 任务 | - | 挂起任务 |
9 | resumeTask: | F | 任务 | - | 恢复任务 |
10 | cancelTask: | F | 任务 | - | 取消任务(会删除已下载数据) |
11 | resumeUncompletedTasks | F | - | 任务列表 | 查询并返回上次未完成的任务列表 |
12 | stopAllTasks | F | - | - | 停止所有任务 |
13 | clean | F | - | - | 清理已下载的所有数据和目录。调用后此实例将不再可用。 |
BDCloudMediaDownloadDelegate
下载回调事件
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | taskStart: | F | 任务 | - | 任务开始 |
2 | task:needAuthentication: | F | 任务 认证信息存储字典 |
- | 设置任务鉴权信息 可设置 playerId 或token 字段 |
3 | task:progress: | F | 任务 进度 |
- | 任务进度汇报 |
4 | task:speed: | F | 任务 网速 |
- | 任务网速汇报 |
5 | taskEnd:error: | F | 任务 错误 |
- | 任务完成,error为空时表示下载成功 |
缩略图显示
BDCloudSpriteRenderConfiguration
缩略图渲染配置
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 | |
---|---|---|---|---|---|---|
1 | row | P | - | - | 必选。每张雪碧图中缩略图的行数。 | |
2 | column | P | - | - | 必选。每张雪碧图中缩略图的列数。 | |
3 | startTime | P | - | - | 可选。开始时间,默认0 | |
4 | thumbnailDuration | P | - | - | 必选。每个缩率图之间的时间间隔 | |
5 | imageSize | P | - | - | 可选。雪碧图分辨率,默认CGSizeZero | |
6 | margin | P | - | - | 可选。雪碧图边距,默认0 | |
7 | padding | P | - | - | 可选。缩略图间距,默认0 | |
8 | scalingMode | P | - | - | 可选。渲染模式,默认BDCloudSpriteScalingModeNone | |
9 | defaultConfiguration | F | - | 实例 | 初始化方法,并设置默认参数 |
BDCloudSpriteDownloadConfiguration
缩略图下载配置
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | imageList | P | - | - | 必选。多张雪碧图的地址,且有序 |
2 | maxThreadNum | P | - | - | 可选。最大下载线程数,默认1 |
3 | path | P | - | - | 可选。磁盘保存路径,默认临时文件夹,覆盖 |
4 | defaultConfiguration | F | - | 实例 | 初始化方法 |
BDCloudSpriteManager
缩略图显示管理类
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | renderView | P | - | - | 显示缩略图画布 |
2 | status | P | - | - | 下载状态 |
3 | initWithRenderConfig:downloadConfig | F | 渲染配置 下载配置 |
实例 | 初始化方法 |
6 | startDownload: | F | BOOL NSError |
- | 开始下载并回调 |
9 | stopDownload | F | - | - | 结束下载 |
10 | clearCache | F | - | - | 清除磁盘 |
11 | renderTime: | F | NSTimeInterval | - | 显示某时刻缩率图 |
网络视频代理
BDCloudMediaPlayerProtocol
播放器网络代理
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | onEnableIODelegate:url | F | 播放器示例 URL |
0:支持 -1:不支持 |
允许网络代理 |
2 | onOpenPlayer:url: | F | 播放器示例 URL |
0:成功 -1:失败 |
打开视频 |
3 | onReadplayer:url:buffer:size: | F | 播放器示例 URL 视频数据 数据大小 |
int:本次读取的真实数据大小 | 视频数据读取 |
4 | onSeekplayer:url:offset:whence: | F | 播放器示例 URL 偏移量 偏移类型 |
0:成功 -1:失败 |
视频定位 |
5 | onCloseplayer:url: | F | 播放器示例 URL |
0:成功 -1:失败 |
关闭视频 |
6 | onTotalSizePlayer:url: | F | 播放器示例 URL |
int_64:视频总大小 | 视频总大小获取 |
网络视频加速
BDCloudMediaSourceManager
播放器网络视频加速
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | countLimit | p | - | - | 预下载通道数。默认50。 |
2 | sizeLimit | p | - | - | 最大存储空间。默认500M,单位byte。 |
3 | configuration | p | - | - | 下载配置。默认default。 |
4 | readTimeout | p | - | - | 播放过程中网络数据下载超时时间。默认500ms。 |
5 | autoWriteCache | p | - | - | 开启边播边存。默认YES。 |
6 | enableWhenPreDwonloadFail | p | - | - | 预下载失败是否继续走网络库。默认NO。 |
7 | setVideoDuration:duration: | F | 视频网络连接 视频时长 |
- | 设置当前视频的总时长,设置后可加快起播速度。 |
8 | setVideoCacheTime:time | F | 视频网络连接 缓冲时长 |
- | 数据缓冲时间。默认10S。 |
9 | download:size:complete | F | 视频网络连接 预下载大小 成功回调 |
- | 预下载视频一小段,可提升起播速度。 |
10 | downloadCancel: | F | 视频网络连接 | - | 取消预下载。 |
11 | downloadInCache: | F | 视频网络连接 | - | 根据ULR获取视频是否预下载成功。 |
12 | downloadCacheDelete: | F | 视频网络连接 | - | 删除磁盘中下载的资源。 |
13 | downloadCacheDeleteAll: | F | - | - | 删除磁盘中全部下载资源。 |
VR视频播放
BDCloudVRConfiguration
VR视频播放配置信息
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | defaultConfig | F | - | BDCloudVRConfiguration实例 | 默认配置信息实例。 |
2 | setProviderAVPlayerItem: | F | AVPlayerItem | - | 配置VR渲染图像输入源为AVPlayerItem。 |
3 | setProviderImage | F | - | - | 配置VR图像输入源为UIimage图像。 |
4 | setProviderBDCloudMediaPlayerView: viaHardwareAccelerate: |
F | UIView:百度云播放器渲染视图 BOOL:是否硬件解码 |
- | 配置VR图像输入源为百度云播放器渲染视图。 |
5 | setInteractiveMode: | F | 交互模式 | - | 配置VR渲染交互模式。 |
6 | setDisplayMode: | F | 渲染模式 | - | 配置VR渲染渲染模式。 |
7 | setProjectionMode: | F | 资源类型 | - | 配置VR渲染资源类型。 |
8 | setPinchEnabled: | F | BOOL | - | 配置是否允许捏合手势。 |
9 | setRenderOn: | F | UIView | - | 配置VR渲染视图的父视图。 |
BDCloudVRRenderControl
VR视频播放控制
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | renderWithConfig: | F | VR渲染配置实例 | BDCloudVRConfiguration实例 | VR渲染控制实例 |
2 | switchImage: | F | UIImage | - | VR渲染控制实例 |
3 | switchInteractiveMode: | F | 交互模式 | - | 切换交互方式 |
4 | getInteractiveMode | F | - | 交互方式 | 获取当前交互方式 |
5 | switchDisplayMode: | F | 渲染模式 | - | 切换渲染模式 |
6 | getDisplayMode | F | - | 渲染模式 | 获取当前渲染模式 |
7 | switchProjectionMode: | F | 资源类型 | - | 切换资源类型 |
8 | getProjectionMode | F | - | 资源类型 | 获取当前资源类型 |
9 | pause | F | - | - | 暂停VR渲染。 |
10 | resume | F | - | - | 开始VR渲染。 |
动态码率自适应
BDCloudMediaAdaptiveItem
多码率视频信息
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | init:bitrate | F | 视频地址 视频码率 |
BDCloudMediaAdaptiveItem | 多码率视频信息实例 |
2 | contentString | P | - | - | 视频地址 |
3 | bitrate | P | - | - | 视频码率 |
4 | mediaIndex | P | - | - | 播放器索引 |
BDCloudMediaAdaptiveControl
动态码率自适应切换
序号 | 名称 | 类型 | 参数 | 返回值 | 描述 |
---|---|---|---|---|---|
1 | defaultControl | F | - | BDCloudMediaAdaptiveControl | 自适应切换实例 |
1 | setItems: | F | NSArray | - | 设置多码率视频信息 |
1 | setMaxCacheDuration: | F | NSTimeInterval | - | 设置最大缓冲时长 |
1 | setMaxCacheDuration: | F | NSTimeInterval | - | 设置最大缓冲时长 |
1 | setCacheDuration: | F | NSTimeInterval | - | 设置当前缓冲时长 |
1 | setCurrentPlayIndex: | F | NSInterger | - | 设置当前播放索引 |
1 | addLoadSize:loadSpeed | F | 下载数据大小 下载速度 |
- | 更新当前下载速度 |
1 | getPredictBandwidth | F | - | int64_t | 获取预测宽带 |
1 | setMinLoadSizeInAddLoadSpeed | F | int64_t | - | 设置预测宽带的最小下载量 |
1 | setMinLoadDurationInPredictMediaItem | F | int64_t | - | 设置预测切换的最小缓冲时长 |