Skip to content

Commit 5e7f9be

Browse files
committed
Add Motionplus release 0.2.0
1 parent 7eb293b commit 5e7f9be

7 files changed

Lines changed: 4210 additions & 18 deletions

motionplus_config.html

Lines changed: 66 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -415,27 +415,31 @@ <h2><a name="Configuration_OptionsTopic"></a> Configuration Options-Listed by T
415415
<tbody>
416416
<tr>
417417
<td bgcolor="#edf4f9" ><a href="#webcontrol_port" >webcontrol_port</a> </td>
418+
<td bgcolor="#edf4f9" ><a href="#webcontrol_port2" >webcontrol_port2</a> </td>
418419
<td bgcolor="#edf4f9" ><a href="#webcontrol_ipv6" >webcontrol_ipv6</a> </td>
419420
<td bgcolor="#edf4f9" ><a href="#webcontrol_localhost" >webcontrol_localhost</a> </td>
420-
<td bgcolor="#edf4f9" ><a href="#webcontrol_parms" >webcontrol_parms</a> </td>
421421
</tr>
422422
<tr>
423+
<td bgcolor="#edf4f9" ><a href="#webcontrol_parms" >webcontrol_parms</a> </td>
423424
<td bgcolor="#edf4f9" ><a href="#webcontrol_interface" >webcontrol_interface</a> </td>
424425
<td bgcolor="#edf4f9" ><a href="#webcontrol_auth_method" >webcontrol_auth_method</a> </td>
425426
<td bgcolor="#edf4f9" ><a href="#webcontrol_authentication" >webcontrol_authentication</a> </td>
426-
<td bgcolor="#edf4f9" ><a href="#webcontrol_tls" >webcontrol_tls</a> </td>
427427
</tr>
428428
<tr>
429+
<td bgcolor="#edf4f9" ><a href="#webcontrol_tls" >webcontrol_tls</a> </td>
429430
<td bgcolor="#edf4f9" ><a href="#webcontrol_cert" >webcontrol_cert</a> </td>
430431
<td bgcolor="#edf4f9" ><a href="#webcontrol_key" >webcontrol_key</a> </td>
431432
<td bgcolor="#edf4f9" ><a href="#webcontrol_headers" >webcontrol_headers</a> </td>
432-
<td bgcolor="#edf4f9" ><a href="#webcontrol_actions" >webcontrol_actions</a> </td>
433433
</tr>
434434
<tr>
435+
<td bgcolor="#edf4f9" ><a href="#webcontrol_actions" >webcontrol_actions</a> </td>
435436
<td bgcolor="#edf4f9" ><a href="#webcontrol_html" >webcontrol_html</a> </td>
436437
<td bgcolor="#edf4f9" ><a href="#webcontrol_base_path" >webcontrol_base_path</a> </td>
437438
<td bgcolor="#edf4f9" ><a href="#webcontrol_lock_attempts" >webcontrol_lock_attempts</a> </td>
439+
</tr>
440+
<tr>
438441
<td bgcolor="#edf4f9" ><a href="#webcontrol_lock_minutes" >webcontrol_lock_minutes</a> </td>
442+
<td bgcolor="#edf4f9" ><a href="#webcontrol_lock_script" >webcontrol_lock_script</a> </td>
439443
</tr>
440444
</tbody>
441445
</table>
@@ -1091,13 +1095,32 @@ <h3><a name="libcam_params"></a>libcam_params</h3>
10911095
<li> AwbCustom = 7</li>
10921096
</ul></div>
10931097
<i><h4> AwbLocked(bool)</h4></i>
1098+
<i><h4> ColourGains(Pipe delimited)</h4></i>
1099+
<div><ul>
1100+
<li> Red | Blue</li>
1101+
</ul></div>
10941102
<i><h4> ColourTemperature(int)</h4></i>
10951103
<i><h4> Saturation(float)</h4></i>
1104+
<i><h4> SensorBlackLevels(Pipe delimited)</h4></i>
1105+
<div><ul>
1106+
<li> var1|var2|var3|var4</li>
1107+
</ul></div>
10961108
<i><h4> Sharpness(float)</h4></i>
10971109
<i><h4> FocusFoM(int)</h4></i>
1098-
<i><h4> ScalerCrop(Rect x-y-h-w)</h4></i>
1110+
<i><h4> ColourCorrectionMatrix(Pipe delimited)</h4></i>
1111+
<div><ul>
1112+
<li> var1|var2|var3|var4|var5|var6|var7|var8|var9</li>
1113+
</ul></div>
1114+
<i><h4> ScalerCrop(Pipe delimited)</h4></i>
1115+
<div><ul>
1116+
<li> x|y|height|width</li>
1117+
</ul></div>
10991118
<i><h4> DigitalGain(float)</h4></i>
11001119
<i><h4> FrameDuration(int)</h4></i>
1120+
<i><h4> FrameDurationLimits(Pipe delimited)</h4></i>
1121+
<div><ul>
1122+
<li> min|max</li>
1123+
</ul></div>
11011124
<i><h4> SensorTemperature(float)</h4></i>
11021125
<i><h4> SensorTimestamp(int)</h4></i>
11031126
<i><h4> AfMode(int)</h4></i>
@@ -1122,7 +1145,10 @@ <h3><a name="libcam_params"></a>libcam_params</h3>
11221145
<li> AfMeteringAuto = 0</li>
11231146
<li> AfMeteringWindows = 1</li>
11241147
</ul></div>
1125-
<i><h4> AfWindows(rect x-y-h-w)</h4></i>
1148+
<i><h4> AfWindows(Pipe delimited)</h4></i>
1149+
<div><ul>
1150+
<li> x|y|height|width</li>
1151+
</ul></div>
11261152
<i><h4> AfTrigger(int)</h4></i>
11271153
<div><ul>
11281154
<li> AfTriggerStart = 0</li>
@@ -1189,12 +1215,6 @@ <h3><a name="libcam_params"></a>libcam_params</h3>
11891215
<li> LensShadingMapModeOff = 0</li>
11901216
<li> LensShadingMapModeOn = 1</li>
11911217
</ul></div>
1192-
<i><h4> SceneFlicker(int)</h4></i>
1193-
<div><ul>
1194-
<li> SceneFickerOff = 0</li>
1195-
<li> SceneFicker50Hz = 1</li>
1196-
<li> SceneFicker60Hz = 2</li>
1197-
</ul></div>
11981218
<i><h4> PipelineDepth(int)</h4></i>
11991219
<i><h4> MaxLatency(int)</h4></i>
12001220
<i><h4> TestPatternMode(int)</h4></i>
@@ -1339,7 +1359,7 @@ <h3><a name="rotate"></a> rotate </h3>
13391359

13401360
<h3><a name="flip_axis"></a> flip_axis </h3>
13411361
<ul>
1342-
<li> Values: none, v, h | Default: none</li>
1362+
<li> Values: none, vertical, horizontal | Default: none</li>
13431363
Flip the image according to specified axis.
13441364
</ul>
13451365
<p></p>
@@ -1846,7 +1866,7 @@ <h3><a name="movie_quality"></a> movie_quality </h3>
18461866

18471867
<h3><a name="movie_container"></a> movie_container </h3>
18481868
<ul>
1849-
<li> Values: flv, ogg, vp8, mp4, mkv, hevc | Default: mkv</li>
1869+
<li> Values: flv, ogg, webm, mp4, mkv, hevc, mov | Default: mkv</li>
18501870
Container/Codec to be used for the video. Preferred codec can be appended e.g. <code>mkv:libx265</code>
18511871
</ul>
18521872
<p></p>
@@ -1962,6 +1982,15 @@ <h3><a name="webcontrol_port"></a> webcontrol_port </h3>
19621982
</ul>
19631983
<p></p>
19641984

1985+
<h3><a name="webcontrol_port2"></a> webcontrol_port </h3>
1986+
<ul>
1987+
<li>Values: 0 to 65535 | Default: 0 (disabled)</li>
1988+
Second port for the web control that does not use TLS. This allows for specifying one port that
1989+
provides a TLS connection (to be used externally) while this port serves the local lan without getting
1990+
certificate domain warnings.
1991+
</ul>
1992+
<p></p>
1993+
19651994
<h3><a name="webcontrol_ipv6"></a> webcontrol_ipv6 </h3>
19661995
<ul>
19671996
<li> Values: on, off | Default: off</li>
@@ -2090,6 +2119,30 @@ <h3><a name="webcontrol_html"></a> webcontrol_html</h3>
20902119
The full path and file name for a user specified html page to use as the webcontrol.
20912120
</ul>
20922121
<p></p>
2122+
2123+
<h3><a name="webcontrol_lock_attempts"></a> webcontrol_lock_attempt</h3>
2124+
<ul>
2125+
<li> Values: Integer | Default: 3</li>
2126+
Number of permitted attempts to log in before triggering lockout.
2127+
</ul>
2128+
<p></p>
2129+
2130+
<h3><a name="webcontrol_lock_minutes"></a> webcontrol_lock_minutes</h3>
2131+
<ul>
2132+
<li> Values: Integer | Default: 10</li>
2133+
Number of minutes that the IP will be locked out from further attempts to log in.
2134+
</ul>
2135+
<p></p>
2136+
2137+
<h3><a name="webcontrol_lock_script"></a> webcontrol_lock_script</h3>
2138+
<ul>
2139+
<li> Values: String | Default: Not Defined</li>
2140+
Script to execute when a lockout has been triggered. Two additional parameters are passed to this script
2141+
when executed. The number of times the userid failed as well as the IP address attempting to log in.
2142+
</ul>
2143+
<p></p>
2144+
2145+
20932146
</ul>
20942147

20952148
<h3><a name="OptDetail_Stream"></a> Live Stream</a> </h3>

motionplus_examples.html

Lines changed: 156 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ <h3><a name="Examples"></a> Examples</h3>
5656
<li> <a href="#dnn_setup">DNN setup</a></li>
5757
<li> <a href="#haar_train">Haar Model Training</a></li>
5858
<li> <a href="#sound_sample">Sound Frequency Sample</a></li>
59+
<li> <a href="#fail2ban">Fail2Ban example</a></li>
60+
<li> <a href="#ptz">PTZ command examples</a></li>
5961
<p></p>
6062
<p></p>
6163
</ul>
@@ -91,19 +93,19 @@ <h3><a name="extpipe_commands"></a>Sample extpipe commands</h3>
9193
The following are some sample extpipe commands
9294
<p></p>
9395
<code>
94-
movie_extpipe mencoder -demuxer rawvideo -rawvideo w=%w:h=%h:i420 -ovc x264 -x264encopts bframes=4:frameref=1:subq=1:scenecut=-1:nob_adapt:threads=1:keyint=1000:8x8dct:vbv_bufsize=4000:crf=24:partitions=i8x8,i4x4:vbv_maxrate=800:no-chroma-me -vf denoise3d=16:12:48:4,pp=lb -of avi -o %f.avi - -fps %fps
96+
movie_extpipe mencoder -demuxer rawvideo -rawvideo w=%w:h=%h:i420 -ovc x264 -x264encopts bframes=4:frameref=1:subq=1:scenecut=-1:nob_adapt:threads=1:keyint=1000:8x8dct:vbv_bufsize=4000:crf=24:partitions=i8x8,i4x4:vbv_maxrate=800:no-chroma-me -vf denoise3d=16:12:48:4,pp=lb -of avi -o %f.avi - -fps %{fps}
9597
</code>
9698
<p></p>
9799
<code>
98-
movie_extpipe x264 - --input-res %wx%h --fps %fps --bitrate 2000 --preset ultrafast --quiet -o %f.mp4
100+
movie_extpipe x264 - --input-res %wx%h --fps %{fps} --bitrate 2000 --preset ultrafast --quiet -o %f.mp4
99101
</code>
100102
<p></p>
101103
<code>
102-
movie_extpipe mencoder -demuxer rawvideo -rawvideo w=%w:h=%h:fps=%fps -ovc x264 -x264encopts preset=ultrafast -of lavf -o %f.mp4 - -fps %fps
104+
movie_extpipe mencoder -demuxer rawvideo -rawvideo w=%w:h=%h:fps=%{fps} -ovc x264 -x264encopts preset=ultrafast -of lavf -o %f.mp4 - -fps %{fps}
103105
</code>
104106
<p></p>
105107
<code>
106-
movie_extpipe ffmpeg -y -f rawvideo -pix_fmt yuv420p -video_size %wx%h -framerate %fps -i pipe:0 -vcodec libx264 -preset ultrafast -f mp4 %f.mp4
108+
movie_extpipe ffmpeg -y -f rawvideo -pix_fmt yuv420p -video_size %wx%h -framerate %{fps} -i pipe:0 -vcodec libx264 -preset ultrafast -f mp4 %f.mp4
107109
</code>
108110
<p></p>
109111
</ul>
@@ -172,7 +174,7 @@ <h3><a name="database_setup"></a>Database Setup</h3>
172174
invited to provide suggestions and corrections to these steps.
173175
<small><small><code>
174176
<ul>
175-
sudo apt install libmariadb-dev libmariadb3 mariadb-client-10.5 mariadb-client-core-10.5 mariadb-common mariadb-server
177+
sudo apt install libmariadb-dev libmariadb3 mariadb-client mariadb-client-core mariadb-common mariadb-server
176178
<br>sudo mariadb
177179
<ul>
178180
GRANT ALL ON *.* TO 'YourUserNameHere'@'localhost' IDENTIFIED BY 'YourPasswordHere' WITH GRANT OPTION;
@@ -237,6 +239,14 @@ <h3><a name="webcontrol_pages"></a>Webcontrol pages</h3>
237239
<li><code>{IP}:{port0}/{camid}/mjpg/motion</code> Stream of motion images for the camera as a mjpg</li>
238240
<li><code>{IP}:{port0}/{camid}/mjpg/source</code> Source image stream of the camera as a mjpg</li>
239241
</ul>
242+
The following mpegts pages are available via the webcontrol. (Update automatically)
243+
<ul>
244+
<li><code>{IP}:{port0}/{camid}/mpegts</code> Primary stream for the camera updated as a mpeg transport stream</li>
245+
<li><code>{IP}:{port0}/{camid}/mpegts/substream</code> Substream for the camera updated as a mpeg transport stream</li>
246+
<li><code>{IP}:{port0}/{camid}/mpegts/motion</code> Stream of motion images for the camera as a mpeg transport stream</li>
247+
<li><code>{IP}:{port0}/{camid}/mpegts/source</code> Source image stream of the camera as a mpeg transport stream</li>
248+
</ul>
249+
240250
The following static pages are available via the webcontrol. (Update manually)
241251
<ul>
242252
<li><code>{IP}:{port0}/{camid}/static</code> Primary image for the camera</li>
@@ -442,6 +452,147 @@ <h3><a name="sound_sample"></a>Sound Frequency Sample</h3>
442452

443453
</ul>
444454

455+
<h3><a name="fail2ban"></a>Fail2Ban Example</h3>
456+
<ul>
457+
The following are example files to use with the fail2ban application. This allows users to ban IPs that
458+
may be attempting to get in. This example was created using Debian 11. Adjust as appropriate for other
459+
distros and versions.
460+
<br>
461+
Install fail2ban and create the following files:
462+
<br>File 1:
463+
<small><small><code><ul>
464+
<br>&nbsp;# Fail2Ban configuration file: /etc/fail2ban/filter.d/motionplus.conf
465+
<br>&nbsp;# Author: Mr Dave
466+
<br>&nbsp;#
467+
<br>&nbsp;[INCLUDES]
468+
<br>&nbsp;# Read common prefixes. If any customizations available -- read them from common.local
469+
<br>&nbsp;before = common.conf
470+
<br>&nbsp;
471+
<br>&nbsp;[Definition]
472+
<br>&nbsp;daemon = nsd
473+
<br>&nbsp;
474+
<br>&nbsp;# Option: failregex
475+
<br>&nbsp;# Notes.:
476+
<br>&nbsp;#&nbsp; regex to match the log in failures messages in the logfile. The
477+
<br>&nbsp;#&nbsp; host must be matched by a group named "host". The tag "&ltHOST&gt" can
478+
<br>&nbsp;#&nbsp; be used for standard IP/hostname matching and is only an alias for
479+
<br>&nbsp;#&nbsp; (?:::f{4,6}:)?(?P<host>[\w\-.^_]+)
480+
<br>&nbsp;# Sample: Jul 01 02:50:32 [EMG][STR][00:wc00] webu_failauth_check: Ignoring connection from: 192.168.1.10
481+
<br>&nbsp;# Values: TEXT
482+
<br>&nbsp;
483+
<br>&nbsp;failregex = ^.*Ignoring connection from: &ltHOST&gt$
484+
<br>&nbsp;
485+
<br>&nbsp;ignoreregex =
486+
<br>&nbsp;
487+
<br>&nbsp;datepattern = {^LN-BEG}Epoch
488+
<br>&nbsp;&nbsp;&nbsp;&nbsp;{^LN-BEG}
489+
<br>&nbsp;
490+
</ul></code></small></small>
491+
<br>File2:
492+
<small><small><code><ul>
493+
<br>&nbsp;#Fail2Ban Jail Configuration File: /etc/fail2ban/jail.d/motionplus-jail.conf
494+
<br>&nbsp;[motionplus]
495+
<br>&nbsp;enabled = true
496+
<br>&nbsp;filter = motionplus
497+
<br>&nbsp;logpath = /var/log/motionplus/motionplus.log
498+
<br>&nbsp;bantime = 23h
499+
<br>&nbsp;banaction = iptables-allports[blocktype="DROP"]
500+
<br>&nbsp;maxretry = 0
501+
<br>&nbsp;port = 0:65535
502+
</ul></code></small></small>
503+
<br>Make sure to adjust the log file location indicated in the jail file as well as how long to ban the IP address.
504+
</ul>
505+
506+
<h3><a name="ptz"></a>PTZ command examples</h3>
507+
<ul>
508+
The following are some example sources and scripts to send PTZ (Pan Tilt Zoom) commands to cameras.
509+
<br><br>
510+
<a href="https://github.com/667bdrm/sofiactl">sofiactl</a> is a Perl script that can control many imported inexpensive cameras.
511+
<br> Adjust script location, timing, cameraip, user, etc as appropriate.
512+
<small><small><code><ul>
513+
<br>&nbsp;#!/bin/bash
514+
<br>&nbsp;&nbsp;sofiactl.pl --user admin --host cameraip --port 34567 --command OPPTZControl --sd ZoomTile --s2 0.5
515+
<br>&nbsp;&nbsp;sofiactl.pl --user admin --host cameraip --port 34567 --command OPPTZControl --sd ZoomWide --s2 0.5
516+
<br>&nbsp;&nbsp;sofiactl.pl --user admin --host cameraip --port 34567 --command OPPTZControl --sd DirectionUp --s2 2.0
517+
<br>&nbsp;&nbsp;sofiactl.pl --user admin --host cameraip --port 34567 --command OPPTZControl --sd DirectionDown --s2 2.0
518+
<br>&nbsp;&nbsp;sofiactl.pl --user admin --host cameraip --port 34567 --command OPPTZControl --sd DirectionLeft --s2 2.0
519+
<br>&nbsp;&nbsp;sofiactl.pl --user admin --host cameraip --port 34567 --command OPPTZControl --sd DirectionRight --s2 2.0
520+
<br>&nbsp;exit
521+
</ul></code></small></small>
522+
523+
<br>
524+
<a href="https://github.com/Mr-Dave/camxmctl">camxmctl</a> is a c++ program with a sample HTML page that makes adjusting the parameters
525+
easier. It reuses some of the code from Motionplus and is based upon the JSON files and commands in the
526+
<a href="https://github.com/667bdrm/sofiactl">sofiactl</a> script.
527+
<br> Adjust location, timing, cameraip, user, etc as appropriate.
528+
<small><small><code><ul>
529+
<br>&nbsp;#!/bin/bash
530+
<br>&nbsp;&nbsp; tbd. Review sample page to see post commands.
531+
<br>&nbsp;exit
532+
</ul></code></small></small>
533+
534+
<br>
535+
curl scripts. Example 1
536+
<br> Adjust as appropriate.
537+
<small><small><code><ul>
538+
<br>&nbsp;#!/bin/bash
539+
<br>&nbsp;&nbsp;curl -X PUT -H "Content-Type: application/x-www-form-urlencoded" -d 'Param1=1' http://admin@cameraip:80/PTZ/1/TurnDown
540+
<br>&nbsp;&nbsp;sleep 2
541+
<br>&nbsp;&nbsp;curl -X PUT -H "Content-Type: application/x-www-form-urlencoded" -d 'Param1=0' http://admin@cameraip:80/PTZ/1/TurnDown
542+
<br>&nbsp;exit
543+
<br>&nbsp;#!/bin/bash
544+
<br>&nbsp;&nbsp;curl -X PUT -H "Content-Type: application/x-www-form-urlencoded" -d 'Param1=1' http://admin@cameraip:80/PTZ/1/TurnLeft
545+
<br>&nbsp;&nbsp;sleep 2
546+
<br>&nbsp;&nbsp;curl -X PUT -H "Content-Type: application/x-www-form-urlencoded" -d 'Param1=0' http://admin@cameraip:80/PTZ/1/TurnLeft
547+
<br>&nbsp;exit
548+
<br>&nbsp;#!/bin/bash
549+
<br>&nbsp;&nbsp;curl -X PUT -H "Content-Type: application/x-www-form-urlencoded" -d 'Param1=1' http://admin@cameraip:80/PTZ/1/TurnRight
550+
<br>&nbsp;&nbsp;sleep 2
551+
<br>&nbsp;&nbsp;curl -X PUT -H "Content-Type: application/x-www-form-urlencoded" -d 'Param1=0' http://admin@cameraip:80/PTZ/1/TurnRight
552+
<br>&nbsp;exit
553+
<br>&nbsp;#!/bin/bash
554+
<br>&nbsp;&nbsp;curl -X PUT -H "Content-Type: application/x-www-form-urlencoded" -d 'Param1=1' http://admin@cameraip:80/PTZ/1/TurnUp
555+
<br>&nbsp;&nbsp;sleep 2
556+
<br>&nbsp;&nbsp;curl -X PUT -H "Content-Type: application/x-www-form-urlencoded" -d 'Param1=0' http://admin@cameraip:80/PTZ/1/TurnUp
557+
<br>&nbsp;exit
558+
</ul></code></small></small>
559+
560+
<br>
561+
curl scripts. Example 2
562+
<br> Adjust as appropriate.
563+
<small><small><code><ul>
564+
<br>&nbsp;#!/bin/bash
565+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=left&-speed=45'
566+
<br>&nbsp;&nbsp;sleep 1
567+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=stop&-speed=45'
568+
<br>&nbsp;exit
569+
<br>&nbsp;#!/bin/bash
570+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=right&-speed=45'
571+
<br>&nbsp;&nbsp;sleep 1
572+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=stop&-speed=45'
573+
<br>&nbsp;exit
574+
<br>&nbsp;#!/bin/bash
575+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=down&-speed=45'
576+
<br>&nbsp;&nbsp;sleep 1
577+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=stop&-speed=45'
578+
<br>&nbsp;exit
579+
<br>&nbsp;#!/bin/bash
580+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=up&-speed=45'
581+
<br>&nbsp;&nbsp;sleep 1
582+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=stop&-speed=45'
583+
<br>&nbsp;exit
584+
<br>&nbsp;#!/bin/bash
585+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=zoomin&-speed=45'
586+
<br>&nbsp;&nbsp;sleep 1
587+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=stop&-speed=45'
588+
<br>&nbsp;exit
589+
<br>&nbsp;#!/bin/bash
590+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=zoomout&-speed=45'
591+
<br>&nbsp;&nbsp;sleep 1
592+
<br>&nbsp;&nbsp;curl 'http://admin:admin@cameraip:80/web/cgi-bin/hi3510/ptzctrl.cgi?-step=0&-act=stop&-speed=45'
593+
<br>&nbsp;exit
594+
</ul></code></small></small>
595+
</ul>
445596

446597
</section>
447598
</body>

mp0.2.0/motionplus.gif

1.87 KB
Loading

0 commit comments

Comments
 (0)