0% found this document useful (0 votes)
11 views24 pages

Motion Man

the manual to motion pkg (linux)
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views24 pages

Motion Man

the manual to motion pkg (linux)
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

MOTION(1) Motion Options and Config Files

MOTION(1)

NAME
motion - Detect motion using a video4linux device or network camera

SYNOPSIS
motion [ -hbnsm ] [ -c config file path ] [ -d level ] [ -k level ] [ -p
process_id_file ][ -l log_file ]

DESCRIPTION
Motion uses a video4linux device or network camera to detect motion. If
motion is detected both normal and mo‐
tion pictures can be taken. Motion can also take actions to notify you if
needed. Creation of automated snap‐
shots is also possible.

OPTIONS
-c Full path and filename of config file. For example:
/home/kurt/motion.conf The default is /usr/lo‐
cal/etc/motion unless specified differently when building Motion.
Many RPMs and Debian packages will
use /etc or /etc/motion as the default.

-h Show help screen.

-b Run in daemon mode.

-n Run in non-daemon mode.

-s Run in setup mode. Also forces non-daemon mode.

-d Run with message log level 1-9.

-k Run with message log type 1-9.

-l Full path and file name for the log file.

-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.

-m Start in pause mode.

CONFIG FILE OPTIONS


These are the options that can be used in the config file. 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).

daemon
Values: on/off
Default: off
Description:
When specified as ON, Motion goes into daemon (background
process) mode and releases the termi‐
nal.

process_id_file
Values: User specified string
Default: Not defined
Description:
File to store the process ID, also called pid file.

setup_mode
Values: on/off
Default: off
Description:
Start in Setup-Mode, daemon disabled.

logfile
Values: User specified string
Default: Not Defined
Description:
File to save logs messages, if not defined stderr and
syslog is used.

log_level
Values: 1 to 9 (EMG, ALR, CRT, ERR, WRN, NTC, INF, DBG, ALL)
Default: 6 / NTC
Description:
Specify the level of verbosity in the messages sent to the
log.

log_type
Values: COR, STR, ENC, NET, DBL, EVT, TRK, VID, ALL
Default: ALL
Description:
Filter to log messages by type

camera_id
Values: Numeric identification number for the camera
Default: The order in which the camera is opened by Motion
Description:
Use this option to assign a number to each camera that is
consistent every time that Motion is
started. By default Motion will assign a number based upon
the sequence in which it reads the
configuration and this sequence may not be the same every
time that Motion starts.

camera_name
Values: User specified string
Default: Not Defined
Description:
User specified string to describe the camera.

videodevice
Values: User specified string
Default: /dev/video0
Description:
String to specify the videodevice to be used for
capturing. The format is usually /dev/videoX
where X varies depending upon the video devices connected
to the computer. For FreeBSD certain
devices use the bktr subsystem and they will use
/dev/bktr0.

v4l2_palette
Values: 0 to 17
V4L2_PIX_FMT_SN9C10X : 0 'S910'
V4L2_PIX_FMT_SBGGR16 : 1 'BYR2'
V4L2_PIX_FMT_SBGGR8 : 2 'BA81'
V4L2_PIX_FMT_SPCA561 : 3 'S561'
V4L2_PIX_FMT_SGBRG8 : 4 'GBRG'
V4L2_PIX_FMT_SGRBG8 : 5 'GRBG'
V4L2_PIX_FMT_PAC207 : 6 'P207'
V4L2_PIX_FMT_PJPG : 7 'PJPG'
V4L2_PIX_FMT_MJPEG : 8 'MJPEG'
V4L2_PIX_FMT_JPEG : 9 'JPEG'
V4L2_PIX_FMT_RGB24 : 10 'RGB3'
V4L2_PIX_FMT_SPCA501 : 11 'S501'
V4L2_PIX_FMT_SPCA505 : 12 'S505'
V4L2_PIX_FMT_SPCA508 : 13 'S508'
V4L2_PIX_FMT_UYVY : 14 'UYVY'
V4L2_PIX_FMT_YUYV : 15 'YUYV'
V4L2_PIX_FMT_YUV422P : 16 '422P'
V4L2_PIX_FMT_YUV420 : 17 'YU12'
V4L2_PIX_FMT_Y10 : 18 'Y10'
V4L2_PIX_FMT_Y12 : 19 'Y12'
V4L2_PIX_FMT_GREY : 20 'GREY'
V4L2_PIX_FMT_H264 : 21 'H264'
Default: 17
Description:
The v4l2_palette option allows users to choose the
preferred palette to be use by motion to cap‐
ture from the video device. If the preferred palette is
not available from the video device,
Motion will attempt to use palettes that are supported.

