<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.staging.zoneminder.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Duli</id>
	<title>ZoneMinder Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.staging.zoneminder.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Duli"/>
	<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/Special:Contributions/Duli"/>
	<updated>2026-04-19T22:40:50Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=CentOS&amp;diff=6575</id>
		<title>CentOS</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=CentOS&amp;diff=6575"/>
		<updated>2015-03-01T02:13:37Z</updated>

		<summary type="html">&lt;p&gt;Duli: Updated link to new repo method install for pt_BR users.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The intent of this walk through is to install a very base/bare bones installation of CentOS that runs only ZoneMinder. This would be for a dedicated ZoneMinder server with no GUI or any unnecessary services running. The reason for the very light-weight installation is to make the majority of system resources available to ZoneMinder, not the OS. With this installation, memory is reduced to around 140-160MB, and CPU usage is practically nonexistent. The CentOS base installation is very easy to install and doesn’t take too much time as long as you have some type of broadband connection. There are many ways to install CentOS, but this article covers only two, because they are related.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;All CLI operations/commands in this How-To are done as root, in the /root directory. The reasoning is that this system would be in a secure environment to begin with. However, if you need to add a user to run these services to better secure the system, then you can, but keep in mind that some items must run as root.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Zmrepo - A ZoneMinder repository for RPM based distros ==&lt;br /&gt;
The ZoneMinder development team would like to introduce you to a new, easier way to install ZoneMinder on CentOS.  Zmrepo is meant to be a turn-key solution.  There is no compiling, no installing modules from CPAN, and no more complicated repository instructions.  &lt;br /&gt;
&lt;br /&gt;
This repository brings together a ZoneMinder rpm built by the development team, with all features enabled. It also includes all dependencies that are not found in the default CentOS repositories.  A few Perl modules are built by us, but all the rest of the dependencies are mirrored from popular sites such as EPEL and RPMFusion.  There is no longer a need to add these additional repositories to your system.  Zmrepo takes care of that for you.&lt;br /&gt;
&lt;br /&gt;
==== Who Should Use ====&lt;br /&gt;
The development team strictly uses CentOS, but these packages should work on Red Hat Enterprise Linux and Scientific Linux. The rpms in zmrepo are intended to work with &amp;#039;&amp;#039;default installations&amp;#039;&amp;#039; of these Linux distributions.  Modified versions are not guaranteed to work. Continue to the Disclaimer below for details.&lt;br /&gt;
&lt;br /&gt;
Please report any issues with RHEL and SL, as we have no way of pro-actively discovering them.&lt;br /&gt;
&lt;br /&gt;
==== Disclaimer ====&lt;br /&gt;
This could also be appropriately called &amp;#039;&amp;#039;&amp;#039;Who should not Use&amp;#039;&amp;#039;&amp;#039; zmrepo. &lt;br /&gt;
&lt;br /&gt;
The goal behind CentOS is that of an enterprise operating system. Stability is prioritized over the latest and greatest version of a particular package. Fortunately, bug fixes are backported. Consequently, you should &amp;#039;&amp;#039;never&amp;#039;&amp;#039; replace the core packages in CentOS! If you truly think that you &amp;quot;have to have&amp;quot; some package that is newer than what is found in the default repository then you should consider using a different Linux distro.&lt;br /&gt;
&lt;br /&gt;
The CentOS maintainers have a great write-up that describes this in much more detail [http://wiki.centos.org/PackageManagement/SourceInstalls here].  Pay close attention to the all the do&amp;#039;s, dont&amp;#039;s, and &amp;quot;this will break&amp;quot; comments.&lt;br /&gt;
&lt;br /&gt;
Zmrepo extends this same philosophy onto ZoneMinder. While ZoneMinder requires many dependencies to work, zmrepo will not overwrite any core packages.  It only adds packages that, otherwise, would not be available.&lt;br /&gt;
&lt;br /&gt;
One other case is worth mentioning. This repository is intended &amp;#039;&amp;#039;only&amp;#039;&amp;#039; for those who have installed RHEL/CentOS/SL using the &amp;#039;&amp;#039;&amp;#039;official installation media for that distribution&amp;#039;&amp;#039;&amp;#039;!  This means that these rpms are not intended to work with third parties that release their own spin of CentOS, which contain their own third party application preinstalled.  Third parties are allowed to modify the original distribution in any way, which means we can&amp;#039;t guarantee the rpms in zmrepo will be compatible.  &lt;br /&gt;
&lt;br /&gt;
For example, if you installed &amp;quot;CentOS&amp;quot; using an installation disk from an Astericks vendor, then the rpms in zmrepo are known not to work.&lt;br /&gt;
&lt;br /&gt;
==== Installation ====&lt;br /&gt;
&lt;br /&gt;
* Installation Instructions for i386 or x86_64 architectures on CentOS 6:&lt;br /&gt;
 wget http://zmrepo.connortechnology.com/el/6/i386/zmrepo-6-4.el6.noarch.rpm&lt;br /&gt;
 sudo yum install --nogpgcheck zmrepo-6-4.el6.noarch.rpm&lt;br /&gt;
 sudo yum install zoneminder&lt;br /&gt;
 less /usr/share/doc/zoneminder-*/README.CentOS&lt;br /&gt;
&lt;br /&gt;
You must complete the steps documented in README.CentOS before ZoneMinder will function correctly.&lt;br /&gt;
&lt;br /&gt;
NOTE: RHEL users must enable the &amp;quot;rhel-6-server-optional-rpms&amp;quot; repositoy on their system before attempting to install ZoneMinder.&lt;br /&gt;
&lt;br /&gt;
A YouTube video that steps through the installation can be viewed [https://www.youtube.com/watch?v=l2lLvl8WxfU here.]&lt;br /&gt;
&lt;br /&gt;
* Installation Instructions for x86_64 architecture (only) on CentOS 7:&lt;br /&gt;
 wget http://zmrepo.connortechnology.com/el/7/x86_64/zmrepo-7-3.el7.centos.noarch.rpm&lt;br /&gt;
 sudo yum install --nogpgcheck zmrepo-7-3.el7.centos.noarch.rpm&lt;br /&gt;
 sudo yum install zoneminder&lt;br /&gt;
 less /usr/share/doc/zoneminder-*/README.Centos7&lt;br /&gt;
&lt;br /&gt;
You must complete the steps documented in README.Centos7 before ZoneMinder will function correctly.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;WARNING: CentOS 7 support is still being developed. This repo is currently not for production and might not yet be error free.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== CentOS 5.6 &amp;amp; ZoneMinder 1.25.0 ==&lt;br /&gt;
This guide is for CentOS v5.6 (&amp;lt;b&amp;gt;Notes for using this guide with CentOS 6 are in chapter 2.&amp;lt;/b&amp;gt;) with ZoneMinder v1.25.0 which are the newest released versions as of this update (Summer 2011).  If you are attempting to install newer versions of either using this guide, you will have to adjust file and directory names denoted below. &lt;br /&gt;
&lt;br /&gt;
=== Step One - Get CentOS ===&lt;br /&gt;
You can download the “.iso” file(s) for CentOS from http://www.centos.org/&amp;lt;br/&amp;gt;&lt;br /&gt;
Alternatively download the net-install version of CentOS which is basically just the first CD.&lt;br /&gt;
Here is one location to download the net-install version:&amp;lt;br/&amp;gt;&lt;br /&gt;
Download i386: http://mirror.symnds.com/distributions/CentOS-vault/5.6/isos/i386/CentOS-5.6-i386-netinstall.iso&amp;lt;br/&amp;gt;&lt;br /&gt;
Download 64 bit: http://mirror.symnds.com/distributions/CentOS-vault/5.6/isos/x86_64/CentOS-5.6-x86_64-netinstall.iso&amp;lt;br/&amp;gt;&lt;br /&gt;
Mirrors List: http://mirror.centos.org/centos/5/isos/&lt;br /&gt;
&lt;br /&gt;
=== Step Two - Installation Source ===&lt;br /&gt;
Regardless of which method you use, the next few steps are the same.&amp;lt;br/&amp;gt;&lt;br /&gt;
Begin by booting your system up with either cd/dvd.&amp;lt;br/&amp;gt;&lt;br /&gt;
Choose the options that best fit your environment until you reach the “Installation Method”. &lt;br /&gt;
&lt;br /&gt;
[[Image:centosnetinstal-http.png]]&lt;br /&gt;
&lt;br /&gt;
Choose &amp;#039;&amp;#039;&amp;#039;HTTP&amp;#039;&amp;#039;&amp;#039; ONLY if you are using the net-install method.  Otherwise, you probably want to choose &amp;#039;&amp;#039;&amp;#039;Local CDROM&amp;#039;&amp;#039;&amp;#039;. &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are using the net-install method then enter:&amp;lt;br/&amp;gt;&lt;br /&gt;
Website Name: &amp;#039;&amp;#039;&amp;#039;mirror.centos.org&amp;#039;&amp;#039;&amp;#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
CentOS Directory: (for i386) &amp;#039;&amp;#039;&amp;#039;/centos/5.6/os/i386&amp;#039;&amp;#039;&amp;#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
CentOS Directory: (for 64 bit) &amp;#039;&amp;#039;&amp;#039;/centos/5.6/os/x86_64&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== Step Three - Installation Packages ===&lt;br /&gt;
On the first screen, un-check &amp;quot;Desktop - Gnome&amp;quot; then check &amp;quot;Server&amp;quot; (not Server-GUI)&amp;lt;br/&amp;gt;&lt;br /&gt;
Make sure that you have &amp;quot;Customize now&amp;quot; selected at the bottom. (do not check &amp;quot;Packages from CentOS Extras&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
[[Image:centosinstall-packages1.png]]&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Next&amp;quot; to continue&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once presented with the custom package selection, un-check/check the following:&lt;br /&gt;
 Applications = Check only &amp;quot;Editors&amp;quot; and &amp;quot;Text Based Internet&amp;quot;&lt;br /&gt;
 Development = Check only &amp;quot;Development Libraries&amp;quot; and &amp;quot;Development Tools&amp;quot;&lt;br /&gt;
 Servers = Un-check everything&lt;br /&gt;
 Base System = Check only &amp;quot;Base&amp;quot; (you can check Administration Tools and System Tools if you need them, but they are not necessary)&lt;br /&gt;
&lt;br /&gt;
[[Image:Centosinstall-packages2.png]]&lt;br /&gt;
&lt;br /&gt;
Now let the system finish the installation.&lt;br /&gt;
&lt;br /&gt;
[[Image:centosisntall-end.png]]&lt;br /&gt;
&lt;br /&gt;
=== Step Four - Configuration ===&lt;br /&gt;
After the first reboot, the setup screen should appear. If not, log into the system and type &amp;quot;setup&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Image:centosinstall-setup1.png]]&lt;br /&gt;
&lt;br /&gt;
Select &amp;quot;Firewall Configuration&amp;quot; and set the &amp;quot;Security Level&amp;quot; and &amp;quot;SELinux&amp;quot; to &amp;quot;Disabled.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Image:centosinstall-setup2.png]]&lt;br /&gt;
&lt;br /&gt;
Next, we are going to disable a number of system services. Go back to the setup screen and select &amp;quot;System Services&amp;quot;&amp;lt;br/&amp;gt;&lt;br /&gt;
Un-Check:&lt;br /&gt;
 apmd&lt;br /&gt;
 bluetooth&lt;br /&gt;
 cups&lt;br /&gt;
 hidd&lt;br /&gt;
 ip6tables&lt;br /&gt;
 iptables&lt;br /&gt;
 netfs&lt;br /&gt;
 nfslock&lt;br /&gt;
 pcscd&lt;br /&gt;
 portmap&lt;br /&gt;
After disabling the services, select &amp;quot;Disable Now and On Boot&amp;quot;, exit the setup tool, and log into the system if you haven&amp;#039;t already.&lt;br /&gt;
*Screen is a simple program that allows you to run commands from a &amp;quot;Hosted&amp;quot; command line interface. This helps if you loose your connection to the server for any reason in that it enables you to resume (screen -r) right where you left off. Often times, I will start a large update/upgrade, leave it for the day, then come back and see where it&amp;#039;s at later. Screen allows you to do that without having to be connected.&lt;br /&gt;
*Install Screen&lt;br /&gt;
 yum install screen&lt;br /&gt;
*To start a screen session just type&lt;br /&gt;
 screen&lt;br /&gt;
*If you get disconnected and need to resume your session of screen simply type&lt;br /&gt;
 screen -r&lt;br /&gt;
&lt;br /&gt;
=== Step Five - Installing ZoneMinder 1.25.0 ===&lt;br /&gt;
First, we need to download files and prepare the system&lt;br /&gt;
*Add the RPM Forge repository to CentOS. This will allow the installation of a number of services/applications later without having to manually install them.&lt;br /&gt;
&amp;lt;pre&amp;gt;# For i386 CentOS 5.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm&lt;br /&gt;
&lt;br /&gt;
# For 64 bit CentOS 5.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Download the needed files, ZoneMinder 1.25.0 and the Cambozola addon&lt;br /&gt;
 wget http://www2.zoneminder.com/downloads/ZoneMinder-1.25.0.tar.gz&lt;br /&gt;
 wget http://www.zoneminder.com/sites/zoneminder.com/downloads/cambozola.jar&lt;br /&gt;
*Now let&amp;#039;s install all the services and programs that will be needed (&amp;#039;&amp;#039;If you encounter any dependency errors using yum, try running &amp;#039;&amp;#039;&amp;#039;yum clean all&amp;#039;&amp;#039;&amp;#039; then re-try the install command(s).&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
*tip: Copy/paste two lines at a time&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum -y install mysql mysql-server mysql-devel php php-gd php-mysql httpd gcc \&lt;br /&gt;
pcre-devel gd mod_ssl glib2-devel gcc-c++ ntp gnutls-devel ImageMagick&lt;br /&gt;
&lt;br /&gt;
yum -y install libjpeg-devel perl-Archive-Tar perl-MIME-Lite perl-MIME-tools \&lt;br /&gt;
perl-Date-Manip perl-LWP-UserAgent-Determined&lt;br /&gt;
&lt;br /&gt;
yum -y install perl-PHP-Serialization perl-Device-SerialPort perl-Archive-Zip perl-Sys-Mmap \&lt;br /&gt;
perl-Module-Load subversion git yasm bzip2 bzip2-devel bzip2-libs lbzip2&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Now let&amp;#039;s update everything within the new CentOS install&lt;br /&gt;
 yum -y update&lt;br /&gt;
*At this point, it might be useful to reboot your system. Oddly, sometimes things don&amp;#039;t work right unless you reboot after all the updates&lt;br /&gt;
 reboot   -or-   shutdown -r now&lt;br /&gt;
*After rebooting, log into your system&lt;br /&gt;
==== Install ffmpeg ====&lt;br /&gt;
*Now we need to make sure we use the latest &amp;quot;tested&amp;quot; version of &amp;quot;ffmpeg&amp;quot;. This is the latest version of ffmpeg that the ZoneMinder developers have tested with.  Download, compile and install ffmpeg:&lt;br /&gt;
&amp;lt;pre&amp;gt;git clone git://git.videolan.org/ffmpeg.git&lt;br /&gt;
cd ffmpeg&lt;br /&gt;
./configure --enable-gpl --enable-shared --enable-pthreads&lt;br /&gt;
make &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The following commands must be done as &amp;#039;&amp;#039;&amp;#039;root&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make install &lt;br /&gt;
make install-libs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
edit /etc/ld.so.conf and add the line &amp;quot;/usr/local/lib&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldconfig -v&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Next, run &amp;#039;ffmpeg&amp;#039; from the command line. Make sure you do not get any errors:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ffmpeg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*If &amp;#039;ffmpeg&amp;#039; runs correctly, you&amp;#039;ll see something similar to this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ffmpeg version N-32260-gaebb56e, Copyright (c) 2000-2011 the FFmpeg developers&lt;br /&gt;
  built on Aug 31 2011 21:41:49 with gcc 4.1.2 20080704 (Red Hat 4.1.2-50)&lt;br /&gt;
  configuration: --enable-shared --enable-swscale --enable-gpl --enable-pthreads&lt;br /&gt;
  libavutil    51. 14. 0 / 51. 14. 0&lt;br /&gt;
  libavcodec   53. 12. 0 / 53. 12. 0&lt;br /&gt;
  libavformat  53. 10. 0 / 53. 10. 0&lt;br /&gt;
  libavdevice  53.  3. 0 / 53.  3. 0&lt;br /&gt;
  libavfilter   2. 37. 0 /  2. 37. 0&lt;br /&gt;
  libswscale    2.  0. 0 /  2.  0. 0&lt;br /&gt;
  libpostproc  51.  2. 0 / 51.  2. 0&lt;br /&gt;
Hyper fast Audio and Video encoder&lt;br /&gt;
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...&lt;br /&gt;
&lt;br /&gt;
Use -h to get full help or, even better, run &amp;#039;man ffmpeg&amp;#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Enable services ====&lt;br /&gt;
*Turn everything on.  These commands must be run as root.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 chkconfig httpd on &lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig ntpd on &lt;br /&gt;
 service httpd start &lt;br /&gt;
 service mysqld start &lt;br /&gt;
 service ntpd start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== Install Zoneminder ====&lt;br /&gt;
*Next, we need to extract the contents of the ZoneMinder &amp;quot;tar&amp;quot; file, then jump into its directory.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 cd /root/  # Or your work directory for this installation&lt;br /&gt;
 tar -zxvf ZoneMinder-1.25.0.tar.gz&lt;br /&gt;
 cd ZoneMinder-1.25.0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Now we are going to configure ZoneMinder with some additional parameters. What is listed are the default CentOS directory locations.&lt;br /&gt;
 ./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin&lt;br /&gt;
&lt;br /&gt;
Note: It seems for Zoneminder to build with newer versions of ffmpeg, (certainly 0.6.3) you&amp;#039;ll need to append CPPFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot; to the end of the&lt;br /&gt;
./configure line thus:&lt;br /&gt;
&lt;br /&gt;
 ./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-ffmpeg=/usr/local/share/ffmpeg CPPFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot;&lt;br /&gt;
&lt;br /&gt;
There is a section in the FAQ &amp;#039;&amp;#039;&amp;quot;When running configure, I get a lot of messages about not being able to compile the ffmpeg libraries&amp;quot;&amp;#039;&amp;#039; about this [[http://www.zoneminder.com/wiki/index.php/FAQ]].&lt;br /&gt;
&lt;br /&gt;
Worth mentioning here is the section in the FAQ under the heading &amp;quot;&amp;#039;&amp;#039;My load is too high, how can I reduce it?&amp;#039;&amp;#039;&amp;quot; [[http://www.zoneminder.com/wiki/index.php/FAQ]]. This descibes how you can possibly reduce CPU load by half by &lt;br /&gt;
changing the system&amp;#039;s jpeg libraries and building Zoneminder with processor specific instructions.  &lt;br /&gt;
Since CentOS 6.4 CentOS now comes with libjpeg_turbo as the standard JPEG library leading to a more optimised Zoneminder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default ZM_DB_HOST=localhost, ZM_DB_NAME=zm, ZM_DB_USER=zmuser, and ZM_DB_PASS=zmpass.&lt;br /&gt;
*Change &amp;quot;zmuser&amp;quot; (if you want) with the user that you will use within MySQL to access the ZoneMinder database&lt;br /&gt;
*Change &amp;quot;zmpass&amp;quot; with the password you will be using with the &amp;quot;zmuser&amp;quot; account&lt;br /&gt;
So if you wish to change it, use a command like:&lt;br /&gt;
 ./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=zmuser ZM_DB_PASS=zmpass&lt;br /&gt;
&lt;br /&gt;
*if you get the configure &amp;quot;error zm requires libmysqlclient.a&amp;quot; with 64 bit CentOS add the following to the end of your configure statement&lt;br /&gt;
  --with-extralibs=&amp;quot;-L/usr/lib64 -L/usr/lib64/mysql&amp;quot;&lt;br /&gt;
&lt;br /&gt;
e.g. For CentOS 5.6 64-bit with support for ffmpeg.  The whole command must be executed on one line.  Make sure to change the &amp;#039;&amp;#039;&amp;#039;zmpass&amp;#039;&amp;#039;&amp;#039; to a password that matches your installation.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-ffmpeg=/usr/local/share/ffmpeg --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=zmuser ZM_DB_PASS=zmpass --with-extralibs=&amp;quot;-L/usr/lib64 -L/usr/lib64/mysql&amp;quot; CXXFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; and &amp;#039;&amp;#039;&amp;#039;make install&amp;#039;&amp;#039;&amp;#039; after running the configuration steps above.&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
 # Run the next command as root&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
