Blue Iris UI3

@jaydeel- there is a ui3 parameter “timeline” which appears to be usable to open UI3 to a specific time on the timeline. I have not experimented with it though.

@bp2008 - I was thinking it’d be great to have a parameter similar to ”timeline” like “relativetime” that opens Ui3 to a time relative to the moment it was called. This wouldn’t need to be exacting. The scenario I’m thinking of would be when I hear something outside, so I want UI3 to open at, say, 30 seconds earlier than the present so I might find the source of the sound.

@TSAN - apologies for posting this before your post has been replied to
 
@jaydeel- there is a ui3 parameter “timeline” which appears to be usable to open UI3 to a specific time on the timeline. I have not experimented with it though.
Thanks for the idea.

I just tried the &timeline= HTTP query parameter to go to a specific frame in a clip.

It works, but it's s not really an improvement for my desired use case, which is to efficiently navigate to specific frames in order to manually grab JPGs using an iPad.

It's true that I can specify a specific time via &timeline=JavaScript_timestamp, but playback always starts immediately, even if I've paused playback before editing the value in the browser's address bar. By the time I've managed to tap the 'pause' icon, the clip has already advanced past my desired frame.

I know I can change the play back speed to 0.125X, but it's still a challenge to quickly tap the pause icon fast enough... It might be more useful if there was something like a &speed= HTTP query parameter that I could also set to zero.

The best I seem to be able to do is the following (which is an improvement, but still time more consuming than I'd like):
1) view the clip the In the Timeline tab,
2) pause playback
3) coarsely advance to the frame I want by dragging the timeline, or using the &timeline= HTTP query parameter.
4) finely advance the clip frame-by-frame using keyboard shortcuts: period (backward) and comma (forward).

BTW, when I do this, I've just noticed that the browser address bar shows something like the following.
http://192.168.1.3:81/ui3.htm?timeline=1690565411878.5989&cam=DW2

I hadn't previously observed hat the &timestamp= parameter accepts a higher-precision fractional JavaScript timestamp. So I learned something new.
 
Last edited:
Hello, I'm in need of some help. I can access BI5 remotely only with Internt Explorer or with Chrome with the IETAB extension. Is there any way to access it in Chrome without the IETAB extension? I have the latest version of BI5 and the latest version of ui3. Can someone help me?
 
Hello, I'm in need of some help. I can access BI5 remotely only with Internt Explorer or with Chrome with the IETAB extension. Is there any way to access it in Chrome without the IETAB extension? I have the latest version of BI5 and the latest version of ui3. Can someone help me?
You dont need ietab for ui3-chrome works natively. What url are you using to access?
 
I noticed a bug that if an Alert happens while you're viewing UI3, the AI memo never gets populated for the newly added alerts on the list. It just stays blank. You have to refresh the UI3 page for the memos to show.

I've added this to my issue tracker. Thanks.

The Blue Iris app lets you jump to a specific time in the timeline.
As shown in the screenshot below, a left click on the black area (see mouse pointer), results in the 'Jump to' dialog.

Does UI3 already have a similar capability? If not, could it be added?

I ask because it is especially challenging to navigate to a specific frame in UI3 via the timeline slider (say, to grab a snapshot).
I find in much faster to navigate a specific frame by tweaking the seconds value in the 'Jump to' dialog's 'Time' field.

View attachment 167746
Thanks for the idea.

I just tried the &timeline= HTTP query parameter to go to a specific frame in a clip.

It works, but it's s not really an improvement for my desired use case, which is to efficiently navigate to specific frames in order to manually grab JPGs using an iPad.

It's true that I can specify a specific time via &timeline=JavaScript_timestamp, but playback always starts immediately, even if I've paused playback before editing the value in the browser's address bar. By the time I've managed to tap the 'pause' icon, the clip has already advanced past my desired frame.

I know I can change the play back speed to 0.125X, but it's still a challenge to quickly tap the pause icon fast enough... It might be more useful if there was something like a &speed= HTTP query parameter that I could also set to zero.

