Raspberry-Pi
運動每秒拍攝一張圖像,即使它設置為不
我在帶有多餘 Microsoft Xbox 攝像頭的 Raspberry Pi 上執行運動。據我所知,我已將其設置為每 30 分鐘僅拍攝一張圖像,並且還使用圖像創建每日延遲時間攝影。但是,從我啟動它的那一刻起,運動就會每隔一秒左右拍攝一張圖像並將其保存到我的快照文件夾中。我不希望這種情況發生!當然,我希望通過 Web UI 可以看到實時提要,但我只希望每半小時保存一次圖像以及每天的延遲時間。
我相信這是我的配置文件的相關部分:
我的 /etc/motion/motion.conf:整件事都在這裡:https ://pastebin.com/32cZNeGU
# Maximum number of frames to be captured per second. # Valid range: 2-100. Default: 100 (almost no limit). framerate 100 # Minimum time in seconds between capturing picture frames from the camera. # Default: 0 = disabled - the capture rate is given by the camera framerate. # This option is used when you want to capture images at a rate lower than 2 per second. minimum_frame_time 0 ############################################################ # Motion Detection Settings: ############################################################ # Threshold for number of changed pixels in an image that # triggers motion detection (default: 1500) threshold 9999 # Automatically tune the threshold down if possible (default: off) threshold_tune off # Noise threshold for the motion detection (default: 32) noise_level 32 # Automatically tune the noise threshold (default: on) noise_tune on # Despeckle motion image using (e)rode or (d)ilate or (l)abel (Default: not defined) # 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_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. 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. # Full path name to. (Default: not defined) ; mask_file value # Dynamically create a mask file during operation (default: 0) # Adjust speed of mask changes from 0 (off) to 10 (fast) smart_mask_speed 0 # Ignore sudden massive light intensity changes given as a percentage of the picture # area that changed intensity. Valid range: 0 - 100 , default: 0 = disabled lightswitch 0 # 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: 1 to thousands, recommended 1-5 minimum_motion_frames 1 # Specifies the number of pre-captured (buffered) pictures from before motion # 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 movies. To smooth movies use larger values of post_capture instead. pre_capture 0 # Number of frames to capture after motion is no longer detected (default: 0) post_capture 0 # 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 -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 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) emulate_motion off ############################################################ # Image File Output ############################################################ # Output 'normal' pictures when motion is detected (default: on) # Valid values: on, off, first, best, center # 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_pictures off # Output pictures with only the pixels moving object (ghost images) (default: off) output_debug_pictures off # The quality (in percent) to be used by the jpeg compression (default: 75) quality 75 # Type of output images # Valid values: jpeg, ppm (default: jpeg) picture_type jpeg ############################################################ # FFMPEG related options # 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 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_output_debug_movies off # Use ffmpeg to encode a timelapse movie # Default value 0 = off - else save frame every Nth second ffmpeg_timelapse 1800000 # The file rollover mode of the timelapse video # Valid values: hourly, daily (default), weekly-sunday, weekly-monday, monthly, manual 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 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 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 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 # mov - QuickTime # mp4 - MPEG-4 Part 14 H264 encoding # mkv - Matroska H264 encoding # hevc - H.265 / HEVC (High Efficiency Video Coding) ffmpeg_video_codec hevc # When creating videos, should frames be duplicated in order # to keep up with the requested frames per second # (default: true) ffmpeg_duplicate_frames false ############################################################ # Snapshots (Traditional Periodic Webcam File Output) ############################################################ # Make automated snapshot every N seconds (default: 0 = disabled) snapshot_interval 1800000 ############################################################ # Text Display # %Y = year, %m = month, %d = date, # %H = hour, %M = minute, %S = second, %T = HH:MM:SS, # %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 # %C = value defined by text_event - do not use with text_event! # You can put quotation marks around the text to allow # leading spaces ############################################################ # Locate and draw a box around the moving object. # Valid values: on, off, preview (default: off) # Set to 'preview' will only draw a box in preview_shot pictures. 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 # Text is placed in lower right corner 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 %t Skycam facing South East %T *d frame%q noise%N # 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 # Text is placed in upper right corner text_changes off # 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. # Default: %Y%m%d%H%M%S # The idea is that %C can be used filenames and text_left/right for creating # a unique identifier for each event. text_event %Y%m%d%H%M%S # Draw characters at twice normal size on images. (default: off) text_double on # 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_, 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 = 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 path. (Default: current working directory) target_dir /home/pi/skycam-snapshots # File path for snapshots (jpeg or ppm) relative to target_dir # Default: %v-%Y%m%d%H%M%S-snapshot # Default value is equivalent to legacy oldlayout option # For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-snapshot # File extension .jpg or .ppm is automatically added so do not include this. # Note: A symbolic link called lastsnap.jpg created in the target_dir will always # point to the latest snapshot, unless snapshot_filename is exactly 'lastsnap' snapshot_filename %v-%Y%m%d%H%M%S-snapshot # 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 %v-%Y%m%d%H%M%S-%q # File path for motion triggered ffmpeg films (movies) relative to target_dir # Default: %v-%Y%m%d%H%M%S # 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 movies relative to target_dir # Default: %Y%m%d-timelapse # 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 Stream Server ############################################################ # The mini-http server listens to this port for requests (default: 0 = disabled) stream_port 8081 # Quality of the jpeg (in percent) images produced (default: 50) stream_quality 75 # Output frames at 1 fps when no motion is detected and increase to the # rate given by stream_maxrate when motion is detected (default: off) stream_motion off # Maximum framerate for stream streams (default: 1) stream_maxrate 100 # Restrict stream connections to localhost only (default: on) stream_localhost off # Limits the number of images per connection (default: 0 = unlimited) # 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 admin:admin # 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) webcontrol_port 8181 # Restrict control connections to localhost only (default: on) webcontrol_localhost on # Output for http server, select off to choose raw text plain (default: on) webcontrol_html_output on # Authentication for the http based control. Syntax username:password # Default: not defined (Disabled) webcontrol_authentication admin:admin ############################################################ # External Commands, Warnings and Logging: # 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 = 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 # %f = filename with full path # %n = number indicating filetype # Both %f and %n are only defined for on_picture_save, # on_movie_start and on_movie_end # Quotation marks round string are allowed. ############################################################ # Do not sound beeps when detecting motion (default: on) # Note: Motion never beeps when running in daemon mode. 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 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 event_gap. ; on_event_end value # Command to be executed when a picture (.ppm|.jpg) is saved (default: none) # To give the filename as an argument to a command append it with %f ; on_picture_save value # Command to be executed when a motion frame is detected (default: none) ; on_motion_detected value # Command to be executed when motion in a predefined area is detected # Check option 'area_detect'. (default: none) ; on_area_detected value # Command to be executed when a movie file (.mpg|.avi) is created. (default: none) # To give the filename as an argument to a command append it with %f ; on_movie_start value # Command to be executed when a movie file (.mpg|.avi) is closed. (default: none) # To give the filename as an argument to a command append it with %f ; 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 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 ############################################################ # Video Loopback Device (vloopback project) ############################################################ # Output images to a video4linux loopback device # The value '-' means next available (default: not defined) ; video_pipe value # Output motion images to a video4linux loopback device # The value '-' means next available (default: not defined) ; motion_video_pipe value ############################################################## # 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 camera # config file for each camera in addition to this config file. ############################################################## # Remember: If you have more than one camera you must have one # 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 # 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
這是我的 /etc/motion/camera1.conf:(這是整個文件)
# /etc/motion/camera1.conf # # This config file was generated by motion 4.0 ########################################################### # 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 %t Skycam facing SE %T *d frame%q noise%N ############################################################ # 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
目前玩這樣的東西,遇到了一些類似的問題。這是我看到的:
minimum_motion_frames 1
看起來這將為相機上檢測到的每個動作拍攝一張照片。不確定你是否知道——在 RasPi 上,我將它提高到 5 個。
webcontrol_localhost on
我通常將其關閉以便我可以遠端控制原因是:
- Motion 在預設情況下是為了捕捉動作而建構的,並告訴它不需要手動干預
- 此處干預的最佳方式實際上是通過 Web UI (操作 > 檢測 > 暫停)
- **另一種更手動的方法是使用 -m 開關(motion -m …)**從命令行呼叫動作。這需要對流程進行更多管理,但也可以。