tunerdevice
Values: User Specified String
Default: /dev/tuner0
Description:
Tuner device to be used for capturing images. This is ONLY
used for FreeBSD.

input
Values:
-1 : USB Cameras
0 : video/TV cards or uvideo(4) on OpenBSD
1 : video/TV cards
Default: -1
Description:
The video input to be used.

norm
Values:
0 (PAL)
1 (NTSC)
2 (SECAM)
3 (PAL NC no colour)
Default: 0 (PAL)
Description:
The video norm to use when capturing from TV tuner cards

frequency
Values: Dependent upon video device
Default: 0
Description:
The frequency to set the tuner in kHz when using a TV tuner
card.

power_line_frequency
Values:
-1 : Do not modify device setting
0 : Power line frequency Disabled
1 : 50hz
2 : 60hz
3 : Auto
Default: -1
Description:
Override the power line frequency for the video device.

rotate
Values: 0, 90, 180, 270
Default: 0
Description:
Rotate image this number of degrees. The rotation affects
all saved images as well as movies.

flip_axis
Values: none, v, h
Default: none
Description:
Flip the images vertically or horizontally. The
flip affects all saved images as well as
movies.

width
Values: Dependent upon video device
Default: 352
Description:
Image width in pixels for the video device.

height
Values: Dependent upon video device
Default: off
Description:
Image height in pixels for the video device

framerate
Values: 2 - 100
Default: 100
Description:
The maximum number of frames to capture in 1 second. The
default of 100 will normally be lim‐
ited by the capabilities of the video device. Typical
video devices have a maximum rate of 30.

minimum_frame_time
Values: 0 to unlimited
Default: 0
Description:
The minimum time in seconds between capturing picture
frames from the camera. The default of 0
disables this option and relies upon the capture rate of
the camera. This option is used when
you want to capture images at a rate lower than 2 per
second.

netcam_url
Values: User specified string
Default: None
Description:
Full connection URL string to use to connect to a network
camera. The URL must provide a stream
of images instead of only a static image. The following
prefixes are recognized

http:// ftp:// mjpg:// rtsp:// rtmp:// mjpeg://


file:// v4l2://

The connection string is camera specific. It is usually


the same as what other video playing
applications would use to connect to the camera stream.
Motion currently only supports basic
authentication for the cameras. Digest is not currently
supported. Basic authentication can be
specified in the URL or via the netcam_userpass option.

netcam_highres
Values: User specified string
Default: None
Description:
Full connection URL string to use to connect to a high
resolution network camera. The URL must
provide a stream of images instead of only a static image.
The following prefixes are recog‐
nized

rtsp:// rtmp://

The connection string is camera specific. It is usually


the same as what other video playing
applications would use to connect to the camera stream.
Motion currently only supports basic
authentication for the cameras. Digest is not currently
supported. Basic authentication can be
specified in the URL or via the netcam_userpass option.

netcam_userpass
Values: User specified string
Default: Not Defined
Description:
The user id and password required to access the network
camera string. Only basic authentica‐
tion is supported at this time. Format is in
user:password format when both a user name and
password are required.

netcam_keepalive
Values:
off: The historical implementation using HTTP/1.0,
closing the socket after each http request.

force: Use HTTP/1.0 requests with keep alive header to


reuse the same connection.

on: Use HTTP/1.1 requests that support keep alive as


default.
Default: off
Description:
This setting is to keep-alive (open) the network socket
between requests. When used, this op‐
tion should improve performance on compatible net
cameras. This option is not applicable for
the rtsp://, rtmp:// and mjpeg:// formats.

netcam_proxy
Values: User specified string
Default: Not defined
Description:
If required, the URL to use for a netcam proxy server. For
example, "http://myproxy". If a
port number other than 80 is needed, append to
the specification. For examplet,
"http://myproxy:1234".
netcam_tolerant_check
Values: on/off
Default: off
Description:
Use a less strict jpeg validation for network cameras.
This can assist with cameras that have
poor or buggy firmware.

