簡單
簡單
  • 发布:2021-02-24 11:48
  • 更新:2022-08-23 17:58
  • 阅读:923

live-pusher小程序端推流, this.context.start方法进不去

分类:uni-app
uniapp在小程序端开发一个直播功能,用推流拉流方法,推流功能无效 <template> <view class="content"> <video src="rtmp://192.168.1.112/live/zfy" style="width: 100vw;height: 400rpx;" :autoplay="true" controls></video> <view> <live-pusher id="livePusher" ref="livePusher" class="livePusher" url="rtmp://192.168.1.112/live/zfy" mode="SD" muted="true" enable-camera="true" auto-focus="true" beauty="1" whiteness="2"
aspect="9:16"
@statechange="statechange"
@netstatus="netstatus"
@error="error"
></live-pusher>
<button class="btn" @click="start">开始推流</button>
<button class="btn" @click="pause">暂停推流</button>
<button class="btn" @click="resume">resume</button>
<button class="btn" @click="stop">停止推流</button>
<button class="btn" @click="snapshot">快照</button>
<button class="btn" @click="startPreview">开启摄像头预览</button>
<button class="btn" @click="stopPreview">关闭摄像头预览</button>
<button class="btn" @click="switchCamera">切换摄像头</button>
<button class="btn" @click="bofang">去播放</button>
</view>
</view>
</template>

<script>
export default {
data() {
return {
context:[]
};
},
onReady() {
// 注意:需要在onReady中 或 onLoad 延时
this.context = uni.createLivePusherContext('livePusher', this);
},
methods: {
statechange(e) {
console.log('statechange:' + JSON.stringify(e));
},
netstatus(e) {
console.log('netstatus:' + JSON.stringify(e));
},
error(e) {
console.log('error:' + JSON.stringify(e));
},
start(){
console.log('start',this.context);
this.context.start({
success: a => {
console.log('livePusher.start:' + JSON.stringify(a));
},
fail:err=>{
console.log(err)
}
});
},
close() {
this.context.close({
success: a => {
console.log('livePusher.close:' + JSON.stringify(a));
}
});
},
snapshot() {
this.context.snapshot({
success: e => {
console.log(JSON.stringify(e));
}
});
},
resume() {
this.context.resume({
success: a => {
console.log('livePusher.resume:' + JSON.stringify(a));
}
});
},
pause() {
this.context.pause({
success: a => {
console.log('livePusher.pause:' + JSON.stringify(a));
}
});
},
stop() {
this.context.stop({
success: a => {
console.log(JSON.stringify(a));
}
});
},
switchCamera() {
this.context.switchCamera({
success: a => {
console.log('livePusher.switchCamera:' + JSON.stringify(a));
}
});
},
startPreview() {
console.log('startPreview');
this.context.startPreview({
success: a => {
console.log('livePusher.startPreview:' + JSON.stringify(a));
},
fail:err=>{
console.log(err)
}
});
},
stopPreview() {
this.context.stopPreview({
success: a => {
console.log('livePusher.stopPreview:' + JSON.stringify(a));
}
});
},
bofang(){
this.$u.route({
url: 'pages/index/index'
})
}
}
};
</script>

<style>
.content {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}

.logo {
height: 200rpx;
width: 200rpx;
margin-top: 200rpx;
margin-left: auto;
margin-right: auto;
margin-bottom: 50rpx;
}

.text-area {
display: flex;
justify-content: center;
}

.title {
font-size: 36rpx;
color: #8f8f94;
}
</style>

2021-02-24 11:48 负责人:无 分享
已邀请:
kkk1233211

kkk1233211

解决了吗

小枫叶

小枫叶 - 外包接单加v:wlmk1234567 注明来意

demo给个看看行不

月光杯

月光杯

我也遇到了同样的问题 ,回调函数都没执行 。解决办法:live-pusher 组件在没拿到推流地址之前 通过v-if隐藏 拿到后再设为true

要回复问题请先登录注册