IP Zoom camera rtsp stream

I’ve seen quite a few posts about connecting an IP camera via rtsp stream. I’d like to use my zoom camera, but can’t get the rtsp stream to work, using various combinations of port /live, usernames and passwords. The camera works fine using direct IP access via the camera’s own software and via VLC (using rtsp rtsp://admin:admin@192.168.2.155:554/11).

I’m using QGC 4.0, stream is currently set at rtsp://admin:admin@192.168.2.155:554/11. I’ve tried setting the camera to 3 different H.264 settings (base, main and high), tried H.265. Changed the IP address multiple times, removed the password. Resource Monitor shows QGC accessing port 554 but no packets seem to be transferred (no packet loss, compared to some when VLC is running). Firewall is configured to allow QGC to access all TCP and UDP ports.

I’ve seen it said that some cameras just don’t work with QGC but I don’t want to give up that easily, I’d like to be able to use this camera as it has zoom.

All suggestions welcome !

1 Like

@richard-rickett

Hi Richard,

I don’t have the same equipment as yours, so I may not be able to provide an exact answer. But here are my two cents.

Connection via rtsp stream is made by implementing a pair of systems, referred to as rtsp server and rtsp client. The parameters of the stream (IP address, port, etc.), are defined at the server. Usually, a camera acts as an rtsp server which emits data packets as rtsp protocol. A software on the topside computer will not be able to interpret the stream if it does not have the capability to read the stream as an rtsp client.

It appears to me that your camera is capable of emitting data in rtsp protocol, since you can read it as an rtsp client using VLC. But QGC is unable to interpret data with rtsp protocol because it may not have the capability. Changing IP addresses and other network parameter on the client (i.e. QGC) will not help you make connections. They must be exactly what they are defined by the camera, which you are also using in VLC.

Hope this helps.

Best,
Sanat

Hi Sanat, and thanks for the very quick response - but I’m not sure I understand. QGC can accept rtsp as quite a few people have been doing this, so the issue is either that the camera is sending an rtsp stream in a format that QGC (or gstreamer) can’t accept, OR I have a firewall/antivirus issue that is blocking QGC from reading from port 554.
Does that make sense ?
Cheers
Rich

On a further note - other IP cameras are working fine using a simple rtsp string in QGC using the same IP address, so it looks like QGC/gstreamer doesn’t like something in my zoom camera’s settings

@richard-rickett

RTSP is very standard format. I don’t think it is possible to establish connection using VLC but not QGC because of variations in the protocol itself. It is also less likely that it is getting blocked by a firewall, because Windows usually asks you to allow or block connections. The problem appears to be somewhere else.

Since you seem familiar with gstreamer, I suggest you try to connect your zoom camera using gstreamer directly. This will help narrow down your problem.

Assuming that you have gstreamer installed and is set in the environment path variable, you can run the following command on the command prompt:

gst-launch-1.0 -e -v rtspsrc location=rtsp://192.168.2.155:554/11 user-id=admin user-pw=123456 debug=true protocols=4 ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink

You will have to change the password (user-pw) of the connection in the above pipeline. If you see a display with video, then there is no problem with network connectivity or gstreamer. QGC configuration will be your culprit. Otherwise you will get a better idea of the problem from the output.

Best,
Sanat

Thanks Sanat - I’ll give it a go :+1:

Ok - that worked (with a lot of text before it launched and the same after I closed the video window). But I had to change to the specific directory where gstreamer-launch was located to get it to run, so I wonder if it’s because I don’t have the environment path variable set properly…more investigation needed !

@richard-rickett

Yes. Add gstreamer in your environment variable and then try again from the command prompt without going into that specific directory. Once that starts to work, then you try again with QGC.

Ok, fixed, runs fine. But still no joy with QGC. Hmmm.

I see… It is clear that everything is working fine at the gstreamer level. You should check QGC - gstreamer integration once again. Somehow QGC is not able to pool the output from gstreamer.

Agreed - thanks ! Not sure how to proceed from here, I’ll go through the QGC install instructions again & see if I botched a step, particularly around gstreamer install. Seems weird that it works with my non-zoom ip camera though.

I agree. That is indeed weird. But given that gstreamer has delivered the output on the command prompt, connectivity is not an issue.

By the way, is your zoom camera transmitting a duplex stream? I mean, some cameras combine two or more videos in one transmission packet (such as regular video combined with infrared video, etc.). It may be possible that QGC can only handle packets with one video and not multiple videos. Check both your cameras and see if one is transmitting single video while the other transmitting multiple videos.

Good thought ! Will check in the morning (getting a bit late here in West Aus :-))

No problem. Have a good night. :slight_smile:

I will be curious to know what went wrong once you find out.

Hi Sanat. No duplex stream. I’ve tried changing bitrate, frequency etc - doesn’t seem to make a difference. Scratching my head again :slight_smile:

Fixed ! Many thanks and kudos to Marcus Gregson from SpotX. Set the camera to h265 main, bitrate 2000, CBR control. Did the trick. Marcus, on the screenshot you can see the + and - zoom keys, and the facility to change to a different ip address.

1 Like

Nice!!

Also credit to David Nankivell for the zoom function

Congrats!

hello
your camera looks good.
Can i ask you what is your camera!