- 1 MythZoneMinder
- 2 Limitation of the Current Version
- 3 Dependencies
- 4 Install MythZoneMinder
- 5 Install MythZMServer
- 6 Running The plugin
- 7 The various screens are described below
- 8 Troubleshooting
- 9 TODO
MythZoneMinder is a plugin to interface to some of the features of ZoneMinder. You can use it to view a status window similar to the console window in ZM. Also there are screens to view live camera shots and replay recorded events. Other features may be added at a later time if there is sufficient interest.
- ZoneMinder is a Linux video camera security and surveillance solution
Limitation of the Current Version
- The plugin uses OpenGL to render the video frames so you must have a working OpenGL setup.
- As of version r12821 that limitation no longer applies. It will use Xv or just plain old X to display the video frames if OpenGL isn't available.
You must already have a working ZoneMinder installation accessible somewhere on your network. The plugin has been tested with version 1.22.2 and 1.22.3.
The plugin doesn't require any additional dependencies to compile. As with all the plugins you should have compiled and installed MythTV before trying to compile it.
PLEASE NOTE: This plugin requires MythTV svn r12143 or later from trunk and will NOT work with the fixes branch.
The source code is part of the mythplugins repository and all that is needed to install it is to grab the latest mythplugins source from svn trunk and run configure with
added as a parameter when running the configure script. The default configuration will compile to work with version 1.22.2 of ZoneMinder. If you use version 1.22.3 then add
Then compile and install the plugins in the normal way.
mythzmserver is a small daemon that should be run on same machine that ZoneMinder is running on. It is a server that responds to request for information like ZMs server status, live frame data, event frames etc from mythfrontends running the MythZoneMinder plugin.
The server will be compiled as part of the normal mythplugins compilation and if the server machine is running similar versions of the required libraries then you can simply copy the mythzmserver executable over to the server machine.
If not then you should copy the mythzmserver directory over to the server machine and compile the source there. It doesn't require Myth or QT to be installed. You can use the Makefile.standalone to do the compilation like this:-
make -f Makefile.standalone
then simply copy the resulting mythzmserver to a suitable location.
You should usually start mythzmserver as a service at boot time. It must be started after the ZoneMinder server has been started. One way to do this is to modify the ZM startup script to also start/stop mythzmserver. The server should be run as either root or as the same user that ZM uses. By default the server will listen on port 6548 and will read the ZM config from /etc/zm.conf if you need to change any of these you can add a parameter to change them. See the README in the mythzmserver source directory for a list of available parameters.
Running The plugin
The first thing you should do is go to MythZoneMinder's settings page and make sure the settings there are correct for your system. Currently the only settings are for the IP address and port that the plugin should use to connect to the mythzmserver.
The various screens are described below
The Console Screen
The console screen shows you if the main ZM daemon is running, the current date/time, what the cpu load is and what percentage of the drive used to store events has been used. Below that is a list of monitors/cameras, their current status and a count of how many events are stored for each monitor.
- UP/DOWN - moves the selected item in the list up down.
- ESCAPE - exit back to the menu.
The Live View Screen
The live screen shows live views from any available monitor. Currently there are views to show 1, 2 or 4 monitors simultaneously. Above each monitor view is the camera name and the current status eg idle, alert or alarm.
- INFO - switches from 1,2 or 4 camera views.
- 1 - cycles though each available monitor to be shown on the first view
- 2,3,4 - ditto for the second, third, and forth views if the current screen layout has one
- ESCAPE - return to the menu.
The Events Screen
The event screen shows a list of all stored events. You can filter the list to show events from just one monitor or all monitors. Events can be played of deleted as required.
- UP/DOWN - Move focus to the next/previous widget. When the camera list has focus they change the selected item in the list.
- LEFT/RIGHT - Move focus to the next/previous widget. When the camera 'selector' widget has focus they change the selected item.
- ESCAPE - return to the menu
The Event Player Screen
The event screen plays recorded events.
- UP/DOWN - Move focus to the next/previous widget.
- LEFT/RIGHT - When paused moves the the previous/next frame in the event.
- PAGEUP/PAGEDOWN - Move to the previous/next event.
- PAUSE - Toggles play pause on/off
- DELETE - Delete the current event and move to the next one in the list
- SWITCHASPECT - toggle full screen mode on/off
- ESCAPE - return to the events list screen.
How to overcome some common issues:
- 1. MythFrontend crashes after you try to enter the live view screen.
- If you have just changed any of your ZM monitor sources (/dev/video0 to /dev/video3 for example) you will need to restart the mythzmserver. Find the mythzmserver process, kill it, and restart it.
- 2. Mythtv can't find the zm installation. Error messages show up in the myth logs(or console) when you try to access the MythZonMinder menu items.
- This might happen if the MythTV install was not in /usr/local and when ZM was installed in /usr/local. You need to add the ZM_PATH_BIN variable into the /etc/zm.conf
Here is an example /etc/zm.conf file: #ZM_DB_HOST=10.0.0.212 ZM_DB_NAME=zm ZM_DB_USER=whateverYourZMDBUsernameIs ZM_DB_PASS=****** ZM_PATH_WEB=/var/media/security/zoneMinderWWW ZM_PATH_BIN=/usr/local/bin #ZM_WEB_USER