Settings

 Monitor Settings

 Identity

Field Description Default Example
Mode This is the primary task of the monitor.
  • Disabled : Inactive monitor, no process will be created in this mode.
  • Watch-Only : Monitor will only stream, no recording will occur unless otherwise ordered by API or Detector.
  • Record : Continuous Recording. Segments are made every 15 minutes by default.
Disabled
Monitor ID This is a non-changeable identifier for the monitor. You can duplicate a monitor by double clicking the Monitor ID and changing it. Provided by Server awFST99MGn
Name This is the human-readable display name for the monitor. Bunny
Retry Connection The number of times to retry for network connection between the server and camera before setting the monitor to Disabled. No decimals. 10 100000

 Input

Field Description Default Example
Input Type The method that will used to consume the video stream.
  • JPEG : Reading snapshots from a URL and making a stream and/or video from them.
  • MJPEG : Similar to JPEG except the frame handling is done by FFMPEG, not Shinobi.
  • H.264 : Reading a high quality video streas that sometimes include audio.
  • Local : Reading Capture Cards, Webcams, or Integrated Cameras.
  • Shinobi Streamer : Dashcam Application : Remote method of connecting to USB or Integrated Cameras through WebRTC.
JPEG
Connection Type The protocol that will used to consume the video stream.
  • HTTP : Standard connection method.
  • HTTPS : Standard connection method with SSL.
  • RTSP : Real Time Streaming Protocol
  • UDP : Near restrictionless data transfer method.
HTTP
Username The user login for your camera
Password The password for your camera
Host Connection address 111.111.111.111
Port Port number that your camera is streaming out on.
Possible : 1-65535
80 554
Path The password for your camera /videostream.cgi
Analyzation Duration Specify how many microseconds are analyzed to probe the input. Set to 10000 if you are using RTSP and having stream issues. 10000
RTSP Transport The password for your camera
  • Auto : Let FFMPEG decide. Normally it will try UDP first.
  • TCP : Set it to this if UDP starts giving undesired results.
  • UDP : FFMPEG tries this first.
  • HTTP : Standard connection method.

 Stream

Field Description Default Example
Stream Type The method that will used to consume the video stream.
  • MJPEG : Standard Motion JPEG image. No audio.
  • HLS : Similar method to facebook live streams. Includes audio if input provides it. There is a delay of about 4-6 seconds because this method records segments then pushes them to the client rather than push as while it creates them.
  • Base64 : Sending Base64 encoded frames over WebSocket. This avoids caching but there is no audio.
Base64
Check Signal Interval How often your client will check each stream to see if it is alive. This is calculated in minutes. 10
Log Signal Event This is for the client side only. It will display in the log thread when client side signal checks occur.
  • No : No signal check.
  • Yes : Check signal based on the number of minutes provided.
No
Quality Low number means higher quality. Higher number means less quality.
Possible : 1-23
15 1
Rate (FPS) The speed in which frames are displayed to clients. Frames Per Second. Be aware there is no default. This can lead to high bandwidth usage. 2
Height Height of the stream image. 640 1280
Width Height of the stream image. 480 720
Video Filter Place FFMPEG video filters in this box to affect the streaming portion. No spaces.

 Stream - HLS

Field Description Default Example
Video Codec Video codec for streaming.
  • Default : Let Shinobi choose.
  • Auto : Let FFMPEG choose.
  • libvpx : Used for WebM video.
  • libvpx-vp9 : Used for WebM video.
  • libx264 : Used for MP4 video.
  • libx265 : Used for MP4 video.
  • copy : Used for MP4 video. Has very low CPU usage but cannot use video filters and filesizes may be gigantic.
libx264
Audio Codec Audio codec for streaming.
  • Default : Let Shinobi choose.
  • Auto : Let FFMPEG choose.
  • No Audio : No Audio, this is an option that must be set in some parts of the world due to legal reasons.
  • libvorbis : Used for WebM video.
  • libopus : Used for WebM video.
  • libmp3lame : Used for MP4 video.
  • aac : Used for MP4 video.
  • ac3 : Used for MP4 video.
  • copy : Used for MP4 video. Has very low CPU usage but some audio codecs need custom flags like -strict 2 for aac.
No Audio
HLS Segment Length How long each segment should be. Each segment will be drawn by the client through an m3u8 file. Shorter is better, less space used.
Possible : 1-23
2 3
HLS List Size The number of segments maximum before deleting old segments automatically. 2 3
HLS Preset Preset flag for certain video encoders. If you find your camera is crashing every few seconds : try leaving it blank. ultrafast
Width Height of the stream image. 480 720
Video Filter Place FFMPEG video filters in this box to affect the streaming portion. No spaces.

 Record

Field Description Default Example
Record File Type The file type for your recorded video file.
  • MP4 : This file type is playable is almost all modern web browsers, that includes mobile. The filesize just tends to be gigantic unless you lower the quality.
  • WebM : Small filesize, low client compatibility. Good for uploading to sites like YouTube.
MP4
Video Codec Video codec for recording.
  • Default : Let Shinobi choose.
  • Auto : Let FFMPEG choose.
  • libvpx : Used for WebM video.
  • libvpx-vp9 : Used for WebM video.
  • libx264 : Used for MP4 video.
  • libx265 : Used for MP4 video.
  • copy : Used for MP4 video. Has very low CPU usage but cannot use video filters and filesizes may be gigantic.
