小程序中 live-player 设置了autoplay ,但是进入页面后拿到远端流 没有触发bindstatechange ,无法自动播放。需要手动将微信置入手机后台,再次进入微信,才可触发statechange事件,(项目中mpvue 写法包装了一下,改造了腾讯云音视频的 webrtc 组件 demo),哪位同学能帮忙定位一下问题,谢谢
1、live-player
<div class="player-box"
<live-player :id=fixPlayId || members[0].userID" autoplay mode="RTC" object-fit="fillCrop" min-cache="0.1" max-cache="0.3"
:src=members[0].accelerateURL" :debug=debug" @statechange=onPlay
</live-player>
</div>
2、js监听事件
//播放器live-player回调
onPlay(e) {
e = e.mp || e
console.log('onPlay code: ', e.detailcode) //这个console 首次进入视频页 没有打印出来
this.members.forEach((val) => {
if ((this.template == 'bigsmall' && e.currentTargetid === this.fixPlayId) || e.currentTargetid == val.userID) {
switch (e.detailcode) {
case 2007: {
console.log'视频播放loading: ', e)
val.loading = true
break
case 2004: {
console.log'视频播放开始: ', e)
val.loading = false
setTimeout(() => {
this.startPlay = true
, 300
break
case 2301: {
console.error'网络连接断开,且重新连接亦不能恢复,播放器已停止播放', val)
this.delPusher(val)
break
default: {
// console.log('拉流情况:', e.detail.code,e.detail.msg);
}
}
})
这个问题后面解决了吗
最近开发 也遇到了这个问题。各位大佬有解决方案嘛?
请问这个问题解决了吗?最近我也碰到了这个问题
你好 请问这个问题解决了吗 ?
您好 webrtc demo是原生小程序写法 是可以的,但是mpvue会编译成原生的,想问一下是不是个人逻辑哪里没有触发 player.play
你好,如果不使用mpvue来处理是否会有这个问题?