uniapp引入xgplayer(西瓜播放器)实现视频监控

文章讲述了在uniapp中因原生video组件功能有限,选择引入xgplayer-flv库来展示直播监控画面。通过render.js在视图层操作,降低通讯损耗并实现高性能交互。代码示例展示了如何在monitor.vue和xgplayer.vue中配置和使用xgplayer,包括视频列表渲染和播放器初始化,以及错误处理和截图保存功能。

开发背景

最近有个需求,需要在app中展示对应站房的实时监控画面,因为uniapp原有的video组件功能比较少就考虑到引入西瓜播放器的视频组件

开发准备

因为是直播流就选择了flvjs, 项目安装xgplayer-flv

npm install xgplayer-flv

通过render.js去做视图层,要注意的是nvue无法使用renderjs
详细文档可以自己去查看用法 https://uniapp.dcloud.net.cn/tutorial/renderjs.html

​renderjs 是一个运行在视图层的js。它比WXS更加强大。它只支持app-vue和web。
renderjs 的主要作用有2个:
1. 大幅降低逻辑层和视图层的通讯损耗,提供高性能视图交互能力
2. 在视图层操作dom,运行 for web 的 js库

基础代码

monitor.vue

<!-- monitor.vue -->
<template>
	<view class="uni-padding-wrap monitor_box list_box">
		<uni-row style="background-color: #fff;" class="list_video_box">
			<uni-col :span="8" class="list_video_item" v-for="(item,i) in videoLlist" :key="i">
				<xgplayer :id='`myVideo${i}`' :videoData="item"></xgplayer>
				<text class="text">{
  
  {item.mpName}}</text>
			</uni-col>
		</uni-row>
	</view>
</template>
<script>
	import xgplayer from './xgplayer.vue'
	export default {
     
     
		components: {
     
      xgplayer },
		data(){
     
     
			return {
     
     
				videoList: [], // 视频列表
			}
		}
	}
</script>

xgplayer.vue

<template>
	<view class
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值