Docker container to expose a local RTMP, RTSP, and HLS stream for all your Wyze cameras including v3

Overview

RTMP/RTSP/HLS Bridge for Wyze Cam

Docker container to expose a local RTMP, RTSP, and HLS stream for all your Wyze cameras including v3. No Third-party or special firmware required.

Based on @noelhibbard's script with kroo/wyzecam, and aler9/rtsp-simple-server.

Compatibility:

Should work on most x64 systems as well as on some arm-based systems like the Raspberry Pi.

See here for instructions to run on arm.

Some reports of issues with v1 and WCO models that need further investigation.

⚠️ Latest Firmware Compatibility

Latest version of the Wyze firmware seems to cause connection issues which will result in the error:

IOTC_ER_CAN_NOT_FIND_DEVICE

Changes in v0.5.4

  • NEW: URI_SEPARATOR to customize the character used in the camera URI when the camera name contains a space: -, _, or # to remove the space. Will currently default to - if not set.

Changes in v0.5.3

  • Update to rtsp-simple-server v17.0.0
  • Set max_num_av_channels to 1.4x the number of cameras (potential fix for AV_ER_EXCEED_MAX_CHANNEL)

Changes in v0.5.2

  • NEW: Per camera custom FFMPEG commands with FFMPEG_CMD_CAM_NAME
  • NEW: Custom FFMPEG input flags for all cameras with FFMPEG_FLAG
  • NEW: Per camera custom FFMPEG input flags with FFMPEG_FLAG_CAM_NAME

Changes in v0.5.1

  • FIX: SMS two-step verification.
  • NEW: IGNORE_OFFLINE environment option to ignore offline cameras until the container restarts.
  • Removed some of the extra FFMPEG option

Changes in v0.5.0

  • FIX: MFA error due to missing user-agent
  • Improved LAN mode - no longer requires host mode
  • Improved stability

Usage

docker run

Use your Wyze credentials and run:

docker run -p 1935:1935 -p 8554:8554 -p 8888:8888 -e WYZE_EMAIL= -e WYZE_PASSWORD=  mrlt8/wyze-bridge

or

Build with docker-compose (recommended)

  1. git clone https://github.com/mrlt8/docker-wyze-bridge.git
  2. cd docker-wyze-bridge
  3. cp docker-compose.sample.yml docker-compose.yml
  4. Edit docker-compose.yml with your wyze credentials
  5. run docker-compose up --build

Additional Info

Once you're happy with your config you can use docker-compose up -d to run it in detached mode.

URIs

camera-nickname is the name of the camera set in the Wyze app and are converted to lower case with hyphens in place of spaces.

e.g. 'Front Door' would be /front-door

  • RTMP:
rtmp://localhost:1935/camera-nickname
  • RTSP:
rtsp://localhost:8554/camera-nickname
  • HLS:
http://localhost:8888/camera-nickname/stream.m3u8
  • HLS can also be viewed in the browser using:
http://localhost:8888/camera-nickname

Filtering

The default option will automatically create a stream for all the cameras on your account, but you can use the following environment options in your docker-compose.yml to filter the cameras.

All options are cAsE-InSensiTive, and take single or multiple comma separated values.

Examples:

  • Whitelist by Camera Name (set in the wyze app):
environment:
	..
    - FILTER_NAMES=Front Door, Driveway, porch cam
  • Whitelist by Camera MAC Address:
- FILTER_MACS=00:aA:22:33:44:55, Aa22334455bB
  • Whitelist by Camera Model:
- FILTER_MODEL=WYZEC1-JZ
  • Whitelist by Camera Model Name:
- FILTER_MODEL=V2, v3, Pan
  • Blacklisting:

You can reverse any of these whitelists into blacklists by adding block, blacklist, exclude, ignore, or reverse to FILTER_MODE.

environment:
	..
    - FILTER_NAMES=Bedroom
    - FILTER_MODE=BLOCK

Multi-Factor Authentication

Two-factor authentication ("Two-Step Verification" in the wyze app) is supported and will automatically be detected, however additional steps are required to enter your verification code.

  • Echo the verification code directly to /tokens/mfa_token:
/tokens/mfa_token' ">
docker exec -it wyze-bridge sh -c 'echo "123456" > /tokens/mfa_token'
  • Mount /tokens/ locally and add your verification code to a new file mfa_token:
volumes:
    - ./tokens:/tokens/

ARM/Raspberry Pi Support

The default configuration will use the x64 tutk library, however, you can edit your docker-compose.yml to use the 32-bit arm library by setting dockerfile as Dockerfile.arm:

    build:
        context: ./app
        dockerfile: Dockerfile.arm
    environment:
        ..

Alternatively, you can pull a pre-built image using:

image: mrlt8/wyze-bridge:latest
environment: ..

LAN Mode

Like the wyze app, the tutk library will attempt to stream directly from the camera when on the same LAN as the camera in "LAN mode" or relay the stream via the cloud in "relay mode".

LAN mode is more ideal as all streaming will be local and won't use additional bandwidth.

You can restrict streaming to LAN only by adding the LAN_ONLY environment variable:

environment:
	..
    - LAN_ONLY=True

Bitrate and Resolution

Bitrate and resolution of the stream from the wyze camera can be adjusted with - QUALITY=HD120.

  • Resolution can be set to SD (640x360 cams/480x640 doorbell) or HD (1920x1080 cam/1296x1728 doorbell). Default - HD.
  • Bitrate can be set from 60 to 240 kb/s. Default - 120.
  • Bitrate and resolution changes will apply to ALL cameras.
environment:
	..
    - QUALITY=SD60

Custom FFmpeg Commands

You can pass a custom command to FFmpeg by using FFMPEG_CMD in your docker-compose.yml:

For all cameras:

environment:
	..
    - FFMPEG_CMD=-f h264 -i - -vcodec copy -f flv rtmp://rtsp-server:1935/

For a specific camera:

where CAM_NAME is the camera name in UPPERCASE and _ in place of spaces and hyphens:

- FFMPEG_CMD_CAM_NAME=ffmpeg -f h264 -i - -vcodec copy -f flv rtmp://rtsp-server:1935/

Additional info:

  • The ffmpeg command is implied and is optional.
  • The camera name will automatically be appended to the command, so you need to end with the rtmp/rtsp url.

rtsp-simple-server

rtsp-simple-server options can be customized as an environment variable in your docker-compose.yml by prefixing RTSP_ to the UPPERCASE parameter.

e.g. use - RTSP_RTSPADDRESS=:8555 to overwrite the default rtspAddress.

or - RTSP_PATHS_ALL_READUSER=123 to customize a path specific option like paths: all: readuser:123

Debugging options

environment options:

- URI_SEPARATOR= Customize the separator used to replace spaces in the URI; available values are -, _, or use # to remove spaces.

- IGNORE_OFFLINE=true Ignore ofline cameras until container restarts

- DEBUG_LEVEL= Adjust the level of upstream logging

- RTSP_LOGLEVEL= Adjust the verbosity of rtsp-simple-server; available values are "warn", "info", "debug".

- DEBUG_FFMPEG=True Enable additional logging from FFmpeg

- FRESH_DATA=True Remove local cache and pull new data from wyze servers.

