Omnicast is a very opened video surveillance solution. This post gives an overview of the most common ways to customize or integrate third party system with Omnicast.
Event and Action
Omnicast has a powerful engine that allows administrators to configure how the system should react after a precise event. Here are a only few examples that deployed without any programming, just standard configuration:
- Display a one or many cameras in the Live Viewer when your shipping door opens.
- Start the recording on a camera when another camera detects motion.
- Move a dome to a specific preset when a IR motion sensor detects something.
- Send an email when a specific user logs on the system.
- If you need to create a very complex chain of action, you can create a macro.
The Omnicast Virtual matrix allow the user to create custom script that will be executed by the system on schedule or when a particular event happen.The config tool includes a Macro Wizard that can be used to create simple macros. In fact the wizard generates code in the background and if you want more flexibility, you can start editing the generated code from the config tool and do whatever you want with it.The Omnicast Macro SDK comes with a series of function call that allow you to do many things with our application but since these macros are pure VB Script or Java Script, you can easily integrate with another system.Just a few examples of Macros that can be created:
- Display cameras when specific characters a serial port are detected (POS/ATM machine)
- Move the dome to a specific preset after x seconds of inactivity on the dome
- Save a snapshot of a camera in a folder every x seconds
- Create a Omnicast Alarm when we receive an alert of a TCP/IP protocol.
Map Engine (Web based)
The Map engine is a powerful tool that allow you to run your own code within our Live Viewer application. The Live Viewer supports displaying any web pages compatible with Internet Explorer. We also publish an API that allow the web page designer to interact with the current live Viewer. The API offers drag'n drop functionality from the web page to the application. The Omnicast Map designer takes advantage of the drag n drop to generate maps from a floor plan in JPEG/GIF format.
Any website designer can easily leverage the map engine to implement features such:
- Display available cameras on Google map or Virtual Earth.
- Show Motion detection alert on a dynamic map
- Show PTZ field of view on a floor plan
- Open/close and show status of car gate.
- Show picture pop up and activity log from an Access Control product.
When a Omnicast alarm is raised, the Live Viewer user can display a procedure. The procedure is in fact an URL that will be displayed in the Live Viewer. Very similar to the map engine, omnicast has an API that give access to some alarm properties.
- Simple HTML page or Word document that details the procedure for this alarm
- Integrate with a case management tools and force the user to enter specific field
- Page that capture some information and send a SMS with info to a mobile agent.
The SDK is a collection of ActiveX components and COM objects designed to build your own application with Visual Basic or C#. It's contains every required to authenticate on the system, receive and trigger alarms, event, display live or playback video, modify some configurations.
It's the most flexible way to integrate with Omnicast but also the one that requires good programming skills.
- Display a Omnicast camera (Live or Playback) within your application
- Add Video capabilities to a Web based product
- Query the Omnicast Archive Database and export video in AVI or G64 format.
Direct Show Filter
The DShow filter is a DirectX source filter that give access to a uncompressed video stream (YUV or RGB). The main purpose is for for analytics company who needs access to any cameras streamed by Omnicast, it's also used to do transcoding. It requires a very good knowledge of Direct Show programming.
The Genetec protocol is designed for IP camera/encoder manufacturer that requires support in Omnicast. It's an HTTP/CGI based protocol that supports MPEG-4, H.264 streaming over RTSP/RTP and JPEG over HTTP.As for Omnicast 4.4 it supports:
- Video Configuration (Bitrate, framerate, resolutions...)
- Device Configuration (IP address, Name)
- Serial Port streaming and configurations
- PTZ control
- More features will be added in future releases