The best I seem to be able to do is the following (which is an improvement, but still time more consuming than I'd like):
1) view the clip the In the Timeline tab,
2) pause playback
3) coarsely advance to the frame I want by dragging the timeline, or using the &timeline= HTTP query parameter.
4) finely advance the clip frame-by-frame using keyboard shortcuts: period (backward) and comma (forward).

BTW, when I do this, I've just noticed that the browser address bar shows something like the following.
http://192.168.1.3:81/ui3.htm?timeline=1690565411878.5989&cam=DW2

I hadn't previously observed hat the &timestamp= parameter accepts a higher-precision fractional JavaScript timestamp. So I learned something new.

It was originally a conscious decision to leave out the date picker capability and instead build a timeline control that was easy enough to use that people wouldn't need a date picker. This was mainly to reduce button clutter and allocate more screen space to the real timeline control (keeping in mind that I design UI3 to be fully functional on very small touchscreens). I didn't see it as offering enough value to be worth a permanent space for a button on screen. I still don't, really. How often do you find yourself wanting to go to such a specific timestamp that you know in advance? What use case is this? If I can understand the use case, it can maybe help me design things better for it in the future. How much precision do you want in the date input?

I could perhaps add a context menu option to open a date picker.

As for the fractional timeline offset in the URL parameter, I am not really sure why that is there. Probably had something to do with having navigated frame-by-frame while paused, but when I do that for some reason I always get fractions of .3333 or .6667. Probably something to do with the group stream frame rate reported by Blue Iris... Anyway I don't think it is of much consequence. Blue Iris likely just ignores everything after the decimal point anyway.
 
Last edited:
How often do you find yourself wanting to go to such a specific timestamp that you know in advance? What use case is this? If I can understand the use case, it can maybe help me design things better for it in the future. How much precision do you want in the date input?

I could perhaps add a context menu option to open a date picker.
Thanks for the reply.
I described the use case above "to efficiently navigate to specific frames in order to manually grab JPGs using an iPad".
Usually I'm trying to capture a sharable/archivable image of night visitor (critter) , or street event, or a person.
I know the time in advance from pausing playback when the clip is close to the frame I want to grab.
Entering times in a picker, like '3:03:24', '3:03:25', and so on is much more efficient and precise than using the scrubber on a touch device, which can be VERY fiddly, imprecise, and frustrating.
I do this several times a week at most.
I don't use the date part of the picker, just the time.
 
Last edited:
Running Blue Iris for ~ 2.5 months.
A month after go live I installed a BI update and the UI3 calendar red dots stopped appearing for days future days. However the BI server + BI remote management software show all red dots.
UI3 = May 12th - June 14th have red dots.
BI = May 12th - present have red dots.
Do not feel any issue with BI DB. Appears to be a UI3 display issue. UI3 will play any content shown on day without red dot. All clip archiving has been working perfect.
Its a no big deal issue as we know everyday has content but curious if anyone has encountered difference between BI software and UI3 calendar red dots.

Vmware Storage design
C:\ = DB (SSD)
D:\ = Clips, Alerts (14TB SAS - 1MB cluster)
E: = Clips Archive, Alerts Archive, JPGs (14TB SAS - 1 MB cluster)
22.84TB total. Both disks given some headroom. Lands our current 8 cam continuous record setup H265 1440P at round ~79 days worth of recordings. System will soon be deleting oldest archive clips.

Thank you.

There were Blue Iris versions in recent history where Blue Iris took a very long time (30+ seconds) to send the data for the red dots to UI3. Since there is no loading status indicator for the red dots in UI3, a user would perceive this as the dots simply missing. Typically it would be fast after the first time the dots loaded since Blue Iris started up. I complained about it to the developer in late May and he said he fixed it.

So I'm not sure what could be causing the problem for you now. The red dots load very quickly for me today using latest Blue Iris.

@bp2008 - I was thinking it’d be great to have a parameter similar to ”timeline” like “relativetime” that opens Ui3 to a time relative to the moment it was called. This wouldn’t need to be exacting. The scenario I’m thinking of would be when I hear something outside, so I want UI3 to open at, say, 30 seconds earlier than the present so I might find the source of the sound.

Good idea. I'm adding that to my issue tracker. In the meantime you may appreciate that it is possible to use arrow keys on a keyboard to navigate left and right on the timeline in 10-second chunks (this "Skip Time" is configurable in UI Settings > Hotkeys).

Also notable, UI3 has a "keep out time" that prevents you from seeking to a spot that is within 15 seconds of "live". This is because Blue Iris has problems creating timeline video that is within a few seconds of "live". Cameras will be missing or will flicker in and out sporadically. The effect gets worse the closer you get to "live", and gets particularly bad when you're closer than 10 seconds. To see the effect for yourself, you can tinker with the "keep out time" by opening the browser's developer tools and pasting clipTimeline.keepOutTime = 1000 into the javascript console (this example reduces the limit to 1000 milliseconds). To notice the effect, you may need to be doing continuous recording. Actually on my continuous recording box, at 15 seconds offset I still have one camera that won't appear at all, and one other camera that flickers in and out. On that system I need to seek back to about 25 seconds before everything remains visible reliably.
 
Thanks for the reply.
I described the use case above "to efficiently navigate to specific frames in order to manually grab JPGs using an iPad".
Usually I'm trying to capture a sharable/archivable image of night visitor (critter) , or street event, or a person.
I know the time in advance from pausing playback when the clip is close to the frame I want to grab.
Entering times in a picker, like '3:03:24', '3:03:25', and so on is much more efficient and precise than using the scrubber on a touch device, which can be VERY fiddly, imprecise, and frustrating.
I do this several times a week at most.
I don't use the date part of the picker, just the time.

Thanks. Since you're using a touch device, you may benefit from a recently added setting where you can change the minimum zoom scale of the timeline:

1690650037322.png

If you change this to "6" which is the lowest value I allowed in there, then you'll get very significantly more precision than at scale "7" which is the current default, or "8" which I believe was the default before I added thumbnails to the timeline.
 
FYI @jaydeel and @Swampledge, I have just released UI3-251 which can be installed manually according to instructions here.

Version 251
  • The advanced PTZ function "3D Positioning" is now usable on supported cameras in a group camera stream without needing to maximize the camera first. This capability is accessed via the middle mouse button and is not available from group camera streams on devices without one.
    • Tip: 3D Positioning is available on most new Dahua PTZ cameras when you select the Dahua New V4 protocol in Blue Iris.
  • The "timeline=" URL parameter can now accept a negative number of milliseconds to offset from "live".
  • The "timeline=" URL parameter can now accept a date string in any format parseable by JavaScript, to make it easier for users to do manual entry or interoprate with other applications.
  • Added "pause=1" URL parameter to allow clip or timeline video to start in the paused state. It is currently not possible to start live video paused.
 
There were Blue Iris versions in recent history where Blue Iris took a very long time (30+ seconds) to send the data for the red dots to UI3. Since there is no loading status indicator for the red dots in UI3, a user would perceive this as the dots simply missing. Typically it would be fast after the first time the dots loaded since Blue Iris started up. I complained about it to the developer in late May and he said he fixed it.

So I'm not sure what could be causing the problem for you now. The red dots load very quickly for me today using latest Blue Iris.

Thanks for sharing.

Well I emailed BI support about it Mid June and Antonio said to try repair/regenerate on DB.
I then asked for more details about repair/regenerate function as I do not want to lose any alert to clip links / playback. And if BI DB is compatible with getting online backups via Microsoft VSS / Veeam backup agent. Never heard back.

I simply wanted more info about DB repair function as I don't even feel it's a DB the issue. BI has the red dots, just UI3 missing. And all playback within UI 3 works.

More environment details:
Presently BI 5.7.7.18 / Server 2022 standard.
Its a Dell R730xd / ESXi 7 server. BI VM has 12 cores , 16GB RAM + GTX 1650 passthrough. 1650 has opensource encoding patch/fix for more encoding sessions as we stream 6-8 Ui3 sessions during day.
Resource utilization of VM good with 1650. Highest load with all staff streaming + recording - 45% CPU, 10/16 GB RAM, 1650 decode 25% , 1650 encode 65%, 1650 3.5/4 GB RAM.
We are using Stunnel with UI3. Certificate from our internal Microsoft CA. Not self signed.
CodeProject on separate physical workstation using RTX 3050.

