This is not an endorsement. We just found this hardware did a complex task at a very reasonable price point. This is not a new computer and has been obsoleted.

Server Information

CPU

Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz, 4 Cores

RAM

8 GB DDR3

HDD

512 GB SSD

OS

Alma Linux 9.2
Download : https://mirrors.almalinux.org/isos/x86_64/9.2.html 
Choose Minimal installation during setup.
Once OS Installed choose Rocky 9 Installer in the Ninja Way setup : https://docs.shinobi.video/installation/ninja-way

Test Started

July 15, 2023

Product Dimensions

‎18.03 x 3.43 x 17.78 inch; 3.22 Kilograms

Server Model ‎Lenovo Thinkcentre M92p Tiny

Camera Information

SecuPlug IPD-D53L02-BS

Resolution : 2592x1944 (5MP)
FPS : 15
I-Frame : 15
Bitrate : 3096
Bitrate Type : CBR
H.264

PTZ Outdoor
Hikvision Clone
Added via ONVIF Scanner

5

SecuPlug YM800N

Resolution : 3840x2160 (8MP)
FPS : 15
I-Frame : 15
Bitrate : 3096
Bitrate Type : CBR
H.264

Dome Outdoor
Hikvision Clone
Added via ONVIF Scanner

3

Brand/Model Video Configuration Notes Qty

No audio recording. The Office of the Information and Privacy Commissioner for British Columbia (OIPC) has issued guidelines suggesting that audio recording is generally not considered reasonable in the context of video surveillance, even in public places, except in very limited circumstances.

If I did want audio recording I would set the Audio Codec to AAC.

Resource use of Cameras

8 Cameras in total. Use is showing percentages during Idle times. Idle means it is watching streams and doing Motion Detection. No Motion detected so the Object Detector is not engaged. When the object detector is engaged for a camera it will consume at least 5% more CPU. 5% additional for each camera with Object Detection engaged.

In my setup all cameras are never triggered at the same time so it never reaches the max resource use at any given time. As long as I maintain at least 10% free on the CPU, it has kept running as expected.

CPU

41%

RAM

47%

Resource Typical Use

Detector Information

Detectors

Enabled

Notes

Motion DetectionBuilt-In by Kevin GodellCPU Only

Yes, 2 FPS
640x480

Regions were created to only trigger in certain areas. Accuracy Mode was enabled to better detect movement inside the Regions.

Object DetectionTensorFlow 4.1.0 PluginCPU Only

Yes, 2 FPS
1280x720

Runs for 5 seconds if motion is detected.

Detections take ~2 seconds per frame to register on CPU only.

Automatic PTZ Tracking

Yes
ONVIF Home Control is Using Preset 1, Non-Standard, Hikvision Clone

With Event Filters enabled the PTZ cameras follow person, car, and truck tags.

Recording is created when an accepted object is detected. Accepted Objects are filtered through the Event Filters.

Impressive Aspects of this Setup

  • Consistent CPU use. Not constantly spiking doing the same things.
  • The CPU can do Object Detection without GPU assistance in under 3 seconds per frame.
  • Cameras easily found and added by ONVIF Scanner.
  • Server’s physical size is small, low energy footprint.

Known Issues with this Setup

  • The server must be kept in a cool environment and must be kept in a vertical position with both sides getting airflow. It seems to get very hot very fast when it is sitting flat, horizontally. When it was flat it crashed. When standing vertical it has had one case of high heat but did not crash. I flipped it upside down, still vertical, and it appears to work much cooler.
  • Alma Linux 9.2 seems to work strangely with PM2 sometimes. You may find that Shinobi is continuously restarting under PM2. Just run npm i pm2@latest -g && pm2 update to fix it.
  • SecuPlug cameras offer AAC audio but Shinobi/FFmpeg cannot read these AAC streams. They need to be set to PCM_ULAW or something similar in the camera then converted to AAC in Shinobi to get audio from these cameras.