==== Configure MySQL ====&lt;br /&gt;
*Need to add a password for the root user of MySQL&lt;br /&gt;
*Create the zm database&lt;br /&gt;
*Create the zm database user with permissions and password&lt;br /&gt;
 mysql&lt;br /&gt;
 mysql&amp;gt; SET PASSWORD FOR root@localhost=PASSWORD(&amp;#039;new_root_password&amp;#039;);&lt;br /&gt;
&amp;gt;Query OK, 0 rows affected (0.00 sec)&lt;br /&gt;
 mysql&amp;gt; create database zm;&lt;br /&gt;
&amp;gt;Query OK, 1 row affected (0.01 sec)&lt;br /&gt;
 mysql&amp;gt; CREATE USER &amp;#039;your_zm_user&amp;#039;@&amp;#039;localhost&amp;#039; IDENTIFIED BY &amp;#039;your_zm_password_from_above&amp;#039;;&lt;br /&gt;
Query OK, 0 rows affected (0.01 sec)&lt;br /&gt;
 mysql&amp;gt; grant CREATE, INSERT, SELECT, DELETE, UPDATE on zm.* to your_zm_user@localhost;&lt;br /&gt;
&amp;gt;Query OK, 0 rows affected (0.02 sec)&lt;br /&gt;
 mysql&amp;gt; exit&lt;br /&gt;
&amp;gt;Bye&lt;br /&gt;
*Import the tables into the zm database&lt;br /&gt;
 cd /root/ZoneMinder-1.25.0 &lt;br /&gt;
 mysql -u root -p zm &amp;lt; db/zm_create.sql&lt;br /&gt;
&lt;br /&gt;
==== Finalize Installation of ZoneMinder ====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;All remaining CLI commands need to be run as root.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Make ZoneMinder startup automatically after a reboot&lt;br /&gt;
 # from the ZoneMinder-1.25 source directory&lt;br /&gt;
 cp scripts/zm /etc/init.d/&lt;br /&gt;
 chmod +x /etc/init.d/zm&lt;br /&gt;
 chkconfig zm on&lt;br /&gt;
*Add the Cambozola Java web interface&lt;br /&gt;
 cp cambozola.jar /var/www/html/zm/&lt;br /&gt;
*Make sure you have permission to view it from apache:&lt;br /&gt;
 chown apache:apache /var/www/html/zm/cambozola.jar&lt;br /&gt;
*Start ZoneMinder&lt;br /&gt;
 service zm start&lt;br /&gt;
&lt;br /&gt;
Note: You may get an error when you try to start Zoneminder using the &amp;#039;zm&amp;#039; startup script as per this forum post: [[http://www.zoneminder.com/forums/viewtopic.php?f=21&amp;amp;t=17827]] .&lt;br /&gt;
The reason for this was the default &amp;#039;zm&amp;#039; startup script was formatted with DOS line endings. If you get the errors as detailed in the above post then the fix is to convert the &lt;br /&gt;
&amp;#039;zm&amp;#039; file to use UNIX style line endings. You can do this in the Vim text editor whilst editing the &amp;#039;zm&amp;#039; file thus: &amp;#039;:set fileformat=unix&amp;#039; then save the file &amp;#039;:wq&amp;#039;. You can also &lt;br /&gt;
use the utility dos2unix to convert the file. &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
* tick the box for support for the Cambozola addon within your ZoneMinder installation: http://ip-address/zm (Options-&amp;gt;Images&amp;amp;nbsp;tab-&amp;gt;OPT_CAMBOZOLA)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now have fun and add your cameras to ZoneMinder knowing you now have a very stable and streamlined OS to run it on.&lt;br /&gt;
&lt;br /&gt;
== CentOS 6 Notes ==&lt;br /&gt;
&lt;br /&gt;
The installation for CentOS 6 is pretty much the same.&lt;br /&gt;
Download CentOS 6 minimal installation ISO (CentOS-6.0-i386-minimal.iso – 257MB).  Burn to CD and install. We only want to be running in console text mode not GUI graphics mode. During installation configure network and tick to enable network adapter.&lt;br /&gt;
* Login as root and update the base install:&lt;br /&gt;
&amp;lt;pre&amp;gt;yum -y update&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Install required packages, other useful packages, and their dependencies&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum groupinstall core&lt;br /&gt;
yum groupinstall base&lt;br /&gt;
yum install gcc gcc-c++ wget bison mysql-devel mysql-server php php-mysql php-pear php-pear-DB php-mbstring \&lt;br /&gt;
nano tftp-server httpd make ncurses-devel libtermcap-devel sendmail sendmail-cf caching-nameserver \&lt;br /&gt;
sox newt-devel libxml2-devel libtiff-devel php-gd audiofile-devel gtk2-devel subversion nano kernel-devel \&lt;br /&gt;
bison-devel ncurses zlib zlib-devel openssl openssl-devel gnutls-devel php-process perl-Time-HiRes&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suggestion:&lt;br /&gt;
To remove various configure/make errors in Centos 6.2, you may also want to install:&amp;lt;pre&amp;gt;&lt;br /&gt;
bzip2-libs ffmpeg-devel ffmpeg-php perl-Net-SFTP-Foreign perl-Expect perl-LWPx-ParanoidAgent.x86_64&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we continue from step four (4).&lt;br /&gt;
==== Installation of ZoneMinder ====&lt;br /&gt;
* In step five (5) the correct RPM Forge repository is:&lt;br /&gt;
&amp;lt;pre&amp;gt;# For i686 CentOS 6.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.i686.rpm&lt;br /&gt;
&lt;br /&gt;
# For 64 bit CentOS 6.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In step five (5) the command that seems to configure zoneminder correctly is:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CXXFLAGS=-D__STDC_CONSTANT_MACROS ./configure --with-webdir=/var/www/html/zm \&lt;br /&gt;
 --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache \&lt;br /&gt;
ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=your_zm_user ZM_DB_PASS=your_zm_password ZM_SSL_LIB=openssl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suggestion:&lt;br /&gt;
For Centos 6.2, I used the following configure string for success:&amp;lt;pre&amp;gt;&lt;br /&gt;
./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=&amp;lt;zm user&amp;gt; ZM_DB_PASS=&amp;lt;zm user passwd&amp;gt; ZM_SSL_LIB=openssl  --with-extralibs=&amp;quot;-L/usr/lib64 -L/usr/lib64/mysql&amp;quot; --with-ffmpeg=/usr/share/ffmpeg  CXXFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting FFmpeg Errors Building ZoneMinder ====&lt;br /&gt;
Using the git version of FFmpeg can cause the ZoneMinder make process to fail with unresolved symbols in ffmpeg. To remedy this, use version 0.6.5 of FFmpeg with the same configure instructions as the normal install above.&lt;br /&gt;
FFmpeg 0.6.5: http://ffmpeg.org/releases/ffmpeg-0.6.5.tar.bz2&lt;br /&gt;
==== Troubleshooting Blank Page ====&lt;br /&gt;
If everything went ok but when accessing zoneminder&amp;#039;s web page at http://localhost/zm, the page is blank this means that there is a problem with PHP short tags. Edit setting short_open_tag in php.ini (/etc/php.ini) and change it to On.&lt;br /&gt;
* Restart apache server with:&lt;br /&gt;
&amp;lt;pre&amp;gt;service httpd restart&amp;lt;/pre&amp;gt; and you should be up and running.&lt;br /&gt;
==== Trouble shooting full drive with CentOS 6 ====&lt;br /&gt;
The default drive structure has chaned from that of CentOS 5 having the full drive allocated to the /root partition. CentOS 6 by default makes a logical volume &amp;#039;LVM&amp;#039; of 10% your drives space for the /root partition and the remaining drive as the /home partion with the exception of the swap and boot partitions.&lt;br /&gt;
&lt;br /&gt;
The will cause Zoneminder to fill the /root partition as the /var/www/html/zm/events directory is by default located here, you can use the system-config-lvm utility to re-adjust this partition balance if your system has been installed with the default partition structure.&lt;br /&gt;
&lt;br /&gt;
It is best to install CentOS 6 with a custom partition layout that is the same as CentOS 5 structure, you can also if using a single physical had drive do with out the LVM drives and create an EXT4 /root partion along with the standard /boot and /swap partitions.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[== &amp;#039;&amp;#039;&amp;#039;P.S.&amp;#039;&amp;#039;&amp;#039; ==]] aspcicc@jumpy.it&lt;br /&gt;
(Update: This does not appear to be required any more.)&lt;br /&gt;
&lt;br /&gt;
Hi! and thanks for your guide.. i want to add a little correction that have made me crazy to resolve, when I poweroff or reboot system i obtain an error related to mysql database and i have    understood that the problem was because mysqld is stopped before zoneminder to be more specific there isn&amp;#039;t a link under rc0.d (halt) and rc6.d (reboot) to zoneminder that for this lack is simply killed by killall. To resolve this problem you need to add at the start of zm (under /etc/init.d) the line&lt;br /&gt;
&lt;br /&gt;
 &amp;#039; # chkconfig: 345 99 01 &amp;#039;  (without &amp;#039; of course)&lt;br /&gt;
&lt;br /&gt;
and then run &lt;br /&gt;
chkconfig --level 345 zm on&lt;br /&gt;
chkconfig --level 06 zm off&lt;br /&gt;
&lt;br /&gt;
So the link to shutdown zm is created under rc0.d and rc6.d and zoneminder is started at the end of poweron and stopped at the beginning of the poweroff&lt;br /&gt;
&lt;br /&gt;
For information about priority starting and stopping processes see: http://www.netadmintools.com/art94.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Added Dependency: ImageMagick&lt;br /&gt;
&lt;br /&gt;
Removed Dependency: perl-Time-HiRes, which causes a conflict with the default perl package.&lt;br /&gt;
&lt;br /&gt;
Also, mysql seems to install with no password for the root user, and the zm DB create script creates the database on the fly, which means that the database create command needs to have the &amp;quot;-p zm&amp;quot; removed from the command line.&lt;br /&gt;
&lt;br /&gt;
Could someone verify that this is correct, to make sure it&amp;#039;s not just something I missed?&lt;br /&gt;
&lt;br /&gt;
Thanks! &lt;br /&gt;
terry@cnysupport.com&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Struggling to get x264 and ffmpeg working?  I used the latest SVN versions not the Centos packages.  But I was getting&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;ffmpeg: error while loading shared libraries: libavdevice.so.53: cannot open shared object file: No such file or directory&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
I followed these instructions:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;cd /etc/ld.so.conf.d&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* add another file:  custom-libs.conf&lt;br /&gt;
* inside, put :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;/usr/local/lib&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* save the file&lt;br /&gt;
* run ldconfig&lt;br /&gt;
&amp;lt;pre&amp;gt;ldconfig&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
BeeryGaz&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==== Failed monitors or ZM refusing to start ====&lt;br /&gt;
A problem that took me some time to figure out on two installations was SElinux.&lt;br /&gt;
SElinux stops Zoneminder from accessing some system parts or doing some functions so will cause various errors or simply drive you nuts trying to figure out.&lt;br /&gt;
&lt;br /&gt;
Look at the following page on how to disable SElinux or use permissive mode.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;http://www.centos.org/docs/5/html/5.2/Deployment_Guide/sec-sel-enable-disable.html&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some of the errors that I was getting with a fresh install on CentOS 6 was&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2013-02-16 16:13:10.828590	zmwatch	14898	ERR	Can&amp;#039;t open memory map file &amp;#039;/dev/shm/zm.mmap.1&amp;#039;: No such file or directory	zmwatch.pl	&lt;br /&gt;
2013-02-16 16:13:10.736988	zmfix	15317	ERR	Can&amp;#039;t stat /dev/video0: Permission denied	zmfix.cpp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
== ZoneMinder 1.26.x ==&lt;br /&gt;
&lt;br /&gt;
Zoneminder after a long period of none development is now being developed by the community, these notes are to try and help with the installation of the new release on CentOS 5 and CentOS 6.&lt;br /&gt;
All testing has been done on a CentOS 6.4 fresh install server.&lt;br /&gt;
&lt;br /&gt;
=== Cmake installation notes ===&lt;br /&gt;
&lt;br /&gt;
Compiling of Zoneminder can now be done with the &amp;#039;Cmake&amp;#039; command in replacement of the ./configure command this should automatically configure the build with the minimum of parameters. The &amp;#039;Cmake&amp;#039; command at time of writing produced a partially working installation with the main files installed into /usr/local/bin/zoneminder and associated folders, different from the above guides.&lt;br /&gt;
&lt;br /&gt;
The webfiles require to be linked via a zoneminder.conf file located with in the /disto/redhat directory inside the build directory that requires to be coped to the /etc/httpd/conf.d directory, this will need to be edited to the correct location of the webfiles and remove the local only command as indicated with in the file.&lt;br /&gt;
&lt;br /&gt;
The Cmake install failed to use my BTTV capture card producing various errors with a potential solution given here &amp;lt;pre&amp;gt;http://www.zoneminder.com/forums/viewtopic.php?f=30&amp;amp;t=21709&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== ./configure compile ===&lt;br /&gt;
&lt;br /&gt;
To install via the traditional ./configure method you first need to run the ./bootstrap.sh file to generate the required configure file, the install can then progress as the above installation guides.&lt;br /&gt;
&lt;br /&gt;
This method has produced a fully working installation at time of writing.&lt;br /&gt;
&lt;br /&gt;
== pt_BR Instructions ==&lt;br /&gt;
&lt;br /&gt;
Here is a good walkthrough install of zoneminder in CentOS using the rpm package method. It is intended to Portuguese  (pt or pt_BR) audience.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;http://dulimind.blogspot.com.br/2015/02/zoneminder-no-centos-6-metodo-facil-com.html&amp;lt;/pre&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[Categories: Linux distributions]]&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=CentOS&amp;diff=6466</id>
		<title>CentOS</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=CentOS&amp;diff=6466"/>
		<updated>2014-11-23T21:45:07Z</updated>

		<summary type="html">&lt;p&gt;Duli: Added * in place of zoneminder version so the readme file opens correctly regardless the version.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The intent of this walk through is to install a very base/bare bones installation of CentOS that runs only ZoneMinder. This would be for a dedicated ZoneMinder server with no GUI or any unnecessary services running. The reason for the very light-weight installation is to make the majority of system resources available to ZoneMinder, not the OS. With this installation, memory is reduced to around 140-160MB, and CPU usage is practically nonexistent. The CentOS base installation is very easy to install and doesn’t take too much time as long as you have some type of broadband connection. There are many ways to install CentOS, but this article covers only two, because they are related.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;All CLI operations/commands in this How-To are done as root, in the /root directory. The reasoning is that this system would be in a secure environment to begin with. However, if you need to add a user to run these services to better secure the system, then you can, but keep in mind that some items must run as root.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Zmrepo - A ZoneMinder repository for RPM based distros ==&lt;br /&gt;
I&amp;#039;d like to introduce you to a new, easier way to install ZoneMinder on CentOS.  Zmrepo is meant to be a turn-key solution.  There is no compiling, no installing modules from CPAN, and no more complicated repository instructions.  &lt;br /&gt;
&lt;br /&gt;
This repository brings together a ZoneMinder rpm built by the development team, with all features enabled. It also includes all dependencies that are not found in the default CentOS repositories.  A few Perl modules are built by us, but all the rest of the dependencies are mirrored from popular sites such as EPEL and RPMFusion.  There is no longer a need to add these additional repositories to your system.  Zmrepo takes care of that for you.&lt;br /&gt;
&lt;br /&gt;
Please note that zmrepo has not had a lot of testing!  If unsure, try it out first in a virtual environment before using this in production.&lt;br /&gt;
&lt;br /&gt;
And lastly, only CentOS 6 is supported at the moment.  This repo will &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; work with CentOS 7.&lt;br /&gt;
&lt;br /&gt;
* Installation Instructions for i386 or x86_64 architectures:&lt;br /&gt;
 wget http://zmrepo.connortechnology.com/el/6/i386/zmrepo-6-4.el6.noarch.rpm&lt;br /&gt;
 sudo yum install --nogpgcheck zmrepo-6-4.el6.noarch.rpm&lt;br /&gt;
 sudo yum install zoneminder&lt;br /&gt;
 less /usr/share/doc/zoneminder-*/README.CentOS&lt;br /&gt;
&lt;br /&gt;
You must complete the steps documented in README.CentOS before ZoneMinder will function correctly.&lt;br /&gt;
&lt;br /&gt;
== CentOS 5.6 &amp;amp; ZoneMinder 1.25.0 ==&lt;br /&gt;
This guide is for CentOS v5.6 (&amp;lt;b&amp;gt;Notes for using this guide with CentOS 6 are in chapter 2.&amp;lt;/b&amp;gt;) with ZoneMinder v1.25.0 which are the newest released versions as of this update (Summer 2011).  If you are attempting to install newer versions of either using this guide, you will have to adjust file and directory names denoted below. &lt;br /&gt;
&lt;br /&gt;
=== Step One - Get CentOS ===&lt;br /&gt;
You can download the “.iso” file(s) for CentOS from http://www.centos.org/&amp;lt;br/&amp;gt;&lt;br /&gt;
Alternatively download the net-install version of CentOS which is basically just the first CD.&lt;br /&gt;
Here is one location to download the net-install version:&amp;lt;br/&amp;gt;&lt;br /&gt;
Download i386: http://mirror.symnds.com/distributions/CentOS-vault/5.6/isos/i386/CentOS-5.6-i386-netinstall.iso&amp;lt;br/&amp;gt;&lt;br /&gt;
Download 64 bit: http://mirror.symnds.com/distributions/CentOS-vault/5.6/isos/x86_64/CentOS-5.6-x86_64-netinstall.iso&amp;lt;br/&amp;gt;&lt;br /&gt;
Mirrors List: http://mirror.centos.org/centos/5/isos/&lt;br /&gt;
&lt;br /&gt;
=== Step Two - Installation Source ===&lt;br /&gt;
Regardless of which method you use, the next few steps are the same.&amp;lt;br/&amp;gt;&lt;br /&gt;
Begin by booting your system up with either cd/dvd.&amp;lt;br/&amp;gt;&lt;br /&gt;
Choose the options that best fit your environment until you reach the “Installation Method”. &lt;br /&gt;
&lt;br /&gt;
[[Image:centosnetinstal-http.png]]&lt;br /&gt;
&lt;br /&gt;
Choose &amp;#039;&amp;#039;&amp;#039;HTTP&amp;#039;&amp;#039;&amp;#039; ONLY if you are using the net-install method.  Otherwise, you probably want to choose &amp;#039;&amp;#039;&amp;#039;Local CDROM&amp;#039;&amp;#039;&amp;#039;. &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are using the net-install method then enter:&amp;lt;br/&amp;gt;&lt;br /&gt;
Website Name: &amp;#039;&amp;#039;&amp;#039;mirror.centos.org&amp;#039;&amp;#039;&amp;#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
CentOS Directory: (for i386) &amp;#039;&amp;#039;&amp;#039;/centos/5.6/os/i386&amp;#039;&amp;#039;&amp;#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
CentOS Directory: (for 64 bit) &amp;#039;&amp;#039;&amp;#039;/centos/5.6/os/x86_64&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== Step Three - Installation Packages ===&lt;br /&gt;
On the first screen, un-check &amp;quot;Desktop - Gnome&amp;quot; then check &amp;quot;Server&amp;quot; (not Server-GUI)&amp;lt;br/&amp;gt;&lt;br /&gt;
Make sure that you have &amp;quot;Customize now&amp;quot; selected at the bottom. (do not check &amp;quot;Packages from CentOS Extras&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
[[Image:centosinstall-packages1.png]]&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Next&amp;quot; to continue&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once presented with the custom package selection, un-check/check the following:&lt;br /&gt;
 Applications = Check only &amp;quot;Editors&amp;quot; and &amp;quot;Text Based Internet&amp;quot;&lt;br /&gt;
 Development = Check only &amp;quot;Development Libraries&amp;quot; and &amp;quot;Development Tools&amp;quot;&lt;br /&gt;
 Servers = Un-check everything&lt;br /&gt;
 Base System = Check only &amp;quot;Base&amp;quot; (you can check Administration Tools and System Tools if you need them, but they are not necessary)&lt;br /&gt;
&lt;br /&gt;
[[Image:Centosinstall-packages2.png]]&lt;br /&gt;
&lt;br /&gt;
Now let the system finish the installation.&lt;br /&gt;
&lt;br /&gt;
[[Image:centosisntall-end.png]]&lt;br /&gt;
&lt;br /&gt;
=== Step Four - Configuration ===&lt;br /&gt;
After the first reboot, the setup screen should appear. If not, log into the system and type &amp;quot;setup&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Image:centosinstall-setup1.png]]&lt;br /&gt;
&lt;br /&gt;
Select &amp;quot;Firewall Configuration&amp;quot; and set the &amp;quot;Security Level&amp;quot; and &amp;quot;SELinux&amp;quot; to &amp;quot;Disabled.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Image:centosinstall-setup2.png]]&lt;br /&gt;
&lt;br /&gt;
Next, we are going to disable a number of system services. Go back to the setup screen and select &amp;quot;System Services&amp;quot;&amp;lt;br/&amp;gt;&lt;br /&gt;
Un-Check:&lt;br /&gt;
 apmd&lt;br /&gt;
 bluetooth&lt;br /&gt;
 cups&lt;br /&gt;
 hidd&lt;br /&gt;
 ip6tables&lt;br /&gt;
 iptables&lt;br /&gt;
 netfs&lt;br /&gt;
 nfslock&lt;br /&gt;
 pcscd&lt;br /&gt;
 portmap&lt;br /&gt;
After disabling the services, select &amp;quot;Disable Now and On Boot&amp;quot;, exit the setup tool, and log into the system if you haven&amp;#039;t already.&lt;br /&gt;
*Screen is a simple program that allows you to run commands from a &amp;quot;Hosted&amp;quot; command line interface. This helps if you loose your connection to the server for any reason in that it enables you to resume (screen -r) right where you left off. Often times, I will start a large update/upgrade, leave it for the day, then come back and see where it&amp;#039;s at later. Screen allows you to do that without having to be connected.&lt;br /&gt;
*Install Screen&lt;br /&gt;
 yum install screen&lt;br /&gt;
*To start a screen session just type&lt;br /&gt;
 screen&lt;br /&gt;
*If you get disconnected and need to resume your session of screen simply type&lt;br /&gt;
 screen -r&lt;br /&gt;
&lt;br /&gt;
=== Step Five - Installing ZoneMinder 1.25.0 ===&lt;br /&gt;
First, we need to download files and prepare the system&lt;br /&gt;
*Add the RPM Forge repository to CentOS. This will allow the installation of a number of services/applications later without having to manually install them.&lt;br /&gt;
&amp;lt;pre&amp;gt;# For i386 CentOS 5.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm&lt;br /&gt;
&lt;br /&gt;
# For 64 bit CentOS 5.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Download the needed files, ZoneMinder 1.25.0 and the Cambozola addon&lt;br /&gt;
 wget http://www2.zoneminder.com/downloads/ZoneMinder-1.25.0.tar.gz&lt;br /&gt;
 wget http://www.zoneminder.com/sites/zoneminder.com/downloads/cambozola.jar&lt;br /&gt;
*Now let&amp;#039;s install all the services and programs that will be needed (&amp;#039;&amp;#039;If you encounter any dependency errors using yum, try running &amp;#039;&amp;#039;&amp;#039;yum clean all&amp;#039;&amp;#039;&amp;#039; then re-try the install command(s).&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
*tip: Copy/paste two lines at a time&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum -y install mysql mysql-server mysql-devel php php-gd php-mysql httpd gcc \&lt;br /&gt;
pcre-devel gd mod_ssl glib2-devel gcc-c++ ntp gnutls-devel ImageMagick&lt;br /&gt;
&lt;br /&gt;
yum -y install libjpeg-devel perl-Archive-Tar perl-MIME-Lite perl-MIME-tools \&lt;br /&gt;
perl-Date-Manip perl-LWP-UserAgent-Determined&lt;br /&gt;
&lt;br /&gt;
yum -y install perl-PHP-Serialization perl-Device-SerialPort perl-Archive-Zip perl-Sys-Mmap \&lt;br /&gt;
perl-Module-Load subversion git yasm bzip2 bzip2-devel bzip2-libs lbzip2&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Now let&amp;#039;s update everything within the new CentOS install&lt;br /&gt;
 yum -y update&lt;br /&gt;
*At this point, it might be useful to reboot your system. Oddly, sometimes things don&amp;#039;t work right unless you reboot after all the updates&lt;br /&gt;
 reboot   -or-   shutdown -r now&lt;br /&gt;
