{"id":13680777,"url":"https://github.com/kroo/wyzecam","last_synced_at":"2026-01-08T19:51:17.488Z","repository":{"id":37683279,"uuid":"364680854","full_name":"kroo/wyzecam","owner":"kroo","description":"Python package for streaming video from wyze cameras over the local network","archived":false,"fork":false,"pushed_at":"2023-03-01T18:14:28.000Z","size":822,"stargazers_count":192,"open_issues_count":30,"forks_count":15,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-21T22:12:13.001Z","etag":null,"topics":["video","wyze-cameras","wyzecam"],"latest_commit_sha":null,"homepage":"https://kroo.github.io/wyzecam/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kroo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2021-05-05T19:09:10.000Z","updated_at":"2025-03-27T13:36:27.000Z","dependencies_parsed_at":"2024-01-14T15:24:48.427Z","dependency_job_id":"acc5e9ca-be21-4614-b88c-cb43c0e87e08","html_url":"https://github.com/kroo/wyzecam","commit_stats":{"total_commits":75,"total_committers":4,"mean_commits":18.75,"dds":0.52,"last_synced_commit":"2313de655cbde6aebb476acb33e62a359a39128e"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kroo%2Fwyzecam","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kroo%2Fwyzecam/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kroo%2Fwyzecam/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kroo%2Fwyzecam/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kroo","download_url":"https://codeload.github.com/kroo/wyzecam/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251607381,"owners_count":21616750,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["video","wyze-cameras","wyzecam"],"created_at":"2024-08-02T13:01:21.832Z","updated_at":"2026-01-08T19:51:17.453Z","avatar_url":"https://github.com/kroo.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# wyzecam\n\n\u003cdiv align=\"center\"\u003e\n\n[![Build status](https://github.com/kroo/wyzecam/workflows/build/badge.svg?branch=master\u0026event=push)](https://github.com/kroo/wyzecam/actions?query=workflow%3Abuild)\n[![Python Version](https://img.shields.io/pypi/pyversions/wyzecam.svg)](https://pypi.org/project/wyzecam/)\n[![Dependencies Status](https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen.svg)](https://github.com/kroo/wyzecam/pulls?utf8=%E2%9C%93\u0026q=is%3Apr%20author%3Aapp%2Fdependabot)\n\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Security: bandit](https://img.shields.io/badge/security-bandit-green.svg)](https://github.com/PyCQA/bandit)\n[![Pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit\u0026logoColor=white)](https://github.com/kroo/wyzecam/blob/master/.pre-commit-config.yaml)\n[![Semantic Versions](https://img.shields.io/badge/%F0%9F%9A%80-semantic%20versions-informational.svg)](https://github.com/kroo/wyzecam/releases)\n[![License](https://img.shields.io/github/license/kroo/wyzecam)](https://github.com/kroo/wyzecam/blob/master/LICENSE)\n\n\u003c/div\u003e\n\nWyzecam is a library for streaming audio and video from your wyze cameras using the wyze native firmware.\n\nThat means no need to flash rtsp-specific firmware, and full support for the v3 hardware!\n\n## Basic Usage\n\nStreaming video in 11 lines of code!\n\n```python\nimport os\n\nimport cv2\nimport wyzecam\n\nauth_info = wyzecam.login(os.environ[\"WYZE_EMAIL\"], os.environ[\"WYZE_PASSWORD\"])\naccount = wyzecam.get_user_info(auth_info)\ncamera = wyzecam.get_camera_list(auth_info)[0]\n\nwith wyzecam.WyzeIOTC() as wyze_iotc:\n  with wyze_iotc.connect_and_auth(account, camera) as sess:\n    for (frame, frame_info) in sess.recv_video_frame_ndarray():\n      cv2.imshow(\"Video Feed\", frame)\n      cv2.waitKey(1)\n```\n\n## Features\n\n- Send local commands (via `WyzeIOTC` class)\n- Support for all wyze camera types (including v3 cameras!)\n- Uses the [tutk](https://github.com/nblavoie/wyzecam-api/tree/master/wyzecam-sdk) protocol for communicating over the\n  local network. \n- Optional support for opencv and libav for easy decoding of the video feed!\n\n\n## Installation\n\n```bash\npip install -U wyzecam\n```\n\nYou will then need a copy of the shared library `libIOTCAPIs_ALL`. You will need\nto [download this SDK](https://github.com/nblavoie/wyzecam-api/tree/master/wyzecam-sdk), unzip it, then convert the\nappropriate copy of the library to a shared library, and copy the resultant `.so` or `.dylib` file to somewhere\nconvenient.\n\n### On Mac:\n\n```shell\nunzip TUTK_IOTC_Platform_14W42P1.zip\ncd Lib/MAC/\ng++ -fpic -shared -Wl,-all_load libIOTCAPIs_ALL.a -o libIOTCAPIs_ALL.dylib\ncp libIOTCAPIs_ALL.dylib /usr/local/lib/\n```\n\n### On Linux:\n\n```bash\nunzip TUTK_IOTC_Platform_14W42P1.zip\ncd Lib/Linux/x64/\ng++ -fpic -shared -Wl,--whole-archive libAVAPIs.a libIOTCAPIs.a -Wl,--no-whole-archive -o libIOTCAPIs_ALL.so\ncp libIOTCAPIs_ALL.so /usr/local/lib/\n```\n\nNote: you will need to pick the appropriate architecture.\n\n### On Windows:\n\n1. Follow [guide](https://docs.microsoft.com/en-us/windows/wsl/install-win10) to install Windows Subsystem for Linux  \n2. Install [VcXsrv Windows X Server](https://sourceforge.net/projects/vcxsrv/)\n3. Run the following command and add it to `/etc/bash.bashrc`\n```bash\nexport DISPLAY=\":0\"\n```\n4. Follow Linux instructions to compile the shared library\n\n## 🛡 License\n\n[![License](https://img.shields.io/github/license/kroo/wyzecam)](https://github.com/kroo/wyzecam/blob/master/LICENSE)\n\nThis project is licensed under the terms of the `MIT` license.\nSee [LICENSE](https://github.com/kroo/wyzecam/blob/master/LICENSE) for more details.\n\n## 📃 Citation\n\n```\n@misc{wyzecam,\n  author = {kroo},\n  title = {Python package for communicating with wyze cameras over the local network},\n  year = {2021},\n  publisher = {GitHub},\n  journal = {GitHub repository},\n  howpublished = {\\url{https://github.com/kroo/wyzecam}}\n}\n```\n\n## Credits\n\nSpecial thanks to the work by folks at [nblavoie/wyzecam-api](https://github.com/nblavoie/wyzecam-api), without which\nthis project would have been much harder.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkroo%2Fwyzecam","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkroo%2Fwyzecam","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkroo%2Fwyzecam/lists"}