Table of contents
Open Table of contents
前言
相信很多和我一样的有宠家庭,都会为了掌握宠物的行踪或拆家的进展而购买了监控摄像头,通过互联网掌握藏在家中猫猫狗狗的踪迹,抑或是其他的为了家庭安全而购买摄像头起安保作用的家庭,都会面临相同的几个问题:我们真的需要云存储吗?我们真的信任摄像头厂商吗?我回家以后需要关掉摄像头吗?
猫猫和我一样表示怀疑,以及各个厂商的云存储价格,打消了我的想法。我一开始的方案是将监控接入了群晖的 Surveillance Station,打开了群晖的动态提醒,但随之而来的便是每天无数的提醒,监控视野内但凡有一点点风吹草动,便会让我手机震动不停。
直到我后来看到一篇关于 iCloud 安防摄像头的文档,为何不接入 HomeKit 使用 iCloud 存储呢?苹果还是相当良心的,摄像头存储的录像并不占用原有的 iCloud 空间。50 GB 方案:可添加一个摄像头。200 GB 方案:最多可添加五个摄像头。2 TB 及更高方案:不限制摄像头数量。作为高贵的美区 Apple One 超大杯车主,理论上是可以添加无数个摄像头的。具体的内容大家可以看下面的文档。
在 iCloud 中使用 HomeKit 安全视频储存加密安保摄像头录制的视频
话不多说,那就准备开搞!以往来说,其他的设备加入 HomeKit 我会选择通过 Home Assistant 进行中转,但是因为 HA 接入的摄像头好像并不支持 动态监测、人脸识别等 HomeKit 安防高级功能,所以我们这里会使用一个新的工具: Scrypted。
Scrypted Docker 安装
Scrypted 本身是支持 Home Assistant Add On 的,所以不是通过 Container 安装 Home Assistant 可以方便的跟随这里的文档进行安装:Scrypted 文档。
因为我的 Home Assistant 是通过 Docker 安装的 HA Core,不支持 Add On,所以这里需要通过 Docker 来进行安装,之前提到过,我的 Home Server 运行的是 NixOS,所以可以很方便的配置 Docker,具体的配置项如下,将其改为 Docker Compose 也很方便,所以这里不再提供。
{ config, pkgs, ... }: {
virtualisation.oci-containers.containers."scrypted" = {
autoStart = true;
image = "koush/scrypted:latest";
volumes = [ "/orchestr/static/docker/scrypted:/server/volume" ];
extraOptions = [ "--network=host" ];
environment = { TZ = "Asia/Shanghai"; };
};
}
Scrypted 配置
安装完成后,我们便可以在浏览器内进入 scrypted 后台,注意这里的 https
不可省略,具体的网址为:
https://your-host-ip:10443
按照网页提示设置账号密码进入主界面选择 Management Console
即可。
scrypted 插件安装
点击左侧栏内 Plugins
,然后点击 Install
进入以下界面:
安装以下插件:
- HomeKit
- Onvif Camera Plugin 或 RTSP Camera Plugin
- OpenCV Motion Detection
- Snapshot Plugin
- Video Analysis Plugin
- WebRTC Plugin
注意,安装完 HomeKit
插件后切勿着急配置,继续看完下文。
Scrypted Server Address 设置
注意,此步不可省略,不然会出现摄像头无画面的情况。依次点击左侧边栏 Settings
,General
,即可看到界面设置。
scrypted 摄像头配置
这里以 Onvif 协议举例,RTSP 配置过程基本一致,点击 Onvif Camera Plugin
进入插件配置,点击 Add New
,进入以下界面:
输入摄像头相关参数,点击 Create
,进入摄像头配置界面,这时,应当能看到摄像头的 SnapShot ,因为我这里已经配置过一遍了,所以界面可能略有不同。点击右侧的 Extensions
,将以下的插件勾选后点击 Save
。
Scrypted 插件功能
一般情况下如果使用没有异常,尽可能保留默认配置即可。
Stream
一般的家用摄像头都会有两个视频流,一般其中一个为高画质,一个为低画质,大家可以根据自己的需求选择相应的视频流,比如在家时适用高画质,出门适用低画质等。
SnapShot
可以选择一些视频预览画面的选项,比如从哪个视频流截取画面等。
Motion Detection
这里需要说明的是 Built In Motion Sensor
选项,Assist
为使用摄像头默认内置的动态监测算法,Replace
为使用 OpenCV
进行替代,如果你的摄像头没有内建相应功能的话,建议选择 Replace
。
Homekit 配置
这里有一个坑大家需要注意,HomeKit 摄像头的配置不是在 Scrypted 的 HomeKit 插件页面进行配置,而是在摄像头的 Extensions
页面,因为 Homekit 摄像头这里的默认配置是 Accessory
而不是Bridge
。对于摄像头而言我更青睐于配件而非桥接,毕竟一次性桥接一串设备进去,将来如果有什么问题需要单独配置某个设备的话,需要整个桥接的所有设备一起移除重新配置,较为麻烦。
这里有一个选项,RTP Sender
提供两个选择,Ffmpeg
与 Scrpyted
,Ffmpeg
大家众所周知,不做赘述,Scrpyted
为一个实验性选项,在这里有着更快视频转接速度,即更低的延时。
注意,这里配置完成后可能需要重启 Homekie 或 Scrypted 服务,注意观看网页顶部蓝色框的提示,这里不再截图展示。
接下来点击 Pairing
,打开 Home App,点击添加设备,扫描屏幕上的二维码,可能需要输入下方的 Pairing Code
,完成后即可将摄像头加入家庭。
Home App 设置
在添加完摄像头,App 内便会引导进行摄像头的配置,比如视频录制选项,在家或外出是是否仅串流或开启录制等,以及动态监测是否监测人,动物,包裹等,如果是室外摄像头,还可以监测汽车等,也可以开启人脸识别,避免自己在家时被 Home App 不停地通知监测到有人进入摄像头。
配置过程忘记截图,只贴一些完成后的截图吧:
结束语
到此为止,将第三方摄像头接入 Homekit 的工作就宣告结束,我们可以在这步完成后便关闭摄像头的联网权限。如果大家在配置过程中遇到什么问题,可以留言,博主将在看到后及时回复。