Create an Account
No Items
Documentation Navigation

Device

Checkout configuring your device for a brief walk-through.

When initially creating a device not all configuration areas will be available. Only after saving will you see all of the configuration sections. You can simply add a "Name" and click "Create" to continue configuration with "All" sections available.

Basic settings

Configure Via Onvif - Used to try and automatically import device configuration utilizing the Onvif protocol.

AttributeDescription
Device NameDescriptive name for the device.
Storage AreaWhere should media created by this device be stored.
HubWhich hub should manage and monitor this device.
Automatically restart?Should we automatically restart the stream if it crashes for any reason?
Show Advanced SettingsShould we show all the advanced options.
Automatically Restart Stream on UpdateMost setting changes require the stream to be restarted. This ensures the stream is restarted when saved.

Input Source Settings

Settings related to configuring the camera video/audio sources

There are a few different input source types RTSP, URL, Local Device, and UI

RTSP

An example RTSP url may look like the following: rtsp://someuser:[email protected]:554/ch0_0.h264

The following portions of the url correspond to the following configuration fields.

  • Username => someuser
  • Password => somepass
  • Host => 192.168.1.27
  • Port => 554
  • Path => /ch0_0.h264
AttributeDescription
RTSP UsernameUsername to connect to the device.
RTSP PasswordPassword to connect to the device.
RTSP HostHost where the device is located.
RTSP PortPort used to connect to the device.
RTSP PathPath used to connect to the device.
TCP/UDP transportWhat protocol does the device use? Usually TCP
Hardware Accelerated DecodeShould we try to use hardware accelerated video decoding?
Use SubstreamShould we utilize a substream for detection, live view and montage? If using 4k cameras this can significantly improve performance since we do not need to decode the higher resolution stream.
Use Substream -> Substream Input Source URIThe entire URI should be used. If the substream requires a password that should be included here too for now.
ex. rtsp://username:[email protected]:554/cam/realmonitor?channel=1&subtype=1
Use Substream -> Substream Input OptionsAny additional options we should pass to ffmpeg. Generally RTSP streams are tcp so the default value is: "-rtsp_transport tcp". However you may need to remove or adjust if you camera uses a different protocol.

URL

Used when the source is either a mjpeg, jpg or another video source.

AttributeDescription
URL Stream Typemjpeg, video, jpg (snapshot)
mjpeg -> moving jpeg image source
video -> any other valid video file which can be accessed over http
jpeg (snapshot) -> used to create a video by periodically grabbing an image from the specified source over http
Input source URIThe URI of the media resource.
JPEG Update intervalWhen jpeg (snapshot) stream type is selected, determines how frequent to grab the image.

Local Device

Used to utilize a device connected directly to a hub as an import source. This is for things like webcams or any other type of video capture device that ffmpeg can utilize as a media source.

AttributeDescription
Input Device PathThe path used to identify the device we want to capture from.

Generally the "Re-encode Video" option will need to be enabled when utilizing this input type.

OS specific information can be found by selecting this source in StreamShuttle.

UI

This feature is still in progress, but a "UI" device can be setup which allows you to convert any device with a web browser and camera into a device we can monitor. This can be used to convert any cellphone into a security camera.

Please contact support if you would like to know more about this feature.

Monitor Settings

This section is used to configure how and what we we want to monitor from the device.

AttributeDescription
Record OutputYes / No should we record media from the device?
What to Record?Activity Only or Everything. When Activity Only is selected the activity events will only be created when some type of activity (object, motion, audio, manually triggered) is detected. When Everything is selected media is continually recorded in 5 minute intervals (5 minutes by default)
Maximum Length of activity eventHow long in seconds before we create a new activity event.
Seconds before and after activity to captureHow long in seconds before and after activity should we include in the activity event.
Do DetectionShould we detect activity for this device?
Detect MotionShould we look for motion activity?
Detect ObjectsShould we look for objects activity?
Detect AudioShould we trigger activity when audio activity is found?
Detect Audio - Noise ThresholdThe threshold at which the audio is considered noise, in dB. 0 is very loud and -100 is low.
ex. if audio is to sensitive then try increasing this number -> closer to 0
Detect Audio - Look back secondsHow many seconds should we look back when monitoring audio.
Detect Audio - Look back seconds thresholdHow many of the "look back seconds" must contain audio before activity is triggered.
Detect Button PressesDetect button presses from specific devices (usually a doorbell)
Record AudioShould we record the audio in addition to the video?
Re-encode AudioShould we re-encode audio - it may be necessary to re-encode audio using a more common codec; since some browsers / players may not be able to playback audio from some older devices
Re-encode Audio - CodecCodec used to re-encode the audio. * aac by default
Re-encode VideoShould we re-encode the video - it may be necessary to re-encode video using a more common codec; since some browsers / players may not be able to playback video from some older devices.

Notification Settings

The following settings determine which types of notifications this device will emit. The default settings are good starting point for most people. Meaning you will only really get alerts when it really thinks there is new object activity. After tuning things like motion zones enabling motion alerts may make sense as long as there aren't too many false positives.

