Lots of good stuff in there Mike! I'll address my situation here.
I have 4 cameras, all the same, HikVision ds-2cd3332-i running at 20 FPS and 4000 kbps, POE so all 4 wired. Pretty simple.
I don't use object detection and have cancel shadows turned off just to eliminate those functions from adding any variables to the mix. Just using 1 large motion zone, no hotspots.
If I log into the web interface of my cameras and look at the live view, it's literally as smooth as looking out the window. No lag, nothing.
When mine start to lag, it almost seems like when the object is small (such as a car), everything is fine. As it approaches and gets bigger, the slight lagging starts. I do have "highlight motion" enabled on all of my cameras, so maybe its the act of highlighting that's causing it to lag a bit. I have to experiment a little more with it during daylight hours.
Ken did reply to me and wanted me to turn off the "Use the streams RTSP time" or however it's worded. I have done that on all cameras as of last night and so far things look good. Been spot checking the alerts that have been captured during the day and they seem good so far.
Really, what I have to do is use the web interface to capture video during movement, and then compare that capture to the alert that BI generates to see the difference. I would expect them to both look smooth.
I believe you are correct about how the compression works. I think that's the iframe parameter of the camera that controls full vs partial frames. I have mine set to 20 to match the FPS.