Live View: Firefox vs. Chrome & some other random thoughts

8 views
Skip to first unread message

John Laurence Poole

unread,
Sep 5, 2021, 12:05:10 PM9/5/21
to moonfire-nvr-users
Here are some random findings I'm making:

In Gentoo Linux (Linux taurus 5.10.27-gentoo #6 SMP Mon May 10 20:44:46 PDT 2021 x86_64 Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz GenuineIntel GNU/Linux) I'm running Firefox (91.0.2 (64-bit)) and Chrome (Version 92.0.4515.159 (Official Build) (64-bit)). 

Using the main-plus-five view, I'm finding that in Firefox, if I let the tab alone for hours, i.e., overnight I come to a locked screen that evidences timeouts with these two error messages: 1) ws close 1006, and 2) QuotaExceedingError while appending buffer
image.png
Chrome, on the other hand just has frozen scenes.  What differs about the two is that in Firefox, I need to either perform a refresh of the browser page and navigate to the five-plus-one and reselect the feeds, or sometimes I can select "none" and then select the feed I want and the feed will restore.  Chrome looks like it just resumes once I have the tab in focus.

The above is when running moonfire-nvr without interruption on my Raspberry Pi.

If there is something helpful I could capture, either Javascript logs or server logs during the event of revisiting a page and/or resuming it, please let me know.  I've looked at the console in the browsers and there doesn't seem to be much debugging status output to be of any help... but, who am I to judge?

Also, I had been running moonfire-nvr with the "udp" flag and found that when I go to see the inventory of videos, there are a lot of entries with missing gaps of several minutes, sometimes an hour or more.  I switched back to no "udp" and the entries on the "List View" of "Live View" appear to be more complete.  Lastly, I think I switched back to ffmpeg instead of retina.  I'm sorry, I have not been diligent and logging each change and keeping notes, but I wanted to share my general impression.  I realize that even though I may have a nice list view of recording with substantial sizes, in 1 hour increments, that there are probably many gaps lurking therein that will not become apparent unless I view the video.

I'm now trying to determine how best to assess my network and switches.  I have a pretty complicated network that includes a wireless link and several Power over Etherent injectors.  Scott had remarked that my network appears dodgey, so that has me focused on trying to assess it and determine where there may be weak points.  To that end, that means identifying each piece of equipment and determining its capacity and then calculating the throughput at each node.  I had read that often the problem is network capacity and that stated values often far exceed actual capacity.  I also learned that longer cables cause voltage drops which, I'm guessing, may impact a switch's performance.  Lastly, I have replaced the capacitors in the power unit of my switches one or more times, perhaps there are other capacitors in the logic circuit that are approaching end-of-line and that resurrecting the power units does not necessarily guarantee a fully performant switch.

Running several cameras on a private network has a lot of moving parts and I can see why professions and careers are made specializing in this area.  My hope has been that a camera + POE + raspberry Pi + extra storage could be bundled so a less-than-competent user might have a working system.  I also hope that there might be some what, some day, to multiplex several neighbor's cameras into a neighborhood on-demand video page such as Live View so we could have a neighborhood watch with say 5-10 participants.  We have a lot of small crime in our neighborhood (adjacent to the Oregon state capitol), just having the cameras up has helped.

Scott Lamb

unread,
Sep 7, 2021, 6:09:01 PM9/7/21
to John Laurence Poole, moonfire-nvr-users
On Sun, Sep 5, 2021 at 9:05 AM John Laurence Poole <jlpo...@gmail.com> wrote:
Here are some random findings I'm making:

In Gentoo Linux (Linux taurus 5.10.27-gentoo #6 SMP Mon May 10 20:44:46 PDT 2021 x86_64 Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz GenuineIntel GNU/Linux) I'm running Firefox (91.0.2 (64-bit)) and Chrome (Version 92.0.4515.159 (Official Build) (64-bit)). 

Using the main-plus-five view, I'm finding that in Firefox, if I let the tab alone for hours, i.e., overnight I come to a locked screen that evidences timeouts with these two error messages: 1) ws close 1006, and 2) QuotaExceedingError while appending buffer
image.png
Chrome, on the other hand just has frozen scenes.  What differs about the two is that in Firefox, I need to either perform a refresh of the browser page and navigate to the five-plus-one and reselect the feeds, or sometimes I can select "none" and then select the feed I want and the feed will restore.  Chrome looks like it just resumes once I have the tab in focus.

The above is when running moonfire-nvr without interruption on my Raspberry Pi.

If there is something helpful I could capture, either Javascript logs or server logs during the event of revisiting a page and/or resuming it, please let me know.  I've looked at the console in the browsers and there doesn't seem to be much debugging status output to be of any help... but, who am I to judge?

iirc, you're right: there's not much debug info yet. I should have a checkbox somewhere that increases the amount logged to console (like every DOM event + periodic state updates) and visually overlays each camera with how far it's behind live.

Making live view work better is on my todo list! That is, if clydebarrow doesn't totally obsolete my UI before I do (see #162).
 

Also, I had been running moonfire-nvr with the "udp" flag and found that when I go to see the inventory of videos, there are a lot of entries with missing gaps of several minutes, sometimes an hour or more.  I switched back to no "udp" and the entries on the "List View" of "Live View" appear to be more complete.  Lastly, I think I switched back to ffmpeg instead of retina.  I'm sorry, I have not been diligent and logging each change and keeping notes, but I wanted to share my general impression.  I realize that even though I may have a nice list view of recording with substantial sizes, in 1 hour increments, that there are probably many gaps lurking therein that will not become apparent unless I view the video.

Hmm, that's interesting. I was hoping that udp mode would help significantly with the Reolink cameras but it seems like that hasn't been your experience so far.

One thing I just noticed is that I'm not tearing down the UDP sessions on error in Moonfire. So for up to 65 seconds after any error, there's likely redundant traffic from the cameras to the NVR which may be worsening any network problems you're having. That's something I can and will fix.

Are you seeing log entries corresponding to the gaps?
 
I'm now trying to determine how best to assess my network and switches.  I have a pretty complicated network that includes a wireless link and several Power over Etherent injectors.  Scott had remarked that my network appears dodgey, so that has me focused on trying to assess it and determine where there may be weak points.  To that end, that means identifying each piece of equipment and determining its capacity and then calculating the throughput at each node.  I had read that often the problem is network capacity and that stated values often far exceed actual capacity.  I also learned that longer cables cause voltage drops which, I'm guessing, may impact a switch's performance.  Lastly, I have replaced the capacitors in the power unit of my switches one or more times, perhaps there are other capacitors in the logic circuit that are approaching end-of-line and that resurrecting the power units does not necessarily guarantee a fully performant switch.

I don't have much advice here, except:
  • fully wire it if at all possible. I have a "studio" (shed converted into an office) out back. Video chats for work meetings frequently dropped out with high packet loss, which was quite frustrating mid-pandemic. I had a Ubiquiti access point in the closest window in the main house and another in the shed window with clear line-of-sight 15 feet away. Seems like as optimal a setup as you could ever expect, but still the wireless connection between them wouldn't work well. Maybe an actual network engineer could have figured out why but it was beyond me. Finally, I ordered some burial-grade cat6 and literally got my hands dirty digging a trench. No problems now!

  • try measuring packet loss between nodes via smokeping or the like. If packet loss gets too high, nothing else will work well, including Moonfire. 
Running several cameras on a private network has a lot of moving parts and I can see why professions and careers are made specializing in this area.  My hope has been that a camera + POE + raspberry Pi + extra storage could be bundled so a less-than-competent user might have a working system.  I also hope that there might be some what, some day, to multiplex several neighbor's cameras into a neighborhood on-demand video page such as Live View so we could have a neighborhood watch with say 5-10 participants.  We have a lot of small crime in our neighborhood (adjacent to the Oregon state capitol), just having the cameras up has helped.

I'd love Moonfire NVR to get to that level of ease. I'm working on slowly getting to "a knowledgeable hobbyist can create a rock-solid setup for a single home", and we'll see how much further we can get beyond that. I did talk to another person who was interested in using it with the kind of distributed setup you're describing—in his case, to have one UI to cover several family businesses.
 
--
You received this message because you are subscribed to the Google Groups "moonfire-nvr-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moonfire-nvr-us...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moonfire-nvr-users/CAB74VbL-Po1JzksFBPuYT%3DrBkfQac8pPFwbctFNJqgM1uVRydw%40mail.gmail.com.


--

Scott Lamb

unread,
Sep 10, 2021, 1:31:33 AM9/10/21
to John Laurence Poole, moonfire-nvr-users
On Tue, Sep 7, 2021 at 3:08 PM Scott Lamb <sl...@slamb.org> wrote:


On Sun, Sep 5, 2021 at 9:05 AM John Laurence Poole <jlpo...@gmail.com> wrote:
Here are some random findings I'm making:

In Gentoo Linux (Linux taurus 5.10.27-gentoo #6 SMP Mon May 10 20:44:46 PDT 2021 x86_64 Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz GenuineIntel GNU/Linux) I'm running Firefox (91.0.2 (64-bit)) and Chrome (Version 92.0.4515.159 (Official Build) (64-bit)). 

Using the main-plus-five view, I'm finding that in Firefox, if I let the tab alone for hours, i.e., overnight I come to a locked screen that evidences timeouts with these two error messages: 1) ws close 1006, and 2) QuotaExceedingError while appending buffer
image.png
Chrome, on the other hand just has frozen scenes.  What differs about the two is that in Firefox, I need to either perform a refresh of the browser page and navigate to the five-plus-one and reselect the feeds, or sometimes I can select "none" and then select the feed I want and the feed will restore.  Chrome looks like it just resumes once I have the tab in focus.

The above is when running moonfire-nvr without interruption on my Raspberry Pi.

If there is something helpful I could capture, either Javascript logs or server logs during the event of revisiting a page and/or resuming it, please let me know.  I've looked at the console in the browsers and there doesn't seem to be much debugging status output to be of any help... but, who am I to judge?

iirc, you're right: there's not much debug info yet. I should have a checkbox somewhere that increases the amount logged to console (like every DOM event + periodic state updates) and visually overlays each camera with how far it's behind live.

Making live view work better is on my todo list! That is, if clydebarrow doesn't totally obsolete my UI before I do (see #162).
 

Also, I had been running moonfire-nvr with the "udp" flag and found that when I go to see the inventory of videos, there are a lot of entries with missing gaps of several minutes, sometimes an hour or more.  I switched back to no "udp" and the entries on the "List View" of "Live View" appear to be more complete.  Lastly, I think I switched back to ffmpeg instead of retina.  I'm sorry, I have not been diligent and logging each change and keeping notes, but I wanted to share my general impression.  I realize that even though I may have a nice list view of recording with substantial sizes, in 1 hour increments, that there are probably many gaps lurking therein that will not become apparent unless I view the video.

Hmm, that's interesting. I was hoping that udp mode would help significantly with the Reolink cameras but it seems like that hasn't been your experience so far.

One thing I just noticed is that I'm not tearing down the UDP sessions on error in Moonfire. So for up to 65 seconds after any error, there's likely redundant traffic from the cameras to the NVR which may be worsening any network problems you're having. That's something I can and will fix.

This should be fixed at head. I'd expect both UDP and TCP to work better with Reolink cameras now. Moonfire will either tear down sessions or wait until they expire before starting more sessions.
 

Are you seeing log entries corresponding to the gaps?
 
I'm now trying to determine how best to assess my network and switches.  I have a pretty complicated network that includes a wireless link and several Power over Etherent injectors.  Scott had remarked that my network appears dodgey, so that has me focused on trying to assess it and determine where there may be weak points.  To that end, that means identifying each piece of equipment and determining its capacity and then calculating the throughput at each node.  I had read that often the problem is network capacity and that stated values often far exceed actual capacity.  I also learned that longer cables cause voltage drops which, I'm guessing, may impact a switch's performance.  Lastly, I have replaced the capacitors in the power unit of my switches one or more times, perhaps there are other capacitors in the logic circuit that are approaching end-of-line and that resurrecting the power units does not necessarily guarantee a fully performant switch.

I don't have much advice here, except:
  • fully wire it if at all possible. I have a "studio" (shed converted into an office) out back. Video chats for work meetings frequently dropped out with high packet loss, which was quite frustrating mid-pandemic. I had a Ubiquiti access point in the closest window in the main house and another in the shed window with clear line-of-sight 15 feet away. Seems like as optimal a setup as you could ever expect, but still the wireless connection between them wouldn't work well. Maybe an actual network engineer could have figured out why but it was beyond me. Finally, I ordered some burial-grade cat6 and literally got my hands dirty digging a trench. No problems now!

  • try measuring packet loss between nodes via smokeping or the like. If packet loss gets too high, nothing else will work well, including Moonfire. 
Running several cameras on a private network has a lot of moving parts and I can see why professions and careers are made specializing in this area.  My hope has been that a camera + POE + raspberry Pi + extra storage could be bundled so a less-than-competent user might have a working system.  I also hope that there might be some what, some day, to multiplex several neighbor's cameras into a neighborhood on-demand video page such as Live View so we could have a neighborhood watch with say 5-10 participants.  We have a lot of small crime in our neighborhood (adjacent to the Oregon state capitol), just having the cameras up has helped.

I'd love Moonfire NVR to get to that level of ease. I'm working on slowly getting to "a knowledgeable hobbyist can create a rock-solid setup for a single home", and we'll see how much further we can get beyond that. I did talk to another person who was interested in using it with the kind of distributed setup you're describing—in his case, to have one UI to cover several family businesses.
 

--
You received this message because you are subscribed to the Google Groups "moonfire-nvr-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moonfire-nvr-us...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moonfire-nvr-users/CAB74VbL-Po1JzksFBPuYT%3DrBkfQac8pPFwbctFNJqgM1uVRydw%40mail.gmail.com.


--
Reply all
Reply to author
Forward
0 new messages