*After rebooting, log into your system&lt;br /&gt;
==== Install ffmpeg ====&lt;br /&gt;
*Now we need to make sure we use the latest &amp;quot;tested&amp;quot; version of &amp;quot;ffmpeg&amp;quot;. This is the latest version of ffmpeg that the ZoneMinder developers have tested with.  Download, compile and install ffmpeg:&lt;br /&gt;
&amp;lt;pre&amp;gt;git clone git://git.videolan.org/ffmpeg.git&lt;br /&gt;
cd ffmpeg&lt;br /&gt;
./configure --enable-gpl --enable-shared --enable-pthreads&lt;br /&gt;
make &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The following commands must be done as &amp;#039;&amp;#039;&amp;#039;root&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make install &lt;br /&gt;
make install-libs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
edit /etc/ld.so.conf and add the line &amp;quot;/usr/local/lib&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldconfig -v&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Next, run &amp;#039;ffmpeg&amp;#039; from the command line. Make sure you do not get any errors:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ffmpeg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*If &amp;#039;ffmpeg&amp;#039; runs correctly, you&amp;#039;ll see something similar to this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ffmpeg version N-32260-gaebb56e, Copyright (c) 2000-2011 the FFmpeg developers&lt;br /&gt;
  built on Aug 31 2011 21:41:49 with gcc 4.1.2 20080704 (Red Hat 4.1.2-50)&lt;br /&gt;
  configuration: --enable-shared --enable-swscale --enable-gpl --enable-pthreads&lt;br /&gt;
  libavutil    51. 14. 0 / 51. 14. 0&lt;br /&gt;
  libavcodec   53. 12. 0 / 53. 12. 0&lt;br /&gt;
  libavformat  53. 10. 0 / 53. 10. 0&lt;br /&gt;
  libavdevice  53.  3. 0 / 53.  3. 0&lt;br /&gt;
  libavfilter   2. 37. 0 /  2. 37. 0&lt;br /&gt;
  libswscale    2.  0. 0 /  2.  0. 0&lt;br /&gt;
  libpostproc  51.  2. 0 / 51.  2. 0&lt;br /&gt;
Hyper fast Audio and Video encoder&lt;br /&gt;
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...&lt;br /&gt;
&lt;br /&gt;
Use -h to get full help or, even better, run &amp;#039;man ffmpeg&amp;#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Enable services ====&lt;br /&gt;
*Turn everything on.  These commands must be run as root.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 chkconfig httpd on &lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig ntpd on &lt;br /&gt;
 service httpd start &lt;br /&gt;
 service mysqld start &lt;br /&gt;
 service ntpd start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== Install Zoneminder ====&lt;br /&gt;
*Next, we need to extract the contents of the ZoneMinder &amp;quot;tar&amp;quot; file, then jump into its directory.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 cd /root/  # Or your work directory for this installation&lt;br /&gt;
 tar -zxvf ZoneMinder-1.25.0.tar.gz&lt;br /&gt;
 cd ZoneMinder-1.25.0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Now we are going to configure ZoneMinder with some additional parameters. What is listed are the default CentOS directory locations.&lt;br /&gt;
 ./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin&lt;br /&gt;
&lt;br /&gt;
Note: It seems for Zoneminder to build with newer versions of ffmpeg, (certainly 0.6.3) you&amp;#039;ll need to append CPPFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot; to the end of the&lt;br /&gt;
./configure line thus:&lt;br /&gt;
&lt;br /&gt;
 ./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-ffmpeg=/usr/local/share/ffmpeg CPPFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot;&lt;br /&gt;
&lt;br /&gt;
There is a section in the FAQ &amp;#039;&amp;#039;&amp;quot;When running configure, I get a lot of messages about not being able to compile the ffmpeg libraries&amp;quot;&amp;#039;&amp;#039; about this [[http://www.zoneminder.com/wiki/index.php/FAQ]].&lt;br /&gt;
&lt;br /&gt;
Worth mentioning here is the section in the FAQ under the heading &amp;quot;&amp;#039;&amp;#039;My load is too high, how can I reduce it?&amp;#039;&amp;#039;&amp;quot; [[http://www.zoneminder.com/wiki/index.php/FAQ]]. This descibes how you can possibly reduce CPU load by half by &lt;br /&gt;
changing the system&amp;#039;s jpeg libraries and building Zoneminder with processor specific instructions.  &lt;br /&gt;
Since CentOS 6.4 CentOS now comes with libjpeg_turbo as the standard JPEG library leading to a more optimised Zoneminder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default ZM_DB_HOST=localhost, ZM_DB_NAME=zm, ZM_DB_USER=zmuser, and ZM_DB_PASS=zmpass.&lt;br /&gt;
*Change &amp;quot;zmuser&amp;quot; (if you want) with the user that you will use within MySQL to access the ZoneMinder database&lt;br /&gt;
*Change &amp;quot;zmpass&amp;quot; with the password you will be using with the &amp;quot;zmuser&amp;quot; account&lt;br /&gt;
So if you wish to change it, use a command like:&lt;br /&gt;
 ./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=zmuser ZM_DB_PASS=zmpass&lt;br /&gt;
&lt;br /&gt;
*if you get the configure &amp;quot;error zm requires libmysqlclient.a&amp;quot; with 64 bit CentOS add the following to the end of your configure statement&lt;br /&gt;
  --with-extralibs=&amp;quot;-L/usr/lib64 -L/usr/lib64/mysql&amp;quot;&lt;br /&gt;
&lt;br /&gt;
e.g. For CentOS 5.6 64-bit with support for ffmpeg.  The whole command must be executed on one line.  Make sure to change the &amp;#039;&amp;#039;&amp;#039;zmpass&amp;#039;&amp;#039;&amp;#039; to a password that matches your installation.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-ffmpeg=/usr/local/share/ffmpeg --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=zmuser ZM_DB_PASS=zmpass --with-extralibs=&amp;quot;-L/usr/lib64 -L/usr/lib64/mysql&amp;quot; CXXFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; and &amp;#039;&amp;#039;&amp;#039;make install&amp;#039;&amp;#039;&amp;#039; after running the configuration steps above.&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
 # Run the next command as root&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
