Wyzecam is a library for streaming audio and video from your wyze cameras using the wyze native firmware.
That means no need to flash rtsp-specific firmware, and full support for the v3 hardware!
Streaming video in 11 lines of code!
import os import cv2 import wyzecam auth_info = wyzecam.login(os.environ["WYZE_EMAIL"], os.environ["WYZE_PASSWORD"]) account = wyzecam.get_user_info(auth_info) camera = wyzecam.get_camera_list(auth_info)[0] with wyzecam.WyzeIOTC() as wyze_iotc: with wyze_iotc.connect_and_auth(account, camera) as sess: for (frame, frame_info) in sess.recv_video_frame_ndarray(): cv2.imshow("Video Feed", frame) cv2.waitKey(1)- Send local commands (via
WyzeIOTCclass) - Support for all wyze camera types (including v3 cameras!)
- Uses the tutk protocol for communicating over the local network.
- Optional support for opencv and libav for easy decoding of the video feed!
pip install -U wyzecamYou will then need a copy of the shared library libIOTCAPIs_ALL. You will need to download this SDK, unzip it, then convert the appropriate copy of the library to a shared library, and copy the resultant .so or .dylib file to somewhere convenient.
unzip TUTK_IOTC_Platform_14W42P1.zip cd Lib/MAC/ g++ -fpic -shared -Wl,-all_load libIOTCAPIs_ALL.a -o libIOTCAPIs_ALL.dylib cp libIOTCAPIs_ALL.dylib /usr/local/lib/unzip TUTK_IOTC_Platform_14W42P1.zip cd Lib/Linux/x64/ g++ -fpic -shared -Wl,--whole-archive libAVAPIs.a libIOTCAPIs.a -Wl,--no-whole-archive -o libIOTCAPIs_ALL.so cp libIOTCAPIs_ALL.so /usr/local/lib/Note: you will need to pick the appropriate architecture.
- Follow guide to install Windows Subsystem for Linux
- Install VcXsrv Windows X Server
- Run the following command and add it to
/etc/bash.bashrc
export DISPLAY=":0"- Follow Linux instructions to compile the shared library
This project is licensed under the terms of the MIT license. See LICENSE for more details.
@misc{wyzecam, author = {kroo}, title = {Python package for communicating with wyze cameras over the local network}, year = {2021}, publisher = {GitHub}, journal = {GitHub repository}, howpublished = {\url{https://github.com/kroo/wyzecam}} } Special thanks to the work by folks at nblavoie/wyzecam-api, without which this project would have been much harder.