vue——vue-video-player插件实现rtmp直播流

2023-11-20

更新:flash已不可再使用,大家另寻出路吧

安装前首先需要注意几个点:

  • vue-video-player插件,其实就是 video.js 集成到 vue 中 ,所以千万不要再安装 video.js,可能会出错。视频流我这个项目选择rtmp格式,实时性高,稳定性也高,但是依赖flash插件,如果视频不能正常播放,不排除浏览器禁用了flash的可能性。
  • 播放 HLS 流,需要 videojs-contrib-hls 插件,如果需要 RTMP 流,需要 videojs-flash 插件。都是直接引用,因为在安装vue-video-player插件时,hls插件是一并下载下来的(但是如果都需要,flash 插件需要在 hls 之前引用)
    在这里插入图片描述

安装步骤

  1. 第一步:npm install vue-video-player -S
    注意:如果已经安装了vue-video-player,先回忆一下是cnpm安装还是npm,cnpm安装的会报一个错:“The “flash” tech is undefined. Skipped browser support check for that tech”,这时候需要卸载掉vue-video-player,再用npm安装一次
  2. 第二步:全局引用
import 'video.js/dist/video-js.css'
import VueVideoPlayer from 'vue-video-player'
import 'videojs-flash'   // 一定要在VueVideoPlayer 后面引用
Vue.use(VueVideoPlayer)

注意: 顺序不要错,建议直接复制

代码如下:

html

<video-player class="vjs-custom-skin videoPlayer" ref="videoPlayer" :playsline="false"
  :options="playerOptions"></video-player>

js

playerOptions: {
        preload: "auto", // 建议浏览器在<video>加载元素后是否应该开始下载视频数据。auto浏览器选择最佳行为,立即开始加载视频(如果浏览器支持)
        language: "zh-CN",
        aspectRatio: "16:9", // 将播放器置于流畅模式,并在计算播放器的动态大小时使用该值。值应该代表一个比例 - 用冒号分隔的两个数字(例如"16:9"或"4:3")
        fluid: true, // 当true时,Video.js player将拥有流体大小。换句话说,它将按比例缩放以适应其容器。
        techOrder: ["flash", "html5"],
        sources: [
          {
            type: "rtmp/flv", // 这里的种类支持很多种:基本视频格式、直播、流媒体等,具体可以参看git网址项目
            src: "rtmp://192.168.1.215:1935/myapp/home", // url地址
          },
        ],
        width: document.documentElement.clientWidth, // 播放器宽度
        notSupportedMessage: "此视频暂无法播放,请稍后再试", // 允许覆盖Video.js无法播放媒体源时显示的默认信息。
        controlBar: {
          timeDivider: true,
          durationDisplay: true,
          remainingTimeDisplay: false,
          fullscreenToggle: true, // 全屏按钮
        },
      },

注意: 有些教程说还需要安装videojs-flash插件,但根据我的个人经验来说,我并没有下载这个插件,依旧可以正常引用。在这里插入图片描述
结果:
在这里插入图片描述


最后补充一点,如果在npm之后出现
在这里插入图片描述
是npm出问题了,这时候需要

  1. 先删除掉node_modules文件夹

  2. npm cache clean --force清理掉缓存
    在这里插入图片描述

  3. npm install重新安装依赖包

  4. 重新 npm run serve / dev即可

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue——vue-video-player插件实现rtmp直播流 的相关文章

  • 手把手教你用Python轻松玩转SQL注入——渗透利器

    前言 大家好 我是黄伟 相信大家经常有听到过SQL注入啥的 但是并不是特别了解 小编以前就是经常听别人说 但是自己啥都不懂 直到后来看了相关教材后才明白 原来是这么个东西 那么到底是什么东西了 又或者是不是个东西了 我们接着往下看 一 浅谈
  • Flutter 宽高自适应

    在Flutter开发中也需要宽高自适应 手动写一个工具类 集成之后在像素后面直接使用 px或者 rpx即可 工具类代码如下 import dart ui class HYSizeFit static double screenWidth 0
  • GitHub Action入门简介

    1 What is GitHub Actions GItHub Actions是一个持续集成和持续交付的平台 能够让你自动化你的编译 测试和部署流程 GitHub 提供 Linux Windows 和 macOS 虚拟机来运行您的工作流程
  • 《计算机系统2》学习笔记

    目录 计算机系统漫游 Amdahl定理 信息的表示和处理 信息存储 进制转化 小端法 大端法 布尔代数 位级运算 逻辑运算 移位运算 整数表示 无符号数编码 补码编码 有符号数和无符号数之间的转换 扩展数的位表示 截断数字 整数运算 无符号

