How to Interface a IP Camera?

Hello,

Actually, I’m working on the eBOX560-900-FL, an Axiomtek product which works with jetsonTX2. I’m trying to use the SONY IPELA SNC-VB600B to test the different samples on jetsonTX2. It is possible to use this camera? If yes, how can I configure it with the module? Thanks!

After that I will use “objectdetect” with my camera, if you have a tutorial, it will be very helpful. Thank you!!

Best Regards,

Corentin.

I can’t answer this, but I can probably help you to narrow it down some.

First, even if the camera has drivers on Linux I can’t guarantee it’ll be compatible with what you are doing. However, cameras like this normally have more than one function where part of this is video or a series of snapshots, and the other part is control of the camera itself. In the case of USB there are often standard drivers if the video portion uses a standardized interface. On those USB cameras there is usually a second driver for camera control if the standard class does not do as desired. It isn’t uncommon to see a USB camera which works out of the box on Linux, but for which control functionality is limited until adding the right software.

With IP there is no ability to do this and the driver must be added directly to the Jetson. USB is hot plug such that standardized IDs exist and the device can self describe. Ethernet does not self describe. You will need to find drivers for this under Linux and add them yourself. This isn’t that hard if the driver is available and simply not currently installed…it becomes essentially a file copy to the module directory. I did not research this for very long, but what I claims you have to have Windows:
[url]SNC-VB600B

Don’t let that discourage you completely, but be ready if you cannot get Linux drivers. It isn’t uncommon for the manufacturer to not support Linux, but to have drivers available anyway. Someone may have written the drivers and those drivers might already be available just by compiling them. Maybe there is some known software using the same IP protocols and not even intended for that camera which would make it work. However, barring that, you are probably out of luck. You will need to research if any Linux software exists (even on a desktop PC) for using this camera. If so, then the Jetson will probably work just as well as a PC for that purpose.

NOTE: Usually a driver implies something in the kernel. Linux already has the networking, so it might be a user space program and not technically an actual driver.

Hello linuxdev,

Thank you for your answer,

So if I understand,

Even if I found the driver, I couldn’t use “objectdetect” with this camera? I found this page about relation Jetson/Camera which is : Jetson/Cameras - eLinux.org
So the use with an IP camera exists, but there aren’t any tutorials about.

Should I to buy an USBcamera if I go toward AI detection?

Thanks to reply,

Best Regards,

Corentin.

I don’t see that particular camera listed in the URL you gave. I think it is a case of finding Linux software for that camera…if such software exists and is normally found on a PC, then it should be possible to build the same software on a TX2. The only references I saw were for using that camera under Windows.

There are lots of USB cameras which work, and I know there are also several IP cameras which work…but I couldn’t give any advise on which one to use for your case. You might give a detailed description of your use-case and someone will be able to offer more specific suggestions.

It was suggested that if the camera uses a standard format such as H.264, then you might be able to use streaming protocols (e.g., RTSP). This would mean that even if the vendor provided software is not useful on a non-Windows system that there may still be ways to use the video stream. Unfortunately I know very little about streaming protocols so I can’t make any recommendations on how to test this.

One pipeline I was told about as a starting point (which may or may not require a password…and does require knowing the IP address) is this:

gst-launch-1.0 -v rtspsrc location=rtsp://<user_name>:<user_passwd>@<cameraIP>:<port>/<stream_path> ! decodebin ! videoconvert ! xvimagesink

If you have questions on that other users may be able to comment.

Hello linuxdev,

Thank you very much for your answers.

I tried a lots of commands, and i think it’s possible to use my camera. I will share my discoveries about in this topic after that.

The problem now is only a missing decoder for text/html.

Thanks,

Best Regards,

Corentin.

@corentin: Did you manage to solve this problem?. I’m facing a similar situation to connect a FLIR IP camera to Jeton TX2 in order capture and stream using gstreamer. I couldn’t find any documentation on how to achieve this.

Is it possible for you to explain how you managed to connect the camera, identify or configure an IP address for the camera?

Thank you.
Thanuja

@thanuja0z4uF: No sorry, I couldn’t solve it…I didn’t find any documentation too. I’ll continue my work on it soon, tell us if you’ve found how to manage it please.

Thank You,
Regards,

Corentin.

@corentin: I managed to solve this by setting the network connection to link-local and then selecting auto force IP from the flycapture SDK.
Once the camera(s) are connected to the interface, select IPV4 settings and set the method to link local. Then open the flycapture SDK and select auto force IP. This actually solved my problem and now I can ping to the cameras.

@thanuja0z4uf How did you do to solve that? Can you please explain a little bit detail? I’m struggling with Hikvision IP camera too. Thank you a lot!!

@lepha1809: Hard to tell without knowing your issue. Also, I have no experience with Hikvision IP camera. What I had was a networking issue, and it was mainly resolved by following [url]https://www.flir.asia/support-center/iis/machine-vision/knowledge-base/lost-ethernet-data-packets-on-linux-systems/[/url].

You might also find the following post useful. [url]https://devtalk.nvidia.com/default/topic/1063177/jetson-tx2/connecting-flir-ip-camera-to-jetson-tx2-for-video-streaming-using-gstreamer/[/url]

maybe helpful.

https://github.com/jkjung-avt/tf_trt_models