Vue播放rtmp/Hls实时视频踩坑日记

1 rtmp

  • 使用vue-video-play播放(支持rtmp和hls)
//安装
npm install vue-video-player --save

//代码


 import videojs from 'video.js'
import 'video.js/dist/video-js.css'
import 'vue-video-player/src/custom-theme.css'
import { videoPlayer } from 'vue-video-player'
import 'videojs-flash'

export default {
  components: {
    // videoPlayer
  },
  data() {
    return {
//rtmp设置
       playerOptions: {
      height: '300',
      sources: [{
      type: "rtmp/mp4",
      src: "XXX" //需要播放的rtmp地址
       }],
      techOrder: ['flash'],
      autoplay: false,
      controls: true
      },
//hls设置
      playerOptions: {
        playbackRates: [0.7, 1.0, 1.5, 2.0], //播放速度
        autoplay: false, //如果true,浏览器准备好时开始回放。
        controls: true, //控制条
        preload: "auto", //视频预加载
        muted: false, //默认情况下将会消除任何音频。
        loop: false, //导致视频一结束就重新开始。
        language: "zh-CN",
        aspectRatio: "16:9", // 将播放器置于流畅模式,并在计算播放器的动态大小时使用该值。值应该代表一个比例 - 用冒号分隔的两个数字(例如"16:9"或"4:3")
        fluid: true, // 当true时,Video.js player将拥有流体大小。换句话说,它将按比例缩放以适应其容器。
        sources: [
          {
            type: "application/x-mpegURL",
            //   src: 'https://video-dev.github.io/streams/x36xhzz/x36xhzz.m3u8'
            src: "http://32.92.129.52:83/openUrl/uDaH1JK/live.m3u8"
          }
        ],
        width: document.documentElement.clientWidth,
        notSupportedMessage: "此视频暂无法播放,请稍后再试" //允许覆盖Video.js无法播放媒体源时显示的默认信息。
      }
    };
  },

备注:上述能够正常播放芒果台实时视频,但是公司的实时视频播放不了,还未发现根本原因

2 Hls实时视频播放

  • 使用video.js进行播放(实测可行)


  
    
    hls.js
    
    
  
  
    
    
  
  

  • 使用Hls.js(Vue项目中实测可行)
//安装
npm install --save hls.js
文档链接:https://www.helloweba.net/javascript/571.html




你可能感兴趣的:(Vue播放rtmp/Hls实时视频踩坑日记)