rtsp_uses_tcp
Values: on/off
Default: on
Description:
When using a RTSP/RTMP connection for a network camera, use
a TCP transport instead of UDP. The
UDP transport frequently results in "smeared" corrupt
images.

mmalcam_name
Values: User specified string
Default: Not defined
Description:
Name of camera to use if you are using a camera accessed
through OpenMax/MMAL. This value is
used to specify the use of the PI camera. The typical
value for the PI camera is vc.ril.camera

mmalcam_control_params
Values: User specified string
Default: Not defined
Description:
Camera configuration options to use for the OpenMax/MMAL
camera. See the raspivid/raspistill
tool documentation for full list of options. Typical value
for the PI camera is -hf

auto_brightness
Values: on/off
Default: off
Description:
The auto_brightness feature uses the brightness option as
its target value. If brightness is
zero auto_brightness will adjust to average brightness
value 128. only recommended for cameras
without auto brightness.

brightness
Values: 0 to 255
Default: 0 (Disabled)
Description:
The initial brightness of a video device. If
auto_brightness is enabled, this value defines the
average brightness level which Motion will try and adjust
to.

contrast
Values: 0 to 255
Default: 0 (Disabled)
Description:
The contrast value to set for the video device.

saturation
Values: 0 to 255
Default: 0 (Disabled)
Description:
The saturation value to set for the video device.

hue
Values: 0 to 255
Default: 0 (Disabled)
Description:
The hue value to set for the video device.

roundrobin_frames
Values: 1 to unlimited
Default: 1
Description:
Number of frames to capture in each roundrobin step

roundrobin_skip
Values: 1 to unlimited
Default: 1
Description:
Number of frames to skip before each roundrobin step

switchfilter
Values: on/off
Default: off
Description:
Filter out noise generated by roundrobin

threshold
Values: 1 to unlimited
Default: 1500
Description:
Threshold for number of changed pixels in an image that
triggers motion detection

threshold_tune
Values: on/off
Default: off
Description:
Automatically tune the threshold down if possible.

noise_level
Values: 1 to unlimited
Default: 32
Description:
Noise threshold for the motion detection.

noise_tune
Values: on/off
Default: on
Description:
Automatically tune the noise threshold

despeckle_filter
Values:
e/E : erode
d/D : dilate
l : label
Default: EedDl
Description:
Despeckle motion image using (e)rode or (d)ilate or
(l)abel. The recommended value is EedDl.
Any combination (and number of) of E, e, d, and D is valid.
(l)abeling must only be used once
and the 'l' must be the last letter. Comment out to
disable

area_detect
Values: 1 to 9
Default: Not Defined
Description:
When motion is detected in the predefined areas indicated
below, trigger the script indicated by
the on_area_detected. The trigger is only activated once
during an event. one or more areas
can be specified with this option. Note that this option
is only used to trigger the indicated
script. It does not limit all motion detection events to
only the area indicated.
Image Areas
123
456
789

mask_file
Values: User specified string
Default: Not defined
Description:
When particular area should be ignored for motion, it can
be accomplished using a PGM mask file.
The PGM mask file is a specially constructed mask file
that allows the user to indicate the ar‐
eas for which motion should be monitored. This option
specifies the full path and name for the
mask file.

mask_privacy
Values: User specified string
Default: Not defined
Description:
The PGM mask file is a specially constructed mask file
that allows the user to indicate the ar‐
eas to remove from all images. This option specifies the
full path and name for the privacy
mask file.

smart_mask_speed
Values: 0 to 10
Default: 0 (off)
Description:
Speed of mask changes when creating a dynamic mask file.

lightswitch
Values: 0 to 100
Default: 0
Description:
Ignore sudden massive light intensity changes. Value is
a percentage of the picture area that
changed intensity.

minimum_motion_frames
Values: 1 to unlimited
Default: 1
Description:
The minimum number of picture frames in a row that must
contain motion before a event is trig‐
gered. The default of 1 means that all motion is detected.
The recommended range is 1 to 5.
pre_capture
Values: 0 to unlimited
Default: 0
Description:
The number of pre-captured (buffered) pictures from before
motion was detected that will be out‐
put upon motion detection. The recommended range is 0 to
5. It is not recommended to use large
values since it will cause Motion to skip frames.
To smooth movies use larger values of
post_capture instead.

