Vue中使用Hls.js进行视频直播的播放

HLS.js使用文档

1、安装组件:

javascript 复制代码
npm install hls.js --save

2、引入组件:

javascript 复制代码
import Hls from 'hls.js'

3、使用组件:

javascript 复制代码
// DOM:
<video id="video" controls loop="false"></video>
// DATA:
let hls = null // 定义的hls对象
let url = '' // 这个是直播视频流的地址
// 视频加载
let video = document.getElementById('video') // 定义挂载节点
if(Hls.isSupported()) { 
   hls = new Hls();
   hls.loadSource(url); // 设置播放路径
   hls.attachMedia(video); // 解析到video标签上
   hls.on(Hls.Events.MANIFEST_PARSED, function () {
       video.play(); // 播放视频
   });
} else if (video.canPlayType('application/vnd.apple.mpegurl')) { // 如果浏览器原生支持HLS
   video.src = url;
   video.addEventListener('loadedmetadata', function () {
       video.play();
   });
}
// 最后离开页面的时候,记得销毁
onUnmounted(() => {
 if (hls) {
   hls.destroy();
 }
});

4、 如果视频加载不出来导致的黑屏,问题定位:

① 检查 包裹video组件外层的div使用的是v-show控制显隐,而不是v-if

② 检查 video 组件是否设置了宽高。

③ 检查 挂载节点是否加载完成,可以采用使用setTimeout延迟加载。

相关推荐
丙氨酸長鏈8 小时前
Web前端入门第 问:JavaScript 一个简单的 IndexedDB 数据库入门示例
前端·javascript·数据库
weixin_495248409 小时前
短剧视频翻译配音指南:古装、甜宠与悬疑如何本地化?
音视频
kyriewen9 小时前
面试官让我手写虚拟列表——AI生成的版本,快速滚动几下就白屏了
前端·javascript·面试
禹亮科技10 小时前
制造业100㎡跨国技术评审会议室音视频整体解决方案(亿联+思必驰+讯飞AI落地实践)
人工智能·音视频·视频会议系统集成
林焱_RPAAI10 小时前
影刀RPA技术深度:CSS选择器高级实战指南——伪类属性选择器与性能对比完全解析
vue.js·react.js
潜创微科技10 小时前
HDMI 分配器芯片方案商 IT66630 有源分配芯片方案
音视频
不爱记笔记11 小时前
多模态AI如何理解视频内容?从视觉、语音到语义的三层技术拆解
人工智能·自然语言处理·nlp·音视频·多模态
许彰午12 小时前
政务督办的分合模式:主办协办的并发审批
前端·javascript·政务
陳陈陳12 小时前
🚀 前端流式输出革命:SSE + BFF 架构从零到一实战指南
vue.js·架构·node.js
易筋紫容12 小时前
创建型模式:对象的诞生艺术
开发语言·前端·javascript