General Recommendations / NVR / Nvidia Driver Recommendations

Apr 1, 2025
7
1
Glens Falls, NY
Good afternoon. I have been running Blue Iris 5 for a couple years now, and it has been great. I have been slowly trying to get to my maximum capability and would like to know what others have done or experienced as working well.

My system:
Windows 11 Pro
Dual Xeon x5690
SuperMicro X8dtn+ Rev 2
288gb DDR3 800mhz (Large system cache set in the registry)
Nvidia Quadro RTX 4000 8gb Video (581.80 drivers)
Avago SAS3 3008 Fury (IT Mode)
LTO-6 Ultrium 6250 tape drive
500gb SSD for new video
14tb spinning disks for stored video
3tb SSDs for transfer to LTO staging and re-encoding

Hikvision DS-6716HQHI NVR providing h264 streams
Various Tyco Illustra Cameras providing h265 streams
Several Hikvision Accusense cameras providing h265 streams

I recently went from a GTX 960 with the Keylase patch to the Quadro, and have been getting hardware encode errors in my log for my profiles that have hardware encoding enabled. I'm not going to a quicksync platform any time soon. I didn't have the encode errors with the old GTX, and I know the Turing hardware has a lot more capability than the Maxwell video card. The observable problem I have is inability to watch timeline videos in UI3 with hardware acceleration enabled. I have it enabled for my live view only streaming profile. It still gives log errors, but functions correctly. With nvidia hardware encoding disabled, I don't show any hardware encoding in my task manager.

I also really want to get away from h264, since it uses so much more bandwidth than h265. I got an iDS-7216 HQHI M2/S to replace the older NVR, but could not get streams out of it. Upon booting, it would work for about 1 minute. I tried a few firmwares, but I think it is locked into its own platform.

I don't use substreams. I am trying to save some bandwidth and my setup keeps up without a lot of effort at this time. I use overlays in Blue Iris for naming and time. Server time suites my needs, and the cameras are mixed on different networks. About half of them don't have internet access for time sync, and I didn't pursue setting up a local time server. I also want all my camera fonts to be the same.

Please let me know if there are known good Nvidia drivers and what are some inexpensive options for a replacement NVR. I am hoping a solid Blue Iris 6 version with H265 support comes out. If you have any other suggestions or amplifying questions, please let me know. Thanks in advance, I look forward to hearing from you.
 
You really should use substreams. If they were bad, nobody here would use them.

You should only need a GPU if doing heavy AI.

BI works best with H264.

The TL : DR version is H265 is not a consistent codec standard and every manufacturer does it different, which can be problematic with some VMS systems. H264 tends to be the consistent codec. Plus H265 uses more camera processor resources, which can then be problematic with other options on the camera. UI3 uses H264, so if you are using H265 then it has to be re-processed which can cause issues.


Now for the long version:

SmartCodec (+ variants) can create lots of problems with playback / search - many have seen it jumps and skips over time, plus it is proprietary to the manufacturer and can be problematic with other VMS systems.

Most of us have found H265 in these cameras suck.

H265 in theory provides more storage as it compresses differently, but part of that compression means it "macro blocks" (technically coding tree units) big areas of the image that it thinks isn't moving. That can be problematic for digital zooming with H265.

However, it also takes more processing power of the already small CPU in the camera and that can be problematic if someone is maxing out the camera in other areas like FPS and then it stutters.

Further some cameras can handle H265 better than others, even if the camera "claims" to support it, it may actually do a very poor job with it.

In theory it is supposed to need 30% less storage than H264, but most of us have found it isn't that much. My savings were less than few minutes per day. And to my eye and others that I showed clips to and just said do you like video 1 or video 2 better, everyone thought the H264 provided a better image.

The left image is H264, so all the blocks are the same size corresponding to the resolution of the camera. H265 takes areas that it doesn't think has motion and makes them into bigger blocks and in doing so lessens the resolution in those larger blocks yet increases the camera CPU demand to develop these larger blocks. For some cameras that then becomes problematic to do other functions as the little processor is now maxed out.

1667974399793.png



In theory H265 is supposed to need half the bitrate because of the macroblocking. But if there is a lot of motion in the image, then it becomes a pixelated mess. The only way to get around that is a higher bitrate. But if you need to run the same bitrate for H265 as you do H264, then the storage savings is essentially zero.

In my testing I have one camera that sees a parked car in front of my house. H265 sees that the car isn't moving, so it macroblocks the whole car and surrounding area. Then the car owner walked up to the car and got in and the motion is missed because of the macroblock being so large. Or if it catches it, because the bitrate is low, it is a pixelated mess during the critical capture point and by the time H265 adjusts to there is now motion, the ideal capture is missed.

In my case, the car is clear and defined in H264, but is blurry and soft edges in H265.

Digital zooming is never really good and not something we recommend, but you stand a better chance of some digital zoom with H264 rather than a large macroblocked H265. I can digital zoom on my overview camera and kinda make out the address number of the house across the street with H264, but not a chance with H265 as it macroblocked his whole house.

H265 is one of those theory things that sounds good, but reality use is much different.

Some people have a field of view or goals that allow H265 to be sufficient for their needs.

Third party VMS systems do better with H264. That is the tried and true standard. H264H is ok as well.

As always, YMMV.


As far as using hardware acceleration, 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.

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.

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.

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.
 
  • Like
Reactions: Sergeant82d
UI3 uses H264, so if you are using H265 then it has to be re-processed which can cause issues.

This limitation is somewhat going away with Blue Iris 6.

H.265 encoding was added in some of the earlier Blue Iris 5.9.9.99 releases (a.k.a. Blue Iris 6 beta) and I already got it working in UI3.

Compatibility is spotty. Here is a limited compatibility matrix based on my own testing.

Right now I don't recommend configuring any streaming profiles to use H.265 encoding though.
  • Encoding in H.265 (instead of H.264) adds a lot to Blue Iris's CPU load. This may become less of an issue for systems that use hardware accelerated encoding, but currently hardware accelerated encoding is broken, so who knows?!
  • I don't have an objective/scientific way to test if Blue Iris's H.265 encoding is providing a better compression ratio than H.264. My subjective experience is that it performs quite similarly and I can't assign victory to either codec.
The real benefit of H.265 compatibility is that direct-to-wire now works with H.265 in UI3. You do not need to assign the H.265 codec to any streaming encoder profile to make direct-to-wire H.265 work. You just need to have direct-to-wire enabled in your streaming profile, and be using a compatible video player in UI3 (Automatic should be fine on most platforms). In UI3's "Stats for nerds" panel you can see the Codecs readout will say "H265" if it is receiving H.265 video from Blue Iris. In the future I might get a flag from Blue Iris indicating when direct-to-wire is being used, and then I could add that status into Stats for nerds and maybe put a little visual indicator somewhere else too.

Remember, direct-to-wire only works with live single-camera video. Not for multi-camera views or clips or timeline.

Direct-to-wire also introduces unpredictable compatibility issues. My older 4K Dahua cameras that are encoding H.265 video won't play in UI3 while direct-to-wire is enabled -- I just get a decoder error and the video freezes before it renders a single frame. To help deal with situations like this, Blue Iris has added a checkbox in Camera Settings > Webcast tab where you can disable direct-to-wire for individual cameras.
 
Let me add some specific information.

Space is a premium. I'm only on LTO 6 and don't have enough budget to go any higher, and can only get about 4 days per tape, which will shrink as more cameras are added.

I have a pretty large mix of cameras, and my older NVR substreams are low resolution, which has been rejected. I haven't figured out substreams on all my other cameras yet, but they generally need to be 720p to be accepted. My group preview is 5 fps in the local UI and UI3, and it doesn't hit the CPU very hard.

My NVR is limited to H264, and I still would like to go to H265. Its a mixture of COAX cameras, some are WD1 resolution, the rest are capable of 1080p / 30 fps. I run most of the h264 cameras at 720p 30 fps, and about 2 at 1080p 30 fps. All of the independent cameras are h265, 1080p 30 fps. The goal is to have all cameras at 1080p 30 fps. The space constraint pushes me to h265. Its all direct to disk, but I can't stream that way or I lose my overlays. My overlays are all based on server time to keep them closer to forensically accurate. They can and have recorded some things that need high accuracy.

I understand that substreams are better. The only time I see CPU spikes is when looking at the timeline with all cameras. Live viewing is no stress at all. They are older CPU's, but still have plenty of power to put toward Blue Iris. They don't do anything else.

What I would like, and I understand there are no guarantees, is an NVR to replace my old one that streams to Blue Iris in h265 to help conserve space. Those 1080p h264 streams are double or more bitrate of 1080p h265. I have a few cameras that record on motion activation, but many of them record 24/7, regardless of activity. I would also like it to have 720p substream capability, but that isn't necessary. My next step for the CPU spikes is to limit the viewer accounts to groups, so they don't get the option to view all cameras at once in the timeline. It doesn't restrict overall camera access, but only what they can see at once. A lot of these humans are not technical and will leave it running and try to squint and see the camera they want to view instead of actually reading the information on the screen.

I would like if someone has quadro experience and can tell me if one driver seems to work better than the others. I really like the software, and don't have time or desire to go to a different platform. I think Blue Iris and UI3 are great.
 
You said space is limited and budget is an issue, but there are things you can do that will provide you with additional days of storage.

Have you looked at an object in motion freeze framed at H265 versus H264? If H265 isn't better, it isn't worth the savings. Like I mentioned, to get the same quality between the two, I was literally only adding a few minutes of extra storage with H265 versus H264, so I went with the more stable H264.

What is your use case that requires 30FPS? Go to 15FPS and you double your days available... Movies on the big screen are shot at 24FPS, so I am sure whatever monitor you are watching is smaller than a cinema screen....

Going to substreams instead of mainstream only can add a lot of time depending on how often the cameras are triggered.

Shutter speed is more important than FPS.

Sure 30FPS can provide a smoother video but no police officer has said "wow that person really is running smooth". They want the ability to freeze frame and get a clean image. So be it if the video is a little choppy....and at 10-15FPS it won't be appreciable. My neighbor runs his at 60FPS, so the person or car goes by looking smooth, but it is a blur when trying to freeze frame it because the camera can't keep up. Meanwhile my camera at 15FPS with the proper shutter speed gets the clean shots.

We wouldn't take these cameras to an NBA game to broadcast, nor would we take the cameras they use at an NBA game to put on a house. Not all cameras are alike and the approach of "a camera is a camera" mentality will result in failure. Another example, I can watch an MLB game and they can slow it down to see the stitching on the baseball. Surveillance cams are not capable of that. You need to find a camera for the intended purpose.

Watch these, for most of us, it isn't annoying until below 10FPS




 
For my cameras in my setup, I'm getting much more efficiency for same quality, resolution and FPS. h264 at 720p either matches or is greater than the bitrate of my h265 cameras at 1080p. That may be due to my NVR, which I would like to replace. I can try to sell 15fps, but not getting my hopes up.