There was one time recently when I was filtering many days to find an alert and the UI3 red dots reappeared for July when filtered on a specific day.
I then click clear date and the July red dots disappeared again. ( back to only may12-june14)
I tried filtering multiple days again to see if I could get them to return but could not repeat it on demand.
Its not big deal. We know everyday has data. Red dots really just allow us to see our oldest day of recordings as system begins to purge oldest clips. And I can still reference oldest recording day via BI software.
 
Last edited by a moderator:
Thanks for sharing.

Well I emailed BI support about it Mid June and Antonio said to try repair/regenerate on DB.
I then asked for more details about repair/regenerate function as I do not want to lose any alert to clip links / playback. And if BI DB is compatible with getting online backups via Microsoft VSS / Veeam backup agent. Never heard back.

I simply wanted more info about DB repair function as I don't even feel it's a DB the issue. BI has the red dots, just UI3 missing. And all playback within UI 3 works.

More environment details:
Presently BI 5.7.7.18 / Server 2022 standard.
Its a Dell R730xd / ESXi 7 server. BI VM has 12 cores , 16GB RAM + GTX 1650 passthrough. 1650 has opensource encoding patch/fix for more encoding sessions as we stream 6-8 Ui3 sessions during day.
Resource utilization of VM good with 1650. Highest load with all staff streaming + recording - 45% CPU, 10/16 GB RAM, 1650 decode 25% , 1650 encode 65%, 1650 3.5/4 GB RAM.
We are using Stunnel with UI3. Certificate from our internal Microsoft CA. Not self signed.
CodeProject on separate physical workstation using RTX 3050.

There was one time recently when I was filtering many days to find an alert and the UI3 red dots reappeared for July when filtered on a specific day.
I then click clear date and the July red dots disappeared again. ( back to only may12-june14)
I tried filtering multiple days again to see if I could get them to return but could not repeat it on demand.
Its not big deal. We know everyday has data. Red dots really just allow us to see our oldest day of recordings as system begins to purge oldest clips. And I can still reference oldest recording day via BI software.

If you don't mind getting your hands a little dirty, you can try to figure out what is going on with the request by using the browser's developer tools (ctrl + shift + i). Go to the network tab of the developer tools, then open the clip list calendar. At the exact moment you open the calendar, a new json request will appear in the list; that is UI3 asking for the list of red dots. Of course there are many json requests in the list, but you can identify this one by its payload which includes cmd: "cliplist" and tiles: true.

1690665164398.png

With that request selected, you can see in the "Preview" tab the response data, which should look like a series of {date: nnnnnnnnn}, {date: nnnnnnnnn}, ..., and in "Timing" tab you can see how long it took the request to complete (it should be < 100 ms).

1690665264993.png

1690665537637.png

Hopefully by investigating in this manner and comparing with what I have shown above, you can identify what is going wrong.
 
If you don't mind getting your hands a little dirty, you can try to figure out what is going on with the request by using the browser's developer tools (ctrl + shift + i). Go to the network tab of the developer tools, then open the clip list calendar. At the exact moment you open the calendar, a new json request will appear in the list; that is UI3 asking for the list of red dots. Of course there are many json requests in the list, but you can identify this one by its payload which includes cmd: "cliplist" and tiles: true.

Thanks.
Reviewed json request suggested. Both under 100ms. Local LAN 9.41ms + VPN 48.44ms. (Calendar for default "All cameras" group)
HOWEVER - Feel stupid now for not discovering by now that this issue is only happening on the default "All Cameras" group.
We have 4 custom groups for staff live view use but I never use them. Our custom groups showing proper red dots.

All our cameras continuously record 24/7 with two exceptions. 1 camera records mainstream day + only substream at night w/ mainstream trigger. 2nd camera only records substream during day, no record at night. However if I select either of these two cams individually and review calendar both have red dots present everyday.
Perhaps with the issue narrowed down to "all cameras" group BI support would investigate.
Any ideas?
 
  • Like
