搜索本产品文档关键词
接口速查
所有文档
menu

智能视频SDK

接口速查

为了便于用户查询,提供播放器、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 任务
认证信息存储字典
- 设置任务鉴权信息
可设置playerIdtoken字段
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 - 设置预测切换的最小缓冲时长
上一篇
高级版功能接入
下一篇
版本更新记录