mirror of
https://github.com/tsightler/ring-mqtt.git
synced 2025-09-26 21:01:12 +08:00
Release 4.8.5
This commit is contained in:
@@ -16,6 +16,9 @@ Docker is the recommended installation method, however, standard, non-Docker ins
|
||||
### Camera video stream configuration
|
||||
Please read the detailed [camera documentation](docs/CAMERAS.md) for more information on video streaming configuration.
|
||||
|
||||
**Important Note**
|
||||
The ring-mqtt project does not magically turn Ring cameras into 24x7/continuous streaming CCTV cameras. Ring cameras are designed to work with Ring cloud servers for on-demand streaming based on detected events (motion/ding) or active viewing. Even when using ring-mqtt all streaming still goes through Ring servers and is not local. Attempting to use ring-mqtt to stream Ring cameras 24x7 is not a supported use case for this project and attempts to do so will almost certainly end in disappointment.
|
||||
|
||||
### Use with MQTT Tools other than Home Assistant (Node-Red, OpenHAB, etc)
|
||||
MQTT topics are built consistently during each startup. The easiest way to determine the device topics is to run the script with debug output. More details about the topic format for all devices is available in [docs/TOPICS.md](docs/TOPICS.md).
|
||||
|
||||
|
@@ -3,6 +3,9 @@ While ring-mqtt is primarily designed to integrate Ring devices into home automa
|
||||
|
||||
This document provides detailed information about the video streaming support, including how to configure it with Home Assistant or use it with other medial players, as well as some troubleshooting information and known limitations. If you would like to use the videos streaming features, please read this section carefully.
|
||||
|
||||
**Important Note**
|
||||
The ring-mqtt project does not magically turn Ring cameras into 24x7/continuous streaming CCTV cameras. Ring cameras are designed to work with Ring cloud servers for on-demand streaming based on detected events (motion/ding) or active viewing. Even when using ring-mqtt all streaming still goes through Ring servers and is not local. Attempting to use ring-mqtt to stream Ring cameras 24x7 is not a supported use case for this project and attempts to do so will almost certainly end in disappointment.
|
||||
|
||||
### Quick overview
|
||||
Ring video streaming support is implemented by running a localhost instance of rtsp-simple-server. For each camera discovered two separate RTSP paths are registered with the server using the following format:
|
||||
|
||||
@@ -118,7 +121,7 @@ Of course there are other possible automation options as well, and, even without
|
||||
|
||||
### FAQ
|
||||
|
||||
**Q) Why do streams keep running for 5+ minutes after viewing them in Home Assistant**
|
||||
**Q) Why do streams keep running for 5+ minutes after viewing them in Home Assistant**
|
||||
**A)** Home Assistant keeps streams running in the background for ~5 minutes even when they are no longer viewed. It's always possible to stop streams manually using the stream switch.
|
||||
|
||||
**Q) Streams keep starting all the time even when I'm not viewing anything**
|
||||
@@ -127,7 +130,7 @@ Of course there are other possible automation options as well, and, even without
|
||||
**Q) Why does the live stream stop after ~10 minutes?**
|
||||
**A)** Ring enforces a time limit on active live streams and terminates them, typically at approximately 10 minutes, although sometimes significantly less and sometimes a little more. Currently, you'll need to refresh to manually start the stream again but it is NOT recommended to attempt to stream 24 hours. I say currently because Ring has hinted that continuous live streaming is something they are working on, but, for now, the code honors the exiting limits and does not just immediately retry.
|
||||
|
||||
**Q) Why is the stream delayed/lagged?**
|
||||
**Q) Why is the stream delayed/lagged?**
|
||||
**A)** Likely this is due to the streaming technology used by Home Assistant that fully streams over HTTP/HTTPS. While the technology is extremely reliable and widely compatible with various web browsers and network setups, it typically adds betwee 5-8 seconds of delay and sometimes as many as 10-15 seconds. The best solution for Home Assistant is to use a custom UI card like the excellent [WebRTC Camera](https://github.com/AlexxIT/WebRTC) which will allow you to use your browsers native video playback capabilities, although this technology will likely require special configuration if you want to play back while outside of your network without using a VPN. However, when configured, it provides typically ~1-2 seconds of latency at most so it's the best option for getting as close to real-time viewing as possible within Home Assistant. Other options that offer lower latency viewing is to use an external media player capable of RTSP playback. VLC works well, but note that it buffers 1 second of video by default, although you can tweak this to reduce the delay.
|
||||
|
||||
**Q) Why do I have video artifacts and/or stuttering in the stream?**
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 90 KiB |
@@ -39,14 +39,14 @@ ctrl_c() {
|
||||
trap ctrl_c INT TERM QUIT
|
||||
|
||||
# This loop starts mosquitto_sub with a subscription on the camera stream topic that sends all received
|
||||
# messages via file descriptor to the read process. On initial the startup the script publishes the
|
||||
# stream 'ON-DEMAND' command to the command topic which lets ring-mqtt know that an RTSP client has
|
||||
# requested the stream. Stream state is determined via the the detailed stream state messages received
|
||||
# via the json_attributes_topic:
|
||||
# messages via file descriptor to the read process. On initial startup the script publishes the message
|
||||
# 'ON-DEMAND' to the stream command topic which lets ring-mqtt know that an RTSP client has requested
|
||||
# the stream. Stream state is determined via the the detailed stream state messages received via the
|
||||
# json_attributes_topic:
|
||||
#
|
||||
# "inactive" = There is no active live stream and none currently requested
|
||||
# "activating" = A live stream has been requested and is in the process of starting
|
||||
# "active" = The live stream started successfully and is currently in progress
|
||||
# "inactive" = There is no active video stream and none currently requested
|
||||
# "activating" = A video stream has been requested and is initializing but has not yet started
|
||||
# "active" = The stream was requested successfully and an active stream is currently in progress
|
||||
# "failed" = A live stream was requested but failed to start
|
||||
while read -u 10 message
|
||||
do
|
||||
|
Reference in New Issue
Block a user