Reactions: bp2008
Thanks. Since you're using a touch device, you may benefit from a recently added setting where you can change the minimum zoom scale of the timeline:

View attachment 168827

If you change this to "6" which is the lowest value I allowed in there, then you'll get very significantly more precision than at scale "7" which is the current default, or "8" which I believe was the default before I added thumbnails to the timeline.
This is very nice. Especially when used with the pause=1 URL Parameter.
Thanks!
 
Thanks.
Reviewed json request suggested. Both under 100ms. Local LAN 9.41ms + VPN 48.44ms. (Calendar for default "All cameras" group)
HOWEVER - Feel stupid now for not discovering by now that this issue is only happening on the default "All Cameras" group.
We have 4 custom groups for staff live view use but I never use them. Our custom groups showing proper red dots.

All our cameras continuously record 24/7 with two exceptions. 1 camera records mainstream day + only substream at night w/ mainstream trigger. 2nd camera only records substream during day, no record at night. However if I select either of these two cams individually and review calendar both have red dots present everyday.
Perhaps with the issue narrowed down to "all cameras" group BI support would investigate.
Any ideas?

Yes that should be helpful information to BI Support. If I was them, I might want to know if any individual camera has a problem delivering the red dots on the calendar. It could be that a single camera with a problem is causing the issue for all of them when queried together.
 
My search foo must suck, because I can't find a thing in the help files or online regarding the Picture-in-Picture feature in UI3. When i try it, i get the same picture in both frames. How do i set this up?
 
My search foo must suck, because I can't find a thing in the help files or online regarding the Picture-in-Picture feature in UI3. When i try it, i get the same picture in both frames. How do i set this up?
Select the camera group or camera you want to view. Then at the bottom right corner of the frame, hoover the mouse over all the icons there, and it will show you the button to click to open pip.
 
Last edited:
There's nothing to set up. The default configuration has the button enabled, and when you click the button the browser should show the video in a separate window. You may or may not also see the video in the main browser window depending on whether you are zoomed in or not.

There are some requirements to be able to see the picture-in-picture button. 1690830211189.png

  • The web browser and operating system must support picture-in-picture video playback.
  • The Picture-in-Picture button must be enabled in UI3's settings (it is by default).
  • The H.264 player must be "HTML5" in UI3's settings. The default is "Automatic" which internally maps to "HTML5" on most platforms.
 
  • Like
Reactions: actran
@bp2008 ... thanks, i totally misunderstood this. when I tried it, it the PiP overlay box came up on top of the browser showing UI3, so I thought it "was inside" that browser instance, if that makes sense?

Now I see you can actually drag it to anywhere on your screen. Handy and cool.

Thanks.
 
  • Like
Reactions: actran and bp2008
Having a latency issue that seems to only be with UI3 and not sure how to track it down...

Been using BI for probably 10 years or so, had some bugs with UI2/3 early on, but since about 3 years ago it has been near flawless for me. Around 6 months ago I started occasionally getting the yellow delay symbol in the top right and after a while it would reload the page and work for another hour or so before doing it again. Three months ago it got really bad and would do it nearly every minute. BI was on an older E5v2 CPU system running in VMware, figured it was due time to upgrade anyways so I'm now on 13th gen Intel on Proxmox with 10gbe. Ran great for the past three months and suddenly started doing it again this week. I'm really bad about staying on top of updates... so I ran all my updates and its still happening about once a minute, but I hadn't been in the server for at least two weeks before it suddenly started the delay issue again.

It seems to be a network bandwidth issue, as it will run without delay when set to 360p, but any higher and the issue returns. I tried going to UI3 from a VM on the same host with the same issue, but if I go to UI3 from the VM running BI it runs just fine, so basically anything leaving the VM has the issue. Now the confusing part is speed tests between VMs will pull near 10gbps, and between a physical PC and that VM will do 2.5gbe. Task manager shows ~20 mbps traffic when running normally and CPU sits around 10% so I don't think the host is anywhere near overwhelmed. Happens on any of my cameras, even the main page that shows them all which is set for substreams, although much less often on that main page than camera pages. I've played with a bunch of encoder settings in the advanced tab and it doesn't make a difference.

