在使用live-player组件,进行连接摄像头播放真机调试时,状态码总报2103和-2301,如下图所示:
加载live-player的index.wxml页面代码如下:
点击播放按钮,进行获取视频流播放地址并进行播放,播放代码如下:
获取到的流地址如下:https://218.245.5.239:6014/openUrl/vsigLaUTH0cf581c17f1cee4baca8fa6/live.flv
此地址在vlc播放器中能正常播放。但是在小程序中就报2103,如上所述,想问,这是什么原因,怎么解决。是否需要在小程序域名中添加流地址的配置;目前服务器域名配置如下:
是否还需要在小程序的项目app.json文件中配置相应插件,
"plugins": {
"live-player-plugin": {
"version": "1.3.0",
"provider": "wx2b03c6e691cd7370"
}
},
但是进行上述配置后项目编译中报错。
针对此问题该如何解决,请给予技术支持,谢谢

控制台完整截图:
2.播放器初始化参数:
<live-player id="player" src="{{currentUrl}}" mode="RTC" autoplay bindstatechange="statechange" binderror="error" style="width: 300px; height: 225px;" object-fit="fillCrop"/>
3.微信版本以及基础库版本见1截图右边部分
4.页面代码index.wxml以及index.js代码如下:
index.wxml如下:
<view class="page-body"> <view class="page-section tc"> <live-player id="player" src="{{currentUrl}}" mode="RTC" autoplay bindstatechange="statechange" binderror="error" style="width: 300px; height: 225px;" object-fit="fillCrop"/> <view class="btn-area"> <button bindtap="bindPlay" class="page-body-button" type="primary">播放</button> <button bindtap="bindPause" class="page-body-button" type="primary">暂停</button> <button bindtap="bindStop" class="page-body-button" type="primary">停止</button> <button bindtap="bindResume" class="page-body-button" type="primary">恢复</button> <button bindtap="bindMute" class="page-body-button" type="primary">静音</button> </view> </view> </view>index.js代码如下:
import {getPreviewURLs } from '../../utils/api'; const app = getApp(); Page({ data: { currentUrl: '', }, onReady(res) { this.ctx = wx.createLivePlayerContext('player') }, statechange(e) { console.log('live-player code:', e.detail.code) }, error(e) { console.error('live-player error:', e.detail.errMsg) }, async bindPlay() { // 获取播放地址 const result = await getPreviewURLs({ userId: app.globalData.user.id, token: app.globalData.user.token, indexCode: "5ed1330de1404f3786ff1e5ba0ba9742" }); console.log(result.data.url) // 更新状态 this.setData({ currentUrl: result.data.url, }); this.ctx.play({ success: res => { console.log('play success') }, fail: res => { console.log(res); console.log('play fail') } }) }, bindPause() { this.ctx.pause({ success: res => { console.log('pause success') }, fail: res => { console.log('pause fail') } }) }, bindStop() { this.ctx.stop({ success: res => { console.log('stop success') }, fail: res => { console.log('stop fail') } }) }, bindResume() { this.ctx.resume({ success: res => { console.log('resume success') }, fail: res => { console.log('resume fail') } }) }, bindMute() { this.ctx.mute({ success: res => { console.log('mute success') }, fail: res => { console.log('mute fail') } }) } }) 注,能否人工沟通,目前不知道问题出现在哪里,服务端支持http-flv协议,视频服务器证书使用的是数字证书: