Is Blue Iris worth pursuing for my situation, or am I pushing it beyond its practical comfort zone?

bjs169

n3wb
Jun 2, 2024
1
0
Chicago
Long time reader. First time poster (I think?).

I’m looking for candid input from experienced Blue Iris users, especially people running larger or more demanding installs. I’m not trying to start anything controversial. I know Blue Iris is very capable and a lot of people run it successfully. But I’m starting to question whether it is the right fit for my setup, or whether I’m spending too much time fighting fragility, hidden dependencies, and architectural limitations.

My system is not a lightweight home setup:

  • All cameras are hardwired over 1 Gbps Ethernet
  • Dedicated switching for the camera/network side
  • Hyper-V host with 4x1 Gbps LAG to the switch
  • Blue Iris runs in a Windows VM
  • VM has 24 vCPU and 32 GB RAM
  • RTX 4000 Ada Generation passed through directly to the VM
  • OS VHDX is on SSD
  • Recording storage is a large passthrough Storage Spaces volume, about 65 TB of spinning disk
  • Around a dozen 4K cameras, 11 from Empire Tech, 1 from Dahua directly
  • Several dedicated LPR cameras
The environment is not datacenter-grade, but it is well beyond the average home network/camera setup. I’m not using Wi-Fi cameras or cheap consumer cloud cameras. The cameras are wired, the server is large, and the network/storage/GPU resources should be more than reasonable for a serious small VMS deployment.

I have also put in the work. I have spent 100+ hours trying to get this system stable: reading forums, reading the manual, testing settings, using chatbots, tuning camera-side encoding, trying main/substream combinations, adjusting FPS/keyframes/codecs, testing GPU decoding, and so on. My career is in enterprise architecture, so while I’m not claiming to be a Blue Iris expert, I do understand systems at both a high level and a low level. This is not a case where I installed the software yesterday and expected magic.

One recent example is my LPR setup. I have two dedicated LPR cameras, LPR1 and LPR2. Each has a main configuration for continuous 4K recording and a clone configuration for alerting. As far as I can tell, the two cameras are configured similarly except for names, paths, etc. I record from the 4K main stream, and I had the 1080p substream configured because I understood that Blue Iris generally prefers using the substream for detection/alerting/display work.

The problem is that one LPR camera was capturing alert images at 4K while the other was capturing alert images at 1080p. I tried to fix the “small” alert image by disabling the 1080p substream on one camera and using only the 4K main stream. Counterintuitively, the camera immediately started throwing keyframe/FPS errors even though there was now less total bandwidth being pulled from the camera. With both streams enabled, no errors. With only the 4K stream, errors.

That is just one example. I realize LPR is notoriously hard, so I don’t want the whole discussion to become “LPR is hard.” I get that. My broader issue is that this kind of confusing side effect keeps happening across the system. It feels like changing one thing exposes some hidden dependency in Blue Iris’s internal pipeline — stream cloning, substream/mainstream usage, alert image generation, direct-to-disk behavior, AI/alert confirmation, keyframe handling, etc.

Other examples:

  • I frequently see yellow exclamation warnings on cameras, usually FPS/keyframe/stream-health type warnings.
  • One camera repeatedly complains about not getting ONVIF events, even though I have ensured that ONVIF does not require authentication. I have read that Blue Iris can be sensitive to ONVIF auth, so I specifically checked that.
  • Two other cameras decode the 4K stream with no problem but report FPS/keyframe issues on the 1080p substream. This was working at one point, and the configuration for those cameras did not change. The issue just appeared. I even reduced a 30 FPS camera down to 20 FPS and the issue continued.
  • Stream stability changes based on relatively small adjustments to FPS, codec, hardware decoding, or stream configuration.
  • H.264 vs H.265 can behave very differently.
  • Some cameras are stable at one FPS but unstable one or two FPS higher, even when bitrate does not appear to be the limiting factor.
  • Enabling GPU decode sometimes requires lowering FPS to remain stable.
  • Trigger/alert/AI behavior is difficult to reason about because alert images, trigger timing, recording timing, and AI snapshots do not always line up the way I expect.
  • Clone camera behavior and stream ownership are not always obvious.
  • The UI often hangs during long-running work. From a Windows development standpoint, that is frustrating because keeping long-running work off the UI thread is basic application design.
  • The application sometimes takes minutes to open, getting stuck on “Creating Window” at the splash screen.
  • Viewing the Blue Iris console over Remote Desktop seems to cause all cameras to slow down and can interrupt frame rates across the system. This appears to be a known issue. I bought a second Blue Iris license to run as a remote desktop/viewing client, which works better for viewing, but it is not ideal for configuration. The AI setup on my desktop is different from the server, and some settings, such as MQTT server configuration, cannot be done remotely. So I am constantly switching context.
  • Some people suggest using UI3, but I do not want to use the web app for this kind of work. I want a proper thick client for configuring and managing a VMS.
  • I am probably forgetting other problems because there have been so many.
