Hi,
Am So, 13. Nov, 2016 um 8:23 schrieb Marcel Lorenz <marcel.lorenz@ipfire.org>:
Signed-off-by: Marcel Lorenz <marcel.lorenz@ipfire.org> --- config/motion/camera1.conf | 71 +++++++ config/motion/camera2.conf | 71 +++++++ config/motion/camera3.conf | 71 +++++++ config/motion/camera4.conf | 71 +++++++ config/motion/motion.conf | 447 +++++++++++++++++++++++++-------------- config/rootfiles/packages/motion | 50 ++--- lfs/motion | 26 +-- 7 files changed, 610 insertions(+), 197 deletions(-) create mode 100644 config/motion/camera1.conf create mode 100644 config/motion/camera2.conf create mode 100644 config/motion/camera3.conf create mode 100644 config/motion/camera4.conf diff --git a/config/motion/camera1.conf b/config/motion/camera1.conf new file mode 100644 index 0000000..505c609 --- /dev/null +++ b/config/motion/camera1.conf @@ -0,0 +1,71 @@ +# /etc/motion/camera1.conf +# +# This config file was generated by motion 4.0.1 + +########################################################### +# Capture device options +############################################################ + +# Camera Id +# Consistent identification number to assign to each camera across multiple +# invocations of Motion. +# Default: The order when the camera file was read +# camera_id = 1 + +# Videodevice to be used for capturing (default /dev/video0) +# for FreeBSD default is /dev/bktr0 +videodevice /dev/video0 + +# The video input to be used (default: -1) +# Should normally be set to 1 for video/TV cards, and -1 for USB cameras +input -1 + +# Draw a user defined text on the images using same options as C function strftime(3) +# Default: Not defined = no text +# Text is placed in lower left corner +text_left CAMERA 1 + + +############################################################ +# Target Directories and filenames For Images And Films +# For the options snapshot_, picture_, mpeg_ and timelapse_filename +# you can use conversion specifiers +# %Y = year, %m = month, %d = date, +# %H = hour, %M = minute, %S = second, +# %v = event, %q = frame number, %t = camera id number, +# %D = changed pixels, %N = noise level, +# %i and %J = width and height of motion area, +# %K and %L = X and Y coordinates of motion center +# %C = value defined by text_event +# Quotation marks round string are allowed. +############################################################ + +# Target base directory for pictures and films +# Recommended to use absolute patch. (Default: current working directory) +#target_dir /tmp/motion/cam1 + +# File path for motion triggered images (jpeg or ppm) relative to target_dir +# Default: %v-%Y%m%d%H%M%S-%q +# Default value is equivalent to legacy oldlayout option +# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-%q +# File extension .jpg or .ppm is automatically added so do not include this +# Set to 'preview' together with best-preview feature enables special naming +# convention for preview shots. See motion guide for details +picture_filename CAM1_%v-%Y%m%d%H%M%S-%q + + +############################################################ +# Live Stream Server +############################################################ + +# The mini-http server listens to this port for requests (default: 0 = disabled) +stream_port 8081 + +# Command to be executed when a picture (.ppm|.jpg) is saved (default: none) +# The filename of the picture is appended as an argument for the command. +#on_picture_save /usr/local/motion-extras/camparse2.pl + +# Command to be executed when a movie file (.mpg|.avi) is closed. (default: none) +# Filename of movie is appended as an argument for the command. +#on_movie_end /usr/local/motion-extras/mpegparse2.pl + diff --git a/config/motion/camera2.conf b/config/motion/camera2.conf new file mode 100644 index 0000000..6c897b1 --- /dev/null +++ b/config/motion/camera2.conf @@ -0,0 +1,71 @@ +# /etc/motion/camera2.conf +# +# This config file was generated by motion 4.0.1 + +########################################################### +# Capture device options +############################################################ + +# Camera Id +# Consistent identification number to assign to each camera across multiple +# invocations of Motion. +# Default: The order when the camera file was read +# camera_id = 2 + +# Videodevice to be used for capturing (default /dev/video0) +# for FreeBSD default is /dev/bktr0 +videodevice /dev/video1 + +# The video input to be used (default: -1) +# Should normally be set to 1 for video/TV cards, and -1 for USB cameras +input 1 + +# Draw a user defined text on the images using same options as C function strftime(3) +# Default: Not defined = no text +# Text is placed in lower left corner +text_left CAMERA 2 + + +############################################################ +# Target Directories and filenames For Images And Films +# For the options snapshot_, picture_, mpeg_ and timelapse_filename +# you can use conversion specifiers +# %Y = year, %m = month, %d = date, +# %H = hour, %M = minute, %S = second, +# %v = event, %q = frame number, %t = camera id number, +# %D = changed pixels, %N = noise level, +# %i and %J = width and height of motion area, +# %K and %L = X and Y coordinates of motion center +# %C = value defined by text_event +# Quotation marks round string are allowed. +############################################################ + +# Target base directory for pictures and films +# Recommended to use absolute patch. (Default: current working directory) +#target_dir /tmp/motion/cam2 + +# File path for motion triggered images (jpeg or ppm) relative to target_dir +# Default: %v-%Y%m%d%H%M%S-%q +# Default value is equivalent to legacy oldlayout option +# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-%q +# File extension .jpg or .ppm is automatically added so do not include this +# Set to 'preview' together with best-preview feature enables special naming +# convention for preview shots. See motion guide for details +picture_filename CAM2_%v-%Y%m%d%H%M%S-%q + + +############################################################ +# Live Stream Server +############################################################ + +# The mini-http server listens to this port for requests (default: 0 = disabled) +stream_port 8082 + +# Command to be executed when a picture (.ppm|.jpg) is saved (default: none) +# The filename of the picture is appended as an argument for the command. +#on_picture_save /usr/local/motion-extras/camparse2.pl + +# Command to be executed when a movie file (.mpg|.avi) is closed. (default: none) +# Filename of movie is appended as an argument for the command. +#on_movie_end /usr/local/motion-extras/mpegparse2.pl + diff --git a/config/motion/camera3.conf b/config/motion/camera3.conf new file mode 100644 index 0000000..da9a52f --- /dev/null +++ b/config/motion/camera3.conf @@ -0,0 +1,71 @@ +# /etc/motion/camera3.conf +# +# This config file was generated by motion 4.0.1 + +########################################################### +# Capture device options +############################################################ + +# Camera Id +# Consistent identification number to assign to each camera across multiple +# invocations of Motion. +# Default: The order when the camera file was read +# camera_id = 3 + +# Videodevice to be used for capturing (default /dev/video0) +# for FreeBSD default is /dev/bktr0 +videodevice /dev/video2 + +# The video input to be used (default: -1) +# Should normally be set to 1 for video/TV cards, and -1 for USB cameras +input -1 + +# Draw a user defined text on the images using same options as C function strftime(3) +# Default: Not defined = no text +# Text is placed in lower left corner +text_left CAMERA 3 + + +############################################################ +# Target Directories and filenames For Images And Films +# For the options snapshot_, picture_, mpeg_ and timelapse_filename +# you can use conversion specifiers +# %Y = year, %m = month, %d = date, +# %H = hour, %M = minute, %S = second, +# %v = event, %q = frame number, %t = camera id number, +# %D = changed pixels, %N = noise level, +# %i and %J = width and height of motion area, +# %K and %L = X and Y coordinates of motion center +# %C = value defined by text_event +# Quotation marks round string are allowed. +############################################################ + +# Target base directory for pictures and films +# Recommended to use absolute patch. (Default: current working directory) +#target_dir /tmp/motion/cam3 + +# File path for motion triggered images (jpeg or ppm) relative to target_dir +# Default: %v-%Y%m%d%H%M%S-%q +# Default value is equivalent to legacy oldlayout option +# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-%q +# File extension .jpg or .ppm is automatically added so do not include this +# Set to 'preview' together with best-preview feature enables special naming +# convention for preview shots. See motion guide for details +picture_filename CAM3_%v-%Y%m%d%H%M%S-%q + + +############################################################ +# Live Stream Server +############################################################ + +# The mini-http server listens to this port for requests (default: 0 = disabled) +stream_port 8083 + +# Command to be executed when a picture (.ppm|.jpg) is saved (default: none) +# The filename of the picture is appended as an argument for the command. +#on_picture_save /usr/local/motion-extras/camparse2.pl + +# Command to be executed when a movie file (.mpg|.avi) is closed. (default: none) +# Filename of movie is appended as an argument for the command. +#on_movie_end /usr/local/motion-extras/mpegparse2.pl + diff --git a/config/motion/camera4.conf b/config/motion/camera4.conf new file mode 100644 index 0000000..da94f40 --- /dev/null +++ b/config/motion/camera4.conf @@ -0,0 +1,71 @@ +# /etc/motion/camera4.conf +# +# This config file was generated by motion 4.0.1 + +########################################################### +# Capture device options +############################################################ + +# Camera Id +# Consistent identification number to assign to each camera across multiple +# invocations of Motion. +# Default: The order when the camera file was read +# camera_id = 4 + +# Videodevice to be used for capturing (default /dev/video0) +# for FreeBSD default is /dev/bktr0 +videodevice /dev/video3 + +# The video input to be used (default: -1) +# Should normally be set to 1 for video/TV cards, and -1 for USB cameras +input -1 + +# Draw a user defined text on the images using same options as C function strftime(3) +# Default: Not defined = no text +# Text is placed in lower left corner +text_left CAMERA 4 + + +############################################################ +# Target Directories and filenames For Images And Films +# For the options snapshot_, picture_, mpeg_ and timelapse_filename +# you can use conversion specifiers +# %Y = year, %m = month, %d = date, +# %H = hour, %M = minute, %S = second, +# %v = event, %q = frame number, %t = camera id number, +# %D = changed pixels, %N = noise level, +# %i and %J = width and height of motion area, +# %K and %L = X and Y coordinates of motion center +# %C = value defined by text_event +# Quotation marks round string are allowed. +############################################################ + +# Target base directory for pictures and films +# Recommended to use absolute patch. (Default: current working directory) +#target_dir /tmp/motion/cam4 + +# File path for motion triggered images (jpeg or ppm) relative to target_dir +# Default: %v-%Y%m%d%H%M%S-%q +# Default value is equivalent to legacy oldlayout option +# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-%q +# File extension .jpg or .ppm is automatically added so do not include this +# Set to 'preview' together with best-preview feature enables special naming +# convention for preview shots. See motion guide for details +picture_filename CAM4_%v-%Y%m%d%H%M%S-%q + + +############################################################ +# Live Stream Server +############################################################ + +# The mini-http server listens to this port for requests (default: 0 = disabled) +stream_port 8084 + +# Command to be executed when a picture (.ppm|.jpg) is saved (default: none) +# The filename of the picture is appended as an argument for the command. +#on_picture_save /usr/local/motion-extras/camparse2.pl + +# Command to be executed when a movie file (.mpg|.avi) is closed. (default: none) +# Filename of movie is appended as an argument for the command. +#on_movie_end /usr/local/motion-extras/mpegparse2.pl + diff --git a/config/motion/motion.conf b/config/motion/motion.conf index 0d2853a..22cb76e 100644 --- a/config/motion/motion.conf +++ b/config/motion/motion.conf @@ -1,6 +1,6 @@ # Rename this distribution example file to motion.conf # -# This config file was generated by motion 3.2.11 +# This config file was generated by motion 4.0.1 ############################################################ @@ -8,10 +8,10 @@ ############################################################ # Start in daemon (background) mode and release terminal (default: off) -daemon on +daemon off # File to store the process ID, also called pid file. (default: not defined) -process_id_file /var/run/motion.pid +process_id_file /var/run/motion/motion.pid ############################################################ # Basic Setup Mode @@ -20,6 +20,16 @@ process_id_file /var/run/motion.pid # Start in Setup-Mode, daemon disabled. (default: off) setup_mode off + +# Use a file to save logs messages, if not defined stderr and syslog is used. (default: not defined) +;logfile /tmp/motion.log + +# Level of log messages [1..9] (EMG, ALR, CRT, ERR, WRN, NTC, INF, DBG, ALL). (default: 6 / NTC) +log_level 6 + +# Filter to log messages by type (COR, STR, ENC, NET, DBL, EVT, TRK, VID, ALL). (default: ALL) +log_type all + ########################################################### # Capture device options ############################################################ @@ -28,32 +38,43 @@ setup_mode off # for FreeBSD default is /dev/bktr0 videodevice /dev/video0 -# v4l2_palette allows to choose preferable palette to be use by motion -# to capture from those supported by your videodevice. (default: 8) +# v4l2_palette allows one to choose preferable palette to be use by motion +# to capture from those supported by your videodevice. (default: 17) # E.g. if your videodevice supports both V4L2_PIX_FMT_SBGGR8 and # V4L2_PIX_FMT_MJPEG then motion will by default use V4L2_PIX_FMT_MJPEG. -# Setting v4l2_palette to 1 forces motion to use V4L2_PIX_FMT_SBGGR8 +# Setting v4l2_palette to 2 forces motion to use V4L2_PIX_FMT_SBGGR8 # instead. # # Values : # V4L2_PIX_FMT_SN9C10X : 0 'S910' -# V4L2_PIX_FMT_SBGGR8 : 1 'BA81' -# V4L2_PIX_FMT_MJPEG : 2 'MJPEG' -# V4L2_PIX_FMT_JPEG : 3 'JPEG' -# V4L2_PIX_FMT_RGB24 : 4 'RGB3' -# V4L2_PIX_FMT_UYVY : 5 'UYVY' -# V4L2_PIX_FMT_YUYV : 6 'YUYV' -# V4L2_PIX_FMT_YUV422P : 7 '422P' -# V4L2_PIX_FMT_YUV420 : 8 'YU12' -v4l2_palette 8 +# 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_palette 17 # Tuner device to be used for capturing using tuner as source (default /dev/tuner0) # This is ONLY used for FreeBSD. Leave it commented out for Linux ; tunerdevice /dev/tuner0 -# The video input to be used (default: 8) -# Should normally be set to 0 or 1 for video/TV cards, and 8 for USB cameras -input 8 +# The video input to be used (default: -1) +# Should normally be set to 0 or 1 for video/TV cards, and -1 for USB cameras +# Set to 0 for uvideo(4) on OpenBSD +input -1 # The video norm to use (only for video capture and TV tuner cards) # Values: 0 (PAL), 1 (NTSC), 2 (SECAM), 3 (PAL NC no colour). Default: 0 (PAL) @@ -62,8 +83,17 @@ norm 0 # The frequency to set the tuner to (kHz) (only for TV tuner cards) (default: 0) frequency 0 +# Override the power line frequency for the webcam. (normally not necessary) +# Values: +# -1 : Do not modify device setting +# 0 : Power line frequency Disabled +# 1 : 50hz +# 2 : 60hz +# 3 : Auto +power_line_frequency -1 + # Rotate image this number of degrees. The rotation affects all saved images as -# well as mpeg movies. Valid values: 0 (default = no rotation), 90, 180 and 270. +# well as movies. Valid values: 0 (default = no rotation), 90, 180 and 270. rotate 0 # Image width (pixels). Valid range: Camera dependent, default: 352 @@ -81,8 +111,9 @@ framerate 2 # This option is used when you want to capture images at a rate lower than 2 per second. minimum_frame_time 0 -# URL to use if you are using a network camera, size will be autodetected (incl http:// ftp:// or file:///) -# Must be a URL that returns single jpeg pictures or a raw mjpeg stream. Default: Not defined +# URL to use if you are using a network camera, size will be autodetected (incl http:// ftp:// mjpg:// rtsp:// mjpeg:// or file:///) +# Must be a URL that returns single jpeg pictures or a raw mjpeg stream. A trailing slash may be required for some cameras. +# Default: Not defined ; netcam_url value # Username and password for network camera (only if required). Default: not defined @@ -90,32 +121,44 @@ minimum_frame_time 0 ; netcam_userpass value # The setting for keep-alive of network socket, should improve performance on compatible net cameras. -# 1.0: The historical implementation using HTTP/1.0, closing the socket after each http request. -# keep_alive: Use HTTP/1.0 requests with keep alive header to reuse the same connection. -# 1.1: Use HTTP/1.1 requests that support keep alive as default. -# Default: 1.0 -; netcam_http 1.0 +# 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 +netcam_keepalive off # URL to use for a netcam proxy server, if required, e.g. "http://myproxy". # If a port number other than 80 is needed, use "http://myproxy:1234". # Default: not defined -; netcam_proxy value +; netcam_proxy value # Set less strict jpeg checks for network cameras with a poor/buggy firmware. # Default: off netcam_tolerant_check off +# RTSP connection uses TCP to communicate to the camera. Can prevent image corruption. +# Default: on +rtsp_uses_tcp on + +# Name of camera to use if you are using a camera accessed through OpenMax/MMAL +# Default: Not defined +; mmalcam_name vc.ril.camera + +# Camera control parameters (see raspivid/raspistill tool documentation) +# Default: Not defined +; mmalcam_control_params -hf + # Let motion regulate the brightness of a video device (default: off). # 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 -auto_brightness on +auto_brightness off # Set 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. # Valid range 0-255, default 0 = disabled -brightness 128 +brightness 0 # Set the contrast of a video device. # Valid range 0-255, default 0 = disabled @@ -165,12 +208,13 @@ noise_tune on # 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 -despeckle EedDl +despeckle_filter EedDl # Detect motion in predefined areas (1 - 9). Areas are numbered like that: 1 2 3 # A script (on_area_detected) is started immediately when motion is 4 5 6 # detected in one of the given areas, but only once during an event. 7 8 9 -# One or more areas can be specified with this option. (Default: not defined) +# One or more areas can be specified with this option. Take care: This option +# does NOT restrict detection to these areas! (Default: not defined) ; area_detect value # PGM file to use as a sensitivity mask. @@ -194,24 +238,26 @@ minimum_motion_frames 1 # was detected that will be output 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 mpegs. To smooth mpegs use larger values of post_capture instead. -pre_capture 5 +# cause unsmooth movies. To smooth movies use larger values of post_capture instead. +pre_capture 2 # Number of frames to capture after motion is no longer detected (default: 0) -post_capture 5 +post_capture 2 -# Gap is the seconds of no motion detection that triggers the end of an event +# 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. -# Recommended value is 60 seconds (Default). The value 0 is allowed and disables -# events causing all Motion to be written to one single mpeg file and no pre_capture. -gap 0 +# Recommended value is 60 seconds (Default). 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. +event_gap 60 -# Maximum length in seconds of an mpeg movie -# When value is exceeded a new mpeg file is created. (Default: 0 = infinite) -max_mpeg_time 86400 +# Maximum length in seconds of a movie +# When value is exceeded a new movie file is created. (Default: 0 = infinite) +max_movie_time 0 # Always save images even if there was no motion (default: off) -output_all off +emulate_motion off ############################################################ @@ -224,33 +270,33 @@ output_all off # 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_normal off +output_pictures on # Output pictures with only the pixels moving object (ghost images) (default: off) -output_motion off +output_debug_pictures off # The quality (in percent) to be used by the jpeg compression (default: 75) quality 75 -# Output ppm images instead of jpeg (default: off) -ppm off - +# Type of output images +# Valid values: jpeg, ppm (default: jpeg) +picture_type jpeg ############################################################ # FFMPEG related options -# Film (mpeg) file output, and deinterlacing of the video input +# Film (movies) file output, and deinterlacing of the video input # The options movie_filename and timelapse_filename are also used # by the ffmpeg feature ############################################################ -# Use ffmpeg to encode mpeg movies in realtime (default: off) -ffmpeg_cap_new off +# Use ffmpeg to encode movies in realtime (default: off) +ffmpeg_output_movies on # Use ffmpeg to make movies with only the pixels moving # object (ghost images) (default: off) -ffmpeg_cap_motion off +ffmpeg_output_debug_movies off -# Use ffmpeg to encode a timelapse movie +# Use ffmpeg to encode a timelapse movie # Default value 0 = off - else save frame every Nth second ffmpeg_timelapse 0 @@ -260,31 +306,63 @@ ffmpeg_timelapse_mode daily # Bitrate to be used by the ffmpeg encoder (default: 400000) # This option is ignored if ffmpeg_variable_bitrate is not 0 (disabled) -ffmpeg_bps 500000 +ffmpeg_bps 400000 # 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. +# or the range 1 - 100 where 1 means worst quality and 100 is best. ffmpeg_variable_bitrate 0 # Codec to used by ffmpeg for the video compression. -# Timelapse mpegs are always made in mpeg1 format independent from this option. -# Supported formats are: mpeg1 (ffmpeg-0.4.8 only), mpeg4 (default), and msmpeg4. -# mpeg1 - gives you files with extension .mpg +# Timelapse videos have two options. +# mpg - Creates mpg file with mpeg-2 encoding. +# If motion is shutdown and restarted, new pics will be appended +# to any previously created file with name indicated for timelapse. +# mpeg4 - Creates avi file with the default encoding. +# If motion is shutdown and restarted, new pics will create a +# new file with the name indicated for timelapse. +# Supported formats are: # mpeg4 or msmpeg4 - gives you files with extension .avi # msmpeg4 is recommended for use with Windows Media Player because # it requires no installation of codec on the Windows client. # swf - gives you a flash film with extension .swf # flv - gives you a flash video with extension .flv -# ffv1 - FF video codec 1 for Lossless Encoding ( experimental ) -# mov - QuickTime ( testing ) -ffmpeg_video_codec msmpeg4 +# 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) +ffmpeg_video_codec mpeg4 -# Use ffmpeg to deinterlace video. Necessary if you use an analog camera -# and see horizontal combing on moving objects in video or pictures. -# (default: off) -ffmpeg_deinterlace off +# When creating videos, should frames be duplicated in order +# to keep up with the requested frames per second +# (default: true) +ffmpeg_duplicate_frames true + +############################################################ +# SDL Window +############################################################ + +# Number of motion thread to show in SDL Window (default: 0 = disabled) +#sdl_threadnr 0 + +############################################################ +# External pipe to video encoder +# Replacement for FFMPEG builtin encoder for ffmpeg_output_movies only. +# The options movie_filename and timelapse_filename are also used +# by the ffmpeg feature +############################################################# + +# Bool to enable or disable extpipe (default: off) +use_extpipe off + +# External program (full path and opts) to pipe raw video to +# Generally, use '-' for STDIN... +;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 +;extpipe x264 - --input-res %wx%h --fps %fps --bitrate 2000 --preset ultrafast --quiet -o %f.mp4 +;extpipe mencoder -demuxer rawvideo -rawvideo w=%w:h=%h:fps=%fps -ovc x264 -x264encopts preset=ultrafast -of lavf -o %f.mp4 - -fps %fps +;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 ############################################################ @@ -299,7 +377,7 @@ snapshot_interval 0 # Text Display # %Y = year, %m = month, %d = date, # %H = hour, %M = minute, %S = second, %T = HH:MM:SS, -# %v = event, %q = frame number, %t = thread (camera) number, +# %v = event, %q = frame number, %t = camera id number, # %D = changed pixels, %N = noise level, \n = new line, # %i and %J = width and height of motion area, # %K and %L = X and Y coordinates of motion center @@ -309,9 +387,17 @@ snapshot_interval 0 ############################################################ # Locate and draw a box around the moving object. -# Valid values: on, off and preview (default: off) +# Valid values: on, off, preview (default: off) # Set to 'preview' will only draw a box in preview_shot pictures. -locate off +locate_motion_mode off + +# Set the look and style of the locate box if enabled. +# Valid values: box, redbox, cross, redcross (default: box) +# Set to 'box' will draw the traditional box. +# Set to 'redbox' will draw a red box. +# Set to 'cross' will draw a little cross to mark center. +# Set to 'redcross' will draw a little red cross to mark center. +locate_motion_style box # Draws the timestamp using same options as C function strftime(3) # Default: %Y-%m-%d\n%T = date in ISO format and time in 24 hour clock @@ -321,7 +407,7 @@ text_right %Y-%m-%d\n%T-%q # Draw a user defined text on the images using same options as C function strftime(3) # Default: Not defined = no text # Text is placed in lower left corner -text_left CAMERA %t\nhttp://www.ipfire.org +; text_left CAMERA %t # Draw the number of changed pixed on the images (default: off) # Will normally be set to off except when you setup and adjust the motion settings @@ -340,13 +426,18 @@ text_event %Y%m%d%H%M%S text_double off +# Text to include in a JPEG EXIF comment +# May be any text, including conversion specifiers. +# The EXIF timestamp is included independent of this text. +;exif_text %i%J/%K%L + ############################################################ # Target Directories and filenames For Images And Films -# For the options snapshot_, jpeg_, mpeg_ and timelapse_filename +# For the options snapshot_, picture_, movie_ and timelapse_filename # you can use conversion specifiers # %Y = year, %m = month, %d = date, # %H = hour, %M = minute, %S = second, -# %v = event, %q = frame number, %t = thread (camera) number, +# %v = event, %q = frame number, %t = camera id number, # %D = changed pixels, %N = noise level, # %i and %J = width and height of motion area, # %K and %L = X and Y coordinates of motion center @@ -356,7 +447,7 @@ text_double off # Target base directory for pictures and films # Recommended to use absolute path. (Default: current working directory) -target_dir /var/motion/cam1 +#target_dir /tmp/motion # File path for snapshots (jpeg or ppm) relative to target_dir # Default: %v-%Y%m%d%H%M%S-snapshot @@ -374,73 +465,90 @@ snapshot_filename %v-%Y%m%d%H%M%S-snapshot # File extension .jpg or .ppm is automatically added so do not include this # Set to 'preview' together with best-preview feature enables special naming # convention for preview shots. See motion guide for details -jpeg_filename %v-%Y%m%d%H%M%S-%q +picture_filename %v-%Y%m%d%H%M%S-%q -# File path for motion triggered ffmpeg films (mpeg) relative to target_dir +# File path for motion triggered ffmpeg films (movies) relative to target_dir # Default: %v-%Y%m%d%H%M%S -# Default value is equivalent to legacy oldlayout option -# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H%M%S -# File extension .mpg or .avi is automatically added so do not include this -# This option was previously called ffmpeg_filename +# File extensions(.mpg .avi) are automatically added so do not include them movie_filename %v-%Y%m%d%H%M%S -# File path for timelapse mpegs relative to target_dir +# File path for timelapse movies relative to target_dir # Default: %Y%m%d-timelapse -# Default value is near equivalent to legacy oldlayout option -# For Motion 3.0 compatible mode choose: %Y/%m/%d-timelapse -# File extension .mpg is automatically added so do not include this +# File extensions(.mpg .avi) are automatically added so do not include them timelapse_filename %Y%m%d-timelapse +############################################################ +# Global Network Options +############################################################ +# Enable IPv6 (default: off) +ipv6_enabled off ############################################################ -# Live Webcam Server +# Live Stream Server ############################################################ # The mini-http server listens to this port for requests (default: 0 = disabled) -webcam_port 2500 +stream_port 8081 -# Quality of the jpeg images produced (default: 50) -webcam_quality 50 +# Quality of the jpeg (in percent) images produced (default: 50) +stream_quality 50 # Output frames at 1 fps when no motion is detected and increase to the -# rate given by webcam_maxrate when motion is detected (default: off) -webcam_motion off +# rate given by stream_maxrate when motion is detected (default: off) +stream_motion off -# Maximum framerate for webcam streams (default: 1) -webcam_maxrate 1 +# Maximum framerate for stream streams (default: 1) +stream_maxrate 1 -# Restrict webcam connections to localhost only (default: on) -webcam_localhost off +# Restrict stream connections to localhost only (default: on) +stream_localhost on # Limits the number of images per connection (default: 0 = unlimited) -# Number can be defined by multiplying actual webcam rate by desired number of seconds -# Actual webcam rate is the smallest of the numbers framerate and webcam_maxrate -webcam_limit 0 +# Number can be defined by multiplying actual stream rate by desired number of seconds +# Actual stream rate is the smallest of the numbers framerate and stream_maxrate +stream_limit 0 +# Set the authentication method (default: 0) +# 0 = disabled +# 1 = Basic authentication +# 2 = MD5 digest (the safer authentication) +stream_auth_method 0 + +# Authentication for the stream. Syntax username:password +# Default: not defined (Disabled) +; stream_authentication username:password + +# Percentage to scale the stream image for preview +# Default: 25 +; stream_preview_scale 25 + +# Have stream preview image start on a new line +# Default: no +; stream_preview_newline no ############################################################ # HTTP Based Control ############################################################ # TCP/IP port for the http server to listen on (default: 0 = disabled) -control_port 0 +webcontrol_port 8080 # Restrict control connections to localhost only (default: on) -control_localhost on +webcontrol_localhost on # Output for http server, select off to choose raw text plain (default: on) -control_html_output on +webcontrol_html_output on # Authentication for the http based control. Syntax username:password # Default: not defined (Disabled) -; control_authentication username:password +; webcontrol_authentication username:password ############################################################ # Tracking (Pan/Tilt) -############################################################ +############################################################# -# Type of tracker (0=none (default), 1=stepper, 2=iomojo, 3=pwc, 4=generic, 5=uvcvideo) +# Type of tracker (0=none (default), 1=stepper, 2=iomojo, 3=pwc, 4=generic, 5=uvcvideo, 6=servo) # The generic type enables the definition of motion center and motion size to # be used with the conversion specifiers for options like on_motion_detected track_type 0 @@ -449,19 +557,37 @@ track_type 0 track_auto off # Serial port of motor (default: none) -; track_port value +;track_port /dev/ttyS0 # Motor number for x-axis (default: 0) -track_motorx 0 +;track_motorx 0 + +# Set motorx reverse (default: 0) +;track_motorx_reverse 0 # Motor number for y-axis (default: 0) -track_motory 0 +;track_motory 1 + +# Set motory reverse (default: 0) +;track_motory_reverse 0 # Maximum value on x-axis (default: 0) -track_maxx 0 +;track_maxx 200 + +# Minimum value on x-axis (default: 0) +;track_minx 50 # Maximum value on y-axis (default: 0) -track_maxy 0 +;track_maxy 200 + +# Minimum value on y-axis (default: 0) +;track_miny 50 + +# Center value on x-axis (default: 0) +;track_homex 128 + +# Center value on y-axis (default: 0) +;track_homey 128 # ID of an iomojo camera if used (default: 0) track_iomojo_id 0 @@ -492,7 +618,7 @@ track_stepsize 40 # You can use conversion specifiers for the on_xxxx commands # %Y = year, %m = month, %d = date, # %H = hour, %M = minute, %S = second, -# %v = event, %q = frame number, %t = thread (camera) number, +# %v = event, %q = frame number, %t = camera id number, # %D = changed pixels, %N = noise level, # %i and %J = width and height of motion area, # %K and %L = X and Y coordinates of motion center @@ -509,11 +635,11 @@ track_stepsize 40 quiet on # Command to be executed when an event starts. (default: none) -# An event starts at first motion detected after a period of no motion defined by gap +# An event starts at first motion detected after a period of no motion defined by event_gap ; on_event_start value # Command to be executed when an event ends after a period of no motion -# (default: none). The period of no motion is defined by option gap. +# (default: none). The period of no motion is defined by option event_gap. ; on_event_end value # Command to be executed when a picture (.ppm|.jpg) is saved (default: none) @@ -536,27 +662,27 @@ quiet on ; on_movie_end value # Command to be executed when a camera can't be opened or if it is lost -# NOTE: There is situations when motion doesn't detect a lost camera! -# It depends on the driver, some drivers don't detect a lost camera at all -# Some hang the motion thread. Some even hang the PC! (default: none) +# NOTE: There is situations when motion don't detect a lost camera! +# It depends on the driver, some drivers dosn't detect a lost camera at all +# Some hangs the motion thread. Some even hangs the PC! (default: none) ; on_camera_lost value -############################################################ -# Common Options For MySQL and PostgreSQL database features. -# Options require the MySQL/PostgreSQL options to be active also. -############################################################ +##################################################################### +# Common Options for database features. +# Options require database options to be active also. +##################################################################### -# Log to the database when creating motion triggered image file (default: on) -sql_log_image on +# Log to the database when creating motion triggered picture file (default: on) +; sql_log_picture on # Log to the database when creating a snapshot image file (default: on) -sql_log_snapshot on +; sql_log_snapshot on -# Log to the database when creating motion triggered mpeg file (default: off) -sql_log_mpeg off +# Log to the database when creating motion triggered movie file (default: off) +; sql_log_movie off -# Log to the database when creating timelapse mpeg file (default: off) -sql_log_timelapse off +# Log to the database when creating timelapse movies file (default: off) +; sql_log_timelapse off # SQL query string that is sent to the database # Use same conversion specifiers has for text features @@ -564,45 +690,46 @@ sql_log_timelapse off # %n = the number representing the file_type # %f = filename with full path # Default value: +# Create tables : +## +# 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); +# # insert into security(camera, filename, frame, file_type, time_stamp, text_event) values('%t', '%f', '%q', '%n', '%Y-%m-%d %T', '%C') -sql_query insert into security(camera, filename, frame, file_type, time_stamp, event_time_stamp) values('%t', '%f', '%q', '%n', '%Y-%m-%d %T', '%C') +; sql_query insert into security(camera, filename, frame, file_type, time_stamp, event_time_stamp) values('%t', '%f', '%q', '%n', '%Y-%m-%d %T', '%C') ############################################################ -# Database Options For MySQL +# Database Options ############################################################ -# Mysql database to log to (default: not defined) -; mysql_db value - -# The host on which the database is located (default: localhost) -; mysql_host value - -# User account name for MySQL database (default: not defined) -; mysql_user value +# database type : mysql, postgresql, sqlite3 (default : not defined) +; database_type mysql -# User password for MySQL database (default: not defined) -; mysql_password value +# database to log to (default: not defined) +# for sqlite3, the full path and name for the database. +; database_dbname motion +# The host on which the database is located (default: localhost) +; database_host 127.0.0.1 -############################################################ -# Database Options For PostgreSQL -############################################################ - -# PostgreSQL database to log to (default: not defined) -; pgsql_db value +# User account name for database (default: not defined) +; database_user motion -# The host on which the database is located (default: localhost) -; pgsql_host value +# User password for database (default: not defined) +; database_password changeme -# User account name for PostgreSQL database (default: not defined) -; pgsql_user value +# Port on which the database is located +# mysql 3306 , postgresql 5432 (default: not defined) +; database_port 3306 -# User password for PostgreSQL database (default: not defined) -; pgsql_password value +# Database wait time in milliseconds for locked database to +# be unlocked before returning database locked error (default 0) +; database_busy_timeout 0 -# Port on which the PostgreSQL database is located (default: 5432) -; pgsql_port 5432 ############################################################ @@ -619,19 +746,25 @@ sql_query insert into security(camera, filename, frame, file_type, time_stamp, e ############################################################## -# Thread config files - One for each camera. +# camera config files - One for each camera. # Except if only one camera - You only need this config file. -# If you have more than one camera you MUST define one thread +# If you have more than one camera you MUST define one camera # config file for each camera in addition to this config file. ############################################################## # Remember: If you have more than one camera you must have one -# thread file for each camera. E.g. 2 cameras requires 3 files: -# This motion.conf file AND thread1.conf and thread2.conf. +# camera file for each camera. E.g. 2 cameras requires 3 files: +# This motion.conf file AND camera1.conf and camera2.conf. # Only put the options that are unique to each camera in the -# thread config files. -; thread /usr/local/etc/thread1.conf -; thread /usr/local/etc/thread2.conf -; thread /usr/local/etc/thread3.conf -; thread /usr/local/etc/thread4.conf +# camera config files. +; camera /etc/motion/camera1.conf +; camera /etc/motion/camera2.conf +; camera /etc/motion/camera3.conf +; camera /etc/motion/camera4.conf + +############################################################## +# Camera config directory - One for each camera. +############################################################## +# +; camera_dir /etc/motion/conf.d diff --git a/config/rootfiles/packages/motion b/config/rootfiles/packages/motion index aa3e5b7..7905f8e 100644 --- a/config/rootfiles/packages/motion +++ b/config/rootfiles/packages/motion @@ -1,27 +1,29 @@ -#etc/motion-dist.conf -etc/motion.conf +etc/motion +#etc/motion/camera1.conf +#etc/motion/camera2.conf +#etc/motion/camera3.conf +#etc/motion/camera4.conf +#etc/motion/motion.conf
We did such a high effort to copy these files to /etc and then we comment them out in the rootfile?When we do not need them, why should we put them into /config/motion, this is very messy. usr/bin/motion -#usr/share/doc/motion-3.2.12 -#usr/share/doc/motion-3.2.12/CHANGELOG -#usr/share/doc/motion-3.2.12/COPYING -#usr/share/doc/motion-3.2.12/CREDITS -#usr/share/doc/motion-3.2.12/INSTALL -#usr/share/doc/motion-3.2.12/README -#usr/share/doc/motion-3.2.12/motion_guide.html +#usr/share/doc/motion +#usr/share/doc/motion/CHANGELOG +#usr/share/doc/motion/COPYING +#usr/share/doc/motion/CREDITS +#usr/share/doc/motion/README.md +#usr/share/doc/motion/mask1.png +#usr/share/doc/motion/motion_guide.html +#usr/share/doc/motion/normal.jpg +#usr/share/doc/motion/outputmotion1.jpg +#usr/share/doc/motion/outputnormal1.jpg #usr/share/man/man1/motion.1 -#usr/share/motion-3.2.12 -#usr/share/motion-3.2.12/examples -#usr/share/motion-3.2.12/examples/motion-dist.conf -#usr/share/motion-3.2.12/examples/motion.init-Debian -#usr/share/motion-3.2.12/examples/motion.init-Fedora -#usr/share/motion-3.2.12/examples/motion.init-FreeBSD.sh -#usr/share/motion-3.2.12/examples/motion.init-RH -#usr/share/motion-3.2.12/examples/thread1.conf -#usr/share/motion-3.2.12/examples/thread2.conf -#usr/share/motion-3.2.12/examples/thread3.conf -#usr/share/motion-3.2.12/examples/thread4.conf +#usr/share/motion +#usr/share/motion/examples +#usr/share/motion/examples/camera1-dist.conf +#usr/share/motion/examples/camera2-dist.conf +#usr/share/motion/examples/camera3-dist.conf +#usr/share/motion/examples/camera4-dist.conf +#usr/share/motion/examples/motion-dist.conf +#usr/share/motion/examples/motion.init-Debian +#usr/share/motion/examples/motion.init-FreeBSD.sh +#usr/share/motion/examples/motion.service var/ipfire/backup/addons/includes/motion -etc/rc.d/init.d/motion -etc/rc.d/rc0.d/K01motion -etc/rc.d/rc6.d/K01motion -etc/rc.d/rc3.d/S99motion diff --git a/lfs/motion b/lfs/motion index 39c6b73..0e70c1e 100644 --- a/lfs/motion +++ b/lfs/motion @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team <info@ipfire.org> # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,16 +24,16 @@ include Config -VER = 3.2.12 +VER = 4.0.1 -THISAPP = motion-$(VER) +THISAPP = motion-release-$(VER) DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = motion -PAK_VER = 1 +PAK_VER = 2 DEPS = "ffmpeg" ############################################################################### @@ -44,7 +44,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_MD5 = 1ba0065ed50509aaffb171594c689f46 +$(DL_FILE)_MD5 = 5c87f90c4118d8cf0fb14700db69118f install : $(TARGET) @@ -76,20 +76,14 @@ dist: $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) - - #Install obsolete V4L1 videodev.h - cp $(DIR_SRC)/config/include/obsolete_videodev.h /usr/include/linux/videodev.h - - cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && autoreconf + cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc --with-ffmpeg cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install - cp -vf $(DIR_SRC)/config/motion/motion.conf /etc + rm -vf /etc/motion/*.conf + cp -vf $(DIR_SRC)/config/motion/*.conf /etc/motion/ install -v -m 644 $(DIR_SRC)/config/backup/includes/motion \ /var/ipfire/backup/addons/includes/motion - - #Remove obsolete V4L1 videodev.h - rm -f /usr/include/linux/videodev.h - @rm -rf $(DIR_APP) @$(POSTBUILD)--2.9.3