From 36cd31d69d451072e00ff1dd1928a61753aa5a97 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期一, 19 十月 2020 14:25:41 +0800
Subject: [PATCH] 修复ui开启音频无法播放的bug 修复可能导致录象查看的bug 修复开启openRTPServer时的bug

---
 web_src/src/components/gb28181/devicePlayer.vue |   40 +++++++++++++++++++++-------------------
 1 files changed, 21 insertions(+), 19 deletions(-)

diff --git a/web_src/src/components/gb28181/devicePlayer.vue b/web_src/src/components/gb28181/devicePlayer.vue
index e193d7c..18a8d51 100644
--- a/web_src/src/components/gb28181/devicePlayer.vue
+++ b/web_src/src/components/gb28181/devicePlayer.vue
@@ -1,7 +1,7 @@
 <template>
 	<div id="devicePlayer">
-		<el-dialog title="瑙嗛鎾斁" top="0" :visible.sync="showVideoDialog" :destroy-on-close="true" @close="stop()">
-      <LivePlayer v-if="showVideoDialog" ref="videoPlayer" :videoUrl="videoUrl" :error="videoError" fluent autoplay live stretch></LivePlayer>
+		<el-dialog title="瑙嗛鎾斁" top="0" :visible.sync="showVideoDialog" :destroy-on-close="true" @close="close()">
+      <LivePlayer v-if="showVideoDialog" ref="videoPlayer" :videoUrl="videoUrl" :error="videoError" :hasaudio="hasaudio" fluent autoplay live ></LivePlayer>
 			<div id="shared" style="text-align: right; margin-top: 1rem;">
 				<el-tabs v-model="tabActiveName">
 					<el-tab-pane label="濯掍綋娴佷俊鎭�" name="media">
@@ -114,37 +114,39 @@
 				ssrc: '',
 				deviceId: '',
 				channelId: '',
-				tabActiveName: 'media'
+				tabActiveName: 'media',
+        hasaudio: false
+
 			};
 		},
 		methods: {
 
-			play: function(streamInfo, deviceId, channelId) {
+			play: function(streamInfo, deviceId, channelId, hasAudio) {
+        this.hasaudio = hasAudio;
+        // 鏍规嵁濯掍綋娴佷俊鎭簩娆″垽鏂�
+        if( this.hasaudio && !!streamInfo.tracks && streamInfo.tracks.length > 0) {
+          var realHasAudio = false;
+          for (let i = 0; i < streamInfo.tracks; i++) {
+            if (streamInfo.tracks[i].codec_type == 1) { // 鍒ゆ柇涓洪煶棰�
+              realHasAudio = true;
+            }
+          }
+          this.hasaudio = realHasAudio && this.hasaudio;
+        }
         this.ssrc = streamInfo.ssrc;
 				this.deviceId = deviceId;
 				this.channelId = channelId;
-				this.videoUrl = streamInfo.flv + "?" + new Date().getTime();
+        // this.$refs.videoPlayer.hasaudio = hasAudio;
+				// this.videoUrl = streamInfo.flv + "?" + new Date().getTime();
+				this.videoUrl = streamInfo.ws_flv;
 				this.showVideoDialog = true;
 				console.log(this.ssrc);
 			},
-			stop: function() {
+			close: function() {
 				console.log('鍏抽棴瑙嗛');
 				this.$refs.videoPlayer.pause();
 				this.videoUrl = '';
 				this.showVideoDialog = false;
-				this.$axios({
-					method: 'post',
-					url: '/api/play/' + this.ssrc + '/stop'
-				}).then(function(res) {
-					console.log(JSON.stringify(res));
-				});
-
-				this.$axios({
-					method: 'post',
-					url: '/api/playback/' + this.ssrc + '/stop'
-				}).then(function(res) {
-					console.log(JSON.stringify(res));
-				});
 			},
 			copySharedInfo: function(data) {
 				console.log('澶嶅埗鍐呭锛�' + data);

--
Gitblit v1.8.0