获取record_id、access_token

获取record_id、access_token

对接流程

1: 创建VodPlayer

SDK 中的 VHVodPlayer 模块负责实现直播播放功能。

VHVodPlayer _vodPlayer = [[VHVodPlayer alloc] init];

2: 设置 渲染View、delegate

  • delegate 设置播放器代理
  • 接下来我们要给播放器的视频画面找个地方来显示,iOS系统中使用 view 作为基本的界面渲染单位,所以您只需要准备一个 view 并调整好布局就可以了。
    _vodPlayer.delegate = self;
    _vodPlayer.view.frame = self.view.bounds;
    [self.view insertSubview:_vodPlayer.view atIndex:0];

3: 开始播放

  • recordId 点播id 可以通过调用 api 创建
  • accessToken 可以通过调用 api 获得
    NSString* recordId = @"lss_xxxxxx";
    NSString* accessToken = @"xxxxxxxxxx";
    [_vodPlayer startPlay:recordId accessToken:accessToken];

4: 画面调整

_vodPlayer.scalingMode = VHPlayerScalingModeAspectFit;

可选值 含义
VHPlayerScalingModeFill 将图像拉伸填充
VHPlayerScalingModeAspectFit 将图像等比例缩放,适配最长边,缩放后的宽和高都不会超过显示区域,居中显示,画面可能会留有黑边
VHVPlayerScalingModeAspectFill 将图像等比例铺满整个屏幕,多余部分裁剪掉,此模式下画面不会留黑边,但可能因为部分区域被裁剪而显示不全

5: 清晰度切换

_vodPlayer.curDefinition = VHDefinitionOrigin;

可选值 含义
VHDefinitionOrigin 原画
VHDefinitionUHD 超高清
VHDefinitionHD 高清
VHDefinitionSD 标清
VHDefinitionAudio 纯音频

6: 暂停/恢复播放

// 暂停
[_vodPlayer pause];
// 恢复
[_vodPlayer resume];

7: 结束播放

结束当前直播,播放器资源并未释放

[_vodPlayer stopPlay];

8: 销毁播放器

释放播放器资源

[_vodPlayer destroyPlayer];

事件处理

  • 推流状态监听 SDK 通过 VHPlayerDelegate 代理来监听推流相关的事件
状态 含义
VHPlayerStatusLoading 加载中
VHPlayerStatusPlaying 播放中
VHPlayerStatusStop 停止播放
VHPlayerStatusPause 播放暂停