mrlt8 / docker-wyze-bridge

WebRTC/RTSP/RTMP/LL-HLS bridge for Wyze cams in a docker container
GNU Affero General Public License v3.0
2.64k stars 162 forks source link

Not an issue but a question on how to install the new v0.4 #26

Closed balajeek closed 3 years ago

balajeek commented 3 years ago

few days ago i setup docker-wyze-bridge, not sure where i found and landed but i ended by creating a docker-comple.yaml like this:

`version: '3.6' services: rtsp-server: container_name: rtsp-server image: aler9/rtsp-simple-server restart: always environment:

As you can see there are two containers, one for rtsp and other for wyze-bridge. Today I noticed v0.4 is out and it says rtsp-server is built-in, as you can see my wyze-bridge container does not contain a line for image so i wonder how i would go with the new version, can anyone help me with the docker-comple.yaml that i would need to get this running. thank you.

mrlt8 commented 3 years ago

You can find the new sample here:

https://github.com/mrlt8/docker-wyze-bridge/blob/main/docker-compose.sample.yml

(If you’re on a Linux-based system, you can uncomment network_mode: host, and remove or comment out all the ports: lines)

Once you have your new yml, you can rebuild with something like this:

docker-compose down --remove-orphans
docker-compose up --build
balajeek commented 3 years ago

Sorry if i don't understand it well, I am just not an expert with docker.

Whats the difference with the docker-compose i posted which I have currently and the sample link you mentioned, I don't see anywhere where the image name or version is mentioned. so i am wondering how would it even pull the latest.

my log shows "STARTING DOCKER-WYZE-BRIDGE v0.3.2.1"

mrlt8 commented 3 years ago

You'll need to pull the latest changes using git pull. You will rebuild the image when you run docker-compose up --build.

SomebodySysop commented 3 years ago

You'll need to pull the latest changes using git pull. You will rebuild the image when you run docker-compose up --build.

I am a little confused also. I just did a git clone of latest repo and this is what the sample docker-compose-sample.yml looks like:

version: '3.8' services: wyze-bridge: restart: always

network_mode: host

    ports:
        - 1935:1935
        - 8554:8554
        - 8888:8888
    build: 
        context: ./app
        # dockerfile: Dockerfile.arm
    environment:
        - WYZE_EMAIL=
        - WYZE_PASSWORD=

The yml file says 3.8. Is that correct for v0.4?

Alfiegerner commented 3 years ago

The yml file says 3.8. Is that correct for v0.4?

Yes, 3.8 refers to docker-compose version, not the app. It lets docker-compose know what syntax to expect.

balajeek commented 3 years ago

okay, I did git pull, then docker build as you suggested. then ran docker-comple up -d, i get this error. rstp won't start and now the wyzebrige won work and i lost the camea feeds. can you help please.

ubuntu:~/docker/docker-wyze-bridge$ docker-compose up -d frigate is up-to-date Starting rtsp-server ... error Recreating wyze-bridge ...

ERROR: for rtsp-server Cannot start service rtsp-server: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:449: container init caused \"rootfs_linux.go:58: mounting \\"/home/bala/docker/docker-wyze-bridge/app/rtsp-simple-server.yml\\" to rootfs \\"/var/lib/docker/overlay2/71ea8b86dab675f171d7381e62faa8a7986f174a22f0ea9cc510fd124d951f3e/merged\\" at \\"/var/lib/docker/overlay2/71ea8b86dab675f171d7381e62faa8a7986f174a22f0ea9cc510fd124d951f3e/merged/rtsp-simple-server.yml\\" caused \\"not a directory\\"\"": unknown: Are you trying to mount a directory onto a file (or vice-veRecreating wyze-bridge ... done

ERROR: for rtsp-server Cannot start service rtsp-server: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:449: container init caused \"rootfs_linux.go:58: mounting \\"/home/bala/docker/docker-wyze-bridge/app/rtsp-simple-server.yml\\" to rootfs \\"/var/lib/docker/overlay2/71ea8b86dab675f171d7381e62faa8a7986f174a22f0ea9cc510fd124d951f3e/merged\\" at \\"/var/lib/docker/overlay2/71ea8b86dab675f171d7381e62faa8a7986f174a22f0ea9cc510fd124d951f3e/merged/rtsp-simple-server.yml\\" caused \\"not a directory\\"\"": unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type ERROR: Encountered errors while bringing up the project.

mrlt8 commented 3 years ago

hmm, looks like you still have the old rtsp-server in your docker-compose.yml. You should be able to delete all references to it since the rtsp-server is internal with v0.4.

balajeek commented 3 years ago

Yes, that is correct. I removed that, and ran again, i get this error and camera feeds are not available.

2021/07/26 15:11:18 I [0/0] rtsp-simple-server v0.16.4 2021/07/26 15:11:23 I [0/0] [RTSP] UDP/RTP listener opened on :8000 2021/07/26 15:11:23 I [0/0] [RTSP] UDP/RTCP listener opened on :8001 2021/07/26 15:11:23 I [0/0] [RTSP] TCP listener opened on :8555 2021/07/26 15:11:23 I [0/0] [RTMP] listener opened on :1935 2021/07/26 15:11:23 I [0/0] [HLS] listener opened on :8888 STARTING DOCKER-WYZE-BRIDGE v0.4.1.3 Fetching user from local cache... Fetching cameras from local cache... WHITELIST MODE ON STARTING 2 OF 3 CAMERAS 2021/07/26 15:11:25 [V3 outdoor] Starting HD 120kb/s Stream for WyzeCam V3 (WYZE_CAKP2JFUS) running FW: 4.36.2.5 from 192.168.1.14 "LAN mode" (WiFi Quality: 100%)... 2021/07/26 15:11:25 [Reef] Starting HD 120kb/s Stream for WyzeCam V2 (WYZEC1-JZ) running FW: 4.28.4.49 from 192.168.1.15 "LAN mode" (WiFi Quality: 65%)... 2021/07/26 15:11:32 [V3 outdoor] [FFMPEG] [Errno 32] Broken pipe 2021/07/26 15:11:32 [V3 outdoor] Cleaning up FFmpeg... 2021/07/26 15:11:32 [Reef] [FFMPEG] [Errno 32] Broken pipe 2021/07/26 15:11:32 [Reef] Cleaning up FFmpeg...

...and its keep repeating the same errors

Here are my settings now, added the new environment variables:

wyze-bridge: container_name: wyze-bridge network_mode: host ports:

mrlt8 commented 3 years ago

ok, I pushed some adjustments that might fix it.

A couple of suggestions for your your docker-compose. Since you're running in host mode, you can remove :

ports:
- 1935:1935
- 8554:8554
- 8888:8888

You can probably also remove RTSP_RTSPADDRESS (if you don't need to change the 8554 default port).

balajeek commented 3 years ago

thanks for the support and got the update and ran it, both camera seem to stream now after removing the ports and RTSPADDRESS, I could see it on vlc and also on my frigate docker fine. but i still see some errors and wondering why? Also I still did not connect the wyze pan because it still said 'type' error, so i removed it from the config for now, here is the log with other 2 cameras.

One of the thread in frigate docker forum mentioned, wyze cam stream comes from cloud thru wyze servers and not directly from local lan even if you are in home network with rtsp enabled firmware, is that true?

Here is the log after the update: STARTING DOCKER-WYZE-BRIDGE v0.4.1.5 Fetching user from local cache... Fetching cameras from local cache... WHITELIST MODE ON STARTING 2 OF 3 CAMERAS 2021/07/28 16:48:26 [V3 outdoor] Starting HD 120kb/s Stream for WyzeCam V3 (WYZE_CAKP2JFUS) running FW: 4.36.2.5 from 192.168.99.14 "LAN mode" (WiFi Quality: 94%)... 2021/07/28 16:48:26 [Reef] Starting HD 120kb/s Stream for WyzeCam V2 (WYZEC1-JZ) running FW: 4.28.4.49 from 192.168.99.41 "LAN mode" (WiFi Quality: 69%)... 2021/07/28 16:48:31 I [0/0] [RTSP] [conn 127.0.0.1:53030] opened 2021/07/28 16:48:31 I [0/0] [RTSP] [session 3774838329] opened by 127.0.0.1:53030 2021/07/28 16:48:31 I [1/0] [RTSP] [session 3774838329] is publishing to path 'v3-outdoor', 1 track with UDP 2021/07/28 16:48:33 I [1/0] [RTSP] [conn 172.19.0.2:41694] opened 2021/07/28 16:48:33 I [1/0] [RTSP] [session 4218593885] opened by 172.19.0.2:41694 2021/07/28 16:48:33 I [1/1] [RTSP] [session 4218593885] is reading from path 'v3-outdoor', 1 track with TCP 2021/07/28 16:48:33 I [1/1] [RTSP] [conn 172.19.0.2:41696] opened 2021/07/28 16:48:33 I [1/1] [RTSP] [conn 172.19.0.2:41696] ERR: no one is publishing to path 'reef' 2021/07/28 16:48:33 I [1/1] [RTSP] [conn 172.19.0.2:41696] closed 2021/07/28 16:48:33 I [1/1] [RTSP] [conn 127.0.0.1:53038] opened 2021/07/28 16:48:33 I [1/1] [RTSP] [session 27204678] opened by 127.0.0.1:53038 2021/07/28 16:48:33 I [2/1] [RTSP] [session 27204678] is publishing to path 'reef', 1 track with UDP 2021/07/28 16:48:43 I [2/1] [RTSP] [conn 172.19.0.2:41910] opened 2021/07/28 16:48:43 I [2/1] [RTSP] [session 1284860973] opened by 172.19.0.2:41910 2021/07/28 16:48:43 I [2/2] [RTSP] [session 1284860973] is reading from path 'reef', 1 track with TCP

mrlt8 commented 3 years ago

Good to see you got that sorted.

I'm still not sure what's causing issues with the pan cameras.

If you're seeing "LAN mode", like on your logs, then it should be streaming direct from the cam and not through the cloud like in "relay mode". You could try taking your network offline by disconnecting your WAN and see if the streams stay up.

balajeek commented 3 years ago

an unfortunate thing happen last night, my van parked on the street the window was shattered and even i had the camera (pan) most of the videos are frozen frames and I couldn't find who or how it happen. Its the fate i was working on this camera last few days and this happen, I had the same camera setup to record continusouly for years on my qnas and i made it offline few days ago.

Anyway, if the pan camera did not work well i am thinking of changing the camera to better one. some say amcrest or annke so not sure which i will go far, i need a camera that works without cloud so everything is local.

thanks for all your support. Its a good idea to disconnect the wan and how if it still works. 2 days ago i put a wan out rule on my unifi router to block internet, even after that my wyze app can still connect and stream, wonder how?

balajeek commented 3 years ago

ok, I pushed some adjustments that might fix it.

A couple of suggestions for your your docker-compose. Since you're running in host mode, you can remove :

ports:
- 1935:1935
- 8554:8554
- 8888:8888

You can probably also remove RTSP_RTSPADDRESS (if you don't need to change the 8554 default port).

balajeek commented 3 years ago

Sorry accidentally clicked close