Archive | July 2014

ONVIF Analytics

I wanted to explore more features of my webcam (TV-IP311PI). Apart from probing and streaming it can also do “video analytics”. That is the ONVIF name for motion detection.

From a system architecture point of view, it makes more sense to have each camera analyse its own view field and only then send image data. If we have a central system analysing data from many ┬ácameras the data volume is much larger. Obviously the central system needs to receive image streams from all cameras in order to analyse them. Read More…

ONVIF Probing for ZoneMinder

ONVIF Plug’n’Play

I used the ONVIF API I had assembled to build an automatic configurator for ONVIF cameras in ZoneMinder.

Essentially I put the files from my zm-onvif poject in a folder onvif in my local copy of the ZoneMinder sources. I then added some files to integrate both parts. The most complex task for me was to understand the ZoneMinder architecture.

I have not had the time to upload the code, yet. I uploaded the code and made a pull request to include it in ZoneMinder.
Meanwhile I made some screen shots of my local installation:

Read More…

ONVIF for ZoneMinder – Streaming

The Media service

I wanted some quick wins therefore I focused on getting the camera to work. I decided the generic message parsing stuff would have to wait.

With the address I got previously I called the ONVIF Device Management web service method GetServices. Read More…

ONVIF for Linux – Discovery

Completing the proxy generation

First I wanted to get rid of the errors “not implemented” and “deep recursion” that occurred during proxy generation.

I made local copies of all referenced XSDs and replaced references with xsd:anyType or commented out the attributes referencing . This XSD had the most errors and was only referenced by the Event service which I would not use to begin with.

Read More…