Uniapp은 라이브 스트리밍을 구현합니다. 먼저 스트림을 푸시하고 코드는 []입니다. 그런 다음 비디오 태그를 사용하여 끌어오기를 수행합니다. 그냥 흘러가세요.
이 튜토리얼의 운영 환경: windows7 시스템, uni-app2.5.1 버전, Dell G3 컴퓨터.
uniapp의 라이브 방송 구현 방법:
1. 푸시 스트리밍
<template> <view class="content"> <template> <view> <live-pusher id="livePusher" ref="livePusher" class="livePusher" url="" **这里需要请求后端接口,拿到推流地址** 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> </template> </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(){ this.context.start({ success: a => { console.log('livePusher.start:' + JSON.stringify(a)); }, error: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() { this.context.startPreview({ success: a => { console.log('livePusher.startPreview:' + JSON.stringify(a)); } }); }, 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> **
2. 풀 스트리밍
다음은 비디오 태그를 사용하여 스트림을 가져오는 앱입니다. 코드는 다음과 같습니다
<template> <view> <video src="" style="width: 100vw;height: 400rpx;" :autoplay="true" controls></video> </view> </template> <script> export default {} </script>
src
는 요청 인터페이스입니다. 획득한 스트리밍 주소
관련 무료 학습 권장사항: php 프로그래밍(동영상)
추천(무료): uni-app development tutorial
위 내용은 uniapp이 라이브 방송을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!