post_capture
Values: 0 to unlimited
Default: 0
Description:
Number of frames to capture after motion is no longer
detected.

event_gap
Values: -1 to unlimited
Default: 60
Description:
The number of seconds of no motion that triggers the end of
an event. An event is defined as a
series of motion images taken within a short timeframe.
The recommended value is 60 seconds.
The value -1 is allowed and disables events causing all
Motion to be written to one single movie
file and no pre_capture. If set to 0, motion is
running in gapless mode. Movies don't have
gaps anymore. An event ends right after no more motion is
detected and post_capture is over.

max_movie_time
Values: 0 to unlimited
Default: 0
Description:
Maximum length in seconds of a movie. When value is
exceeded a new movie file is created. The
value of 0 means that there is no limit.

emulate_motion
Values: on/off
Default: off
Description:
Always save images even if there was no motion.

output_pictures
Values: on, off, first, best, center
Default: on
Description:
Output pictures when motion is detected. When set to
'first', only the first picture of an
event is saved. Picture with most motion of an event is
saved when set to 'best'. Picture with
motion nearest center of picture is saved when set to
'center'. Can be used as preview shot for
the corresponding movie.

output_debug_pictures
Values: on/off
Default: off
Description:
Output pictures with only the pixels moving object (ghost
images)

quality
Values: 1 to 100
Default: 75
Description:
The quality (in percent) to be used by the jpeg and webp
compression

picture_type
Values: jpeg/ppm/webp
Default: jpeg
Description:
The file type of output images

ffmpeg_output_movies
Values: on/off
Default: off
Description:
Use ffmpeg to encode movies of the motion.

ffmpeg_output_debug_movies
Values: on/off
Default: off
Description:
Use ffmpeg to encode movies with only the pixels moving
object (ghost images)

ffmpeg_bps
Values: 0 to unlimited
Default: 400000
Description:
Bitrate to be used by the ffmpeg encoder. This option is
ignored if ffmpeg_variable_bitrate is
not 0.

ffmpeg_variable_bitrate
Values: 0 to 100
Default: 0
Description:
Enable and define the variable bitrate for the ffmpeg
encoder. ffmpeg_bps is ignored if vari‐
able bitrate is enabled. When specified as 0, use the
fixed bitrate defined by ffmpeg_bps.
When defined as 1 - 100 varies the quality of the movie. A
value of 1 is worst quality versus a
value of 100 is best quality.

ffmpeg_video_codec
Values:
Motion videos:
mpeg4 - Creates .avi file
msmpeg4 - Creates .avi file
swf - Flash film with extension .swf
flv - Flash video with extension .flv
ffv1 - FF video codec 1 for Lossless Encoding
mov - QuickTime
mp4 - MPEG-4 Part 14 H264 encoding
mkv - Matroska H264 encoding
hevc - H.265 / HEVC (High Efficiency Video Coding)
Default: mpeg4
Description:
For regular motion videos, the container/codec must be
available in the ffmpeg installed on the
computer.

ffmpeg_duplicate_frames
Values: on/off
Default: off
Description:
When creating videos, should frames be duplicated in order
to keep up with the requested frames
per second

timelapse_fps
Values: 0 to unlimited
Default: 30
Description:
Frames per second used for playback of the timelapse video.

timelapse_interval
Values: 0 to unlimited
Default: 0
Description:
Number of seconds between frame captures for a timelapse
movie. Specify 0 to disable the time‐
lapse.

timelapse_mode
Values:
hourly
daily
weekly-sunday
weekly-monday
monthly
manual
Default: daily
Description:
File rollover mode for the timelapse video.

timelapse_codec
Values:
mpg - Creates mpg file with mpeg-2 encoding.
mpeg4 - Creates avi file with the default encoding.
Default: mpg
Description:
For mpg timelapse videos, if motion is shutdown and
restarted, new pics will be appended to any
previously created file with name indicated for timelapse.
For mpeg4 timelapse videos, if mo‐
tion is shutdown and restarted, new pics will create a
new file with the name indicated for
timelapse.

use_extpipe
Values: on/off
Default: off
Description:
Use the external pipe in order to encode videos. This is a
replacement option for the FFMPEG
builtin encoder for ffmpeg_output_movies only. The
options movie_filename and timelapse_file‐
name are also used from the ffmpeg feature

