Updated.
git-svn-id: http://svn.zoneminder.com/svn/zm/trunk@1475 e3e1d417-86f3-4887-817a-d78f3d33393f
This commit is contained in:
parent
079af10056
commit
3d6e828fc7
11
README
11
README
|
@ -1,4 +1,4 @@
|
|||
22/06/05 ZoneMinder 1.21.2 README 1
|
||||
23/06/05 ZoneMinder 1.21.2 README 1
|
||||
|
||||
|
||||
|
||||
|
@ -24,8 +24,8 @@
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Introduction
|
||||
Welcome to ZoneMinder, the all-in-one Linux GPL'd security
|
||||
camera solution.
|
||||
|
@ -2416,6 +2416,11 @@ properly support Iris control.
|
|||
o FIX - Fixed a nasty problem in zmaudit which meant that
|
||||
older events sometimes didn't get tidied up and deleted
|
||||
properly.
|
||||
o FIX - Fixed an issue with the multi-part jpeg streams
|
||||
having frame boundaries output at the end of each image and
|
||||
not the beginning. Apart from this not being ideal
|
||||
semantically it also meant that ZM had trouble parsing it's
|
||||
own output!
|
||||
o FEATURE - Some of the scripts have a new debug format
|
||||
that is more similar to the one used in the binaries.
|
||||
|
||||
|
|
461
README.html
461
README.html
|
@ -365,7 +365,7 @@ style='color:windowtext;display:none;text-decoration:none'>21</span></a></span><
|
|||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Filtering Events<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>22</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>21</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202206">6.6.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
|
@ -383,224 +383,224 @@ style='color:windowtext;display:none;text-decoration:none'>24</span></a></span><
|
|||
style='font-family:"Times New Roman";color:windowtext;font-weight:normal;
|
||||
text-decoration:none'> </span>Camera Control<span style='color:windowtext;
|
||||
display:none;text-decoration:none'> </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>26</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>25</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202209">7.1.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Control Capabilities<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>26</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>25</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202210">7.2.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Control Scripts<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>28</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>27</span></a></span></p>
|
||||
|
||||
<p class=MsoToc1><span class=MsoHyperlink><a href="#_Toc107202211">8.<span
|
||||
style='font-family:"Times New Roman";color:windowtext;font-weight:normal;
|
||||
text-decoration:none'> </span>Mobile Devices<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>30</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>29</span></a></span></p>
|
||||
|
||||
<p class=MsoToc1><span class=MsoHyperlink><a href="#_Toc107202212">9.<span
|
||||
style='font-family:"Times New Roman";color:windowtext;font-weight:normal;
|
||||
text-decoration:none'> </span>Troubleshooting<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>.. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>31</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>30</span></a></span></p>
|
||||
|
||||
<p class=MsoToc1><span class=MsoHyperlink><a href="#_Toc107202213">10.<span
|
||||
style='font-family:"Times New Roman";color:windowtext;font-weight:normal;
|
||||
text-decoration:none'> </span>Change Log<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>.. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>34</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>33</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202214">10.1.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.21.2<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>34</span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>33</span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'></span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202215">10.2.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.21.1<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>34</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>33</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202216">10.3.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.21.0<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>36</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>35</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202217">10.4.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.20.1<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>37</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>36</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202218">10.5.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.20.0<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>38</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>37</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202219">10.6.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.19.5<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>39</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>38</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202220">10.7.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.19.4<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>40</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>39</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202221">10.8.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.19.3<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>40</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>39</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202222">10.9.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.19.2<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>41</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>40</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202223">10.10.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.19.1<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>43</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>42</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202224">10.11.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.19.0<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>43</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>42</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202225">10.12.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.18.1<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>45</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>44</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202226">10.13.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.18.0<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>45</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>44</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202227">10.14.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.17.2<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>46</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>45</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202228">10.15.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.17.1<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>47</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>46</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202229">10.16.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 1.17.0<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>48</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>47</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202230">10.17.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.16<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>48</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>47</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202231">10.18.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.15<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>50</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>49</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202232">10.19.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.14<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>51</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>50</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202233">10.20.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.13<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>51</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>50</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202234">10.21.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.12<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>52</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>51</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202235">10.22.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.11<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>53</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>52</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202236">10.23.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.10<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>54</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>53</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202237">10.24.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.9<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>55</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>54</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202238">10.25.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.8<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>56</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>55</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202239">10.26.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.9.7<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>57</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>56</span></a></span></p>
|
||||
|
||||
<p class=MsoToc2><span class=MsoHyperlink><a href="#_Toc107202240">10.27.<span
|
||||
style='font-size:12.0pt;font-family:"Times New Roman";color:windowtext;
|
||||
text-decoration:none'> </span>Release 0.0.1<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>58</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>57</span></a></span></p>
|
||||
|
||||
<p class=MsoToc1><span class=MsoHyperlink><a href="#_Toc107202241">11.<span
|
||||
style='font-family:"Times New Roman";color:windowtext;font-weight:normal;
|
||||
text-decoration:none'> </span>To Do<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>.. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>59</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>58</span></a></span></p>
|
||||
|
||||
<p class=MsoToc1><span class=MsoHyperlink><a href="#_Toc107202242">12.<span
|
||||
style='font-family:"Times New Roman";color:windowtext;font-weight:normal;
|
||||
text-decoration:none'> </span>Bugs<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>60</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>59</span></a></span></p>
|
||||
|
||||
<p class=MsoToc1><span class=MsoHyperlink><a href="#_Toc107202243">13.<span
|
||||
style='font-family:"Times New Roman";color:windowtext;font-weight:normal;
|
||||
text-decoration:none'> </span>Non-Bugs<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>61</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>60</span></a></span></p>
|
||||
|
||||
<p class=MsoToc1><span class=MsoHyperlink><a href="#_Toc107202244">14.<span
|
||||
style='font-family:"Times New Roman";color:windowtext;font-weight:normal;
|
||||
text-decoration:none'> </span>License<span style='color:windowtext;
|
||||
display:none;text-decoration:none'>. </span><span
|
||||
style='color:windowtext;display:none;text-decoration:none'>62</span></a></span></p>
|
||||
style='color:windowtext;display:none;text-decoration:none'>61</span></a></span></p>
|
||||
|
||||
<h1><span style='text-decoration:none'>1.<span style='font:7.0pt "Times New Roman"'>
|
||||
</span></span><u><a name="_Toc107202195">Introduction</a></u></h1>
|
||||
|
@ -712,9 +712,8 @@ style='font:7.0pt "Times New Roman"'> </span
|
|||
<p class=MsoPlainText>The first thing you need to do is run the included
|
||||
configure script to define some initial configuration, just type</p>
|
||||
|
||||
<p class=MsoPlainText><i>./configure --with-mysql=<your MySQL root>
|
||||
--with-webdir=<your web directory> --with-cgidir=<your cgi
|
||||
directory></i></p>
|
||||
<p class=MsoPlainText><i>./configure --with-mysql=<your MySQL root> --with-webdir=<your
|
||||
web directory> --with-cgidir=<your cgi directory></i></p>
|
||||
|
||||
<p class=MsoPlainText>where <i>--with-mysql</i> identifies the root directory
|
||||
where you have installed MySQL (usually /usr), <i>--with-webdir</i> is the
|
||||
|
@ -761,9 +760,9 @@ much be specified with zmconfig which detail things such as database passwords
|
|||
which are compiled into ZoneMinder and other options with are stored in the
|
||||
database and which can be modified dynamically via the ‘options’ section of the
|
||||
web interface. Only the first set need to be completed with zmconfig at this
|
||||
stage. If you want to change just a few options and can’t access the options dialog
|
||||
via the web you can append them as parameters to zmconfig and it will just ask
|
||||
you about those. So for example,</p>
|
||||
stage. If you want to change just a few options and can’t access the options
|
||||
dialog via the web you can append them as parameters to zmconfig and it will
|
||||
just ask you about those. So for example,</p>
|
||||
|
||||
<p class=MsoPlainText><i>perl ./zmconfig.pl ZM_STRICT_VIDEO_CONFIG</i></p>
|
||||
|
||||
|
@ -881,10 +880,9 @@ ZoneMinder Package Control script. This is used by the web interface and
|
|||
service scripts to control the execution of the system as a whole.</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:18.0pt'><b>zmdc.pl</b> - This is the
|
||||
ZoneMinder Daemon Control script. This is used by the web interface and the
|
||||
zmpkg.pl script to control and maintain the execution of the capture and
|
||||
analysis daemons, amongst others. You should not need to run this script
|
||||
yourself.</p>
|
||||
ZoneMinder Daemon Control script. This is used by the web interface and the zmpkg.pl
|
||||
script to control and maintain the execution of the capture and analysis
|
||||
daemons, amongst others. You should not need to run this script yourself.</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:18.0pt'><b>zmfilter.pl</b> - This
|
||||
script controls the execution of saved filters and will be started and stopped
|
||||
|
@ -1054,8 +1052,8 @@ README are installed to the systems default document folder.</p>
|
|||
<p class=MsoPlainText style='margin-left:18.0pt'>The packaged version of Zone
|
||||
Minder installs all binarys to /usr/lib/zm including the web pages. So don’t
|
||||
worry when you do not see any files installed to the root directory for your
|
||||
web server. The web pages for Apache are aliased by zm.conf in the apache/conf.d
|
||||
directory which vary depending on your distribution:</p>
|
||||
web server. The web pages for Apache are aliased by zm.conf in the
|
||||
apache/conf.d directory which vary depending on your distribution:</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:18.0pt'>Fedora Core:
|
||||
/etc/httpd/conf.d/zm.conf</p>
|
||||
|
@ -1242,7 +1240,8 @@ saved frame etc. An alternate way of thinking is that one in every
|
|||
+ 1’ frames is saved. The point of this is to ensure that saved events do not
|
||||
take up too much space unnecessarily whilst still allowing the camera to
|
||||
capture at a fairly high frame rate. The alternate approach is to limit the
|
||||
capture frame rate which will obviously affect the rate at which frames are saved.</p>
|
||||
capture frame rate which will obviously affect the rate at which frames are
|
||||
saved.</p>
|
||||
|
||||
<p class=MonitorOption><b>Run Mode </b>– Two choices are available here.
|
||||
‘Continuous’ is the usual setting and means that the monitor is expected to be
|
||||
|
@ -1254,12 +1253,12 @@ actually be active is devolved to an external triggering mechanism.</p>
|
|||
<p class=MonitorOption><b>Triggers </b>– This small section lets you select
|
||||
which triggers will apply if the run mode has been set to ‘triggered’ above.
|
||||
The most common trigger is X10 and this will appear here if you indicated that
|
||||
your system supported it during installation. Only X10 is supported as a
|
||||
shipped trigger with ZoneMinder at present but it is possible that other
|
||||
triggers will become available as necessary. You can also just use ‘cron’ jobs
|
||||
or other mechanisms to actually control the camera and keep them completely
|
||||
outside of the ZoneMinder settings. The zmtrigger.pl script is also available
|
||||
to implement custom external triggering.</p>
|
||||
your system supported it during installation. Only X10 is supported as a shipped
|
||||
trigger with ZoneMinder at present but it is possible that other triggers will
|
||||
become available as necessary. You can also just use ‘cron’ jobs or other
|
||||
mechanisms to actually control the camera and keep them completely outside of
|
||||
the ZoneMinder settings. The zmtrigger.pl script is also available to implement
|
||||
custom external triggering.</p>
|
||||
|
||||
<p class=MonitorOption><b>Source Type</b> – This determines whether the camera
|
||||
is a local one attached to a physical video or USB port on your machine or a
|
||||
|
@ -1301,11 +1300,11 @@ initially.</p>
|
|||
down or at right angles you can use this field to specify a rotation that is
|
||||
applied to the image as it is captured. This incurs an additional processing
|
||||
overhead so if possible it is better to mount your camera the right way round
|
||||
if you can. If you choose one of the rotation options remember to switch the
|
||||
height and width fields so that they apply, e.g. if your camera captures at
|
||||
352x288 and you choose ‘Rotate Right’ here then set the height to be 352 and
|
||||
width to be 288. You can also choose to ‘flip’ the image if your camera
|
||||
provides mirrored input.</p>
|
||||
if you can. If you choose one of the rotation options remember to switch the height
|
||||
and width fields so that they apply, e.g. if your camera captures at 352x288
|
||||
and you choose ‘Rotate Right’ here then set the height to be 352 and width to
|
||||
be 288. You can also choose to ‘flip’ the image if your camera provides
|
||||
mirrored input.</p>
|
||||
|
||||
<p class=MonitorTab>‘Source’ Tab (remote device)</p>
|
||||
|
||||
|
@ -1330,8 +1329,8 @@ actually capturing to this palette beforehand.</p>
|
|||
|
||||
<p class=MonitorOption><b>Timestamp Label Format</b> <b>– </b>This relates to
|
||||
the timestamp that is applied to each frame. It is a ‘strftime’ style string.
|
||||
It is actually passed through strftime and then through printf to add the
|
||||
monitor name so a format of '%%s - %y/%m/%d %H:%M:%S' (note the double % at the
|
||||
It is actually passed through strftime and then through printf to add the monitor
|
||||
name so a format of '%%s - %y/%m/%d %H:%M:%S' (note the double % at the
|
||||
beginning) would be recommended though you can modify it if necessary. If you
|
||||
don’t want a timestamp or have a camera that puts one on itself then leave this
|
||||
field blank. If you add a second %%s placeholder in the string this will be
|
||||
|
@ -1690,11 +1689,11 @@ places as the sun and/or shadows move and it thus may be difficult to come up
|
|||
with general values. Additionally, if the sun comes out rapidly then although
|
||||
the initial change may be ignored in this way as the reference image catches up
|
||||
an alarm may ultimately be triggered as the image becomes less different. Using
|
||||
one or more Preclusive zones offers a different approach. Preclusive zones are
|
||||
designed to be fairly small, even just a few pixels across, with quite low
|
||||
alarm thresholds. They should be situated in areas of the image that are less
|
||||
likely to have motion occur such as high on a wall or in a corner. Should a
|
||||
general illumination change occur they would be triggered at least as early as any
|
||||
one or more Preclusive zones offers a different approach. Preclusive zones are designed
|
||||
to be fairly small, even just a few pixels across, with quite low alarm
|
||||
thresholds. They should be situated in areas of the image that are less likely
|
||||
to have motion occur such as high on a wall or in a corner. Should a general
|
||||
illumination change occur they would be triggered at least as early as any
|
||||
Active zones and prevent any other zones from generating an alarm. Obviously
|
||||
careful placement is required to ensure that they do not cancel any genuine
|
||||
alarms or that they are not so close together that any motion just hops from
|
||||
|
@ -1829,9 +1828,9 @@ running with one or more Zones each. Returning to the main Console window you
|
|||
will see your monitors listed once more. The columns not explored so far are
|
||||
the Monitor name, and various event totals for certain periods of time.
|
||||
Clicking on any of the event totals will bring up a variation on the same
|
||||
window but click on the Monitor name for now. On doing so up will pop another window
|
||||
which should be scaled to contain a heading, an image from your monitor, a
|
||||
status and a list of recent events if any have been generated. Depending on
|
||||
window but click on the Monitor name for now. On doing so up will pop another
|
||||
window which should be scaled to contain a heading, an image from your monitor,
|
||||
a status and a list of recent events if any have been generated. Depending on
|
||||
whether you are able to view a streamed image or not the image frame will
|
||||
either be this stream or a series of stills. You have the option to change from
|
||||
one to the other (if available) at the centre of the top heading. Also along
|
||||
|
@ -1856,12 +1855,12 @@ other windows in front it will pop up to the front if it goes to Alarm state.
|
|||
This behaviour can be turned off in ‘options’ if required. You can also specify
|
||||
a sound file in the configuration, which will be played when an alarm occurs to
|
||||
alert you to the fact if you are not in front of your computer. This should be
|
||||
a short sound of only a couple of seconds ideally. Note that as the status is refreshed
|
||||
every few seconds it is possible for this not to alert you to every event that
|
||||
takes place, so you shouldn't rely on it for this purpose if you expect very
|
||||
brief events. Alternatively you can decrease the refresh interval for this
|
||||
window in the configuration though having too frequent refreshing may impact on
|
||||
performance.</p>
|
||||
a short sound of only a couple of seconds ideally. Note that as the status is
|
||||
refreshed every few seconds it is possible for this not to alert you to every
|
||||
event that takes place, so you shouldn't rely on it for this purpose if you
|
||||
expect very brief events. Alternatively you can decrease the refresh interval
|
||||
for this window in the configuration though having too frequent refreshing may
|
||||
impact on performance.</p>
|
||||
|
||||
<p class=MsoPlainText>Below the status is a list of recent events that have
|
||||
occurred, by default this is a listing of just the last 10 but clicking on
|
||||
|
@ -1915,10 +1914,10 @@ browsers which support streamed images directly. Used in this way you can just
|
|||
click on the area of the image that interests you and the camera will centre on
|
||||
that spot. You can also use direct image control for relative motion when the
|
||||
area of the image you click on defines the direction and the distance away from
|
||||
the centre of the image determines the speed. As it is not always very easy to
|
||||
estimate direction near the centre of the image, the active area does not start
|
||||
until a short distance away from the centre, resulting in a ‘dead’ zone in the
|
||||
middle of the image.</p>
|
||||
the centre of the image determines the speed. As it is not always very easy to estimate
|
||||
direction near the centre of the image, the active area does not start until a
|
||||
short distance away from the centre, resulting in a ‘dead’ zone in the middle
|
||||
of the image.</p>
|
||||
|
||||
<h2><a name="_Toc107202205"><span style='text-decoration:none'>6.5.<span
|
||||
style='font:7.0pt "Times New Roman"'> </span></span>Filtering
|
||||
|
@ -1948,13 +1947,13 @@ corresponding row for each expression. You then select what you want to filter
|
|||
on and how the expressions relate by choosing whether they are 'and' or 'or'
|
||||
relationships. For filters comprised of many expressions you will also get the
|
||||
option to bracket parts of the filter to ensure you can express it as desired.
|
||||
Then if you like choose how you want your results sorted and whether you want
|
||||
to limit the amount of events displayed.</p>
|
||||
Then if you like choose how you want your results sorted and whether you want to
|
||||
limit the amount of events displayed.</p>
|
||||
|
||||
<p class=MsoPlainText>There are several different elements to an event that you
|
||||
can filter on, some of which require further explanation. These are as follows,
|
||||
'Date/Time' which must evaluate to a date and a time together, 'Date' and
|
||||
'Time' which are variants which may only contain the relevant subsets of this,
|
||||
'Date/Time' which must evaluate to a date and a time together, 'Date' and 'Time'
|
||||
which are variants which may only contain the relevant subsets of this,
|
||||
'Weekday' which as expected is a day of the week. All of the preceding elements
|
||||
take a very flexible free format of dates and time based on the PHP strtotime
|
||||
function (http://www.zend.com/manual/function.strtotime.php). This allows
|
||||
|
@ -1987,18 +1986,18 @@ have created a filter you want to keep, you can name it and save it by clicking
|
|||
<p class=MsoPlainText>If you do this then the subsequent dialog will also allow
|
||||
you specify whether you want this filter automatically applied in order to
|
||||
delete events or upload events via ftp to another server and mail notifications
|
||||
of events to one or more email accounts. In most cases you can specify your
|
||||
preferences for upload formats and email content during configuration time
|
||||
(make sure you type '?' to get help on options). Emails and messages
|
||||
(essentially small emails intended for mobile phones or pagers) have a variety
|
||||
of tokens that can be substituted for various details of the event that caused
|
||||
them. This includes links to the event view or the filter as well as the option
|
||||
of attaching images or videos to the email itself. See the included templates
|
||||
zmconfig_eml.txt and zmconfig_msg.txt for a fuller explanation of the availability
|
||||
and meaning of these tokens. Finally you can also specify a script which is run
|
||||
on each matched event. This script should be readable and executable by your
|
||||
web server user. It will get run once per event and the relative path to the
|
||||
directory containing the event in question. Normally this will be of the form
|
||||
of events to one or more email accounts. In most cases you can specify your preferences
|
||||
for upload formats and email content during configuration time (make sure you
|
||||
type '?' to get help on options). Emails and messages (essentially small emails
|
||||
intended for mobile phones or pagers) have a variety of tokens that can be
|
||||
substituted for various details of the event that caused them. This includes
|
||||
links to the event view or the filter as well as the option of attaching images
|
||||
or videos to the email itself. See the included templates zmconfig_eml.txt and
|
||||
zmconfig_msg.txt for a fuller explanation of the availability and meaning of
|
||||
these tokens. Finally you can also specify a script which is run on each
|
||||
matched event. This script should be readable and executable by your web server
|
||||
user. It will get run once per event and the relative path to the directory
|
||||
containing the event in question. Normally this will be of the form
|
||||
<MonitorName>/<EventId> so from this path you can derive both the
|
||||
monitor name and event id and perform any action you wish. Note that arbitrary
|
||||
commands are not allowed to be specified in the filter, for security the only
|
||||
|
@ -2107,10 +2106,10 @@ zmconfig.pl. A number of option groups have a master option near the top which
|
|||
enables or disables the whole group so you should be aware of the state of this
|
||||
before modifying options and expecting them to make any difference.</p>
|
||||
|
||||
<p class=MsoPlainText>If you have changed the value of an option you should
|
||||
then ‘save’ it. A number of the option groups will then prompt you to let you
|
||||
know that the option(s) you have changed will require a system restart. This is
|
||||
not done automatically in case you will be changing many values in the same
|
||||
<p class=MsoPlainText>If you have changed the value of an option you should then
|
||||
‘save’ it. A number of the option groups will then prompt you to let you know
|
||||
that the option(s) you have changed will require a system restart. This is not
|
||||
done automatically in case you will be changing many values in the same
|
||||
session, however once you have made all of your changes you should restart
|
||||
ZoneMinder as soon as possible. The reason for this is that web and some
|
||||
scripts will pick up the new changes immediately but some of the daemons will
|
||||
|
@ -2147,25 +2146,25 @@ web interface presented in their own language rather than the system default,
|
|||
if it is available. Specifying a language here is done in the same way as for
|
||||
the system default language described above.</p>
|
||||
|
||||
<p class=MsoPlainText>There are also four values that define the user permissions,
|
||||
these are ‘stream’, ‘events’, ‘monitors’ and ‘system’ Each can have values of
|
||||
‘none’, ‘view’ or ‘edit’ apart from ‘stream’ which has no ‘edit’ setting. These
|
||||
values cover access to the following areas; ‘stream’ defines whether a user is
|
||||
allowed to view the ‘live’ video feeds coming from the cameras. You may wish to
|
||||
allow a user to view historical events only in which case this setting should
|
||||
be ‘none’. The ‘events’ setting determines whether a user can view and modify
|
||||
or delete any retained historical events. The ‘monitors’ setting specifies
|
||||
whether a user can see the current monitor settings and change them. Finally
|
||||
the ‘system’ setting determines whether a user can view or modify the system
|
||||
settings as a whole, such as options and users or controlling the running of
|
||||
the system as a whole. As well as these settings there is also a monitor ids
|
||||
setting that can be used for non-’system’ users to restrict them to only being
|
||||
able to access streams, events or monitors for the given monitors ids as a comma
|
||||
separated list with no spaces. If a user with ‘monitors’ edit privileges is
|
||||
limited to specific monitors here they will not be able to add or delete
|
||||
monitors but only change the details of those they have access to. If a user
|
||||
has ‘system’ privileges then the ‘monitors ids’ setting is ignored and has no
|
||||
effect.’</p>
|
||||
<p class=MsoPlainText>There are also four values that define the user
|
||||
permissions, these are ‘stream’, ‘events’, ‘monitors’ and ‘system’ Each can
|
||||
have values of ‘none’, ‘view’ or ‘edit’ apart from ‘stream’ which has no ‘edit’
|
||||
setting. These values cover access to the following areas; ‘stream’ defines
|
||||
whether a user is allowed to view the ‘live’ video feeds coming from the
|
||||
cameras. You may wish to allow a user to view historical events only in which
|
||||
case this setting should be ‘none’. The ‘events’ setting determines whether a
|
||||
user can view and modify or delete any retained historical events. The
|
||||
‘monitors’ setting specifies whether a user can see the current monitor settings
|
||||
and change them. Finally the ‘system’ setting determines whether a user can
|
||||
view or modify the system settings as a whole, such as options and users or
|
||||
controlling the running of the system as a whole. As well as these settings
|
||||
there is also a monitor ids setting that can be used for non-’system’ users to
|
||||
restrict them to only being able to access streams, events or monitors for the
|
||||
given monitors ids as a comma separated list with no spaces. If a user with
|
||||
‘monitors’ edit privileges is limited to specific monitors here they will not
|
||||
be able to add or delete monitors but only change the details of those they
|
||||
have access to. If a user has ‘system’ privileges then the ‘monitors ids’
|
||||
setting is ignored and has no effect.’</p>
|
||||
|
||||
<p class=MsoPlainText>That’s pretty much is it for the tour, though there is a
|
||||
lot more to ZoneMinder as you will discover. You should experiment with the
|
||||
|
@ -2209,9 +2208,9 @@ to support every camera out of the box. Some degree of development is likely to
|
|||
be required for many cameras. This should often be a relatively straightforward
|
||||
task however if you have a camera that you want to be supported then please
|
||||
feel free to get in touch and I should be able to provide an estimate for how
|
||||
much effort this is likely to be. It is also the case that I have only been
|
||||
able to access this limited number of cameras to test against; some other
|
||||
cameras may use different motion paradigms that don’t fit into the control
|
||||
much effort this is likely to be. It is also the case that I have only been able
|
||||
to access this limited number of cameras to test against; some other cameras
|
||||
may use different motion paradigms that don’t fit into the control
|
||||
capability/script architecture that ZoneMinder uses. If you come across any
|
||||
cameras like this then please forward as much information to me as possible so
|
||||
that I may be able to extend the ZoneMinder model to encompass them.</span></p>
|
||||
|
@ -2421,12 +2420,12 @@ style='font:7.0pt "Times New Roman"'> </span></span>Control Sc
|
|||
<p class=MsoPlainText><span style='color:black'>The second key element to
|
||||
controlling cameras with ZoneMinder is ensuring that an appropriate control
|
||||
script or application is present. A small number of sample scripts are included
|
||||
with ZoneMinder and can be used directly or as the basis for development.
|
||||
Control scripts are run atomically, that is to say that one requested action
|
||||
from the web interface results in one execution of the script and no state
|
||||
information is maintained. If your protocol requires state information to be
|
||||
preserved then you should ensure that your scripts do this as ZoneMinder has no
|
||||
concept of the state of the camera in control terms.</span></p>
|
||||
with ZoneMinder and can be used directly or as the basis for development. Control
|
||||
scripts are run atomically, that is to say that one requested action from the
|
||||
web interface results in one execution of the script and no state information
|
||||
is maintained. If your protocol requires state information to be preserved then
|
||||
you should ensure that your scripts do this as ZoneMinder has no concept of the
|
||||
state of the camera in control terms.</span></p>
|
||||
|
||||
<p class=MsoPlainText>If you are writing a new control script then you need to
|
||||
ensure that it supports the parameters that ZoneMinder will pass to it. If you
|
||||
|
@ -2645,8 +2644,8 @@ specifically please let me know and I would be pleased to hear about it.</p>
|
|||
<p class=MsoPlainText>As support for cookies in mobile devices is patchy at
|
||||
best, the groups feature is not fully implemented in the XHTML-MP views.
|
||||
Instead if there is a group called ‘Mobile’ already defined then that group
|
||||
will always be effective, if not then all monitors available to the logged in
|
||||
user will be visible,</p>
|
||||
will always be effective, if not then all monitors available to the logged in user
|
||||
will be visible,</p>
|
||||
|
||||
<p class=MsoPlainText> </p>
|
||||
|
||||
|
@ -2676,8 +2675,8 @@ something like that to check for settings that work and then run zmu -d
|
|||
<device_no> -q -v to get the settings. If you can't get them to work with
|
||||
that then the likelihood is they won't work with ZoneMinder. Also check the
|
||||
system logs (usually /var/log/messages) for any video configuration errors. If
|
||||
you get some and you're sure they're not a problem then switch off ZM_STRICT_VIDEO_CONFIG
|
||||
in zmconfig.pl or the ‘options’ tab.</p>
|
||||
you get some and you're sure they're not a problem then switch off
|
||||
ZM_STRICT_VIDEO_CONFIG in zmconfig.pl or the ‘options’ tab.</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:36.0pt;text-indent:-18.0pt'><span
|
||||
style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -2686,8 +2685,8 @@ can run the zmc capture daemon from the command line as 'zmc --device 0' (or
|
|||
whatever your video device is). If it returns immediately there's a problem so
|
||||
check the logs, if it stays up then your video configuration is probably ok. To
|
||||
get more information out of it use debug as specified below. Also check that
|
||||
the shared memory segment has been created by doing 'ipcs -m'. Finally, beware of
|
||||
doing tests as root and then trying to run as another user as some files may
|
||||
the shared memory segment has been created by doing 'ipcs -m'. Finally, beware
|
||||
of doing tests as root and then trying to run as another user as some files may
|
||||
not be accessible. If you're checking things as root make sure that you clean
|
||||
up afterwards!</p>
|
||||
|
||||
|
@ -2700,8 +2699,8 @@ from running certain programs. You may have to set configuration to allow this.
|
|||
Also since the daemons are started by your web server, if it dies or is shut
|
||||
down then the daemons may disappear. In this version the daemons are run under
|
||||
the control of a script which should trap expected signals but it is possible
|
||||
this doesn't cover all circumstances. If everything else works but you can’t
|
||||
get images in your browser a likely cause is a mismatch between where your web
|
||||
this doesn't cover all circumstances. If everything else works but you can’t get
|
||||
images in your browser a likely cause is a mismatch between where your web
|
||||
server expects to execute CGI scripts and where you have installed the zms
|
||||
streaming server. Check your server configuration for the correct CGI location
|
||||
and ensure you have supplied the same directory to the ZoneMinder configure
|
||||
|
@ -2761,8 +2760,8 @@ style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&n
|
|||
</span></span>Use debug. ZoneMinder has various debug in it that by default
|
||||
will go into your system log (via syslog). These will be of the form of</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:36.0pt'>"Sep 14 14:50:11
|
||||
localhost zma-0[1975]: INF [Front: 221000 - Processing at 4.26 fps ]"</p>
|
||||
<p class=MsoPlainText style='margin-left:36.0pt'>"Sep 14 14:50:11 localhost
|
||||
zma-0[1975]: INF [Front: 221000 - Processing at 4.26 fps ]"</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:36.0pt'>where the zma-0 part
|
||||
identifies the daemon and the device it is running on. Entries with INF in are
|
||||
|
@ -2901,6 +2900,13 @@ style='font:7.0pt "Times New Roman"'>
|
|||
</span></span>FIX – Fixed a nasty problem in zmaudit which meant that older
|
||||
events sometimes didn’t get tidied up and deleted properly.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>FIX – Fixed an issue with the multi-part jpeg streams having
|
||||
frame boundaries output at the end of each image and not the beginning. Apart
|
||||
from this not being ideal semantically it also meant that ZM had trouble
|
||||
parsing it’s own output!</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>FEATURE – Some of the scripts have a new debug format that is
|
||||
|
@ -3108,16 +3114,15 @@ style='font:7.0pt "Times New Roman"'>
|
|||
Compatible Regular Expression (PCRE) library, mostly to do with it not being
|
||||
found or an incorrect version being used. This version allows an alternative
|
||||
method of parsing the output from network cameras that does not depend on
|
||||
libpcre at all. Which method is used is controlled by the option
|
||||
Options->Network->ZM_NETCAM_REGEXPS. If this option is on then the
|
||||
traditional regular expression based parsing is implemented, provided you have
|
||||
built with libpcre. If the option is off or libpcre is missing then a more
|
||||
basic parsing is used instead. This new method should be slightly faster as it
|
||||
does not have the overhead of regular expression parsing, however this also
|
||||
makes it slightly more inflexible. If you experience problems using the new
|
||||
method with your netcam then you should try switching to the regular expression
|
||||
based method, and report the issue via the forums, preferably with a snapshot
|
||||
of the output of your camera.</p>
|
||||
libpcre at all. Which method is used is controlled by the option Options->Network->ZM_NETCAM_REGEXPS.
|
||||
If this option is on then the traditional regular expression based parsing is
|
||||
implemented, provided you have built with libpcre. If the option is off or
|
||||
libpcre is missing then a more basic parsing is used instead. This new method
|
||||
should be slightly faster as it does not have the overhead of regular
|
||||
expression parsing, however this also makes it slightly more inflexible. If you
|
||||
experience problems using the new method with your netcam then you should try
|
||||
switching to the regular expression based method, and report the issue via the
|
||||
forums, preferably with a snapshot of the output of your camera.</p>
|
||||
|
||||
<h2><a name="_Toc107202216"><span style='text-decoration:none'>10.3.<span
|
||||
style='font:7.0pt "Times New Roman"'> </span></span>Release
|
||||
|
@ -3152,8 +3157,8 @@ test only happens once per session.</span></p>
|
|||
|
||||
<p class=BullettedChar><span class=postbody><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span></span><span class=postbody>FIX – Some constants were defined unquoted,
|
||||
this has now been corrected.</span></p>
|
||||
</span></span></span><span class=postbody>FIX – Some constants were defined
|
||||
unquoted, this has now been corrected.</span></p>
|
||||
|
||||
<p class=BullettedChar><span class=postbody><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -3172,8 +3177,8 @@ style='font:7.0pt "Times New Roman"'>
|
|||
</span></span></span><span class=postbody>FIX – In previous versions it was
|
||||
possible for a process to die and not be reaped by zmdc.pl. This could have
|
||||
resulted in processes remaining as zombies resulting in them not being
|
||||
restarted after crashing. This has now been fixed so all dying processes will be
|
||||
caught and handled.</span></p>
|
||||
restarted after crashing. This has now been fixed so all dying processes will
|
||||
be caught and handled.</span></p>
|
||||
|
||||
<p class=BullettedChar><span class=postbody><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -3184,7 +3189,8 @@ unwanted wrapping.</span></p>
|
|||
<p class=BullettedChar><span class=postbody><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span></span><span class=postbody>FIX – A couple of remnant hard coded
|
||||
text elements have been replaced with tokens as they should have been originally.</span></p>
|
||||
text elements have been replaced with tokens as they should have been
|
||||
originally.</span></p>
|
||||
|
||||
<p class=BullettedChar><span class=postbody><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -3436,7 +3442,8 @@ HTML was tidied up to be more compliant.</p>
|
|||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>FIX – There was a problem with the interaction between monitor
|
||||
statuses and the status web window. This meant that sometimes the window did
|
||||
not pop to the front, or play the alarm sound, properly. This has been corrected.</p>
|
||||
not pop to the front, or play the alarm sound, properly. This has been
|
||||
corrected.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -3631,8 +3638,8 @@ zones for optimal motion detection. Previously only pixel count values were
|
|||
displayed here which made it difficult to configure zones configured in
|
||||
percentage terms. These values are now displayed in both pixel and percentage
|
||||
terms to assist in zone configuration. Note that the percentage values are
|
||||
based on the current size of the zone so if this is changed then the value
|
||||
displayed will not be applicable at the time of event generation.</p>
|
||||
based on the current size of the zone so if this is changed then the value displayed
|
||||
will not be applicable at the time of event generation.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -3642,11 +3649,11 @@ has not been corrected.</p>
|
|||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>FIX – A problem was reported whereby when using bulk frame records
|
||||
to reduce database load the last frame record was not written. Replaying the
|
||||
event via the web interface resulting in the event being truncated. A
|
||||
correction has been made so prevent this and ensure that the last frame of an
|
||||
event is always recorded.</p>
|
||||
</span></span>FIX – A problem was reported whereby when using bulk frame
|
||||
records to reduce database load the last frame record was not written.
|
||||
Replaying the event via the web interface resulting in the event being
|
||||
truncated. A correction has been made so prevent this and ensure that the last
|
||||
frame of an event is always recorded.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -3751,21 +3758,20 @@ limit ensures that only a small number are affected at any one time.</p>
|
|||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>FEATURE – Filters can now be defined to automatically execute an
|
||||
external script or program of your choosing. This can be specified when the
|
||||
filter is saved. Note that for security reasons this cannot be just any
|
||||
arbitrary command but must be readable and executable by your web server
|
||||
effective user. The script or program you specify here will be executed in the
|
||||
events root directory once for each event and will be passed one parameter
|
||||
containing the relative path to the event directory. This will normally be of
|
||||
the form <i><MonitorName>/<EventId></i> so it it possible to
|
||||
determine both the monitor and event in question from the path. Note also that
|
||||
a flag is set per event as with other auto actions indicating that an
|
||||
executable script has been run on that event and so to exclude it from
|
||||
subsequent matches. However if you have several filters all with executable
|
||||
scripts you will find that only the first gets executed as the flag will be set
|
||||
following successful completion and so no further scripts will be run on that
|
||||
event. Successful completion is indicated by the script returning a zero exit
|
||||
status, any other status indicates an error and the <i>executed </i>flag will
|
||||
not be set.</p>
|
||||
filter is saved. Note that for security reasons this cannot be just any arbitrary
|
||||
command but must be readable and executable by your web server effective user.
|
||||
The script or program you specify here will be executed in the events root
|
||||
directory once for each event and will be passed one parameter containing the
|
||||
relative path to the event directory. This will normally be of the form <i><MonitorName>/<EventId></i>
|
||||
so it it possible to determine both the monitor and event in question from the
|
||||
path. Note also that a flag is set per event as with other auto actions
|
||||
indicating that an executable script has been run on that event and so to
|
||||
exclude it from subsequent matches. However if you have several filters all
|
||||
with executable scripts you will find that only the first gets executed as the
|
||||
flag will be set following successful completion and so no further scripts will
|
||||
be run on that event. Successful completion is indicated by the script
|
||||
returning a zero exit status, any other status indicates an error and the <i>executed
|
||||
</i>flag will not be set.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4013,8 +4019,8 @@ the constraint on unique filter names was not present. Well it is now so when
|
|||
upgrading your database all the filters will be renamed from ‘myfilter’ to
|
||||
‘myfilter_<id>’ where ‘<id>’ is the id number in the database
|
||||
(which is then removed). In general the higher the id number the more recent
|
||||
the filter. So you should go through your filter list deleting old copies and then
|
||||
rename the last one back to it’s original name.</p>
|
||||
the filter. So you should go through your filter list deleting old copies and
|
||||
then rename the last one back to it’s original name.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4084,26 +4090,26 @@ that image processing for YUV style input formats are now pretty much handled
|
|||
at almost the same speed as native RGB formats. As this is what the capture
|
||||
daemons spend most of their time doing, the improvement helps reduce the amount
|
||||
of CPU time by a significant degree. Application of these changes also
|
||||
highlighted a bug that had existed previously in YUV conversion which caused incorrect
|
||||
conversions for certain values. The other two main areas of optimisation are in
|
||||
the Blend and Delta image functions. Normally when doing motion detection the
|
||||
analysis daemons spend about 99% of their time comparing a captured image with
|
||||
the reference image and then blending the two ready for the next capture. Both
|
||||
of these functions have been significantly improved. In previous versions there
|
||||
were two options for calculating image deltas (or differences), a simple RGB
|
||||
average and a Y channel calculation. Historically the RGB one was faster
|
||||
however with the optimisations the Y channel calculation (which is more
|
||||
accurate) is now 15-20% faster and so has become the default though you can
|
||||
select either method by the ZM_Y_IMAGE_DELTAS configuration option. A new
|
||||
method of image blending has also been added which is up to 6 times faster than
|
||||
the old one which is retained for compatibility and because in some unusual
|
||||
circumstances it may still be more accurate (see the ZM_FAST_IMAGE_BLENDS
|
||||
option for details). Altogether these optimisations (along with other common
|
||||
sense ones such as not maintaining a reference image in ‘Record’ mode where it
|
||||
is not used) significantly reduce the CPU load for most systems, especially
|
||||
when alarms are not in progress. If an alarm is detected then a lot of file
|
||||
system and database activity takes place which is limited by the speed of these
|
||||
resources so the gain will not be as much.</p>
|
||||
highlighted a bug that had existed previously in YUV conversion which caused
|
||||
incorrect conversions for certain values. The other two main areas of
|
||||
optimisation are in the Blend and Delta image functions. Normally when doing
|
||||
motion detection the analysis daemons spend about 99% of their time comparing a
|
||||
captured image with the reference image and then blending the two ready for the
|
||||
next capture. Both of these functions have been significantly improved. In
|
||||
previous versions there were two options for calculating image deltas (or
|
||||
differences), a simple RGB average and a Y channel calculation. Historically
|
||||
the RGB one was faster however with the optimisations the Y channel calculation
|
||||
(which is more accurate) is now 15-20% faster and so has become the default
|
||||
though you can select either method by the ZM_Y_IMAGE_DELTAS configuration
|
||||
option. A new method of image blending has also been added which is up to 6
|
||||
times faster than the old one which is retained for compatibility and because
|
||||
in some unusual circumstances it may still be more accurate (see the
|
||||
ZM_FAST_IMAGE_BLENDS option for details). Altogether these optimisations (along
|
||||
with other common sense ones such as not maintaining a reference image in
|
||||
‘Record’ mode where it is not used) significantly reduce the CPU load for most
|
||||
systems, especially when alarms are not in progress. If an alarm is detected
|
||||
then a lot of file system and database activity takes place which is limited by
|
||||
the speed of these resources so the gain will not be as much.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4152,8 +4158,8 @@ that non binary scales are now just as easy to apply, thus new scales such as
|
|||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>Montage Sizing. The montage view allows you to view all of your
|
||||
active cameras in one window. However if your cameras are different sizes then
|
||||
this becomes very untidy. You can now constrain the image size of each monitor
|
||||
in this view to a fixed size with the ZM_WEB_MONTAGE_WIDTH and
|
||||
this becomes very untidy. You can now constrain the image size of each monitor in
|
||||
this view to a fixed size with the ZM_WEB_MONTAGE_WIDTH and
|
||||
ZM_WEB_MONTAGE_HEIGHT configuration options. Monitor images will be enlarged or
|
||||
reduced as necessary.</p>
|
||||
|
||||
|
@ -4204,16 +4210,16 @@ restructured to allow a double buffering approach. Thus a new image is loaded
|
|||
in the background and only written to screen when complete. This removes the
|
||||
refresh flicker that means that the screen blanks periodically however uses
|
||||
more JavaScript so may not be suitable for all platforms. Whether ZoneMinder
|
||||
uses double buffering or not is controlled by the ZM_WEB_DOUBLE_BUFFER
|
||||
configuration option.</p>
|
||||
uses double buffering or not is controlled by the ZM_WEB_DOUBLE_BUFFER configuration
|
||||
option.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>Fixed Length Event Bug. A bug was reported whereby the fixed
|
||||
length events that could be specified for use in Record or Mocord mode could
|
||||
sometimes result in events a multiple of that length. So events that were meant
|
||||
to be 15 minutes long could sometimes be 30 or even 45 minutes. This was
|
||||
especially the case with monitors that had low frame rates. This is now fixed.</p>
|
||||
to be 15 minutes long could sometimes be 30 or even 45 minutes. This was especially
|
||||
the case with monitors that had low frame rates. This is now fixed.</p>
|
||||
|
||||
<h2><a name="_Toc107202227"><span style='text-decoration:none'>10.14.<span
|
||||
style='font:7.0pt "Times New Roman"'> </span></span>Release
|
||||
|
@ -4318,8 +4324,8 @@ ZoneMinder to use the German (de_de) and Polish (pl_pl) languages.</p>
|
|||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>Language File Format. The format of the language file was changed
|
||||
to allow the specification of character set and locale as well as have more flexibility
|
||||
in the calculation of plural forms.</p>
|
||||
to allow the specification of character set and locale as well as have more
|
||||
flexibility in the calculation of plural forms.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4381,7 +4387,8 @@ changed for that the window and frames will now resize appropriately.</p>
|
|||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>Mmap Return Value. A problem identified by users in the forum
|
||||
relating to checking of return values from the mmap function call has been corrected.</p>
|
||||
relating to checking of return values from the mmap function call has been
|
||||
corrected.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4429,8 +4436,8 @@ style='font:7.0pt "Times New Roman"'>
|
|||
default. You can list all of the events if you like by choosing the appropriate
|
||||
option. There are shortcuts to pages of events at the top of the listing. If
|
||||
these produce strange looking sequences like 1,2, 3, 5, 9, 17, 37 etc this is
|
||||
deliberate and uses an exponential algorithm intended to allow you to quickly navigate
|
||||
through the list to a particular page in the minimum number of clicks.</p>
|
||||
deliberate and uses an exponential algorithm intended to allow you to quickly
|
||||
navigate through the list to a particular page in the minimum number of clicks.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4442,8 +4449,8 @@ monitoring at a higher screen size where the frame is not adjusted properly.</p>
|
|||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>Variable Frame Rates. Event streams can now be viewed at various
|
||||
rates allowing faster review (if your bandwidth allows) to long events, or slower
|
||||
for more precision.</p>
|
||||
rates allowing faster review (if your bandwidth allows) to long events, or
|
||||
slower for more precision.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4470,9 +4477,9 @@ processes.</p>
|
|||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>Intelligent Module inclusion. zmfilter.pl now includes Archive::Zip
|
||||
and other modules on an as needed basis so won't complain about them being
|
||||
missing unless they have been explicitly configured to be used.</p>
|
||||
</span></span>Intelligent Module inclusion. zmfilter.pl now includes
|
||||
Archive::Zip and other modules on an as needed basis so won't complain about
|
||||
them being missing unless they have been explicitly configured to be used.</p>
|
||||
|
||||
<p class=BullettedChar><span style='font-family:"Courier New"'>o<span
|
||||
style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4628,8 +4635,8 @@ modified to be fully runtime.</p>
|
|||
<p class=MsoPlainText style='margin-left:36.0pt;text-indent:-18.0pt'><span
|
||||
style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>The database user definitions in the zmvideo script indicated one
|
||||
database user while the database connection used a different one. This prevented
|
||||
any videos being generated.</p>
|
||||
database user while the database connection used a different one. This
|
||||
prevented any videos being generated.</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:36.0pt;text-indent:-18.0pt'><span
|
||||
style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4707,8 +4714,8 @@ previously an issue with a buffer overflow on certain occasions.</p>
|
|||
style='font:7.0pt "Times New Roman"'> </span></span>Release
|
||||
0.9.13</a></h2>
|
||||
|
||||
<p class=MsoPlainText>Beta version of several features and fixes, never generally
|
||||
released.</p>
|
||||
<p class=MsoPlainText>Beta version of several features and fixes, never
|
||||
generally released.</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:36.0pt;text-indent:-18.0pt'><span
|
||||
style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4746,8 +4753,8 @@ should work for most types of cameras. If you have any device or driver
|
|||
specific auto-brightness, auto-contrast etc enabled the changes you make may
|
||||
appear to work but may be overridden by the auto feature immediately so check
|
||||
for that if your changes do not appear to be having an effect. Also if you have
|
||||
a number of cameras being multiplexed onto one device then any changes here will
|
||||
probably affect all your cameras.</p>
|
||||
a number of cameras being multiplexed onto one device then any changes here
|
||||
will probably affect all your cameras.</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:36.0pt;text-indent:-18.0pt'><span
|
||||
style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -4863,8 +4870,8 @@ Ernst
|
|||
style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>
|
||||
</span></span>Stylesheet change. Previously the stylesheet didn’t really work
|
||||
very well on Mozilla, Netscape and browsers other than IE. This turned out to
|
||||
be because I was using HTML style comments in there instead of C style ones.
|
||||
This has now been corrected so you should see the correct styles. </p>
|
||||
be because I was using HTML style comments in there instead of C style ones. This
|
||||
has now been corrected so you should see the correct styles. </p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:36.0pt;text-indent:-18.0pt'><span
|
||||
style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>
|
||||
|
@ -5138,9 +5145,9 @@ style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&n
|
|||
</span></span>Added zmu -q/--query option - There is now a new query option for
|
||||
zmu. When combined with -d it gives the config of the device and when used with
|
||||
-m it dumps the current settings for the monitor and zones. Mostly useful for
|
||||
bug reporting. The previous version of zmu used with just -d gave this
|
||||
information for a video device by default. This now requires the -q option also
|
||||
to bring into line with it's -m equivalent.</p>
|
||||
bug reporting. The previous version of zmu used with just -d gave this information
|
||||
for a video device by default. This now requires the -q option also to bring
|
||||
into line with it's -m equivalent.</p>
|
||||
|
||||
<p class=MsoPlainText style='margin-left:36.0pt;text-indent:-18.0pt'><span
|
||||
style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>
|
||||
|
|
BIN
README.pdf
BIN
README.pdf
Binary file not shown.
3062
README.rtf
3062
README.rtf
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue