vue2使用flv.js在浏览器打开flv格式视频

组件地址:GitHub - bilibili/flv.js: HTML5 FLV Player

flv.js 仅支持 H.264 和 AAC/MP3 编码的 FLV 文件。如果视频文件使用了其他编码格式就打不开。

 flv.vue

<template>
  <div>
    <el-dialog :visible.sync="innerVisibleFlv" :close-on-press-escape="false" :close-on-click-modal="false"
            append-to-body width="800px" top="15vh" title="" class="modify" :before-close="handleClose">
        <video ref="videoPlayer" class="video-js vjs-default-skin" controls preload="auto" width="100%" height="99%">
			<!-- 这里不需要添加 source 标签,因为 flv.js 会动态处理 -->

        </video>
    </el-dialog>
  </div>
</template>

<script>
import flvjs from 'flv.js';

export default {
  name: 'FlvPlayer',
  props: {
    innerVisibleFlv: {
        type: Boolean,
        default: true
    },
    flvPath: {
        type: String
    }
  },
  data() {
    return {
      flvPlayer: null,
      videoUrl: null,
    };
  },
  watch: {
      flvPath: {
          deep: true,
          immediate: true,
          handler (n, o) {
              if (n) {
                  this.videoUrl = n;
              }
          }
      }
  },
  mounted() {
    this.$nextTick(() => {
        this.initFlvPlayer();
    })
  },
  beforeDestroy() {
    if (this.flvPlayer) {
      this.flvPlayer.destroy();
    }
  },
  methods: {
    initFlvPlayer() {
      if (flvjs.isSupported()) {
        const videoElement = this.$refs.videoPlayer;
        this.flvPlayer = flvjs.createPlayer({
          type: 'flv',
          // url: this.videoUrl,  # http://localhost:8080/aaa/flv/25012001.flv
          url: '/flv/aaa/flv/25012001.flv', # 本地测试这么写,跨域问题,修改proxyConfig.js
        });
        this.flvPlayer.attachMediaElement(videoElement);
        this.flvPlayer.load();
        this.flvPlayer.play();
      } else {
        console.error('Your browser does not support FLV playback.');
      }
    },
	
    handleClose () {
        this.$emit('handleClose');
    },
  }
};
</script>

<style scoped>

</style>



碰到问题

1、本地开发跨域

修改proxyConfig.js文件,添加下面的内容;修改组件中的url地址为 /flv/xxx

module.exports = {
	....
	proxyTable: {
		'/flv': {
		  target: 'http://localhost:8080', 
		  changeOrigin: true, 
		  pathRewrite: { 
			'^/flv': ''  
		  }
		}
	}
}

ps:碰到过这个问题,还部署到tomcat中测试了,也是无法正常播放,现在想想当时是因为文件的编码不对造成的。

2、文件还是无法播放,原因是flv文件的编码不对

转换工具:在线 & 免费地将 MP4 转换成 FLV — Convertio

 到此,在浏览器可以正常打开。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/957304.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Restormer模型代码解析

上一篇我们对Restormer的论文进行了解析。这篇对Restormer的代码进行解析。 论文地址&#xff1a;Restormer: Efficient Transformer for High-Resolution Image Restoration。代码地址&#xff1a;Restormer 以Deraining项目中的test.py文件为切入点&#xff0c;来分析其mod…

微信小程序怎么制作自己的小程序?手把手带你入门(适合新手小白观看)

对于初学者来说&#xff0c;制作一款微信小程序总感觉高大上&#xff0c;又害怕学不会。不过&#xff0c;今天我就用最简单、最有耐心的方式&#xff0c;一步一步给大家讲清楚!让你知道微信小程序的制作&#xff0c;居然可以这么轻松(希望你别吓跑啊!)。文中还加了实战经验&…

MPLS VPN 部署与应用

一.简介 MPLS&#xff0c;称之为多协议标签交换&#xff0c;在九十年代中期被提出来&#xff0c;用于解决传统IP报文依赖查表转发而产生的瓶颈&#xff0c;现多用于VPN技术&#xff0c;MPLS报头封装在数据链路层之上&#xff0c;网络层之下。本文为结合了华为技术和新华三技术…

定时器setTimeout和setInterval

setTimeOut()异步 setInterval()异步

PCL 部分点云视点问题【2025最新版】

目录 一、问题概述二、解决方案1、软件实现2、代码实现三、调整之后博客长期更新,本文最近更新时间为:2025年1月18日。 一、问题概述 针对CloudCompare软件处理过的pcd格式点云,在使用PCL进行特征点提取、配准等实验中最终显示结果出现点云位置偏差较大的问题,本博客给出解…

SpringCloud+Vue+Python人工智能(fastAPI,机器学习,深度学习)前后端架构各功能实现思路——主目录(持续更新)

随着公司业务的增加&#xff0c;公司需要一个javapython人工智能相互配合架构&#xff0c;正常网站业务用java来做&#xff0c;而ai&#xff0c;例如电价预测等回归任务&#xff0c;以及大模型预测全网负荷&#xff0c;新能源出力等任务&#xff0c;使用python通过fastapi暴露接…

Python数据可视化(够用版):懂基础 + 专业的图表抛给Tableau等专业绘图工具

我先说说文章标题中的“够用版”啥意思&#xff0c;为什么这么写。 按照我个人观点&#xff0c;在使用Python进行数据分析时&#xff0c;我们有时候肯定要结合到图表去进行分析&#xff0c;去直观展现数据的规律和特定&#xff0c;那么我们肯定要做一些简单的可视化&#xff0…

