火山引擎vePlayer-直播流监控。同理大家参考思路应用在腾讯TRTC播放器-直播监控和阿里云播放器-直播监控

471 阅读2分钟

大家感觉有用的话,麻烦点赞收藏一下。也是踩坑踩出来的。

目标:50个直播流同时渲染,保证视频流播放正常。

代码在最后面,重点是

1. 视频流为 m3u8格式。(如果服务端传递回flv地址,大家自己replace一下后缀就可以了)

'xxxxx.flv'.replace('flv', 'm3u8')

2. 创建实例时,定义isLive为false。m3u8在播放完毕后会自动去重新请求。

此时运营同学的台式小电脑就可以拉取6/7个直播流,保证流畅运行七八分钟。

3. 把播放速度 defaultPlaybackRate 调制0.75倍播放。

这一步操作,是考虑到运营同学电脑浏览器的渲染问题。所以沟通后将视频播放速度降低

现在可以保证流畅播放小二十分钟但是会出现直播流异常错误。(断流居多)

4. 去火山引擎控制台(没有权限的同学,去找项目组长)

控制台->视频直播->功能配置->点击添加配置 将官方提供的 ‘可选转码’ 选上,点击确定。(重点要的是流畅)

控制台-功能配置.png

5. 配置 playList 。(必须执行第四步)

这一步就是配置视频清晰度。也可以跟第一步一样对服务端同学返回的直播流地址进行处理拼接成我们想要的样子。

下面就是全部的代码。你可以自己去封装成一个类,或者在一个方法里循环调用。

const player = = new VePlayer({
    'isLive': false, // 是否为直播流
    'id': 'dom容器id',
    'lang': 'zh', // 语言选择列表
    'volume': 0, // 音量
    'defaultPlaybackRate': 0.75, // 播放速度
    'playList': [
      {
        url: '视频流地址',
        definition: 'id', //清晰度
        definitionTextKey: 'LD'
      }
    ],
    'autoplay': true, // 是否自动播放
    'loop': false // 是否开启循环播放
})

大家如果有用火山引擎Veplayer的。发现有问题的地方就去找火山的官方。公司买了引擎,肯定会有一个微信沟通群,你早点提出问题,他们就能早点处理,大家也就更加方便。好家伙,我第一次用,看他文档去监听函数,监听视频流的所有错误信息。结果回调函数返回的竟然是undefind