最近在做一个有关直播的项目,因为也是第一次接触,中途踩了很多坑。那现在就把踩得坑还有解决方案分享给大家。
1.在vlc测试流没问题,但是小程序端显示拉流失败(拉流失败状态码查看文档)
解决方案:因为做小程序直播需要企业认证,你需要确保你的公司有开直播的权限,并且在开发设置中打开直播权限。
2.在小程序端显示拉流没有问题,状态码也表示开始播放,但直播却一直黑屏,或偶尔闪退。
解决方案:出现这个问题一般是两个问题--------A.视频流有问题。这个问题可以用别的视频流测试一下。
B.小程序生命周期问题。小程序 Page 生命周期,onLoad
只做数据加载还未做页面渲染,此时 <live-pusher>、<live-player> 标签还未创建完成,获取或者调用 livepushercontext
、liveplayercontext
的方法行为不确定。onReady
表示页面已经加载,完成初次渲染,跟 <live-pusher>、<live-player> 标签相关的操作都需要放在 onReady
里面实现。
代码贴上:
onReady: function () {
var self = this;
this.data.videoContext = wx.createLivePlayerContext("video-livePlayer");
this.setData({
playUrl: "rtmp:你的视频流地址",
}, function () {
self.data.videoContext.stop();
self.data.videoContext.play();
})
},
3.其实一般视频流的问题都是推流出现的问题,有可能是因为分辨率,有可能因为编码格式,这个需要与推流技术人员沟通。
(大家有什么关于这样的问题可以私信我,我尽量解决🐷)