libx264
Audio Codec Audio codec for recording.
  • Default : Let Shinobi choose.
  • Auto : Let FFMPEG choose.
  • No Audio : No Audio, this is an option that must be set in some parts of the world due to legal reasons.
  • libvorbis : Used for WebM video.
  • libopus : Used for WebM video.
  • libmp3lame : Used for MP4 video.
  • aac : Used for MP4 video.
  • ac3 : Used for MP4 video.
  • copy : Used for MP4 video. Has very low CPU usage but some audio codecs need custom flags like -strict 2 for aac.
No Audio
Quality Low number means higher quality. Higher number means less quality.
Possible : 1-23
15 1
Preset Preset flag for certain video encoders. If you find your camera is crashing every few seconds : try leaving it blank. ultrafast
Video Record Rate (FPS) The speed in which frames are recorded to files. Frames Per Second. Be aware there is no default. This can lead to large files. 2
Record Height Height of the stream image. 640 1280
Record Width Height of the stream image. 480 720
Recording Segment Interval In minutes. When to slice off and start a new video file. 15 60
Double Quote Directory Some directories have spaces depending on how you setup your OS.
  • No : No is the default.
  • Yes : Using this may crash some cameras.
No
Record Video Filter Place FFMPEG video filters in this box to affect the recording portion. No spaces.

 Timestamp

Field Description Default Example
Font Path Font File to style your timestamp. /usr/share/fonts/truetype/freefont/FreeSans.ttf
Font Size Font size in pt. 10
Text Color Timstamp text color. white
Text Box Color Timstamp backdrop color. [email protected]
Position X Horiztonal Position of Timestamp (w-tw)/2
Position Y Vertical Position of Timestamp 0

 Detector

Field Description Default Example
Enabled This will add another output in the FFMPEG command for the motion detector. A detector plugin must be connected for this to have any effect. No
Trigger Record This will order the camera to record if it is set to "Watch-Only" when a motion even is detected. No
Recording Timeout The length of time "Trigger Record" will run for. This is read in minutes. 10
Timeout Reset on Next Motion If there is an overlap in trigger record should it reset.
  • No : Finish the current 10 minute order..
  • Yes : Reset the timer
No 1
Save Events to SQL Save Motion Events in SQL (not the image). This will overlay object on top of video recorded during the time motion events occured. (Currently not implemented yet) No
Email on Trigger Recieve an email of an image during a motion event to the master account for the camera group. You must setup SMTP details in conf.json.
  • No : Finish the current 10 minute order.
  • Yes : Reset the timer
No 1
Allow Next Email The amount of time until a trigger is allowed to send another email with motion details and another image. 10 0.5
Detector Rate (FPS) How many frames a second to send to the motion detector. 0.5 is the default. 0.5 means it will send a frame every 2 seconds. 0.5
Feed-in Image Width Width of the image being detected. Smaller sizes take less CPU. 640
Feed-in Image Height Height of the image being detected. Smaller sizes take less CPU. 480
Full Frame Detection This will read the entire frame for pixel differences.
  • No : Makes motion detector do nothing if regions are not specified.
  • Yes : Read entire frame.
Yes
Indifference How much it doesn't care before doing something. The opposite of sensitivity. A lower number means it will trigger sooner. The value ranges up to 15(+) decimal places.
Possible : Any number.
0.5 25
Detector Command You may use this to trigger a script on command.
  • No : No script will run.
  • Yes : Trigger the script that is set in the Command option. Command is only visible when selecting this option.
No
Command The command that will run. This is the equivalent of running a shell command from terminal.
Allow Next Command This value is a timer to allow the next running of your script. This value is in minutes.
Possible : Any number.
10 0.1

 "No Motion" Detector

Field Description Default Example
Email on "No Motion" If motion has not been detected after the timeout period you will recieve an email. No
Timeout Timeout is calculated in minutes. 1

 Logging

Field Description Default Example
Log Level The amount of data to provide while doing the job.
  • Silent : None. This will silence all logging.
  • Fatal : Display only fatal errors.
  • On Error : Display all important errors. Note : this doesn't always show important information.
  • All Warnings : Display all warnings. Use this if you can't find out what's wrong with your camera.
  • Debug : Show all information FFMPEG can provide on STDERR while doing the job.
No
Save Log in SQL Use this with caution as FFMPEG likes to throw up superfluous data at times which can lead to a lot of database rows.
  • No : No is the default.
  • Yes : Do this if you are having recurring issues only.
No

 Account Settings

 Profile

Field Description Default Example
Email The login for accounts. The main account holder's email address will get notifications.
Possible : Email compliant string.
[email protected]
Password Leave blank to keep the same password during settings modification. [email protected]
Max Storage Amount The amount max space Shinobi will allow to be consumed before purging. This value is read in megabytes.
Possible : Up to 95% of your maximum storage space if only one master account exists.
10000 600000
Number of Days to keep Videos The number of days to keep videos before purging. 5 30
Number of Days to keep Events The number of days to keep events before purging. 5 30
Number of Days to keep Logs The number of days to keep logs before purging. 5 30

 Monitor Groups

Field Description Default Example
Groups The list of groups you have created.
Group Name Name of selected group.

 WebDAV

Field Description Default Example
URL The connection URL for your WebDAV server. http://owncloud.server/remote.php/webdav/
Username The username required to access this server.
Password The password required to access this server.
Autosave Whether or not the server should auto upload videos as they are finished. No
Save Directory The directory where videos will be saved. / /videos