==== Configure MySQL ====&lt;br /&gt;
*Need to add a password for the root user of MySQL&lt;br /&gt;
*Create the zm database&lt;br /&gt;
*Create the zm database user with permissions and password&lt;br /&gt;
 mysql&lt;br /&gt;
 mysql&amp;gt; SET PASSWORD FOR root@localhost=PASSWORD(&amp;#039;new_root_password&amp;#039;);&lt;br /&gt;
&amp;gt;Query OK, 0 rows affected (0.00 sec)&lt;br /&gt;
 mysql&amp;gt; create database zm;&lt;br /&gt;
&amp;gt;Query OK, 1 row affected (0.01 sec)&lt;br /&gt;
 mysql&amp;gt; CREATE USER &amp;#039;your_zm_user&amp;#039;@&amp;#039;localhost&amp;#039; IDENTIFIED BY &amp;#039;your_zm_password_from_above&amp;#039;;&lt;br /&gt;
Query OK, 0 rows affected (0.01 sec)&lt;br /&gt;
 mysql&amp;gt; grant CREATE, INSERT, SELECT, DELETE, UPDATE on zm.* to your_zm_user@localhost;&lt;br /&gt;
&amp;gt;Query OK, 0 rows affected (0.02 sec)&lt;br /&gt;
 mysql&amp;gt; exit&lt;br /&gt;
&amp;gt;Bye&lt;br /&gt;
*Import the tables into the zm database&lt;br /&gt;
 cd /root/ZoneMinder-1.25.0 &lt;br /&gt;
 mysql -u root -p zm &amp;lt; db/zm_create.sql&lt;br /&gt;
&lt;br /&gt;
==== Finalize Installation of ZoneMinder ====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;All remaining CLI commands need to be run as root.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Make ZoneMinder startup automatically after a reboot&lt;br /&gt;
 # from the ZoneMinder-1.25 source directory&lt;br /&gt;
 cp scripts/zm /etc/init.d/&lt;br /&gt;
 chmod +x /etc/init.d/zm&lt;br /&gt;
 chkconfig zm on&lt;br /&gt;
*Add the Cambozola Java web interface&lt;br /&gt;
 cp cambozola.jar /var/www/html/zm/&lt;br /&gt;
*Make sure you have permission to view it from apache:&lt;br /&gt;
 chown apache:apache /var/www/html/zm/cambozola.jar&lt;br /&gt;
*Start ZoneMinder&lt;br /&gt;
 service zm start&lt;br /&gt;
&lt;br /&gt;
Note: You may get an error when you try to start Zoneminder using the &amp;#039;zm&amp;#039; startup script as per this forum post: [[http://www.zoneminder.com/forums/viewtopic.php?f=21&amp;amp;t=17827]] .&lt;br /&gt;
The reason for this was the default &amp;#039;zm&amp;#039; startup script was formatted with DOS line endings. If you get the errors as detailed in the above post then the fix is to convert the &lt;br /&gt;
&amp;#039;zm&amp;#039; file to use UNIX style line endings. You can do this in the Vim text editor whilst editing the &amp;#039;zm&amp;#039; file thus: &amp;#039;:set fileformat=unix&amp;#039; then save the file &amp;#039;:wq&amp;#039;. You can also &lt;br /&gt;
use the utility dos2unix to convert the file. &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
* tick the box for support for the Cambozola addon within your ZoneMinder installation: http://ip-address/zm (Options-&amp;gt;Images&amp;amp;nbsp;tab-&amp;gt;OPT_CAMBOZOLA)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now have fun and add your cameras to ZoneMinder knowing you now have a very stable and streamlined OS to run it on.&lt;br /&gt;
&lt;br /&gt;
== CentOS 6 Notes ==&lt;br /&gt;
&lt;br /&gt;
The installation for CentOS 6 is pretty much the same.&lt;br /&gt;
Download CentOS 6 minimal installation ISO (CentOS-6.0-i386-minimal.iso – 257MB).  Burn to CD and install. We only want to be running in console text mode not GUI graphics mode. During installation configure network and tick to enable network adapter.&lt;br /&gt;
* Login as root and update the base install:&lt;br /&gt;
&amp;lt;pre&amp;gt;yum -y update&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Install required packages, other useful packages, and their dependencies&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum groupinstall core&lt;br /&gt;
yum groupinstall base&lt;br /&gt;
yum install gcc gcc-c++ wget bison mysql-devel mysql-server php php-mysql php-pear php-pear-DB php-mbstring \&lt;br /&gt;
nano tftp-server httpd make ncurses-devel libtermcap-devel sendmail sendmail-cf caching-nameserver \&lt;br /&gt;
sox newt-devel libxml2-devel libtiff-devel php-gd audiofile-devel gtk2-devel subversion nano kernel-devel \&lt;br /&gt;
bison-devel ncurses zlib zlib-devel openssl openssl-devel gnutls-devel php-process perl-Time-HiRes&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suggestion:&lt;br /&gt;
To remove various configure/make errors in Centos 6.2, you may also want to install:&amp;lt;pre&amp;gt;&lt;br /&gt;
bzip2-libs ffmpeg-devel ffmpeg-php perl-Net-SFTP-Foreign perl-Expect perl-LWPx-ParanoidAgent.x86_64&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we continue from step four (4).&lt;br /&gt;
==== Installation of ZoneMinder ====&lt;br /&gt;
* In step five (5) the correct RPM Forge repository is:&lt;br /&gt;
&amp;lt;pre&amp;gt;# For i686 CentOS 6.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.i686.rpm&lt;br /&gt;
&lt;br /&gt;
# For 64 bit CentOS 6.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In step five (5) the command that seems to configure zoneminder correctly is:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CXXFLAGS=-D__STDC_CONSTANT_MACROS ./configure --with-webdir=/var/www/html/zm \&lt;br /&gt;
 --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache \&lt;br /&gt;
ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=your_zm_user ZM_DB_PASS=your_zm_password ZM_SSL_LIB=openssl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suggestion:&lt;br /&gt;
For Centos 6.2, I used the following configure string for success:&amp;lt;pre&amp;gt;&lt;br /&gt;
./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=&amp;lt;zm user&amp;gt; ZM_DB_PASS=&amp;lt;zm user passwd&amp;gt; ZM_SSL_LIB=openssl  --with-extralibs=&amp;quot;-L/usr/lib64 -L/usr/lib64/mysql&amp;quot; --with-ffmpeg=/usr/share/ffmpeg  CXXFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting FFmpeg Errors Building ZoneMinder ====&lt;br /&gt;
Using the git version of FFmpeg can cause the ZoneMinder make process to fail with unresolved symbols in ffmpeg. To remedy this, use version 0.6.5 of FFmpeg with the same configure instructions as the normal install above.&lt;br /&gt;
FFmpeg 0.6.5: http://ffmpeg.org/releases/ffmpeg-0.6.5.tar.bz2&lt;br /&gt;
==== Troubleshooting Blank Page ====&lt;br /&gt;
If everything went ok but when accessing zoneminder&amp;#039;s web page at http://localhost/zm, the page is blank this means that there is a problem with PHP short tags. Edit setting short_open_tag in php.ini (/etc/php.ini) and change it to On.&lt;br /&gt;
* Restart apache server with:&lt;br /&gt;
&amp;lt;pre&amp;gt;service httpd restart&amp;lt;/pre&amp;gt; and you should be up and running.&lt;br /&gt;
==== Trouble shooting full drive with CentOS 6 ====&lt;br /&gt;
The default drive structure has chaned from that of CentOS 5 having the full drive allocated to the /root partition. CentOS 6 by default makes a logical volume &amp;#039;LVM&amp;#039; of 10% your drives space for the /root partition and the remaining drive as the /home partion with the exception of the swap and boot partitions.&lt;br /&gt;
&lt;br /&gt;
The will cause Zoneminder to fill the /root partition as the /var/www/html/zm/events directory is by default located here, you can use the system-config-lvm utility to re-adjust this partition balance if your system has been installed with the default partition structure.&lt;br /&gt;
&lt;br /&gt;
It is best to install CentOS 6 with a custom partition layout that is the same as CentOS 5 structure, you can also if using a single physical had drive do with out the LVM drives and create an EXT4 /root partion along with the standard /boot and /swap partitions.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[== &amp;#039;&amp;#039;&amp;#039;P.S.&amp;#039;&amp;#039;&amp;#039; ==]] aspcicc@jumpy.it&lt;br /&gt;
(Update: This does not appear to be required any more.)&lt;br /&gt;
&lt;br /&gt;
Hi! and thanks for your guide.. i want to add a little correction that have made me crazy to resolve, when I poweroff or reboot system i obtain an error related to mysql database and i have    understood that the problem was because mysqld is stopped before zoneminder to be more specific there isn&amp;#039;t a link under rc0.d (halt) and rc6.d (reboot) to zoneminder that for this lack is simply killed by killall. To resolve this problem you need to add at the start of zm (under /etc/init.d) the line&lt;br /&gt;
&lt;br /&gt;
 &amp;#039; # chkconfig: 345 99 01 &amp;#039;  (without &amp;#039; of course)&lt;br /&gt;
&lt;br /&gt;
and then run &lt;br /&gt;
chkconfig --level 345 zm on&lt;br /&gt;
chkconfig --level 06 zm off&lt;br /&gt;
&lt;br /&gt;
So the link to shutdown zm is created under rc0.d and rc6.d and zoneminder is started at the end of poweron and stopped at the beginning of the poweroff&lt;br /&gt;
&lt;br /&gt;
For information about priority starting and stopping processes see: http://www.netadmintools.com/art94.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Added Dependency: ImageMagick&lt;br /&gt;
&lt;br /&gt;
Removed Dependency: perl-Time-HiRes, which causes a conflict with the default perl package.&lt;br /&gt;
&lt;br /&gt;
Also, mysql seems to install with no password for the root user, and the zm DB create script creates the database on the fly, which means that the database create command needs to have the &amp;quot;-p zm&amp;quot; removed from the command line.&lt;br /&gt;
&lt;br /&gt;
Could someone verify that this is correct, to make sure it&amp;#039;s not just something I missed?&lt;br /&gt;
&lt;br /&gt;
Thanks! &lt;br /&gt;
terry@cnysupport.com&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Struggling to get x264 and ffmpeg working?  I used the latest SVN versions not the Centos packages.  But I was getting&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;ffmpeg: error while loading shared libraries: libavdevice.so.53: cannot open shared object file: No such file or directory&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
I followed these instructions:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;cd /etc/ld.so.conf.d&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* add another file:  custom-libs.conf&lt;br /&gt;
* inside, put :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;/usr/local/lib&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* save the file&lt;br /&gt;
* run ldconfig&lt;br /&gt;
&amp;lt;pre&amp;gt;ldconfig&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
BeeryGaz&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==== Failed monitors or ZM refusing to start ====&lt;br /&gt;
A problem that took me some time to figure out on two installations was SElinux.&lt;br /&gt;
SElinux stops Zoneminder from accessing some system parts or doing some functions so will cause various errors or simply drive you nuts trying to figure out.&lt;br /&gt;
&lt;br /&gt;
Look at the following page on how to disable SElinux or use permissive mode.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;http://www.centos.org/docs/5/html/5.2/Deployment_Guide/sec-sel-enable-disable.html&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some of the errors that I was getting with a fresh install on CentOS 6 was&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2013-02-16 16:13:10.828590	zmwatch	14898	ERR	Can&amp;#039;t open memory map file &amp;#039;/dev/shm/zm.mmap.1&amp;#039;: No such file or directory	zmwatch.pl	&lt;br /&gt;
2013-02-16 16:13:10.736988	zmfix	15317	ERR	Can&amp;#039;t stat /dev/video0: Permission denied	zmfix.cpp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
== ZoneMinder 1.26.x ==&lt;br /&gt;
&lt;br /&gt;
Zoneminder after a long period of none development is now being developed by the community, these notes are to try and help with the installation of the new release on CentOS 5 and CentOS 6.&lt;br /&gt;
All testing has been done on a CentOS 6.4 fresh install server.&lt;br /&gt;
&lt;br /&gt;
=== Cmake installation notes ===&lt;br /&gt;
&lt;br /&gt;
Compiling of Zoneminder can now be done with the &amp;#039;Cmake&amp;#039; command in replacement of the ./configure command this should automatically configure the build with the minimum of parameters. The &amp;#039;Cmake&amp;#039; command at time of writing produced a partially working installation with the main files installed into /usr/local/bin/zoneminder and associated folders, different from the above guides.&lt;br /&gt;
&lt;br /&gt;
The webfiles require to be linked via a zoneminder.conf file located with in the /disto/redhat directory inside the build directory that requires to be coped to the /etc/httpd/conf.d directory, this will need to be edited to the correct location of the webfiles and remove the local only command as indicated with in the file.&lt;br /&gt;
&lt;br /&gt;
The Cmake install failed to use my BTTV capture card producing various errors with a potential solution given here &amp;lt;pre&amp;gt;http://www.zoneminder.com/forums/viewtopic.php?f=30&amp;amp;t=21709&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== ./configure compile ===&lt;br /&gt;
&lt;br /&gt;
To install via the traditional ./configure method you first need to run the ./bootstrap.sh file to generate the required configure file, the install can then progress as the above installation guides.&lt;br /&gt;
&lt;br /&gt;
This method has produced a fully working installation at time of writing.&lt;br /&gt;
&lt;br /&gt;
== pt_BR Instructions ==&lt;br /&gt;
&lt;br /&gt;
Here is a good walkthrough install of zoneminder in CentOS using the rpm package method. It is intended to Portuguese  (pt or pt_BR) audience.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;http://dulimind.blogspot.com.br/2013/12/zoneminder-no-centos-6.html&amp;lt;/pre&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[Categories: Linux distributions]]&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=D-Link&amp;diff=6046</id>
		<title>D-Link</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=D-Link&amp;diff=6046"/>
		<updated>2014-01-08T23:21:38Z</updated>

		<summary type="html">&lt;p&gt;Duli: /* DCS-930L / 932L */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DLink is a supplier of several IP Cameras. Not all work with ZoneMinder.&lt;br /&gt;
DCS-1000(W) and DCS-900 - plus other D-Link IP models (This have been hit and miss, not all work with ZM. A partial list of unsupported cameras are inside).&lt;br /&gt;
&lt;br /&gt;
=DCS-900=&lt;br /&gt;
[[Image:DCS900.png]]&lt;br /&gt;
&lt;br /&gt;
There are 2 versions of this camera. The &amp;quot;A&amp;quot; version is reported to work extremely well with ZoneMinder. The &amp;quot;B&amp;quot; version also works, but has a been reported to have lesser performance. I have been able to get upto 8 fps with my revision &amp;quot;B&amp;quot; camera.&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /VIDEO.CGI or /IMAGE.JPEG &lt;br /&gt;
 (/VIDEO.CGI is the MJpeg stream, and gets higher FPS in my testing)&lt;br /&gt;
&lt;br /&gt;
With version A2&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP_Address_of_Camera&amp;gt; (user:pass@192.168.0.5)&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: VIDEO.CGI &lt;br /&gt;
&lt;br /&gt;
With the latest versions of the DCS-900 &amp;quot;B&amp;quot; there is an additional step needed in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
=DCS-910 / 920=&lt;br /&gt;
[[Image:DCS-910.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /VIDEO.CGI? for stream&lt;br /&gt;
&lt;br /&gt;
There is the same aditional step as in DCS-900B, in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-930L / 932L=&lt;br /&gt;
[[Image:DCS-930L.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi&lt;br /&gt;
&lt;br /&gt;
Additionally MJPEG stream avaliable at: /MJPEG.CGI but next step is required for it, in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
For the &amp;#039;&amp;#039;&amp;#039;DCS-932L&amp;#039;&amp;#039;&amp;#039; also works:&lt;br /&gt;
&lt;br /&gt;
 Remote Host Path: /video.cgi&lt;br /&gt;
&lt;br /&gt;
If you want to limit the FPS just as it is set in the camera&amp;#039;s setup -&amp;gt; video -&amp;gt; FPS, then you will need to use the video stream (video.cgi) and not the snapshot stream (/image/jpeg.cgi).&lt;br /&gt;
&lt;br /&gt;
Using /mjpeg.cgi gives a lot of erros in the log files:&lt;br /&gt;
&lt;br /&gt;
 ERR [Invalid JPEG file structure: two SOI markers]&lt;br /&gt;
 ERR [Unable to decode jpeg]&lt;br /&gt;
&lt;br /&gt;
=DCS-931L / DCS-933L=&lt;br /&gt;
[[Image:DCS931L.png]]&lt;br /&gt;
&lt;br /&gt;
This camera can do up to 30 fps with MJPEG.  (Firmware 1.01, zoneminder 1.25.0)&lt;br /&gt;
&lt;br /&gt;
To set video properties on the camera, click on setup, then video.  Here you can adjust settings for mjpeg quality and the frame rate.  You might also want to set the default (browser) view mode to image, so that you&amp;#039;ll get something when logging into the camera if you don&amp;#039;t have java installed.&lt;br /&gt;
&lt;br /&gt;
MJPEG settings for zoneminder:&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol:  HTTP&lt;br /&gt;
 Remote Method:  Simple&lt;br /&gt;
 Remote Host Name:  user:pass@IP Address of Camera&lt;br /&gt;
 Remote Host Port:  80 (Default)&lt;br /&gt;
 Remote Host Path:  /video.cgi&lt;br /&gt;
 Colors:  24 bit&lt;br /&gt;
 Capture width:  640&lt;br /&gt;
 Capture Height:  480&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
&lt;br /&gt;
# An unknown-quality H.264 stream available at http://user:pass@ip.of.camera/dgh264.raw . Haven&amp;#039;t worked out how to get it working in zoneminder yet.&lt;br /&gt;
# Audio is available from http://user:pass@ip.of.camera/dgaudio.cgi .&lt;br /&gt;
&lt;br /&gt;
=DCS-942L=&lt;br /&gt;
&lt;br /&gt;
Image capture works the same as 932L and /image/jpeg.cgi over HTTP.&lt;br /&gt;
RTSP stream works with MPEG streams (/3gpp by default)&lt;br /&gt;
RTSP H.264 streaming works if set as follows:&lt;br /&gt;
&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://&amp;lt;camera ip&amp;gt;:554/play2.sdp&lt;br /&gt;
&lt;br /&gt;
If the Zoneminder (1.25) monitor crashes every 10-30s (check your logs), set:&lt;br /&gt;
&lt;br /&gt;
 echo 536870912 &amp;gt;/proc/sys/kernel/shmmax&lt;br /&gt;
&lt;br /&gt;
from the wiki [[FAQ#What_does_a_.27Can.27t_shmget:_Invalid_argument.27_error_in_my_logs_mean.3F_and_my_cameras_won.27t_display_video_at_higher_resolutions.]]&lt;br /&gt;
&lt;br /&gt;
=DCS-1100=&lt;br /&gt;
[[File:dcs-1100.jpg|100px]]&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Method: Simple&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi?profileid=3&lt;br /&gt;
&lt;br /&gt;
Where Profileid is setup in the camara&amp;#039;s setup interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2100+, DCS-2100G=&lt;br /&gt;
[[Image:DSC2100plus.jpg]][[Image:DCS2100g.jpg]]&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
Note: you must change Network -&amp;gt; ZM_HTTP_VERSION option to 1.0 for this camera to work!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2120=&lt;br /&gt;
[[Image:DCS2100g.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2121=&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: username:password@cam_ip&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi?profileid=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2130=&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: username:password@cam_ip&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi?profileid=1&lt;br /&gt;
&lt;br /&gt;
=DCS-2210=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
(Change in video settings of the camera the mode to MPEG4 first)&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: RTSP&lt;br /&gt;
Remote Method: RTP/Unicast&lt;br /&gt;
Remote Host Port: 554&lt;br /&gt;
Remote Host Name: &amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: Ffmpeg&lt;br /&gt;
Remote Host Path: rtsp://&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
(Change in video settings of the camera the mode to MPEG4 first)&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: HTTP&lt;br /&gt;
Remote Host Port: 80&lt;br /&gt;
Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /video1.mjpg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-3220=&lt;br /&gt;
[[Image:DCS-3220.jpg]]&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-3410=&lt;br /&gt;
&lt;br /&gt;
[[Image:DSC-3410.jpg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
&lt;br /&gt;
 RTSP&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;/play1.sdp (or play2.sdp)&lt;br /&gt;
&lt;br /&gt;
ZoneMinder 1.24.2 (Haven&amp;#039;t tried earlier versions)&lt;br /&gt;
&lt;br /&gt;
Tried it with just admin:@&amp;lt;IP Address of Camera&amp;gt;  without password before setting camera password and it worked. Created an account with a password, tried that and it also worked.&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 caught that from tcpdump, suspect the numbers are resolution but don&amp;#039;t seem to have any affect.&lt;br /&gt;
&lt;br /&gt;
Seems like it&amp;#039;s operating in factory default Profile 3, 704x480 10fps jpeg. Haven&amp;#039;t found a way to change the Profile used yet. Could only pull about 22fps when camera was set to 30fps (mjpeg) so opted to set camera to 15fps.&lt;br /&gt;
&lt;br /&gt;
RTSP works with ffmpeg as above pulling 30fps when camera set to 30fps for that Profile but could not get it working with Source Type Remote and Remote Protocol RTSP.&lt;br /&gt;
&lt;br /&gt;
Looks like Audio is at /audio/ACAS.cgi but haven&amp;#039;t done anything with that.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-3710=&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video2.mjpg (for stream 2)&lt;br /&gt;
&lt;br /&gt;
ZoneMinder 1.24.3 (Haven&amp;#039;t tried earlier versions)&lt;br /&gt;
&lt;br /&gt;
Video profile mode must be set to JPEG.&lt;br /&gt;
&lt;br /&gt;
=DCS-5010L and DCS-5020L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS5010Lfront.png|left|DCS5010L]]&lt;br /&gt;
[[Image:DCS5020Lfront.png|DCS5020L]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The features and firmware of both of these models are identical excepting that the DCS-5020L has a wifi repeater built in, which does not affect the video capabilities of the camera.  These cameras can do up to 30 fps with MJPEG.  (Firmware 1.01, zoneminder 1.25.0)&lt;br /&gt;
&lt;br /&gt;
To set video properties on the camera, click on setup, then video.  Here you can adjust settings for mjpeg quality and the frame rate.  You might also want to set the default (browser) view mode to image, so that you&amp;#039;ll get something when logging into the camera if you don&amp;#039;t have java installed.&lt;br /&gt;
&lt;br /&gt;
MJPEG settings for zoneminder:&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol:  HTTP&lt;br /&gt;
 Remote Method:  Simple&lt;br /&gt;
 Remote Host Name:  user:pass@IP Address of Camera&lt;br /&gt;
 Remote Host Port:  80 (Default)&lt;br /&gt;
 Remote Host Path:  /video.cgi&lt;br /&gt;
 Colors:  24 bit&lt;br /&gt;
 Capture width:  640&lt;br /&gt;
 Capture Height:  480&lt;br /&gt;
&lt;br /&gt;
PTZ Controls can be used from within ZoneMinder using the control script linked below.  Copy the script contents into a file alongside of the other ZM Control Scripts.&lt;br /&gt;
&lt;br /&gt;
[[D-Link DCS-5020L Control Script]]&lt;br /&gt;
&lt;br /&gt;
PTZ Settings:&lt;br /&gt;
&lt;br /&gt;
 Main: Type: Remote, Protocol: DCS5020L, Name: DCS5020L, Can Wake, Can Sleep&lt;br /&gt;
 Move: Can Move, Can Move Diagonally, Can Move Mapped, Can Move Relative&lt;br /&gt;
 Pan: Can Pan, Min Pan Step 1, Max Pan Step 30&lt;br /&gt;
 Tilt: Can Tilt, Min Tilt Step 1, Max Pan Step 30&lt;br /&gt;
 Presets: Has Presets, Number: 24, Has Home Preset&lt;br /&gt;
&lt;br /&gt;
Note: Wake and Sleep functions are mapped to IR On/Off respectively.&lt;br /&gt;
&lt;br /&gt;
Settings for Control Tab:&lt;br /&gt;
&lt;br /&gt;
 Controllable, Control Type: DCS5020L, Control address: user:pass@ipaddress&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
&lt;br /&gt;
# For PTZ control, the user/pass combination must be an administrator on the camera. A regular view-only user will not work.&lt;br /&gt;
# An unknown-quality H.264 stream available at http://user:pass@ip.of.camera/dgh264.raw . Haven&amp;#039;t worked out how to get it working in zoneminder yet.&lt;br /&gt;
# Audio is available from http://user:pass@ip.of.camera/dgaudio.cgi while the accompanying video is at http://user:pass@ip.of.camera/dgvideo.cgi&lt;br /&gt;
# The DCS-5020L script was based on the Trendnet TV-IP400W control script, available at http://www.sfpeter.com/2008/07/new-trendnet-tv-ip400w-controller-for-zoneminder-123x/ .  &amp;quot;&amp;lt;tt&amp;gt;use ZoneMinder::Debug qw(:all);&amp;lt;/tt&amp;gt;&amp;quot; was replaced with &amp;quot;&amp;lt;tt&amp;gt;use ZoneMinder::Logger qw(:all);&amp;lt;/tt&amp;gt;&amp;quot; for zoneminder 1.25 compatibility.&lt;br /&gt;
&lt;br /&gt;
=DCS-5222L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DSC-5222L.jpg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi (for jpeg stream)&lt;br /&gt;
&lt;br /&gt;
The jpeg and the mjpeg both output at the resolution specified for &amp;quot;video profile 3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 RTSP&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;/play1.sdp (or play2.sdp)&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 might catch other profiles by using this URL&lt;br /&gt;
&lt;br /&gt;
Looks like Audio is at /audio/ACAS.cgi but haven&amp;#039;t done anything with that.&lt;br /&gt;
&lt;br /&gt;
=DCS-5300G=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-5300G.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
Note: you must change Network -&amp;gt; ZM_HTTP_VERSION option to 1.0 for this camera to work!&lt;br /&gt;
&lt;br /&gt;
=DCS-6010L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-6010.jpeg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi (for jpeg stream)&lt;br /&gt;
&lt;br /&gt;
The jpeg and the mjpeg both output at the resolution specified for &amp;quot;video profile 3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 might catch other profiles by using this URL&lt;br /&gt;
&lt;br /&gt;
=DCS-6111=&lt;br /&gt;
 &lt;br /&gt;
[[File:DCS6111.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Path: (stream 1): /video.mjpg &lt;br /&gt;
 Remote Host Path: (stream 2): /video2.mjpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-1000=&lt;br /&gt;
&lt;br /&gt;
[[File:DCS-1000_left.png]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Path: VIDEO.CGI (You must upgrade the firmware on the camera to 1.30 for this to work. Try this [http://www.dlink.co.uk/cs/Satellite?c=TechSupport_C&amp;amp;childpagename=DLinkEurope-GB%2FDLTechProduct&amp;amp;cid=1197319187751&amp;amp;p=1197318962293&amp;amp;packedargs=locale%3D1195806691854&amp;amp;pagename=DLinkEurope-GB%2FDLWrapper site] for the firmware and the ipview software to install the firmware.)&lt;br /&gt;
&lt;br /&gt;
=DCS-6620G=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-6620G.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default) or the non-default port assigned to the camera in your network&lt;br /&gt;
 Remote host Path: /cgi-bin/video.jpg&lt;br /&gt;
 Control script: download at www.condrau.com/download/zmcontrol-dcs6620g.pl&lt;br /&gt;
&lt;br /&gt;
The control script supports all controls for this camera, but it can be used for other D-Link and Vivotek cameras as well. I verified it with DCS-6620 and Vivotek&amp;#039;s PT7137, as the software is compatible with these 2 cameras. It should also work with other models such as the DCS-5300.&lt;br /&gt;
&lt;br /&gt;
Note that I implemented a real name preset functionality, where you can set any desired name as the preset name. It is basically possible to set the presets through ZM&amp;#039;s interface, but I prefer to do it through the cam&amp;#039;s firmware interface, which is the default setting in the script. By changing one constant definition, you may change this behaviour. In any case still activate the &amp;quot;can set presets&amp;quot; option in ZM, after which you can assign names to each preset.&lt;br /&gt;
&lt;br /&gt;
I would further recommend to update the cam&amp;#039;s firmware. I found smoother operation in ZM after having updated the firmware, and also with the latest firmware you can set ZM_HTTP_VERSION option to 1.1.&lt;br /&gt;
[bco]&lt;br /&gt;
&lt;br /&gt;
The camera will work with Zoneminder 1.25 with some minor modifications to the template PanasonicIp.pm script. Copy file and rename to DCS6620. Changed commands are listed below.  The the only tricky part was zoom.  Changes nearly identically for (PZ8111) which is almost the same camera. Note difference /cgi-bin/$cmd instead of /cgi-bin/camctrl/$cmd in. For some reason the zoom ui is calling Tele and Wide functions instead of zoomConTele and zoomConWide.  Use the options below &lt;br /&gt;
Monitor&lt;br /&gt;
* Control Type = DCS6620&lt;br /&gt;
* Control Device = blank&lt;br /&gt;
* Control Address = &amp;lt;ip address of your camera&amp;gt;&lt;br /&gt;
Control Capabilities&lt;br /&gt;
* Type = Remote&lt;br /&gt;
* Protocol = DCS6620&lt;br /&gt;
* Can Move = Check&lt;br /&gt;
* Can Move Continuous = Check&lt;br /&gt;
* Can Pan = Check&lt;br /&gt;
* Can Tilt = Check&lt;br /&gt;
* Can Zoom = Check&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
package ZoneMinder::Control::DCS6620;&lt;br /&gt;
sub sendCmd&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    my $cmd = shift;&lt;br /&gt;
&lt;br /&gt;
    my $result = undef;&lt;br /&gt;
&lt;br /&gt;
    printMsg( $cmd, &amp;quot;Tx&amp;quot; );&lt;br /&gt;
&lt;br /&gt;
    my $req = HTTP::Request-&amp;gt;new( GET=&amp;gt;&amp;quot;http://&amp;quot;.$self-&amp;gt;{Monitor}-&amp;gt;{ControlAddress}.&amp;quot;/cgi-bin/$cmd&amp;quot; );&lt;br /&gt;
    my $res = $self-&amp;gt;{ua}-&amp;gt;request($req);&lt;br /&gt;
&lt;br /&gt;
    if ( $res-&amp;gt;is_success )&lt;br /&gt;
    {&lt;br /&gt;
        $result = !undef;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
        Error( &amp;quot;Error check failed: &amp;#039;&amp;quot;.$res-&amp;gt;status_line().&amp;quot;&amp;#039;&amp;quot; );&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return( $result );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sub moveConUp&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Up&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=up&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConDown&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Down&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=down&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConLeft&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Left&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=left&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConRight&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Right&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=right&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sub Tele&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    #my $params = shift;&lt;br /&gt;
    #my $step = $self-&amp;gt;getParam( $params, &amp;#039;step&amp;#039; );&lt;br /&gt;
    Debug( &amp;quot;Zoom Tele&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?zoom=tele&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub Wide&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    #my $params = shift;&lt;br /&gt;
    #my $step = $self-&amp;gt;getParam( $params, &amp;#039;step&amp;#039; );&lt;br /&gt;
    Debug( &amp;quot;Zoom Wide&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?zoom=wide&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-7010L=&lt;br /&gt;
&lt;br /&gt;
Change in video settings of the camera the mode to MPEG4 and restart the device.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: RTSP&lt;br /&gt;
Remote Method: RTP/Unicast&lt;br /&gt;
Remote Host Port: 554&lt;br /&gt;
Remote Host Name: &amp;lt;IP Address of Camera&amp;gt; (RTSP authentication didn&amp;#039;t work with this method)&lt;br /&gt;
Remote Host Path: /live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: Ffmpeg&lt;br /&gt;
Remote Host Path: rtsp://&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp&lt;br /&gt;
Remote Host Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp (when RTSP authentication is enabled)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: HTTP&lt;br /&gt;
Remote Host Port: 80&lt;br /&gt;
Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /video1.mjpg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-7110=&lt;br /&gt;
&lt;br /&gt;
Device&amp;#039;s web server gives example code for various setups.  Verified 2012-12-08.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* http://&amp;lt;cam-ip&amp;gt;:80/cgi-bin/viewer/video.jpg?streamid=0&amp;amp;quality=5 // single-shot jpg image&lt;br /&gt;
* rtsp://&amp;lt;cam-ip&amp;gt;:554/live.sdp // feeds VLC&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Incompatible Hardware=&lt;br /&gt;
&lt;br /&gt;
I know that the DCS-1110 is not compattible with ZoneMinder, as it requires ActiveX to recive the MJpeg stream.&lt;br /&gt;
&lt;br /&gt;
If you know of other DLink cameras that don&amp;#039;t work, please add them to the list!&lt;br /&gt;
&lt;br /&gt;
DCS-950 not compatible.  Mpeg stream.  Authentication is OCX application based, not web standard authentication.  JPG file generated at random url, not predictable.[http://www.blognesian.com/ ]&lt;br /&gt;
&lt;br /&gt;
[[Category:Cameras]]&lt;br /&gt;
[[Category:Network Cameras]]&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=D-Link&amp;diff=6038</id>
		<title>D-Link</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=D-Link&amp;diff=6038"/>
		<updated>2013-12-26T15:15:01Z</updated>

		<summary type="html">&lt;p&gt;Duli: /* DCS-930L / 932L */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DLink is a supplier of several IP Cameras. Not all work with ZoneMinder.&lt;br /&gt;
DCS-1000(W) and DCS-900 - plus other D-Link IP models (This have been hit and miss, not all work with ZM. A partial list of unsupported cameras are inside).&lt;br /&gt;
&lt;br /&gt;
=DCS-900=&lt;br /&gt;
[[Image:DCS900.png]]&lt;br /&gt;
&lt;br /&gt;
There are 2 versions of this camera. The &amp;quot;A&amp;quot; version is reported to work extremely well with ZoneMinder. The &amp;quot;B&amp;quot; version also works, but has a been reported to have lesser performance. I have been able to get upto 8 fps with my revision &amp;quot;B&amp;quot; camera.&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /VIDEO.CGI or /IMAGE.JPEG &lt;br /&gt;
 (/VIDEO.CGI is the MJpeg stream, and gets higher FPS in my testing)&lt;br /&gt;
&lt;br /&gt;
With version A2&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP_Address_of_Camera&amp;gt; (user:pass@192.168.0.5)&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: VIDEO.CGI &lt;br /&gt;
&lt;br /&gt;
With the latest versions of the DCS-900 &amp;quot;B&amp;quot; there is an additional step needed in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
=DCS-910 / 920=&lt;br /&gt;
[[Image:DCS-910.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /VIDEO.CGI? for stream&lt;br /&gt;
&lt;br /&gt;
There is the same aditional step as in DCS-900B, in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-930L / 932L=&lt;br /&gt;
[[Image:DCS-930L.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi&lt;br /&gt;
&lt;br /&gt;
Additionally MJPEG stream avaliable at: /MJPEG.CGI but next step is required for it, in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
For the &amp;#039;&amp;#039;&amp;#039;DCS-932L&amp;#039;&amp;#039;&amp;#039; also works:&lt;br /&gt;
&lt;br /&gt;
 Remote Host Path: /video.cgi&lt;br /&gt;
&lt;br /&gt;
If you want to limit the FPS just as it is set in the camera&amp;#039;s setup -&amp;gt; video -&amp;gt; FPS or if you want to control the FPS in the &amp;quot;Maximum FPS&amp;quot; and &amp;quot;Alarm Maximum FPS&amp;quot; in the zoneminder General tab, then you will need to use the video stream (video.cgi) and not the snapshot stream (/image/jpeg.cgi).&lt;br /&gt;
&lt;br /&gt;
Using /mjpeg.cgi gives a lot of erros in the log files:&lt;br /&gt;
&lt;br /&gt;
 ERR [Invalid JPEG file structure: two SOI markers]&lt;br /&gt;
 ERR [Unable to decode jpeg]&lt;br /&gt;
&lt;br /&gt;
=DCS-931L / DCS-933L=&lt;br /&gt;
[[Image:DCS931L.png]]&lt;br /&gt;
&lt;br /&gt;
This camera can do up to 30 fps with MJPEG.  (Firmware 1.01, zoneminder 1.25.0)&lt;br /&gt;
&lt;br /&gt;
To set video properties on the camera, click on setup, then video.  Here you can adjust settings for mjpeg quality and the frame rate.  You might also want to set the default (browser) view mode to image, so that you&amp;#039;ll get something when logging into the camera if you don&amp;#039;t have java installed.&lt;br /&gt;
&lt;br /&gt;
MJPEG settings for zoneminder:&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol:  HTTP&lt;br /&gt;
 Remote Method:  Simple&lt;br /&gt;
 Remote Host Name:  user:pass@IP Address of Camera&lt;br /&gt;
 Remote Host Port:  80 (Default)&lt;br /&gt;
 Remote Host Path:  /video.cgi&lt;br /&gt;
 Colors:  24 bit&lt;br /&gt;
 Capture width:  640&lt;br /&gt;
 Capture Height:  480&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
&lt;br /&gt;
# An unknown-quality H.264 stream available at http://user:pass@ip.of.camera/dgh264.raw . Haven&amp;#039;t worked out how to get it working in zoneminder yet.&lt;br /&gt;
# Audio is available from http://user:pass@ip.of.camera/dgaudio.cgi .&lt;br /&gt;
&lt;br /&gt;
=DCS-942L=&lt;br /&gt;
&lt;br /&gt;
Image capture works the same as 932L and /image/jpeg.cgi over HTTP.&lt;br /&gt;
RTSP stream works with MPEG streams (/3gpp by default)&lt;br /&gt;
RTSP H.264 streaming works if set as follows:&lt;br /&gt;
&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://&amp;lt;camera ip&amp;gt;:554/play2.sdp&lt;br /&gt;
&lt;br /&gt;
If the Zoneminder (1.25) monitor crashes every 10-30s (check your logs), set:&lt;br /&gt;
&lt;br /&gt;
 echo 536870912 &amp;gt;/proc/sys/kernel/shmmax&lt;br /&gt;
&lt;br /&gt;
from the wiki [[FAQ#What_does_a_.27Can.27t_shmget:_Invalid_argument.27_error_in_my_logs_mean.3F_and_my_cameras_won.27t_display_video_at_higher_resolutions.]]&lt;br /&gt;
&lt;br /&gt;
=DCS-1100=&lt;br /&gt;
[[File:dcs-1100.jpg|100px]]&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Method: Simple&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi?profileid=3&lt;br /&gt;
&lt;br /&gt;
Where Profileid is setup in the camara&amp;#039;s setup interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2100+, DCS-2100G=&lt;br /&gt;
[[Image:DSC2100plus.jpg]][[Image:DCS2100g.jpg]]&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
Note: you must change Network -&amp;gt; ZM_HTTP_VERSION option to 1.0 for this camera to work!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2120=&lt;br /&gt;
[[Image:DCS2100g.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2121=&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: username:password@cam_ip&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi?profileid=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2130=&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: username:password@cam_ip&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi?profileid=1&lt;br /&gt;
&lt;br /&gt;
=DCS-2210=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
(Change in video settings of the camera the mode to MPEG4 first)&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: RTSP&lt;br /&gt;
Remote Method: RTP/Unicast&lt;br /&gt;
Remote Host Port: 554&lt;br /&gt;
Remote Host Name: &amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: Ffmpeg&lt;br /&gt;
Remote Host Path: rtsp://&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
(Change in video settings of the camera the mode to MPEG4 first)&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: HTTP&lt;br /&gt;
Remote Host Port: 80&lt;br /&gt;
Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /video1.mjpg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-3220=&lt;br /&gt;
[[Image:DCS-3220.jpg]]&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-3410=&lt;br /&gt;
&lt;br /&gt;
[[Image:DSC-3410.jpg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
&lt;br /&gt;
 RTSP&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;/play1.sdp (or play2.sdp)&lt;br /&gt;
&lt;br /&gt;
ZoneMinder 1.24.2 (Haven&amp;#039;t tried earlier versions)&lt;br /&gt;
&lt;br /&gt;
Tried it with just admin:@&amp;lt;IP Address of Camera&amp;gt;  without password before setting camera password and it worked. Created an account with a password, tried that and it also worked.&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 caught that from tcpdump, suspect the numbers are resolution but don&amp;#039;t seem to have any affect.&lt;br /&gt;
&lt;br /&gt;
Seems like it&amp;#039;s operating in factory default Profile 3, 704x480 10fps jpeg. Haven&amp;#039;t found a way to change the Profile used yet. Could only pull about 22fps when camera was set to 30fps (mjpeg) so opted to set camera to 15fps.&lt;br /&gt;
&lt;br /&gt;
RTSP works with ffmpeg as above pulling 30fps when camera set to 30fps for that Profile but could not get it working with Source Type Remote and Remote Protocol RTSP.&lt;br /&gt;
&lt;br /&gt;
Looks like Audio is at /audio/ACAS.cgi but haven&amp;#039;t done anything with that.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-3710=&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video2.mjpg (for stream 2)&lt;br /&gt;
&lt;br /&gt;
ZoneMinder 1.24.3 (Haven&amp;#039;t tried earlier versions)&lt;br /&gt;
&lt;br /&gt;
Video profile mode must be set to JPEG.&lt;br /&gt;
&lt;br /&gt;
=DCS-5010L and DCS-5020L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS5010Lfront.png|left|DCS5010L]]&lt;br /&gt;
[[Image:DCS5020Lfront.png|DCS5020L]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The features and firmware of both of these models are identical excepting that the DCS-5020L has a wifi repeater built in, which does not affect the video capabilities of the camera.  These cameras can do up to 30 fps with MJPEG.  (Firmware 1.01, zoneminder 1.25.0)&lt;br /&gt;
&lt;br /&gt;
To set video properties on the camera, click on setup, then video.  Here you can adjust settings for mjpeg quality and the frame rate.  You might also want to set the default (browser) view mode to image, so that you&amp;#039;ll get something when logging into the camera if you don&amp;#039;t have java installed.&lt;br /&gt;
&lt;br /&gt;
MJPEG settings for zoneminder:&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol:  HTTP&lt;br /&gt;
 Remote Method:  Simple&lt;br /&gt;
 Remote Host Name:  user:pass@IP Address of Camera&lt;br /&gt;
 Remote Host Port:  80 (Default)&lt;br /&gt;
 Remote Host Path:  /video.cgi&lt;br /&gt;
 Colors:  24 bit&lt;br /&gt;
 Capture width:  640&lt;br /&gt;
 Capture Height:  480&lt;br /&gt;
&lt;br /&gt;
PTZ Controls can be used from within ZoneMinder using the control script linked below.  Copy the script contents into a file alongside of the other ZM Control Scripts.&lt;br /&gt;
&lt;br /&gt;
[[D-Link DCS-5020L Control Script]]&lt;br /&gt;
&lt;br /&gt;
PTZ Settings:&lt;br /&gt;
&lt;br /&gt;
 Main: Type: Remote, Protocol: DCS5020L, Name: DCS5020L, Can Wake, Can Sleep&lt;br /&gt;
 Move: Can Move, Can Move Diagonally, Can Move Mapped, Can Move Relative&lt;br /&gt;
 Pan: Can Pan, Min Pan Step 1, Max Pan Step 30&lt;br /&gt;
 Tilt: Can Tilt, Min Tilt Step 1, Max Pan Step 30&lt;br /&gt;
 Presets: Has Presets, Number: 24, Has Home Preset&lt;br /&gt;
&lt;br /&gt;
Note: Wake and Sleep functions are mapped to IR On/Off respectively.&lt;br /&gt;
&lt;br /&gt;
Settings for Control Tab:&lt;br /&gt;
&lt;br /&gt;
 Controllable, Control Type: DCS5020L, Control address: user:pass@ipaddress&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
&lt;br /&gt;
# For PTZ control, the user/pass combination must be an administrator on the camera. A regular view-only user will not work.&lt;br /&gt;
# An unknown-quality H.264 stream available at http://user:pass@ip.of.camera/dgh264.raw . Haven&amp;#039;t worked out how to get it working in zoneminder yet.&lt;br /&gt;
# Audio is available from http://user:pass@ip.of.camera/dgaudio.cgi .&lt;br /&gt;
# The DCS-5020L script was based on the Trendnet TV-IP400W control script, available at http://www.sfpeter.com/2008/07/new-trendnet-tv-ip400w-controller-for-zoneminder-123x/ .  &amp;quot;&amp;lt;tt&amp;gt;use ZoneMinder::Debug qw(:all);&amp;lt;/tt&amp;gt;&amp;quot; was replaced with &amp;quot;&amp;lt;tt&amp;gt;use ZoneMinder::Logger qw(:all);&amp;lt;/tt&amp;gt;&amp;quot; for zoneminder 1.25 compatibility.&lt;br /&gt;
&lt;br /&gt;
=DCS-5222L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DSC-5222L.jpg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi (for jpeg stream)&lt;br /&gt;
&lt;br /&gt;
The jpeg and the mjpeg both output at the resolution specified for &amp;quot;video profile 3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 RTSP&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;/play1.sdp (or play2.sdp)&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 might catch other profiles by using this URL&lt;br /&gt;
&lt;br /&gt;
Looks like Audio is at /audio/ACAS.cgi but haven&amp;#039;t done anything with that.&lt;br /&gt;
&lt;br /&gt;
=DCS-5300G=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-5300G.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
Note: you must change Network -&amp;gt; ZM_HTTP_VERSION option to 1.0 for this camera to work!&lt;br /&gt;
&lt;br /&gt;
=DCS-6010L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-6010.jpeg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi (for jpeg stream)&lt;br /&gt;
&lt;br /&gt;
The jpeg and the mjpeg both output at the resolution specified for &amp;quot;video profile 3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 might catch other profiles by using this URL&lt;br /&gt;
&lt;br /&gt;
=DCS-6111=&lt;br /&gt;
 &lt;br /&gt;
[[File:DCS6111.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Path: (stream 1): /video.mjpg &lt;br /&gt;
 Remote Host Path: (stream 2): /video2.mjpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-1000=&lt;br /&gt;
&lt;br /&gt;
[[File:DCS-1000_left.png]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Path: VIDEO.CGI (You must upgrade the firmware on the camera to 1.30 for this to work. Try this [http://www.dlink.co.uk/cs/Satellite?c=TechSupport_C&amp;amp;childpagename=DLinkEurope-GB%2FDLTechProduct&amp;amp;cid=1197319187751&amp;amp;p=1197318962293&amp;amp;packedargs=locale%3D1195806691854&amp;amp;pagename=DLinkEurope-GB%2FDLWrapper site] for the firmware and the ipview software to install the firmware.)&lt;br /&gt;
&lt;br /&gt;
=DCS-6620G=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-6620G.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default) or the non-default port assigned to the camera in your network&lt;br /&gt;
 Remote host Path: /cgi-bin/video.jpg&lt;br /&gt;
 Control script: download at www.condrau.com/download/zmcontrol-dcs6620g.pl&lt;br /&gt;
&lt;br /&gt;
The control script supports all controls for this camera, but it can be used for other D-Link and Vivotek cameras as well. I verified it with DCS-6620 and Vivotek&amp;#039;s PT7137, as the software is compatible with these 2 cameras. It should also work with other models such as the DCS-5300.&lt;br /&gt;
&lt;br /&gt;
Note that I implemented a real name preset functionality, where you can set any desired name as the preset name. It is basically possible to set the presets through ZM&amp;#039;s interface, but I prefer to do it through the cam&amp;#039;s firmware interface, which is the default setting in the script. By changing one constant definition, you may change this behaviour. In any case still activate the &amp;quot;can set presets&amp;quot; option in ZM, after which you can assign names to each preset.&lt;br /&gt;
&lt;br /&gt;
I would further recommend to update the cam&amp;#039;s firmware. I found smoother operation in ZM after having updated the firmware, and also with the latest firmware you can set ZM_HTTP_VERSION option to 1.1.&lt;br /&gt;
[bco]&lt;br /&gt;
&lt;br /&gt;
The camera will work with Zoneminder 1.25 with some minor modifications to the template PanasonicIp.pm script. Copy file and rename to DCS6620. Changed commands are listed below.  The the only tricky part was zoom.  Changes nearly identically for (PZ8111) which is almost the same camera. Note difference /cgi-bin/$cmd instead of /cgi-bin/camctrl/$cmd in. For some reason the zoom ui is calling Tele and Wide functions instead of zoomConTele and zoomConWide.  Use the options below &lt;br /&gt;
Monitor&lt;br /&gt;
* Control Type = DCS6620&lt;br /&gt;
* Control Device = blank&lt;br /&gt;
* Control Address = &amp;lt;ip address of your camera&amp;gt;&lt;br /&gt;
Control Capabilities&lt;br /&gt;
* Type = Remote&lt;br /&gt;
* Protocol = DCS6620&lt;br /&gt;
* Can Move = Check&lt;br /&gt;
* Can Move Continuous = Check&lt;br /&gt;
* Can Pan = Check&lt;br /&gt;
* Can Tilt = Check&lt;br /&gt;
* Can Zoom = Check&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
package ZoneMinder::Control::DCS6620;&lt;br /&gt;
sub sendCmd&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    my $cmd = shift;&lt;br /&gt;
&lt;br /&gt;
    my $result = undef;&lt;br /&gt;
&lt;br /&gt;
    printMsg( $cmd, &amp;quot;Tx&amp;quot; );&lt;br /&gt;
&lt;br /&gt;
    my $req = HTTP::Request-&amp;gt;new( GET=&amp;gt;&amp;quot;http://&amp;quot;.$self-&amp;gt;{Monitor}-&amp;gt;{ControlAddress}.&amp;quot;/cgi-bin/$cmd&amp;quot; );&lt;br /&gt;
    my $res = $self-&amp;gt;{ua}-&amp;gt;request($req);&lt;br /&gt;
&lt;br /&gt;
    if ( $res-&amp;gt;is_success )&lt;br /&gt;
    {&lt;br /&gt;
        $result = !undef;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
        Error( &amp;quot;Error check failed: &amp;#039;&amp;quot;.$res-&amp;gt;status_line().&amp;quot;&amp;#039;&amp;quot; );&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return( $result );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sub moveConUp&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Up&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=up&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConDown&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Down&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=down&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConLeft&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Left&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=left&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConRight&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Right&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=right&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sub Tele&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    #my $params = shift;&lt;br /&gt;
    #my $step = $self-&amp;gt;getParam( $params, &amp;#039;step&amp;#039; );&lt;br /&gt;
    Debug( &amp;quot;Zoom Tele&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?zoom=tele&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub Wide&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    #my $params = shift;&lt;br /&gt;
    #my $step = $self-&amp;gt;getParam( $params, &amp;#039;step&amp;#039; );&lt;br /&gt;
    Debug( &amp;quot;Zoom Wide&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?zoom=wide&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-7010L=&lt;br /&gt;
&lt;br /&gt;
Change in video settings of the camera the mode to MPEG4 and restart the device.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: RTSP&lt;br /&gt;
Remote Method: RTP/Unicast&lt;br /&gt;
Remote Host Port: 554&lt;br /&gt;
Remote Host Name: &amp;lt;IP Address of Camera&amp;gt; (RTSP authentication didn&amp;#039;t work with this method)&lt;br /&gt;
Remote Host Path: /live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: Ffmpeg&lt;br /&gt;
Remote Host Path: rtsp://&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp&lt;br /&gt;
Remote Host Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp (when RTSP authentication is enabled)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: HTTP&lt;br /&gt;
Remote Host Port: 80&lt;br /&gt;
Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /video1.mjpg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-7110=&lt;br /&gt;
&lt;br /&gt;
Device&amp;#039;s web server gives example code for various setups.  Verified 2012-12-08.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* http://&amp;lt;cam-ip&amp;gt;:80/cgi-bin/viewer/video.jpg?streamid=0&amp;amp;quality=5 // single-shot jpg image&lt;br /&gt;
* rtsp://&amp;lt;cam-ip&amp;gt;:554/live.sdp // feeds VLC&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Incompatible Hardware=&lt;br /&gt;
&lt;br /&gt;
I know that the DCS-1110 is not compattible with ZoneMinder, as it requires ActiveX to recive the MJpeg stream.&lt;br /&gt;
&lt;br /&gt;
If you know of other DLink cameras that don&amp;#039;t work, please add them to the list!&lt;br /&gt;
&lt;br /&gt;
DCS-950 not compatible.  Mpeg stream.  Authentication is OCX application based, not web standard authentication.  JPG file generated at random url, not predictable.[http://www.blognesian.com/ ]&lt;br /&gt;
&lt;br /&gt;
[[Category:Cameras]]&lt;br /&gt;
[[Category:Network Cameras]]&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=D-Link&amp;diff=6037</id>
		<title>D-Link</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=D-Link&amp;diff=6037"/>
		<updated>2013-12-26T15:10:59Z</updated>

		<summary type="html">&lt;p&gt;Duli: /* DCS-930L / 932L */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DLink is a supplier of several IP Cameras. Not all work with ZoneMinder.&lt;br /&gt;
DCS-1000(W) and DCS-900 - plus other D-Link IP models (This have been hit and miss, not all work with ZM. A partial list of unsupported cameras are inside).&lt;br /&gt;
&lt;br /&gt;
=DCS-900=&lt;br /&gt;
[[Image:DCS900.png]]&lt;br /&gt;
&lt;br /&gt;
There are 2 versions of this camera. The &amp;quot;A&amp;quot; version is reported to work extremely well with ZoneMinder. The &amp;quot;B&amp;quot; version also works, but has a been reported to have lesser performance. I have been able to get upto 8 fps with my revision &amp;quot;B&amp;quot; camera.&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /VIDEO.CGI or /IMAGE.JPEG &lt;br /&gt;
 (/VIDEO.CGI is the MJpeg stream, and gets higher FPS in my testing)&lt;br /&gt;
&lt;br /&gt;
With version A2&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP_Address_of_Camera&amp;gt; (user:pass@192.168.0.5)&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: VIDEO.CGI &lt;br /&gt;
&lt;br /&gt;
With the latest versions of the DCS-900 &amp;quot;B&amp;quot; there is an additional step needed in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
=DCS-910 / 920=&lt;br /&gt;
[[Image:DCS-910.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /VIDEO.CGI? for stream&lt;br /&gt;
&lt;br /&gt;
There is the same aditional step as in DCS-900B, in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-930L / 932L=&lt;br /&gt;
[[Image:DCS-930L.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi&lt;br /&gt;
&lt;br /&gt;
Additionally MJPEG stream avaliable at: /MJPEG.CGI but next step is required for it, in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
For the &amp;#039;&amp;#039;&amp;#039;DCS-932L&amp;#039;&amp;#039;&amp;#039; also works:&lt;br /&gt;
&lt;br /&gt;
 Remote Host Path: /video.cgi&lt;br /&gt;
&lt;br /&gt;
If you want to limit the FPS just as it is set in the camera&amp;#039;s setup -&amp;gt; video -&amp;gt; FPS, then you will need to use the video stream (video.cgi) and not the snapshot stream (/image/jpeg.cgi).&lt;br /&gt;
&lt;br /&gt;
Using /mjpeg.cgi gives a lot of erros in the log files:&lt;br /&gt;
&lt;br /&gt;
 ERR [Invalid JPEG file structure: two SOI markers]&lt;br /&gt;
 ERR [Unable to decode jpeg]&lt;br /&gt;
&lt;br /&gt;
=DCS-931L / DCS-933L=&lt;br /&gt;
[[Image:DCS931L.png]]&lt;br /&gt;
&lt;br /&gt;
This camera can do up to 30 fps with MJPEG.  (Firmware 1.01, zoneminder 1.25.0)&lt;br /&gt;
&lt;br /&gt;
To set video properties on the camera, click on setup, then video.  Here you can adjust settings for mjpeg quality and the frame rate.  You might also want to set the default (browser) view mode to image, so that you&amp;#039;ll get something when logging into the camera if you don&amp;#039;t have java installed.&lt;br /&gt;
&lt;br /&gt;
MJPEG settings for zoneminder:&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol:  HTTP&lt;br /&gt;
 Remote Method:  Simple&lt;br /&gt;
 Remote Host Name:  user:pass@IP Address of Camera&lt;br /&gt;
 Remote Host Port:  80 (Default)&lt;br /&gt;
 Remote Host Path:  /video.cgi&lt;br /&gt;
 Colors:  24 bit&lt;br /&gt;
 Capture width:  640&lt;br /&gt;
 Capture Height:  480&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
&lt;br /&gt;
# An unknown-quality H.264 stream available at http://user:pass@ip.of.camera/dgh264.raw . Haven&amp;#039;t worked out how to get it working in zoneminder yet.&lt;br /&gt;
# Audio is available from http://user:pass@ip.of.camera/dgaudio.cgi .&lt;br /&gt;
&lt;br /&gt;
=DCS-942L=&lt;br /&gt;
&lt;br /&gt;
Image capture works the same as 932L and /image/jpeg.cgi over HTTP.&lt;br /&gt;
RTSP stream works with MPEG streams (/3gpp by default)&lt;br /&gt;
RTSP H.264 streaming works if set as follows:&lt;br /&gt;
&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://&amp;lt;camera ip&amp;gt;:554/play2.sdp&lt;br /&gt;
&lt;br /&gt;
If the Zoneminder (1.25) monitor crashes every 10-30s (check your logs), set:&lt;br /&gt;
&lt;br /&gt;
 echo 536870912 &amp;gt;/proc/sys/kernel/shmmax&lt;br /&gt;
&lt;br /&gt;
from the wiki [[FAQ#What_does_a_.27Can.27t_shmget:_Invalid_argument.27_error_in_my_logs_mean.3F_and_my_cameras_won.27t_display_video_at_higher_resolutions.]]&lt;br /&gt;
&lt;br /&gt;
=DCS-1100=&lt;br /&gt;
[[File:dcs-1100.jpg|100px]]&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Method: Simple&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi?profileid=3&lt;br /&gt;
&lt;br /&gt;
Where Profileid is setup in the camara&amp;#039;s setup interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2100+, DCS-2100G=&lt;br /&gt;
[[Image:DSC2100plus.jpg]][[Image:DCS2100g.jpg]]&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
Note: you must change Network -&amp;gt; ZM_HTTP_VERSION option to 1.0 for this camera to work!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2120=&lt;br /&gt;
[[Image:DCS2100g.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2121=&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: username:password@cam_ip&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi?profileid=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2130=&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: username:password@cam_ip&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi?profileid=1&lt;br /&gt;
&lt;br /&gt;
=DCS-2210=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
(Change in video settings of the camera the mode to MPEG4 first)&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: RTSP&lt;br /&gt;
Remote Method: RTP/Unicast&lt;br /&gt;
Remote Host Port: 554&lt;br /&gt;
Remote Host Name: &amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: Ffmpeg&lt;br /&gt;
Remote Host Path: rtsp://&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
(Change in video settings of the camera the mode to MPEG4 first)&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: HTTP&lt;br /&gt;
Remote Host Port: 80&lt;br /&gt;
Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /video1.mjpg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-3220=&lt;br /&gt;
[[Image:DCS-3220.jpg]]&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-3410=&lt;br /&gt;
&lt;br /&gt;
[[Image:DSC-3410.jpg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
&lt;br /&gt;
 RTSP&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;/play1.sdp (or play2.sdp)&lt;br /&gt;
&lt;br /&gt;
ZoneMinder 1.24.2 (Haven&amp;#039;t tried earlier versions)&lt;br /&gt;
&lt;br /&gt;
Tried it with just admin:@&amp;lt;IP Address of Camera&amp;gt;  without password before setting camera password and it worked. Created an account with a password, tried that and it also worked.&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 caught that from tcpdump, suspect the numbers are resolution but don&amp;#039;t seem to have any affect.&lt;br /&gt;
&lt;br /&gt;
Seems like it&amp;#039;s operating in factory default Profile 3, 704x480 10fps jpeg. Haven&amp;#039;t found a way to change the Profile used yet. Could only pull about 22fps when camera was set to 30fps (mjpeg) so opted to set camera to 15fps.&lt;br /&gt;
&lt;br /&gt;
RTSP works with ffmpeg as above pulling 30fps when camera set to 30fps for that Profile but could not get it working with Source Type Remote and Remote Protocol RTSP.&lt;br /&gt;
&lt;br /&gt;
Looks like Audio is at /audio/ACAS.cgi but haven&amp;#039;t done anything with that.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-3710=&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video2.mjpg (for stream 2)&lt;br /&gt;
&lt;br /&gt;
ZoneMinder 1.24.3 (Haven&amp;#039;t tried earlier versions)&lt;br /&gt;
&lt;br /&gt;
Video profile mode must be set to JPEG.&lt;br /&gt;
&lt;br /&gt;
=DCS-5010L and DCS-5020L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS5010Lfront.png|left|DCS5010L]]&lt;br /&gt;
[[Image:DCS5020Lfront.png|DCS5020L]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The features and firmware of both of these models are identical excepting that the DCS-5020L has a wifi repeater built in, which does not affect the video capabilities of the camera.  These cameras can do up to 30 fps with MJPEG.  (Firmware 1.01, zoneminder 1.25.0)&lt;br /&gt;
&lt;br /&gt;
To set video properties on the camera, click on setup, then video.  Here you can adjust settings for mjpeg quality and the frame rate.  You might also want to set the default (browser) view mode to image, so that you&amp;#039;ll get something when logging into the camera if you don&amp;#039;t have java installed.&lt;br /&gt;
&lt;br /&gt;
MJPEG settings for zoneminder:&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol:  HTTP&lt;br /&gt;
 Remote Method:  Simple&lt;br /&gt;
 Remote Host Name:  user:pass@IP Address of Camera&lt;br /&gt;
 Remote Host Port:  80 (Default)&lt;br /&gt;
 Remote Host Path:  /video.cgi&lt;br /&gt;
 Colors:  24 bit&lt;br /&gt;
 Capture width:  640&lt;br /&gt;
 Capture Height:  480&lt;br /&gt;
&lt;br /&gt;
PTZ Controls can be used from within ZoneMinder using the control script linked below.  Copy the script contents into a file alongside of the other ZM Control Scripts.&lt;br /&gt;
&lt;br /&gt;
[[D-Link DCS-5020L Control Script]]&lt;br /&gt;
&lt;br /&gt;
PTZ Settings:&lt;br /&gt;
&lt;br /&gt;
 Main: Type: Remote, Protocol: DCS5020L, Name: DCS5020L, Can Wake, Can Sleep&lt;br /&gt;
 Move: Can Move, Can Move Diagonally, Can Move Mapped, Can Move Relative&lt;br /&gt;
 Pan: Can Pan, Min Pan Step 1, Max Pan Step 30&lt;br /&gt;
 Tilt: Can Tilt, Min Tilt Step 1, Max Pan Step 30&lt;br /&gt;
 Presets: Has Presets, Number: 24, Has Home Preset&lt;br /&gt;
&lt;br /&gt;
Note: Wake and Sleep functions are mapped to IR On/Off respectively.&lt;br /&gt;
&lt;br /&gt;
Settings for Control Tab:&lt;br /&gt;
&lt;br /&gt;
 Controllable, Control Type: DCS5020L, Control address: user:pass@ipaddress&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
&lt;br /&gt;
# For PTZ control, the user/pass combination must be an administrator on the camera. A regular view-only user will not work.&lt;br /&gt;
# An unknown-quality H.264 stream available at http://user:pass@ip.of.camera/dgh264.raw . Haven&amp;#039;t worked out how to get it working in zoneminder yet.&lt;br /&gt;
# Audio is available from http://user:pass@ip.of.camera/dgaudio.cgi .&lt;br /&gt;
# The DCS-5020L script was based on the Trendnet TV-IP400W control script, available at http://www.sfpeter.com/2008/07/new-trendnet-tv-ip400w-controller-for-zoneminder-123x/ .  &amp;quot;&amp;lt;tt&amp;gt;use ZoneMinder::Debug qw(:all);&amp;lt;/tt&amp;gt;&amp;quot; was replaced with &amp;quot;&amp;lt;tt&amp;gt;use ZoneMinder::Logger qw(:all);&amp;lt;/tt&amp;gt;&amp;quot; for zoneminder 1.25 compatibility.&lt;br /&gt;
&lt;br /&gt;
=DCS-5222L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DSC-5222L.jpg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi (for jpeg stream)&lt;br /&gt;
&lt;br /&gt;
The jpeg and the mjpeg both output at the resolution specified for &amp;quot;video profile 3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 RTSP&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;/play1.sdp (or play2.sdp)&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 might catch other profiles by using this URL&lt;br /&gt;
&lt;br /&gt;
Looks like Audio is at /audio/ACAS.cgi but haven&amp;#039;t done anything with that.&lt;br /&gt;
&lt;br /&gt;
=DCS-5300G=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-5300G.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
Note: you must change Network -&amp;gt; ZM_HTTP_VERSION option to 1.0 for this camera to work!&lt;br /&gt;
&lt;br /&gt;
=DCS-6010L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-6010.jpeg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi (for jpeg stream)&lt;br /&gt;
&lt;br /&gt;
The jpeg and the mjpeg both output at the resolution specified for &amp;quot;video profile 3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 might catch other profiles by using this URL&lt;br /&gt;
&lt;br /&gt;
=DCS-6111=&lt;br /&gt;
 &lt;br /&gt;
[[File:DCS6111.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Path: (stream 1): /video.mjpg &lt;br /&gt;
 Remote Host Path: (stream 2): /video2.mjpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-1000=&lt;br /&gt;
&lt;br /&gt;
[[File:DCS-1000_left.png]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Path: VIDEO.CGI (You must upgrade the firmware on the camera to 1.30 for this to work. Try this [http://www.dlink.co.uk/cs/Satellite?c=TechSupport_C&amp;amp;childpagename=DLinkEurope-GB%2FDLTechProduct&amp;amp;cid=1197319187751&amp;amp;p=1197318962293&amp;amp;packedargs=locale%3D1195806691854&amp;amp;pagename=DLinkEurope-GB%2FDLWrapper site] for the firmware and the ipview software to install the firmware.)&lt;br /&gt;
&lt;br /&gt;
=DCS-6620G=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-6620G.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default) or the non-default port assigned to the camera in your network&lt;br /&gt;
 Remote host Path: /cgi-bin/video.jpg&lt;br /&gt;
 Control script: download at www.condrau.com/download/zmcontrol-dcs6620g.pl&lt;br /&gt;
&lt;br /&gt;
The control script supports all controls for this camera, but it can be used for other D-Link and Vivotek cameras as well. I verified it with DCS-6620 and Vivotek&amp;#039;s PT7137, as the software is compatible with these 2 cameras. It should also work with other models such as the DCS-5300.&lt;br /&gt;
&lt;br /&gt;
Note that I implemented a real name preset functionality, where you can set any desired name as the preset name. It is basically possible to set the presets through ZM&amp;#039;s interface, but I prefer to do it through the cam&amp;#039;s firmware interface, which is the default setting in the script. By changing one constant definition, you may change this behaviour. In any case still activate the &amp;quot;can set presets&amp;quot; option in ZM, after which you can assign names to each preset.&lt;br /&gt;
&lt;br /&gt;
I would further recommend to update the cam&amp;#039;s firmware. I found smoother operation in ZM after having updated the firmware, and also with the latest firmware you can set ZM_HTTP_VERSION option to 1.1.&lt;br /&gt;
[bco]&lt;br /&gt;
&lt;br /&gt;
The camera will work with Zoneminder 1.25 with some minor modifications to the template PanasonicIp.pm script. Copy file and rename to DCS6620. Changed commands are listed below.  The the only tricky part was zoom.  Changes nearly identically for (PZ8111) which is almost the same camera. Note difference /cgi-bin/$cmd instead of /cgi-bin/camctrl/$cmd in. For some reason the zoom ui is calling Tele and Wide functions instead of zoomConTele and zoomConWide.  Use the options below &lt;br /&gt;
Monitor&lt;br /&gt;
* Control Type = DCS6620&lt;br /&gt;
* Control Device = blank&lt;br /&gt;
* Control Address = &amp;lt;ip address of your camera&amp;gt;&lt;br /&gt;
Control Capabilities&lt;br /&gt;
* Type = Remote&lt;br /&gt;
* Protocol = DCS6620&lt;br /&gt;
* Can Move = Check&lt;br /&gt;
* Can Move Continuous = Check&lt;br /&gt;
* Can Pan = Check&lt;br /&gt;
* Can Tilt = Check&lt;br /&gt;
* Can Zoom = Check&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
package ZoneMinder::Control::DCS6620;&lt;br /&gt;
sub sendCmd&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    my $cmd = shift;&lt;br /&gt;
&lt;br /&gt;
    my $result = undef;&lt;br /&gt;
&lt;br /&gt;
    printMsg( $cmd, &amp;quot;Tx&amp;quot; );&lt;br /&gt;
&lt;br /&gt;
    my $req = HTTP::Request-&amp;gt;new( GET=&amp;gt;&amp;quot;http://&amp;quot;.$self-&amp;gt;{Monitor}-&amp;gt;{ControlAddress}.&amp;quot;/cgi-bin/$cmd&amp;quot; );&lt;br /&gt;
    my $res = $self-&amp;gt;{ua}-&amp;gt;request($req);&lt;br /&gt;
&lt;br /&gt;
    if ( $res-&amp;gt;is_success )&lt;br /&gt;
    {&lt;br /&gt;
        $result = !undef;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
        Error( &amp;quot;Error check failed: &amp;#039;&amp;quot;.$res-&amp;gt;status_line().&amp;quot;&amp;#039;&amp;quot; );&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return( $result );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sub moveConUp&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Up&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=up&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConDown&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Down&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=down&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConLeft&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Left&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=left&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConRight&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Right&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=right&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sub Tele&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    #my $params = shift;&lt;br /&gt;
    #my $step = $self-&amp;gt;getParam( $params, &amp;#039;step&amp;#039; );&lt;br /&gt;
    Debug( &amp;quot;Zoom Tele&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?zoom=tele&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub Wide&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    #my $params = shift;&lt;br /&gt;
    #my $step = $self-&amp;gt;getParam( $params, &amp;#039;step&amp;#039; );&lt;br /&gt;
    Debug( &amp;quot;Zoom Wide&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?zoom=wide&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-7010L=&lt;br /&gt;
&lt;br /&gt;
Change in video settings of the camera the mode to MPEG4 and restart the device.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: RTSP&lt;br /&gt;
Remote Method: RTP/Unicast&lt;br /&gt;
Remote Host Port: 554&lt;br /&gt;
Remote Host Name: &amp;lt;IP Address of Camera&amp;gt; (RTSP authentication didn&amp;#039;t work with this method)&lt;br /&gt;
Remote Host Path: /live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: Ffmpeg&lt;br /&gt;
Remote Host Path: rtsp://&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp&lt;br /&gt;
Remote Host Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp (when RTSP authentication is enabled)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: HTTP&lt;br /&gt;
Remote Host Port: 80&lt;br /&gt;
Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /video1.mjpg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-7110=&lt;br /&gt;
&lt;br /&gt;
Device&amp;#039;s web server gives example code for various setups.  Verified 2012-12-08.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* http://&amp;lt;cam-ip&amp;gt;:80/cgi-bin/viewer/video.jpg?streamid=0&amp;amp;quality=5 // single-shot jpg image&lt;br /&gt;
* rtsp://&amp;lt;cam-ip&amp;gt;:554/live.sdp // feeds VLC&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Incompatible Hardware=&lt;br /&gt;
&lt;br /&gt;
I know that the DCS-1110 is not compattible with ZoneMinder, as it requires ActiveX to recive the MJpeg stream.&lt;br /&gt;
&lt;br /&gt;
If you know of other DLink cameras that don&amp;#039;t work, please add them to the list!&lt;br /&gt;
&lt;br /&gt;
DCS-950 not compatible.  Mpeg stream.  Authentication is OCX application based, not web standard authentication.  JPG file generated at random url, not predictable.[http://www.blognesian.com/ ]&lt;br /&gt;
&lt;br /&gt;
[[Category:Cameras]]&lt;br /&gt;
[[Category:Network Cameras]]&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=CentOS&amp;diff=6036</id>
		<title>CentOS</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=CentOS&amp;diff=6036"/>
		<updated>2013-12-26T12:29:54Z</updated>

		<summary type="html">&lt;p&gt;Duli: /* ZoneMinder 1.26.x */ Added reference to pt_BR install instructions.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The intent of this walk through is to install a very base/bare bones installation of CentOS that runs only ZoneMinder. This would be for a dedicated ZoneMinder server with no GUI or any unnecessary services running. The reason for the very light-weight installation is to make the majority of system resources available to ZoneMinder, not the OS. With this installation, memory is reduced to around 140-160MB, and CPU usage is practically nonexistent. The CentOS base installation is very easy to install and doesn’t take too much time as long as you have some type of broadband connection. There are many ways to install CentOS, but this article covers only two, because they are related.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;All CLI operations/commands in this How-To are done as root, in the /root directory. The reasoning is that this system would be in a secure environment to begin with. However, if you need to add a user to run these services to better secure the system, then you can, but keep in mind that some items must run as root.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== CentOS 5.6 &amp;amp; ZoneMinder 1.25.0 ==&lt;br /&gt;
This guide is for CentOS v5.6 (&amp;lt;b&amp;gt;Notes for using this guide with CentOS 6 are in chapter 2.&amp;lt;/b&amp;gt;) with ZoneMinder v1.25.0 which are the newest released versions as of this update (Summer 2011).  If you are attempting to install newer versions of either using this guide, you will have to adjust file and directory names denoted below. &lt;br /&gt;
&lt;br /&gt;
=== Step One - Get CentOS ===&lt;br /&gt;
You can download the “.iso” file(s) for CentOS from http://www.centos.org/&amp;lt;br/&amp;gt;&lt;br /&gt;
Alternatively download the net-install version of CentOS which is basically just the first CD.&lt;br /&gt;
Here is one location to download the net-install version:&amp;lt;br/&amp;gt;&lt;br /&gt;
Download i386: http://mirror.chpc.utah.edu/pub/centos/5.6/isos/i386/CentOS-5.6-i386-netinstall.iso&amp;lt;br/&amp;gt;&lt;br /&gt;
Download 64 bit: http://centos.cs.wisc.edu/pub/mirrors/linux/centos/5.6/isos/x86_64/CentOS-5.6-x86_64-netinstall.iso&amp;lt;br/&amp;gt;&lt;br /&gt;
Mirrors List: http://www.centos.org/mirrors/&lt;br /&gt;
&lt;br /&gt;
=== Step Two - Installation Source ===&lt;br /&gt;
Regardless of which method you use, the next few steps are the same.&amp;lt;br/&amp;gt;&lt;br /&gt;
Begin by booting your system up with either cd/dvd.&amp;lt;br/&amp;gt;&lt;br /&gt;
Choose the options that best fit your environment until you reach the “Installation Method”. &lt;br /&gt;
&lt;br /&gt;
[[Image:centosnetinstal-http.png]]&lt;br /&gt;
&lt;br /&gt;
Choose &amp;#039;&amp;#039;&amp;#039;HTTP&amp;#039;&amp;#039;&amp;#039; ONLY if you are using the net-install method.  Otherwise, you probably want to choose &amp;#039;&amp;#039;&amp;#039;Local CDROM&amp;#039;&amp;#039;&amp;#039;. &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are using the net-install method then enter:&amp;lt;br/&amp;gt;&lt;br /&gt;
Website Name: &amp;#039;&amp;#039;&amp;#039;mirror.centos.org&amp;#039;&amp;#039;&amp;#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
CentOS Directory: (for i386) &amp;#039;&amp;#039;&amp;#039;/centos/5.6/os/i386&amp;#039;&amp;#039;&amp;#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
CentOS Directory: (for 64 bit) &amp;#039;&amp;#039;&amp;#039;/centos/5.6/os/x86_64&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== Step Three - Installation Packages ===&lt;br /&gt;
On the first screen, un-check &amp;quot;Desktop - Gnome&amp;quot; then check &amp;quot;Server&amp;quot; (not Server-GUI)&amp;lt;br/&amp;gt;&lt;br /&gt;
Make sure that you have &amp;quot;Customize now&amp;quot; selected at the bottom. (do not check &amp;quot;Packages from CentOS Extras&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
[[Image:centosinstall-packages1.png]]&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Next&amp;quot; to continue&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once presented with the custom package selection, un-check/check the following:&lt;br /&gt;
 Applications = Check only &amp;quot;Editors&amp;quot; and &amp;quot;Text Based Internet&amp;quot;&lt;br /&gt;
 Development = Check only &amp;quot;Development Libraries&amp;quot; and &amp;quot;Development Tools&amp;quot;&lt;br /&gt;
 Servers = Un-check everything&lt;br /&gt;
 Base System = Check only &amp;quot;Base&amp;quot; (you can check Administration Tools and System Tools if you need them, but they are not necessary)&lt;br /&gt;
&lt;br /&gt;
[[Image:Centosinstall-packages2.png]]&lt;br /&gt;
&lt;br /&gt;
Now let the system finish the installation.&lt;br /&gt;
&lt;br /&gt;
[[Image:centosisntall-end.png]]&lt;br /&gt;
&lt;br /&gt;
=== Step Four - Configuration ===&lt;br /&gt;
After the first reboot, the setup screen should appear. If not, log into the system and type &amp;quot;setup&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Image:centosinstall-setup1.png]]&lt;br /&gt;
&lt;br /&gt;
Select &amp;quot;Firewall Configuration&amp;quot; and set the &amp;quot;Security Level&amp;quot; and &amp;quot;SELinux&amp;quot; to &amp;quot;Disabled.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Image:centosinstall-setup2.png]]&lt;br /&gt;
&lt;br /&gt;
Next, we are going to disable a number of system services. Go back to the setup screen and select &amp;quot;System Services&amp;quot;&amp;lt;br/&amp;gt;&lt;br /&gt;
Un-Check:&lt;br /&gt;
 apmd&lt;br /&gt;
 bluetooth&lt;br /&gt;
 cups&lt;br /&gt;
 hidd&lt;br /&gt;
 ip6tables&lt;br /&gt;
 iptables&lt;br /&gt;
 netfs&lt;br /&gt;
 nfslock&lt;br /&gt;
 pcscd&lt;br /&gt;
 portmap&lt;br /&gt;
After disabling the services, select &amp;quot;Disable Now and On Boot&amp;quot;, exit the setup tool, and log into the system if you haven&amp;#039;t already.&lt;br /&gt;
*Screen is a simple program that allows you to run commands from a &amp;quot;Hosted&amp;quot; command line interface. This helps if you loose your connection to the server for any reason in that it enables you to resume (screen -r) right where you left off. Often times, I will start a large update/upgrade, leave it for the day, then come back and see where it&amp;#039;s at later. Screen allows you to do that without having to be connected.&lt;br /&gt;
*Install Screen&lt;br /&gt;
 yum install screen&lt;br /&gt;
*To start a screen session just type&lt;br /&gt;
 screen&lt;br /&gt;
*If you get disconnected and need to resume your session of screen simply type&lt;br /&gt;
 screen -r&lt;br /&gt;
&lt;br /&gt;
=== Step Five - Installing ZoneMinder 1.25.0 ===&lt;br /&gt;
First, we need to download files and prepare the system&lt;br /&gt;
*Add the RPM Forge repository to CentOS. This will allow the installation of a number of services/applications later without having to manually install them.&lt;br /&gt;
&amp;lt;pre&amp;gt;# For i386 CentOS 5.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm&lt;br /&gt;
&lt;br /&gt;
# For 64 bit CentOS 5.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Download the needed files, ZoneMinder 1.25.0 and the Cambozola addon&lt;br /&gt;
 wget http://www2.zoneminder.com/downloads/ZoneMinder-1.25.0.tar.gz&lt;br /&gt;
 wget http://www.zoneminder.com/sites/zoneminder.com/downloads/cambozola.jar&lt;br /&gt;
*Now let&amp;#039;s install all the services and programs that will be needed (&amp;#039;&amp;#039;If you encounter any dependency errors using yum, try running &amp;#039;&amp;#039;&amp;#039;yum clean all&amp;#039;&amp;#039;&amp;#039; then re-try the install command(s).&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
*tip: Copy/paste two lines at a time&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum -y install mysql mysql-server mysql-devel php php-gd php-mysql httpd gcc \&lt;br /&gt;
pcre-devel gd mod_ssl glib2-devel gcc-c++ ntp gnutls-devel ImageMagick&lt;br /&gt;
&lt;br /&gt;
yum -y install libjpeg-devel perl-Archive-Tar perl-MIME-Lite perl-MIME-tools \&lt;br /&gt;
perl-Date-Manip perl-LWP-UserAgent-Determined&lt;br /&gt;
&lt;br /&gt;
yum -y install perl-PHP-Serialization perl-Device-SerialPort perl-Archive-Zip perl-Sys-Mmap \&lt;br /&gt;
perl-Module-Load subversion git yasm bzip2 bzip2-devel bzip2-libs lbzip2&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Now let&amp;#039;s update everything within the new CentOS install&lt;br /&gt;
 yum -y update&lt;br /&gt;
*At this point, it might be useful to reboot your system. Oddly, sometimes things don&amp;#039;t work right unless you reboot after all the updates&lt;br /&gt;
 reboot   -or-   shutdown -r now&lt;br /&gt;
*After rebooting, log into your system&lt;br /&gt;
==== Install ffmpeg ====&lt;br /&gt;
*Now we need to make sure we use the latest &amp;quot;tested&amp;quot; version of &amp;quot;ffmpeg&amp;quot;. This is the latest version of ffmpeg that the ZoneMinder developers have tested with.  Download, compile and install ffmpeg:&lt;br /&gt;
&amp;lt;pre&amp;gt;git clone git://git.videolan.org/ffmpeg.git&lt;br /&gt;
cd ffmpeg&lt;br /&gt;
./configure --enable-gpl --enable-shared --enable-pthreads&lt;br /&gt;
make &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The following commands must be done as &amp;#039;&amp;#039;&amp;#039;root&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make install &lt;br /&gt;
make install-libs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
edit /etc/ld.so.conf and add the line &amp;quot;/usr/local/lib&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldconfig -v&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Next, run &amp;#039;ffmpeg&amp;#039; from the command line. Make sure you do not get any errors:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ffmpeg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*If &amp;#039;ffmpeg&amp;#039; runs correctly, you&amp;#039;ll see something similar to this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ffmpeg version N-32260-gaebb56e, Copyright (c) 2000-2011 the FFmpeg developers&lt;br /&gt;
  built on Aug 31 2011 21:41:49 with gcc 4.1.2 20080704 (Red Hat 4.1.2-50)&lt;br /&gt;
  configuration: --enable-shared --enable-swscale --enable-gpl --enable-pthreads&lt;br /&gt;
  libavutil    51. 14. 0 / 51. 14. 0&lt;br /&gt;
  libavcodec   53. 12. 0 / 53. 12. 0&lt;br /&gt;
  libavformat  53. 10. 0 / 53. 10. 0&lt;br /&gt;
  libavdevice  53.  3. 0 / 53.  3. 0&lt;br /&gt;
  libavfilter   2. 37. 0 /  2. 37. 0&lt;br /&gt;
  libswscale    2.  0. 0 /  2.  0. 0&lt;br /&gt;
  libpostproc  51.  2. 0 / 51.  2. 0&lt;br /&gt;
Hyper fast Audio and Video encoder&lt;br /&gt;
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...&lt;br /&gt;
&lt;br /&gt;
Use -h to get full help or, even better, run &amp;#039;man ffmpeg&amp;#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Enable services ====&lt;br /&gt;
*Turn everything on.  These commands must be run as root.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 chkconfig httpd on &lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig ntpd on &lt;br /&gt;
 service httpd start &lt;br /&gt;
 service mysqld start &lt;br /&gt;
 service ntpd start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== Install Zoneminder ====&lt;br /&gt;
*Next, we need to extract the contents of the ZoneMinder &amp;quot;tar&amp;quot; file, then jump into its directory.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 cd /root/  # Or your work directory for this installation&lt;br /&gt;
 tar -zxvf ZoneMinder-1.25.0.tar.gz&lt;br /&gt;
 cd ZoneMinder-1.25.0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Now we are going to configure ZoneMinder with some additional parameters. What is listed are the default CentOS directory locations.&lt;br /&gt;
 ./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin&lt;br /&gt;
&lt;br /&gt;
Note: It seems for Zoneminder to build with newer versions of ffmpeg, (certainly 0.6.3) you&amp;#039;ll need to append CPPFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot; to the end of the&lt;br /&gt;
./configure line thus:&lt;br /&gt;
&lt;br /&gt;
 ./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-ffmpeg=/usr/local/share/ffmpeg CPPFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot;&lt;br /&gt;
&lt;br /&gt;
There is a section in the FAQ &amp;#039;&amp;#039;&amp;quot;When running configure, I get a lot of messages about not being able to compile the ffmpeg libraries&amp;quot;&amp;#039;&amp;#039; about this [[http://www.zoneminder.com/wiki/index.php/FAQ]].&lt;br /&gt;
&lt;br /&gt;
Worth mentioning here is the section in the FAQ under the heading &amp;quot;&amp;#039;&amp;#039;My load is too high, how can I reduce it?&amp;#039;&amp;#039;&amp;quot; [[http://www.zoneminder.com/wiki/index.php/FAQ]]. This descibes how you can possibly reduce CPU load by half by &lt;br /&gt;
changing the system&amp;#039;s jpeg libraries and building Zoneminder with processor specific instructions.  &lt;br /&gt;
Since CentOS 6.4 CentOS now comes with libjpeg_turbo as the standard JPEG library leading to a more optimised Zoneminder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By default ZM_DB_HOST=localhost, ZM_DB_NAME=zm, ZM_DB_USER=zmuser, and ZM_DB_PASS=zmpass.&lt;br /&gt;
*Change &amp;quot;zmuser&amp;quot; (if you want) with the user that you will use within MySQL to access the ZoneMinder database&lt;br /&gt;
*Change &amp;quot;zmpass&amp;quot; with the password you will be using with the &amp;quot;zmuser&amp;quot; account&lt;br /&gt;
So if you wish to change it, use a command like:&lt;br /&gt;
 ./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=zmuser ZM_DB_PASS=zmpass&lt;br /&gt;
&lt;br /&gt;
*if you get the configure &amp;quot;error zm requires libmysqlclient.a&amp;quot; with 64 bit CentOS add the following to the end of your configure statement&lt;br /&gt;
  --with-extralibs=&amp;quot;-L/usr/lib64 -L/usr/lib64/mysql&amp;quot;&lt;br /&gt;
&lt;br /&gt;
e.g. For CentOS 5.6 64-bit with support for ffmpeg.  The whole command must be executed on one line.  Make sure to change the &amp;#039;&amp;#039;&amp;#039;zmpass&amp;#039;&amp;#039;&amp;#039; to a password that matches your installation.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-ffmpeg=/usr/local/share/ffmpeg --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=zmuser ZM_DB_PASS=zmpass --with-extralibs=&amp;quot;-L/usr/lib64 -L/usr/lib64/mysql&amp;quot; CXXFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; and &amp;#039;&amp;#039;&amp;#039;make install&amp;#039;&amp;#039;&amp;#039; after running the configuration steps above.&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
 # Run the next command as root&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
==== Configure MySQL ====&lt;br /&gt;
*Need to add a password for the root user of MySQL&lt;br /&gt;
*Create the zm database&lt;br /&gt;
*Create the zm database user with permissions and password&lt;br /&gt;
 mysql&lt;br /&gt;
 mysql&amp;gt; SET PASSWORD FOR root@localhost=PASSWORD(&amp;#039;new_root_password&amp;#039;);&lt;br /&gt;
&amp;gt;Query OK, 0 rows affected (0.00 sec)&lt;br /&gt;
 mysql&amp;gt; create database zm;&lt;br /&gt;
&amp;gt;Query OK, 1 row affected (0.01 sec)&lt;br /&gt;
 mysql&amp;gt; CREATE USER &amp;#039;your_zm_user&amp;#039;@&amp;#039;localhost&amp;#039; IDENTIFIED BY &amp;#039;your_zm_password_from_above&amp;#039;;&lt;br /&gt;
Query OK, 0 rows affected (0.01 sec)&lt;br /&gt;
 mysql&amp;gt; grant CREATE, INSERT, SELECT, DELETE, UPDATE on zm.* to your_zm_user@localhost;&lt;br /&gt;
&amp;gt;Query OK, 0 rows affected (0.02 sec)&lt;br /&gt;
 mysql&amp;gt; exit&lt;br /&gt;
&amp;gt;Bye&lt;br /&gt;
*Import the tables into the zm database&lt;br /&gt;
 cd /root/ZoneMinder-1.25.0 &lt;br /&gt;
 mysql -u root -p zm &amp;lt; db/zm_create.sql&lt;br /&gt;
&lt;br /&gt;
==== Finalize Installation of ZoneMinder ====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;All remaining CLI commands need to be run as root.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Make ZoneMinder startup automatically after a reboot&lt;br /&gt;
 # from the ZoneMinder-1.25 source directory&lt;br /&gt;
 cp scripts/zm /etc/init.d/&lt;br /&gt;
 chmod +x /etc/init.d/zm&lt;br /&gt;
 chkconfig zm on&lt;br /&gt;
*Add the Cambozola Java web interface&lt;br /&gt;
 cp cambozola.jar /var/www/html/zm/&lt;br /&gt;
*Make sure you have permission to view it from apache:&lt;br /&gt;
 chown apache:apache /var/www/html/zm/cambozola.jar&lt;br /&gt;
*Start ZoneMinder&lt;br /&gt;
 service zm start&lt;br /&gt;
&lt;br /&gt;
Note: You may get an error when you try to start Zoneminder using the &amp;#039;zm&amp;#039; startup script as per this forum post: [[http://www.zoneminder.com/forums/viewtopic.php?f=21&amp;amp;t=17827]] .&lt;br /&gt;
The reason for this was the default &amp;#039;zm&amp;#039; startup script was formatted with DOS line endings. If you get the errors as detailed in the above post then the fix is to convert the &lt;br /&gt;
&amp;#039;zm&amp;#039; file to use UNIX style line endings. You can do this in the Vim text editor whilst editing the &amp;#039;zm&amp;#039; file thus: &amp;#039;:set fileformat=unix&amp;#039; then save the file &amp;#039;:wq&amp;#039;. You can also &lt;br /&gt;
use the utility dos2unix to convert the file. &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
* tick the box for support for the Cambozola addon within your ZoneMinder installation: http://ip-address/zm (Options-&amp;gt;Images&amp;amp;nbsp;tab-&amp;gt;OPT_CAMBOZOLA)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now have fun and add your cameras to ZoneMinder knowing you now have a very stable and streamlined OS to run it on.&lt;br /&gt;
&lt;br /&gt;
== CentOS 6 Notes ==&lt;br /&gt;
&lt;br /&gt;
The installation for CentOS 6 is pretty much the same.&lt;br /&gt;
Download CentOS 6 minimal installation ISO (CentOS-6.0-i386-minimal.iso – 257MB).  Burn to CD and install. We only want to be running in console text mode not GUI graphics mode. During installation configure network and tick to enable network adapter.&lt;br /&gt;
* Login as root and update the base install:&lt;br /&gt;
&amp;lt;pre&amp;gt;yum -y update&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Install required packages, other useful packages, and their dependencies&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum groupinstall core&lt;br /&gt;
yum groupinstall base&lt;br /&gt;
yum install gcc gcc-c++ wget bison mysql-devel mysql-server php php-mysql php-pear php-pear-DB php-mbstring \&lt;br /&gt;
nano tftp-server httpd make ncurses-devel libtermcap-devel sendmail sendmail-cf caching-nameserver \&lt;br /&gt;
sox newt-devel libxml2-devel libtiff-devel php-gd audiofile-devel gtk2-devel subversion nano kernel-devel \&lt;br /&gt;
bison-devel ncurses zlib zlib-devel openssl openssl-devel gnutls-devel php-process perl-Time-HiRes&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suggestion:&lt;br /&gt;
To remove various configure/make errors in Centos 6.2, you may also want to install:&amp;lt;pre&amp;gt;&lt;br /&gt;
bzip2-libs ffmpeg-devel ffmpeg-php perl-Net-SFTP-Foreign perl-Expect perl-LWPx-ParanoidAgent.x86_64&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we continue from step four (4).&lt;br /&gt;
==== Installation of ZoneMinder ====&lt;br /&gt;
* In step five (5) the correct RPM Forge repository is:&lt;br /&gt;
&amp;lt;pre&amp;gt;# For i686 CentOS 6.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.i686.rpm&lt;br /&gt;
&lt;br /&gt;
# For 64 bit CentOS 6.x run:&lt;br /&gt;
rpm -Uhv http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In step five (5) the command that seems to configure zoneminder correctly is:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CXXFLAGS=-D__STDC_CONSTANT_MACROS ./configure --with-webdir=/var/www/html/zm \&lt;br /&gt;
 --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache \&lt;br /&gt;
ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=your_zm_user ZM_DB_PASS=your_zm_password ZM_SSL_LIB=openssl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suggestion:&lt;br /&gt;
For Centos 6.2, I used the following configure string for success:&amp;lt;pre&amp;gt;&lt;br /&gt;
./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=&amp;lt;zm user&amp;gt; ZM_DB_PASS=&amp;lt;zm user passwd&amp;gt; ZM_SSL_LIB=openssl  --with-extralibs=&amp;quot;-L/usr/lib64 -L/usr/lib64/mysql&amp;quot; --with-ffmpeg=/usr/share/ffmpeg  CXXFLAGS=&amp;quot;-D__STDC_CONSTANT_MACROS&amp;quot; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting FFmpeg Errors Building ZoneMinder ====&lt;br /&gt;
Using the git version of FFmpeg can cause the ZoneMinder make process to fail with unresolved symbols in ffmpeg. To remedy this, use version 0.6.5 of FFmpeg with the same configure instructions as the normal install above.&lt;br /&gt;
FFmpeg 0.6.5: http://ffmpeg.org/releases/ffmpeg-0.6.5.tar.bz2&lt;br /&gt;
==== Troubleshooting Blank Page ====&lt;br /&gt;
If everything went ok but when accessing zoneminder&amp;#039;s web page at http://localhost/zm, the page is blank this means that there is a problem with PHP short tags. Edit setting short_open_tag in php.ini (/etc/php.ini) and change it to On.&lt;br /&gt;
* Restart apache server with:&lt;br /&gt;
&amp;lt;pre&amp;gt;service httpd restart&amp;lt;/pre&amp;gt; and you should be up and running.&lt;br /&gt;
==== Trouble shooting full drive with CentOS 6 ====&lt;br /&gt;
The default drive structure has chaned from that of CentOS 5 having the full drive allocated to the /root partition. CentOS 6 by default makes a logical volume &amp;#039;LVM&amp;#039; of 10% your drives space for the /root partition and the remaining drive as the /home partion with the exception of the swap and boot partitions.&lt;br /&gt;
&lt;br /&gt;
The will cause Zoneminder to fill the /root partition as the /var/www/html/zm/events directory is by default located here, you can use the system-config-lvm utility to re-adjust this partition balance if your system has been installed with the default partition structure.&lt;br /&gt;
&lt;br /&gt;
It is best to install CentOS 6 with a custom partition layout that is the same as CentOS 5 structure, you can also if using a single physical had drive do with out the LVM drives and create an EXT4 /root partion along with the standard /boot and /swap partitions.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[== &amp;#039;&amp;#039;&amp;#039;P.S.&amp;#039;&amp;#039;&amp;#039; ==]] aspcicc@jumpy.it&lt;br /&gt;
(Update: This does not appear to be required any more.)&lt;br /&gt;
&lt;br /&gt;
Hi! and thanks for your guide.. i want to add a little correction that have made me crazy to resolve, when I poweroff or reboot system i obtain an error related to mysql database and i have    understood that the problem was because mysqld is stopped before zoneminder to be more specific there isn&amp;#039;t a link under rc0.d (halt) and rc6.d (reboot) to zoneminder that for this lack is simply killed by killall. To resolve this problem you need to add at the start of zm (under /etc/init.d) the line&lt;br /&gt;
&lt;br /&gt;
 &amp;#039; # chkconfig: 345 99 01 &amp;#039;  (without &amp;#039; of course)&lt;br /&gt;
&lt;br /&gt;
and then run &lt;br /&gt;
chkconfig --level 345 zm on&lt;br /&gt;
chkconfig --level 06 zm off&lt;br /&gt;
&lt;br /&gt;
So the link to shutdown zm is created under rc0.d and rc6.d and zoneminder is started at the end of poweron and stopped at the beginning of the poweroff&lt;br /&gt;
&lt;br /&gt;
For information about priority starting and stopping processes see: http://www.netadmintools.com/art94.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Added Dependency: ImageMagick&lt;br /&gt;
&lt;br /&gt;
Removed Dependency: perl-Time-HiRes, which causes a conflict with the default perl package.&lt;br /&gt;
&lt;br /&gt;
Also, mysql seems to install with no password for the root user, and the zm DB create script creates the database on the fly, which means that the database create command needs to have the &amp;quot;-p zm&amp;quot; removed from the command line.&lt;br /&gt;
&lt;br /&gt;
Could someone verify that this is correct, to make sure it&amp;#039;s not just something I missed?&lt;br /&gt;
&lt;br /&gt;
Thanks! &lt;br /&gt;
terry@cnysupport.com&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Struggling to get x264 and ffmpeg working?  I used the latest SVN versions not the Centos packages.  But I was getting&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;ffmpeg: error while loading shared libraries: libavdevice.so.53: cannot open shared object file: No such file or directory&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
I followed these instructions:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;cd /etc/ld.so.conf.d&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* add another file:  custom-libs.conf&lt;br /&gt;
* inside, put :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;/usr/local/lib&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* save the file&lt;br /&gt;
* run ldconfig&lt;br /&gt;
&amp;lt;pre&amp;gt;ldconfig&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
BeeryGaz&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==== Failed monitors or ZM refusing to start ====&lt;br /&gt;
A problem that took me some time to figure out on two installations was SElinux.&lt;br /&gt;
SElinux stops Zoneminder from accessing some system parts or doing some functions so will cause various errors or simply drive you nuts trying to figure out.&lt;br /&gt;
&lt;br /&gt;
Look at the following page on how to disable SElinux or use permissive mode.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;http://www.centos.org/docs/5/html/5.2/Deployment_Guide/sec-sel-enable-disable.html&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some of the errors that I was getting with a fresh install on CentOS 6 was&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2013-02-16 16:13:10.828590	zmwatch	14898	ERR	Can&amp;#039;t open memory map file &amp;#039;/dev/shm/zm.mmap.1&amp;#039;: No such file or directory	zmwatch.pl	&lt;br /&gt;
2013-02-16 16:13:10.736988	zmfix	15317	ERR	Can&amp;#039;t stat /dev/video0: Permission denied	zmfix.cpp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
== ZoneMinder 1.26.x ==&lt;br /&gt;
&lt;br /&gt;
Zoneminder after a long period of none development is now being developed by the community, these notes are to try and help with the installation of the new release on CentOS 5 and CentOS 6.&lt;br /&gt;
All testing has been done on a CentOS 6.4 fresh install server.&lt;br /&gt;
&lt;br /&gt;
=== Cmake installation notes ===&lt;br /&gt;
&lt;br /&gt;
Compiling of Zoneminder can now be done with the &amp;#039;Cmake&amp;#039; command in replacement of the ./configure command this should automatically configure the build with the minimum of parameters. The &amp;#039;Cmake&amp;#039; command at time of writing produced a partially working installation with the main files installed into /usr/local/bin/zoneminder and associated folders, different from the above guides.&lt;br /&gt;
&lt;br /&gt;
The webfiles require to be linked via a zoneminder.conf file located with in the /disto/redhat directory inside the build directory that requires to be coped to the /etc/httpd/conf.d directory, this will need to be edited to the correct location of the webfiles and remove the local only command as indicated with in the file.&lt;br /&gt;
&lt;br /&gt;
The Cmake install failed to use my BTTV capture card producing various errors with a potential solution given here &amp;lt;pre&amp;gt;http://www.zoneminder.com/forums/viewtopic.php?f=30&amp;amp;t=21709&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== ./configure compile ===&lt;br /&gt;
&lt;br /&gt;
To install via the traditional ./configure method you first need to run the ./bootstrap.sh file to generate the required configure file, the install can then progress as the above installation guides.&lt;br /&gt;
&lt;br /&gt;
This method has produced a fully working installation at time of writing.&lt;br /&gt;
&lt;br /&gt;
== pt_BR Instructions ==&lt;br /&gt;
&lt;br /&gt;
Here is a good walkthrough install of zoneminder in CentOS using the rpm package method. It is intended to Portuguese  (pt or pt_BR) audience.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;http://dulimind.blogspot.com.br/2013/12/zoneminder-no-centos-6.html&amp;lt;/pre&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[Categories: Linux distributions]]&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=D-Link&amp;diff=5763</id>
		<title>D-Link</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=D-Link&amp;diff=5763"/>
		<updated>2013-07-02T02:33:56Z</updated>

		<summary type="html">&lt;p&gt;Duli: /* DCS-930L / 932L */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DLink is a supplier of several IP Cameras. Not all work with ZoneMinder.&lt;br /&gt;
DCS-1000(W) and DCS-900 - plus other D-Link IP models (This have been hit and miss, not all work with ZM. A partial list of unsupported cameras are inside).&lt;br /&gt;
&lt;br /&gt;
=DCS-900=&lt;br /&gt;
[[Image:DCS900.png]]&lt;br /&gt;
&lt;br /&gt;
There are 2 versions of this camera. The &amp;quot;A&amp;quot; version is reported to work extremely well with ZoneMinder. The &amp;quot;B&amp;quot; version also works, but has a been reported to have lesser performance. I have been able to get upto 8 fps with my revision &amp;quot;B&amp;quot; camera.&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /VIDEO.CGI or /IMAGE.JPEG &lt;br /&gt;
 (/VIDEO.CGI is the MJpeg stream, and gets higher FPS in my testing)&lt;br /&gt;
&lt;br /&gt;
With version A2&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP_Address_of_Camera&amp;gt; (user:pass@192.168.0.5)&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: VIDEO.CGI &lt;br /&gt;
&lt;br /&gt;
With the latest versions of the DCS-900 &amp;quot;B&amp;quot; there is an additional step needed in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
=DCS-910 / 920=&lt;br /&gt;
[[Image:DCS-910.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /VIDEO.CGI? for stream&lt;br /&gt;
&lt;br /&gt;
There is the same aditional step as in DCS-900B, in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-930L / 932L=&lt;br /&gt;
[[Image:DCS-930L.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi&lt;br /&gt;
&lt;br /&gt;
Additionally MJPEG stream avaliable at: /MJPEG.CGI but next step is required for it, in the &amp;quot;Options &amp;gt; Network&amp;quot; section of ZoneMinder.&lt;br /&gt;
 ZM_NETCAM_REGEXPS Value = (no-checkmark)&lt;br /&gt;
&lt;br /&gt;
For the &amp;#039;&amp;#039;&amp;#039;DCS-932L&amp;#039;&amp;#039;&amp;#039; also works:&lt;br /&gt;
&lt;br /&gt;
 Remote Host Path: /video.cgi&lt;br /&gt;
&lt;br /&gt;
Using /mjpeg.cgi gives a lot of erros in the log files:&lt;br /&gt;
&lt;br /&gt;
 ERR [Invalid JPEG file structure: two SOI markers]&lt;br /&gt;
 ERR [Unable to decode jpeg]&lt;br /&gt;
&lt;br /&gt;
=DCS-1100=&lt;br /&gt;
[[File:dcs-1100.jpg|100px]]&lt;br /&gt;
 Source Type: Remote &lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Method: Simple&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default) &lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi?profileid=3&lt;br /&gt;
&lt;br /&gt;
Where Profileid is setup in the camara&amp;#039;s setup interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2100+, DCS-2100G=&lt;br /&gt;
[[Image:DSC2100plus.jpg]][[Image:DCS2100g.jpg]]&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
Note: you must change Network -&amp;gt; ZM_HTTP_VERSION option to 1.0 for this camera to work!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2120=&lt;br /&gt;
[[Image:DCS2100g.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2121=&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: username:password@cam_ip&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi?profileid=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-2130=&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: username:password@cam_ip&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi?profileid=1&lt;br /&gt;
&lt;br /&gt;
=DCS-2210=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
(Change in video settings of the camera the mode to MPEG4 first)&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: RTSP&lt;br /&gt;
Remote Method: RTP/Unicast&lt;br /&gt;
Remote Host Port: 554&lt;br /&gt;
Remote Host Name: &amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: Ffmpeg&lt;br /&gt;
Remote Host Path: rtsp://&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
(Change in video settings of the camera the mode to MPEG4 first)&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: HTTP&lt;br /&gt;
Remote Host Port: 80&lt;br /&gt;
Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /video1.mjpg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-3220=&lt;br /&gt;
[[Image:DCS-3220.jpg]]&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-3410=&lt;br /&gt;
&lt;br /&gt;
[[Image:DSC-3410.jpg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
&lt;br /&gt;
 RTSP&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;/play1.sdp (or play2.sdp)&lt;br /&gt;
&lt;br /&gt;
ZoneMinder 1.24.2 (Haven&amp;#039;t tried earlier versions)&lt;br /&gt;
&lt;br /&gt;
Tried it with just admin:@&amp;lt;IP Address of Camera&amp;gt;  without password before setting camera password and it worked. Created an account with a password, tried that and it also worked.&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 caught that from tcpdump, suspect the numbers are resolution but don&amp;#039;t seem to have any affect.&lt;br /&gt;
&lt;br /&gt;
Seems like it&amp;#039;s operating in factory default Profile 3, 704x480 10fps jpeg. Haven&amp;#039;t found a way to change the Profile used yet. Could only pull about 22fps when camera was set to 30fps (mjpeg) so opted to set camera to 15fps.&lt;br /&gt;
&lt;br /&gt;
RTSP works with ffmpeg as above pulling 30fps when camera set to 30fps for that Profile but could not get it working with Source Type Remote and Remote Protocol RTSP.&lt;br /&gt;
&lt;br /&gt;
Looks like Audio is at /audio/ACAS.cgi but haven&amp;#039;t done anything with that.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-3710=&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video2.mjpg (for stream 2)&lt;br /&gt;
&lt;br /&gt;
ZoneMinder 1.24.3 (Haven&amp;#039;t tried earlier versions)&lt;br /&gt;
&lt;br /&gt;
Video profile mode must be set to JPEG.&lt;br /&gt;
&lt;br /&gt;
=DCS-5222L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DSC-5222L.jpg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi (for jpeg stream)&lt;br /&gt;
&lt;br /&gt;
The jpeg and the mjpeg both output at the resolution specified for &amp;quot;video profile 3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 RTSP&lt;br /&gt;
 Source Type: ffmpeg&lt;br /&gt;
 Source Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;/play1.sdp (or play2.sdp)&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 might catch other profiles by using this URL&lt;br /&gt;
&lt;br /&gt;
Looks like Audio is at /audio/ACAS.cgi but haven&amp;#039;t done anything with that.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-5300G=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-5300G.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /cgi-bin/video.jpg&lt;br /&gt;
&lt;br /&gt;
Note: you must change Network -&amp;gt; ZM_HTTP_VERSION option to 1.0 for this camera to work!&lt;br /&gt;
&lt;br /&gt;
=DCS-6010L=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-6010.jpeg]]&lt;br /&gt;
&lt;br /&gt;
 HTTP&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Path: /video/mjpg.cgi (for mjpeg stream)&lt;br /&gt;
 Remote Host Path: /image/jpeg.cgi (for jpeg stream)&lt;br /&gt;
&lt;br /&gt;
The jpeg and the mjpeg both output at the resolution specified for &amp;quot;video profile 3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
May need /video/mjpg.cgi?profileid=3 might catch other profiles by using this URL&lt;br /&gt;
&lt;br /&gt;
=DCS-6111=&lt;br /&gt;
 &lt;br /&gt;
[[File:DCS6111.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Path: (stream 1): /video.mjpg &lt;br /&gt;
 Remote Host Path: (stream 2): /video2.mjpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=DCS-1000=&lt;br /&gt;
&lt;br /&gt;
[[File:DCS-1000_left.png]]&lt;br /&gt;
&lt;br /&gt;
 Source Type: Remote&lt;br /&gt;
 Remote Protocol: HTTP&lt;br /&gt;
 Remote Host Port: 80 (Default)&lt;br /&gt;
 Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
 Remote Host Path: VIDEO.CGI (You must upgrade the firmware on the camera to 1.30 for this to work. Try this [http://www.dlink.co.uk/cs/Satellite?c=TechSupport_C&amp;amp;childpagename=DLinkEurope-GB%2FDLTechProduct&amp;amp;cid=1197319187751&amp;amp;p=1197318962293&amp;amp;packedargs=locale%3D1195806691854&amp;amp;pagename=DLinkEurope-GB%2FDLWrapper site] for the firmware and the ipview software to install the firmware.)&lt;br /&gt;
&lt;br /&gt;
=DCS-6620G=&lt;br /&gt;
&lt;br /&gt;
[[Image:DCS-6620G.jpg]]&lt;br /&gt;
&lt;br /&gt;
 Source type: Remote&lt;br /&gt;
 Remote Host Name: IP Address of Camera&lt;br /&gt;
 Remote Host Port: 80 (Default) or the non-default port assigned to the camera in your network&lt;br /&gt;
 Remote host Path: /cgi-bin/video.jpg&lt;br /&gt;
 Control script: download at www.condrau.com/download/zmcontrol-dcs6620g.pl&lt;br /&gt;
&lt;br /&gt;
The control script supports all controls for this camera, but it can be used for other D-Link and Vivotek cameras as well. I verified it with DCS-6620 and Vivotek&amp;#039;s PT7137, as the software is compatible with these 2 cameras. It should also work with other models such as the DCS-5300.&lt;br /&gt;
&lt;br /&gt;
Note that I implemented a real name preset functionality, where you can set any desired name as the preset name. It is basically possible to set the presets through ZM&amp;#039;s interface, but I prefer to do it through the cam&amp;#039;s firmware interface, which is the default setting in the script. By changing one constant definition, you may change this behaviour. In any case still activate the &amp;quot;can set presets&amp;quot; option in ZM, after which you can assign names to each preset.&lt;br /&gt;
&lt;br /&gt;
I would further recommend to update the cam&amp;#039;s firmware. I found smoother operation in ZM after having updated the firmware, and also with the latest firmware you can set ZM_HTTP_VERSION option to 1.1.&lt;br /&gt;
[bco]&lt;br /&gt;
&lt;br /&gt;
The camera will work with Zoneminder 1.25 with some minor modifications to the template PanasonicIp.pm script. Copy file and rename to DCS6620. Changed commands are listed below.  The the only tricky part was zoom.  Changes nearly identically for (PZ8111) which is almost the same camera. Note difference /cgi-bin/$cmd instead of /cgi-bin/camctrl/$cmd in. For some reason the zoom ui is calling Tele and Wide functions instead of zoomConTele and zoomConWide.  Use the options below &lt;br /&gt;
Monitor&lt;br /&gt;
* Control Type = DCS6620&lt;br /&gt;
* Control Device = blank&lt;br /&gt;
* Control Address = &amp;lt;ip address of your camera&amp;gt;&lt;br /&gt;
Control Capabilities&lt;br /&gt;
* Type = Remote&lt;br /&gt;
* Protocol = DCS6620&lt;br /&gt;
* Can Move = Check&lt;br /&gt;
* Can Move Continuous = Check&lt;br /&gt;
* Can Pan = Check&lt;br /&gt;
* Can Tilt = Check&lt;br /&gt;
* Can Zoom = Check&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
package ZoneMinder::Control::DCS6620;&lt;br /&gt;
sub sendCmd&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    my $cmd = shift;&lt;br /&gt;
&lt;br /&gt;
    my $result = undef;&lt;br /&gt;
&lt;br /&gt;
    printMsg( $cmd, &amp;quot;Tx&amp;quot; );&lt;br /&gt;
&lt;br /&gt;
    my $req = HTTP::Request-&amp;gt;new( GET=&amp;gt;&amp;quot;http://&amp;quot;.$self-&amp;gt;{Monitor}-&amp;gt;{ControlAddress}.&amp;quot;/cgi-bin/$cmd&amp;quot; );&lt;br /&gt;
    my $res = $self-&amp;gt;{ua}-&amp;gt;request($req);&lt;br /&gt;
&lt;br /&gt;
    if ( $res-&amp;gt;is_success )&lt;br /&gt;
    {&lt;br /&gt;
        $result = !undef;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
        Error( &amp;quot;Error check failed: &amp;#039;&amp;quot;.$res-&amp;gt;status_line().&amp;quot;&amp;#039;&amp;quot; );&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return( $result );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sub moveConUp&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Up&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=up&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConDown&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Down&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=down&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConLeft&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Left&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=left&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub moveConRight&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    Debug( &amp;quot;Move Right&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?move=right&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sub Tele&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    #my $params = shift;&lt;br /&gt;
    #my $step = $self-&amp;gt;getParam( $params, &amp;#039;step&amp;#039; );&lt;br /&gt;
    Debug( &amp;quot;Zoom Tele&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?zoom=tele&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub Wide&lt;br /&gt;
{&lt;br /&gt;
    my $self = shift;&lt;br /&gt;
    #my $params = shift;&lt;br /&gt;
    #my $step = $self-&amp;gt;getParam( $params, &amp;#039;step&amp;#039; );&lt;br /&gt;
    Debug( &amp;quot;Zoom Wide&amp;quot; );&lt;br /&gt;
    my $cmd = &amp;quot;camctrl.cgi?zoom=wide&amp;quot;;&lt;br /&gt;
    $self-&amp;gt;sendCmd( $cmd );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-7010L=&lt;br /&gt;
&lt;br /&gt;
Change in video settings of the camera the mode to MPEG4 and restart the device.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: RTSP&lt;br /&gt;
Remote Method: RTP/Unicast&lt;br /&gt;
Remote Host Port: 554&lt;br /&gt;
Remote Host Name: &amp;lt;IP Address of Camera&amp;gt; (RTSP authentication didn&amp;#039;t work with this method)&lt;br /&gt;
Remote Host Path: /live1.sdp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: Ffmpeg&lt;br /&gt;
Remote Host Path: rtsp://&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp&lt;br /&gt;
Remote Host Path: rtsp://user:pass@&amp;lt;IP Address of Camera&amp;gt;:554/live1.sdp (when RTSP authentication is enabled)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Source Type: Remote&lt;br /&gt;
Remote Protocol: HTTP&lt;br /&gt;
Remote Host Port: 80&lt;br /&gt;
Remote Host Name: user:pass@&amp;lt;IP Address of Camera&amp;gt;&lt;br /&gt;
Remote Host Path: /video1.mjpg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DCS-7110=&lt;br /&gt;
&lt;br /&gt;
Device&amp;#039;s web server gives example code for various setups.  Verified 2012-12-08.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* http://&amp;lt;cam-ip&amp;gt;:80/cgi-bin/viewer/video.jpg?streamid=0&amp;amp;quality=5 // single-shot jpg image&lt;br /&gt;
* rtsp://&amp;lt;cam-ip&amp;gt;:554/live.sdp // feeds VLC&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Incompatible Hardware=&lt;br /&gt;
&lt;br /&gt;
I know that the DCS-1110 is not compattible with ZoneMinder, as it requires ActiveX to recive the MJpeg stream.&lt;br /&gt;
&lt;br /&gt;
If you know of other DLink cameras that don&amp;#039;t work, please add them to the list!&lt;br /&gt;
&lt;br /&gt;
DCS-950 not compatible.  Mpeg stream.  Authentication is OCX application based, not web standard authentication.  JPG file generated at random url, not predictable.[http://www.blognesian.com/ ]&lt;br /&gt;
&lt;br /&gt;
[[Category:Cameras]]&lt;br /&gt;
[[Category:Network Cameras]]&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=File:Feasso-f-ipcam03.jpg&amp;diff=5759</id>
		<title>File:Feasso-f-ipcam03.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=File:Feasso-f-ipcam03.jpg&amp;diff=5759"/>
		<updated>2013-06-22T21:32:55Z</updated>

		<summary type="html">&lt;p&gt;Duli: Feasso F-IPCAM03&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Feasso F-IPCAM03&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=Hardware_Compatibility_List&amp;diff=5757</id>
		<title>Hardware Compatibility List</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=Hardware_Compatibility_List&amp;diff=5757"/>
		<updated>2013-06-22T21:27:36Z</updated>

		<summary type="html">&lt;p&gt;Duli: /* Network Cameras */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Zoneminder will work with almost any capture card that is supported by the linux kernel.  You may find additional details about supported hardware in the part of the forums.  Also if you find something in the forums that is  missing from the wiki ADD IT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Capture Cards ==&lt;br /&gt;
&lt;br /&gt;
[[Anykeeper]] &lt;br /&gt;
&lt;br /&gt;
[[Avermedia]]&lt;br /&gt;
&lt;br /&gt;
[[Camsecure PCI Express video capture]]&lt;br /&gt;
&lt;br /&gt;
[[Digiflower]]&lt;br /&gt;
&lt;br /&gt;
[[Geovision GV250 - bt878a chip]]&lt;br /&gt;
&lt;br /&gt;
[[Grandtec Grand X Guard]] &lt;br /&gt;
&lt;br /&gt;
[[Hauppauge]]&lt;br /&gt;
&lt;br /&gt;
[[Ituner Spectra 8]]&lt;br /&gt;
&lt;br /&gt;
[[Kodicom 4400r]]&lt;br /&gt;
&lt;br /&gt;
[[Kodicom 8800]]&lt;br /&gt;
&lt;br /&gt;
[[Tungson TE-8008]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Leadtek WinFast VC 100 - the cheapest bt878 model with no tuner on it, just Com/Svideo in.&lt;br /&gt;
&lt;br /&gt;
[[LinkDelight CCTV H.264 4CH DVR Card]]&lt;br /&gt;
&lt;br /&gt;
[[Linux Media Labs LMLBT44]] &lt;br /&gt;
&lt;br /&gt;
[[Osprey 100]]&lt;br /&gt;
&lt;br /&gt;
[[Provideo PV- series (Bluecherry)]] &lt;br /&gt;
[[ Bluecherry - BC-H16480A]] &lt;br /&gt;
[[TView 95/99]]&lt;br /&gt;
&lt;br /&gt;
[[Videocards with Philips saa7134 chipset]]&lt;br /&gt;
&lt;br /&gt;
[[WinFast TV2000 XP]]&lt;br /&gt;
&lt;br /&gt;
[[Rapid OS]]&lt;br /&gt;
&lt;br /&gt;
== bt8x8 Cards ==&lt;br /&gt;
A note on the bt8x8-based TV-tuner cards: these usually have beside the tuner input, also a Composite and an S-Video input. You can hook up 2 analog cameras to these, and access from ZoneMinder both of them as individual cameras, at max 15Fps. You don&amp;#039;t need two separate TV cards for two cameras!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Pico2000]] - 4 port card, one chip bt878, around 2 fps when using all channels&lt;br /&gt;
&lt;br /&gt;
[[Bt878_4chip_8inputs]] -4 chips bt878, 8 inputs, around 5 fps when using 2 inputs per chip&lt;br /&gt;
&lt;br /&gt;
[[:Image:Karta.jpg| bt878 8 chip 8 input]] - This card is supplied with D-sub to 8 BNC connector and uses the bt878 chip for each input allowing full frame rates and quality. See [[Kodicom 8800]] for more information.&lt;br /&gt;
&lt;br /&gt;
Geovision GV250 bt878a single chip 4 inputs - This capture Card is supplied with 4 video inputs but with NO audio channel&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Most other BTTV (bt878, bt848) cards, see /usr/src/linux/Documentation/video4linux/bttv/CARDLIST on your system for a list of some of them.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Analog Cameras ==&lt;br /&gt;
&lt;br /&gt;
Any regular composite or S-video camera connected via a supported capture card.  Some analog cameras feature camera control - ZM supports several of these camera&amp;#039;s Pan/Tilt/Zoom functions via serial port control, as well as camera Presets, Focus, Iris, etc.&lt;br /&gt;
*[[PicturetelControlScript | PictureTel PTZ2N]].&lt;br /&gt;
&lt;br /&gt;
== Network Cameras ==&lt;br /&gt;
For Network Cams to work they need to be able to stream MJPEG without the requirement of activex controls. If you see the requirement for the camera calls for IE then there is a good chance it may not work. The other option is to grab JPEG images if the camera supports that option which will work but at a lower frame rate.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Any network camera that allows access to single JPEG image grabs or &amp;#039;&amp;#039;&amp;#039;some but not all&amp;#039;&amp;#039;&amp;#039; multi-part JPEG feeds.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Full Compatibility &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* [[7Links]](TM Trade Mark)&lt;br /&gt;
&lt;br /&gt;
* [[A-mtk]]&lt;br /&gt;
&lt;br /&gt;
* [[Abus]]  some&lt;br /&gt;
&lt;br /&gt;
* [[Airlink 101]] some &lt;br /&gt;
&lt;br /&gt;
* [[Apexis]] (APM-J011-WS, APM-J012-WS, possibly others) &lt;br /&gt;
&lt;br /&gt;
* [[ArecontVision]] (AV3130M, probably other too)&lt;br /&gt;
&lt;br /&gt;
* [[Astak Mole]] Some&lt;br /&gt;
&lt;br /&gt;
* [[Axis]] All&lt;br /&gt;
&lt;br /&gt;
* [[Brickcom]] These have been tested&lt;br /&gt;
&lt;br /&gt;
* [[BSTI]] Some&lt;br /&gt;
&lt;br /&gt;
* [[Cisco]] some&lt;br /&gt;
&lt;br /&gt;
* [[D-Link]] Most&lt;br /&gt;
&lt;br /&gt;
* [[Feasso]] F-IPCAM03&lt;br /&gt;
&lt;br /&gt;
* [[Foscam]] (FI8908W, FI8904W, possibly others)&lt;br /&gt;
&lt;br /&gt;
* [[Gadspot]] Most&lt;br /&gt;
&lt;br /&gt;
* [[Generic]] Only tested one &lt;br /&gt;
&lt;br /&gt;
* [[Geovision]] (GV-FE420, possibly others)&lt;br /&gt;
&lt;br /&gt;
* [[hootoo]] Some&lt;br /&gt;
&lt;br /&gt;
* [[Iguard]] IP390E&lt;br /&gt;
&lt;br /&gt;
* [[Instar]] (IN-2905, possibly others)&lt;br /&gt;
&lt;br /&gt;
* [[Level One]] some&lt;br /&gt;
&lt;br /&gt;
* [[Linksys]] WVC-210 / WVC2300 / PVC2300 / WVC54GC&lt;br /&gt;
&lt;br /&gt;
* [[Loftek]] Sentinel PTZ&lt;br /&gt;
&lt;br /&gt;
* [[Maygion]] (IP-603, IP-604, possibly others)&lt;br /&gt;
&lt;br /&gt;
* [[Rimax]] Some&lt;br /&gt;
&lt;br /&gt;
* [[Rovio]]&lt;br /&gt;
&lt;br /&gt;
* [[Sony]] Most&lt;br /&gt;
&lt;br /&gt;
* [[TP-LINK]] Some&lt;br /&gt;
&lt;br /&gt;
* [[Trendnet]] Most&lt;br /&gt;
&lt;br /&gt;
* [[Wanscam]] FR4020A2 (Foscam clone)&lt;br /&gt;
&lt;br /&gt;
* [[x-vision]] Xvision cameras by y3k&lt;br /&gt;
&lt;br /&gt;
* [[Y-Cam]] (Sharx Ip) Most&lt;br /&gt;
&lt;br /&gt;
* [[Zavio]] Some&lt;br /&gt;
&lt;br /&gt;
* [[Zecumate]] JPT3815W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Remote systems, themselves running zoneminder, can be accessed as cameras using the Remote Path of &amp;#039;&amp;#039;&amp;#039;/cgi-bin/nph-zms?mode=single&amp;amp;monitor=1&amp;amp;scale=100&amp;amp;maxfps=5&amp;amp;buffer=1000&amp;#039;&amp;#039;&amp;#039; - where the monitor number is the correct camera on the remote system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Single Jpeg Only&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* [[Airlink 101]] some&lt;br /&gt;
&lt;br /&gt;
* [[JVC]] some&lt;br /&gt;
&lt;br /&gt;
* [[Panasonic]] some&lt;br /&gt;
&lt;br /&gt;
* PLANET some&lt;br /&gt;
&lt;br /&gt;
*[[Toshiba]] some&lt;br /&gt;
&lt;br /&gt;
* [[Veo Observer IP NetCam]] most&lt;br /&gt;
&lt;br /&gt;
*[[Vivotek]] All&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Mpeg(ver1.24.0 and up)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
*[[ABS_MegaCam]]&lt;br /&gt;
&lt;br /&gt;
* [[Axis]] All&lt;br /&gt;
&lt;br /&gt;
* [[ ACTi]] All&lt;br /&gt;
&lt;br /&gt;
*[[Vivotek]] Most&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Compatible with modifications&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
*[[Aviosys]] some&lt;br /&gt;
&lt;br /&gt;
* [[Mobotix]]  all  &lt;br /&gt;
&lt;br /&gt;
*[[Edimax]] some&lt;br /&gt;
&lt;br /&gt;
* [[Conceptronic]]  some&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Compatible with problems&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
* [[Compro]] IP70. MPEG4 only, some reliability issues and general poor firmware quality.&lt;br /&gt;
&lt;br /&gt;
* [[Grandtec]] [[Grandtec_WLAN_Camera|WLAN Camera]] WiFi or III - acceptable indoor quality, no infrared-filter (better nightvision) cheap!&lt;br /&gt;
&lt;br /&gt;
* [[Intellinet]]  IPCamera with the new firmware.&lt;br /&gt;
&lt;br /&gt;
* Old Intellinet IPCamera (model MWNC-100) with this (http://www.zoneminder.com/forums/viewtopic.php?t=7500) protocol adapter. &lt;br /&gt;
&lt;br /&gt;
* OvisLink AirLive WL-5400CAM&lt;br /&gt;
&lt;br /&gt;
Useful link: Flash&amp;#039;s IP Camera Database, with Zoneminder compatibility guide:   http://digdilem.org/cameras&lt;br /&gt;
&lt;br /&gt;
== Network Digitizers ==&lt;br /&gt;
&lt;br /&gt;
Like Network Cameras, these devices produce a video stream - but they accept an analog video input from a camera or other video source.&lt;br /&gt;
&lt;br /&gt;
* [[Synectics E100]] encoder&lt;br /&gt;
*The [[IP9100 | Aviosys IP9100, Models A, B and Plus]] has four analog video inputs.  It produces a ZM compatible video stream from one of the inputs, which is selectable via an HTTP GET command.  There might even be a control script for ZM that lets you select the active video input using &amp;#039;&amp;#039;ZM&amp;#039;s Camera Control Presets!&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
With the yoics Aviosys 9100 firmware at http://www.yoics.com/?p=28, ZoneMinder can directly access all four ports via /usr/yoicsX.jpg as the remote host path, where X is 0 - 3.&lt;br /&gt;
&lt;br /&gt;
== USB Cameras ==&lt;br /&gt;
&lt;br /&gt;
*Just Zoom USB cam&lt;br /&gt;
&lt;br /&gt;
*Creative Webcam Pro, Webcam 3, LIVE! Cam OPTIA PRO (V4L2, Chan 0, PAL, YUYV)&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;Most&amp;#039;&amp;#039; UVCvideo cameras, including: [[Logitech QuickCam Express]], QuickCam Pro 3000, [[QuickCam Pro 4000]],  QuickCam Communicate STX/Deluxe, [[Logitech Webcam Pro 9000]], and [[Webcam C250]]&lt;br /&gt;
&lt;br /&gt;
*Logitech Quickcam Orbit/Sphere (experimental basic pan/tilt control has also published for testing and hacking [http://www.zoneminder.com/forums/viewtopic.php?t=9788])&lt;br /&gt;
&lt;br /&gt;
*[[Philips]] &lt;br /&gt;
&lt;br /&gt;
*Any OV511 based USB camera [http://alpha.dyndns.org/ov511/cameras.html]&lt;br /&gt;
&lt;br /&gt;
*Any CPIA based USB camera [http://webcam.sourceforge.net]&lt;br /&gt;
&lt;br /&gt;
*[[LabTec WebCam Pro]]&lt;br /&gt;
&lt;br /&gt;
*Confirmed basic functionality with Microsoft Lifecam VX 5000 using UVC Streaming method&lt;br /&gt;
&lt;br /&gt;
Note that most USB cameras that can use Video4Linux/V4L2, and so can be used by ZoneMinder.  Some have older chipsets and can be hard to find new.&lt;br /&gt;
&lt;br /&gt;
Note that PWC drivers are not included in the kernel. Some distribution&amp;#039;s add them in and other may not. Here are some relevant links:&lt;br /&gt;
* [http://www.smcc.demon.nl/webcam/ Old Maintainer]&lt;br /&gt;
* [http://www.saillard.org/linux/pwc/ Current PWC Maintainer]&lt;br /&gt;
&lt;br /&gt;
== X10 Devices ==&lt;br /&gt;
The only device that really needs to be compatable with ZM is the Transceiver, all other x10 devices comunicate through that device.&lt;br /&gt;
*[[CM11]] Bi-Directional Transceiver&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Other X10 notes:&lt;br /&gt;
&lt;br /&gt;
[http://www.zoneminder.com/forums/viewtopic.php?t=6423&amp;amp;highlight=x10 Topic 6423]&lt;br /&gt;
&lt;br /&gt;
[http://www.zoneminder.com/forums/viewtopic.php?t=7082&amp;amp;highlight=x10 Topic 7082]&lt;br /&gt;
&lt;br /&gt;
== All other hardware as supported by Linux ==&lt;br /&gt;
To find out if your hardware is supported, check the HCL [http://www.mpsmsc.com/recruitment-indonesia.html MSC Recruitment Indonesia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [http://www.mpsmsc.com/crewing-indonesia.html MSC Crewing Indonesia]&lt;br /&gt;
* [http://www.doxapest.co.id/index.php/pest-control-dan-anti-rayap Pest Control] &lt;br /&gt;
* [http://www.tokobungasabana.com Toko Bunga Online]&lt;br /&gt;
&lt;br /&gt;
== Plug Computers ==&lt;br /&gt;
Guruplug Server Plus -&amp;gt; How to install Zoneminder&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=How_to_export_an_event_as_video&amp;diff=5737</id>
		<title>How to export an event as video</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=How_to_export_an_event_as_video&amp;diff=5737"/>
		<updated>2013-06-09T00:46:47Z</updated>

		<summary type="html">&lt;p&gt;Duli: /* How to export an event as a video file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=How to export an event as a video file=&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
image:mp4_roof_event.png| Step 1&lt;br /&gt;
image:generate_video.png| Step 2&lt;br /&gt;
image:export_generationg.png| Step 3&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
By default ZoneMinder saves events as a sequence of images. It is however possible to save an event as a video file. Caution is advised when converting events too video as it is very strenuous on the ZoneMinder machine, however once you have converted an event it can be viewed/downloaded any time without additional stress on the server.&lt;br /&gt;
&lt;br /&gt;
# First, make sure you have OPT_FFMPEG under Options -&amp;gt; Images set to yes (checked).&lt;br /&gt;
# If necessary, set the proper full path for the ffmpeg executable in PATH_FFMPEG (ex.: /usr/bin/ffmpeg)&lt;br /&gt;
# Open up the default view for an event and Click the video link located in the top left corner&lt;br /&gt;
# Choose a video export file type and click generate.&lt;br /&gt;
# Download the video to your machine. If video files have already been generated you will see them listed at the bottom of the page.&lt;br /&gt;
&lt;br /&gt;
When an event gets a video file encoded for it you can choose to automatically include that event with any future exports. For a more detailed explanation on how to select and export events investigate [[How_to_export_download_and_view_events| How to export download and view events]]&lt;/div&gt;</summary>
		<author><name>Duli</name></author>
	</entry>
</feed>