1,vue播放视频之—引入.m3u8后缀的hsl视频流

yumo6663个月前 (05-02)技术文章21

效果图:


我这个是引入js的方式播放的。也可以用npm直接下载hsl.sj进行引入
1.public里面index.html页面引入对应的js

<script src="./jquery.min.js"></script>
<script src="./ezuikit.js"></script>
<script src="./hls.min.js"></script>
<script src="./jsPlugin-1.2.0.min.js"></script>

这些js太多了,私信我挨个发给你们
2,页面代码,也没什么,就一个for

      <div v-for="i in tableData" :key="i.index" >
          <video
          :id=i.id
          autoplay
          :src=i.location
          controls
          playsInline
          muted
          webkit-playsinline>
        </video>
      </div>

autoplay: 自动播放。
controls: 显示基本的控件。暂停、播放、进度条、等等
playsInline,webkit-playsinline:全屏播放控件
muted:兼容自动播放,有限浏览器不能自动播放就加这个属性

3,调接口


返回的数据格式是这样的,只要id和location就可以了。定义两个数组,一个数组转id和location。另一个数组只装id。用来停止播放的

   methods: {
    searchs(currpage,pagesize){
      this.$axios.get(this.url+'listByAgencyCode',{params}).then( data=>{
        if(data.data.success){
          this.ids=[];// 置空ids中的内容
          let result = data.data.data;
          this.tableData = result.list;//页面上循环的对象数组 (格式:[{},{},{}])
          this.totals = result.total;
          this.tableData.map((v,i) =>{
            this.tableData[i].id = "myPlayer_"+v.id;
          })
          for(let i=0,l = this.tableData.length;i<l;i++){//重新定义一个数组只装id
            this.ids.push(this.tableData[i].id);
          }
        }
      });
      // 延时渲染视频
      this.renderVedio();
    },
    renderVedio(){
      setTimeout(()=>{// 初始化视频
        this.players = [];
        for(var j=0;j<this.ids.length;j++){
          let player = new EZUIKit.EZUIPlayer(this.ids[j]);
          this.players.push(player);
        }
      },2000);
    },
    }
    //销毁视频
   destroyed () {
    for(var j=0;j<this.players.length;j++){
      this.players[j].stop();
    }
  }

有什么写错的还请指正。
没了,结束了,是不是很简单呐,如有问题,欢迎留言。
如果此篇博文对您有帮助,还请动动小手点赞 收藏 留言 呐~,谢谢 ~ ~

相关文章

p5.js 视频播放指南(p5.js 教程)

本文简介在刚接触 p5.js 时我以为这只是一个艺术方向的 canvas 库,没想到它还支持视频文件和视频流的播放。本文简单讲讲如何使用 P5.js 播放视频。播放视频文件p5.js 除了可以使用 v...

手把手教你用 Spring Boot+FFmpeg 实现 RTSP 视频流播放

你是否在互联网大厂的后端开发工作中,遇到过这样的难题?项目需要实现实时视频推流服务,并且要支持 RTSP 视频流的播放,但尝试了多种方法都效果不佳,不仅效率低,还频频出现兼容性问题,让开发进度严重受阻...

实现浏览器播放rtsp视频流的解决方案

有同学问道:需要实时播放摄像头rtsp视频流,而浏览器不能直接播放,怎样解决?实现这个需求可以通过插件或者转码来实现。要实现这个目的,可以采用的方案非常得多,有商业的也有开源的,这里主要列举一些开源的...

在B站看猫片被老板发现?不如按下F12学学HTTP

什么是HTTPHTTP 全称超文文本传输协议,也就是HyperText Transfer Protocol。 其中我们常见的文本,图片,视频这些东西都可以用超文本进行表示,而我常看的猫片,也属于超文本...

科研笔记神器:一边视频,一边笔记,轻松搞定B站视频学习

上一期,笔者介绍了一款笔记神器——Obsidian,它可以用于思维导图和知识管理。高效阅读和写作,席卷科研圈的科研神器由于计算机、互联网技术的发展,线上学习、视频学习已经成为了一种流行的学习途径,边看...

Python Flask如何实播放视频流?深入浅出实现方案

本文致力于流式传输,这是一个有趣的功能,它使Flask应用程序能够长时间有效地将大型响应有效地分成小块。为了说明这一主题,我将向您展示如何构建实时视频流服务器!注意:本文有后续内容,Flask视频流再...