位置: IT常识 - 正文

uniapp 使用 mui-player 插件播放 m3u8/flv 视频流(Uniapp 使用mocjk)

编辑:rootadmin
uniapp 使用 mui-player 插件播放 m3u8/flv 视频流

推荐整理分享uniapp 使用 mui-player 插件播放 m3u8/flv 视频流(Uniapp 使用mocjk),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uniapp使用教程,uniapp如何使用,uniapp使用muiplayer,uniapp用法,Uniapp 使用mocjk,Uniapp 使用甘特图插件,Uniapp 使用缓存会被修改吗,uniapp使用muiplayer,内容如对您有帮助,希望把文章链接给更多的朋友!

背景:uniapp 开发的h5项目,需要播放m3u8/flv后缀的视频,网上有很多视频插件,但是样式和效果不尽如人意,博主最后选择mui-player插件,定制化稍微强一点以及有官方文档可以阅读,官网文档https://muiplayer.js.org/zh/guide/

tips:建议先阅读官方文档,再在页面进行引入

uniapp 使用 mui-player 插件播放 m3u8/flv 视频流(Uniapp 使用mocjk)

博主最后实现的效果如下,pc端和移动端为两种展示样式,pc可以设置声音、播放速度、分辨率、全屏、画中画等功能,具体还有其他的功能自定义可以参照官网,官网的说明很详细以及有示例进行参考;移动端和pc端的功能大差不差,只是展现形式略有差别。 1、安装mui-player插件

npm i mui-player --save

2、页面引入,可选择在需要展示视频的页面直接引入,也可以放入一个公共组件,这样方便多个页面都会使用播放器的情况,博主这里将播放器作为一个公共组件,在组件里面引入

// 播放器样式文件import 'mui-player/dist/mui-player.min.css'// npm安装方式引入mui-playerimport MuiPlayer from 'mui-player'// 要播放m3u8的视频就必须要引入hls.jsimport Hls from 'hls.js'// 要播放flv的视频就必须要引入flv.jsimport Flv from 'flv.js'// 要设置pc端视频的清晰度需要引入pc端扩展import MuiPlayerDesktopPlugin from 'mui-player-desktop-plugin'

3、template模板

<template><view id="mui-player"><!-- 可在这里添加你想要覆盖在视频上面的内容,这里我加了一个关闭按钮,层级最高,不会影响视频的播放 --><image v-if="showCloseIcon" src="@/sub-live/static/close.png" class="pos-a full-close" @click.stop="videoClose"></view></template>

4、data定一个空的mp对象

data() {return {mp: {}}},

5、需要向使用的页面传递的参数

