Check FPS and key rates/Bottleneck warning

Michael James

Getting the hang of it
Dec 20, 2016
277
41
All,

Most of my cameras, I am getting this warning: Check FPS and Key Rates. I am also getting "Bottleneck" warning.
On the Amcrest cameras (ASH43), under Video, I only have these choices. (There is no web interface):

Resolution: 2K (2560*1440), 1080p, 1.3M or 720p: I have it set for 2K
Frame Rate: 1-25: I have set at 15
Bit rate: 1792, 2048 or 4096. I have set at 2048

If I pick 1080p, I can get these choices:
Frame rate 1-25
Bit rate: 384, 448, 512, 640, 768, 896, 1024, 1280, 1536, 1792, 2048.

I have no idea what the settings should be here. I will say that 2 of these cameras are the farthest away from the router. I am getting signal drops too.
Thru Blue iris, its reporting below (camera highlighted):

Screenshot 2025-09-04 202316.png

Screenshot 2025-09-04 201922.png
 
Other than upping the receive buffer in BI on the screen above to 40, there isn't anything else in BI that will adjust it.

It is all in the camera GUI.

Match FPS and iframes.

Do not use H265 or any smart codec.

You mention these are the furthest away from the router, so I suspect they are wifi cams? If so that is the problem.

Cameras connected to Wifi routers (whether wifi or not) are problematic for surveillance cameras because they are always streaming and passing data. And the data demands go up with motion and then you lose signal. A lost packet and it has to resend. It can bring the whole network down if trying to send cameras through a wifi router. At the very least it can slow down your entire system.

Unlike Netflix and other streaming services that buffer a movie, these cameras do not buffer up part of the video, so drop outs are frequent, especially once you start adding distance. You would be amazed how much streaming services buffer - don't believe me, start watching something and unplug your router and watch how much longer you can watch NetFlix before it freezes - mine goes 45 seconds. Now do the same with a camera connected to a router and it is fairly instantaneous (within the latency of the stream itself)...

So what you are seeing are lost packets from the router and BI is picking up on that by not receiving the full FPS.

And in some instances, it can also be a power issue for the cameras, but I don't think that is your issue based on what you posted.
 
Other than upping the receive buffer in BI on the screen above to 40, there isn't anything else in BI that will adjust it.

It is all in the camera GUI.

Match FPS and iframes.

Do not use H265 or any smart codec.

You mention these are the furthest away from the router, so I suspect they are wifi cams? If so that is the problem.

Cameras connected to Wifi routers (whether wifi or not) are problematic for surveillance cameras because they are always streaming and passing data. And the data demands go up with motion and then you lose signal. A lost packet and it has to resend. It can bring the whole network down if trying to send cameras through a wifi router. At the very least it can slow down your entire system.

Unlike Netflix and other streaming services that buffer a movie, these cameras do not buffer up part of the video, so drop outs are frequent, especially once you start adding distance. You would be amazed how much streaming services buffer - don't believe me, start watching something and unplug your router and watch how much longer you can watch NetFlix before it freezes - mine goes 45 seconds. Now do the same with a camera connected to a router and it is fairly instantaneous (within the latency of the stream itself)...

So what you are seeing are lost packets from the router and BI is picking up on that by not receiving the full FPS.

And in some instances, it can also be a power issue for the cameras, but I don't think that is your issue based on what you posted.
So I was actually able to get access to a lot more controls through the Amcrest Surveillance Pro.
Is "I Interval" below the same iFrames?
Do all the setting below look correct? (Resolution, Bitstream, I Interval)
In BI, I changed the buffer to 40. I have Max rate to 15 fps.
I'm still getting the "Check FPS and Key rates"




1757075023883.png
 
Im sure this has been discussed numerous times. Why should we not use H265 and only H264?
I remember i changed a while ago CPU improved and i do use a GPU as well.

Lately my playback has been a complete mess and buffers, crashes my UI3.
 
So I was actually able to get access to a lot more controls through the Amcrest Surveillance Pro.
Is "I Interval" below the same iFrames?
Do all the setting below look correct? (Resolution, Bitstream, I Interval)
In BI, I changed the buffer to 40. I have Max rate to 15 fps.
I'm still getting the "Check FPS and Key rates"




View attachment 227493

Yes the I interval is the same as iframes.

As I mentioned, if your camera feed has to go thru a router to get to BI, then it can be problematic whether the camera is wifi or hard-wired.

Routers are just not designed for the non-buffered video stream.

BI picks up on these issues and gives that warning. You need to eliminate wifi cams and/or get the camera feed off the router to eliminate those problems.

The other thing we have seen that causes this issue is a failing POE port, but I think your cams are wifi, so wifi is the cause.

And of course there are some cameras that will alter FPS and iframes regardless of what the user sets as it plays with them to minimize bandwidth.
 
  • Like
Reactions: Michael James
Im sure this has been discussed numerous times. Why should we not use H265 and only H264?
I remember i changed a while ago CPU improved and i do use a GPU as well.

Lately my playback has been a complete mess and buffers, crashes my UI3.
The TL : DR version is H265 is not a consistent codec standard and every manufacturer does it different, which can be problematic with some VMS systems. H264 tends to be the consistent codec. Plus H265 uses more camera processor resources, which can then be problematic with other options on the camera. UI3 uses H264, so if you are using H265 then it has to be re-processed which can cause issues.

In UI3, under UI Settings, go to Video Player and change to JavaScript and see if that fixes your crashing.


Now for the long version:

