blue iris

DIY HOME SERVER 2021 – Software – Blue Iris

1. DIY HOME SERVER - Blue Iris - Requirements

Before you can use Blue Iris as a surveillance station monitoring your IP cameras, you’ll have to configure your  home server for PCI passthrough and then create a Windows 10 Professional VM passing through your system GPU.

The complete procedure is explained in a previous post called DIY HOME SERVER 2021 – Software – Windows 10 PCI Passthrough. Take your time to implement it properly before continuing this post.

To optimize motion detection and eliminate false positives, we’re going to use artificial intelligence to analyze the camera streams. So let’s set up DeepStack AI Server on our Windows 10 Pro Blue Iris VM. 

2. DIY HOME SERVER - Blue Iris - DeepStack AI Server

Go to the DeepStack AI Server download page and download the CPU version for Windows.

Then install the progamm in your Windows 10 Pro Blue Iris VM.

Now open a command prompt (Run as administrator) and enter the command : 
deepstack --VISION-DETECTION=True --PORT=5000

Confirm the Windows Security Alert by clicking the Allow access button.

Then close the command prompt.

3. DIY HOME SERVER - Blue Iris - DeepStack AI setup

Install Blue Iris on your Windows 10 VM. Enter your license key after installation at first startup.

Be aware Blue Iris has 3 distinct settings pages :

  • Settings (global)
  • Group settings
  • Camera settings

Start up Blue Iris.

Open up the (global) Settings and select the AI tab.

Set the DeepStack IP to localhost (127.0.0.1) and the Port to 5000.

Enable Default object detection and set mode to Medium (or High if you want more accuracy and have enough CPU power) .

Enable Auto start/stop with Blue Iris.

Disable Facial recognition.

Then click the Start now button. 

Open up the Camera settings for each camera you want to use DeepStack AI on.

On the Trigger tab, set all settings as displayed here and click on the Artificial Intelligence button.

Set all settings as displayed here.

In the To confirm input, specify the objects you want to detect.

A list of all possible object classes is listed in the DeepStack AI Server documentation.

4. DIY HOME SERVER - Blue Iris - NAS storage

We’ll store all camera recordings on a TrueNAS Core SMB shared network storage location. I use a dataset called Camera created on a pool occupying a 8TB SEAGATE Iron Wolf HDD. Don’t forget to set proper security on the dataset.

Inside the network storage location, create at least the next 4 folders :

  • alerts
  • db
  • new
  • stored

5. DIY HOME SERVER - Blue Iris - License

Beware the Blue Iris license you’ve paid for will only get you updates for 1 year. This means after this one year period you’ll have to either :

  • renew your license to continue getting updates
  • never try to update again after the expiration date

If you do try to update Blue Iris after the expiration date, Blue Iris will throw you back in demo mode, without any warning!

So, if you don’t want to renew your license, don’t forget to disable automatic updates before your license expires and do not try to update Blue Iris after the license is expired!

I’m not happy with the way Blue Iris handles their licenses. I’m willing to pay for decent software but the manufacturer should give us all updates for free except for the major version updates. It’s no good customer support strategy to stop even security updates for a paid security product after only one year. 

Please Blue Iris, reconsider your license policy and make it more customer friendly.

6. DIY HOME SERVER - Blue Iris - General setup

On the About tab, set :

  • System name
  • License key
  • Name and email

Set updates to No automatic updates. You don’t want a failing automatic update to halt your recording system. So only do updates manualy yourself at moments you prefer.

Select the Clips and archiving tab.

Under Folders, select the New folder.

Point the New folder to the New folder on your network storage location.

Set the Limit size and clip age to your needs.

Set the Move to folder option to Stored so files will automatically be moves when the limits are reached. 

Under Folders, select the Stored folder.

Point the Stored folder to the Stored folder on your network storage location.

Set the Limit size and clip age to your needs.

Set the Delete option so files will automatically be deleted when the limits are reached. 

Under Folders, select the Alerts folder.

Point the Alerts folder to the Alerts folder on your network storage location.

Set the Limit size and clip age to your needs.

Set the Delete option so files will automatically be deleted when the limits are reached. 

It’s best practice to keep the Database path on a fast storage device.

I choose to keep mine on the Windows 10 Pro Blue Iris VM local drive because my Proxmox sever uses fast SSD to store the VMs. But if you want to, you can point the database path to the DB folder on your network storage location.

Select the Users tab.

Disable at least the anonymous user.

Add a new user. 

 

Give the new user appropriate rights.

Because you should only access your local servers over the internet by using a VPN, it’s best practice to restrict access to LAN only.

Select the Web server tab.

Notice the URL and port for the Blue Iris web interface.

Enable the Use UI3 for non-IE browsers option.

Disable Remote access if you don’t need it.

Select the Startup tab.

Enable the Run as a Windows service option. This will automatically startup Blue Iris after reboot, even when you don’t log in to Windows. This will also automatically start DeepStack AI Server.

Select the Cameras tab.

Select the appropriate option under Hardware accelerated decode.

In my case, I use PCI passthroug to pass through a NVIDIA Quadro P620 GPU to the Windows 10 Pro VM.

Select Intel + VPP if your system uses an Intel CPU with integrated Intel QuickSync Video.

7. DIY HOME SERVER - Blue Iris - Add a camera

Right-click in the camera window heading and choose the option Add new camera.

Set a Full name and a Short name for the new camera.

Select the Network IP option.

Activate the Enable motion detector and Direct to disc recording options.

Enter the cameras IP address, Username and Password.

When using a ONVIF compatible camera, click the Find/Inspect button.

Blue Iris will inspect the URL and try to set the settings correctly.

Adjust the settings when needed.

Especially check the Stream profiles and the port settings.

Consult your cameras manual to get the correct settings.

Click the OK button.

On the Video tab, set the Max. rate equal to or slightly higher than the cameras FPS setting.

If your camera provides On Screen Display (date and/or camera name), then disable the Display overlay live option.

On the General tab, click the Select button.

Create a New group to group your cameras, or select an existing group.

Click the OK button.

On the Trigger tab, set the End trigger unless re-triggered within option to 10 seconds.

Activate the Motion sensor option and click the Configure button.

Set the Min. object size to 250 and the Min. contrast to 25.

Set Min. duration to half a second.

We’ll let DeepStack manage the object detection, so deactivate the Object detection option.

Set the Algorithm to Simple.

Again on the Trigger tab, set the Add to alert list option to Hi-res JPEG files.

Click the Artificial Intelligence buton.

Select the DeepStack option.

In the To confirm input, specify the objects you want to detect. A list of all possible object classes is listed in the DeepStack AI Server documentation.

Set the + real-time images option to 5.

Enable the options :

  • Burn label mark-up onto alert images
  • Auto-flag confirmed alerts

On the Record tab, enable the Video option and set it to Continuous + Alerts.

Activate the Pre-trigger video buffer and set the value to 5 seconds.

Activate the Combine or cut video each to 1 hour. This nicely cuts the continuous recordings in 1 hour slices.

Activate the Record dual-streams if available option.

Click the OK button to finally create the camera.

8. DIY HOME SERVER - Blue Iris - Add additional cameras

You can easely set up additional cameras by cloning the first camera.

Select the Copy from another camera option and select the camera to clone.

After clicking OK, you’ll only have to set up the camera connection. All other settings will be the same as the cloned camera.

9. DIY HOME SERVER - Blue Iris - Camera Streams

Log in to your camera web interface.

Make sure the ONVIF option is enabled and create a user which Blue Iris can use to access the camera.

Set up the Main stream.

  • Resolution : as high as possible
  • Bitrate type: Variable
  • Video quality : Highest
  • Frame rate : 15 fps
  • Max. Bitrate : 8192 Kbps
  • Max Avreage Bitrate : 4096 Kbps
  • Video encoding : H.264

If possible set the I Frame interval equal to the Frame Rate.

If your camera is pointed at your front and has to capture fast moving object like cars, set the Frame Rate to 20 or even 25 fps. Leave all other cameras at 15 fps.

Set up the Sub-stream.

  • Resolution : as high as possible
  • Bitrate type: Variable
  • Video quality : Medium
  • Frame rate : 15 fps
  • Max. Bitrate : 8192 Kbps
  • Video encoding : H.264

Again, if possible set the I Frame interval equal to the Frame Rate.

Set the Image Exposure time to 1/25.

In a next post, we’ll explain how to create a NTP Server in a LXC container on our Proxmox home server. This will allow the IP cameras to sync their time settings without leaving the local network.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.