随机推荐

  • 将Enum枚举转成Map,List结构

    JAVA枚举功能强大 感觉就像是一种简化版的类对象 可以有构造方法 可以重载 可以继承接口等等 JAVA枚举在实际开发中应用相当频繁 以下几个封装方法在实际开发中可能用到 将枚举类转化为Map以及List结构的一些操作方法 首先 新建一个枚
  • qt file not found 原因之一

    14 error h file not found 原因之一 在pri中说明的cpp文件 如果其中 include 本pri定义的其它文件 则会直接以此cpp文件为基础进行寻找 在 include 文件时 可以在cpp文件所在目录下 或以此
  • Qt中父子widget的事件传递

    以前我一直以为 在父widget上摆一个子widget后 当click子widget时 只会进入到子widget的相关事件处理函数中 比如进入到mousePressEvent 中 而不会进入到父widget的对应事件处理函数中 毕竟 cli
  • ajax跨域post请求数据_基于Python的Post请求数据爬取

    为什么做这个 和同学聊天 他想爬取一个网站的post请求 观察 该网站的post请求参数有两种类型 1 参数体放在了query中 即url拼接参数 2 body中要加入一个空的json对象 关于为什么要加入空的json对象 猜测原因为反爬虫
  • 《OSPF和IS-IS详解》一1.7 独立且平等

    本节书摘来自异步社区 OSPF和IS IS详解 一书中的第1章 第1 7节 作者 美 Jeff Doyle 更多章节内容可以访问云栖社区 异步社区 公众号查看 1 7 独立且平等 OSPF和IS IS详解与TCP IP相比 OSI协议对各国
  • shell命令之cp复制拷贝

    1 复制文件到文件中 cp file1 file2 file1 file2 表示某一文件 在当前目录下 将file1 的文件内容复制到file2 文件中 如果第二个文件不存在 则先创建文件 然后再拷贝内容 如果存在则直接覆盖 没有警告 加
  • C++ 函数指针

    include
  • 基于SSM+JSP的宠物医院信息管理系统

    项目背景 21世纪的今天 随着社会的不断发展与进步 人们对于信息科学化的认识 已由低层次向高层次发展 由原来的感性认识向理性认识提高 管理工作的重要性已逐渐被人们所认识 科学化的管理 使信息存储达到准确 快速 完善 并能提高工作管理效率 促
  • bp利率最新消息是多少,bps利率是什么意思

    武汉房贷利率最新消息2022 3月26日起 武汉房贷利率将下调48BP 首套房贷款利率为5 2 二套房为5 4 其实武汉下调房贷利率也是在意料之内 此前的利率放在全国范围内比较 其实是比较高的 那利率降低后 每月能省多少钱呢 武汉房贷利率最
  • SSM框架和Spring Boot+Mybatis框架的性能比较?

    SSM框架和Spring Boot Mybatis框架的性能比较 没有一个绝对的答案 因为它们的性能受到很多因素的影响 例如项目的规模 复杂度 需求 技术栈 团队水平 测试环境 测试方法等 因此 我们不能简单地说哪个框架的性能更好 而是需要
  • qt 使用uic.exe 生成ui_xxxx.h文件的方法

    自己遇到这个问题 看了下别人的回答 总是有些不太清楚 就自己完善了下 1 制作好自己的xxxx ui文件 2 确定uic exe文件的地址 比如我的就是 D Anaconda3 pkgs qt 5 9 7 vc14h73c81de 0 Li
  • 雪糕的最大数量 排序+贪心

    雪糕的最大数量 雪糕的最大数量 题目描述 样例 数据范围 思路 代码 题目描述 夏日炎炎 小男孩 Tony 想买一些雪糕消消暑 商店中新到 n 支雪糕 用长度为 n 的数组 costs 表示雪糕的定价 其中 costs i 表示第 i 支雪
  • 于仕琪老师libfacedetection最新开源代码使用测试配置

    一 首先要感谢于老师的分享 二 此教程只是方便像我这样编程小白入门使用 若有不足之处 请原谅 网上对libfacedetection的介绍已经很多了 我在这里就不进行多余的解释 直接进入主题 下载地址 https github com Sh
  • Fsm2 Fsm2

    This is a Moore state machine with two states two inputs and one output Implement this state machine This exercise is th
  • 时序预测

    时序预测 MATLAB实现DBN深度置信网络时间序列预测 目录 时序预测 MATLAB实现DBN深度置信网络时间序列预测 预测效果 基本介绍 模型描述 程序设计 参考资料 预测效果 基本介绍 BP神经网络是1968年由Rumelhart和M
  • QMainwindow中添加的其他组件无法发送消息调用槽函数

    QMainwindow中添加的其他组件无法发送消息调用槽函数 问题所在 解决办法 问题所在 include mainwindow h include ui mainwindow h include QDebug include QMessa
  • [超实用]Java返回结果的工具类

    在做项目中 处理完各种业务数据后都需要返回值告诉前端最后的操作结果 但又不能直接返回一串错误代码信息 这个时候结果处理工具类就起了有比较好的作用 在此记录下 比较简单返回结果处理方法供大家参考学习 1 结果返回处理业务类 package r
  • python123.io---双一流高校及所在省份统计

    双一流高校及所在省份统计 类型 Python 组合数据类型 字典 d 中存储了我国 42 所双一流高校及所在省份的对应关系 请以这个列表为数据变量 完善 Python 代码 统计各省份学校的数量 d 北京大学
  • vue安装Base64转码

    第一步 项目文件路径下运行 npm install save js base64 或者 cnpm install save js base64 第二步 main js文件中引入 const Base64 require js base64
  • vue——vue-video-player插件实现rtmp直播流

    更新 flash已不可再使用 大家另寻出路吧 安装前首先需要注意几个点 vue video player插件 其实就是 video js 集成到 vue 中 所以千万不要再安装 video js 可能会出错 视频流我这个项目选择rtmp格式