摄像头配置
使用添加摄像头向导添加摄像头
添加摄像头向导是添加摄像头的推荐方式。在 中点击添加摄像头。向导会连接摄像头、测试各条流并生成摄像头配置,其中包括 go2rtc 转流和实时视图的流映射,因此常规配置无需手写 YAML。
步骤 1:命名并连接
输入摄像头名称、主机或 IP 地址以及登录凭证,然后选择向导查找摄像头流的方式:
- 探测摄像头:通过 ONVIF 查询摄像头(ONVIF 端口通常为 80 或 8080),并获取其流地址。有些摄像头使用独立的 ONVIF 服务账号而非设备管理员账号,还有一部分需要勾选使用摘要认证。
- 手动选择:根据所选摄像头品牌模板拼接流地址,支持的品牌包括 Dahua/Amcrest/EmpireTech、Hikvision/Uniview/Annke、Ubiquiti、Reolink、Axis、TP-Link 和 Foscam。选择其他则直接输入自定义 RTSP 地址。非 RTSP 类型的流必须手动配置。
你输入的名称会被转为小写,空格替换为下划线。如果转换后仍不是有效的配置键,向导会生成一个安全名称,并把你的输入保存为 friendly_name。
步骤 2:探测或截图
在探测模式下,向导会显示摄像头返回的信息,包括制造商、型号、固件、配置文件数量,以及是否支持 PTZ、预置位和自动追踪,还有探测到的 RTSP 地址。你可以逐条测试候选流,查看其分辨率、帧率、编解码器和截图,再决定使用哪一条。
在手动模式下,向导会测试按模板拼接出的地址,并显示同样的信息和截图。
如果找不到 RTSP 地址,可能是凭证有误,或者摄像头不支持 ONVIF。返回上一步改用手动选择。
步骤 3:配置流
为每条流选择要启用的功能,并通过添加另一个流添加摄像头的其他流,例如用子流做 detect、用主流做 record。至少有一条流需要启用 detect 功能才能继续。
减少摄像头连接:让输入经由 go2rtc 转流,使 Frigate 和实时视图共用一条与摄像头的连接,而不是各自建立独立连接。详见转流。
步骤 4:验证与测试
向导会连接每条流,获取实时预览、预估带宽和验证结果。它会检查最常见的配置错误,包括:
- 检测分辨率过高(增加资源消耗),或过低导致无法可靠检测、甚至完全无法探测
- 标记为
record的流,音频编解码器不是 AAC,或者完全没有音频 - 标记为
audio的流不包含音频流 - 给
record功能使用了转流输入 - 品牌相关问题,例如 Reolink 摄像头的 RTSP 流应改用 http-flv,或给
detect选了 Dahua/Hikvision 的子流
使用流兼容模式:让流经由 go2rtc 的 ffmpeg 模块转发。如果某条流多次尝试后仍无法加载,可以启用它。注意,启用后该流的双向通话将无法被检测到。
点击保存新摄像头会写入配置并立即启动该摄像头,无需重启。
其余功能,包括硬件加速、双向通话和音频转码,都在摄像头添加完成后另行配置。摄像头型号相关的问题请参阅摄像头品牌特定配置。
删除摄像头
在 中点击删除摄像头,选择摄像头并确认。删除摄像头需要 admin 角色权限,且无法撤销。
警告
删除摄像头会永久移除它的录像、追踪目标和配置。如果只是想停止处理某个摄像头,请在 中把它的状态设为关闭或禁用。参见摄像头状态。
删除摄像头会移除:
- 配置文件中该摄像头的部分,以及它在任何角色的摄像头列表中的条目。不再关联任何摄像头的自定义角色也会一并移除。
- 数据库中该摄像头的全部记录:追踪目标、核查项、录像、预览、时间线条目、保存的区域网格以及触发器。
- 该摄像头的所有媒体文件:录像、快照、缩略图和预览片段。
导出内容默认保留,所以已经导出的录像在删除源摄像头后依然存在。如果也要一起删除,请在确认步骤中打开同时删除此摄像头的导出。
摄像头进程会停止,更改立即生效,无需重启。如果生成的配置无法解析,Frigate 会回滚到先前的配置并报错,不会让 Frigate 停留在损坏状态。
有两样东西不会被自动清理:
- go2rtc 转流。 Frigate 会尽力停止以该摄像头命名的正在运行的 go2rtc 转流,但配置文件中的转流条目仍然存在,下次重启时又会被重新创建。请在 或配置文件中手动删除。
- 摄像头分组。 已删除的摄像头仍会出现在引用它的摄像头分组中。分组会自动跳过不存在的摄像头,所以并无危害,但你也可以编辑分组,把失效的条目去掉。
设置摄像头输入源
每个摄像头都可以配置多个输入源,并按需要为不同输入源搭配不同功能。这样就能用低分辨率视频流做目标检测,同时用高分辨率视频流做录制,反过来也可以。
摄像头默认启用,可以通过设置 enabled: False 禁用。通过配置文件禁用的摄像头不会出现在 Frigate 界面中,也不会消耗系统资源。
同一个功能在每个摄像头中只能分配给一个输入源。可选功能如下:
| 配置项 | 界面显示 | 描述 |
|---|---|---|
detect | 检测 | 用于目标检测的主视频流。文档 |
record | 录制 | 按配置保存录像片段。文档 |
audio | 音频 | 用于音频检测。文档 |
在摄像头配置的**视频流(FFmpeg)**部分添加输入源,并为每个输入源勾选要启用的功能。
在 中使用添加摄像头向导逐个配置其他摄像头。
NOTE
如果摄像头下只配置了一个输入源(input),且没有为它分配 detect(检测)功能,Frigate 会自动为它启用检测(detect)。即使你在配置里用 detect 的 enabled: False 禁用了目标检测,Frigate 仍然会解码视频流,以支持画面变动检测、鸟瞰图、API 图像和其他功能。
如果你只打算用 Frigate 录制、不做目标识别,仍然建议配置一条低分辨率视频流并把它分配给 detect 功能,以减少解码所需的资源消耗。
摄像头型号相关的设置请参阅摄像头品牌特定配置。
设置摄像头 PTZ 控制
警告
ONVIF 是 Frigate 与摄像头通信所用的标准协议,但并非所有 PTZ 摄像头都支持它。有些摄像头使用私有协议做控制,Frigate 不支持这种方式。请查阅 ONVIF 认证产品列表、摄像头文档或厂商网站,确认你的 PTZ 摄像头支持 ONVIF。同时,请确保摄像头已更新到最新固件。
为摄像头配置 ONVIF 连接即可启用 PTZ 控制。
ONVIF 连接成功后,即可在摄像头的界面中使用 PTZ 控制。
如果摄像头连接正常但认证失败,有两个可选字段可以帮忙:
tls_insecure:跳过 TLS 证书校验,并以明文(PasswordText)而非哈希摘要(PasswordDigest)发送 ONVIF 密码。部分摄像头不接受摘要令牌,只接受明文。这会降低连接安全性,因此仅建议在可信的本地网络中启用。ignore_time_mismatch:ONVIF 认证令牌带时间戳,如果摄像头时钟与 Frigate 相差过大,摄像头会拒绝令牌。启用此项后 Frigate 会补偿时间偏差,让认证依然通过。推荐的做法是在摄像头和 Frigate 主机上启用 NTP 校时;此选项会略微削弱令牌校验,仅在“安全”环境中使用。
NOTE
有些摄像头的 ONVIF 账号与设备管理员凭证是分开的。如果用管理员账号做 ONVIF 认证失败,可以尝试在摄像头固件中创建或启用专用的 ONVIF 用户。更多细节请查阅对应厂商的官方文档。
提示
如果你的 ONVIF 摄像头不需要认证凭证,仍可能需要为 user 和 password 指定空字符串,例如 user: "" 和 password: ""。
如果摄像头有多个 ONVIF 配置文件,可以用 profile 选项指定 PTZ 控制要使用哪一个,按令牌或名称匹配。未设置时,Frigate 会选择第一个包含有效 PTZ 配置的配置文件。查看 Frigate 调试日志(frigate.ptz.onvif: debug)可以看到摄像头可用的配置文件名称和令牌。
支持视野(FOV)内相对移动的 ONVIF 摄像头,还可以配置为自动追踪移动目标并把它保持在画面中央。自动追踪的设置方法请参阅自动追踪。
ONVIF PTZ 摄像头兼容情况
下表中的可用与不可用情况来自用户反馈。如果你发现了某厂商或某款摄像头的特点或问题、且对其他人有帮助,欢迎发起拉取请求(pull request)把它补充进这张表。
在 ONVIF 认证产品数据库的 FeatureList(功能列表)中,可以初步判断某款摄像头是否兼容 Frigate 的自动追踪功能。查看该摄像头是否列出了 PTZRelative、PTZRelativePanTilt 和 PTZRelativeZoom,这几项是实现自动追踪所必需的。不过要注意,有些摄像头虽然声称支持,实际仍可能无法正常响应;功能项缺失则意味着无法使用自动追踪(不过界面中的基础云台变焦控制也许仍可用)。除非下文确认某款摄像头可用,否则请避免选用数据库中查不到相关条目的摄像头。
| 品牌或具体型号 | PTZ 控制 | 自动追踪 | 备注 |
|---|---|---|---|
| Amcrest | ✅ | ✅ | ⛔️ 一般来说 Amcrest 应该可以工作,但一些旧型号(如常见的 IP2M-841)不支持自动追踪 |
| Amcrest ASH21 | ✅ | ❌ | ONVIF 服务端口: 80 |
| Amcrest IP4M-S2112EW-AI | ✅ | ❌ | 不支持 FOV 相对移动。 |
| Amcrest IP5M-1190EW | ✅ | ❌ | ONVIF 端口: 80。不支持 FOV 相对移动。 |
| Annke CZ504 | ✅ | ❌ | |
| Axis Q-6155E | ✅ | ❌ | ONVIF 服务端口:80;该摄像头不支持 MoveStatus 功能。 |
| Ctronics PTZ | ✅ | ❌ | |
| Dahua | ✅ | ✅ | 部分低端大华(lite 系列、picoo 系列等)据报告不支持自动追踪。这些型号通常没有四位数字型号加机箱前缀和选项后缀(例如 DH-P5AE-PV vs DH-SD49825GB-HNR)。 |
| Dahua DH-SD2A500HB | ✅ | ❌ | |
| Dahua DH-SD49825GB-HNR | ✅ | ✅ | |
| Dahua DH-P5AE-PV | ❌ | ❌ | |
| Foscam | ✅ | ❌ | 一般支持 PTZ,但不支持相对移动。ONVIF 合规产品数据库中没有官方 ONVIF 认证和测试。 |
| Foscam R5 | ✅ | ❌ | |
| Foscam SD4 | ✅ | ❌ | |
| Hanwha XNP-6550RH | ✅ | ❌ | |
| Hikvision | ✅ | ❌ | ONVIF 支持不完整(即使是最新固件 MoveStatus 也不会更新) - 在 HWP-N4215IH-DE 和 DS-2DE3304W-DE 型号上报告,但可能还有其他型号 |
| Hikvision DS-2DE3A404IWG-E/W | ✅ | ✅ | |
| Reolink | ✅ | ❌ | |
| Speco O8P32X | ✅ | ❌ | |
| Sunba 405-D20X | ✅ | ❌ | 原始型号和 4k 型号报告 ONVIF 支持不完整。怀疑所有型号都不兼容。 |
| Tapo | ✅ | ❌ | 支持多种型号,ONVIF 服务端口: 2020 |
| Uniview IPC672LR-AX4DUPK | ✅ | ❌ | 固件声称支持 FOV 相对移动,但在发送 ONVIF 命令时摄像头实际上不会移动 |
| Uniview IPC6612SR-X33-VG | ✅ | ✅ | 保持calibrate_on_startup为False。有用户报告使用absolute缩放是有效的。 |
| Vikylin PTZ-2804X-I2 | ❌ | ❌ | ONVIF 支持不完整 |
设置摄像头分组
摄像头分组可以按共享的名称和图标把摄像头组织在一起,方便查看和筛选。始终存在一个包含全部摄像头的默认分组。
在实时监控面板上,点击主导航中的铅笔图标新建摄像头分组。然后配置分组名称、选择要包含的摄像头、挑选图标并设置显示顺序。
双向通话
请参阅实时监控文档中的双向通话。