Dahua and generic cameras only streaming via internal ip but not via cloud

Can somebody point me to the direction to resolve my cameras (Dahua and generic) not streaming when accessing via external url / cloud?

Maybe the cameras prevent streaming to external IPs.
Some cameras have this security feature and then it needs to be disabled on the cameras.
Only other solution is to actually record and retransmit the stream on some other device.
HA probably just make an iFrame and then puts the stream into that, which means the stream is going directly from the camera to the viewers browser.

Not debating but just trying to understand. For the contacted RSTP stream it sees I am connected via my internal home assistant server. The steps to get to my home assistant server are not affecting my lovelace dashboard in itself or are they?

The way an iFrame works is by reserving an area in your dashboard and then telling the browser to go fetch the content for that area directly from the cameras.
When you are home, then the camera will see a request for the stream coming from the local network, because that is where the browser is.
When you are away, then the camera will see a request for the stream coming from a non-local network, because the device with the browser is now not at home anymore.

Because the dashboard do not really touch the content from the camera, then there is nothing in HA that can be done to change this. It will have to be changed at the cameras configuration, if possible.

The other solution is to set up a proxy (a device that record and retransmit), because then the stream is touched and then the proxy can start to change stuff.
Maybe Frigate can be used for this.

1 Like

How are the cameras integrated? Integrations like dahua/onvif/amcrest will provide a camera entity. When you are outside your network and navigate to the camera steam entity, not to a card on the dash, can you see the stream?