1. 下载flv.js包
npm i flv.js -S
2. 引入flv.js包
import flv from 'flv.js'
3. HTML部分
<video ref="myVideo" autoplay muted controls/>
4. script部分
创建一个Player实例,它接收一个MediaDataSource(必选), 一个Config(可选) flvjs.createPlayer(mediaDataSource: MediaDataSource, config?: Config)
export default {
data() {
return {
player: null,
}
},
created() {
if (flv.isSupported()) {
this.player = flv.createPlayer({
type: 'flv',
isLive: true,
url: 'https://api.tjdataspace.com/flv.flv'
}, {
enableWorker: true,
enableStashBuffer: false,
stashInitialSize: 128,
}
);
}
},
mounted() {
this.player.attachMediaElement(this.$refs.myVideo);
this.player.load();
this.player.play();
setInterval(() => {
if (!this.player.buffered.length) {return;}
let end = this.player.buffered.end(0);
let diff = end - this.player.currentTime;
if (diff >= 1.5) { //延时如果大于1.5秒,就让直播跳到当前时间位置播放
this.player.currentTime = end - 0.5;
}
}, 3 * 60 * 1000);
},
}
最后附上flv字段解析: