Blue Iris UI3

A user on the BI software forum brought to my attention a possible problem with V6.0.1.8 aand UI3. It seems if an alert is deleted in UI3, it immediately removes it from BI but the UI3 screen does not update and leaves a "greyed out" place holder of the deleted alert, a refresh of the browser window fixes the display, I have only tested this using the chrome browser so I am not sure if it is only a chrome problem or not, I will test it on MS Edge and post back, I do not have a system with Firefox at the moment to test
That behavior is by design to prevent having a jarring layout shift in your clip list.
 
Haven't had time to thoroughly test this, but I seem to have a "new" problem with 6.0.1.8 and the UI3 links sent with Pushover alerts: they now don't open the exact clip I'm expecting, but rather some more or less random (but within the same hour) time from the correct camera. It may be from roughly a minute behind the expected time/clip, up to a half hour or so beforehand. Very bizarre, but for now I'm going to roll back to 6.0.1.7 to see if it goes back to normal.

Edit: Yes, moving back to 6.0.1.7 fixed this completely, even for the exact same (older, recorded with 6.0.1.8) clips that wouldn't link correctly from UI3 Pushover alerts under 6.0.1.8.
 
Last edited:
Haven't had time to thoroughly test this, but I seem to have a "new" problem with 6.0.1.8 and the UI3 links sent with Pushover alerts: they now don't open the exact clip I'm expecting, but rather some more or less random (but within the same hour) time from the correct camera. It may be from roughly a minute behind the expected time/clip, up to a half hour or so beforehand. Very bizarre, but for now I'm going to roll back to 6.0.1.7 to see if it goes back to normal.

Edit: Yes, moving back to 6.0.1.7 fixed this completely, even for the exact same (older, recorded with 6.0.1.8) clips that wouldn't link correctly from UI3 Pushover alerts under 6.0.1.8.

You should contact Blue Iris support about this. On 2025-12-23, I was notified of an issue where database compact operations (which happen nightly by default) were causing clips and/or alerts to get assigned different "locators"/"identification numbers". This would cause alerts or links sent the previous day to often open the wrong item the next day. Ken suggested that he was going to change the record locators to "a longer form record number which survives the compact operation". The change log says this change was included in BI 6.0.1.8, but clearly there is a bug in the change.
 
