技术标签: node.js html5 vue.js javascript
首先根据相关摄像头内附的说明书对摄像头进行安装以及wifi配置或者通过网线直连,配置完成后确保摄像头画面能够在手机APP或者相关应用程序上正常播放。
然后进入海康威视官网下载并安装SADP摄像头IP搜索工具。
打开SADP(设备网络搜索),即能查看当前局域网下的所有海康摄像头IP地址。
下面进行摄像头rtsp流播放测试:
1.下载VLC media player,并安装打开。
2.打开媒体 --> 网络串流 --> 网络。
3.输入海康摄像头的rtsp地址并进行播放。海康的rtsp地址一般组成如下:rtsp://admin:{摄像头背后验证码或密码}@{摄像头IP地址}:554/h264/ch1/main/av_stream
能够正常播放后,进行下一步操作。
要将监控画面在web端显示需要流媒体服务器的支持,当前主流的流媒体服务主要通过SRS、nginx、nodejs等搭建,下面主要介绍由node搭建的流媒体服务器。
要求电脑上有node环境,若没有请去node官网进行下载以及安装。安装完成后打开cmd输入node -v查看node版本以及检查node是否安装成功。
该流媒体服务器采用node-media-server
插件,具体搭建流程如下:
1.新建相关文件夹。
2.使用cmd并进入新建的文件夹内,输入npm install node-media-server
安装相关插件。
3.安装完成后在新建的文件夹内新建一个js文件,在js文件内输入相关调用以及配置代码。
const NodeMediaServer= require('node-media-server');
const config = {
rtmp: {
port: 1935,
chunk_size: 60000,
gop_cache: true,
ping: 60,
ping_timeout: 30
},
http: {
port: 8000,
allow_origin: '*',
}
};
var nms = new NodeMediaServer(config)
nms.run();
4.运行node服务。
显示如上界面则表示启动完成,可以在浏览器上登录 localhost:8000/admin
查看node服务页面。
因为rtsp流无法直接在web端播放,因此通常将rtsp流转化为rtmp、httpFlv、hls等编码格式,因为rtmp依赖flash,hls流的延迟太大,因此选用httpFlv作为传输的码流格式,转码方式如下:
1.下载并安装ffmpeg。
2.配置环境变量并在cmd使用ffmpeg -h
测试。
3.使用ffmpeg指令对rtsp流进行转码以及推流(下方的node端地址中的STREAM_NAME_agv_1可以随意更改表示直播的“房间”
)。
4.再次打开VLC并打开网络串流,输入httpFlv码流地址进行播放,能够正常播放即转码完成。(将上方图片的node端地址中的rtmp改为http并加入后缀.flv即http://{node服务的IP地址以及端口}/live/STREAM_NAME_agv_1.flv
)。
web端显示需要支持httpFlv格式的播放器,这边选用的是LivePlayer.js。根据其相关配置配置完后,即可在web端显示监控画面。
文章浏览阅读1k次。读《疯狂的程序员》后感 花了几天功夫,把《疯狂的程序员》这本书看完了,这本书,是我无意间在校图书馆看到的,出版日期是2008年的,到现在为止已经过去好几年了,作者绝影。是在csdn上连载的博客,不过不知道作者在csdn上的名字是什么,自己搜索找,竟然没找到,很遗憾。书中讲述的是作者从大学时期到工作,再到创业7年时间的精力,说实话,作者的语文功底非常不错,能够生动的刻画
文章浏览阅读244次。感觉普通贪心是每一个维度都是平等的,没有优先级。而可后悔贪心是存在某个维度是不可变的,不能直接用排序或者堆进行维护,常常需要经过某种处理,通过挖掘出题目中关于不可变维度的特殊性质,使其可以用排序或者堆等数据结构进行贪心。可后悔贪心常用堆(priority_queue)进行维护。_e. buy low sell high
文章浏览阅读6.5k次,点赞14次,收藏93次。AMCL是ros导航中的一个定位功能包。其实现了机器人在2D平面中基于概率方法的定位系统。该方法使用粒子滤波器来针对已知地图跟踪机器人的位姿。MCL与AMCL的区别它们最重要的区别应该是重采用过程。AMCL在采样过程中仍然会随机的增加小数量的粒子。这一步骤正式为了解决MCL不能处理的重定位问题。当粒子逐渐聚集,其它地方的粒子将慢慢消失。对于MCL来说,如果此时将机器人搬动到另一个地方。此时原来..._amcl源码
文章浏览阅读3.7k次,点赞6次,收藏30次。# 导入需要的模块from glob import globfrom PIL import Imageimport os# 图片路径# 使用 glob模块 获得文件夹内所有jpg图像img_path = glob("./*.jpg")#存储(输出)路径path_save = "./result"for i,file in enumerate(img_path): name = os.path.join(path_save, "%d.jpg"%i) im = ..._image.open(image_file).resize((720, 1280))
文章浏览阅读1.9k次。1. 什么是目标说明除了 选项,所有出现在 Nmap 命令行上的命令字符串 都被视为对目标主机的说明。 最简单的目标说明是指定一个目标 IP 地址或主机名。2. 指定目标 IP 地址2.1. 普通格式 IP 地址指定普通的 IP 地址很简单,比如在 nmap 命令中跟随这样 192.168.0.1 格式的 IP 地址即可,这样每次只能指定一个 IP 地址。但是这样指定一个 IP 地址也有它的不足或是不够灵活的地方,比如需要同时扫描多个 IP地址,而且这几个 IP 地址的主机号是连续的也就是这几_nmap 扫描文件中的目标
文章浏览阅读151次。在面试一些新程序员的时候,当问他为什么选择.net方向时,经常听到一些这样的回答:记得曾经我的老师对我们说,当你在开发语言和工具方面不知道怎么选择的时候,那么你只要跟着微软走就行了.所以最终他选择了.net.我想大家都曾有过类似的经历.当经历过数年之后,一些人在.net的某方面成为了专家,有些人精通数据库方面,有些人精通web界面设计,有些人精通系统架构.还有一些人是什么都会,但不管哪..._.net程序员到新公司怎么快速熟悉一个业余
文章浏览阅读1.1k次。在下面的示例中,我们将演示如何拖放按钮小部件。from PyQt5.Qt import QPushButton, QWidget, QApplicationfrom PyQt5.QtCore import Qt, QMimeDatafrom PyQt5.QtGui import QDragimport sys#按钮类class Button(QPushButton): d..._pyqt qdrag
文章浏览阅读846次。Matlab进阶绘图第20期—带类别标签的三维柱状图_matlab画三标签柱状图
文章浏览阅读1.1k次。本文主要讲述了THREE.js中的不透明物体和透明物体的渲染顺序,主要涉及THREE.js的以下内容:Materialblending及blending相关的一系列属性Object3Ddepth原文:https://segmentfault.com/a/1190000041221932。_threejs 多个几何体展示顺序
文章浏览阅读428次,点赞9次,收藏8次。例如耽搁查询的排序、连接、扫描和GROUP BY字句同时执行,SQL SERVER根据系统的负载情况决定最优的并行等级,复杂的需要消耗大量的CPU的查询最适合并行处理。13、在查询Select语句中用Where字句限制返回的行数,避免表扫描,如果返回不必要的数据,浪费了服务器的I/O资源,加重了网络的负担降低性能。如果表很大,在表扫描的期间将表锁住,禁止其他的联接访问表,后果严重。其次,看一下SQL SERVER的数据存放的结构:一个页面的大小为8K(8060)字节,8个页面为一个盘区,按照B树存放。_mssql server 响应变慢了
文章浏览阅读2.4w次,点赞62次,收藏559次。1.应用场景更加高效地学习并达到运用Linux 2.学习/操作 linux运维学习需要分为四个阶段:初级入门、中级进阶、高级提升、资深方向细化。 第一阶段:初级入门 初级阶段需要把linux学习路线搞清楚,任何学习都是循序渐进的,所以学linux也是需要有一定的路线。 初级入门: Linux基础知识、基本命令(起源、组成、常用命令如cp、ls、fi..._linux学习路径
文章浏览阅读893次,点赞19次,收藏19次。1.背景介绍量子计算与通信技术是当今科技界最热门的研究领域之一。随着计算机科学、物理学、信息论等多个领域的发展,量子计算与通信技术已经从理论研究阶段迈出了实际应用的第一步。在这篇文章中,我们将深入探讨量子计算与通信技术的核心概念、算法原理、具体操作步骤以及数学模型公式。同时,我们还将分析其在未来发展趋势与挑战方面的展望。1.1 量子计算与通信技术的发展背景量子计算与通信技术的研究起源于..._量子计算辅助无线移动网络