extpipe
Values: User specified string
Default: Not defined
Description:
Command line string to receive and process a pipe of images
to encode. Generally, use '-' for
STDIN

snapshot_interval
Values: 0 to unlimited
Default: 0
Description:
When specified as 0, the snapshot feature is disabled.
When a value is specified, the value in‐
dicates the number of seconds between snapshots.

locate_motion_mode
Values: on/off/preview
Default: off
Description:
When specified as 'on', locate and draw a box around the
moving object. When set 'preview',
only draw a box in preview_shot pictures.

locate_motion_style
Values:
box : Draw traditional box around the part of the image
generating the motion

redbox : Draw a red box around the part of the image


generating the motion

cross : Draw a cross on the part of the image generating


the motion

redcross : Draw a red cross on the part of the image


generating the motion
Default: box
Description:
When locate_motion_mode is enable, this option specifies
how the motion will be indicated on the
image.

text_right
Values: User specified string
Default: %Y-%m-%d11T-%q
Description:
Text to place in lower right corner of image. Format
specifiers follow C function strftime(3)

text_left
Values: User specified string
Default: CAMERA %t
Description:
Text to place in lower left corner of image. Format
specifiers follow C function strftime(3)

text_changes
Values: on/off
Default: off
Description:
When specified, draw the number of changed pixed on the
images. This option will normally be
set to off except when you setup and adjust the motion
settings. The text is placed in upper
right corner of the image.
text_event
Values: User specified string
Default: %Y%m%d%H%M%S
Description:
Define the value of the special event conversion specifier
%C. The user 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. The %C can be used filenames
and text_left/right for creating a
unique identifier for each event.

text_double
Values: on/off
Default: off
Description:
Draw characters at twice normal size on images.

exif_text
Values: User specified string
Default: Not defined
Description:
Text to include in a JPEG EXIF comment

target_dir
Values: User specified string
Default: Not defined
Description:
Target base directory for pictures and films. It is
recommended to use an absolute path. If
this option is not defined, the current working directory
is used. This option accepts the con‐
version specifiers included at the end of this manual.

snapshot_filename
Values: User specified string
Default: %v-%Y%m%d%H%M%S-snapshot
Description:
The file path for snapshots relative to target_dir. The
file extension .jpg, .ppm or .webp is
automatically added so do not include this. A symbolic
link called lastsnap.jpg created in the
target_dir will always point to the latest snapshot,
unless snapshot_filename is exactly 'last‐
snap' This option accepts the conversion specifiers
included at the end of this manual.

picture_filename
Values: User specified string
Default: %v-%Y%m%d%H%M%S-%q
Description:
The file path for motion triggered images (jpeg, ppm or
webp) relative to target_dir. The file
extension .jpg, .ppm or .webp is automatically added so
do not include this. Set to 'preview'
together with best-preview feature enables special naming
convention for preview shots. This
option accepts the conversion specifiers included at the
end of this manual.

movie_filename
Values: User specified string
Default: %v-%Y%m%d%H%M%S
Description:
File path for motion triggered ffmpeg films (movies)
relative to target_dir. The exten‐
sions(.swf, .avi, etc) are automatically added so do not
include them This option accepts the
conversion specifiers included at the end of this manual.

timelapse_filename
Values: User specified string
Default: %Y%m%d-timelapse
Description:
File path for timelapse movies relative to target_dir. The
file extensions(.mpg .avi) are auto‐
matically added so do not include them This option accepts
the conversion specifiers included at
the end of this manual.

ipv6_enabled
Values: on/off
Default: off
Description:
Listen to IPv6 localhost instead of IPv4

stream_port
Values: 0 to port number limit
Default: 0
Description:
This option is the port number that the mini-http server
listens on for streams of the pictures.

substream_port
Values: 0 to port number limit
Default: 0
Description:
This option is the substream port number that the mini-http
server listens on for streams of the
pictures.

stream_quality
Values: 1 to 100
Default: 50
Description:
The quality in percent for the jpg images streamed.

stream_motion
Values: on/off
Default: off
Description:
Output frames at 1 fps when no motion is detected
and increase to the rate given by
stream_maxrate when motion is detected

