This is a basic python script (with docker support) that allows you to login using your Zmodo cloud account and record all your device video streams to local mp4 files to store away as long as you want (zmodo-record) or send the video streams as rtsp streams to be used for something like Home Assistant (zmodo-proxy)
Please Note: This is an experimental project for educational purposes only. As per the license agreement, there are no guarantees with this project and I am not responsible for any issues that might come up.
- The following commands will build the docker image locally. It takes some time as it has to install the entire ffmpeg apt package
Run docker build -t zmodo-record -f Record_Dockerfile .
from the project root dir
Run docker build -t zmodo-proxy -f Proxy_Dockerfile .
from the project root dir
Execute docker run -d -v <MY_VIDEO_STORAGE_DIR>:/zmodo_output -e USERNAME='<MY_ZMODO_CLOUD_USERNAME>' -e PASSWORD='<MY_ZMODO_CLOUD_PASSWORD>' zmodo-record
Execute docker run -d -e USERNAME='<MY_ZMODO_CLOUD_USERNAME>' -e PASSWORD='<MY_ZMODO_CLOUD_PASSWORD>' -e RTSP_SERVER='MY_RTSP_SERVER' zmodo-proxy
MY_VIDEO_STORAGE_DIR
is the directory path where you want the video output stored
MY_ZMODO_CLOUD_USERNAME
is usually your email you used for your cloud account
MY_ZMODO_CLOUD_PASSWORD
is your Zmodo cloud account password.
MY_RTSP_SERVER
is the host address and port to an RTSP proxy of your choice. (Ex: 'rtsp://moouwu.local:8554') I recommend rtsp-simple-proxy, a great project by aler9.
- When killing the Python process, any video segment that is currently being written to does not get properly closed (the last video file segment is corrupt)
If you have any issues, please open an issue in this repo.