v5.5.0
New Features
-
Initial support for HEVC mode cameras
Ring is actively enabling the H.265/HEVC codec on some newer camera models and the Ring Andriod-app based API used by ring-mqtt actively rejects any other protocol for these cameras. The Ring web based dashboard uses a different API which appears to support negotiating H.264/AVC with these devices as a fallback but, so far, I haven't been able to get it to work correctly with ring-mqtt, hopefully that will be resolved eventually.Passing HEVC through unchanged presents too many compatibility issues with downstream devices to be practical so, for now, ring-mqtt will attempt to transcode these streams back to H.264/AVC on-the-fly. This provides wide compatibiltiy with downstream devices, but at the cost of significantly increased CPU usage during streaming.
Ideally, over time, more browsers will add H.265/HEVC support to their WebRTC implementations so passthrough will become a viable option, but, for now, transcoding provides a quick and dirty hack that will at least allow these cameras work in many cases. Note that if you are running on a RPi3 this will probably not work, and an RPi4 will barely be able to support a single stream.
-
Add switch to toggle motion warning for cameras that support this feature
-
Implement new logic for entry/exit delay (inspired by @amura11):
- Exit delay now supports both home and away modes
- Depends on actual events from Ring API vs previous blind wait function
- Alarm attributes now include "exitSecondsLeft" and "entrySecondsLeft" which will count down during entry/exit delay.
- Alarm attributes now include "targetMode" so it's possible to know what mode alarm is attempting to enter even while exit delay is in progress. For entry delay this attribute makes it possoble to know what mode the alarm was in when the entry delay was triggered. This allows creating different automations for entry/exit delays based on the home and away arming modes.
Bugs Fixed
- Fix an issue detecting subscriptions and suppress spurrious error messages from cameras in case of accounts with no paid subscription.
- Request non-cached snapshots for motion events on high-powered cameras even if no UUID is available (e.g. no subscription).
- Make stream source and still image URL attributes work even if calls to heath check API fail.
Dependency Updates
- go2rtc v1.6.0
- werift v0.18.4