stream_maxrate
Values: 1 to unlimited
Default: 1
Description:
Maximum frame rate to send to stream

stream_localhost
Values: on/off
Default: off
Description:
Restrict stream connections to localhost only

stream_limit
Values: 0 to unlimited
Default: 0
Description:
Limits the number of images per connection. The default
value of 0 means unlimited. The number
can be defined by multiplying actual stream rate by the
desired number of seconds. The actual
stream rate is the smallest of the framerate and
stream_maxrate.

stream_auth_method
Values:
0 = disabled
1 = Basic authentication
2 = MD5 digest (the safer authentication)
Default: 0
Description:
The authentication method to use for viewing the stream.

stream_authentication
Values: User specified string
Default: Not defined
Description:
The username and password to use for authentication of the
stream. The format is Username:Pass‐
word

stream_preview_scale
Values: 1 to 100
Default: 25
Description:
This defines what percentage the stream image should be
scaled to for the preview page

stream_preview_newline
Values: yes/no
Default: no
Description:
When the image is put on the preview page, should the image
start on a new line. This option
allows the user to specify whether the preview images
should be side by side or stacked on the
page.

webcontrol_port
Values: 0 to maximum port number
Default: 0
Description:
Port number for the web control / preview page.

webcontrol_localhost
Values: on/off
Default: off
Description:
Restrict control connections to localhost only

webcontrol_html_output
Values: on/off
Default: on
Description:
Specified whether the web control/preview page should be
raw or html format. Preview page is
always html.
webcontrol_authentication
Values:
The username and password to use for authentication of the
webcontrol.
The format is Username:Password

webcontrol_parms
Values:
0 = No parameters available to change on web control
1 = Limited list of parameters available to change
2 = Advanced list of parameters (usually requires restart
to become effective)
3 = Restricted list of parameters (User IDs, passwords,
commands to execute, etc)
Default: 0
Description:
The type of parameters that are able to be modified via
the web interface. This parameter can
never be modified via the web interface and must be
specified directly in the configuration
file.

track_type
Values:
0 = none
1 = stepper
2 = iomojo
3 = pwc
4 = generic
5 = uvcvideo
6 = servo
Default: 0
Description:
This option specifies the type of tracker. The generic
type enables the definition of motion
center and motion size to be used with the conversion
specifiers for options like on_motion_de‐
tected

track_auto
Values: on/off
Default: off
Description:
Enables/disables the automatic tracking.

track_port
Values: User specified string
Default: Not defined
Description:
The serial port of the motor. For example /dev/ttyS0

Tracking options
track_motorx, track_motorx_reverse, track_motory,
track_motory_reverse
track_maxx, track_minx, track_maxy, track_miny, track_homex,
track_homey
track_iomojo_id, track_step_angle_x, track_step_angle_y,
track_move_wait
track_speed, track_stepsize

Values: device dependent


Default: 0
Description:
These options specify the parameters for cameras with
tracking capabilities.

quiet
Values: on/off
Default: on
Description:
Do not sound beeps when detecting motion

Script Options
on_event_start, on_event_end, on_picture_save
on_motion_detected, on_area_detected, on_movie_start
on_movie_end, on_camera_lost, on_camera_found

Values: User defined string


Default: Not defined
Description:
Specify the full path and file name for the script to
execute when the indicated event occurs.
When a file name is required for the script, append a %f to
the script string.

sql_log_picture
Values: on/off
Default: on
Description:
Log to the database when creating motion triggered picture
file

sql_log_snapshot
Values: on/off
Default: on
Description:
Log to the database when creating a snapshot image file

sql_log_movie
Values: on/off
Default: off
Description:
Log to the database when creating motion triggered movie
file

sql_log_timelapse
Values: on/off
Default: off
Description:
Log to the database when creating timelapse movies file

sql_query
Values: User defined string
Default: Not defined
Description:
SQL statement to execute when a event occurs. Use same
conversion specifiers as for text fea‐
tures Additional special conversion specifiers are
%n = the number representing the file_type %f =
filename with full path
Sample table set up (not sql_query):
Mysql: CREATE TABLE security (camera int,
filename char(80) not null, frame int,
file_type int, time_stamp timestamp(14),
event_time_stamp timestamp(14));
Postgresql: CREATE TABLE security (camera int,
filename char(80) not null, frame int,
file_type int, time_stamp timestamp without time
zone, event_time_stamp timestamp without
time zone);
Sample sql_query
insert into security(camera, filename, frame,
file_type, time_stamp, text_event) val‐
ues('%t', '%f', '%q', '%n', '%Y-%m-%d %T', '%C')

