H5|HTTP-FLV|WS-FLV|HLS|RTMP免费直播点播播放器如何自定义层叠DIV全屏后显示在视频上方?
时间:2022-07-25
本文章向大家介绍H5|HTTP-FLV|WS-FLV|HLS|RTMP免费直播点播播放器如何自定义层叠DIV全屏后显示在视频上方?,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
很多使用EasyNVR的客户都希望使用我们的ptz控件来进行控制视频,但是在实际集成中往往有问题,本篇博文将具体介绍一下自定义播放器如何集成ptz空间。
H5直播点播播放器使用说明:https://www.npmjs.com/package/@easydarwin/easyplayer 大家可以根据以上链接参考。下面我们来根据该链接中的内容,来做一下案例复现。
播放器自定义层叠在视频上方的DIV方法
在标签内的div,会自动显示在视频窗口上方,代码如下:
<EasyPlayer id="player01" video-url="http://192.168.2.135:10080/vhls/0XpHAMvWR/0XpHAMvWR_live.m3u8" live="true" aspect="16:9" stretch="true"> <div style="position:absolute;left:15px;top:15px;color:#FFF;">自定义叠加层</div> </EasyPlayer>
云台控制示例代码
<EasyPlayer :muted="muted" :videoUrl="videoUrl" :poster="poster" :aspect="aspect" live :fluent="fluent" :stretch="stretch" :autoplay="autoplay" :controls="controls">
<div class="ptz-block" v-show="ptz">
<div class="ptz-cell ptz-up" @mousedown.prevent="ptzControl('up', $event)" title="上">
<i class="fa fa-chevron-up"></i>
</div>
<div class="ptz-cell ptz-left" @mousedown.prevent="ptzControl('left', $event)" title="左">
<i class="fa fa-chevron-left"></i>
</div>
<div class="ptz-center" title="云台控制">
<i class="fa fa-arrows"></i>
</div>
<div class="ptz-cell ptz-right" @mousedown.prevent="ptzControl('right', $event)" title="右">
<i class="fa fa-chevron-right"></i>
</div>
<div class="ptz-cell ptz-down" @mousedown.prevent="ptzControl('down', $event)" title="下">
<i class="fa fa-chevron-down"></i>
</div>
<div class="ptz-cell ptz-plus" @mousedown.prevent="ptzControl('zoomin', $event)" title="缩">
<i class="fa fa-plus-circle"></i>
</div>
<div class="ptz-cell ptz-minus" @mousedown.prevent="ptzControl('zoomout', $event)" title="放">
<i class="fa fa-minus-circle"></i>
</div>
</div>
</EasyPlayer>
云台ptz相关css示例:
.ptz-block {
position: absolute;
z-index: 99999;
width: 150px;
height: 220px;
right: 20px;
top: 20px;
text-align: center;
font-size: 24px;
background: fade(#eee, 0%);
border-radius: 16px;
overflow: hidden;
&:hover {
background: fade(#eee, 60%);
.ptz-cell,
.ptz-cells {
display: block;
}
}
.ptz-cells,
.ptz-cell {
width: 50px;
height: 50px;
line-height: 50px;
position: absolute;
cursor: pointer;
display: none;
}
.ptz-cell.active {
color: #ccc;
font-size: 26px;
}
.ptz-center {
top: 120px;
left: 50px;
width: 50px;
height: 50px;
line-height: 50px;
position: absolute;
border-radius: 25px;
background: fade(#ccc, 20%);
cursor: move;
i {
color: fade(#000, 30%);
}
}
.ptz-up {
top: 70px;
left: 50px;
}
.ptz-left {
top: 120px;
left: 0;
}
.ptz-right {
top: 120px;
left: 100px;
}
.ptz-down {
top: 165px;
left: 50px;
}
.ptz-plus {
top: 25px;
left: 5px;
}
.ptz-speed {
left: 52px;
width: 45px;
top: 20px;
.el-input-number--mini {
width: 50px;
color: fade(#000, 30%);
}
}
.ptz-minus {
top: 25px;
left: 95px;
}
}
效果展示:
- Go语言TCP Socket编程--2
- 服务器 数据库设计技巧--1
- CVE-2015-0235:Linux glibc高危漏洞的检测及修复方法
- zabbix监控在lnmp环境下编译安装小记
- 【重磅】百度开源分布式深度学习平台,挑战TensorFlow (教程)
- WordPress评论ajax动态加载,解决静态缓存下评论不更新问题
- WordPress显示访客UA信息:Show UserAgent纯代码轻度汉化版
- WordPress开启颜色评论但不造成XSS漏洞的小方法
- WordPress强迫症技巧:让文章(ID)地址完美连续(障眼法)
- iOS内存管理:从MRC到ARC实践
- MySQL错误修复:Table xx is marked as crashed and last (automatic?) repair failed
- PHP跨站脚本攻击(XSS)漏洞修复方法(一)
- Windows下获取网络连线实际名称,加强IP类设置脚本的兼容性
- Android APP 快速 Pad 化实现
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 通过视频着色进行自监督跟踪
- Python爬虫:一些常用的爬虫技巧总结
- 带你用 Python 实现自动化群控(入门篇)
- Chrome终于上线这项重磅功能,中国用户苦等多年!
- YOLO 算法最全综述:从 YOLOv1 到 YOLOv5
- 《JavaScript ES6 函数式编程入门经典》读书笔记
- Java9-Reactive Stream API响应式编程
- mybatis-plus增删改查以及前后端分离模式下的项目应用
- docker(常用软件安装)
- PyTorch版:集成注意力和MobileNet的YOLOv4
- 从源代码级别看懂MinIO对象存储网关的实现
- 4种主流超参数调优技术
- 一分钟学Python| 面向对象(上)
- Python 为什么不支持 switch 语句?
- 你还在认为 count(1) 比 count(*) 效率高?