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

相关推荐
@yanyu66619 分钟前
登录注册功能-明文
vue.js·springboot
陈随易35 分钟前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
里欧跑得慢3 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
IT_陈寒3 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
cn_mengbei3 小时前
用React Native开发OpenHarmony应用:Reanimated共享元素过渡
javascript·react native·react.js
kyriewen3 小时前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试
去伪存真4 小时前
我自己写的第一个skills--project-core-standards
前端·agent
Data_Journal4 小时前
如何使用cURL更改User Agent
大数据·服务器·前端·javascript·数据库
掌心向暖RPA自动化4 小时前
如何获取网页某个元素在屏幕可见部分的中心坐标影刀RPA懒加载坐标定位技巧
java·javascript·自动化·rpa·影刀rpa
竹林8184 小时前
wagmi v2 多链钱包切换:一个 Uniswap 仿盘项目让我踩了三天坑
前端·javascript