[微服务]注册中心优化

环境隔离 企业实际开发中&#xff0c;往往会搭建多个运行环境&#xff0c;例如&#xff1a; 开发环境测试环境预发布环境生产环境 这些不同环境之间的服务和数据之间需要隔离。 还有的企业中&#xff0c;会开发多个项目&#xff0c;共享nacos集群。此时&#xff0c;这些项目…

【Python使用】嘿马python高级进阶全体系教程第11篇:静态Web服务器-面向对象开发,1. 以面向对象的方式开发静态W

本教程的知识点为&#xff1a;操作系统 1. 常见的操作系统 4. 小结 ls命令选项 2. 小结 mkdir和rm命令选项 1. mkdir命令选项 压缩和解压缩命令 1. 压缩格式的介绍 2. tar命令及选项的使用 3. zip和unzip命令及选项的使用 4. 小结 编辑器 vim 1. vim 的介绍 2. vim 的工作模式 …

无限续杯Cursor方案

解决方案一&#xff1a; 每个账号可以删除三次&#xff0c;如图点击Delete Account&#xff0c;删除账户并重新登录即可获得免费试用。 解决方案二 1.首先判断电脑系统类型&#xff1a; Windows 系统 打开 设置&#xff08;Win I&#xff09;。进入 系统 > 关于。在 …

AI编程工具使用技巧:在Visual Studio Code中高效利用阿里云通义灵码

AI编程工具使用技巧&#xff1a;在Visual Studio Code中高效利用阿里云通义灵码 前言一、通义灵码介绍1.1 通义灵码简介1.2 主要功能1.3 版本选择1.4 支持环境 二、Visual Studio Code介绍1.1 VS Code简介1.2 主要特点 三、安装VsCode3.1下载VsCode3.2.安装VsCode3.3 打开VsCod…

2024国游销量前20游戏分析:某开放世界武侠(排名11)

1、销量约20万套&#xff0c;销售额1400万人民币。 与一代的发售间隔为三年。 虽然对于网游大厂来说这个数字不够看&#xff0c;但对一个小团队来说足够维持了&#xff0c;三年的运营成本不是小数目。 2、开发商属于国内最早做3DMMO的厂商之一&#xff0c;创始人曾在国外大学…

没有公网IP实现seafile本地IP访问和虚拟局域网IP同时访问和上传文件

前言 Ubuntu 24.04 LTSDocker 安装 seafileOpenWrtTailscale Ubuntu 24.04 LTS 通过 docker desktop 安装 seafile 搭建个人网盘中&#xff0c;已经实现了本地局域网放问Ubuntu IP来访问Seafile&#xff0c;以及通过 Ubuntu 的 Tailscale IP 访问Seafile。但是&#xff0c;文…

大有国科举办书苑华夏文化读书会第四届文学艺术沙龙活动

经过了精心准备&#xff0c;2025年元月5日大有国科产业运营管理&#xff08;北京&#xff09;有限公司在北京西山赢府国际商务中心举办第四届文学艺术沙龙活动。大有数字集团董事长张长江,我国第一代电视艺术工作者悦怀怡,中华社会文化发展基金会原理事、副秘书长肖清波&#x…

JavaScript笔记进阶篇01——作用域、箭头函数、解构赋值

黑马程序员视频地址&#xff1a; 黑马程序员前端JavaScript入门到精通全套视频教程https://www.bilibili.com/video/BV1Y84y1L7Nn?vd_source0a2d366696f87e241adc64419bf12cab&spm_id_from333.788.videopod.episodes&p152 目录 作用域 局部作用域 函数作用域 块…

开源鸿蒙开发者社区记录

lava鸿蒙社区可提问 Laval社区 开源鸿蒙项目 OpenHarmony 开源鸿蒙开发者论坛 OpenHarmony 开源鸿蒙开发者论坛

蓝桥杯不熟知识整理

第一章 1.using namespace std; using namespace std; 是⼀种简单粗暴的做法&#xff0c;直接这样使⽤&#xff0c;就意味着后续在 std 这个名字空间中的各种定义都可以直接使⽤&#xff0c;但是我们往往只是使⽤部分。所以名字空间其实也 可以这样使⽤&#xff1a;std::cout…

机器学习(3):逻辑回归

1 介绍 逻辑回归&#xff08;Logistic Regression&#xff09;是一种广泛应用于分类问题的监督学习算法。尽管名字中含有“回归”二字&#xff0c;但这并不意味着它用于解决回归问题。相反&#xff0c;逻辑回归专注于解决二元或多元分类问题&#xff0c;如邮件是垃圾邮件还是非…

基于Python django的音乐用户偏好分析及可视化系统设计与实现

1.1 论文背景 随着信息技术的快速发展&#xff0c;在线音乐服务已成为日常生活的重要组成部分。QQ音乐&#xff0c;凭借其创新的音乐推荐算法和独特的社交特性&#xff0c;成功在竞争激烈的市场中获得一席之地。该平台的歌单文化和评论文化不仅满足了用户自尊和自我实现的需求…

蓝桥杯单片机第六届省赛

前言 这套题其实一开始做的时候有点发懵&#xff0c;一直陷入到一个巨大的漏洞里面&#xff0c;主要是在10次数据采集上面&#xff0c;说白了就是练得少&#xff0c;太菜了 题目 这套题到现在的代码也有一些漏洞&#xff0c;实在是不想改了&#xff0c;最近有点摆烂&#xff…