| | |
| | | <div class="v-name-block"> |
| | | <div |
| | | class="video-name" |
| | | :class="{ current: curVideo.ID == video.ID }" |
| | | :class="{ current: curVideo.id == video.id }" |
| | | @click="checkVideo(video, index)" |
| | | v-for="(video, index) in curRoomVideos" |
| | | :key="video.ID" |
| | | :key="video.id" |
| | | > |
| | | <i class="el-icon-film"></i> |
| | | <span>{{ video.VideoDate }}</span> |
| | |
| | | @timeupdate="timeUpdate" |
| | | :source="curVideo.VideoPath | fixPath" |
| | | :markers="curVideo.marks" |
| | | :ref="`player_${curVideo.ID}`" |
| | | :ref="`player_${curVideo.id}`" |
| | | /> |
| | | </div> |
| | | </div> |
| | |
| | | :markers="videoArrs[index].marks" |
| | | @pause="isStop = true" |
| | | @play="isStop = false" |
| | | :ref="`player_${videoArrs[index].ID}`" |
| | | :ref="`player_${videoArrs[index].id}`" |
| | | /> |
| | | </div> |
| | | </template> |
| | |
| | | this.renderLabelOpts(); |
| | | this.setGuid(1); |
| | | this.getCurVideos(this.videoDetails); |
| | | // this.getRelatedVideos(this.videoDetails); |
| | | this.getRelatedVideos(this.videoDetails); |
| | | }, |
| | | destroyed() { |
| | | this.videoArrs.length = 0; |
| | |
| | | playAll() { |
| | | this.showPlayBtn = false; |
| | | if (this.guid == 1) { |
| | | this.$refs[`player_${this.curVideo.ID}`][0].play(); |
| | | this.$refs[`player_${this.curVideo.id}`][0].play(); |
| | | this.maxDuration = this.$refs[ |
| | | `player_${this.curVideo.ID}` |
| | | `player_${this.curVideo.id}` |
| | | ][0].getDuration(); |
| | | } else { |
| | | this.videoArrs.forEach((v) => { |
| | | this.$refs[`player_${v.ID}`][0].play(); |
| | | this.$refs[`player_${v.id}`][0].play(); |
| | | }); |
| | | } |
| | | }, |
| | | pauseAll() { |
| | | this.showPlayBtn = true; |
| | | if (this.guid == 1) { |
| | | this.$refs[`player_${this.curVideo.ID}`][0].pause(); |
| | | this.$refs[`player_${this.curVideo.id}`][0].pause(); |
| | | } else { |
| | | this.videoArrs.forEach((v) => { |
| | | this.$refs[`player_${v.ID}`][0].pause(); |
| | | this.$refs[`player_${v.id}`][0].pause(); |
| | | }); |
| | | } |
| | | }, |
| | |
| | | this.showPlayBtn = false; |
| | | let that = this; |
| | | if (this.guid == 1) { |
| | | this.$refs[`player_${this.curVideo.ID}`][0].pause(); |
| | | this.$refs[`player_${this.curVideo.ID}`][0].seek(val); |
| | | this.$refs[`player_${this.curVideo.id}`][0].pause(); |
| | | this.$refs[`player_${this.curVideo.id}`][0].seek(val); |
| | | // this.$refs[`player_${this.curVideo.ID}`][0].play(); |
| | | setTimeout(() => { |
| | | let curT = that.$refs[ |
| | |
| | | }, 600); |
| | | } else { |
| | | this.videoArrs.forEach((v, i) => { |
| | | this.$refs[`player_${v.ID}`][0].seek(val); |
| | | this.$refs[`player_${v.id}`][0].seek(val); |
| | | // this.$refs[`player_${v.ID}`][0].play(); |
| | | if (i == 0) { |
| | | let curT = this.$refs[`player_${v.ID}`][0].getCurrentTime(); |
| | | let curT = this.$refs[`player_${v.id}`][0].getCurrentTime(); |
| | | } |
| | | }); |
| | | } |
| | |
| | | let curT; |
| | | if (this.guid == 1) { |
| | | curT = Math.floor( |
| | | this.$refs[`player_${this.curVideo.ID}`][0].getCurrentTime() |
| | | this.$refs[`player_${this.curVideo.id}`][0].getCurrentTime() |
| | | ); |
| | | } else { |
| | | curT = Math.floor( |
| | | this.$refs[`player_${this.videoArrs[index].ID}`][0].getCurrentTime() |
| | | this.$refs[`player_${this.videoArrs[index].id}`][0].getCurrentTime() |
| | | ); |
| | | } |
| | | if (curT <= this.curTime) { |
| | |
| | | _this.curCamera = _this.curVideo.CameraPosition; |
| | | |
| | | _this.$nextTick(() => { |
| | | _this.$refs[`player_${_this.curVideo.ID}`][0].init(); |
| | | _this.$refs[`player_${_this.curVideo.id}`][0].init(); |
| | | }); |
| | | // let _this = this; |
| | | // console.log(cmd) |
| | |
| | | CarNumber: v.CarNumber, |
| | | Driver1: v.Driver1, |
| | | }).then((res) => { |
| | | // 填充单窗口的下拉菜单 |
| | | res.data.forEach((item) => { |
| | | _this.popDownArr.push(item); |
| | | }); |
| | | // if (_this.popDownArr.length) { |
| | | // _this.curCamera = _this.popDownArr[0].CameraPosition; |
| | | // } |
| | | |
| | | |
| | | res.data.forEach((item) => { |
| | | item.marks = _this.mergeMarks(item); |
| | | }); |
| | |
| | | |
| | | _this.videoArrs = res.data.filter((item) => v.GroupID == item.GroupID); |
| | | _this.allCurVideos = res.data; |
| | | console.log(_this.allCurVideos); |
| | | _this.curRoomVideos = _this.allCurVideos.filter((item) => { |
| | | return item.CameraPosition.indexOf("司机室") >= 0; |
| | | return item.IsCab == "0"; |
| | | }); |
| | | |
| | | _this.$nextTick(() => { |
| | | _this.$refs[`player_${_this.curVideo.ID}`][0].init(); |
| | | _this.$refs[`player_${_this.curVideo.id}`][0].init(); |
| | | let arr = _this.maxVideoTime.split(":"); |
| | | let min = +arr[1], sec = +arr[2]; |
| | | _this.maxSecond = min * 60 + sec; |
| | |
| | | getRelatedVideos(video) { |
| | | let _this = this; |
| | | getRelatedVideoInfo({ GroupID: video.GroupID }).then((res) => { |
| | | let arr = []; |
| | | let map = {}; |
| | | res.data.forEach((item) => { |
| | | _this.popDownArr.push(item); |
| | | }); |
| | | // _this.popDownArr = res.data |
| | | if (_this.popDownArr.length) { |
| | | _this.curCamera = _this.popDownArr[0].CameraPosition; |
| | | } |
| | | }); |
| | | _this.popDownArr |
| | | }, |
| | | renderLabelOpts() { |
| | | let _this = this; |
| | |
| | | }); |
| | | }, |
| | | refreshCurVideoLabel(video) { |
| | | let _this = this; |
| | | _this.popDownArr = [] |
| | | getRelatedVideoInfo({ GroupID: video.GroupID }).then((res) => { |
| | | res.data.forEach((d) => { |
| | | if (d.ID === video.ID) { |
| | | video.LableLst = d.LableLst; |
| | | res.data.forEach((item) => { |
| | | _this.popDownArr.push(item); |
| | | if (item.ID === video.ID) { |
| | | video.LableLst = item.LableLst; |
| | | } |
| | | }); |
| | | // res.data.forEach((d) => { |
| | | // if (item.ID === video.ID) { |
| | | // video.LableLst = item.LableLst; |
| | | // } |
| | | // }); |
| | | }); |
| | | _this.popDownArr |
| | | }, |
| | | checkVideo(video, index) { |
| | | this.refreshCurVideoLabel(video); |
| | |
| | | (item) => video.GroupID == item.GroupID |
| | | ); |
| | | this.$nextTick(() => { |
| | | this.$refs[`player_${this.curVideo.ID}`][0].init(); |
| | | this.$refs[`player_${this.curVideo.id}`][0].init(); |
| | | }); |
| | | }, |
| | | setGuid(guid) { |
| | |
| | | this.showLocChoise = true; |
| | | } else { |
| | | this.showLocChoise = false; |
| | | this.$refs[`player_${this.curVideo.ID}`][0].pause(); |
| | | this.$refs[`player_${this.curVideo.ID}`][0].seek(0); |
| | | this.$refs[`player_${this.curVideo.id}`][0].pause(); |
| | | this.$refs[`player_${this.curVideo.id}`][0].seek(0); |
| | | } |
| | | this.videoWrapArr = Math.pow(guid, 2); |
| | | this.$nextTick(() => { |
| | |
| | | this.selectedLabelId = ""; |
| | | this.labelDialogVisible = true; |
| | | // 保存点击标注的时间 |
| | | this.setLabelTime = this.$refs[`player_${video.ID}`][0].getCurrentTime(); |
| | | this.setLabelTime = this.$refs[`player_${video.id}`][0].getCurrentTime(); |
| | | }, |
| | | editCurLabel(mark) { |
| | | this.selectedLabelId = mark.ID; |
| | |
| | | }, |
| | | removeCurLabel(mark) { |
| | | let _this = this; |
| | | debugger |
| | | let obj = { |
| | | Desc: mark.Desc, |
| | | ParentUniqID: mark.ParentUniqID, |
| | | Time: mark.Time, |
| | | ParentID: mark.ParentID |
| | | ID: mark.ID, |
| | | VideoIds: mark.VideoIds |
| | | }; |
| | | delLabel(obj).then((rsp) => { |
| | | if (rsp && rsp.success) { |
| | |
| | | }, |
| | | setMarks(video) { |
| | | let marks = this.mergeMarks(video); |
| | | this.$refs[`player_${video.ID}`][0].setProgressMarkers(marks); |
| | | this.$refs[`player_${video.id}`][0].setProgressMarkers(marks); |
| | | }, |
| | | }, |
| | | }; |
| | |
| | | height: 8px; |
| | | width: 6px; |
| | | z-index: 1; |
| | | background-color: lightcoral; |
| | | background-color:yellowgreen ; |
| | | cursor: pointer; |
| | | -webkit-transform: translateX(-50%); |
| | | transform: translateX(-50%); |
| | |
| | | height: 8px; |
| | | width: 6px; |
| | | z-index: 1; |
| | | background-color: yellowgreen; |
| | | background-color: lightcoral; |
| | | cursor: pointer; |
| | | -webkit-transform: translateX(-50%); |
| | | transform: translateX(-50%); |