Open theschles opened 7 months ago
Your URL doesn't have stream name in src param. So them doesn't work. go2rtc doesn't provide ONVIF auto-discovery feature. ONVIF server runs at same port as Web API.
Your URL doesn't have stream name in src param. So them doesn't work. go2rtc doesn't provide ONVIF auto-discovery feature. ONVIF server runs at same port as Web API.
Hi @AlexxIT -- apologies, because I didn't wrap the IP / Port / URL entries inside a code-block, the stuff I angle-bracketed didn't display.
Please re-review what I have above?
Thank you for your assistance!
MJPEG will work for you only if source camera support it. Or if you setup transcoding via ffmpeg.
If your app support only MJPEG stream - html link won't work. It's only for browsers.
It's sad to find lots of onvif camera viewers like scrypted or synology surveillance, I cannot provide the camera's name in the onvif address, They typically only support ip/port/username/password configuration, without path configuration.
synology surveillance told it's an invalid address
scrypted will become no-response when click add button, the coding looks also does not support this https://github.com/koush/scrypted/blob/17ecb56259c8f61bb7e6f3aa4de892b6fe179ce6/plugins/onvif/src/main.ts#L429
The ability to configure go2rtc for adoption in unifi protect's recently added onvif support would effectively open that platform.
/onvif/{stream}
throws an errorCreating the interfaces for other IPs is probably a bit much, but assuming they exist on the host: would adding the ability to configure additional instances of the existing onvif server to listen on a specific interface be reasonable?
Initial suggestion for configuration options to start a discussion:
onvif:
- listen: 192.168.1.5:8000
advertise: true
name: Channel 5
model: go2rtc
highStream: channel5
lowStream: channel5lq
- listen: 192.168.1.6:8000
advertise: false
name: Channel 6
model: go2rtc
highStream: channel6
lowStream: channel6lq
There is a mostly working reference implementation here: https://github.com/p10tyr/rtsp-to-onvif/
Advertising go2rtc's rtsp's streams with both high and low quality works great but snapshots are currently glitchy (ECONNRESET for frame.jpeg, intermittent for frame.mp4, unclear to me it's the tcp-proxy that project is using or some other interaction or just a bug on unifi's side).
Thanks!
- Usually ONVIF expected only host and port, not URL
Right, I think this issue is about the potential need for additional config/doc around how go2rtc implements the existing onvif server.
- Multiple ONVIF severs in plans. It's a big task
Wonderful, glad to hear multiple onvif output is in planning.
- You can now run multiple instances of go2rtc. And get multiple ONVIF servers in this way
Agreed, until multiple onvif output is implemented multiple instances of go2rtc should be workable.
I'll continue the discussion around getting an go2rtc instance into Unifi Protect as a camera over in #613 after wiresharking the adoption to compare the working rtsp-to-onvif
and non-working go2rtc
flows.
Thanks!
Hi all,
Using go2rtc 1.8.5 as port 1984 on a docker instance running on a Raspberry Pi 3. go2rtc works great with RTSP and HTTP streaming to tablets and to Home Assistant clients on my LAN (single subnet).
I’m now trying to get the Roku IP Camera Viewer Basic version to display a camera feed on my TV. As it requires a MJPEG-encoded feed, I configured the settings in the Roku camera app as:
Doesn’t work.
I also tried just:
Again, nada nada.
That’s when I learned about ONVIF. If I’m RTFM’ing correctly, if the go2rtc server instance advertised as a ONVIF server (or at least had the right port open), the camera feeds on my go2rtc would be discoverable by the Roku camera app.
Right now, however, when I tell the Roku camera app to scan my network for ONVIF instances, it doesn’t detect anything.
Help?