648540858
2022-08-23 f24b6fa13f5eed916ab09d7807a11c92b186e992
web_src/src/components/dialog/devicePlayer.vue
@@ -4,7 +4,7 @@
    <el-dialog title="视频播放" top="0" :close-on-click-modal="false" :visible.sync="showVideoDialog" @close="close()">
        <!-- <LivePlayer v-if="showVideoDialog" ref="videoPlayer" :videoUrl="videoUrl" :error="videoError" :message="videoError" :hasaudio="hasaudio" fluent autoplay live></LivePlayer> -->
      <div style="width: 100%; height: 100%">
        <el-tabs type="border-card" v-model="activePlayer" @tab-click="changePlayer" v-if="Object.keys(this.player).length > 1">
        <el-tabs type="card" :stretch="true" v-model="activePlayer" @tab-click="changePlayer" v-if="Object.keys(this.player).length > 1">
          <el-tab-pane label="Jessibuca" name="jessibuca">
            <jessibucaPlayer v-if="activePlayer === 'jessibuca'" ref="jessibuca" :visible.sync="showVideoDialog" :videoUrl="videoUrl" :error="videoError" :message="videoError" height="100px" :hasAudio="hasAudio" fluent autoplay live ></jessibucaPlayer>
          </el-tab-pane>
@@ -305,7 +305,12 @@
            };
        }
    },
    created() {},
    created() {
      console.log(this.player)
      if (Object.keys(this.player).length === 1) {
        this.activePlayer = Object.keys(this.player)[0]
      }
    },
    data() {
        return {
            video: 'http://lndxyj.iqilu.com/public/upload/2019/10/14/8c001ea0c09cdc59a57829dabc8010fa.mp4',
@@ -369,7 +374,7 @@
                    url: '/zlm/' +this.mediaServerId+ '/index/api/getMediaInfo?vhost=__defaultVhost__&schema=rtmp&app='+ this.app +'&stream='+ this.streamId
                }).then(function (res) {
                    that.tracksLoading = false;
                    if (res.data.code == 0 && res.data.online) {
                    if (res.data.code == 0 && res.data.tracks) {
                        that.tracks = res.data.tracks;
                    }else{
                        that.tracksNotLoaded = true;
@@ -433,6 +438,7 @@
            this.playFromStreamInfo(false, streamInfo)
        },
        getUrlByStreamInfo(){
            console.log(this.streamInfo)
            if (location.protocol === "https:") {
              this.videoUrl = this.streamInfo[this.player[this.activePlayer][1]]
            }else {
@@ -447,9 +453,9 @@
            this.$refs[this.activePlayer].pause()
            that.$axios({
                method: 'post',
                url: '/api/gb_record/convert/' + that.streamId
                url: '/api/play/convert/' + that.streamId
                }).then(function (res) {
                    if (res.data.code == 0) {
                    if (res.data.code === 0) {
                        that.convertKey = res.data.key;
                        setTimeout(()=>{
                            that.isLoging = false;
@@ -558,10 +564,10 @@
                url: '/api/gb_record/query/' + this.deviceId + '/' + this.channelId + '?startTime=' + startTime + '&endTime=' + endTime
            }).then(function (res) {
                console.log(res)
                that.recordsLoading = false;
                if(res.data.code === 0) {
                  // 处理时间信息
                  that.videoHistory.searchHistoryResult = res.data.data.recordList;
                  that.recordsLoading = false;
                }else {
                  this.$message({
                    showClose: true,
@@ -600,13 +606,21 @@
                    url: '/api/playback/start/' + this.deviceId + '/' + this.channelId + '?startTime=' + row.startTime + '&endTime=' +
                        row.endTime
                }).then(function (res) {
                    var streamInfo = res.data;
                    that.app = streamInfo.app;
                    that.streamId = streamInfo.stream;
                    that.mediaServerId = streamInfo.mediaServerId;
                    that.ssrc = streamInfo.ssrc;
                    that.videoUrl = that.getUrlByStreamInfo(streamInfo);
                    that.recordPlay = true;
                  if (res.data.code === 0) {
                    that.streamInfo = res.data.data;
                    that.app = that.streamInfo.app;
                    that.streamId = that.streamInfo.stream;
                    that.mediaServerId = that.streamInfo.mediaServerId;
                    that.ssrc = that.streamInfo.ssrc;
                    that.videoUrl = that.getUrlByStreamInfo();
                  }else {
                    that.$message({
                      showClose: true,
                      message: res.data.msg,
                      type: "error",
                    });
                  }
                  that.recordPlay = true;
                });
            }
        },