I made a better remote-live-view page [OLD]

Do you have any suggestions for encoder settings aside from raising the bitrate limit?

I encourage using the Limit bitrate option in all cases, because I've seen decoders crash when you don't set this but you do set a very high quality %.

For my Streaming 0 profile, I use the Limit bitrate option, with a value of 4096, and Quality of 90 or 100% to ensure it actually encodes at or near my specified bit rate instead of something lower. Note that higher bit rates require more CPU time to decode, and maybe more to encode too, so on a CPU-limited system reducing the bit rate can be a good way to make the stream work better.

I personally use a long keyframe interval because I have yet to see any benefit whatsoever to having a short interval. Keyframes seem to reduce quality temporarily so you don't want them often. In fact you could probably get away with having no keyframes at all after the first one, because stream seeking is always done serverside, not clientside. My keyframe interval setting is 300 and I've thought about raising that to 99999 or something.

Max B-frames option should be 0 for UI2 I think, although I am not certain this option actually has any effect.

Preset must be "ultrafast" for UI2. Other presets look better (and cost more CPU time), but UI2 is not compatible with any other unless I change it to use a different video decoder.

HLS (sec) affects HLS streams only and you can pretty much ignore this. It specifies the length of the video chunks that are sent when using the HLS streaming method (which has so much startup delay and video lag that I don't think many people use it).

I use the Zero frame latency option, though I don't really perceive a difference between having it enabled or not.

Resize output frame is currently broken as far as I can tell. It is one of the things I've notified Ken about.

Retain aspect ratio within frame is a matter of preference. Some people like stretching their videos to fill the screen. I can't stand doing that so I would never consider unchecking it.

Also would it be possible to implement limits on the client-side instead of the server? This would let me have different settings on my PC on the LAN vs my laptop on the WAN.

It is not possible. It is something I want and have asked Ken (the Blue Iris developer) for, but I don't expect to get it. Without that, we still have 3 server-configurable streaming profiles that Blue Iris uses in the mobile apps and default.htm page. UI2 is locked to "Streaming 0" but the next web UI will be able to choose between them. I'm hoping to do an open beta test of that UI next month if Ken can be motivated to make the last necessary changes for me to finish the UI.
 
I thought I saw a post a while back about Ken using your code in a future version of the official web client. Did I remember that correctly? This is a loooonnnnggg thread to re-read haha.

Thanks for getting back to me. I'm much happier with the H.264 streaming now that I've tweaked the settings for better quality. The JPEG pull was always very choppy.
 
I thought I saw a post a while back about Ken using your code in a future version of the official web client. Did I remember that correctly?

Sort of. Ken isn't building it. In fact Ken hasn't shown any interest in taking an active role in its creation.

Starting from the beginning I guess, I approached Ken last year about the matter of a better official web client. He was open to making UI2 official, but I didn't think that was the best idea. UI2 is the disorganized result of years of feature-creep, and there are a lot of things I wanted to do differently for a web client that everyone would be using.

So I offered to make a new interface using the visual design that @ruppmeister mocked up (here is the first mention of it). ruppmeister and I started building the new UI around July 2016, then ruppmeister dropped off the map 3 months later and I haven't heard from him since :( . But I kept on going and the UI is nearly finished now. I'm just waiting on a few more things from Ken (which could be tomorrow, next week, next month, or next year, with about equal likelihood).

This is a loooonnnnggg thread to re-read haha.

I certainly don't expect anyone to try :)
 
  • Like
Reactions: joey52685
Sort of. Ken isn't building it. In fact Ken hasn't shown any interest in taking an active role in its creation.

Starting from the beginning I guess, I approached Ken last year about the matter of a better official web client. He was open to making UI2 official, but I didn't think that was the best idea. UI2 is the disorganized result of years of feature-creep, and there are a lot of things I wanted to do differently for a web client that everyone would be using.

So I offered to make a new interface using the visual design that @ruppmeister mocked up (here is the first mention of it). ruppmeister and I started building the new UI around July 2016, then ruppmeister dropped off the map 3 months later and I haven't heard from him since :( . But I kept on going and the UI is nearly finished now. I'm just waiting on a few more things from Ken (which could be tomorrow, next week, next month, or next year, with about equal likelihood).



I certainly don't expect anyone to try :)


Interesting. I hope this happens some day soon. But for now I'm happy with UI2. The mockup from @ruppmeister looks much simpler and cleaner, I could see how the interface and options in UI2 could be a little overwhelming. But BlueIris in general has a bit of a learning curve so I'm not sure it's a problem for most users.
 
I've had issues with the streams on the UI2 page simply freezing, as well as the FPS counter. But it seems to happen randomly and only after a couple days. Any ideas?
 
I've had issues with the streams on the UI2 page simply freezing, as well as the FPS counter. But it seems to happen randomly and only after a couple days. Any ideas?

Jpeg streaming has recovery logic so I'm guessing you were streaming H.264?

Does the stream start again if you try to change cameras or is the whole UI unresponsive at this point?
 
Please take a look at my thread here:

Can't Switch Cameras on the UI2 page

I can's seem to switch between cameras. The dropdown menu for cameras only shows "All Cameras", but it only shows one camera in the viewer.

I can see the clips to all the cameras, but not their live views, except one.
 

Attachments

  • 2017-10-19 08_17_56-UI2 - Blue Iris.png
    2017-10-19 08_17_56-UI2 - Blue Iris.png
    107.9 KB · Views: 326
  • Like
Reactions: bp2008
Hey i have just migrated over to your ui which is much better than the included solution.
I was wondering if there is the ability to login to the web server while introducing the ip address in the browser? trying similar to http://username:pswd@localhost/ui2.htm doesn't work and i essentially get booted to the login screen or break it and have to restart the server service.

Also; I was wondering what you are pushing to the server in order to change the profile? i have had a look and when clicking between 1 and 2 these change between "inlineblock profilebtn" & "inlineblock profilebtn selected"

<div class="inlineblock profilebtn" profilenum="1" title="Active" draggable="false" unselectable="on">1</div>
<div class="inlineblock profilebtn selected" profilenum="2" title="Home" draggable="false" unselectable="on">2</div>

Reason i ask is that i wish to force push to the webserver a profile change. Geofencing really is not working for me with android... I wish to push via the webserver from my mobile the command to change the profile to whatever profile i want. Then i can set it up via the tasker app to do this when i connect to the home wifi.

Great work, cheers.
 
UI2 changes profiles using the JSON interface which is documented in the Blue Iris help file. However there is a simpler method described under "The Web Server" tab.

/admin?output=x&msec=y or &force=true
Temporarily change the active profile to x. Use x=-1 to toggle the lock status.
 
Accessing UI2.htm on a BI server install in a different timezone, the camera clip/alert timestamps are all in MY local time. The cameras all have the remote local time in their video, so this is kind of confusing. I couldn't find any BI 'web server' or UI2.htm configurables to control this. The stock jpegpull.htm UI does the same thing, so perhaps not UI2's fault, but maybe something you can twiddle? thanx.
 
Why doesn't BI provide the server's TZ? That seems like an oversight.

Maybe you could add a timezone parameter to each server instance in your GUI?
+/-N hours from UTC (not my local time,) so it displays BI server local time no matter where I am.
Of course, it would have to be optional, and possibly deal with DST changes, yada-yada...

I can't be the only one who monitors/manages BI instances in other timezones.
 
understood. and done. support email sent inquiring about remote server timezone in web ui. will post back if i hear anything useful. thanx.
 
understood. and done. support email sent inquiring about remote server timezone in web ui. will post back if i hear anything useful. thanx.

Ok, now I feel really silly. I just found the time zone offset in minutes at the end of the "status" responses (didn't expect it to be there since "status" is something that gets requested very frequently and the time zone is not exactly something that changes frequently!!). So we shouldn't need Blue Iris to do anything to support this.

I'll see what I can do with it.
 
ha. Ken said the apps (droid & ios) do support this, so I did a pcap and see what he was referring to in the json response from the server. it tells the app it's current timezone in seconds from UTC (in my case -420). i was just about to post that info, but i guess you saw it too... :)

i think an on/off switch to observe the server time (new behavior) or local client time (default/old) like the apps have would make the most sense...
 
Last edited: