simple-nvr:开源的视频监控 NVR 项目

科长
2024-11-18 / 0 评论 / 4 阅读 / 正在检测是否收录...

项目简介

Simple NVR 是一个开源的网络视频录像机(NVR),它被设计为在低资源消耗的廉价硬件上运行,例如配备硬盘的 Raspberry Pi。这个项目能够实现24/7的视频流从网络摄像头保存下来,并且可以通过一个基础的Web界面进行文件浏览。Simple NVR 需要安装 FFmpeg,并且配置要求最低。该项目使用 Node.js 编写,并利用 FFmpeg 进行视频处理。

部署教程

Simple NVR 依赖于 Node 环境和 FFmpeg 来处理视频流,因此你需要确保 Node 和 FFmpeg 已经安装在你的系统上。

运行

通过 Git 克隆仓库到本地或者直接下载 ZIP 文件并解压:

git clone https://github.com/TomHumphries/simple-nvr.git

然后进入到 Simple NVR 的目录中,使用 npm 安装所需的依赖:

cd simple-nvr
npm install

然后编辑项目目录下的cameras.json添加我们的监控设备:

监控需要支持 rtsp 推流才可以!
[
    {
         # 监控名称
        "name": "example-camera-name", 
              # 监控的rtsp推流地址
        "url": "rtsp://192.168.255.255:554/11" 
    }
]

添加完成之后还需要配置监控录像存放的位置,修改存放的位置需要编辑项目根目录下的storage.json文件:

{
      # 录像存放位置
    "rootpath": "/media/pi/ExternalHDD1"
}

然后启动服务:

node nvr.js

这个时候NVR就开始工作了,后台会持续录像,我们也可以启动web管理界面来查看摄像头的录像文件和实时画面,通过启动nvr-browser.js

node nvr-browser.js

访问3000端口:

该服务会每五分钟保存一下视频片段,当天结束后会自动生成24小时的长录像文件。

使用pm2运行

PM2(Process Manager 2)是一个流行的Node.js应用程序的进程管理器。它允许您在多种环境中(如生产环境)管理和保持应用程序的稳定性。

可以通过下面的命令安装pm2工具:

npm install pm2@latest -g

然后启动NVR服务:

# 启动录像服务
pm2 start nvr.js --name nvr
# 启动 web 服务
pm2 start nvr-browser.js --name nvr-web

然后可以通过下面的命令查看运行的服务:

pm2 list

0

评论 (0)

取消