vue播放flv视频流

简介:flv.js是 HTML5 Flash 视频(FLV)播放器,纯原生 JavaScript 开发,没有用到 Flash。由 bilibili 网站开源。

开源地址: https://github.com/Bilibili/flv.js/

1、安装依赖

javascript 复制代码
npm install --save flv.js

2、页面引入插件

javascript 复制代码
import flvjs from 'flv.js'

3、完整代码

javascript 复制代码
<!-- flv格式 -->
<template>
  <div>
    <video
      id="myPlayer"
      class="video-js vjs-default-skin"
      controls
      preload="auto"
    ></video>
  </div>
</template>

<script>
import flvjs from "flv.js";
export default {
  name: "videoFlv",
  data() {
    return {
      url: "/flv/source.flv",
      videoExample: null,
    };
  },
  created() {},
  mounted() {
    this.$nextTick(() => {
      this.getVideo();
    });
  },
  beforeDestroy() {
    this.videoDestroy();
  },
  methods: {
    getVideo() {
      if (flvjs.isSupported()) {
        const videoElement = document.getElementById("myPlayer");
        this.videoExample = flvjs.createPlayer({
          type: "flv", //类型
          isLive: true, //是否实时流
          // url: '/flv/source.flv', //路径
          url: this.videoUrl, //路径
          // segments: [], //多段播放
        });
        this.videoExample.attachMediaElement(videoElement);
        this.videoExample.load();
        this.videoExample.play();
      }
    },
    // 销毁实例
    videoDestroy() {
      if (this.videoExample) {
        this.videoExample.pause();
        this.videoExample.unload();
        this.videoExample.detachMediaElement();
        this.videoExample.destroy();
        this.videoExample = null;
      }
    },
  },
};
</script>

<style lang="less" scoped></style>

参考:

https://blog.csdn.net/weixin_43883951/article/details/131065700

https://blog.csdn.net/weixin_51714170/article/details/128060019?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword\~default-0-128060019-blog-127852222.235^v43^control\&spm=1001.2101.3001.4242.1\&utm_relevant_index=3

相关推荐
aklry8 分钟前
uniapp三步完成一维码的生成
前端·vue.js
Rubin9315 分钟前
判断元素在可视区域?用于滚动加载,数据埋点等
前端
爱学习的茄子16 分钟前
AI驱动的单词学习应用:从图片识别到语音合成的完整实现
前端·深度学习·react.js
用户38022585982416 分钟前
使用three.js实现3D地球
前端·three.js
程序无bug19 分钟前
Spring 面向切面编程AOP 详细讲解
java·前端
zhanshuo19 分钟前
鸿蒙UI开发全解:JS与Java双引擎实战指南
前端·javascript·harmonyos
JohnYan19 分钟前
模板+数据的文档生成技术方案设计和实现
javascript·后端·架构
撰卢42 分钟前
如何提高网站加载速度速度
前端·javascript·css·html
10年前端老司机1 小时前
在React项目中如何封装一个可扩展,复用性强的组件
前端·javascript·react.js
Struggler2811 小时前
解决setTimeout/setInterval计时不准确问题的方案
前端