Blue Iris UI3

TheWaterbug

Getting comfortable
Joined
Oct 20, 2017
Messages
772
Reaction score
1,673
Location
Palos Verdes
My assumption is they (Apple) changed their Media Source Extensions (MSE) implementation such that it no longer accepts mp4 fragments that do not begin with a keyframe. Such a change would go largely unnoticed because the overwhelming majority of MSE usage is for VOD where all the video is already prepackaged in chunks that always begin with a keyframe. Low latency live streaming (such as what Blue Iris's web server does in ALL video streaming cases, even playing recordings) cannot function with such a requirement. The efficiency, the video delay, and the responsiveness would suffer enormously.
More noodling about this. What does a renderer do if it has mp4 fragments that don't start with a keyframe? How does it render anything?
 

DSteiNeuro

n3wb
Joined
Mar 14, 2016
Messages
23
Reaction score
3
@biggen @jaydeel @Serodgers @DSteiNeuro

Could it be a software bug? Like, is it ignoring the first N clicks of the fullscreen button?
Hard to tell. It seems to work intermittently, sometimes after a bunch of clicks sometimes not.
I have tried different combinations of presses without much luck. Works fine with mouse clicks on Windows PC.

I would actually prefer another option to load full screen on the touchpads because even with padding the icon is small and my fingers fat.
 

jaydeel

BIT Beta Team
Joined
Nov 9, 2016
Messages
1,137
Reaction score
1,243
Location
SF Bay Area
@biggen @jaydeel @Serodgers @DSteiNeuro

Could it be a software bug? Like, is it ignoring the first N clicks of the fullscreen button?
Not that I can discern.
I've pulled up the Safari web inspector for UI3 on the iPad (you must connect the iPad to a Mac to do this), and see no errors reported in the console while attempting to click the full-screen icon.
 

Mike A.

Known around here
Joined
May 6, 2017
Messages
3,835
Reaction score
6,406
Works reliably on a Fire tablet that I have.

With Safari on my iPhone I get the intermittent operation. Same with Edge on iPhone.
 

PatPend

Pulling my weight
Joined
Jul 10, 2016
Messages
158
Reaction score
193
Not sure when this started happening, but UI3 is automatically switching cameras on me. Mostly switchover from one camera to another that has motion detected but also from one camera to all camera view. There's nothing in UI3 settings that seems related to this behavior and I don't remember changing anything in the BI console that would cause this. Is there a way to prevent this from happening?
 

looney2ns

IPCT Contributor
Joined
Sep 25, 2016
Messages
15,635
Reaction score
22,895
Location
Evansville, In. USA
Not sure when this started happening, but UI3 is automatically switching cameras on me. Mostly switchover from one camera to another that has motion detected but also from one camera to all camera view. There's nothing in UI3 settings that seems related to this behavior and I don't remember changing anything in the BI console that would cause this. Is there a way to prevent this from happening?
Turn off "Auto Maximize".
Bottom right corner of the screen, click the icon that is the 4th one from the right.
 

bp2008

Staff member
Joined
Mar 10, 2014
Messages
12,678
Reaction score
14,034
Location
USA
More noodling about this. What does a renderer do if it has mp4 fragments that don't start with a keyframe? How does it render anything?
It is supposed to get the keyframe from a previous mp4 fragment and keep using that keyframe until a new keyframe arrives.

The problem is, most of Video On Demand streaming online uses MP4 fragments that are a few seconds long and always begin with a keyframe. So that is apparently all that Apple bothered to test with.

UI3 creates an MP4 fragment from every single video frame so that frames can be submitted to the video player without building up a buffer of multiple frames. So most of the MP4 fragments don't contain a keyframe. The first MP4 fragment always does, and for all the other browsers, that is good enough.

I don't know. I tried it both in Safari and Chome on my iPad and I couldn't get the full screen to recognize me hitting the button in either browser
All browsers on iOS internally use the same browser engine. Apple won't allow it any other way.

Not sure when this started happening, but UI3 is automatically switching cameras on me. Mostly switchover from one camera to another that has motion detected but also from one camera to all camera view. There's nothing in UI3 settings that seems related to this behavior and I don't remember changing anything in the BI console that would cause this. Is there a way to prevent this from happening?
Look for this button in the playback controls area.
1682885085167.png
A long press activates it, and that is what you've done by accident.
 

TheWaterbug

Getting comfortable
Joined
Oct 20, 2017
Messages
772
Reaction score
1,673
Location
Palos Verdes
It is supposed to get the keyframe from a previous mp4 fragment and keep using that keyframe until a new keyframe arrives.

The problem is, most of Video On Demand streaming online uses MP4 fragments that are a few seconds long and always begin with a keyframe. So that is apparently all that Apple bothered to test with.

UI3 creates an MP4 fragment from every single video frame so that frames can be submitted to the video player without building up a buffer of multiple frames. So most of the MP4 fragments don't contain a keyframe. The first MP4 fragment always does, and for all the other browsers, that is good enough.
Ah, if I'm understanding this correctly, you try to keep a keyframe around all the time, even if it's stale, because any keyframe is better than no keyframe, and for footage from a fixed position, like most security cameras, even a stale keyframe is likely to be pretty useful.

Is that more or less correct?
 

bp2008

Staff member
Joined
Mar 10, 2014
Messages
12,678
Reaction score
14,034
Location
USA
Ah, if I'm understanding this correctly, you try to keep a keyframe around all the time, even if it's stale, because any keyframe is better than no keyframe, and for footage from a fixed position, like most security cameras, even a stale keyframe is likely to be pretty useful.

Is that more or less correct?
Eh, kind of.

A keyframe (a.k.a. I-frame) is necessary to start playing a video, because it contains all the information needed to display itself. The other frame types (P-frames mainly) include references to other frames from the video stream, so they cannot be represented by themselves. The frames being referenced don't need to be I-frames.

The problem seems to be that Apple's decoder implementation is assuming that every mp4 fragment fed into it will be playable as a standalone video, when no such requirement is supposed to exist.
 

International784

Getting the hang of it
Joined
Apr 7, 2023
Messages
247
Reaction score
86
Location
USA
Good evening,

I’m having an issue in UI3. The PTZ and triggers are grayed out and “not available for current camera”. I can use these functions in local DMSS and on the Blue Iris app. I really want UI3 to be my one and only tool for viewing. Here’s some screenshots of what I’ve got in the camera, BI and UI3. Thank you for any suggestions!
 

Attachments

Last edited:

Ri22o

Known around here
Joined
Jul 30, 2020
Messages
1,442
Reaction score
2,900
Location
Indiana
Good evening,

I’m having an issue in UI3. The PTZ and triggers are grayed out and “not available for current camera”. I can use these functions in local DMSS and on the Blue Iris app. I really want UI3 to be my one and only tool for viewing. Here’s some screenshots of what I’ve got in the camera, BI and UI3. Thank you for any suggestions!
Which model? You may need to change your PTZ Control page from ONVIF to something else depending on which camera you are using.
 

International784

Getting the hang of it
Joined
Apr 7, 2023
Messages
247
Reaction score
86
Location
USA
SD5A425GA-HNR I wondered about that. I just used whatever BI recommended in find/inspect. I was hesitant to touch it because two other apps let me use the ptz/preset function.
 
Top