sql_query_start
Values: User defined string
Default: Not defined
Description:
SQL statement to execute at the start of a event. For
mysql databases a unique id is returned
in the dbeventid conversion specifier but for other
databases, the dbeventid conversion speci‐
fier is assigned to zero.

database_type
Values: mysql, postgresql, sqlite3
Default: Not defined
Description:
The type of database being used.

database_dbname
Values: User defined string
Default: Not defined
Description:
The name of the database being used (dbname). For Sqlite3,
the full path to the database.

database_host
Values: User defined string
Default: Not Defined
Description:
The name of the host on which the database is running.

database_user
Values: User defined string
Default: Not Defined
Description:
The username to access the database

database_password
Values: User defined string
Default: Not Defined
Description:
The database password for the user to access the database.

database_port
Values: 0 to maximum port number
Default: Not defined
Description:
The port to use in order to access the database. Default
ports: mysql 3306 , postgresql 5432

database_busy_timeout
Values: 0 to unlimited
Default: 0
Description:
Database wait time in milliseconds for locked database to
be unlocked before returning database
locked error

video_pipe
Values: User specified string
Default: Not Defined
Description:
Output images to a video4linux loopback device.

motion_video_pipe
Values: User specified string
Default: Not Defined
Description:
Output motion images to a video4linux loopback device.

camera_dir
Values: User specified string
Default: Not Defined
Description:
This option specifies the optional subdirectory that
contains the camera config files.

camera
Values: User specified string
Default: Not Defined
Description:
This option specifies the full path and file name to
individual camera files. This option can
be listed multiple times. Each camera file should
contain the options that are unique to that
camera/video device. Common options are obtained from the
motion.conf file and values are over‐
written from each camera file. While the motion.conf
includes four sample camera files, the ac‐
tual limit of cameras is only dependent upon the machine
capabilities. Remember: If you have
more than one camera you must have one camera file for
each one. For example, 2 cameras would
require 3 files: The motion.conf file AND camera1.conf and
camera2.conf. only put the options
that are unique to each camera in the camera config files.

SIGNALS
Motion responds to the following signals:

SIGHUP The config file will be reread.

SIGTERM
If needed motion will create an movie file of the last event and
exit

SIGUSR1
Motion will create an movie file of the current event.

NOTES
Snapshot
A snapshot is a picture taken at regular intervals independently
of any movement in the picture.

Motion image
A "motion" image/movie shows the pixels that have actually
changed during the last frames. These pic‐
tures 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.

Normal image
A "normal" image is the real image taken by the camera with text
overlayed.

Cameras 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.
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:
1. Current directory from where motion was invoked
2. Then in a directory called '.motion' in the current users home
directory (shell environment variable
$HOME). E.g. /home/goofy/.motion/motion.conf
3. The motion/ subdirectory inside the directory defined by the --
sysconfdir=DIR when running .config‐
ure during installation of Motion (If this option was not defined
the default is /usr/local/etc/)
If you have write access to /usr/local/etc/motion then the
editor recommends having only one mo‐
tion.conf file in the default /usr/local/etc/motion directory.
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/motion
directory.
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 over‐
written when you re-install or upgrade to a newer version of
Motion.
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 cam‐
era 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 camera config file per camera besides the motion.conf file.
So if you have for example two cameras you need motion.conf
and two camera config files. Total of 3
config files.
An option that is common to all cameras can be placed in
motion.conf. (You can also put all parameters
in the camera files but that makes a lot of editing when you
change a common thing).
An option that is unique to a camera must be defined in each
camera file.
The first camera is defined in the first camera file called from
motion.conf. The 2nd camera is defined
in the 2nd camera file called from motion.conf etc.
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 camera config file.
Motion reads its configuration parameters in the following
sequence. If the same parameter exists more
than one place the last one read wins.
1. Motion reads the configuration file motion.conf from the
beginning of the file going down line by
line.
2. If the option "camera" is defined in motion.conf, the camera
configuration file(s) is/(are) read.
3. Motion continues reading the rest of the motion.conf file.
Any options from here will overrule the
same option previously defines in a camera config file.
4. Motion reads the command line option again overruling any
previously defined options.
So always call the camera config files in the end of the
motion.conf file. If you define options in mo‐
tion.conf AFTER the camera file calls, the same options in the
camera files will never be used. So al‐
ways put the camera file call at the end of motion.conf.
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.
If you run the http control command
http://host:port/0/config/writeyes, motion will overwrite mo‐
tion.conf and all the camera.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.

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, jpeg_filename, ffmpeg_filename,
timelapse_filename, on_event_start,
on_event_end, on_picture_save, on_movie_start, on_movie_end, and
on_motion_detected.
In text_left and text_right you can additionally use '\n' for new
line.

