From e1af52fb5eaf0bcac221ba11cc90da7cd50d2895 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期五, 30 九月 2022 15:51:28 +0800
Subject: [PATCH] 更新文档
---
web_src/src/components/dialog/devicePlayer.vue | 185 ++++++++++++++++++++++++++++------------------
1 files changed, 112 insertions(+), 73 deletions(-)
diff --git a/web_src/src/components/dialog/devicePlayer.vue b/web_src/src/components/dialog/devicePlayer.vue
index 85f83f8..4c8f264 100644
--- a/web_src/src/components/dialog/devicePlayer.vue
+++ b/web_src/src/components/dialog/devicePlayer.vue
@@ -119,6 +119,10 @@
<el-tag >RTC:</el-tag>
<span>{{ streamInfo.rtc }}</span>
</el-dropdown-item>
+ <el-dropdown-item :command="streamInfo.rtcs">
+ <el-tag >RTCS:</el-tag>
+ <span>{{ streamInfo.rtcs }}</span>
+ </el-dropdown-item>
<el-dropdown-item :command="streamInfo.rtmp">
<el-tag >RTMP:</el-tag>
<span>{{ streamInfo.rtmp }}</span>
@@ -319,7 +323,9 @@
}
},
created() {
+ console.log("created")
console.log(this.player)
+ this.broadcastStatus = -1;
if (Object.keys(this.player).length === 1) {
this.activePlayer = Object.keys(this.player)[0]
}
@@ -332,7 +338,7 @@
// 濡備綍浣犲彧鏄敤涓�绉嶆挱鏀惧櫒锛岀洿鎺ユ敞閲婃帀涓嶇敤鐨勯儴鍒嗗嵆鍙�
player: {
jessibuca : ["ws_flv", "wss_flv"],
- webRTC: ["rtc", "rtc"],
+ webRTC: ["rtc", "rtcs"],
},
videoHistory: {
date: '',
@@ -386,7 +392,7 @@
if (tab.name === "codec") {
this.$axios({
method: 'get',
- url: '/zlm/' +this.mediaServerId+ '/index/api/getMediaInfo?vhost=__defaultVhost__&schema=rtmp&app='+ this.app +'&stream='+ this.streamId
+ url: '/zlm/' +this.mediaServerId+ '/index/api/getMediaInfo?vhost=__defaultVhost__&schema=rtsp&app='+ this.app +'&stream='+ this.streamId
}).then(function (res) {
that.tracksLoading = false;
if (res.data.code == 0 && res.data.tracks) {
@@ -409,6 +415,9 @@
console.log(this.videoUrl)
},
openDialog: function (tab, deviceId, channelId, param) {
+ if (this.showVideoDialog) {
+ return;
+ }
this.tabActiveName = tab;
this.channelId = channelId;
this.deviceId = deviceId;
@@ -540,9 +549,7 @@
this.stopPlayRecord();
}
this.recordPlay = ''
- if (this.broadcastStatus === 1) {
- this.stopBroadcast()
- }
+ this.stopBroadcast()
},
copySharedInfo: function (data) {
@@ -857,7 +864,12 @@
}).then( (res)=> {
if (res.data.code == 0) {
let streamInfo = res.data.data.streamInfo;
- this.startBroadcast(streamInfo.rtc)
+ if (document.location.protocol.includes("https")) {
+ this.startBroadcast(streamInfo.rtcs)
+ }else {
+ this.startBroadcast(streamInfo.rtc)
+ }
+
}else {
this.$message({
showClose: true,
@@ -867,84 +879,112 @@
}
});
}else if (this.broadcastStatus === 1) {
- this.stopBroadcast()
+ this.broadcastStatus = -1;
+ this.broadcastRtc.close()
}
},
startBroadcast(url){
- // 鑾峰彇鎺ㄦ祦閴存潈KEY
- console.log(this.$loginUser)
- console.log(this.$loginUser.pushKey)
- url += "&sign=" + crypto.createHash('md5').update(this.$loginUser.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)
- // this.broadcastStatus = 1;
- // });
- //
- // webrtcPlayer.on(ZLMRTCClient.Events.WEBRTC_ON_LOCAL_STREAM,(s)=>{// 鑾峰彇鍒颁簡鏈湴娴�
- // this.broadcastStatus = 1;
- // // document.getElementById('selfVideo').srcObject=s;
- // // 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.broadcastRtc.on(ZLMRTCClient.Events.WEBRTC_ICE_CANDIDATE_ERROR,(e)=>{// ICE 鍗忓晢鍑洪敊
- console.error('ICE 鍗忓晢鍑洪敊')
- this.$message({
- showClose: true,
- message: 'ICE 鍗忓晢鍑洪敊',
- type: 'error'
- });
- });
-
- this.broadcastRtc.on(ZLMRTCClient.Events.WEBRTC_OFFER_ANWSER_EXCHANGE_FAILED,(e)=>{// offer anwser 浜ゆ崲澶辫触
- console.error('offer anwser 浜ゆ崲澶辫触',e)
- this.$message({
- showClose: true,
- message: 'offer anwser 浜ゆ崲澶辫触' + e,
- type: 'error'
- });
- });
- this.broadcastRtc.on(ZLMRTCClient.Events.WEBRTC_ON_CONNECTION_STATE_CHANGE,(e)=>{// offer anwser 浜ゆ崲澶辫触
- console.log('鐘舵�佹敼鍙�',e)
- if (e === "connecting") {
- this.broadcastStatus = 0;
- }else if (e === "connected") {
- this.broadcastStatus = 1;
- }else if (e === "disconnected") {
+ // 鑾峰彇鎺ㄦ祦閴存潈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)
+ // this.broadcastStatus = 1;
+ // });
+ //
+ // webrtcPlayer.on(ZLMRTCClient.Events.WEBRTC_ON_LOCAL_STREAM,(s)=>{// 鑾峰彇鍒颁簡鏈湴娴�
+ // this.broadcastStatus = 1;
+ // // document.getElementById('selfVideo').srcObject=s;
+ // // 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_ICE_CANDIDATE_ERROR,(e)=>{// ICE 鍗忓晢鍑洪敊
+ console.error('ICE 鍗忓晢鍑洪敊')
+ this.$message({
+ showClose: true,
+ message: 'ICE 鍗忓晢鍑洪敊',
+ type: 'error'
+ });
+ this.broadcastStatus = -1;
+ });
+
+ this.broadcastRtc.on(ZLMRTCClient.Events.WEBRTC_OFFER_ANWSER_EXCHANGE_FAILED,(e)=>{// offer anwser 浜ゆ崲澶辫触
+ console.error('offer anwser 浜ゆ崲澶辫触',e)
+ this.$message({
+ showClose: true,
+ message: 'offer anwser 浜ゆ崲澶辫触' + e,
+ type: 'error'
+ });
+ this.broadcastStatus = -1;
+ });
+ this.broadcastRtc.on(ZLMRTCClient.Events.WEBRTC_ON_CONNECTION_STATE_CHANGE,(e)=>{// offer anwser 浜ゆ崲澶辫触
+ console.log('鐘舵�佹敼鍙�',e)
+ if (e === "connecting") {
+ this.broadcastStatus = 0;
+ }else if (e === "connected") {
+ this.broadcastStatus = 1;
+ }else if (e === "disconnected") {
+ this.broadcastStatus = -1;
+ }
+ });
+ this.broadcastRtc.on(ZLMRTCClient.Events.CAPTURE_STREAM_FAILED,(e)=>{// offer anwser 浜ゆ崲澶辫触
+ console.log('鎹曡幏娴佸け璐�',e)
+ this.$message({
+ showClose: true,
+ message: '鎹曡幏娴佸け璐�' + e,
+ type: 'error'
+ });
+ this.broadcastStatus = -1;
+ });
}
- });
- this.broadcastRtc.on(ZLMRTCClient.Events.CAPTURE_STREAM_FAILED,(e)=>{// offer anwser 浜ゆ崲澶辫触
- console.log('鎹曡幏娴佸け璐�',e)
+ }).catch((e) => {
this.$message({
showClose: true,
- message: '鎹曡幏娴佸け璐�' + e,
+ message: e,
type: 'error'
});
+ this.broadcastStatus = -1;
});
+
+
},
stopBroadcast(){
- this.broadcastStatus = -2;
- this.broadcastRtc = null;
+ this.broadcastRtc.close();
+ this.broadcastStatus = -1;
this.$axios({
method: 'get',
url: '/api/play/broadcast/stop/' + this.deviceId + '/' + this.channelId
@@ -960,7 +1000,6 @@
});
}
});
-
}
}
};
--
Gitblit v1.8.0