ytVideo.vue
2.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<template>
<div class="item">
<div class="player">
<div class="ocx-box">
<object
id="VionVideo"
classid="clsid:96DFBBAF-4220-4978-9681-4ABA534A7718"
width="98%"
height="550"
style="margin-left:.9%"
>
</object>
</div>
</div>
</div>
</template>
<script>
import { mapState } from "vuex";
export default {
data() {
return {};
},
props: ["playurl", "type"],
methods: {
videoPlay: function() {
this.urlFlag = false;
if (!this.playurl.sip_serv_ip) {
let url = this.playurl.rtsp_url;
let ocxPlayRes = document.getElementById("VionVideo").StartPlay(url, 0);
console.log("video Ocx播放rtsp流返回值:", ocxPlayRes);
if (ocxPlayRes != 0) {
alert("播放失败!");
}
} else {
let OcxResponse = document
.getElementById("VionVideo")
.StartPlaySip(
this.playurl.sip_serv_id,
this.playurl.sip_serv_ip,
this.playurl.sip_serv_port,
this.playurl.sip_unid,
this.playurl.sip_password,
this.playurl.devId,
0
);
console.log("video Ocx播放sip流返回值:", OcxResponse);
if (OcxResponse != 0 && OcxResponse != 200) {
alert("播放失败!");
}
}
},
initocx() {
VionVideo.Init(0, "Null", 4);
},
downloadOCx() {
if (navigator.userAgent.indexOf("Trident") > -1) {
this.axios
.get(IP + "/api/v1/device/dlfile", {
params: {
file_type: "video_ocx"
}
})
.then(response => {
location.href = response.data.file_url;
});
} else {
this.$message.error("视频控件加载失败请用IE10及以上版本打开!");
}
},
checkIE() {
var agent = navigator.userAgent.toLowerCase();
if (
/(msie\s|trident.*rv:)([\w.]+)/.test(agent) &&
document.documentMode < 10
) {
this.$message.error("IE 版本过低请升级到IE10级以上版本!");
}
}
},
created() {
this.checkIE();
},
mounted() {
VionVideo.Init(0, "Null", 4);
try {
if (document.getElementById("VionVideo").GetVersion()) {
}
} catch (error) {
this.downloadOCx();
}
},
computed: {
...mapState(["ocxstate"])
},
watch: {},
beforeDestroy: function() {
if (this.videoplayer.techName_ == "Flash" && this.videoplayer.pause) {
this.videoplayer.pause();
}
}
};
</script>
<style lang="stylus" scoped></style>