To be clear, I’m not saying I expect zero tuning. I understand that 4K cameras, LPR, night capture, AI, substreams, direct-to-disk recording, hardware acceleration, and ONVIF events all require thoughtful setup. I also understand that camera firmware and encoding settings matter.

But at this point, the amount of ritual tuning and unexplained side effects makes me wonder whether I’m trying to make Blue Iris do something it is not really architecturally comfortable doing.

My question is not “Can Blue Iris work?” Obviously it can.

My question is:

Given this kind of setup — roughly a dozen 4K cameras, dedicated LPR cameras, continuous 4K recording, alerting/AI workflows, ONVIF events, GPU acceleration, and a fairly serious server/network/storage environment — is Blue Iris still worth pursuing, or should I be looking at a more commercial VMS? My system right now is what I consider baseline, and I will be looking to expand camera counts and workflow complexity.

I’m especially interested in hearing from people who have run both Blue Iris and a more commercial VMS. Did moving to a more commercial VMS actually improve stream stability, predictability, client responsiveness, and troubleshooting? Or did you find that the same camera/stream issues followed you there too?

I’m open to being told that I’m doing something wrong. But I’m less interested in “Blue Iris works great, you must be the problem” replies. I’m looking for a practical assessment of whether Blue Iris is the right tool for this level of system, or whether it is better viewed as an extremely capable prosumer/home-lab product that starts to show its limits in more demanding deployments. And, I suppose, if somehow I really am an idiot and am missing something obvious then I'd be open to hearing that. :)
 
Last edited:
I've got to go out shortly, but some quick thoughts from a user running 14 x 4K cameras (Hikvision) to a Proxmox virtualised BI VM (and a second test BI system on another Proxmox host, both with GPUs for AI):

You don't say what CPU the host is using and whether you've monitoring the various resources CPU, Disk IO, networking etc to show any bottlenecks. The comments about delays, stability, BI desktop stuck for minutes opening etc points to some problems. My BI desktop apps both open in about 2 to 3 seconds and both my hosts are running 6 year old desktop CPUs and they are also running other Windows, Linux and Linux docker host VMs. With the BI desktop app open the CPU shows some more load as its now running the BI service and desktop BI but it doesn't impact the system in significant way. I use RDP to my BI VM and set 'unristricted' for video during RDP so that's more load than native desktop. I also have 3 kiosk devices showing at least half the cameras that are on 24 x 7 albeit sleep about 40% when no-one is nearby and no events have occurred.

Having used a few other more commercial grade systems in the past (but not for a few years now), Blue Iris is somewhat a different proposition. As a single developer product where BETA testing is done by general users if they use the latest updates there can be issues appear on previously fine systems. Equally some features may need some badgering to Ken to get them to work well. For example I struggled with static object detection which is improved in v6 compared to v5 where it was broken in a number of ways such as more than one static object could cause issues if their order from AI analysis changed. However on the plus side, I have found BI to offer a hard to equal amount of flexibility and I've been able to tie motion to many complex home automations and use inputs to BI to control camera modes and other features. For me I've never had ongoing performance or reliability issues other than latest BI releases, drivers or my own misconfiguration.

So my quick summary would be to get to the bottom of your current issues before deciding. If the host CPU is good enough and the virtualised environment is getting the required CPU/GPU features (and drivers) it requires then it should work well. If not then the issues could affect other camera software anyway.
 
  • Like
Reactions: bp2008
In my experience clones work nice if you are cloning one just to simply record 24/7. Once you try to start doing alerts/triggers/etc. with a clone, you get the types of things you see, especially with LPR and the tight windows it has to trigger on to reliably get the plate.

I have way more cameras than you and not as robust as a system and do not experience these problems.

Did you mean you unchecked ONVIF auth? It should be unchecked, but keep in mind some cameras after a reboot will throw that error for a few minutes.

You mention using it as a VM. We have seen many issues with people running it that way. Doesn't mean some don't have issues running as a VM, but we tend to see issues from folks when running in that situation. It is way more finicky.

Meanwhile my 4th gen with way more cameras than you chugs along with no issues running it as a standard Windows computer.

As far as using hardware decoding is concerned, it used to be a requirement to process the mainstream videos.

However, with substreams being introduced, the CPU% needed to offload video to a GPU (internal or external) is more than the CPU% savings seen by offloading to a GPU. Especially after about 12 cameras, the CPU goes up by using hardware acceleration. The wiki points this out as well.

Plus substreams opens up the possibility for older machines to be just fine, along with non-intel computers.

Around the time AI was introduced in BI, many here had their system become unstable with hardware acceleration (hardware decode) (Quick Sync) on (even if not using DeepStack or CodeProject). Some have also been fine. I started to see errors when I was using hardware acceleration several updates into when AI was added.

It seems to be a big issues with BI6 and many threads like this are here.

This hits everyone at a different point. Some had their system go wonky immediately, some it was after a specific update, and some still don't have a problem, but the trend is showing running hardware acceleration will result in a problem at some point.


My CPU % went down by not using hardware acceleration.

Here is a recent thread where someone turned off hardware acceleration based on my post and their CPU dropped 10-15% and BI became stable.

But if you use HA, use plain intel and not the variants.

Some still don't have a problem, but eventually it may result in a problem.

Here is a sampling of recent threads that turning off HA fixed the issues they were having....

No hardware acceleration with subs?


Hardware decoding just increases GPU usage?


Can't enable HA on one camera + high Bitrate


And as always, YMMV.
 
Given this kind of setup — roughly a dozen 4K cameras, dedicated LPR cameras, continuous 4K recording, alerting/AI workflows, ONVIF events, GPU acceleration, and a fairly serious server/network/storage environment — is Blue Iris still worth pursuing, or should I be looking at a more commercial VMS? My system right now is what I consider baseline, and I will be looking to expand camera counts and workflow complexity.
To me, it feels like there is some kind of hidden issue in your system
I'm running Blue Iris with 36 cameras, all from Andy, all are using ONVIF events, some are using BI motion detection+AI.
Cameras are spread around 20 acres property with Ubiquiti switches hanging on the trees + bunch of POE extenders :)
And I have absolutely no issues with Blue Iris, it just works.
But, it's running directly on Windows, no VM, and my gut feeling is that could be your problem.
 
I run Blue Iris in a Windows VM and haven't had issues. I have a similar amount of cameras to you I think, but probably less resolution on average and a bit less AI. But then my server does not have a GPU.

It would be interesting if you could share what your 'Total MP/s' value is from the Camera Satus page - I may be wrong but it have thought of that as quite a good 'total load' indicator, taking I into account all the variables, but would be glad to be corrected.

I also haven't experienced much in the way of UI hanging, and my thick client on the server opens in a few seconds.

Viewing the Blue Iris console over Remote Desktop seems to cause all cameras to slow down and can interrupt frame rates across the system.
Interesting. I know by default the Blue Iris thick client only renders live views at something like 5FPS by default over RDP, but I think this can be changed. Should not affect the actual recording though - does yours?

What OS version is your VM? Do you have some data on system resource usage? Your system sounds plenty powerful enough, but it would probably be a good idea to monitor CPU / Ram / network / disk IO while you are using the system, if you haven't already.