props: {// 视频流地址,必传src: {type: String,default: ''},// 视频封面图,可选poster: {type: String,default: ''},// 是否要展示关闭视频图标showCloseIcon: {type: Boolean,default: false},// 当前视频是否是直播模式live: {type: Boolean,default: false},// 兼容音频m3u8(有些音频地址也是m3u8,但是音频不需要播放样式,所以需要兼容)isZero: {type: Boolean,default: false},// 设置pc/移动端清晰度选择childConfig: {type: Array,default: () => [{functions: '高清',selected: true},{functions: '标清'},{functions: '流畅'},]}}

6、mounted生命周期初始化

mounted() {// 防止this的改变const _this = this;// 根据视频路径后缀判断当前为m3u8还是flv的视频流var flieArr = _this.src.split('.');var suffix = flieArr[flieArr.length - 1];// m3u8格式var a = suffix.indexOf('m3u8') !== -1// flv格式var b = suffix.indexOf('flv') !== -1var c = {}// m3u8格式的视频配置if (a) {c = {type: 'hls',loader: Hls,config: {debug: false,}}}// flv格式的视频配置if (b) {c = {type: 'flv',loader: Flv,config: {cors: true},}}// 设置宽高,兼容音频,音频时高度为1,必须设置高度,不然音频没发播放,初始化会失败var sWidth = uni.getSystemInfoSync().screenWidth; // 获取屏幕宽度var width = 1;if (!_this.isZero) { // 不为音频if (_this.$util.isMobile()) { // 移动端动态获取width = sWidth;} else {width = 640; // pc端固定宽度为640}}var height = 1;if (!_this.isZero) {height = parseInt(width * 9 / 16) // 可改成你想设置的视频的高度,博主这里设置为宽高比为16:9的视频}_this.mp = new MuiPlayer({// 指定播放器容器container: '#mui-player',// 视频播放的资源地址src: _this.src,// 是否自动播放,亲测在ios某些机型上自动播放失效autoplay: false,// 是否静音播放muted: false,// 初始化播放器宽度width: width,// 初始化播放器高度height: height,// 播放器容器是否自适应视频高度autoFit: false,// 是否循环播放loop: false,// 视频封面的资源地址poster: _this.poster,// 是否开启直播模式,直播模式默认菜单配置不允许控制播放速度以及循环播放live: _this.live,// 配置
本文链接地址:https://www.jiuchutong.com/zhishi/283613.html 转载请保留说明!

上一篇:月入2万的10个小生意,创意是最赚钱的生意(月入2万的10个小生意低成本)

下一篇:Win7旗舰版系统在A4纸上排版打印5寸照片的方法(win7旗舰版系统鼠标不能动了)

  • 荣耀magic3怎么设置软件应用锁(荣耀magic3怎么设置桌面时间和天气)

    荣耀magic3怎么设置软件应用锁(荣耀magic3怎么设置桌面时间和天气)

  • 快手怎么反名(快手反名教程)

    快手怎么反名(快手反名教程)

  • vivo深色模式怎么设置(vivo深色模式怎么调回来)

    vivo深色模式怎么设置(vivo深色模式怎么调回来)

  • 二维码是黑色怎么回事(二维码是黑色怎么弄)

    二维码是黑色怎么回事(二维码是黑色怎么弄)

  • 硬盘可以装几个(电脑硬盘可以装几个)

    硬盘可以装几个(电脑硬盘可以装几个)

  • qq没有访问操作权限是什么意思(qq没有访问操作权限是怎么回事)

    qq没有访问操作权限是什么意思(qq没有访问操作权限是怎么回事)

  • 苹果11电池能用几个小时(苹果11电池能用几年呢)

    苹果11电池能用几个小时(苹果11电池能用几年呢)

  • 安卓手机怎么升级系统版本(安卓手机怎么升级安卓版本)

    安卓手机怎么升级系统版本(安卓手机怎么升级安卓版本)

  • 华为mate30pro青山黛什么时候上市(华为mate30Pro青山黛后盖)

    华为mate30pro青山黛什么时候上市(华为mate30Pro青山黛后盖)

  • 手机是什么电池(vivo手机是什么电池)

    手机是什么电池(vivo手机是什么电池)

  • 华为nova系列主打什么方面(华为nova 7 pro)

    华为nova系列主打什么方面(华为nova 7 pro)

  • 三遥功能是哪三遥(三遥开关图片)

    三遥功能是哪三遥(三遥开关图片)

  • rx580配什么主板(rx580配什么主板和cpu发挥最大性能)

    rx580配什么主板(rx580配什么主板和cpu发挥最大性能)

  • word栏间加分割线的如何快捷(word2016栏间加分隔线)

    word栏间加分割线的如何快捷(word2016栏间加分隔线)

  • btv-w09是什么型号(btv-w09怎么样)

    btv-w09是什么型号(btv-w09怎么样)

  • airpods无线和有线的区别(airpods无线和有线充电盒有什么区别)

    airpods无线和有线的区别(airpods无线和有线充电盒有什么区别)

  • 苹果6蓝牙搜索一直在转(苹果6蓝牙搜索不到)

    苹果6蓝牙搜索一直在转(苹果6蓝牙搜索不到)

  • 微信接收的文件保存在哪里(微信接收的文件为什么打不开)

    微信接收的文件保存在哪里(微信接收的文件为什么打不开)

  • Linux date日期格式及加减运算(linux日期格式)

    Linux date日期格式及加减运算(linux日期格式)

  • Win11怎么双击APK直接安装?无需Amazon安装Win11安卓子系统APK应用教程(下载)(win11怎么双击直接打开程序)

    Win11怎么双击APK直接安装?无需Amazon安装Win11安卓子系统APK应用教程(下载)(win11怎么双击直接打开程序)

  • win10开机强制进入安全模式怎么解决系统故障(win10开机强制进入高级选项怎么退出)

    win10开机强制进入安全模式怎么解决系统故障(win10开机强制进入高级选项怎么退出)

  • urlproc.exe是什么进程其作用是什么如何结束(url是什么软件)

    urlproc.exe是什么进程其作用是什么如何结束(url是什么软件)

  • 03-JavaScript基础

    03-JavaScript基础

  • DedeCMS分页太多 页码智能显示的方法(分页浏览是什么意思)

    DedeCMS分页太多 页码智能显示的方法(分页浏览是什么意思)

  • (15) 如何设置Linux实现与Windows的共享访问?  Linux Windows  乐维UP(如何设置linux)

    (15) 如何设置Linux实现与Windows的共享访问? Linux Windows 乐维UP(如何设置linux)

  • 生产税净额计算实例
  • 稳岗返还多久能到账
  • 金税四期监控个人在银行的存款吗
  • 小规模季度开票超过30怎么纳税
  • 进项税未抵扣进账了怎么处理
  • 退回的附加税能退回来吗
  • 税收的优惠性政策包括哪些
  • 应收票据的会计分录例题
  • 收到别人的承兑怎么入账
  • 哪些收据可以税务登记
  • 提取公积金收费比例
  • 购买实验器材会计分录
  • 车间领用周转材料会计分录怎么写
  • 企业承担个人所得税账务处理
  • 不能抵扣的进项税怎么做账
  • 增值税专用发票跨月退回怎么办?
  • 居委会有没有税收政策
  • 快递费税率是6还是9
  • 外购固定资产如何入账
  • 没有收到发票的费用怎么入账
  • 生产车间的费用会计分录
  • ie浏览器打开后显示已停止工作
  • 软件开发过程rup
  • 鸿蒙系统怎么隐藏状态栏
  • 应用程序错误0x000000
  • 帮公司垫付的钱怎么要
  • bios设置内存频率后黑屏
  • php获取长度
  • 增值税专票开错了可以作废吗
  • 笔记本cpu温度高如何处理
  • 员工冲借款应该怎么做账
  • 房产自用或出租什么意思
  • 破产清算中欠发工资应否交个人所得税
  • 加计抵减和加计扣除是一样的吗
  • 2021mathorcupc题答案
  • 租赁费用增值税率
  • yolov5增加检测层
  • 未分配利润为负数怎么调整
  • 电费发票查不到
  • 应收账款坏账准备怎么计算
  • python科学计算库有哪些
  • 会员卡怎样批量生成
  • mongodb局域网访问
  • 销售费用包括哪些明细科目
  • 商业收入税收怎么收费
  • sql server 2008数据库引擎等安装失败
  • access字符型数据
  • 外币账户的设置在哪里
  • 企业之间交换房地产要交土地增值税吗
  • 个税申报哪些可以减免
  • 非盈利组织固定资产金额标准最新规定
  • 发票种类包括
  • 财政补贴的会计分录
  • 防暑降温费是不是必须发
  • 银行承兑汇票到期日后多久可以承兑
  • 未付货款尾款会计分录
  • 跨年进项发票怎样账务处理
  • 不是公司的车费用能走公司吗
  • 银行承兑汇票利息归谁
  • 行政事业单位支出范围和标准
  • 企业如何开户流程
  • 固定资产报废属于非流动资产处置损失吗
  • 年初未分配利润在利润表怎么填
  • 短期薪酬主要包括
  • Win7怎么把桌面文件迁移到D盘中
  • Ubuntu操作系统安装步骤
  • vrvedp_m.exe是什么进程
  • windows8蓝牙设置在哪里
  • remupd.exe - remupd是什么进程 有什么用
  • win10系统如何快速回到桌面
  • windows 8怎么样
  • unity 接入sdk
  • 离线安装驱动
  • 详解Python中的Descriptor描述符类
  • 广东省地税局局长 吴
  • 电子税务局的社保不能扣款怎么办
  • 污水处理费收入
  • 有发票代码和发票号码能下载到电子发票吗
  • 烟叶税额
  • 佛山退休办理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设