%a The abbreviated weekday name according to the current locale.

%A The full weekday name according to the current locale.

%b The abbreviated month name according to the current locale.

%B The full month name according to the current locale.

%c The preferred date and time representation for the current locale.

%C Text defined by the text_event feature

%d The day of the month as a decimal number (range 01 to 31).

%D Number of pixels detected as Motion. If labelling is enabled the


number is the number of pixels in the
largest labelled motion area.

%E Modifier: use alternative format, see below.

%f File name - used in the on_picture_save, on_movie_start,


on_movie_end, and sql_query features.

%F Equivalent to %Y-%m-%d (the ISO 8601 date format).


%H The hour as a decimal number using a 24-hour clock (range 00 to
23).

%i Width of the rectangle containing the motion pixels (the


rectangle that is shown on the image when lo‐
cate is on).

%I The hour as a decimal number using a 12-hour clock (range 01 to


12).

%j The day of the year as a decimal number (range 001 to 366).

%J Height of the rectangle containing the motion pixels (the


rectangle that is shown on the image when lo‐
cate is on).

%k The hour (24-hour clock) as a decimal number (range 0 to 23);


single digits are preceded by a blank.
(See also %H.)

%K X coordinate in pixels of the center point of motion. Origin is


upper left corner.

%l The hour (12-hour clock) as a decimal number (range 1 to 12);


single digits are preceded by a blank.
(See also %I.)

%L Y coordinate in pixels of the center point of motion. Origin is


upper left corner and number is posi‐
tive moving downwards (I may change this soon).

%m The month as a decimal number (range 01 to 12).

%M The minute as a decimal number (range 00 to 59).

%n Filetype as used in the on_picture_save, on_movie_start,


on_movie_end, and sql_query features.

%N Noise level.

%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.

%p Either 'AM' or 'PM' according to the given time value, or the


corresponding strings for the current lo‐
cale. Noon is treated as `pm' and midnight as `am'.

%P Like %p but in lowercase: `am' or `pm' or a corresponding string


for the current locale.

%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 mpegs.

%Q Number of detected labels found by the despeckle feature

%r The time in a.m. or p.m. notation.

%R The time in 24-hour notation (%H:%M).

%s The number of seconds since the Epoch, i.e., since 1970-01-01


00:00:00 UTC.

%S The second as a decimal number (range 00 to 61).

%t Camera ID number

%T The time in 24-hour notation (%H:%M:%S).

%u The day of the week as a decimal, range 1 to 7, Monday being 1.


See also %w.

%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.

%v Event number. An event is a series of motion detections happening


with less than 'gap' seconds between
them.

%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.

%w The day of the week as a decimal, range 0 to 6, Sunday being 0.


See also %u.

%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.

%x The preferred date representation for the current locale without


the time.

%X The preferred time representation for the current locale without


the date.

%y The year as a decimal number without a century (range 00 to 99).

%Y The year as a decimal number including the century.

%z The time-zone as hour offset from GMT.

%Z The time zone or name or abbreviation.

%$ The camera name.

%{host}
The computer host name

%{fps} The frame per seconds.

%{dbeventid}
The id number returned from mysql_insert_id.

More information
Motion homepage: https://motion-project.github.io/

Motion Guide (user and installation guide):

AUTHORS
Jeroen Vreeken (pe1rxq@amsat.org), Folkert van Heusden, Kenneth
Lavrsen (kenneth@lavrsen.dk), Juan Angulo
Moreno <juan@apuntale.com>, the motion-project team, and many others

Motion 2017-11-05
MOTION(1)

You might also like