跳到正文
发现
Neolink.NET:Reolink 摄像头桥接与 NVR
桌面应用生活服务

Neolink.NET:Reolink 摄像头桥接与 NVR

将使用 Reolink 私有协议的摄像头转成标准 RTSP,并自带多路摄像头 Web 界面与录像功能的开源服务。

admin
发布于 2026-10-28 · 更新于 2026-11-02
浏览
4
访问
0
下载
0
版本
v1.2.2
平台
Windows
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

Neolink.NET 是一个用纯 C#/.NET 编写的自托管摄像头服务,专门面向那些使用 Reolink 私有「Baichuan」协议(TCP 9000 端口)而不是标准 RTSP/ONVIF 的 Reolink 摄像头,例如 B800/D800、B400/D400、E1、Lumus、510A、Duo、TrackMix、Argus Solar、Solar Floodlight 等型号。

它会登录摄像头、解复用其媒体流,再以符合标准的 RTSP 重新提供出去,让 Frigate、Blue Iris、Home Assistant、Shinobi、VLC、ffmpeg 等 NVR 软件直接接入。除此之外,它还内置一个浏览器端 UI:多摄像头墙、低延迟实时画面、事件回看、时间线、服务器监控,并提供面向 Home Assistant 的 MQTT 原生集成。

摄像头本身无需改造,也不需要 Reolink 的 NVR 硬件。整个方案不做转码、不依赖 GStreamer。

┌──────────┐  Baichuan (9000)  ┌─────────────────┐  RTSP (8654)   ┌──────────────────┐
│ Reolink  │ ────────────────► │                 │ ─────────────► │ Frigate / VLC /  │
│ cameras  │                   │   Neolink.NET   │                │ Blue Iris / HA   │
└──────────┘                   │  (one process)  │  HTTP/WS (8655)┌──────────────────┐
                               │                 │ ─────────────► │ Browser web UI   │
                               └─────────────────┘                └──────────────────┘

主要功能

  • RTSP 桥接:把 Baichuan 私有流转换为标准 RTSP,默认监听 8654 端口,地址形如 rtsp://localhost:8654/<camera-name>。
  • 内置 Web UI(8655 端口):多摄像头墙,图块可调整大小;实时画面低延迟;无插件、无转码。
  • 事件回看:支持深链接的事件页、按摄像头与威胁类型筛选、1–16× 回放。
  • 时间线:多摄像头同步拖动,带覆盖条与事件标记,支持仅播放事件片段与导出。
  • 录像管理:按摄像头设置事件类型与保留策略、定时抓拍、24/7 录制与素材生命周期。
  • 服务器监控:CPU/内存/存储曲线、各摄像头可用性评分、前端健康指标、容量预测。
  • 摄像头设置:码流编码表、灯光、画面、侦测灵敏度与区域、警笛,改动可暂存、确认后才下发。
  • Home Assistant / MQTT:通过 MQTT Discovery 自动把每台摄像头注册为设备,提供移动/人/车/动物传感器、控制与可用性状态,由摄像头自身的侦测事件驱动;门铃按键也会作为 MQTT 事件上报。
  • 轻量设计:不做本地目标检测,不解码、不转码、不逐帧分析,只监听摄像头推来的报警消息;因此无需 GPU/Coral,在树莓派或小型 NAS 容器上即可长期运行。
  • 多架构 Docker 镜像(amd64 + arm64),并提供 Home Assistant 插件与 Windows MSI 安装包。

界面截图:事件页、时间线、监控页、录像设置、摄像头设置(截图为合成演示画面)。

安装与使用

先用演示模式试一下(无需摄像头、无需配置)

docker run --rm -p 8655:8655 ghcr.io/borexola/neolink.net:latest --demo

打开 http://localhost:8655,即可看到带四台合成摄像头的完整产品界面:实时运动画面、每 1–2 分钟触发的侦测、预置事件历史、可在时间线上拖动的 24/7 录像。演示世界存放在临时目录,每六小时重置,容器删除即消失。裸机同样可跑:neolink.net --demo(需要 PATH 中有 ffmpeg)。

