Because the official Nest integration still doesn’t support still images (black screens only until you click on them to load the full stream), I made a fork of go2rtc which fixes a ton of issues when bridging Nest camera streams to the RTSP streaming protocol spoken by the built-in Generic Camera integration.
The fork contains a bunch of good fixes which I sent upstream, but the maintainer of go2rtc seems to have been absent for a few months, so I forked the library and wanted to share them here for others.
Summary of the fixes:
- Streams no longer drop every 5 minutes (upstream PR #2493).
- Periodic keyframe support (upstream PR #2494).
- Automatically throttles to stay under Google’s rate limits: 10
executeCommand/min per project, 5/min per device and command, 30/min and 100/h per camera (upstream PR #2493). - Cameras that are switched off fail fast (upstream PR #2493).
- No more corrupt keyframes on attach (upstream PR #2491; pion/rtp #370).
- Packet loss no longer produces smeared keyframes (part of upstream PR #2491).
- Greatly improved keyframe cache (GOP cache;
#gop=1). Rebase of upstream PR #1887 by seydx.
Grab it here: