forked from sackmotion/motion
-
Notifications
You must be signed in to change notification settings - Fork 5
/
motion.1
901 lines (896 loc) · 35.1 KB
/
motion.1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
.TH MOTION 1 2011-12-12 "Motion" "Motion Options and Config Files"
.SH NAME
motion \- Detect motion using a video4linux device
.SH SYNOPSIS
.B motion
[ -hmns ] [ -c config file path ] [ -d log level ] [ -k log type ] [ -p process_id_file ] [ -l logfile ]
.SH DESCRIPTION
.I Motion
uses a video4linux device to detect motion. If motion is detected both normal
and motion pictures will be taken. Motion can also take actions to notify you
if needed. Creation of automated snapshots is also possible.
.SH OPTIONS
.TP
.B \-c
Full path and filename of config file. E.g. /home/kurt/motion.conf. Default is /usr/local/etc unless specified differently when building Motion. Many RPMs and debian packages will most likely use /etc or /etc/motion as default.
.TP
.B \-h
Show help screen.
.TP
.B \-m
Disable motion detection at startup.
.TP
.B \-n
Run in non-daemon mode.
.TP
.B \-s
Run in setup mode. Also forces non-daemon mode
.TP
.B \-d log level
Set log level [1..9] (EMR, ALR, CRT, ERR, WRN, NTC, INF, DBG, ALL). (default: 6 / NTC)
.TP
.B \-k log type
Set type of log (COR, STR, ENC, NET, DBL, EVT, TRK, VID, ALL). (default: ALL)
.TP
.B \-p
Full path and filename for process id file (pid file). E.g /var/run/motion.pid. Default is not defined. Pid file is only created when Motion is started in daemon mode.
.TP
.B \-l
Full path and filename of log file. ( use -l syslog to log to stderr and syslog )
.TP
.SH "CONFIG FILE OPTIONS"
These are the options that can be used in the config file.
.I They are overridden by the commandline!
All number values are integer numbers (no decimals allowed).
Boolean options can be on or off (values "1", "yes" and "on" all means true and any other value means false).
.TP
.B area_detect integer
Values: 0 - 999999999 / Default: Not defined
.br
Detect motion in predefined areas (1 - 9). Areas are numbered like that: 1 2 3
.br
A script (on_area_detected) is started immediately when motion is 4 5 6
.br
detected in one of the given areas, but only once during an event. 7 8 9
.br
One or more areas can be specified with this option. Take care: This option does NOT restrict detection to these areas! (Default: not defined)
.TP
.B auto_brightness boolean
Values: on, off / Default: off
.br
Let motion regulate the brightness of a video device. Only recommended for cameras without auto brightness
.TP
.B brightness integer
Values: 0 - 255 / Default: 0 (disabled)
.br
The brightness level for the video device.
.TP
.B contrast boolean
Values: 0 - 255 / Default: 0 (disabled)
.br
The contrast level for the video device.
.TP
.B daemon boolean
Values: on, off / Default: off
.br
Start in daemon (background) mode and release terminal. This option must be placed in motion.conf and not in a thread config file.
.TP
.B database_dbname string
Values: Max 4095 characters / Default: Not defined
.br
Name of the database.
.TP
.B database_host string
Values: Max 4095 characters / Default: localhost
.br
IP address or domain name for the database server. Use "localhost" if motion and database runs on the same server.
.TP
.B database_password string
Values: Max 4095 characters / Default: Not defined
.br
The database password.
.TP
.B database_port integer
Values: 0 - 65535 / Default: Not defined
.br
The database server port number.
.TP
.B database_type discrete strings
Values: mysql, postgresql / Default: Not defined
.br
The database type ( mysql , postgresql ).
.TP
.B database_user string
Values: Max 4095 characters / Default: Not defined
.br
The database user name.
.TP
.B despeckle_filter string
Values: EedDl / Default: Not defined
.br
Despeckle motion image using combinations of (E/e)rode or (D/d)ilate. And ending with optional (l)abeling.
.TP
.B emulate_motion boolean
Values: on, off / Default: off
.br
Picture are saved continuously as if motion was detected all the time.
.TP
.B event_gap integer
Values: 0 - 2147483647 / Default: 60
.br
Event Gap is the seconds of no motion detection that triggers the end of an event. An event is defined as a series of motion images taken within a short timeframe.
.TP
.B exif_text string
Values: Max 4095 characters / Default: Not defined
.br
Text to include in a JPEG EXIF comment , may be any text, including conversion specifiers. The EXIF timestamp is included independent of this text.
.TP
.B extpipe string
Values: Max 4095 characters / Default: Not defined
.br
pipe raw video to generally - 'STDIN', allowing to use an external video encoder.
.br
e.g. using memcoder :
.br
extpipe mencoder -demuxer rawvideo -rawvideo w=320:h=240: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
.TP
.B ffmpeg_bps integer
Values: 0 - 9999999 / Default: 400000
.br
Bitrate of movies produced by ffmpeg. Bitrate is bits per second. Default: 400000 (400kbps). Higher value mans better quality and larger files. Option requires that ffmpeg libraries are installed.
.TP
.B ffmpeg_output_debug_movies boolean
Values: on, off / Default: off
.br
Use ffmpeg libraries to encode motion type movies where you only see the pixels that changes.
.TP
.B ffmpeg_output_movies boolean
Values: on, off / Default: off
.br
Use ffmpeg libraries to encode movies in realtime.
.TP
.B ffmpeg_deinterlace boolean
Values: on, off / Default: off
.br
Use ffmpeg to deinterlace video. Necessary if you use an analog camera and see horizontal combing on moving objects in video or pictures.
.TP
.B ffmpeg_timelapse integer
Values: 0 - 2147483647 / Default: 0 (disabled)
.br
Create a timelapse movie saving a picture frame at the interval in seconds set by this parameter. Set it to 0 if not used.
.TP
.B ffmpeg_timelapse_mode discrete strings
Values: hourly, daily, weekly-sunday, weekly-monday, monthly, manual / Default: daily
.br
The file rollover mode of the timelapse video.
.TP
.B ffmpeg_variable_bitrate integer
Values: 0, 2 - 31 / Default: 0 (disabled)
.br
Enables and defines variable bitrate for the ffmpeg encoder. ffmpeg_bps is ignored if variable bitrate is enabled. Valid values: 0 (default) = fixed bitrate defined by ffmpeg_bps, or the range 2 - 31 where 2 means best quality and 31 is worst.
.TP
.B ffmpeg_video_codec discrete strings
Values: mpeg1 (ffmpeg-0.4.8 only), mpeg4, msmpeg4, swf , flv , ffv1, mov, ogg / Default: mpeg4
.br
Codec to be used by ffmpeg for the video compression. Timelapse movies are always made in mpeg1 format independent from this option.
.TP
.B framerate integer
Values: 2 - 100 / Default: 100 (no limit)
.br
Maximum number of frames to be captured from the camera per second.
.TP
.B frequency integer
Values: 0 - 999999 / Default: 0 (Not set)
.br
The frequency to set the tuner to (kHz). Valid range: per tuner spec, default: 0 (Don't set it)
.TP
.B height integer
Values: Device Dependent / Default: 288
.br
The height of each frame in pixels.
.TP
.B hue integer
Values: 0 - 255 / Default: 0 (disabled)
.br
The hue level for the video device.
.TP
.B input integer
Values: -1 - 64, -1 = disabled / Default: -1 (disabled)
.br
Input channel to use expressed as an integer number starting from -1. Should normally be set to 1 for video/TV cards, and -1 for USB cameras.
.TP
.B ipv6_enabled boolean
Values: on, off / Default: off
.br
Enable or disable IPV6 for http control and stream.
.TP
.B lightswitch integer
Values: 0 - 100 / Default: 0 (disabled)
.br
Ignore sudden massive light intensity changes given as a percentage of the picture area that changed intensity.
.TP
.B locate_motion discrete strings
Values: on, off, redbox, center, redcross, preview / Default: off
.br
Locate and draw a box around the moving object. Value 'preview' makes Motion only draw a box on a saved preview jpeg image and not on the saved movie.
.TP
.B logfile string
Values: Max 4095 characters / Default: Not defined
.br
Use a file to save logs messages, if not defined stderr and syslog is used.
.TP
.B logfile string
Values: Max 4095 characters / Default: Not defined
.br
Use a file to save logs messages, if not defined stderr and syslog is used. ( if syslog is set then will log to stderr and syslog )
.TP
.B log_level integer
Values: 1 - 9 / Default: 6
.br
Level of log messages [1..9] (EMR, ALR, CRT, ERR, WRN, NTC, ERR, DBG, ALL). (default: 6 / NTC).
.TP
.B log_type discrete strings
Values: STR, ENC, NET, DBL, EVT, TRK, VID, ALL / Default: ALL
.br
Filter to log messages by type (STR, ENC, NET, DBL, EVT, TRK, VID, ALL).
.TP
.B mask_file string
Values: Max 4095 characters / Default: Not defined
.br
PGM file to use as a sensitivity mask. This picture MUST have the same width and height as the frames being captured and be in binary format.
.TP
.B max_movie_time integer
Values: 0 (infinite) - 2147483647 / Default: 3600
.br
The maximum length of a movie in seconds. Set this to zero for unlimited length.
.TP
.B minimum_frame_time integer
Values: 0 - 2147483647 / Default: 0
.br
Minimum time in seconds between the capturing picture frames from the camera. Default: 0 = disabled - the capture rate is given by the camera framerate.
.TP
.B minimum_motion_frames integer
Values: 1 - 1000s / Default: 1
.br
Picture frames must contain motion at least the specified number of frames in a row before they are detected as true motion. At the default of 1, all motion is detected. Valid range is 1 to thousands, but it is recommended to keep it within 1-5.
.TP
.B motion_video_pipe string
Values: Max 4095 characters / Default: Not defined
.br
The video4linux video loopback input device for motion images. If a particular pipe is to be used then use the device filename of this pipe, if a dash '-' is given motion will use /proc/video/vloopback/vloopbacks to locate a free pipe. Default: not set
.TP
.B movie_filename string
Values: Max 4095 characters / Default: %v-%Y%m%d%H%M%S
.br
File path for motion triggered ffmpeg movies relative to target_dir. This was previously called ffmpeg_filename.
.TP
.B netcam_tolerant_check boolean
Values: on, off / Default: off
.br
Set less strict jpeg checks for network cameras with a poor/buggy firmware.
.TP
.B netcam_keepalive discrete string
Values: off , force, on / Default: off
.br
The setting for keep-alive of network socket, should improve performance on compatible net cameras.
.TP
.B netcam_proxy string
Values: Max 4095 characters / Default: Not defined
.br
URL to use for a netcam proxy server, if required. The syntax is http://myproxy:portnumber
.TP
.B netcam_url string
Values: Max 4095 characters / Default: Not defined
.br
Specify an url to a downloadable jpeg file or raw mjpeg stream to use as input device. Such as an AXIS 2100 network camera.
.br
http:// ftp:// mjpg:// or file:/// ( mjpg:// is for network cameras with codec mjpeg ).
.TP
.B netcam_userpass string
Values: Max 4095 characters / Default: Not defined
.br
For network cameras protected by username and password, use this option for HTTP 1.1 Basic authentication. The string is specified as username:password. Do not specify this option for no authentication.
.TP
.B noise_level integer
Values: 1 - 255 / Default: 32
.br
The noise level is used as a threshold for distinguishing between noise and motion.
.TP
.B noise_tune boolean
Values: on, off / Default: on
.br
Activates the automatic tuning of noise level.
.TP
.B norm integer
Values: 0 (PAL), 1 (NTSC), 2 (SECAM), 3 (PAL NC no colour) / Default: 0 (PAL)
.br
Select the norm of the video device. Values: 0 (PAL), 1 (NTSC), 2 (SECAM), 3 (PAL NC no colour). Default: 0 (PAL)
.TP
.B on_area_detected string
Values: Max 4095 characters / Default: Not defined
.br
Command to be executed when motion in a predefined area is detected, check option area_detect.
.TP
.B on_camera_lost
Values: Max 4095 characters / Default: Not defined
.br
Command to be executed when a camera can't be opened or if it is lost. You can use Conversion Specifiers and spaces as part of the command. Use %f for passing filename (with full path) to the command.
.TP
.B on_event_end string
Values: Max 4095 characters / Default: Not defined
.br
Command to be executed when an event ends after a period of no motion. The period of no motion is defined by option event_gap. You can use Conversion Specifiers and spaces as part of the command.
.TP
.B on_event_start string
Values: Max 4095 characters / Default: Not defined
.br
Command to be executed when an event starts. An event starts at first motion detected after a period of no motion defined by event_gap. You can use ConversionSpecifiers and spaces as part of the command.
.TP
.B on_motion_detected string
Values: Max 4095 characters / Default: Not defined
.br
Command to be executed when a motion frame is detected. You can use Conversion Specifiers and spaces as part of the command.
.TP
.B on_movie_end string
Values: Max 4095 characters / Default: Not defined
.br
Command to be executed when an ffmpeg movie is closed at the end of an event. You can use Conversion Specifiers and spaces as part of the command. Use %f for passing filename (with full path) to the command.
.TP
.B on_movie_start string
Values: Max 4095 characters / Default: Not defined
.br
Command to be executed when a movie is created. You can use Conversion Specifiers and spaces as part of the command. Use %f for passing filename (with full path) to the command.
.TP
.B on_picture_save string
Values: Max 4095 characters / Default: Not defined
.br
Command to be executed when an image is saved. You can use Conversion Specifiers and spaces as part of the command. Use %f for passing filename (with full path) to the command.
.TP
.B output_debug_pictures boolean
Values: on, off / Default: off
.br
Output pictures with only the moving object. This feature generates the special motion type movies where you only see the pixels that changes as a graytone image. If labelling is enabled you see the largest area in blue. Smartmask is shown in red.
.TP
.B output_pictures discrete strings
Values: on, off, first, best, center / Default: on
.br
Normal image is an image that is stored when motion is detected. It is the same image that was taken by the camera. I.e. not a motion image like defined by output_motion. Default is that normal images are stored.
.TP
.B picture_filename string
Values: Max 4095 characters / Default: %v-%Y%m%d%H%M%S-%q
.br
File path for motion triggered images (jpeg or ppm) relative to target_dir. Value 'preview' makes a jpeg filename with the same name body as the associated saved movie file.
.TP
.B picture_type discrete strings
Values: jpeg , ppm / Default: jpeg
.br
Type of images motion will trigger when motion is detected.
.TP
.B post_capture integer
Values: 0 - 2147483647 / Default: 0 (disabled)
.br
Specifies the number of frames to be captured after motion has been detected.
.TP
.B pre_capture integer
Values: 0 - 100s / Default: 0 (disabled)
.br
Specifies the number of previous frames to be outputted at motion detection. Recommended range: 0 to 5, default=0. Do not use large values! Large values will cause Motion to skip video frames and cause unsmooth movies. To smooth movies use larger values of post_capture instead.
.TP
.B process_id_file string
Values: Max 4095 characters / Default: Not defined
.br
File to store the process ID, also called pid file. Recommended value when used: /var/run/motion.pid
.TP
.B quality integer
Values: 1 - 100 / Default: 75
.br
The quality for the jpeg images in percent.
.TP
.B quiet boolean
Values: on, off / Default: off
.br
Be quiet, don't output beeps when detecting motion.
.TP
.B rotate discrete strings
Values: 0, 90, 180, 270 / Default: 0 (not rotated)
.br
Rotate image the given number of degrees. The rotation affects all saved images as well as movies.
.TP
.B roundrobin_frames integer
Values: 1 - 2147483647 / Default: 1
.br
Specifies the number of frames to capture before switching inputs, this way also slow switching (e.g. every second) is possible.
.TP
.B roundrobin_skip integer
Values: 1 - 2147483647 / Default: 1
.br
Specifies the number of frames to skip after a switch. (1 if you are feeling lucky, 2 if you want to be safe).
.TP
.B saturation integer
Values: 0 - 255 / Default: 0 (disabled)
.br
The colour saturation level for the video device.
.TP
.B sdl_threadnr
Values: 0 - 2147483647 / Default: 0 (disabled)
.br
Number of motion thread to show in SDL Window (default: 0 = disabled)
.TP
.B setup_mode boolean
Values: on, off / Default: off
.br
Run Motion in setup mode.
.TP
.B smart_mask_speed integer
Values: 0 - 10 / Default: 0 (disabled)
.br
Slugginess of the smart mask. Default is 0 = DISABLED. 1 is slow, 10 is fast.
.TP
.B snapshot_filename string
Values: Max 4095 characters / Default: %v-%Y%m%d%H%M%S-snapshot
.br
File path for snapshots (jpeg or ppm) relative to target_dir.
.TP
.B snapshot_interval integer
Values: 0 - 2147483647 / Default: 0 (disabled)
.br
Make automated snapshots every 'snapshot_interval' seconds.
.TP
.B sql_log_picture boolean
Values: on, off / Default: on
.br
Log to the database when creating motion triggered image file.
.TP
.B sql_log_movie boolean
Values: on, off / Default: off
.br
Log to the database when creating motion triggered movie file.
.TP
.B sql_log_snapshot boolean
Values: on, off / Default: on
.br
Log to the database when creating a snapshot image file.
.TP
.B sql_log_timelapse boolean
Values: on, off / Default: off
.br
Log to the database when creating timelapse movie file
.TP
.B sql_query string
Values: Max 4095 characters / Default: insert into security(camera, filename, frame, file_type, time_stamp, text_event) values('%t', '%f', '%q', '%n', '%Y-%m-%d %T', '%C')
.br
SQL query string that is sent to the database. The values for each field are given by using convertion specifiers
.TP
.B stream_auth_method integer
Values: 0 = disabled , 1 = Basic authentication ,2 = MD5 digest (the safer authentication). / Default: 0 (disabled)
.br
Set the authentication method for stream.
.TP
.B stream_authentication string
Values: username:password / Default: not defined (disabled)
.br
Authentication for the stream.
.TP
.B stream_limit integer
Values: 0 - 2147483647 / Default: 0 (unlimited)
.br
Limit the number of frames to number frames. After 'stream_limit' number of frames the connection will be closed by motion. The value 0 means unlimited.
.TP
.B stream_localhost boolean
Values: on, off / Default: on
.br
Limits the access to the stream to the localhost.
.TP
.B stream_maxrate integer
Values: 1 - 100 / Default: 1
.br
Limit the framerate of the stream in frames per second. Default is 1. Set the value to 100 for practically unlimited.
.TP
.B stream_motion boolean
Values: on, off / Default: off
.br
If set to 'on' Motion sends slows down the stream to 1 picture per second when no motion is detected. When motion is detected the stream runs as defined by stream_maxrate. When 'off' the stream always runs as defined by stream_maxrate.
.TP
.B stream_port integer
Values: 0 - 65535 / Default: 0 (disabled)
.br
TCP port on which motion will listen for incoming connects with its stream server.
.TP
.B stream_quality integer
Values: 1 - 100 / Default: 50
.br
Quality setting in percent for the mjpeg picture frames transferred over the stream connection. Keep it low to restrict needed bandwidth.
.TP
.B switchfilter boolean
Values: on, off / Default: off
.br
Turns the switch filter on or off. The filter can distinguish between most switching noise and real motion. With this you can even set roundrobin_skip to 1 without generating much false detection.
.TP
.B target_dir string
Values: Max 4095 characters / Default: Not defined = current working directory
.br
Target directory for picture and movie files.
.TP
.B text_changes boolean
Values: on, off / Default: off
.br
Turns the text showing changed pixels on/off.
.TP
.B text_double boolean
Values: on, off / Default: off
.br
Draw characters at twice normal size on images.
.TP
.B text_event string
Values: Max 4095 characters / Default: %Y%m%d%H%M%S
.br
This option defines the value of the special event conversion specifier %C. You can use any conversion specifier in this option except %C. Date and time values are from the timestamp of the first image in the current event.
.TP
.B text_left string
Values: Max 4095 characters / Default: Not defined
.br
User defined text overlayed on each in the lower left corner. Use A-Z, a-z, 0-9, " / ( ) @ ~ # < > | , . : - + _ \n and conversion specifiers (codes starting by a %).
.TP
.B text_right string
Values: Max 4095 characters / Default: %Y-%m-%d\n%T
.br
User defined text overlayed on each in the lower right corner. Use A-Z, a-z, 0-9, " / ( ) @ ~ # < > | , . : - + _ \n and conversion specifiers (codes starting by a %). Default: %Y-%m-%d\n%T = date in ISO format and time in 24 hour clock
.TP
.B thread string
Values: Max 4095 characters / Default: Not defined
.br
Specifies full path and filename for a thread config file. Each camera needs a thread config file containing the options that are unique to the camera. If you only have one camera you do not need thread config files. If you have two or more cameras you need one thread config file for each camera in addition to motion.conf. This option must be placed in motion.conf and not in a thread config file.
.TP
.B threshold integer
Values: 1 - 2147483647 / Default: 1500
.br
Threshold for declaring motion. The threshold is the number of changed pixels counted after noise filtering, masking, despeckle, and labelling.
.TP
.B threshold_tune boolean
Values: on, off / Default: off
.br
Activates the automatic tuning of threshold level.
.TP
.B timelapse_filename string
Values: Max 4095 characters / Default: %v-%Y%m%d-timelapse
.br
File path for timelapse movies relative to target_dir (ffmpeg only).
.TP
.B track_auto boolean
Values: on, off / Default: off
.br
Enable auto tracking
.TP
.B track_iomojo_id integer
Values: 0 - 65535 / Default: 0
.br
Use this option if you have an iomojo smilecam connected to the serial port instead of a general stepper motor controller.
.TP
.B track_maxx integer
Values: 0 - 65535 / Default: 0
.br
The maximum position for servo x.
.TP
.B track_maxy integer
Values: 0 - 65535 / Default: 0
.br
The maximum position for servo y.
.TP
.B track_motorx integer
Values: 0 - 65535 / Default: 0
.br
The motor number that is used for controlling the x-axis.
.TP
.B track_motory integer
Values: 0 - 65535 / Default: 0
.br
The motor number that is used for controlling the y-axis.
.TP
.B track_move_wait integer
Values: 0 - 65535 / Default: 10
.br
Delay during which tracking is disabled after auto tracking has moved the camera. Delay is defined as number of picture frames.
.TP
.B track_port string
Values: Max 4095 characters / Default: Not defined
.br
This is the device name of the serial port to which the stepper motor interface is connected.
.TP
.B track_speed integer
Values: 0 - 255 / Default: 255
.br
Speed to set the motor to.
.TP
.B track_step_angle_x integer
Values: 0-90 / Default: 10
.br
Angle in degrees the camera moves per step on the X-axis with auto tracking. Currently only used with pwc type cameras.
.TP
.B track_step_angle_y integer
Values: 0-40 / Default: 10
.br
Angle in degrees the camera moves per step on the Y-axis with auto tracking. Currently only used with pwc type cameras.
.TP
.B track_stepsize integer
Values: 0 - 255 / Default: 40
.br
Number of steps to make.
.TP
.B track_type discrete strings
Values: 0 (none), 1 (stepper), 2 (iomojo), 3 (pwc), 4 (generic), 5 (uvcvideo) / Default: 0 (None)
.br
Type of tracker.
.TP
.B tunerdevice string
Values: Max 4095 characters / Default: /dev/tuner0
.br
The tuner device used for controlling the tuner in a tuner card. This option is only used when Motion is compiled for FreeBSD.
.TP
.B use_extpipe boolean
Values: on, off / Default: off
.br
Enables extpipe to use an external video encoder feeding with YUV420 using a pipe .
.TP
.B v4l2_palette discrete strings
Values: 0 - 8 / Default: 8
.br
Allow to choose preferable palette to be use by motion to capture from those supported by your videodevice.
.TP
.B video_pipe string
Values: Max 4095 characters / Default: Not defined
.br
The video4linux video loopback input device for normal images. If a particular pipe is to be used then use the device filename of this pipe. If a dash '-' is given motion will use /proc/video/vloopback/vloopbacks to locate a free pipe.
.TP
.B videodevice string
Values: Max 4095 characters / Default: /dev/video0 (FreeBSD: /dev/bktr0)
.br
The video device to be used for capturing. Default for Linux is /dev/video0. for FreeBSD the default is /dev/bktr0.
.TP
.B webcontrol_authentication string
Values: Max 4096 characters / Default: Not defined
.br
To protect HTTP Control by username and password, use this option for HTTP 1.1 Basic authentication. The string is specified as username: password. Do not specify this option for no authentication. This option must be placed in motion.conf and not in a thread config file.
.TP
.B webcontrol_html_output boolean
Values: on, off / Default: on
.br
Enable HTML in the answer sent back to a browser connecting to the webcontrol_port. This option must be placed in motion.conf and not in a thread config file.
.TP
.B webcontrol_localhost boolean
Values: on, off / Default: on
.br
Limits the webcontrol to the localhost. This option must be placed in motion.conf and not in a thread config file.
.TP
.B webcontrol_port integer
Values: 0 - 65535 / Default: 0 (disabled)
.br
Sets the port number for the http (html using browser) based remote webcontrol. This option must be placed in motion.conf and not in a thread config file.
.TP
.B width integer
Values: Device Dependent / Default: 352
.br
The width in pixels of each frame. Valid range is camera dependent.
.SH SIGNALS
Motion responds to the following signals:
.TP
.B SIGHUP
The config file will be reread.
.TP
.B SIGTERM
If needed motion will create a movie file of the last event and exit
.TP
.B SIGUSR1
Motion will create a movie file of the current event.
.SH NOTES
.TP
.B Snapshot
A snapshot is a picture taken at regular intervals independently of any movement in the picture.
.TP
.B Motion image
A "motion" image/movie shows the pixels that have actually changed during the last frames. These pictures are not very useful for normal presentation to the public but they are quite useful for testing and tuning and making mask files as you can see exactly where motion sees something moving. Motion is shown in greytones. If labelling is enabled the largest area is marked as blue. Smart mask is shown in read.
.TP
.B Normal image
A "normal" image is the real image taken by the camera with text overlayed.
.TP
.B Threads and config files
If Motion was invoked with command line option -c pathname Motion will expect the config file to be as specified. When you specify the config file on the command line with -c you can call it anything.
.br
If you do not specify -c or the filename you give Motion does not exist, Motion will search for the configuration file called 'motion.conf' in the following order:
.br
1. Current directory from where motion was invoked
.br
2. Then in a directory called '.motion' in the current users home directory (shell environment variable $HOME). E.g. /home/goofy/.motion/motion.conf
.br
3. The directory defined by the --sysconfdir=DIR when running .configure during installation of Motion (If this option was not defined the default is /usr/local/etc/)
.br
If you have write access to /usr/local/etc then the editor recommends having only one motion.conf file in the default /usr/local/etc/ directory.
.br
Motion has a configuration file in the distribution package called motion-dist.conf. When you run 'make install' this files gets copied to the /usr/local/etc directory.
.br
The configuration file needs to be renamed from motion-dist.conf to motion.conf. The original file is called motion-dist.conf so that your perfectly working motion.conf file does not accidentally get overwritten when you re-install or upgrade to a newer version of Motion.
.br
If you have more than one camera you should not try and invoke Motion more times. Motion is made to work with more than one camera in a very elegant way and the way to do it is to create a number of thread config files. Motion will then create an extra tread of itself for each camera. If you only have one camera you only need the motion.conf file. The minute you have two or more cameras you must have one thread config file per camera besides the motion.conf file.
.br
So if you have for example two cameras you need motion.conf and two thread config files. Total of 3 config files.
.br
An option that is common to all cameras can be placed in motion.conf. (You can also put all parameters in the thread files but that makes a lot of editing when you change a common thing).
.br
An option that is unique to a camera must be defined in each thread file.
.br
The first camera is defined in the first thread file called from motion.conf. The 2nd camera is defined in the 2nd thread file called from motion.conf etc.
.br
Any option defined in motion.conf will be used for all cameras except for the cameras in which the same option is defined in a thread config file.
.br
Motion reads its configuration parameters in the following sequence. If the same parameter exists more than one place the last one read wins.
.br
1. Motion reads the configuration file motion.conf from the beginning of the file going down line by line.
.br
2. If the option "thread" is defined in motion.conf, the thread configuration file(s) is/(are) read.
.br
3. Motion continues reading the rest of the motion.conf file. Any options from here will overrule the same option previously defines in a thread config file.
.br
4. Motion reads the command line option again overruling any previously defined options.
.br
So always call the thread config files in the end of the motion.conf file. If you define options in motion.conf AFTER the thread file calls, the same options in the thread files will never be used. So always put the thread file call at the end of motion.conf.
.br
If motion is built without specific features such as ffmpeg, mysql etc it will ignore the options that belongs to these features. You do not have to remove them or comment them out.
.br
If you run the webcontrol command http://host:port/0/config/writeyes, motion will overwrite motion.conf and all the thread.conf files by autogenerated config files neatly formatted and only with the features included that Motion was built with. If you later re-build Motion with more features or upgrade to a new version, you can use your old config files, run the motion.conf.write command, and you will have new config files with the new options included all set to their default values. This makes upgrading very easy to do.
.TP
.B Conversion Specifiers for Advanced Filename and Text Features
The table below shows all the supported Conversion Specifiers you can use in the options text_left, text_right, snapshot_filename, picture_filename, movie_filename, timelapse_filename, on_area_detected, on_camera_lost, on_event_start, on_event_end, on_picture_save, on_movie_start, on_movie_end, and on_motion_detected.
.br
In text_left and text_right you can additionally use '\n' for new line.
.TP
.B %a
The abbreviated weekday name according to the current locale.
.TP
.B %A
The full weekday name according to the current locale.
.TP
.B %b
The abbreviated month name according to the current locale.
.TP
.B %B
The full month name according to the current locale.
.TP
.B %c
The preferred date and time representation for the current locale.
.TP
.B %C
Text defined by the text_event feature
.TP
.B %d
The day of the month as a decimal number (range 01 to 31).
.TP
.B %D
Number of pixels detected as Motion. If labelling is enabled the number is the number of pixels in the largest labelled motion area.
.TP
.B %E
Modifier: use alternative format, see below.
.TP
.B %f
File name - used in the on_picture_save, on_movie_start, on_movie_end, and sql_query features.
.TP
.B %F
Equivalent to %Y-%m-%d (the ISO 8601 date format).
.TP
.B %H
The hour as a decimal number using a 24-hour clock (range 00 to 23).
.TP
.B %i
Width of the rectangle containing the motion pixels (the rectangle that is shown on the image when locate_motion is on).
.TP
.B %I
The hour as a decimal number using a 12-hour clock (range 01 to 12).
.TP
.B %j
The day of the year as a decimal number (range 001 to 366).
.TP
.B %J
Height of the rectangle containing the motion pixels (the rectangle that is shown on the image when locate_motion is on).
.TP
.B %k
The hour (24-hour clock) as a decimal number (range 0 to 23); single digits are preceded by a blank. (See also %H.)
.TP
.B %K
X coordinate in pixels of the center point of motion. Origin is upper left corner.
.TP
.B %l
The hour (12-hour clock) as a decimal number (range 1 to 12); single digits are preceded by a blank. (See also %I.)
.TP
.B %L
Y coordinate in pixels of the center point of motion. Origin is upper left corner and number is positive moving downwards (I may change this soon).
.TP
.B %m
The month as a decimal number (range 01 to 12).
.TP
.B %M
The minute as a decimal number (range 00 to 59).
.TP
.B %n
Filetype as used in the on_picture_save, on_movie_start, on_movie_end, and sql_query features.
.TP
.B %N
Noise level.
.TP
.B %o
Threshold. The number of detected pixels required to trigger motion. When threshold_tune is 'on' this can be used to show the current tuned value of threshold.
.TP
.B %p
Either 'AM' or 'PM' according to the given time value, or the corresponding strings for the current locale. Noon is treated as `pm' and midnight as `am'.
.TP
.B %P
Like %p but in lowercase: `am' or `pm' or a corresponding string for the current locale.
.TP
.B %q
Picture frame number within current second. For jpeg filenames this should always be included in the filename if you save more then 1 picture per second to ensure unique filenames. It is not needed in filenames for movies.
.TP
.B %Q
Number of detected labels found by the despeckle feature
.TP
.B %r
The time in a.m. or p.m. notation.
.TP
.B %R
The time in 24-hour notation (%H:%M).
.TP
.B %s
The number of seconds since the Epoch, i.e., since 1970-01-01 00:00:00 UTC.
.TP
.B %S
The second as a decimal number (range 00 to 61).
.TP
.B %t
Thread number (camera number)
.TP
.B %T
The time in 24-hour notation (%H:%M:%S).
.TP
.B %u
The day of the week as a decimal, range 1 to 7, Monday being 1. See also %w.
.TP
.B %U
The week number of the current year as a decimal number, range 00 to 53, starting with the first Sunday as the first day of week 01. See also %V and %W.
.TP
.B %v
Event number. An event is a series of motion detections happening with less than 'gap' seconds between them.
.TP
.B %V
The ISO 8601:1988 week number of the current year as a decimal number, range 01 to 53, where week 1 is the first week that has at least 4 days in the current year, and with Monday as the first day of the week. See also %U and %W.
.TP
.B %w
The day of the week as a decimal, range 0 to 6, Sunday being 0. See also %u.
.TP
.B %W
The week number of the current year as a decimal number, range 00 to 53, starting with the first Monday as the first day of week 01.
.TP
.B %x
The preferred date representation for the current locale without the time.
.TP
.B %X
The preferred time representation for the current locale without the date.
.TP
.B %y
The year as a decimal number without a century (range 00 to 99).
.TP
.B %Y
The year as a decimal number including the century.
.TP
.B %z
The time-zone as hour offset from GMT.
.TP
.B %Z
The time zone or name or abbreviation.
.TP
.B More information
Motion homepage: http://motion.sourceforge.net/
Motion Guide (user and installation guide):
.br
http://www.lavrsen.dk/twiki/bin/view/Motion/MotionGuide
.br
http://www.lavrsen.dk/twiki/bin/view/Motion/VideoFourLinuxLoopbackDevice
.SH AUTHORS
Jeroen Vreeken (pe1rxq@amsat.org),
Folkert van Heusden,
Kenneth Lavrsen (kenneth@lavrsen.dk)