添加iframe监控

master
ihzero 2023-12-31 10:20:42 +08:00
parent f6f3e8197d
commit 0dbf8623f0
2 changed files with 69 additions and 62 deletions

View File

@ -1,6 +1,9 @@
<template> <template>
<view class="h-full w-full"> <view class="h-full w-full">
<div ref="muiPlayer"></div> <iframe class="w-full h-full" v-if="type=='iframe'" :src="url"></iframe>
<div ref="muiPlayer" v-else>
</div>
</view> </view>
</template> </template>
<script> <script>
@ -23,73 +26,77 @@ export default {
}, },
methods: { methods: {
videoPlayer() { videoPlayer() {
let parse = {} if (this.type == 'iframe') {
if (this.type == 'm3u8') { console.log("=====");
parse = {
type: 'hls',
loader: Hls,
config: {
debug: false,
},
}
} else { } else {
parse = { let parse = {}
type: 'flv', if (this.type == 'm3u8') {
loader: Flv, parse = {
config: { type: 'hls',
debug: false, loader: Hls,
}, config: {
debug: false,
},
}
} else {
parse = {
type: 'flv',
loader: Flv,
config: {
debug: false,
},
}
} }
} this.mp = new MuiPlayer({
this.mp = new MuiPlayer({ container: this.$refs.muiPlayer,
container: this.$refs.muiPlayer, live: true,
live: true, src: this.url,
src: this.url, autoplay: true,
autoplay: true, muted: true,
muted: true, parse: parse,
parse: parse, pageHead: false,
pageHead: false, width: '100%',
width: '100%', height: '100%',
height: '100%', autoFit: false,
autoFit:false, objectFit: 'contain',
objectFit: 'contain', videoAttribute: [
videoAttribute: [
{
attrKey: 'webkit-playsinline',
attrValue: 'webkit-playsinline',
},
{
attrKey: 'playsinline',
attrValue: 'playsinline',
},
{
attrKey: 'x5-video-player-type',
attrValue: 'h5-page',
},
],
custom: {
footerControls: [
{ {
style: {}, attrKey: 'webkit-playsinline',
attrValue: 'webkit-playsinline',
},
{
attrKey: 'playsinline',
attrValue: 'playsinline',
},
{
attrKey: 'x5-video-player-type',
attrValue: 'h5-page',
}, },
], ],
}, custom: {
}) footerControls: [
let _video = this.mp.video() {
style: {},
this.$nextTick(() => { },
this.mp.on('ready', (event) => { ],
_video.play() },
_video.addEventListener('play', (e) => { })
// let _video = this.mp.video()
this.$emit('onPlayFn')
}) this.$nextTick(() => {
_video.addEventListener('ended', (e) => { this.mp.on('ready', (event) => {
// _video.play()
this.$emit('onEndedFn') _video.addEventListener('play', (e) => {
//
this.$emit('onPlayFn')
})
_video.addEventListener('ended', (e) => {
//
this.$emit('onEndedFn')
})
}) })
}) })
}) }
}, },
}, },
} }

View File

@ -1,5 +1,5 @@
<template> <template>
<view> <view class="h-full w-full">
<LiveVideo <LiveVideo
v-if="address" v-if="address"
:key="address" :key="address"