标签: 开源
CamKeep:专为家庭 NAS 与小主机打造的轻量级自建视频监控系统
如今在家里装一两个网络摄像头,几乎成了许多家庭的刚需——有人为了看家防盗,有人为了随时看一眼熟睡的婴儿,还有人为了在上班时抓拍家里宠物的搞笑日常。 市面上的智能摄像头硬件往往几十到一百出头就能买到,性价比看似极高。但真正用上之后,许多人都会遇到几道躲不开的“坎”: 无休止的云存储订阅套路:不买云存储,历史录像就只能看十几秒甚至只有缩略图;如果家里装了三四个摄像头,一年光是交云存会员费就比摄像头本身还要贵。 挥之不去的隐私安全隐忧:家里的客厅、卧室、大门口实时画面,全部通过第三方厂商的云端中转和存储,隔三岔五爆出的“云端漏洞”或“监控泄露”新闻,让人心里总是不踏实。 传统开源 NVR 又重又繁琐:想在自己的 NAS 或软路由上自建 NVR(网络视频录像机)?市面上的传统方案要么配置复杂得像工业视频工程软件,要么对 CPU 和显卡性能要求苛刻,家里几十瓦的小主机跑上去风扇狂转、发热剧增,实在经不起长期 7×24 小时折腾。 正是出于**“想要一个极简、省电、好用且 100% 掌握在自己手中”**的初衷,我打磨了这款轻量级自托管 NVR——CamKeep。 今天这篇文章不聊晦涩的底层音视频编解码算法,就单纯从家庭用户和 HomeLab 爱好者的日常视角,聊聊它是如何帮我们轻松接管家庭安防的。 什么是 CamKeep? 简单来说,CamKeep 是一个专为家庭 NAS、迷你主机和小服务器设计的轻量级自建网络视频录像系统。 它的核心任务非常纯粹: 接入流:把家里各个品牌(海康、大华、TP-Link、各种海思/雄迈方案等)摄像头的视频流统一聚合起来; 录下来:按照你设定的时间规则,安静无感地把视频持久化存到你的 NAS 硬盘上; 查得到:提供一个清爽易用的 Web 网页端,让你随时随地像刷短视频一样顺滑地拖动时间轴回看录像。 它没有庞杂的企业级安防架构,也不强求高昂的硬件配置。只要你的设备支持运行 Docker(无论是群晖、威联通、Unraid、TrueNAS,还是装了 Linux 的小主机、N1 盒子、树莓派),一条命令就能轻松跑起来。 为什么选择 CamKeep?日常使用中的几大亮点 1. 100% 局域网本地优先,彻底告别云端与订阅 CamKeep 在设计之初就确立了**“内网安全、本地优先”**的原则: 零外部依赖:它不需要注册任何外部云端账号,不依赖厂商的云服务中转,更不会向外界上传你的任何视频片段与设备信息; 免订阅费:你的存储空间有多大,录像就能存多久。硬盘满了?系统会自动按设定的天数循环清理最旧的片段,全程全自动; 本地权限可控:系统内置了本地用户与权限管理,可以为家人创建只读账号,甚至单独限制某个账号只能看门口摄像头,兼顾便利与隐私。 2. 极致的低功耗设计,老旧小主机也能轻松常开 对于 24 小时开机的家庭设备,电耗和发热是必须考虑的现实问题。很多传统 NVR 动辄在后台对视频进行二次转码,导致 CPU 占用率居高不下。 CamKeep 深度复用了开源流媒体项目 go2rtc 的流处理能力,录制时默认采用**“直接流拷贝(Stream-Copy)”**技术——摄像头推过来什么格式,系统就原汁原味地分片写入磁盘,CPU 几乎只需要处理基础的 I/O 写入。这意味着即便是在几瓦功耗的软路由、老款 ARM 设备或低配 J4125 / N100 小主机上接入多路 2K/4K 摄像头,CPU 占用通常也仅有个位数,设备完全不会发烫。 ...