With 6.x.x.x I started to play with AI components for first time & when I hover over an alert, it auto plays a segment of that motion alert, I thought auto play could be disabled on hover on/off? I do like the feature but I was looking to better capture the AI Alerts that are written on top & they happen so quickly you can barely catch what is being reported. If that is not adjustable, perhaps doubling the exposure time of the information (Unknown/known & confidence level % of the alert from AI's perspective) could be adjusted before auto play of the video occurs?
 
With 6.x.x.x I started to play with AI components for first time & when I hover over an alert, it auto plays a segment of that motion alert, I thought auto play could be disabled on hover on/off? I do like the feature but I was looking to better capture the AI Alerts that are written on top & they happen so quickly you can barely catch what is being reported. If that is not adjustable, perhaps doubling the exposure time of the information (Unknown/known & confidence level % of the alert from AI's perspective) could be adjusted before auto play of the video occurs?
Settings for this already exist in the Clips / Alerts category. Try configuring it as I've shown here, especially the two with red arrows in them.

1769007631852.png

Then you need to be looking at the "Alerts" list (clip list filtered to "Alerts").
1769008314851.png
There's a shortcut button for this near the top right.
1769008333385.png

And I believe you also need each camera in Blue Iris to have these settings enabled in the Camera Settings > Alert tab, because the dropdown list choice here is what tells Blue Iris you want a high-res jpeg to be saved with each alert.

1769008419561.png
 
Ah yes, & I want my cake & eat it too! Thank you for the clarification, also I do like the animation preview Alert, I default to always Alert view in UI3, I am never on the console, it is headless. The trick was to ensure on Record Tab JPEG is "checked" & chose "When Alerted" in the Drop down. Next quality 90% & left image creation to "auto (unchecked)". Then on the Alerts Tab changed to JPEG files (size quality on Record tab) from "database only". UI3 I tried both ways, I like the hybrid of "Yes" to Hi-Res mouse over & reverted back to off/No for the "No Preview animation for Alerts...". I like it this way actually, this was really what I wanted, just a second of clarity on the JPEG then off to the animated preview.
Thank you for taking the time to respond so quickly.
 
  • Like
Reactions: bp2008
I'm going to give new read-only logins to my BI install, exterior cameras only, to several of the neighbor tenants in my office complex. They are not very technical. Is there a way for me to push a set of UI3 defaults to them? I downloaded my own:

http.--<blue-iris-hostname>.81_ui3_settings_yyyy-mm-dd-something-something.json

Code:
{
  "ui3_allow_clip_deletion": "1",
  "ui3_allow_mouse_swipe_gestures": "0",
  "ui3_allow_touch_swipe_gestures": "1",
  "ui3_alwaysAllow1xVideoZoom": "0",
  "ui3_askForDelete": "All",
  "ui3_audioMute": "0",
  "ui3_audioVolume": "0.9339285714285714",
  "ui3_audio_buffer_ms": "700",
  "ui3_audio_codec": "FLAC",
  "ui3_browserZoomEnabled": "0",
  "ui3_bypass_single_camera_groups": "0",
  "ui3_cam_settings_map": "{}",
  "ui3_cameraLabels_backgroundColor": "#000000",
  "ui3_cameraLabels_backgroundOpacity": "100",
  "ui3_cameraLabels_cameraColor": "1",
  "ui3_cameraLabels_enabled": "0",
  "ui3_cameraLabels_fontSize": "10",
  "ui3_cameraLabels_minimumFontSize": "8",
  "ui3_cameraLabels_multiCameras": "1",
  "ui3_cameraLabels_position": "Top",
  "ui3_cameraLabels_singleCameras": "0",
  "ui3_cameraLabels_text": "Name",
  "ui3_cameraLabels_textColor": "#FFFFFF",
  "ui3_cameraLabels_textOpacity": "100",
  "ui3_camera_overlay_icon_audio_trigger": "0",
  "ui3_camera_overlay_icon_generic_trigger": "0",
  "ui3_camera_overlay_icon_motion_trigger": "0",
  "ui3_camera_overlay_icon_new_alerts": "0",
  "ui3_camera_overlay_icon_paused": "0",

file from the button at:

/ui3/storageinfo.htm

and I see where a savvy user could import that, but is there a way to force or at least prompt a new login to adopt these settings?

And how about in UI3 on a phone, where there's no easy way to browse for a file?

Thanks!
 
I'm going to give new read-only logins to my BI install, exterior cameras only, to several of the neighbor tenants in my office complex. They are not very technical. Is there a way for me to push a set of UI3 defaults to them? I downloaded my own:

http.--<blue-iris-hostname>.81_ui3_settings_yyyy-mm-dd-something-something.json

and I see where a savvy user could import that, but is there a way to force or at least prompt a new login to adopt these settings?

And how about in UI3 on a phone, where there's no easy way to browse for a file?

Thanks!

Phones have file browser apps too, they just are not in-your-face as much as on windows/mac/linux, and the average phone user may never need to use it.

Anyway you can use UI3's local overrides system to add anything you want to UI3, including changing the default settings. Read this: UI3 Help

When you're logged into UI3 as an adminstrator, you can go to the bottom of the settings panel to find a button Create Script: "ui3-local-overrides.js" which downloads a ui3-local-overrides.js containing all your current settings. You can simply place that file into your Blue Iris/www/ui3/ directory to cause all your current settings at that time to become UI3's new default settings.

This overrides system is full of possibilities if you know your way around JavaScript or if you can get a chatbot to write the necessary code for you. You could for example have all those settings in the ui3-local-overrides.js file only get applied when location.hostname matches a certain value. That way you can send the non-technical folks a different DNS name that will resolve to your Blue Iris web server and use a different hostname yourself that doesn't apply the same customizations to UI3.
 
Anyway you can use UI3's local overrides system to add anything you want to UI3, including changing the default settings. Read this: UI3 Help

When you're logged into UI3 as an adminstrator, you can go to the bottom of the settings panel to find a button Create Script: "ui3-local-overrides.js" which downloads a ui3-local-overrides.js containing all your current settings. You can simply place that file into your Blue Iris/www/ui3/ directory to cause all your current settings at that time to become UI3's new default settings.

This overrides system is full of possibilities if you know your way around JavaScript or if you can get a chatbot to write the necessary code for you. You could for example have all those settings in the ui3-local-overrides.js file only get applied when location.hostname matches a certain value. That way you can send the non-technical folks a different DNS name that will resolve to your Blue Iris web server and use a different hostname yourself that doesn't apply the same customizations to UI3.
Neat! I'll have to play with this a bit. This just sets the global defaults for the first login from each client on each browser, correct? Once they're logged in, they can still edit whatever they want?
 
I'm struggling to get my H265 camera going direct-to-wire to UI3 running on my laptop with windows 11 and Iris XE iGPU. I have the BI webserver encoder profile set as H265 and direct-to-wire as checked and the UI3 Video Player set to automatic. Unfortunately, the stream shows up as H264 in UI3 under tools for nerds. The same camera does however stream as H265 on two other win11 laptops both with NVidia GPUs. Also, successfully on chrome on iOS.

Looking at the UI3 github compatibility table, it suggests that H265 direct-to-wire should work with iGPU but when I browse to "chrome:/gpu" it doesnt list H265 in the supported codec section!

Has anyone managed to get this to work on Iris XE GPU or is the problem likely elsewhere? Thanks.
 
Last edited:
  • Like
Reactions: bp2008
I'm struggling to get my H265 camera going direct-to-wire to UI3 running on my laptop with windows 11 and Iris XE iGPU. I have the BI webserver encoder profile set as H265 and direct-to-wire as checked and the UI3 Video Player set to automatic. Unfortunately, the stream shows up as H264 in UI3 under tools for nerds. The same camera does however stream as H265 on two other win11 laptops both with NVidia GPUs. Also, successfully on chrome on iOS.

Looking at the UI3 github compatibility table, it suggests that H265 direct-to-wire should work with iGPU but when I browse to "chrome:/gpu" it doesnt list H265 in the supported codec section!

Has anyone managed to get this to work on Iris XE GPU or is the problem likely elsewhere? Thanks.

H.265 support is very complex and tricky. I'll try to explain what is going on.

Every time UI3 requests a video stream from Blue Iris, UI3 tells Blue Iris these two things:
  • which video codec(s) are supported (H.264, H.265, or both)
  • which video codec is preferred by the user (H.264, H.265, or no preference)

Codec Support Negotiation between the Web Browser, UI3, and Blue Iris

UI3 learns which codecs are supported by using feature detection; in essence, UI3 asks the web browser what it supports. If the browser does not say it supports H.265, then UI3 will not tell Blue Iris that it supports H.265, and therefore Blue Iris will not send H.265. Period. This codec support negotiation takes precedence above everything else.

Most likely what is happening on that laptop is the web browser is telling UI3 it does not support H.265, and consequentially UI3 is not asking Blue Iris for it.

You can confirm that by looking in UI3's main menu > About This UI. It should tell you which codecs are supported in which of UI3's video player modules. This list is dynamically generated based on feature detection so it will be different in web browsers that have different codec support.

1771445235028.png

And in UI Settings > Video Player you can see H.264 and H.265 here with either a green checkmark or red X for each. And also when you click (learn more) it will give more detail about which video player modules support which codecs.

1771445226113.png

In summary, the web browser tells UI3 which video codecs are supported. UI3 shows the codec support list in a few different places in its UI. Upon every video request, UI3 shares the list of supported codecs with Blue Iris.


How Blue Iris decides which Video Codec to actually send to UI3

Now it is time to discuess the codec preference and how it is determined which video format actually gets sent to UI3.

By default, UI3 has no codec preference. If you want to set one, you can do so in UI3's Streaming Profile editor (but generally I recommend leaving it on "inherit").

1771448713628.png

The default "Preferred Codec" is "inherit" which means the codec choice will be inherited from a server-side streaming profile in Blue Iris.

The server-side streaming profiles in Blue Iris by default have H.264 chosen. You can change it to H.265, but again I generally recommend leaving it on "H.264".

1771448816993.png

There are two reasons I recommend leaving the preferred video codec set to inherit / H.264:
  1. The codec preference/choice only affects which video encoder is selected when encoding/transcoding is needed. H.265 is more CPU intensive for Blue Iris to encode, less compatible with various client apps like UI3, and does not actually provide a meaningful difference in compression ratio or image quality. Therefore I always recommend leaving it set to use inherit in UI3, and H.264 in Blue Iris.
  2. The codec preference/choice in UI3 and in Blue Iris has no effect on direct-to-wire streaming. I'll say that again. The "Preferred Codec" choice in UI3 and the Video codec choice in Blue Iris has no effect on direct-to-wire streaming.
How does direct-to-wire factor into this?

All that matters for direct-to-wire streaming is:
  • which video codec the IP camera is encoding to natively (H.264 or H.265). Remember this is determined by the camera, not by Blue Iris.
  • whether or not direct-to-wire is enabled for the streaming profile you are using
  • whether or not UI3 supports the codec the IP camera is encoding to natively
  • direct-to-wire only works with live single camera streams. Not when playing recordings. Not multi-camera streams.
If direct-to-wire is disabled or if UI3 does not support the codec the camera is using, Blue Iris will transcode the video and not use direct-to-wire. Transcoding will happen using the preferred codec if possible but it will fall back to an unpreferred codec (typically H.264) if necessary based on the result of the "codec support negotiation" that I described closer to the top of this post.
 
Last edited:
OK, so this is some fantastic content and makes understanding how the chain works so much clearer. It is very much appreciated! I have reset the streaming config in BI to H264 as per suggestion. I was incorrectly assuming this was the format for direct-to-wire but now understand its purpose. The rest of my BI/UI3 settings look to be correct.

In my case, all of my cameras only output H265 so that is what is going into BI. As the server that hosts my BI VM is showing signs of age, I am keen to offload any processing possible, namely, encoding overhead, hence the desire to make use of direct-to-wire and UI3 H265 support if possible. I am not dependent on BI overlays so that isnt an issue. The direct-to-wire approach works great for two of my PC, both with NVidia GPUs. For those two clients, I can see the various UI3 references ("About the UI" and "Video Player Learn More") to H265 support which is great. But for my main laptop with Iris XE iGPU those references are not present and so the stream falls back to H264. I agree it is likely a codec issue and this is supported by the "chrome:/gpu" page that is missing any reference to HEVC codecs despite being on the latest intel drivers and chrome version.

I guess I'm just left with the question of why the HEVC codec isnt supported in chrome for my iGPU. Intel lists that the Iris XE supports HEVC encode/decode and chrome is identifying the iGPU correctly so I'm a little confused. Are you aware of anything that needs to be added/configured for this setup to work ? The compatibility page on your github suggest some iGPUs are supported but I guess not all?
 
  • Like
Reactions: bp2008
OK, thanks very much for testing Arc, unfortunately, I'm not getting HEVC in chrome:/gpu with the Iris Xe iGPU.

For what it is worth, ChatGPT suggests "Chrome supports HEVC on Arc because Intel built a new, fully licensed, Chromium‑compliant media stack for Arc — Iris Xe still uses the older stack that Chromium does not trust".

I'll do some more digging but it basically confirms this as a chrome compatibility issue with this particular iGPU. Which is a shame.

Thanks again for your time and response on this. Very much appreciated.