Best I can remember I have not made any firewall/network/Proxmox changes in the timeframe where it went from working to lagging, and nothing else on my network is having any issues. I killed my Home Assistant integration in case that was doing something, but I can't think of anything else on the network that would interact with BI. I've disabled the Windows Firewall breifly, checked my Unifi settings for any port conflicts, bandwidth restrictions, etc. just not sure what else to look at.

Thanks.
 
Having a latency issue that seems to only be with UI3 and not sure how to track it down...

Been using BI for probably 10 years or so, had some bugs with UI2/3 early on, but since about 3 years ago it has been near flawless for me. Around 6 months ago I started occasionally getting the yellow delay symbol in the top right and after a while it would reload the page and work for another hour or so before doing it again. Three months ago it got really bad and would do it nearly every minute. BI was on an older E5v2 CPU system running in VMware, figured it was due time to upgrade anyways so I'm now on 13th gen Intel on Proxmox with 10gbe. Ran great for the past three months and suddenly started doing it again this week. I'm really bad about staying on top of updates... so I ran all my updates and its still happening about once a minute, but I hadn't been in the server for at least two weeks before it suddenly started the delay issue again.

It seems to be a network bandwidth issue, as it will run without delay when set to 360p, but any higher and the issue returns. I tried going to UI3 from a VM on the same host with the same issue, but if I go to UI3 from the VM running BI it runs just fine, so basically anything leaving the VM has the issue. Now the confusing part is speed tests between VMs will pull near 10gbps, and between a physical PC and that VM will do 2.5gbe. Task manager shows ~20 mbps traffic when running normally and CPU sits around 10% so I don't think the host is anywhere near overwhelmed. Happens on any of my cameras, even the main page that shows them all which is set for substreams, although much less often on that main page than camera pages. I've played with a bunch of encoder settings in the advanced tab and it doesn't make a difference.

Best I can remember I have not made any firewall/network/Proxmox changes in the timeframe where it went from working to lagging, and nothing else on my network is having any issues. I killed my Home Assistant integration in case that was doing something, but I can't think of anything else on the network that would interact with BI. I've disabled the Windows Firewall breifly, checked my Unifi settings for any port conflicts, bandwidth restrictions, etc. just not sure what else to look at.

Thanks.

This could be tough to figure out. Clicking the orange clock icon should pop up a message explaining where the delay came from, but you can also learn by looking at the "Stats for nerds" panel.

Right click the video in UI3 and open the "Stats for nerds" panel. This will have graphs including Network Delay and Player Delay. If Network Delay grows, it means the video timestamps being fed into UI3 by Blue Iris are not increasing at the expected rate. That would typically be because the network can't handle the stream (usually wifi's fault), but in your case it sounds like your network is fine so I doubt this is the problem. It could also go up due to a major performance problem that is not strictly network related, or due to software bugs.

Player Delay really is just the amount of video that is currently buffered and not yet played and it will heavily correlate with the Delayed Frames graph just below it. If Player Delay grows, that means the device you're running UI3 on is unable to play the video as fast as it comes in.

Also have a look at the FPS meter in the status area of UI3, and see if that meets expectations. The FPS bar should ideally be full, all the way to the right, otherwise it indicates a slowdown of some kind is occurring. A loss of FPS doesn't necessarily mean a delay is happening. Usually it just means Blue Iris is unable to encode all the frames in realtime so it is dropping some in order to avoid letting a delay build up. It is sadly normal for the FPS to be lower than the source video due to Blue Iris transcoding the video in realtime to send it to UI3.

Another data point to look at is to see which H.264 player you're using. Open UI3's main menu > UI Settings > Video Player, and see what the current H.264 player is. On most systems it will be HTML5. Try changing it to another option. JavaScript is the only alternative on most systems, which is substantially more CPU intensive than the HTML5 player, but more reliable as it is much less dependent on the browser, OS, drivers, and video hardware all working properly.

Are you using the "Direct to wire" streaming feature? It can have compatibility problems. It could be helpful to screenshot your Streaming 0 configuration in Blue Iris Settings > Web Server > Advanced.
 
Last edited:
  • Like
Reactions: actran