SmartCodec (+ variants) can create lots of problems with playback / search - many have seen it jumps and skips over time, plus it is proprietary to the manufacturer and can be problematic with other VMS systems.

Most of us have found H265 in these cameras suck.

H265 in theory provides more storage as it compresses differently, but part of that compression means it "macro blocks" (technically coding tree units) big areas of the image that it thinks isn't moving. That can be problematic for digital zooming with H265.

However, it also takes more processing power of the already small CPU in the camera and that can be problematic if someone is maxing out the camera in other areas like FPS and then it stutters.

Further some cameras can handle H265 better than others, even if the camera "claims" to support it, it may actually do a very poor job with it.

In theory it is supposed to need 30% less storage than H264, but most of us have found it isn't that much. My savings were less than few minutes per day. And to my eye and others that I showed clips to and just said do you like video 1 or video 2 better, everyone thought the H264 provided a better image.

The left image is H264, so all the blocks are the same size corresponding to the resolution of the camera. H265 takes areas that it doesn't think has motion and makes them into bigger blocks and in doing so lessens the resolution in those larger blocks yet increases the camera CPU demand to develop these larger blocks. For some cameras that then becomes problematic to do other functions as the little processor is now maxed out.

1667974399793.png



In theory H265 is supposed to need half the bitrate because of the macroblocking. But if there is a lot of motion in the image, then it becomes a pixelated mess. The only way to get around that is a higher bitrate. But if you need to run the same bitrate for H265 as you do H264, then the storage savings is essentially zero.

In my testing I have one camera that sees a parked car in front of my house. H265 sees that the car isn't moving, so it macroblocks the whole car and surrounding area. Then the car owner walked up to the car and got in and the motion is missed because of the macroblock being so large. Or if it catches it, because the bitrate is low, it is a pixelated mess during the critical capture point and by the time H265 adjusts to there is now motion, the ideal capture is missed.

In my case, the car is clear and defined in H264, but is blurry and soft edges in H265.

Digital zooming is never really good and not something we recommend, but you stand a better chance of some digital zoom with H264 rather than a large macroblocked H265. I can digital zoom on my overview camera and kinda make out the address number of the house across the street with H264, but not a chance with H265 as it macroblocked his whole house.

H265 is one of those theory things that sounds good, but reality use is much different.

Some people have a field of view or goals that allow H265 to be sufficient for their needs.

Third party VMS systems do better with H264. That is the tried and true standard. H264H is ok as well.

As always, YMMV.
 
Last edited:
The TL : DR version is H265 is not a consistent codec standard and every manufacturer does it different, which can be problematic with some VMS systems. H264 tends to be the consistent codec. Plus H265 uses more camera processor resources, which can then be problematic with other options on the camera. UI3 uses H264, so if you are using H265 then it has to be re-processed which can cause issues.

In UI3, under UI Settings, go to Video Player and change to JavaScript and see if that fixes your crashing.


Now for the long version:

SmartCodec (+ variants) can create lots of problems with playback / search - many have seen it jumps and skips over time, plus it is proprietary to the manufacturer and can be problematic with other VMS systems.

Most of us have found H265 in these cameras suck.

H265 in theory provides more storage as it compresses differently, but part of that compression means it "macro blocks" (technically coding tree units) big areas of the image that it thinks isn't moving. That can be problematic for digital zooming with H265.

However, it also takes more processing power of the already small CPU in the camera and that can be problematic if someone is maxing out the camera in other areas like FPS and then it stutters.

Further some cameras can handle H265 better than others, even if the camera "claims" to support it, it may actually do a very poor job with it.

In theory it is supposed to need 30% less storage than H264, but most of us have found it isn't that much. My savings were less than few minutes per day. And to my eye and others that I showed clips to and just said do you like video 1 or video 2 better, everyone thought the H264 provided a better image.

The left image is H264, so all the blocks are the same size corresponding to the resolution of the camera. H265 takes areas that it doesn't think has motion and makes them into bigger blocks and in doing so lessens the resolution in those larger blocks yet increases the camera CPU demand to develop these larger blocks. For some cameras that then becomes problematic to do other functions as the little processor is now maxed out.

1667974399793.png



In theory H265 is supposed to need half the bitrate because of the macroblocking. But if there is a lot of motion in the image, then it becomes a pixelated mess. The only way to get around that is a higher bitrate. But if you need to run the same bitrate for H265 as you do H264, then the storage savings is essentially zero.

In my testing I have one camera that sees a parked car in front of my house. H265 sees that the car isn't moving, so it macroblocks the whole car and surrounding area. Then the car owner walked up to the car and got in and the motion is missed because of the macroblock being so large. Or if it catches it, because the bitrate is low, it is a pixelated mess during the critical capture point and by the time H265 adjusts to there is now motion, the ideal capture is missed.

In my case, the car is clear and defined in H264, but is blurry and soft edges in H265.

Digital zooming is never really good and not something we recommend, but you stand a better chance of some digital zoom with H264 rather than a large macroblocked H265. I can digital zoom on my overview camera and kinda make out the address number of the house across the street with H264, but not a chance with H265 as it macroblocked his whole house.

H265 is one of those theory things that sounds good, but reality use is much different.

Some people have a field of view or goals that allow H265 to be sufficient for their needs.

Third party VMS systems do better with H264. That is the tried and true standard. H264H is ok as well.

As always, YMMV.
sheeeesh . appreciate the information. going to adjust my cameras and also it seems the javascript fixed my main issues :-)