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

相关推荐
_揽12 分钟前
html如何在一张图片上的某一个区域做到点击事件
前端·html
踢足球的,程序猿15 分钟前
从 Vue 2.0 进阶到 Vue 3.0 的核心技术解析指南
前端·javascript·vue.js·前端框架·html
冷凌爱17 分钟前
Fetch与Axios:区别、联系、优缺点及使用差异
前端·node.js·js
袁煦丞38 分钟前
跨平台终端王者Tabby:cpolar内网穿透实验室第632个成功挑战
前端·程序员·远程工作
Sailing40 分钟前
Grafana-mcp-analyzer:基于 MCP 的轻量 AI 分析监控图表的运维神器!
前端·node.js·mcp
阿山同学.1 小时前
AWS 亚马逊 S3存储桶直传 前端demo 复制即可使用
前端·javascript·aws
Jolyne_1 小时前
grid 实现完美的水平铺满、间隔一致的自适应布局
前端·css
sunly_1 小时前
Flutter:导航固定背景图,滚动时导航颜色渐变
android·javascript·flutter
西洼工作室1 小时前
【解决导航栏字体图标渲染导致文本闪烁问题】采用腾讯视频的解决方案
前端·css·css3
摸鱼仙人~1 小时前
深入理解Java单例模式:确保类只有一个实例
java·javascript·单例模式