Regardless of the alert settings, activity is always recorded. This just determines if an alert would be emitted or not.

External notifications are things like Push notifications, notifications via discord or any future services that may be integrated. Internal notification are simply notifications that pop-up only while in the app interface.

OptionDefault
Send internal notifications when motion is detectedYes
Send external notifications when motion is detectedNo
Send internal notifications when audio is detectedYes
Send external notifications when audio is detectedNo
Send internal notifications when objects are detectedYes
Send external notifications when objects are detectedYes
Send internal notifications when external triggers are calledYes
Send external notifications when external triggers are calledNo

PTZ Settings

The PTZ section is used to configure the Pan, Tilt, Zoom settings for the device.

OptionDescription
Has PtzYes / No. Does this device support PTZ functionality ?
Ptz TypeOnvif / Http. Generally this should be Onvif which means the device also needs to have been "Configured Via Onvif" option to work. If your device also supports PTZ via http calls you can utilize the HTTP method. This requires you to configure URLS for all the PTZ actions. * Be sure to include the username / password in each action url even if set in the input source settings.
Auto StopShould we send a stop command after each PTZ command ? This should be "Yes" in most cases or the device may continuously pan.

Live Audio Settings

This area is used to configure the live audio settings for the device. Specifically if we should enable live audio playback and whether or not two-way audio is supported.

OptionDescription
Enable Live AudioEnable the ability to listen to the live audio from the camera, this can be enabled even if the audio is not set to record
Enable SpeakEnable the ability to speak through the camera using two-way audio. Currently only tested for Amcrest / Reolink devices
Speak MethodHTTP or Neolink. HTTP uses http to post audio using the specific parameters to the device. *neolink (for reolink devices) must be installed manually
CodecThe audio codec the camera expects.
RateThe audio rate the camera expects.
ChannelsHow many audio channels to encode.
FormatWhich format is the audio in.
HeadersAny additional headers the device may require.
DigestDoes the device require HTTP digest authentication ?
UrlThe URL used to post the audio to the device.

Retention Settings

This area is used to define how long we should keep events from this devices before they are automatically removed. Normally you don't need to adjust these unless you would like to remove this devices media events before the "default" (time / storage usage) prune settings.

By default all (unarchived) events will be removed "oldest first" until the storage area usage is less than "Max media event usage percent"

  • The "Max media event usage percent" can be set on each storage area. If it's not set on the storage area, it will fall back to the "global" setting "media-events/prune/maxDiskUsagePercent" which is 90% by default.

By default all (unarchived) events are removed after 28 days. (672 hours)

  • The "global" fallback setting which controls this is "media-events/prune/removeAfter"

OptionDescription
Max Disk UsageMax size in GB this device can use. Default (-1) which is unlimited. If set to -1 it will fallback to storage area settings
Remove after (hours)Number of hours to keep media events. Default (-1) which is forever. If set to -1 it will fall back to the global "media-events/prune/removeAfter" setting

Schedule Settings

This area is used to configure the run schedule for the device. When enabled we can select times in the time slot grid where the monitor should be on or off.

When the scheduler functionality is enabled, it will take precedent over the "Automatically Restart" option. As it will always be restarted if current time is in an "active time slot" and always stopped if current time is in an "inactive slot".

You can click a on a row in the "Time" column to toggle all days for that time slot. You can also click on any day header to toggle all times for that day.

The current time slot is "highlighted".

OptionDescription
Enable ScheduleToggles the scheduling functionality and the time slot grid. Once enabled the device will only run during the selected time slots.

Activity Zones

You can edit the activity zones by clicking "Edit Zones" from the device edit page, or the actions drop-down on the device listing page. This option will only be visible once motion or object detection is enabled.

* Device stream will need to be restarted after updating any zone information before the changes will take effect.

The activity zones are used to configure what StreamShuttle considers "activity" on a per zone basis. Currently there are two types of zones motion zones and object exclusion zones.

The object detection settings apply globally to the entire frame.

Motion Zones

Initially when a device is created there are 0 zones and StreamShuttle will use the entire frame for motion detection. However after a zone is defined StreamShuttle instead only looks at each specific zone for activity.

Object Exclusion Zones

StreamShuttle will use the entire frame for object detection. However after an exclusion zone is defined StreamShuttle will ignore the detected object if the center of the object is within the exclusion zone.

OptionDescription
Add Motion ZoneUsed to define a new motion zone. After clicking this button you can click around the image to begin creating the zone. Clicking the "starting" again point will complete the zone.
Add Object ZoneUsed to define a new object EXCLUSION zone. After clicking this button you can click around the image to begin creating the zone. Clicking the "starting" again point will complete the zone.
Delete Selected ZoneDeletes the currently selected zone.
Clear All ZonesClears all zones.
Save ZonesSaves all zone settings.

After a zone is created you can then "select" (click) the zone itself to show the zone specific configuration settings.

You must click "Save Zones" after making any zone changes and you will need to manually restart the Device stream.