跨境派

跨境派

跨境派,专注跨境行业新闻资讯、跨境电商知识分享!

当前位置:首页 > 工具系统 > 运营工具 > vue3使用webrtc-streamer查看实时监控(vue2同理)

vue3使用webrtc-streamer查看实时监控(vue2同理)

时间:2024-04-19 16:15:24 来源:网络cs 作者:淼淼 栏目:运营工具 阅读:

标签: 使用 

主备工作

下载插件

这里以webrtc-streamer v0.8.4为例子

下载对应系统的包,我这里下载的是Windows-AMD64-Release(可能比较忙,耐心等待或者其他方法)

下载完成后,解压,打开解压后的文件夹如下
在这里插入图片描述

检查视频流

运行webrtc-streamer.exe,默认打开8000端口,然后浏览器访问127.0.0.1:8000就可以看到本地监控了,我们测试一下视频流,只需要在后面加上/webrtcstreamer.html?video=rtsp://xxx:xxx@xxxxxx:xxxx看下监控画面能否出来,如果出不来,请检查视频流的格式是否为h265格式

如何查看视频流格式

安装VLC media player软件,打开后,按ctrl+n将视频流地址复制进去后,点击播放,视频出来后按ctrl+j就可以看到编解码器了,如果是H265格式,请改成H264即可

返回127.0.0.1:8000/webrtcstreamer.html?video=rtsp://xxx:xxx@xxxxxx:xxxx,刷新就出来了
在这里插入图片描述

至此准备完毕

打开刚刚解压的文件,找到html/webrtcstreamer.jshtml/libs/adapter.min.js两个文件,并复制到项目文件夹的public文件夹内,在index.html内引入这两个js

  <script src="/adapter.min.js"></script>  <script src="/webrtcstreamer.js"></script>

开始编码

新增组件 rtspVideo
<template>  <video id="rtspVideo" muted playsinline controls width="844" height="457"></video></template> <script setup>const props = defineProps({  rtspVideo: {    type: String,    required: true,    default: ''  }})const webRtcServer = ref();const initWebRtcServer = async () => {// import.meta.env.VITE_APP_PORT 是之前运行的exe文件的端口号,默认8000,请自行修改  let url = location.protocol + '//' + location.hostname + ':'+ import.meta.env.VITE_APP_PORT  nextTick(() => {    webRtcServer.value = new WebRtcStreamer('rtspVideo', url);    // 这里需要注意 connect有4个参数,我这边直接改了webrtcstreamer.js中的connect方法    // 将第三个参数设置默认值"rtptransport=tcp&timeout=60",其他不用管    webRtcServer.value.connect(props.rtspVideo)  })}//页面销毁时销毁webRtconUnmounted(() => {  webRtcServer.value.disconnect()  webRtcServer.value = null})initWebRtcServer();</script> <style scoped>#rtspVideo {  width: 100%;  height: 100%;  background-color: #262626;}</style>
webrtcstreamer.js connect方法修改

由原来

WebRtcStreamer.prototype.connect = function(videourl, audiourl, options, localstream, prefmime)

改成

WebRtcStreamer.prototype.connect = function(videourl, audiourl, options = "rtptransport=tcp&timeout=60", localstream, prefmime)
使用组件 rtspVideo
// rtspVideo为视频流地址 rtsp://xxx:xxx@xxxxxx:xxxx<myVideoPlay :rtspVideo="rtspVideo" />
至此大功告成

在这里插入图片描述

本文链接:https://www.kjpai.cn/news/2024-04-19/160382.html,文章来源:网络cs,作者:淼淼,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

文章评论