From 26bdf2e7768ee5dfc400c3970a5aa129fed49453 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期一, 20 三月 2023 15:31:43 +0800 Subject: [PATCH] Merge branch '级联' into main-dev --- web_src/src/components/dialog/devicePlayer.vue | 105 +++++++++++++++++++++++++++------------------------- 1 files changed, 55 insertions(+), 50 deletions(-) diff --git a/web_src/src/components/dialog/devicePlayer.vue b/web_src/src/components/dialog/devicePlayer.vue index 78df785..61cf066 100644 --- a/web_src/src/components/dialog/devicePlayer.vue +++ b/web_src/src/components/dialog/devicePlayer.vue @@ -299,6 +299,10 @@ </el-tab-pane> <el-tab-pane label="璇煶瀵硅" name="broadcast"> + <div style="padding: 0 10px"> + <el-switch v-model="broadcastMode" :disabled="broadcastStatus !== -1" active-color="#409EFF" active-text="鍠婅瘽" + inactive-text="瀵硅"></el-switch> + </div> <div class="trank" style="text-align: center;"> <el-button @click="broadcastStatusClick()" :type="getBroadcastStatus()" :disabled="broadcastStatus === -2" circle icon="el-icon-microphone" style="font-size: 32px; padding: 24px;margin-top: 24px;"/> @@ -390,6 +394,7 @@ recordStartTime: 0, showTimeText: "00:00:00", streamInfo: null, + broadcastMode: true, broadcastRtc: null, broadcastStatus: -1, // -2 姝e湪閲婃斁璧勬簮 -1 榛樿鐘舵�� 0 绛夊緟鎺ラ�� 1 鎺ラ�氭垚鍔� }; @@ -648,7 +653,7 @@ // 鍙戣捣璇煶瀵硅 this.$axios({ method: 'get', - url: '/api/play/broadcast/' + this.deviceId + '/' + this.channelId + "?timeout=30" + url: '/api/play/broadcast/' + this.deviceId + '/' + this.channelId + "?timeout=30&broadcastMode=" + this.broadcastMode }).then( (res)=> { if (res.data.code == 0) { let streamInfo = res.data.data.streamInfo; @@ -658,46 +663,46 @@ this.startBroadcast(streamInfo.rtc) } - }else { - this.$message({ - showClose: true, - message: res.data.msg, - type: "error", - }); - } - }); - }else if (this.broadcastStatus === 1) { - this.broadcastStatus = -1; - this.broadcastRtc.close() - } - }, - startBroadcast(url) { - // 鑾峰彇鎺ㄦ祦閴存潈Key - this.$axios({ - method: 'post', - url: '/api/user/userInfo', - }).then((res) => { - if (res.data.code !== 0) { - this.$message({ - showClose: true, - message: "鑾峰彇鎺ㄦ祦閴存潈Key澶辫触", - type: "error", - }); - this.broadcastStatus = -1; - } else { - let pushKey = res.data.data.pushKey; - // 鑾峰彇鎺ㄦ祦閴存潈KEY - url += "&sign=" + crypto.createHash('md5').update(pushKey, "utf8").digest('hex') - console.log("寮�濮嬭闊冲璁诧細 " + url) - this.broadcastRtc = new ZLMRTCClient.Endpoint({ - debug: true, // 鏄惁鎵撳嵃鏃ュ織 - zlmsdpUrl: url, //娴佸湴鍧� - simulecast: false, - useCamera: false, - audioEnable: true, - videoEnable: false, - recvOnly: false, - }) + }else { + this.$message({ + showClose: true, + message: res.data.msg, + type: "error", + }); + } + }); + }else if (this.broadcastStatus === 1) { + this.broadcastStatus = -1; + this.broadcastRtc.close() + } + }, + startBroadcast(url){ + // 鑾峰彇鎺ㄦ祦閴存潈Key + this.$axios({ + method: 'post', + url: '/api/user/userInfo', + }).then( (res)=> { + if (res.data.code !== 0) { + this.$message({ + showClose: true, + message: "鑾峰彇鎺ㄦ祦閴存潈Key澶辫触", + type: "error", + }); + this.broadcastStatus = -1; + }else { + let pushKey = res.data.data.pushKey; + // 鑾峰彇鎺ㄦ祦閴存潈KEY + url += "&sign=" + crypto.createHash('md5').update(pushKey, "utf8").digest('hex') + console.log("寮�濮嬭闊冲枈璇濓細 " + url) + this.broadcastRtc = new ZLMRTCClient.Endpoint({ + debug: true, // 鏄惁鎵撳嵃鏃ュ織 + zlmsdpUrl: url, //娴佸湴鍧� + simulecast: false, + useCamera: false, + audioEnable: true, + videoEnable: false, + recvOnly: false, + }) // webrtcPlayer.on(ZLMRTCClient.Events.WEBRTC_ON_REMOTE_STREAMS,(e)=>{//鑾峰彇鍒颁簡杩滅娴侊紝鍙互鎾斁 // console.error('鎾斁鎴愬姛',e.streams) @@ -710,15 +715,15 @@ // // this.eventcallbacK("LOCAL STREAM", "鑾峰彇鍒颁簡鏈湴娴�") // }); - this.broadcastRtc.on(ZLMRTCClient.Events.WEBRTC_NOT_SUPPORT, (e) => {// 鑾峰彇鍒颁簡鏈湴娴� - console.error('涓嶆敮鎸亀ebrtc', e) - this.$message({ - showClose: true, - message: '涓嶆敮鎸亀ebrtc, 鏃犳硶杩涜璇煶瀵硅', - type: 'error' - }); - this.broadcastStatus = -1; - }); + this.broadcastRtc.on(ZLMRTCClient.Events.WEBRTC_NOT_SUPPORT,(e)=>{// 鑾峰彇鍒颁簡鏈湴娴� + console.error('涓嶆敮鎸亀ebrtc',e) + this.$message({ + showClose: true, + message: '涓嶆敮鎸亀ebrtc, 鏃犳硶杩涜璇煶鍠婅瘽', + type: 'error' + }); + this.broadcastStatus = -1; + }); this.broadcastRtc.on(ZLMRTCClient.Events.WEBRTC_ICE_CANDIDATE_ERROR, (e) => {// ICE 鍗忓晢鍑洪敊 console.error('ICE 鍗忓晢鍑洪敊') -- Gitblit v1.8.0