Comments
  • "stream is down", no further ability to see cameras

    wyze-bridge | 2021/10/28 17:48:58 [RTSP][DINING-ROOM] πŸ“• Client stopped reading wyze-bridge | 2021/10/28 17:48:58 [RTSP][OUTSIDE-GARAGE] πŸ“• Client stopped reading wyze-bridge | 2021/10/28 17:48:58 [RTSP][OUTSIDE-GARAGE] ❌ '/outside-garage' stream is down wyze-bridge | 2021/10/28 17:49:35 [RTSP][PROJECT-ROOM] πŸ“– New client reading wyze-bridge | 2021/10/28 17:49:46 [RTSP][PROJECT-ROOM] πŸ“• Client stopped reading wyze-bridge | 2021/10/28 17:49:55 [Outside Garage] [FFMPEG] [Errno 32] Broken pipe wyze-bridge | 2021/10/28 17:50:05 [RTSP][BASEMENT] πŸ“• Client stopped reading wyze-bridge | 2021/10/28 17:50:15 [RTSP][BASEMENT] πŸ“– New client reading wyze-bridge | 2021/10/28 17:50:23 [RTSP][GARAGE] ❌ '/garage' stream is down wyze-bridge | 2021/10/28 17:50:25 [RTSP][PROJECT-ROOM] ❌ '/project-room' stream is down wyze-bridge | 2021/10/28 17:50:25 [RTSP][BASEMENT] πŸ“• Client stopped reading wyze-bridge | 2021/10/28 17:50:25 [RTSP][OTHER] ❌ '/other' stream is down wyze-bridge | 2021/10/28 17:50:25 [RTSP][MUSIC-ROOM] ❌ '/music-room' stream is down wyze-bridge | 2021/10/28 17:50:25 [RTSP][BASEMENT] ❌ '/basement' stream is down wyze-bridge | 2021/10/28 17:50:25 [RTSP][DINING-ROOM] ❌ '/dining-room' stream is down wyze-bridge | 2021/10/28 17:50:25 [RTSP][FAMILY-ROOM] ❌ '/family-room' stream is down wyze-bridge | 2021/10/28 17:50:25 [RTSP][LIBRARY] ❌ '/library' stream is down

    this has happened several times, usually after about a day. all the streams go "down" and I get nothing. cameras are still available via the wyze app. Restarting the container a couple of times brings things back - but not always on the first restart. what information can I get to help troubleshoot this?

    bug 
    opened by csanner 122
  • Issues trying to get the Wyze Doorbell Cam working

    Issues trying to get the Wyze Doorbell Cam working

    Moving the Doorbell/WYZEDB3 related discussion over to a new issue.

    Originally posted by @tbrausch in https://github.com/mrlt8/docker-wyze-bridge/discussions/68#discussioncomment-1332804

    bug help wanted 
    opened by mrlt8 66
  • Stream progressively falls behind real-time (v1.3.0)

    Stream progressively falls behind real-time (v1.3.0)

    The video stream slowly falls back in time, witnessed in the timestamp displayed behind the actual time. It get's progressively worse and is eventually several minutes behind. I compared the stream timestamp to the date from inside the docker container. I noticed this today when I received a person detection notification of myself about 5 minutes after it actually happened.

    Restarting the docker container brings it back to real-time but then it slowly falls back again.

    Also seeing this continually repeating in the log: 2022/03/28 18:33:03 [wyzecam.tutk.tutk_ioctl_mux][INFO][Front Porch] Now listening on channel id 0 2022/03/28 18:33:04 [wyzecam.tutk.tutk_ioctl_mux][INFO][Front Porch] No longer listening on channel id 0 2022/03/28 18:33:29 [wyzecam.tutk.tutk_ioctl_mux][INFO][Front Porch] Now listening on channel id 0 2022/03/28 18:33:29 [wyzecam.tutk.tutk_ioctl_mux][INFO][Front Porch] Now listening on channel id 0 2022/03/28 18:33:30 [wyzecam.tutk.tutk_ioctl_mux][INFO][Front Porch] No longer listening on channel id 0

    bug 
    opened by bbobrian 52
  • Memory Leak

    Memory Leak

    Ever since the most recent update, I have noticed that this add-on is steadily sucking up memory - and today actually caused my HA to reboot. Currently is is consuming 1.56GB.

    Version 1.21

    bug 
    opened by sweichbr 45
  • Wyze Cam v3 stops working after 3 minutes

    Wyze Cam v3 stops working after 3 minutes

    Hello,

    Environment image

    Network:

    • Router: Netgear RAX 120
    • WiFi: Dual mode 2.4 and 5

    Wyze Firmware: 4.36.3.19

    Steps to reproduce:

    • Install wyze bridge
    • Open a link to any type of stream for Wyze Cam v3

    Actual result: You can see the stream, but in about 3-5 minutes it becomes dead.

    Expected result: Stream is persistent

    Workaround: Restart Wyze Cam, this helps for another 3-5 minutes

    Logs:

    2021/09/01 13:02:07 I [2/2] [RTMP] [conn 172.17.0.1:56892] opened,
    2021/09/01 13:02:11 I [2/2] [RTMP] [conn 172.17.0.1:57388] closed,
    2021/09/01 13:02:11 I [2/2] [RTMP] [conn 172.17.0.1:57388] opened,
    2021/09/01 13:02:11 I [2/2] [RTMP] [conn 172.17.0.1:57388] ERR: no one is publishing to path 'wyze-cam-3',
    2021/09/01 13:02:20 I [2/2] [RTMP] [conn 172.17.0.1:58848] ERR: no one is publishing to path 'wyze-cam-3',
    2021/09/01 13:02:20 I [2/2] [RTMP] [conn 172.17.0.1:58848] closed,
    2021/09/01 13:02:23 I [2/2] [RTMP] [conn 172.17.0.1:59348] opened,
    2021/09/01 13:02:23 I [2/2] [RTMP] [conn 172.17.0.1:59348] ERR: no one is publishing to path 'wyze-cam-3',
    2021/09/01 13:02:23 I [2/2] [RTMP] [conn 172.17.0.1:59348] closed,
    2021/09/01 13:02:26 I [2/2] [RTMP] [conn 172.17.0.1:59828] closed,
    2021/09/01 13:02:35 I [2/2] [RTMP] [conn 172.17.0.1:60884] ERR: no one is publishing to path 'wyze-cam-3',
    2021/09/01 13:02:35 I [2/2] [RTMP] [conn 172.17.0.1:60884] closed,
    2021/09/01 13:02:35 I [2/2] [RTMP] [conn 172.17.0.1:60884] opened
    
    opened by VerityNH 41
  • [Audio] v3 goes down, doesn't come back up

    [Audio] v3 goes down, doesn't come back up

    I have 2 cameras, both v2. One of them will randomly go down but the other never has that issue.

    🎬 STARTING 2 OF 4 CAMERAS
    2022/04/22 01:11:06 [WyzeBridge] Starting rtsp-simple-server v0.17.17
    2022/04/22 01:11:06 [WyzeBridge] πŸŽ‰ Connecting to WyzeCam V3 - Driveway on 10.77.50.82 (1/3)
    2022/04/22 01:11:06 [WyzeBridge] πŸŽ‰ Connecting to WyzeCam V3 - Front Porch on 10.77.50.81 (1/3)
    2022/04/22 01:11:07 [Driveway] πŸ“‘ Getting 255kb/s HD stream (20fps) via LAN mode (WiFi: 77%) FW: 4.36.8.32 πŸ”’ (DTLS) (2/3)
    2022/04/22 01:11:07 [Driveway] WARNING: Skipping smaller frame at start of stream (frame_size=1)
    2022/04/22 01:11:08 [Front Porch] πŸ“‘ Getting 255kb/s HD stream (20fps) via LAN mode (WiFi: 88%) FW: 4.36.8.32 πŸ”’ (DTLS) (2/3)
    2022/04/22 01:11:08 [Front Porch] WARNING: Skipping smaller frame at start of stream (frame_size=1)
    2022/04/22 01:11:09 [RTSP][DRIVEWAY] βœ… '/driveway' stream is UP! (3/3)
    2022/04/22 01:11:09 [RTSP][FRONT-PORCH] βœ… '/front-porch' stream is UP! (3/3)
    2022/04/22 01:11:10 [RTSP][DRIVEWAY] πŸ“– New client reading
    2022/04/22 01:11:12 [RTSP][FRONT-PORCH] πŸ“– New client reading
    2022/04/22 01:11:15 [Driveway] WARNING: Frame not available yet
    2022/04/22 01:11:57 [Driveway] WARNING: Wrong bitrate (bitrate=120)
    2022/04/22 01:11:57 [Driveway] WARNING: Requesting frame_size=0 and bitrate=255
    2022/04/22 02:05:26 [Front Porch] WARNING: Frame not available yet
    2022/04/22 02:05:28 [Front Porch] WARNING: Waiting for keyframe
    2022/04/22 02:05:28 [Front Porch] WARNING: clear buffer
    2022/04/22 02:05:54 [Driveway] WARNING: Waiting for keyframe
    2022/04/22 02:05:54 [Driveway] WARNING: clear buffer
    2022/04/22 02:06:10 [RTSP][DRIVEWAY] πŸ“• Client stopped reading
    2022/04/22 02:06:20 [RTSP][DRIVEWAY] πŸ“– New client reading
    2022/04/22 12:31:16 [RTSP][DRIVEWAY] πŸ“• Client stopped reading
    2022/04/22 12:31:26 [RTSP][DRIVEWAY] πŸ“– New client reading
    2022/04/22 12:31:56 [RTSP][DRIVEWAY] πŸ“– New client reading
    2022/04/22 12:32:26 [RTSP][DRIVEWAY] πŸ“• Client stopped reading
    2022/04/22 12:32:27 [RTSP][DRIVEWAY] πŸ“– New client reading
    2022/04/22 12:32:56 [RTSP][DRIVEWAY] πŸ“• Client stopped reading
    2022/04/22 12:32:57 [RTSP][DRIVEWAY] πŸ“– New client reading
    2022/04/22 12:33:27 [RTSP][DRIVEWAY] πŸ“• Client stopped reading
    2022/04/22 12:33:27 [RTSP][DRIVEWAY] πŸ“– New client reading
    2022/04/22 12:33:57 [RTSP][DRIVEWAY] πŸ“• Client stopped reading
    2022/04/22 12:34:11 [RTSP][DRIVEWAY] πŸ“• Client stopped reading
    2022/04/22 12:34:13 [RTSP][DRIVEWAY] ❌ '/driveway' stream is down
    

    Should the bridge be bringing the stream back up? Or once it goes down does it just leave it alone until you restart the bridge? I have QUALITY=HD255 in my docker-compose.yml file to get higher bitrate, but the problem occurs even if I remove that.

    I can enable some debugging but I'm not sure which would be best, that might show what is causing the stream to actually go down, don't want to enable too much and have so much debug data that you can't sift through it all.

    Thanks.

    bug 
    opened by yeahme49 37
  • Doorbell keeps going offline

    Doorbell keeps going offline

    On the latest update with the following config settings and the doorbell, stream keeps going offline, I have an automation that notifies me when it happens, and it's basically spamming me about the doorbell, but not the other cameras.

    Not sure why this is happening as it's not offline in the Wyze app, but offline on HA a lot of the time, Based off the offline notification it seems to come online then go back offline like every 5 mins or so. On the latest firmware for both wyze docker and doorbell.

    My config:

    WYZE_EMAIL: - WYZE_PASSWORD: - NET_MODE: ANY SNAPSHOT: RTSP15 MQTT_DTOPIC: homeassistant ROTATE_DOOR: true WEBRTC: false FRESH_DATA: true RTSP_READTIMEOUT: 10s KEEP_BAD_FRAMES: true FPS_FIX: true FILTER_BLOCK: true FILTER_MACS: -

    The log:

    2022/04/07 00:56:09 [RTSP][FRONT-DOORBELL] πŸ“• Client stopped reading 2022/04/07 00:56:11 [RTSP][FRONT-DOORBELL] ❌ '/front-doorbell' stream is down 2022/04/07 00:56:11 [RTSP][FRONT-DOORBELL] πŸ“• Client stopped reading

    opened by dnestico 37
  • wyze-bridge will only start 1 camera

    wyze-bridge will only start 1 camera

    I have two cameras: WyzeCam301 and WyzeCam302

    Wyze-Bridge appears to be working, but it will not start my first camera (301). It starts the second camera (302) fine. Is the program looping through and only creating stream for the last camera it finds?

    rtsp-server | 2021/06/27 19:53:30 I [0/0] rtsp-simple-server v0.16.3 rtsp-server | 2021/06/27 19:53:30 I [0/0] [RTSP] UDP/RTP listener opened on :8000 rtsp-server | 2021/06/27 19:53:30 I [0/0] [RTSP] UDP/RTCP listener opened on :8001 rtsp-server | 2021/06/27 19:53:30 I [0/0] [RTSP] TCP listener opened on :8554 rtsp-server | 2021/06/27 19:53:30 I [0/0] [RTMP] listener opened on :1935 rtsp-server | 2021/06/27 19:53:30 I [0/0] [HLS] listener opened on :8888 wyze-bridge | Traceback (most recent call last): wyze-bridge | File "/opt/wyzecam/wyzecam-to-rtmp.py", line 42, in wyze-bridge | main() wyze-bridge | File "/opt/wyzecam/wyzecam-to-rtmp.py", line 18, in main wyze-bridge | auth_info = login(user, password) wyze-bridge | File "/usr/local/lib/python3.8/site-packages/wyzecam/api.py", line 47, in login wyze-bridge | resp.raise_for_status() wyze-bridge | File "/usr/local/lib/python3.8/site-packages/requests/models.py", line 943, in raise_for_status wyze-bridge | raise HTTPError(http_error_msg, response=self) wyze-bridge | requests.exceptions.HTTPError: 500 Server Error: Internal Server Error for url: https://auth-prod.api.wyze.com/user/login wyze-bridge | ffmpeg version 4.1.6-1~deb10u1 Copyright (c) 2000-2020 the FFmpeg developers wyze-bridge | built with gcc 8 (Debian 8.3.0-6) wyze-bridge | configuration: --prefix=/usr --extra-version='1~deb10u1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared wyze-bridge | libavutil 56. 22.100 / 56. 22.100 wyze-bridge | libavcodec 58. 35.100 / 58. 35.100 wyze-bridge | libavformat 58. 20.100 / 58. 20.100 wyze-bridge | libavdevice 58. 5.100 / 58. 5.100 wyze-bridge | libavfilter 7. 40.101 / 7. 40.101 wyze-bridge | libavresample 4. 0. 0 / 4. 0. 0 wyze-bridge | libswscale 5. 3.100 / 5. 3.100 wyze-bridge | libswresample 3. 3.100 / 3. 3.100 wyze-bridge | libpostproc 55. 3.100 / 55. 3.100 wyze-bridge | Input #0, h264, from 'pipe:': wyze-bridge | Duration: N/A, bitrate: N/A wyze-bridge | Stream #0:0: Video: h264 (Main), yuv420p(tv, bt709, progressive), 1920x1080, 20 fps, 20 tbr, 1200k tbn, 40 tbc rtsp-server | 2021/06/27 19:53:48 I [0/0] [RTMP] [conn 172.18.0.2:43860] opened wyze-bridge | Output #0, flv, to 'rtmp://rtsp-server:1935/wyzecam302': wyze-bridge | Metadata: wyze-bridge | encoder : Lavf58.20.100 rtsp-server | 2021/06/27 19:53:48 I [1/0] [RTMP] [conn 172.18.0.2:43860] is publishing to path 'wyzecam302', 1 track wyze-bridge | Stream #0:0: Video: h264 (Main) ([7][0][0][0] / 0x0007), yuv420p(tv, bt709, progressive), 1920x1080, q=2-31, 20 fps, 20 tbr, 1k tbn, 1200k tbc wyze-bridge | Stream mapping: wyze-bridge | Stream #0:0 -> #0:0 (copy) wyze-bridge | [flv @ 0x559918d50280] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly rtsp-server | 2021/06/27 19:54:08 I [1/0] [RTSP] [conn 192.168.1.69:64069] opened rtsp-server | 2021/06/27 19:54:08 I [1/0] [RTSP] [conn 192.168.1.69:64069] ERR: no one is publishing to path 'wyzecam301' rtsp-server | 2021/06/27 19:54:08 I [1/0] [RTSP] [conn 192.168.1.69:64069] closed rtsp-server | 2021/06/27 19:54:13 I [1/0] [RTSP] [conn 192.168.1.69:64070] opened rtsp-server | 2021/06/27 19:54:13 I [1/0] [RTSP] [session 2575826756] opened by 192.168.1.69:64070 rtsp-server | 2021/06/27 19:54:13 I [1/1] [RTSP] [session 2575826756] is reading from path 'wyzecam302', 1 track with TCP rtsp-server | 2021/06/27 19:55:08 I [1/1] [RTSP] [conn 192.168.1.69:50625] opened rtsp-server | 2021/06/27 19:55:08 I [1/1] [RTSP] [conn 192.168.1.69:50625] ERR: no one is publishing to path 'wyzecam301' rtsp-server | 2021/06/27 19:55:08 I [1/1] [RTSP] [conn 192.168.1.69:50625] closed

    opened by SomebodySysop 37
  • Can't cast to chromecast

    Can't cast to chromecast

    I am trying to setup automation that casts my camera to my google nest hub, but for some reason, I can't figure out how to make it play, it just shows this screen:

    (this is not my image but it is the same exact screen I see on my nest hub btw) 8fa1ac6f20ab321346f198284fcc44e0e8fddac6

    Here is the simple stream camera automation:

    Screen Shot 2022-03-24 at 2 14 58 AM

    It didn't work with HLS checked or not, not sure why as the cameras are working fine and I can ask google to stream them just fine, I can also cast them from other apps like tiny cam pro, so not sure why this is happening.

    opened by dnestico 35
  • Camera Stream Stops

    Camera Stream Stops

    I'm currently running 1.3.8 but have been experiencing this problem for a few versions now. Randomly, every few days, the streams will just stop. The RTSP stream is functioning fine, I can use VLC to run it. However, Frigate stops ingesting the data.

    I have opened up an issue here, as well. Here is a response from one of the developers from Frigate after reviewing the data I submitted.

    "Frigate is losing a connection with the camera server. The wyzebridge is returning 404 not found implying it is having an error. What do the logs for that software look like?

    All cameras stopping at the same time further points to the idea that it is some issue with the wyzebridge server and then it won't accept frigates reconnection attempt"

    It appears Wyze Bridge is returning a 404 error on the streams.

    0] ffmpeg.garage.detect ERROR : rtsp://10.0.10.7:8554/garage-cam: Server returned 404 Not Found [2022-05-03 14:51:10] frigate.video ERROR : garage: Unable to read frames from ffmpeg process. [2022-05-03 14:51:10] frigate.video ERROR : garage: ffmpeg process is not running. exiting capture thread... [2022-05-03 14:51:20] watchdog.garage ERROR : Ffmpeg process crashed unexpectedly for garage. [2022-05-03 14:51:20] watchdog.garage ERROR : The following ffmpeg logs include the last 100 lines prior to exit. [2022-05-03 14:51:20] ffmpeg.garage.detect ERROR : [rtsp @ 0x5634dfcebdc0] method DESCRIBE failed: 404 Not Found [2022-05-03 14:51:20] ffmpeg.garage.detect ERROR : rtsp://10.0.10.7:8554/garage-cam: Server returned 404 Not Found [2022-05-03 14:51:20] frigate.video ERROR : garage: Unable to read frames from ffmpeg process. [2022-05-03 14:51:20] frigate.video ERROR : garage: ffmpeg process is not running. exiting capture thread... [2022-05-03 14:51:30] watchdog.garage ERROR : Ffmpeg process crashed unexpectedly for garage. [2022-05-03 14:51:30] watchdog.garage ERROR : The following ffmpeg logs include the last 100 lines prior to exit. [2022-05-03 14:51:30] ffmpeg.garage.detect ERROR : [rtsp @ 0x558aa5a1bdc0] method DESCRIBE failed: 404 Not Found [2022-05-03 14:51:30] ffmpeg.garage.detect ERROR : rtsp://10.0.10.7:8554/garage-cam: Server returned 404 Not Found [2022-05-03 14:51:30] frigate.video ERROR : garage: Unable to read frames from ffmpeg process. [2022-05-03 14:51:30] frigate.video ERROR : garage: ffmpeg process is not running. exiting capture thread... [2022-05-03 14:51:40] watchdog.garage ERROR : Ffmpeg process crashed unexpectedly forgarage.``

    Any idea of what I could try?

    opened by dmkjr 31
  • Streams die almost immediately

    Streams die almost immediately

    Not sure entirely what's causing this, but since updating to v1.0+ it seems like my camera streams die almost immediately. I had all of my cams on the older non-DTLS firmware so I went ahead and updated them, but the issue is still there. When I start the container, it connects to the cameras and starts the streams, but then usually within a minute or so it shows all of them disconnecting and they don't come back until I restart the container.

    I went ahead and updated all my cams (mix of v3/v2/pan) to the latest firmware for DTLS and the same is occuring. Here's what the console shows, if you can point me to how to get your more useful information I'll add that.

    2021/10/27 14:52:38 [WyzeBridge] Starting rtsp-simple-server v0.17.6
    2021/10/27 14:52:39 [Lake Cam] IOTC_ER_DEVICE_OFFLINE
    2021/10/27 14:52:39 [Lake Cam] πŸ‘» Camera offline. WILL retry in 10s.
    2021/10/27 14:52:39 [Wyze Cam Outdoor] IOTC_ER_DEVICE_OFFLINE
    2021/10/27 14:52:39 [Wyze Cam Outdoor] πŸ‘» Camera offline. WILL retry in 10s.
    2021/10/27 14:52:41 [Garage Cam] πŸŽ‰ Starting HD 120kb/s Stream for WyzeCam V2 "LAN mode" FW: 4.9.8.500 πŸ”’ (DTLS) IP: 10.1.0.71 WiFi: 50%
    2021/10/27 14:52:41 [Back Porch Cam] πŸŽ‰ Starting HD 120kb/s Stream for WyzeCam V3 "LAN mode" FW: 4.36.5.58 πŸ”’ (DTLS) IP: 10.1.0.72 WiFi: 32%
    2021/10/27 14:52:41 [Game Room] πŸŽ‰ Starting HD 120kb/s Stream for WyzeCam Pan "LAN mode" FW: 4.10.8.500 πŸ”’ (DTLS) IP: 10.1.0.87 WiFi: 88%
    2021/10/27 14:52:41 [Front Yard] πŸŽ‰ Starting HD 120kb/s Stream for WyzeCam V3 "LAN mode" FW: 4.36.5.58 πŸ”’ (DTLS) IP: 10.1.0.34 WiFi: 43%
    2021/10/27 14:52:45 [RTSP][GARAGE-CAM] βœ… '/garage-cam' stream is UP!
    2021/10/27 14:52:45 [RTSP][BACK-PORCH-CAM] βœ… '/back-porch-cam' stream is UP!
    2021/10/27 14:52:45 [RTSP][FRONT-YARD] βœ… '/front-yard' stream is UP!
    2021/10/27 14:52:47 [RTSP][GAME-ROOM] βœ… '/game-room' stream is UP!
    2021/10/27 14:52:49 [Lake Cam] IOTC_ER_DEVICE_OFFLINE
    2021/10/27 14:52:49 [Lake Cam] πŸ‘» Camera offline. WILL retry in 20s.
    2021/10/27 14:52:49 [Wyze Cam Outdoor] IOTC_ER_DEVICE_OFFLINE
    2021/10/27 14:52:49 [Wyze Cam Outdoor] πŸ‘» Camera offline. WILL retry in 20s.
    2021/10/27 14:53:09 [Lake Cam] IOTC_ER_DEVICE_OFFLINE
    2021/10/27 14:53:09 [Lake Cam] πŸ‘» Camera offline. WILL retry in 30s.
    2021/10/27 14:53:09 [Wyze Cam Outdoor] IOTC_ER_DEVICE_OFFLINE
    2021/10/27 14:53:09 [Wyze Cam Outdoor] πŸ‘» Camera offline. WILL retry in 30s.
    2021/10/27 14:53:20 [Game Room] [FFMPEG] Wrong resolution: 1
    2021/10/27 14:53:20 [Game Room] 🧹 Cleaning up FFMPEG...
    2021/10/27 14:53:20 [RTSP][GAME-ROOM] ❌ '/game-room' stream is down
    2021/10/27 14:53:22 [Game Room] πŸŽ‰ Starting HD 120kb/s Stream for WyzeCam Pan "LAN mode" FW: 4.10.8.500 πŸ”’ (DTLS) IP: 10.1.0.87 WiFi: 81%
    2021/10/27 14:53:25 [Garage Cam] [FFMPEG] Wrong resolution: 1
    2021/10/27 14:53:25 [Garage Cam] 🧹 Cleaning up FFMPEG...
    2021/10/27 14:53:25 [RTSP][GARAGE-CAM] ❌ '/garage-cam' stream is down
    2021/10/27 14:53:26 [Garage Cam] πŸŽ‰ Starting HD 120kb/s Stream for WyzeCam V2 "LAN mode" FW: 4.9.8.500 πŸ”’ (DTLS) IP: 10.1.0.71 WiFi: 49%
    2021/10/27 14:53:28 [RTSP][GAME-ROOM] βœ… '/game-room' stream is UP!
    2021/10/27 14:53:33 [RTSP][GARAGE-CAM] βœ… '/garage-cam' stream is UP!
    2021/10/27 14:53:39 [Lake Cam] IOTC_ER_DEVICE_OFFLINE
    2021/10/27 14:53:39 [Lake Cam] πŸ‘» Camera offline. WILL retry in 40s.
    2021/10/27 14:53:39 [Wyze Cam Outdoor] IOTC_ER_DEVICE_OFFLINE
    2021/10/27 14:53:39 [Wyze Cam Outdoor] πŸ‘» Camera offline. WILL retry in 40s.
    2021/10/27 14:54:49 [RTSP][BACK-PORCH-CAM] πŸ“– New client reading
    2021/10/27 14:54:49 [RTSP][FRONT-YARD] ❌ '/front-yard' stream is down
    2021/10/27 14:54:49 [RTSP][GAME-ROOM] ❌ '/game-room' stream is down
    2021/10/27 14:54:49 [RTSP][BACK-PORCH-CAM] ❌ '/back-porch-cam' stream is down
    2021/10/27 14:54:49 [RTSP][BACK-PORCH-CAM] πŸ“• Client stopped reading
    2021/10/27 14:54:49 [RTSP][GARAGE-CAM] ❌ '/garage-cam' stream is down `

    bug 
    opened by mrlindstrom 31
  • WYZE motion/sound/pir light activation broken

    WYZE motion/sound/pir light activation broken

    After installing the wyze-bridge docker my floodlight automations from the WYZE app no longer work (or at least are inconsistent). Is that something others have noticed? Is this a bug, or is it a pebcak situation?

    opened by doylejg 1
  • HA: Putting snapshots in /config/www allows for public access to cameras

    HA: Putting snapshots in /config/www allows for public access to cameras

    The feature to copy snapshots into /config/www is not only unnecessary (HA can be pointed at http://localhost:5000 just fine), but also leaks camera images to the public if the home assistant server is port forwarded to the internet, as /local/* can be viewed without authentication.

    enhancement 
    opened by jackrosenthal 2
  • Allow logging to file

    Allow logging to file

    Thanks for creating this! I noticed you're setting up the Python logger. Would you have an issue sending logs to a known location (say /app/logs/)? This would let me easily capture those logs by mounting a Docker volume to that location.

    Thanks!

    enhancement 
    opened by JoBrad 0
  • Camera feed crashes on wyze app when server is up

    Camera feed crashes on wyze app when server is up

    I have just installed DWB on my raspberry pi 4 running homebridge. I have noticed when I have the bridge running and I open the wyze app to view the streams the app can't establish a connection to the cameras.

    opened by KhantheDalek 6
  • Missing 4th value to unpack from tutk.av_recv_frame_data

    Missing 4th value to unpack from tutk.av_recv_frame_data

    https://github.com/mrlt8/docker-wyze-bridge/blob/fb26c9d59b42f2b6255510cd1687ed2cda54b294/app/wyzecam/iotc.py#L425

    Should likely be:

    errno, frame_data, frame_info, _ = tutk.av_recv_frame_data(
    
    opened by kmorris81 2
Releases(v1.10.1)
  • v1.10.1(Dec 13, 2022)

  • v1.10.0(Dec 13, 2022)

    What's Changed in v1.10.0

    • New: Optional basic auth for WebUI with WEB_AUTH=True #612 Thanks @yeahme49!
      • Note: this will only protect the WebUI. API and snapshot endpoints are unprotected at this time.
    • New: API endpoints and MQTT topic to send commands to the camera.
    • Updated: Wyze app and iOS version for the Web API
    • Updated: rtsp-simple-server to v0.20.4
    Source code(tar.gz)
    Source code(zip)
  • v1.9.2(Nov 23, 2022)

    What's Changed in v1.9.2

    • Fixed an issue introduced in v1.9.1 that could cause the bridge from reconnecting to a camera. #619 #620 Thanks @dmkjr and @mjb83!

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.9.1...v1.9.2

    Source code(tar.gz)
    Source code(zip)
  • v1.9.1(Nov 20, 2022)

    What's Changed in v1.9.1

    • Potential Fix: Audio and video lagging #597 Thanks @carldanley!
    • Changed: CPU and memory optimization.
    • Changed: Allow quality lower than 30. #608
    • Changed: Show video codec.
    • Changed: Use h264 preset fast for h264_nvenc.
    • Updated: iOS and wyze version for web api.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.9.0...v1.9.1

    Source code(tar.gz)
    Source code(zip)
  • v1.9.0(Nov 6, 2022)

    What's Changed in v1.9.0

    • New: Wyze Cam V3 Pro 2K support! Should also work with the Pan Pro 2k. #595 Huge thanks to @carldanley!

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.13...v1.9.0

    Source code(tar.gz)
    Source code(zip)
  • v1.8.13(Nov 4, 2022)

    What's Changed in v1.8.13

    • Fix: "Fatal Python error" on read/ready events.
    • Fix: occasional snapshot timeouts.
    • Fix: ignore TutkError if camera is offline when using rtsp_fw.
    • Fix: refresh button for WebUI.
    • New: timestamp for last snapshot in API.
    • Update: wyze app version number for web API.
    • Updated: rtsp-simple-server to v0.20.2.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.12...v1.8.13

    Source code(tar.gz)
    Source code(zip)
  • v1.8.12(Oct 29, 2022)

    What's Changed in v1.8.12

    • Fixed: Local recording creating zero byte files when audio codec was not supported by the mp4 container. #575 Thanks @pldimarco!
      • Note: Bridge wil use the mov container if using the raw PCM from camera. Please usee AUDIO_CODEC=aac if you require an mp4.
    • New: Show camera status and name in fullscreen WebUI.
    • New: Optional autoplay in WebUI - Requires autoplay support in the browser. #574 Thanks @JA16122000!
    • New: Query params for web-ui:
      • autoplay http://localhost:5000/?autoplay
    • Updated: rtsp-simple-server to v0.20.1
    • Updated: iOS Version

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.11...v1.8.12

    Source code(tar.gz)
    Source code(zip)
  • v1.8.11(Oct 23, 2022)

    What's Changed in v1.8.11

    • Fix: missing url for RTSP_FW #564 Thanks @anderfrank!
    • New: RTSP_FW=force option to force toggle the RTSP stream on official RTSP FW (4.19.x, 4.20.x, 4.28.x, 4.29.x, 4.61.x.).
    • New: Fullscreen/kiosk mode for web-ui that hides all the extra links and buttons. #567 Thanks @RUHavingFun!
    • New: Pre-built docker images with hwaccel enabled for amd64 #548
    • New: Show time since last snapshot
    • New: Query params for web-ui:
      • Fullscreen/kiosk mode http://localhost:5000/?fullscreen
      • Number of columns http://localhost:5000/?columns=4
      • Preview refresh interval http://localhost:5000/?refresh=60
      • Camera order http://localhost:5000/?order=front-cam,back-cam,garage,other

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.10...v1.8.11

    Source code(tar.gz)
    Source code(zip)
  • v1.8.10(Oct 13, 2022)

    What's Changed in v1.8.10

    • Fix: bitstream data when using rotation which could cause issues in some clients like Homebridge. Thanks @noelhibbard! #552
    • Fix: broken snapshots for cameras with spaces in the name if stream auth enabled. Thanks @RUHavingFun! #542
    • Updated: iOS and App version bump.
    • New: ENV option RTSP_FW=True to proxy an extra RTSP stream if on official RTSP FW (4.19.x, 4.20.x, 4.28.x, 4.29.x, 4.61.x.).
      • Additional stream will be available with the fw suffix e.g., cam-namefw
    • New: ENV option H264_ENC to allow for custom h264 encoder (e.g. h264_cuvid or h264_v4l2m2m) for rotation/re-encoding. #548
      • Additional configuration required for hwaccel encoding.
      • h264_v4l2m2m currently has bistream issues and is NOT working in certain clients like homebridge.
      • Use Dockerfile.hwaccel for ffmpeg compiled with with h264_cuvid.
    • Fixed: env bug on startup #559 Thanks @tbrausch!

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.8...v1.8.10

    Source code(tar.gz)
    Source code(zip)
  • v1.8.8(Sep 19, 2022)

    What's Changed in v1.8.8

    • Fixed: 2FA code was not working in Home Assistant Ingress/Web UI. #541 Thanks @rlust!
    • Updated: iOS version number.
    • Beta: Initial support HL_CAM3P (V3 Pro) and HL_PANP (Pan Pro) - 2K streams may need IGNORE_RES=4. Additional testing required.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.7...v1.8.8

    Source code(tar.gz)
    Source code(zip)
  • v1.8.7(Sep 3, 2022)

    What's Changed in v1.8.7

    This update brings more 2FA related changes as Wyze recently sent out some emails stating that "all users will be required to use two-factor authentication to log into a Wyze account".

    • Fixed: Adjusted totp parsing to accept alphanumeric chars (#530). Thanks @gusmann!
    • New: Enter Two-Factor Verification code directly in the WebUI.
    • New: TOTP_KEY ENV option as an alternate to the /tokens/totp file to automatically generate and enter a Time-based One-Time Password (TOTP).
    • New: http://localhost:5000/mfa/<123456> WebUI API endpoint to submit a 2FA code.
    • Updated: Wyze App version number for Web API.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.6...v1.8.7

    Source code(tar.gz)
    Source code(zip)
  • v1.8.6(Aug 25, 2022)

    What's Changed in v1.8.6

    • Fixed: Custom paths for WebUI. #520 Thanks @peasem!
    • New: Update camera info from the API on click/tap in the WebUI.
    • New: Auto use Home Assistant SSL if available for HLS-LL. #473 Thanks @pgross41!
    • ⚠️ Changed: /cameras endpoint has changed to /api. See API
    • Changed: Ignore on-demand if recording is enabled for a camera.
    • Updated: iOS version number for Web API.
    • Updated: Wyze App version number for Web API.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.5...v1.8.6

    Source code(tar.gz)
    Source code(zip)
  • v1.8.5(Aug 22, 2022)

    What's Changed in v1.8.5

    • Fixed: Remove all non-numeric characters when submitting the 2FA. #518
    • Fixed: Catch challenge_response error. #520
    • Fixed: RTSP snapshots for WebUI when authentication enabled for streams. #522
    • Potential Fix: Invalid credentials message when attempting to login with the production API. Use beta server with ENV WYZE_BETA_API. #505
    • Potential Fix: Reduce ENR/IOTC_ER_TIMEOUT API cooldown #510
    • New: WebUI endpoint to stop on-demand streams: /events/stop/<camera-name>
    • New: WebUI button to start/stop individual streams.
    • Changed: WebUI status icons for connected/connecting/offline/standby.
    • Changed: WebUI icon when using authentication for streams. #522

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.4...v1.8.5

    Source code(tar.gz)
    Source code(zip)
  • v1.8.4(Aug 18, 2022)

    What's Changed in v1.8.4

    • Fixed: Remove connected status on lost connection to bridge.
    • Potential Fix: Pull fresh camera data on IOTC_ER_TIMEOUT which is potentially caused by wyze changing the ENR used for authenticating with the cameras. #508 #510 Thanks @krystiancharubin
    • Potential Fix: Invalid credentials message when attempting to login with the iOS x-api-key. Can now set a custom key using the ENV WYZE_APP_API_KEY. #505
    • Changed: The /restart/all endpoint will now clear the local cache and pull fresh camera data before restarting the cameras. #508
    • Updated: rtsp-simple-server to v0.20.0

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.3...v1.8.4

    Source code(tar.gz)
    Source code(zip)
  • v1.8.3(Aug 14, 2022)

    What's Changed in v1.8.3

    • Fixed: Bug where cameras would go into a "Timed out connecting to ..." loop #391 #484
    • Fixed: Bug when restarting the connection to the cameras in the WebUI #391 Thanks @mdabbs!
    • Fixed: TypeError when setting a custom BOA_INTERVAL #504 Thanks @stevenwbuehler!
    • Fixed: Check up on snapshots to prevent zombie processes.
    • New: Use server side events to update the connection status color on the Web-UI to show when a camera is actually connected.
    • New: Pause/resume snapshots in the web-ui based on the connection status.
    • New: API endpoints
      • /cameras/sse_status server side event to monitor connection to all cameras.
      • /cameras/<camera-name> return json for a single camera.
      • /cameras/<cam-name>/status return json with current connection status only.
    • Changed: /cameras API endpoint format to include the total cameras and enabled cameras.
    • Changed: Display on-demand status in the logs.
    • Changed: More verbose http exceptions #505

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.2...v1.8.3

    Source code(tar.gz)
    Source code(zip)
  • v1.8.2(Aug 9, 2022)

    What's Changed in v1.8.2

    • Fixed: timeout issue with on-demand stream. #501 Thanks @tremfranz!
    • Fixed: disable on-demand wasn't working in HA.
    • Fixed: WebUI was still loading live snapshots for on-demand cameras.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.1...v1.8.2

    Source code(tar.gz)
    Source code(zip)
  • v1.8.1(Aug 9, 2022)

    What's Changed in v1.8.0/1

    • Fixed: use url safe names for on-demand streams. #498 Thanks @terryhonn!

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.8.0...v1.8.1

    Source code(tar.gz)
    Source code(zip)
  • v1.8.0(Aug 8, 2022)

    What's Changed in v1.8.0

    • New: on-demand streaming. Use the optional ON_DEMAND=True ENV to enable.
      • Outdoor cams (WVOD1 and HL_WCO2) will automatically be marked as on-demand.
    • Changed: WebUI will NOT auto reload snapshots for cameras marked as on-demand or if ON_DEMAND is enabled, but manually refreshing the image will continue to work.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.7.5...v1.8.0

    Source code(tar.gz)
    Source code(zip)
  • v1.7.5(Aug 3, 2022)

    What's Changed in v1.7.5

    • New: Switch between still preview and video-js directly in the web-ui without having to change the ENV.
    • Fixed: background color on mobile view of the Web-UI.
    • Web-UI: Disable snapshot reloads by setting reload time to 0. #36
    • Web-UI: Darker background on prefers-color-scheme: dark.
    • Updated: iOS and wyze app version numbers

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.7.4...v1.7.5

    Source code(tar.gz)
    Source code(zip)
  • v1.7.4(Jul 25, 2022)

    What's Changed in v1.7.4

    • Fixed: Custom strftime in the RECORD_FILE_NAME would produce the wrong format. #487 Thanks @WasabiNME
    • Changed: Sleep 2 seconds on TutkError
    • Updated: rtsp-simple-server to v0.19.3
    Source code(tar.gz)
    Source code(zip)
  • v1.7.3(Jul 14, 2022)

    What's Changed in v1.7.3

    • NEW - Dark mode for Web-UI!
    • NEW - Custom url config for HA. (#473)
    • CHANGED - Cleanup connections before exit.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.7.2...v1.7.3

    Source code(tar.gz)
    Source code(zip)
  • v1.7.2(Jul 11, 2022)

    What's Changed in v1.7.2

    • NEW - SD card storage info and audio status icons in Web-UI.
    • FIXED - extra padding around image/video.
    • FIXED - Preview image would not load in some situations.
    • FIXED - Wrong version number in previous release.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.7.1...v1.7.2

    Source code(tar.gz)
    Source code(zip)
  • v1.7.1(Jul 11, 2022)

    What's Changed in v1.7.0/v1.7.1

    Some wyze cams have have a built-in http server "boa" that is enabled when downloading a time lapse from the camera. By enabling this http server, we can have access to the SD card on the camera, so you can download whatever you need off the SD card without having to take each camera down.

    PLEASE NOTE: If enabled, anyone on your local network will be able to access/download stuff from the SD Card on the camera.

    NEW ENV options:

    • ENABLE_BOA - Enable the boa HTTP server on select cameras with an SD card.
    • BOA_INTERVAL - The number of seconds between image pulls/keep alives.
    • TAKE_PHOTO - Take a high quality photo on the camera SD Card on BOA_INTERVAL.
    • PULL_PHOTO - Download latest high-quality photo from camera.
    • PULL_ALARM - Download latest alarm file from camera and notify via MQTT if available.
    • MOTION_HTTP - Make a Webhook/HTTP request to any url on motion, e.g., http://localhost/triggerMotion?cam={cam_name}.
    • MOTION_COOLDOWN - Number of seconds to keep the motion flag set to true before resetting it.

    Other changes:

    • WEB-UI: /photo/<cam-name>.jpg endpoint to take a photo on the camera sensor and return it.
    • WEB-UI: Display additional camera_info from the current session. #436
    • MQTT: /takePhoto endpoint to take a photo on the camera sensor.
    • MQTT: /motion endpoint that updates when a new file is detected in the alarm folder on the camera's SD card. Requires PULL_ALARM to be enabled.
    • FIXED: placeholder image wasn't getting updated.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.6.13...v1.7.1

    Source code(tar.gz)
    Source code(zip)
  • v1.7.0(Jul 11, 2022)

    What's Changed in v1.7.0

    Some wyze cams have have a built-in http server "boa" that is enabled when downloading a time lapse from the camera. By enabling this http server, we can have access to the SD card on the camera, so you can download whatever you need off the SD card without having to take each camera down.

    PLEASE NOTE: If enabled, anyone on your local network will be able to access/download stuff from the SD Card on the camera.

    NEW ENV options:

    • ENABLE_BOA - Enable the boa HTTP server on select cameras with an SD card.
    • BOA_INTERVAL - The number of seconds between image pulls/keep alives.
    • TAKE_PHOTO - Take a high quality photo on the camera SD Card on BOA_INTERVAL.
    • PULL_PHOTO - Download latest high-quality photo from camera.
    • PULL_ALARM - Download latest alarm file from camera and notify via MQTT if available.
    • MOTION_HTTP - Make a Webhook/HTTP request to any url on motion, e.g., http://localhost/triggerMotion?cam={cam_name}.
    • MOTION_COOLDOWN - Number of seconds to keep the motion flag set to true before resetting it.

    Other changes:

    • WEB-UI: /photo/<cam-name>.jpg endpoint to take a photo on the camera sensor and return it.
    • WEB-UI: Display additional camera_info from the current session. #436
    • MQTT: /takePhoto endpoint to take a photo on the camera sensor.
    • MQTT: /motion endpoint that updates when a new file is detected in the alarm folder on the camera's SD card. Requires PULL_ALARM to be enabled.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.6.13...v1.7.0

    Source code(tar.gz)
    Source code(zip)
  • v1.6.13(Jul 11, 2022)

    Changes in v1.6.13

    • FIXED Web-UI: reload cached images on page load

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.6.12...v1.6.13

    Source code(tar.gz)
    Source code(zip)
  • v1.6.12(Jul 7, 2022)

    Changes in v1.6.12

    • FIXED Web-UI image not refreshing in some browsers. #460
    • CHANGED Home Assistant: Use hostname from request for Web-UI. #465
    Source code(tar.gz)
    Source code(zip)
  • v1.6.11(Jul 4, 2022)

    Changes in v1.6.11

    • NEW Restart connection to all cameras or restart rtsp-server from webui.
      • /restart/cameras: Stop and start connection to all enabled cameras.
      • /restart/rtsp_server: Stop and start rtsp-simple-server.
      • /restart/all: Stop and start rtsp-simple-server and connection to all enabled cameras.
    • NEW ENV AUDIO_STREAM or AUDIO_STREAM_CAM_NAME to create an audio only sub-stream with the _audio suffix: /cam_name_audio #446
    • FIXED five column view in web-ui.
    • FIXED static values in web-ui load.
    • FIXED validate input in webui to prevent invalid values.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.6.10...v1.6.11

    Source code(tar.gz)
    Source code(zip)
  • v1.6.10(Jul 1, 2022)

    Changes in v1.6.10

    • Home Assistant Expose port 5000 for web-ui and snapshots. #455
    • Web-UI Disable reload button while snapshot is updating.
    • Web-UI Use navbar for filtering and other settings.
    • FIXED web-ui would fail to load if cookies values were set to none.
    Source code(tar.gz)
    Source code(zip)
  • v1.6.9(Jun 30, 2022)

    Changes in v1.6.9

    Web-UI:

    • FIXED Dropdown triggering drag, only allow drag from card-title area. Thanks @dsheehan!
    • FIXED Drag/drop ghost maintain height when columns set to 1. Thanks @dsheehan!
    • CHANGED Render _url as links in info dropdown. Thanks @dsheehan!
    • CHANGED Hide filter tabs if all cams enabled.
    • CHANGED Loading image to match 16x9 ratio.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.6.8...v1.6.9

    Source code(tar.gz)
    Source code(zip)
  • v1.6.8(Jun 28, 2022)

    Changes in v1.6.8

    Once again, huge thanks to @dsheehan!

    • UPDATED Web-UI: Customizable refresh interval, and improved /img/cam-name.jpg. Thanks @dsheehan!
      • :5000/snapshot/cam-name.jpg - Always capture a new snapshot from the rtsp stream. This process may take a couple of seconds.
      • :5000/img/cam-name.jpg - Will attempt to return an existing snapshot or capture a new one from the the rtsp stream.
    • NEW Web-UI: Refresh button to update a snapshot on-demand.
    • FIXED Zombie processes should be gone now that we're waiting for the images to be returned from ffmpeg.

    Full Changelog: https://github.com/mrlt8/docker-wyze-bridge/compare/v1.6.7...v1.6.8

    Source code(tar.gz)
    Source code(zip)
iYTDL - Asynchronous Standalone Inline YouTube-DL Module

iYTDL Asynchronous Standalone Inline YouTube-DL Module ⬇️ Installing Install pip3 install iytdl Upgrade pip3 install -U iytdl ⭐️ Features Fully Asynch

iYTDL 46 Dec 24, 2022
This is a tool for making a every day video if you take a picture of you everyday

Face-Everyday-Maker-Studio Description This project is a tool for making a everyday video, which is timelapse video or slides video, of images but for

John A Betancourt G 9 Sep 06, 2022
Media player custom component which works with MQTT.

Media player custom component which works with MQTT. I designed this to specifically work with a ESP32 which i used to control a speakercraft amp.

2 Feb 10, 2022
Convert lecture videos to slides in one line. Takes an input of a directory containing your lecture videos and outputs a directory containing .PDF files containing the slides of each lecture.

Convert lecture videos to slides in one line. Takes an input of a directory containing your lecture videos and outputs a directory containing .PDF files containing the slides of each lecture.

Sidharth Anand 12 Sep 10, 2022
Python Simple Mass Video Clipper (PSMVC)

Python Simple Mass Video Clipper (PSMVC) PSMVC Γ© um gerador de cortes via terminal construΓ­do em python. Uso Basta abrir o arquivo start.py Dependenci

Bruno 2 Oct 16, 2021
Program for converting video to GIF

video-to-gif Program for converting video to GIF Install the lib: pip install moviepy Usage: Specify the path to the video file. clip = VideoFileClip(

Artem Mokin 0 Dec 13, 2021
video streaming userbot (vsu) based on pytgcalls for streaming video trought the telegram video chat group.

VIDEO STREAM USERBOT ✨ an another telegram userbot for streaming video trought the telegram video chat. Environmental Variables πŸ“Œ API_ID : Get this v

levina 6 Oct 17, 2021
All the code in these repos was created and explained by HashLips on the main YouTube channel.

Welcome to HashLips πŸ‘„ All the code in these repos was created and explained by HashLips on the main YouTube channel. To find out more please visit: ?

HashLips 6.7k Jan 06, 2023
Tautulli - A Python based monitoring and tracking tool for Plex Media Server.

Tautulli A python based web application for monitoring, analytics and notifications for Plex Media Server. This project is based on code from Headphon

Tautulli 4.7k Jan 07, 2023
goal: render videos on eu4's timeline function

Rendering Videos on the EU4 Time Line This repository contains code to create an eu4-savefile that plays back a video in question.

29 Dec 24, 2022
Video stream recording dockerized server using python/ffmpeg.

Stream Recording Server Video stream recording dockerized server using python/ffmpeg. Usage Configuration Prepare .env file, check .env.example for th

GR 2 Jan 14, 2022
Automagically synchronize subtitles with video.

FFsubsync Language-agnostic automatic synchronization of subtitles with video, so that subtitles are aligned to the correct starting point within the

Stephen Macke 5.7k Jan 06, 2023
Add a "flame" effect on each hand's index onto a video stream.

Add a "flame" effect on each hand's index onto a video stream. recording.webm.mov This script is just a quick hack, it's a bit of glue between mediapi

Paul Willot 7 Sep 15, 2022
LL-HLS implementation written in Python3

biim mpegts stream to Apple Low Latency HLS Feature mpegts demuxing in pure python3 (using asyncio) mpegts stream to fragmented ts use piping from ffm

γ‚‚γ«γ‚‡ο½žγ‚“ 15 Jan 03, 2023
High-performance cross-platform Video Processing Python framework powerpacked with unique trailblazing features :fire:

Releases | Gears | Documentation | Installation | License VidGear is a High-Performance Video Processing Python Library that provides an easy-to-use,

Abhishek Thakur 2.6k Dec 28, 2022
Code from the 2021 Signal Video Superclass

Twilio Video Demo This is the code written during the live Twilio Video demo during Twilio's Signal 2021 Superclass. It creates a simple Video applica

2 Oct 21, 2021
A wrapper around ffmpeg to make it work in a concurrent and memory-buffered fashion.

Media Fixer Have you ever had a film or TV show that your TV wasn't able to play its audio? Well this program is for you. Media Fixer is a program whi

Halit Şimşek 3 May 04, 2022
Python and OpenCV-based scene cut/transition detection program & library.

Video Scene Cut Detection and Analysis Tool Latest Release: v0.5.6.1 (October 11, 2021) Main Webpage: py.scenedetect.com Documentation: manual.scenede

Brandon Castellano 1.8k Jan 02, 2023
Search a video semantically with AI.

Which Frame? Search a video semantically with AI. For example, try a natural language search query like "a person with sunglasses". You can also searc

David Chuan-En Lin 1 Nov 06, 2021
Simple background blur for your webcam

backgroundblur Simple background blur for your webcam. This script will capture your webcams output, add a blur effect to the background and output th

Stefan Wagner 4 Dec 07, 2021