Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Frequent freezes while streaming from Tapo C200 cameras that require restarting the plugin #1433

Open
blanknam3d opened this issue Nov 4, 2024 · 5 comments
Assignees
Labels
bug Something isn't working

Comments

@blanknam3d
Copy link

I'm experiencing a problem where if I play a stream from my Tapo C200 cameras, it eventually freezes up & will not load again if I refresh & try to play the stream once more, unless I go & restart the go2rtc plugin.

Streams in my go2rtc config:

streams:
  kitchen: tapo://[email protected]
  livingroom: tapo://[email protected]
...

Lovelace card config example:

type: custom:webrtc-camera
ui: true
poster: http://192.168.x.xx:1984/api/frame.jpeg?src=livingroom
streams:
  - url: ""
    name: PLAY
  - url: livingroom
    name: HD
    mode: webrtc,webrtc/tcp,onvif
    media: video,audio

Logs from addon startup to when video stream freezes & won't reload:

09:05:45.215 INF go2rtc platform=linux/amd64 revision=8cca8de version=1.9.6
09:05:45.217 INF config path=/config/go2rtc.yaml
09:05:45.217 INF [rtsp] listen addr=:8554
09:05:45.218 INF [api] listen addr=:1984
09:05:45.219 INF [webrtc] listen addr=:8333
09:25:27.490 WRN github.com/AlexxIT/go2rtc/internal/streams/producer.go:170 > error="malformed MIME header: missing colon: \"Cont----device-stream-boundary--\"" url=tapo://[email protected]

The last line sometimes doesn't come up when the video stream from either of the Tapo cameras freezes, however I always find that when the video stream freezes the addon's CPU usage in Home Assistant goes up to 99% & stays there until it's restarted. I also observe that whatever stream freezes, it cannot generate any still frame thumbnail for it, but still can generate one for other streams that haven't had the sudden freeze happen to them. As for generating the thumbnail of a stream that has suddenly frozen, however, it seemingly leaves the client eternally waiting for a response.

I observe this behavior highly consistently, if I simply view a camera stream for more than 2 minutes it will happen & then I have to restart the addon to be able to view that stream again with go2rtc. So far I only see this happening with streams using tapo://, it doesn't appear to happen with standard RTSP streams from other cameras.

@AlexxIT AlexxIT added the bug Something isn't working label Nov 4, 2024
@AlexxIT AlexxIT self-assigned this Nov 4, 2024
@blanknam3d
Copy link
Author

A little update: I tinkered with this a bit, if I stream from the same cameras with their RTSP link, this issue doesn't occur. But if I specifically use tapo:// to stream from the cameras, this issue will occur.

I would just switch to using RTSP, however the Tapo C200 cameras do not support ONVIF Profile T & I want 2-way audio support, so I must use tapo:// to stream from the cameras.

@PetePeter
Copy link

are you recording as well?
i do recording with rtsp
and only use 2way audio when i actually want to speak, so its mostly not active.
and generally i never speak, rather use 2way audio for text-to-speech and its only active a tiny bit

@blanknam3d
Copy link
Author

I only use the RTSP stream to view. I don't have the cameras actively streaming to an NVR of any sort.

I largely use the 2-way audio for TTS as well, however there are instances where I use it to speak, and I need it to work consistently & reliably for those uses.

@PetePeter
Copy link

have you tried this?
#1431

It made my 2way audio + tts a bit more reliable on reolink doorbell

@codyc1515
Copy link

It made my 2way audio + tts a bit more reliable on reolink doorbell

This is about TP-Link (not Reolink) - please open a new issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants