Camera settings

Details the major steps to configure and deploy Blue Iris.
Start with Onboarding Checklist article.
1. Setup Windows to work well with Blue Iris.
2. Connecting IP cameras.
3. Setting up Storage and Recordings.
4. Configuring your home or office network for Remote Access via a web browser or the phone apps.
5. Creating Triggers and Alerts.
6. Setting up AI with DeepStack
7. Creating Schedules and Profiles
Post Reply
varghesesa
Posts: 51
Joined: Thu Jul 11, 2019 9:52 pm

Camera settings

Post by varghesesa » Fri Sep 17, 2021 9:36 pm

Introduction

This article is about the proper camera settings ON the camera in order to work well with BI.
There is nothing more frustrating than NOT being able to connect your cameras.


Camera settings

Below are the most common camera settings that can affect the video quality seen in Blue Iris. Think of these settings as levers on the camera (NOT BI) that can be adjusted to provide the optimal video stream.
  • H.264 vs H.265
  • H.264/265 Encoding Profiles: Baseline, Main, High etc
  • FPS
  • Key frame interval
Below are the recommended settings when first connecting a camera or when having problems connecting a camera. Start off with the easiest settings to give BI a chance to connect. Optimize afterwards.

simple encoding settings.png
simple encoding settings.png (75.63 KiB) Viewed 5116 times

Camera encoding

BI only works with the H.264 and H.265 standards. Camera manufacturers have tweaked their encoding to optimize bandwidth for their apps. H.264+, H.265+ (note the + sign) Smart Codec etc are all proprietary encodings that can only be used by the vendor apps. When customers report the cameras work on their app but not in BI, the encoding is often times the reason. The No Signal Error is almost always due to the fact that the cameras are using a proprietary encoding.

Also best to start with H.264 encoding before moving to H.265. Also, choose H.264 Main/Baseline instead of High if given the choice. Provide BI the easiest connection available first and increase the complexity if and when needed.


FPS

Keep settings simple such that all the streams have the same FPS. Choosing between 30 fps or 15 fps is a user preference. For most surveillance situations, 10 - 15 fps is plenty good.
Setting all streams to have the same fps makes time reconciliation easier for BI. Turns out certain vendors like Hikvision set different fps (10, 15) for different streams. Different fps settings unnecessarily complicate playback synchronization with dual streams.


Key frame ratio

A key frame ratio >0.5, ideally 1.0 leads to a healthy video stream that delivers a good user experience. BI will tell you the key frame ratio. In this example, all the camera key frame ratios = 0.1

low key frames.png
low key frames.png (52.06 KiB) Viewed 5116 times

Rule of thumb: Make sure the key frame (i-frame) interval on your camera equals the FPS for the camera. This will deliver a key frame ratio equal to 1.0.


Examples:
  • Camera fps = 30. key frame interval = 30 (1.0 fps). Can consider key frame interval as high as = 60 (0.5 fps)
  • Camera fps = 15. key frame interval = 15 (1.0 fps). Can consider key frame interval as high as = 30 (0.5 fps)
Every camera vendor has a different UI. However, observe the default settings for the i-frame interval for each of the streams for the camera vendor (below). All the streams are 15 fps. However the i-frame interval is 30/60/120! The only setting that may provide an ok user experience is the main stream. If dual streams are connected, the live view will probably be choppy, slow, sluggish! The i-frame interval for the two streams chosen to be used by BI for below example needs to be lowered to 15.

key-frame-sample_optimized.png
key-frame-sample_optimized.png (80.17 KiB) Viewed 5116 times


Pre-trigger buffer

This topic is discussed in the Camera Stream Optimization article because it's a BI server setting that affects the user experience due to camera streams.
However, the Pre-trigger buffer goes hand in hand with the key frame ratio so placed here as well.
Largely set based on user preference (5s is recommended).
Rule of thumb:
Pre-trigger buffer >= 1/kfps
For example, if the camera stats state 0.5 for the kfps, 1/0.5 = 2s. The pre-trigger buffer for the camera should be >= 2s.
Or just use a default 5s pre-trigger buffer for all cameras.



Camera Warning Symbol

fps warning.png
fps warning.png (1.9 KiB) Viewed 5110 times

First, keep in mind this is just a warning symbol. It's only a problem if your video is lagging, choppy or frozen. This warning is then a clue that some of your camera settings (above) are not working well with BI.
If you are receiving these warnings recently, it is because we are now also monitoring key frame ratios when the setting has an affect on your configuration, like direct to disc or limit decoding. The warning symbol appears if the key frame ratios drops below 0.4.

Reolink known issue: The sub stream for Reolinks often run at 0.25 kfps and the key frame interval is not configurable. Sub streams are a huge benefit for CPU load. So overall, if the video is not choppy, lagging etc, we recommend using sub streams.

camera settings kfps.png
camera settings kfps.png (102.19 KiB) Viewed 5014 times


From Help file:
The Log page in Status contains one or more warning messages or one or more
cameras has an error condition or warning, such as low frame rate or a push
webcasting error.
Historically, the warning message was frequently due to the camera's FPS. BI constantly measures the fps of your cameras. At a peak time maybe the camera was sending 15 fps. Maybe because of network congestion etc. the fps for that camera temporarily dropped to 2 fps. The warning message would pop up. Unless you observe persistent frozen cameras or lagging cameras, the issue resolved itself and you can ignore. BI will display this warning when the FPS is 15% of the observed actual max frame rate.



Vendor Gotchas

The Camera Gotchas article shares learnings from past tickets.


Last bumped by varghesesa on Fri Sep 17, 2021 9:36 pm.
Post Reply