|
版本:3.1.6
|
|
版本:3.2.0
|
|
|
|
|
|
日期:2018-06-12
|
|
日期:2018-08-27
|
|
|
|
|
|
# 1.概述
|
|
# 1.概述
|
|
iOS点播SDK是适用于iOS平台的云点播SDK。使用此SDK可以与CC视频云服务进行对接,在iOS端使用CC视频的点播功能。
|
|
iOS点播SDK是适用于iOS平台的云点播SDK。使用此SDK可以与CC视频云服务进行对接,在iOS端使用CC视频的点播功能。
|
... | @@ -309,6 +309,12 @@ playerView.delegate =self;//设置代理 |
... | @@ -309,6 +309,12 @@ playerView.delegate =self;//设置代理 |
|
url = "http://1.material.bokecc.com/material/1725A8A9604EAE30/3624.srt";
|
|
url = "http://1.material.bokecc.com/material/1725A8A9604EAE30/3624.srt";
|
|
};
|
|
};
|
|
|
|
|
|
|
|
authvalidate = {
|
|
|
|
enable = 0;
|
|
|
|
freetime = 15;
|
|
|
|
messaage = "\U8bf7\U8d2d\U4e70\U540e\U91cd\U8bd5!";
|
|
|
|
};
|
|
|
|
|
|
vrmode = 0;
|
|
vrmode = 0;
|
|
}
|
|
}
|
|
```
|
|
```
|
... | @@ -325,6 +331,7 @@ playerView.delegate =self;//设置代理 |
... | @@ -325,6 +331,7 @@ playerView.delegate =self;//设置代理 |
|
- videomarks (打点数组) marktime为打点时间 markdesc打点描述
|
|
- videomarks (打点数组) marktime为打点时间 markdesc打点描述
|
|
- questions(问答数组)showTime显示时间 jump能否跳过 content问题及选项(其中{图片URL}) backSecond回退时间 explainInfo解释 right是否正确
|
|
- questions(问答数组)showTime显示时间 jump能否跳过 content问题及选项(其中{图片URL}) backSecond回退时间 explainInfo解释 right是否正确
|
|
- subtitleDic(字幕字典信息) bottom离底部的距离比例 code编码格式 color颜色 font字体(如果没有改字体 则用默认字体) size字体大小 surroundColor背景色 url获取字幕的地址
|
|
- subtitleDic(字幕字典信息) bottom离底部的距离比例 code编码格式 color颜色 font字体(如果没有改字体 则用默认字体) size字体大小 surroundColor背景色 url获取字幕的地址
|
|
|
|
- authvalidate(授权验证字典信息)无此功能的客户返回信息里没有该字段,只有开通了此项功能的客户的返回信息里才有该字段。enable:0代表授权验证不通过,1代表通过 freetime:试看时间 messaage:提示信息
|
|
|
|
|
|
注:视频数据里playurl与spareurl是两个不同的线路 可切换
|
|
注:视频数据里playurl与spareurl是两个不同的线路 可切换
|
|
注:CC视频的播放url具有时效性,你需要在每次播放时请求视频播放信息,以取得最新的视频播放url。
|
|
注:CC视频的播放url具有时效性,你需要在每次播放时请求视频播放信息,以取得最新的视频播放url。
|
... | @@ -378,7 +385,19 @@ playerView.delegate =self;//设置代理 |
... | @@ -378,7 +385,19 @@ playerView.delegate =self;//设置代理 |
|
```
|
|
```
|
|
[playerView resetPlayer];
|
|
[playerView resetPlayer];
|
|
```
|
|
```
|
|
### 4.1.10DWPlayerView的代理方法
|
|
### 4.1.10设置超时时间
|
|
|
|
```
|
|
|
|
//默认30s 譬如设置加载超时时间为20s 20s后视频没加载出来则会回调超时的代理方法 在此方法中可以切换线路等操作
|
|
|
|
playerView.timeOutLoad =20;
|
|
|
|
playerView.timeOutBuffer=20;
|
|
|
|
```
|
|
|
|
### 4.1.11授权验证
|
|
|
|
```
|
|
|
|
//设置了授权验证的客户传值 无此功能的客户无需设置 开通此项功能的客户返回的playurls里含有authvalidate(授权验证字典信息) enable:0代表授权验证不通过 1代表通过 freetime:试看时间 messaage:提示信息
|
|
|
|
playerView.verificationCode =@"xxxxx";
|
|
|
|
```
|
|
|
|
|
|
|
|
### 4.1.12DWPlayerView的代理方法
|
|
```
|
|
```
|
|
/*
|
|
/*
|
|
*
|
|
*
|
... | @@ -400,18 +419,21 @@ playerView.delegate =self;//设置代理 |
... | @@ -400,18 +419,21 @@ playerView.delegate =self;//设置代理 |
|
//duration 当前缓冲的长度
|
|
//duration 当前缓冲的长度
|
|
- (void)videoPlayer:(DWPlayerView *)playerView loadedTimeRangeDidChange:(float)duration;
|
|
- (void)videoPlayer:(DWPlayerView *)playerView loadedTimeRangeDidChange:(float)duration;
|
|
|
|
|
|
//进行跳转后没数据 即播放卡顿
|
|
//没数据 即播放卡顿
|
|
- (void)videoPlayerPlaybackBufferEmpty:(DWPlayerView *)playerView;
|
|
- (void)videoPlayerPlaybackBufferEmpty:(DWPlayerView *)playerView;
|
|
|
|
|
|
// 进行跳转后有数据 能够继续播放
|
|
//有数据 能够继续播放
|
|
- (void)videoPlayerPlaybackLikelyToKeepUp:(DWPlayerView *)playerView;
|
|
- (void)videoPlayerPlaybackLikelyToKeepUp:(DWPlayerView *)playerView;
|
|
|
|
|
|
|
|
//加载超时/scrub超时 此方法中可切换线路等操作
|
|
|
|
- (void)videoPlayer:(DWPlayerView *)playerView receivedTimeOut:(DWPlayerViewTimeOut )timeOut;
|
|
|
|
|
|
//加载失败 此方法中可切换线路
|
|
//加载失败 此方法中可切换线路
|
|
- (void)videoPlayer:(DWPlayerView *)playerView didFailWithError:(NSError *)error;
|
|
- (void)videoPlayer:(DWPlayerView *)playerView didFailWithError:(NSError *)error;
|
|
注:如遇到频繁切换视频请求失败的情况 可在加载失败的代理方法中切换线路 详情参见Demo
|
|
注:如遇到频繁切换视频请求失败的情况 可在加载失败的代理方法中切换线路 详情参见Demo
|
|
```
|
|
```
|
|
|
|
|
|
### 4.1.11字幕显示
|
|
### 4.1.13字幕显示
|
|
```
|
|
```
|
|
//获取字幕信息
|
|
//获取字幕信息
|
|
subtitleDic = {
|
|
subtitleDic = {
|
... | @@ -425,7 +447,7 @@ playerView.delegate =self;//设置代理 |
... | @@ -425,7 +447,7 @@ playerView.delegate =self;//设置代理 |
|
};
|
|
};
|
|
|
|
|
|
```
|
|
```
|
|
### 4.1.12视频广告
|
|
### 4.1.14视频广告
|
|
用户可以获取广告信息,实现片头广告、暂停广告的播放。
|
|
用户可以获取广告信息,实现片头广告、暂停广告的播放。
|
|
```
|
|
```
|
|
//type:@"1"片头广告 @"2"暂停广告
|
|
//type:@"1"片头广告 @"2"暂停广告
|
... | @@ -486,7 +508,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
... | @@ -486,7 +508,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
|
-1:参数错误,-2:该用户未投放广告,-3:该用户无type对应类型的广告位,-4:该用户type类型下无广告,-5:数据查询异常
|
|
-1:参数错误,-2:该用户未投放广告,-3:该用户无type对应类型的广告位,-4:该用户type类型下无广告,-5:数据查询异常
|
|
|
|
|
|
```
|
|
```
|
|
### 4.1.13播放VR视频
|
|
### 4.1.15播放VR视频
|
|
```
|
|
```
|
|
//播放普通视频流程一致 区别是普通视频是放在playerView上,而播放VR视频是可以放在自定义的view上
|
|
//播放普通视频流程一致 区别是普通视频是放在playerView上,而播放VR视频是可以放在自定义的view上
|
|
DWVRConfiguration* config = [DWVRLibrary createConfig];
|
|
DWVRConfiguration* config = [DWVRLibrary createConfig];
|
... | @@ -512,7 +534,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
... | @@ -512,7 +534,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
|
MotionWithTouch模式下时 触摸控制左右,重力感应控制上下
|
|
MotionWithTouch模式下时 触摸控制左右,重力感应控制上下
|
|
具体详情参见Demo。
|
|
具体详情参见Demo。
|
|
```
|
|
```
|
|
### 4.1.14GIF功能
|
|
### 4.1.16GIF功能
|
|
DWGIFManger可以将正在播放的视频做成GIF图,流程为:需要先截取视频 ,再将截取的视频转成GIF图。DWGIFManger开放的API如下:
|
|
DWGIFManger可以将正在播放的视频做成GIF图,流程为:需要先截取视频 ,再将截取的视频转成GIF图。DWGIFManger开放的API如下:
|
|
```
|
|
```
|
|
/**
|
|
/**
|
... | @@ -559,7 +581,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
... | @@ -559,7 +581,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
|
2.在视频将要结束播放的时候做GIF功能时,要计算截取视频的实际时长以及在播放完成的代理方法中暂停该视频,否则可能出现bug
|
|
2.在视频将要结束播放的时候做GIF功能时,要计算截取视频的实际时长以及在播放完成的代理方法中暂停该视频,否则可能出现bug
|
|
以上API使用详情参见demo。
|
|
以上API使用详情参见demo。
|
|
```
|
|
```
|
|
### 4.1.15音频播放功能
|
|
### 4.1.17音频播放功能
|
|
DWAudioPlayer可播放音频
|
|
DWAudioPlayer可播放音频
|
|
```
|
|
```
|
|
//初始化音频播放器
|
|
//初始化音频播放器
|
... | @@ -623,7 +645,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
... | @@ -623,7 +645,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
|
//加载失败
|
|
//加载失败
|
|
- (void)audioPlayer:(DWAudioPlayer *)audioPlayer didFailWithError:(NSError *)error;
|
|
- (void)audioPlayer:(DWAudioPlayer *)audioPlayer didFailWithError:(NSError *)error;
|
|
```
|
|
```
|
|
### 4.1.16视频打点
|
|
### 4.1.18视频打点
|
|
```
|
|
```
|
|
videomarks = (
|
|
videomarks = (
|
|
{
|
|
{
|
... | @@ -638,7 +660,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
... | @@ -638,7 +660,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
|
);
|
|
);
|
|
videomarks (打点数组) marktime为打点时间 markdesc打点描述
|
|
videomarks (打点数组) marktime为打点时间 markdesc打点描述
|
|
```
|
|
```
|
|
### 4.1.17视频问答
|
|
### 4.1.19视频问答
|
|
```
|
|
```
|
|
questions = (
|
|
questions = (
|
|
{
|
|
{
|
... | @@ -666,9 +688,9 @@ videomarks (打点数组) marktime为打点时间 markdesc打点描述 |
... | @@ -666,9 +688,9 @@ videomarks (打点数组) marktime为打点时间 markdesc打点描述 |
|
);
|
|
);
|
|
questions(问答数组)showTime显示时间 jump能否跳过 content问题及选项 backSecond回退时间 explainInfo解释 right是否正确
|
|
questions(问答数组)showTime显示时间 jump能否跳过 content问题及选项 backSecond回退时间 explainInfo解释 right是否正确
|
|
```
|
|
```
|
|
### 4.1.18播放本地音视频文件
|
|
### 4.1.20播放本地音视频文件
|
|
```
|
|
```
|
|
//path本地音视频文件路径
|
|
//path本地音视频文件路径
|
|
NSURL *fileURL =[NSURL fileURLWithPath:path];
|
|
NSURL *fileURL =[NSURL fileURLWithPath:path];
|
|
//音频调用如下:
|
|
//音频调用如下:
|
|
[audioPlayer setAudioURL:fileURL];
|
|
[audioPlayer setAudioURL:fileURL];
|
... | @@ -676,8 +698,9 @@ questions(问答数组)showTime显示时间 jump能否跳过 content问题及选 |
... | @@ -676,8 +698,9 @@ questions(问答数组)showTime显示时间 jump能否跳过 content问题及选 |
|
//视频调用如下:
|
|
//视频调用如下:
|
|
[playerView setURL:fileURL withCustomId:nil];
|
|
[playerView setURL:fileURL withCustomId:nil];
|
|
[playerView play];
|
|
[playerView play];
|
|
|
|
|
|
```
|
|
```
|
|
### 4.1.19视频问答统计
|
|
### 4.1.21视频问答统计
|
|
```
|
|
```
|
|
/**
|
|
/**
|
|
问答统计 有此需求的客户调用 一个问题只发送一次
|
|
问答统计 有此需求的客户调用 一个问题只发送一次
|
... | | ... | |