The Syrus 4G is capable of recording videos based on when an event occurred, as well as maintain a history of videos based on your own conditions.

General Overview

  • The way it works is that you obtain a camera that supports ONVIF protocol
  • Access the web interface of the camera to modify the network configuration so Syrus can connect to it (set a static IP, user, pass, etc)
  • Use the Syrus 4 Management Tool UI to configure the parameters of the camera
  • Fine tune any additional settings on the camera and install

Features

There are 3 main features Syrus 4 is capable of achieving with video cameras:

  1. Continuous recording, or history mode
  2. Event based video clips with a time window
  3. Stream real time video

Continuous recording, History mode

The apx-video system tool can be used to start and stop recording.

The videos are recorded in 10 second clips and are stored either locally under: /data/users/syrus4g/video/ or some folder under media if you are using an external SD card: /media/somefolder/.

You can navigate to the external SD card using the File Explorer on the Management UI.

The structure of the folder looks like this:

The video files are created with the name of the camera followed by a numeric ID for the video. The numeric IDs start at 1 and go up to the maximum number of videos it can record depending on the size allocated.

video/
├── history/
│   ├── CAM_NAME_RED/
│   ├── CAM_NAME_BLUE/
│   │   ├── CAM_NAME_BLUE_1.mp4
│   │   ├── CAM_NAME_BLUE_2.mp4
│   │   ├── ...
│   │   ├── ...
│   │   └── CAM_NAME_BLUE_####.mp4

The size allocated (and location) for the camera to be able to store data is defined when you configure it on the Management tool (apx-video add command).

Once the videos reach the maximum size allocated the IDs are repeated and the oldest videos are overwritten.

To get an idea of the maximum amount of time you can record for, the max size of a 10sec clip is 3.75MB for FHD, 2.5MB for HD, and 1.7MB for SD.
If you're constantly recording clips of these sizes, the maximum number of clips possible in a day are 8640, giving us a maximum daily size of:

  • 32GB for FHD
  • 22GB for HD
  • 15GB for SD

Syrus 4 has 300MB of internal storage allocated for videos, but you can expand it using an SD card. Here is a breakdown of the storage and duration of video clips.

QualityStorageDuration
FHD (1080p)512GB SD Card~16 days (288 hours)
HD (720p)512GB SD Card~23 days (558 hours)
SD (480p)512GB SD Card~34 days (819 hours)
FHD (1080p)256GB SD Card~8 days (144 hours)
HD (720p)128GB SD Card~6 days (138 hours)
SD (480p)64GB SD Card~4 days (102 hours)
HD (720p)Internal storage 300MB~20 min or 120 clips

For more information on SD cards check out our FAQ page.

Event based video clips

The apx-video system tool has a command to create a video clip create_clip.

The video clip it creates can have a time window of time before and time after the command is sent that it gets the recording for. Essentially giving us the ability to simulate what ocurred during an event by doing a playback leading up to the event and after it.

Using Syruslang you can trigger events that accomplish this feature.

# capture a video clip 20 seconds before a forward collision and 20 seconds after it
define action forward_collision_video [email protected]_collision.signal create video --name={{$gnss.timestamp}}_forward_collision --time_win=-20,+20

The video clips created are stored under a folder given by the name of the clip: /data/users/syrus4g/video/events/CLIP_NAME/VIDEO_CLIP_CAM_NAME.mp4

video/
├── history/
├── events/
│   ├── HARD_BRAKING/
│   ├── COLLISION/
│   │   ├── COLLISION_CAM_NAME_RED.mp4
│   │   ├── COLLISION_CAM_NAME_BLUE.mp4
│   │   ├── COLLISION_CAM_NAME_GREEN.mp4
│   │   ├── ...

Since the events are actually a copy of the video clips created, Syrus is continually recording videos.

Video streaming

Syrus 4 uses RTSP in order to stream videos. To get the RTSP address you'll want to go through the guide below to add a camera, and download it's settings to get the stream URI.

Once you have the URI you can use a video client like VLC Player to start the stream. Note that the stream will only be available locally on the same network as your streaming video client (VLC) unless you expose the Syrus 4's ip and port to the public internet, once the IP and port are available on a public IP you can remotely stream the video.

Sending videos to remote servers

Check out our LFTP tutorial on the Bash/Shell scripting page for information on how to upload and sync videos with a remote server.

Installation

The installation of the cameras depends on the type of camera selected, but there are generally 2 ways to connect to cameras, wired via the ethernet, or wireless via Wifi/Hotspot.

The amount of cameras that can be connected simultaneously to a Syrus 4 depends on the type of camera used, you can connect up to 2 ethernet or wireless cameras simultaneously, as well as an additional accessory camera such as Cipia or MDSM-7.

Note that some options are incompatible with each other. For example, most dashcams provide a hotspot for a device to connect to it, so you can't have Syrus connect to both the dashcam and a separate IP cam, but you could connect to a dashcam and a separate camera via ethernet for example.

Here is a breakdown of the max number of cameras that can be supported

NameCamera typeTotal amount supported
Wired / Wireless Network Camerasonvif2
Dashcameradashcam1
Fatigue Sensor Cipia-FS10cipia1
Fatigue Sensor Movon MDSM-7mdsm71

Take a look at the following diagrams that explain the different scenarios.

Configuration

When adding a camera to the Syrus there are some general steps you want to follow depending on the interface the camera uses. For wireless interfaces if the camera is the one providing Wifi capabilities via a hotspot (like the case with many dash-cams), then you'll want to follow these steps:

  • Download the accompanying app for the camera
  • Connect to the hotspot the camera provides
  • Optional: download the latest software update/firmware for the camera
  • Go to the network settings of the camera and obtain the username and password
  • Use the Syrus 4 management UI to configure a new camera of type: Dashcam. Setting with the ip address, username, and password

For other cameras which do not provide a hotspot and instead Syrus is the one that will be providing wireless capabilities:

  • Connect to the management interface of the camera, usually an ip address
  • Enable ONVIF protocol and port
  • Set a fixed/static ip address to the camera
  • Set a user/password to have access to the camera
  • Optional: disable the time sync on the camera
  • Use the Syrus 4 management UI to configure a new camera of type: ONVIF. Setting the ip address, username, and password

Another possibility is that the camera is wired via Ethernet, this one is more simple and requires that you:

  • Connect the camera to the Syrus RJ45 port
  • Do a network scan ifconfig to identify the ip address assigned via eth interface
  • Connect to the ip address of the camera and reach the network settings
  • Set a fixed/static ip address, optional: enable onvif, username, and password
  • Use the Syrus 4 management UI to configure a new camera of type: ONVIF setting the ip address and other optional settings

Guide: Dashcam via Hotspot

Camera used Hikvision F6

Micro SD Card

Note that the dashcam does not come with an Micro SD card but it's important to have one for the firmware upgrade and storage of videos locally.

Start by downloading the HikDashcam application from the Android Play Store or Apple App Store.

Connecting to the Camera

After downloading the app and opening it you'll want to connect to the camera by following the on screen prompts, in this case for Local configuration it will create a temporary wireless network that your phone will connect to allowing you to see the camera settings.

Optional Firmware Upgrade

Go into the Settings of the camera on the top right and the About -> Dashcam Info. section to view the current firmware of the camera, if you see a firmware below V1.3.0 then you'll want to upgrade (note that this requires the micro sd card to be inserted into the dashcam).

The Dashcam Info. section also includes the username and password which will be used later for the setup on the Syrus 4.

Dashcam Settings

Now go back to the dashcam settings and be sure to select the following settings in order to enable/disable the Audio and use the correct Encoding format (H.264)

Add Camera Config on Syrus

Now you're ready to set up the camera configuration on the Syrus, using the management tool go into the video settings, and the configuration tab.

Use the following parameters

  • Camera Name: Any name
  • Camera Type: Dashcam
  • User: Serial Number from the Dashcam Info section
  • Password: Verification Code from the Dashcam Info section
  • Port: Leave empty
  • IP Address: 192.168.42.1
  • Quality: HD or FHD depending on the quality you set on the camera resolution settings

Streaming Video
In order to start streaming the dashcam video you'll need to replace the following string with the User and Password from the settings:

rtsp://USER:PASSWORD@192.168.42.1/ch1/sub/av_stream

And place it in the URI field.

Once done you can test the stream using VLC locally as long as your computer is on the same network as the Syrus.

In order to stream the video remotely and access it from any server you'll need to install a multimedia framework such as GStreamer (specifically gst-launch) on a server that will handle the video stream. Then start and stop the stream using the apx-video tool. More info on this coming soon.

Syrus Cloud Profile

The last step is to save the camera configuration profile via Syrus Cloud so that it is synched with the device and you can manage it remotely.
Start by downloading the Video settings from the Configuration Tab.

Download video.conf.json from management tool/user interface.Download video.conf.json from management tool/user interface.

Download video.conf.json from management tool/user interface.

Then go into Syrus Cloud profiles section and upload the video.conf.json file.

Syrus Cloud camera profile sectionSyrus Cloud camera profile section

Syrus Cloud camera profile section

You are now ready to create a syruslang script that captures videos and view them on Syrus Cloud.

Guide: Dome camera via WiFi

Camera used DS-2CD2543GO-IWS

Start by connecting the camera and entering the default settings in your web browser to access the web management UI of the camera.
Some manufacturers provide software that show the default network info of the camera, here's an example guide with the steps, from there you can update the IP address of the camera so that it connects to your local network.

Network Basic Settings (LAN)

Once you have local access to the camera, disable any DHCP and set the IP address of the camera to a fixed static IP.

Syrus 4 Hotspot

To connect to the camera we'll have to enable the hotspot of the Syrus 4 with an SSID and Password.

For example: SSID: Syrus4G-02669
Password: 12345678

Network Advanced Settings (Wi-Fi)

Go to the advanced network settings of the camera and enable the Wi-Fi.
For the SSID and Key use the values from the previous step.

Network Basic Settings (WLAN)

The WLAN settings have the IP address information that the camera will have when it connects to the Syrus 4G's hotspot. We will need to configure this IP address on the Syrus 4 when we add it as a camera configuration.

Enable ONVIF Protocol

Make sure to enable the ONVIF protocol and create a user if applicable.

Add Camera Config on Syrus

Finally, add the camera to the Syrus via the management tool UI using the IP address of the WLAN set up above, including the user / pass to access the camera.

Note that the user and password you enter here are not necessarily related to ONVIF, they can be general user/pass to access the camera. To be sure enter one of them, press SAVE and go to the monitor tab.

Also note that if the ONVIF Port is not specified you can set it to 0.

If you are using an external SD card to store the videos you'll want to select it on the Storage.


Advanced Configuration of Video

The following settings are advanced and they get into the recommended configuration for the camera.

Optional: Image

Optionally you can set the camera name so that it displays on the screen.

Once you have finished provisioning the camera you can synchronize the settings with other cameras using SyrusCloud, or create a SyrusLang script to start video recording.


Adding audio

To enable audio recording make sure you go to the Video type option on the configuration and select Video&Audio

Guide: Bullet camera via WiFi

Camera used Alptop AT-200BW

To access the management interface use the following guide.

Network Settings

Configure the static IP address.

ONVIF Enabled

Enable the ONVIF protocol.

User Access

Enable the user access.

Configure on Syrus

The configuration of the above camera on the Syrus will look like this:

Follow the steps below to configure the camera settings remotely on Syrus Cloud and use SyrusLang to create conditions to record videos.

Adding audio

To enable audio recording make sure you go to the Audio settings and select the following options:

Syrus Cloud Sync

Once you have added the configuration of the camera on the Syrus, download the settings from the Video -> Configuration tab, and upload it to SyrusCloud so it can be synchronized across your devices.

Syruslang Scripting

The SyrusLang video section gives you commands to start recording and create video clips based on any signal.

For example, we could start and stop video recording based on the ignition status.

# signal to detect ignition ON after 10 seconds
define signal ignition min_duration=10sec $io.ign

# action to start video recording on all cameras
define action start_recording trigger=ignition start recording

# action to stop video recording when the ignition is OFF
define action stop_recording trigger=ignition,not stop recording

you can also create video clips based on any combination of signals

# capture video 20 seconds before and 20 seconds after hard braking is detected
define action hard_brake [email protected]_braking.signal create video --name={{$gnss.timestamp}}_hard_braking --time_win=-20,+20

# capture video 10 seconds before and 15 seconds after input 1 is pressed
# signal
define signal input1_on $io.in1

# action
define action manual_capture trigger=input1_on create video --name={{$gnss.timestamp}}_input --time_win=-10,+15

Audio recommended settings

In general if the options are available for your camera to add audio, you'll want to configure the following,

Recommended audio settings:

  • Audio encoding: G711
  • Sampling rate: 8kHz
  • Audio Stream Bitrate: 128kbps

Fatigue Sensor Videos

Refer to the connect section of the Fatigue Sensor page for more information on capturing video clips with fatigue sensors.


Did this page help you?