Docker(推荐)

完整指南见 docs/docker-install.md(镜像标签、docker compose、Unraid 模板、升级、自行构建)。

mkdir -p config
docker run -d --name neolink --restart unless-stopped \
    -p 8654:8654 -p 8655:8655 \
    -e TZ=Europe/London \
    -v "$PWD/config:/config" \
    ghcr.io/borexola/neolink.net:latest

首次启动会在 config/ 写入带注释的示例配置,并开放 Web UI(http://localhost:8655)。在「服务器设置」(齿轮图标)里用与 Reolink App 相同的账号添加摄像头,重启后即可通过 rtsp://localhost:8654/<camera-name> 取流。生产环境建议固定版本标签(如 :1.0.1)。

Home Assistant 插件

运行 Home Assistant OS 或 Supervised 时,可直接以原生插件安装:在插件商店添加仓库 https://github.com/borexola/neolink.net,安装 Neolink.NET,在 Configuration 标签页填写摄像头(名称、IP、账号),启动后点击 OPEN WEB UI。若已安装 Mosquitto broker 插件,MQTT 会在每次启动时自动接好,摄像头直接出现在 Home Assistant 中。录像写入 /media/neolink。仅支持 UDP 的电池摄像头需要改用同一商店中的 Neolink.NET (host network) 插件。

不用 Supervisor、以普通容器运行 Home Assistant 时,按上面的 Docker 方式部署即可,MQTT 集成同样可用。

Windows(无需 Docker)

从 releases 页面 下载 Neolink.NET.Desktop-X.Y.Z-win-x64.msi 并运行,有两种安装形态:

  • 桌面监控(默认):独立的摄像头墙窗口,托盘弹出真实 Windows 通知,连接你已有的服务器(Docker、插件或另一台机器)。
  • 完整独立系统:在功能页勾选 Local server (Windows service),同一个 MSI 会把完整服务端装成 Windows 服务,24/7 录像与推流,桌面端通过 http://localhost:8655 连接。

分步图文说明见 docs/windows-install.md 与 docs/desktop-app.md。

从源码构建

需要 .NET 10 SDK。

git clone https://github.com/borexola/neolink.net.git
cd neolink.net
cp src/Neolink.Server/config.example.json src/Neolink.Server/config.json  # 然后编辑
dotnet run --project src/Neolink.Server -c Release

生成单文件自包含二进制:

dotnet publish src/Neolink.Server -c Release -r linux-x64    # 或 win-x64、linux-arm64 等

注意事项

  • 型号覆盖有限:Reolink 机型众多且固件差异明显,同一功能在不同型号上表现可能不同。项目主要针对作者实际拥有的少数机型开发和测试,未接触过的型号「应该能用」但无法保证;遇到问题建议附日志提 issue,也欢迎提交在真机上验证过的 PR。
  • 需要 host network 的场景:仅支持 UDP 的电池摄像头,以及走 UDP 传输的 RTSP,需要 --network host;其余情况普通端口映射即可。
  • Windows 安装包尚未代码签名:首次运行 SmartScreen 会提示「Windows 已保护你的电脑」,需点击「更多信息」→「仍要运行」。
  • 检测能力取决于摄像头:人/车/动物等标签来自摄像头固件,需先在 Reolink App 中开启相应侦测类型,Neolink.NET 只负责转发;它自身不做任何服务端 AI 分析。
  • 许可证:AGPL-3.0。

本作品整理自 GitHub 开源项目 borexola/neolink.net,原作者 @borexola,许可证 AGPL-3.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v1.2.2当前版本

    Auto discovery of cameras on the LAN, cameras followed across an IP change, admin-only recording controls, and recording, security and reliability fixes.

  2. v1.2.1

    新增面向仅支持 UDP 的电池摄像头的 host network Home Assistant 插件,端口被占用时插件拒绝启动;摄像头墙与实时画面启动更快、延迟更低;首次设置仅限局域网访问并开启登录保护、补充安全响应头;修复 AI 连接测试超时与图块卡在connecting的问题。

评论