全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
视频直播

SDK 集成步骤

更新时间:2017-10-21 10:29:07

开发环境配置

  1. XCode创建一个iOS应用工程,将SDK中的framework添加到工程中,如图:

    xcode创建工程

  2. 在General-Embedded Binaries 单击 + 号后出现:

    阿里云播放器SDK提供的是动态库,请按照上图动态库的添加方式添加SDK。

    xcode创建工程

  3. 单击 Add Other…,选中 AliyunPlayerSDK.framework

    xcode创建工程

  4. 单击 Open

    xcode创建工程

  5. 单击 Finish 完成framework的添加。

    xcode创建工程

  6. 将SDK中的头文件AliyunPlayerSDK.h包含到工程中。

  7. 将bundle文件,添加到工程中。

    paas_02

    paas_03

开发接入

步骤 1. 初始化播放器
  1. -(void) playVideo
  2. {
  3. //初始化播放器的类
  4. player = [[AliVcMediaPlayer alloc] init];
  5. //播放器倍数播放,支持0.5~2倍数播放,创建播放器后设置参数,在播放过程中可更新倍数播放数值;默认倍数播放值是1(正常播放速度)。
  6. player.playSpeed = 1;
  7. //创建播放器,传入显示窗口
  8. [player create:mShowView];
  9. //注册准备完成通知
  10. [[NSNotificationCenter defaultCenter] addObserver:self
  11. selector:@selector(OnVideoPrepared:) name:AliVcMediaPlayerLoadDidPreparedNotification object:player];
  12. //注册错误通知
  13. [[NSNotificationCenter defaultCenter] addObserver:self
  14. selector:@selector(OnVideoError:) name:AliVcMediaPlayerPlaybackErrorNotification object:player];
  15. //传入播放地址,准备播放
  16. [player prepareToPlay:mUrl];
  17. //开始播放
  18. [player play];
  19. }
步骤 2. 添加视频播放列表
  1. //将需要播放的视频添加到视频列表中
  2. //如果需要播放本地视频,则将本地视频拷贝到应用程序的Document目录下即可
  3. -(void) addVideoToList
  4. {
  5. //按照如下格式进行添加,videoName是在列表中显示的名字
  6. [videolists setObject:@"http://yourVideoAddress.m3u8" forKey:@"videoName"];
  7. }

播放器可配置参数与可选功能

配置参数 用途描述
timeout 设置网络超时断开链接的时间
dropBufferDuration 设置直播过程中缓冲区视频丢帧的起始时间,若缓冲区中视频帧的时长超过这个值,则开始丢帧操作。设置这个参数可以控制直播延时的长度,参数值越小则直播的延迟越小。

除了上述可配置的功能和参数,AlivcMediaPlayer还定义了播放器的事件状态通知和错误代码,以方便开发者掌握播放器的运行状态。

  1. -(void) OnVideoPrepared:(NSNotification *)notification
  2. {
  3. //收到完成通知后,获取视频的相关信息,更新界面相关信息
  4. [self.playSlider setMinimumValue:0];
  5. [self.playSlider setMaximumValue:player.duration];
  6. }
  7. -(void)OnVideoError:(NSNotification *)notification
  8. {
  9. AliVcMovieErrorCode error_code = player.errorcode;
  10. }

若需要了解上述功能和接口的详细用法,请参照 接口说明

本文导读目录