vue使用video.js实现播放m3u8格式的视频

这篇具有很好参考价值的文章主要介绍了vue使用video.js实现播放m3u8格式的视频。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、安装video.js

npm install video.js


我使用的video.js版本如下:

"video.js": "^7.20.3"

二、VideoPlayer组件

在components下新建一个VideoPlayer文件夹

vue使用video.js实现播放m3u8格式的视频,javascript,vue.js,音视频,前端

index如下:

<template>
  <div ref="videoDiv"></div>
</template>

<script>
export default {
  name: "VideoPlayer",
  data() {
    return {
      player: null,
    };
  },
  props: {
    sourceUrl: {
      type: String,
      default: "",
    },
  },
  mounted() {
    this.initVideo();
  },
  watch: {
    sourceUrl: {
      handler(val) {
        this.initVideo();
      },
    },
  },
  methods: {
    initVideo() {
      // video标签无法动态加载src,所以在vue中如果是动态写入视频地址,js加载在HTML渲染之后,会导致video在取src时无法解析。
      // 所以需要用js在获取到src值之后生成HTML元素
      this.$refs.videoDiv.innerHTML =
        '<video class="video-js vjs-default-skin vjs-big-play-centered">' +
        "</video>";
      this.player = this.$video(this.$refs.videoDiv.firstElementChild, {
        //确定播放器是否具有用户可以与之交互的控件。没有控件,启动视频播放的唯一方法是使用autoplay属性或通过Player API。
        controls: true,
        //自动播放属性,muted:静音播放
        autoplay: "muted",
        //建议浏览器是否应在<video>加载元素后立即开始下载视频数据。
        preload: "auto",
        //设置视频播放器的显示宽度(以像素为单位)
        width: "550px",
        //设置视频播放器的显示高度(以像素为单位)
        height: "366px",
        sources: [
          {
            src: this.sourceUrl,
            type: "application/x-mpegURL",
          },
        ],
      });
    },
  },
  beforeDestroy() {
    if (this.player != null) {
      this.player.dispose(); // dispose()会直接删除Dom元素
    }
  },
};
</script>

三、main.js里注册

//video.js
import Video from "video.js";
import "video.js/dist/video-js.css";
Vue.prototype.$video = Video;

四、使用 

 直接把地址传给sourceUrl即可文章来源地址https://www.toymoban.com/news/detail-525989.html

<VideoPlayer :sourceUrl="sourceUrl"></VideoPlayer>

到了这里,关于vue使用video.js实现播放m3u8格式的视频的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue2 使用 vue-video-player 播放m3u8 流地址视频

    安装插件  : 注意需要引入  videojs-contrib-hls ,否则无法播放hls流文件  main.js 引入 代码内引入: 注意点:    1.type: \\\'application/x-mpegURL\\\' ,否则无法播放流文件  2.aspectRatio: \\\'16:9\\\',  宽高比需要进行设置, 若没有进行设置,会出现黑边过高或者过宽的问题 常用API方法:

    2024年02月07日
    浏览(50)
  • 在vue中使用dplayer播放hls m3u8格式视频

    Dplayer 官方文档地址 Dplayer官方地址 虽然在vue中有vue-dplayer但却没有对hls进行很好的支持 所以建议还是使用Dplayer 在组件中引入 播放m3u8格式的视频需要框选部分 – 建议查看官方文档MSE支持 切换视频 切换视频需要用到 switchVideo() api 方便大家复制 部分片段

    2024年02月13日
    浏览(35)
  • vue项目如何播放m3u8格式视频

    在node_modeols里面找到@easydarwin下的dist/compent/EasyPlayer-lib.min.js和EasyPlayer.wasm两个文件复制到pubilc目录下 引入 在components中 在模板中

    2024年02月15日
    浏览(53)
  • videojs-flvjs:video.js + flv.js播放m3u8和flv视频

    videojs-flvjs是video.js的扩展,让video.js支持flv.js播放器,可以在video.js的techOrder里配置flvjs播放器。 下面做了一个切换m3u8和flv直播流的简易工具: https://mister-ben.github.io/videojs-flvjs/ https://blog.csdn.net/little__SuperMan/article/details/89203270/

    2023年04月16日
    浏览(48)
  • 【vue】前端页面点击按钮弹窗播放m3u8格式视频

    最终效果: 1.表格操作列 2.initVideo方法 3.弹出层代码 4.showAll_dialog样式 5.第2步跳转的video.html页面代码,用dplayer播放的,放在项目根目录的public文件夹即可

    2024年02月04日
    浏览(53)
  • Uniapp H5 播放m3u8、flv格式视频

    简述一下业务需求,仅仅是需要在H5页面播放m3u8格式的视频,但是Uniapp官方提供的video组件在H5端不支持m3u8格式的视频播放,所以需要使用第三方库来播放,这里我使用的是MuiPlayer,但是貌似MuiPlayer的官方文档没有过多提及UniApp的用法,由于MuiPlayer默认支持mp4格式播放,所以

    2024年04月15日
    浏览(35)
  • hls.js如何播放m3u8文件(实例)?

     HLS(HTTP Live Streaming)是一种视频流传输协议,是苹果推出的适用于iOS与macOS平台的流媒体传输协议。它将视频分割成若干个小段,每个小段大小一般为2~10秒不等,并通过HTTP协议进行传输。通过在每个小段之间插入若干秒的间隔,可以提高视频的传输稳定性和用户的观看体验

    2023年04月23日
    浏览(38)
  • vue3播放m3u8视频(videoJS)

    需要同时导入videoJS以及相关的CSS 以下时项目使用中自己封装的组件,用起来也很简单,需要的可以对照自取 UI框架为 ant-design-vue

    2024年02月03日
    浏览(41)
  • 安卓实现M3U8文件的下载和播放

    现如今网络上的视频大多数都是m3u8格式的,使用m3u8格式有以下好处 1. 方便切换码率,例如从高清转到蓝光 2. 节约流量,m3u8实际切割成一段段的TS后缀视频,传统请求是把整个文件流返回去,网络不好或者文件过大时,都会造成响应缓慢,m3u8则是返回一个个的ts文件,当前

    2023年04月20日
    浏览(55)
  • 关于vue播放flv,m3u8视频流(监控)的方法

    前文: 随着前端大屏页面的逐渐壮大,客户的需求也越来越多,大屏上面展示的事物也越来越丰     富。其中实时播放监控的需求逐步增加,视频流格式也是有很多种,用到最多的.flv、.m3u8。 一、 JessibucaPlayer插件用来播放flv流 1.首先是先把文件放在vue项目的public下面 2.在

    2023年04月15日
    浏览(89)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包