From b8bcfa47352c6e56dc7e975fedf7baa17a3a5ebc Mon Sep 17 00:00:00 2001 From: Petter Reinholdtsen Date: Wed, 19 Oct 2022 12:13:40 +0200 Subject: [PATCH] New post on ONVIF. --- blog/data/2022-10-19-onvif-camera-linux.txt | 71 +++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 blog/data/2022-10-19-onvif-camera-linux.txt diff --git a/blog/data/2022-10-19-onvif-camera-linux.txt b/blog/data/2022-10-19-onvif-camera-linux.txt new file mode 100644 index 0000000000..57837ca803 --- /dev/null +++ b/blog/data/2022-10-19-onvif-camera-linux.txt @@ -0,0 +1,71 @@ +Title: Managing and using ONVIF IP cameras with Linux +Tags: english, debian, multimedia, standard, surveillance +Date: 2022-10-19 12:30 + +

Recently I have been looking at how to control and collect data +from a handful IP cameras using Linux. I both wanted to change their +settings and to make their imagery available via a free software +service under my control. Here is a summary of the tools I found.

+ +

First I had to identify the cameras and their protocols. As far as +I could tell, they were using some SOAP looking protocol and their +internal web server seem to only work with Microsoft Internet Explorer +with some proprietary binary plugin, which in these days of course is +a security disaster and also made it impossible for me to use the +camera web interface. Luckily I discovered that the SOAP looking +protocol is actually following the +ONVIF specification, which seem to be supported by a lot of IP +cameras these days.

+ +

Once the protocol was identified, I was able to find what appear to +be the most popular way to configure ONVIF cameras, the free software +Windows tool named +ONVIF Device +Manager. Lacking any other options at the time, I tried +unsuccessfully to get it running using Wine, but was missing a dotnet +40 library and I found no way around it to run it on Linux.

+ +

The next tool I found to configure the cameras were a non-free Linux Qt +client ONVIF +Device Tool. I did not like its terms of use, so did not spend +much time on it.

+ +

To collect the video and make it available in a web interface, I +found the Zoneminder tool in Debian. A recent version was able to +automatically detect and configure ONVIF devices, so I could use it to +set up motion detection in and collection of the camera output. I had +initial problems getting the ONVIF autodetection to work, as both +Firefox and Chromium refused +the inter-tab communication being used by the Zoneminder web +pages, but managed to get konqueror to work. Apparently the "Enhanced +Tracking Protection" in Firefox cause the problem. I ended up +upgrading to the Bookworm edition of Zoneminder in the process to try +to fix the issue, and believe the problem might be solved now.

+ +

In the process I came across the nice Linux GUI tool +ONVIF Viewer +allowing me to preview the camera output and validate the login +passwords required. Sadly its author has grown tired of maintaining +the software, so it might not see any future updates. Which is sad, +as the viewer is sightly unstable and the picture tend to lock up. +Note, this lockup might be due to limitations in the cameras and not +the viewer implementation. I suspect the camera is only able to +provide pictures to one client at the time, and the Zoneminder feed +might interfere with the GUI viewer. I have +asked for the tool to be +included in Debian.

+ +

Finally, I found what appear to be very nice Linux free software +replacement for the Windows tool, named +libonvif. It +provide a C library to talk to ONVIF devices as well as a command line +and GUI tool using the library. Using the GUI tool I was able to change +the admin passwords and update other settings of the cameras. I have +asked for the package to be +included in Debian.

+ +

As usual, if you use Bitcoin and want to show your support of my +activities, please send Bitcoin donations to my address +15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b.

+ + -- 2.50.1