Blue Iris motion detection

rwbryce

n3wb
Nov 9, 2021
12
6
Ardmore, AB
Hi,

I am installing Blue Iris for the farmyard. Things are going well other than for motion detection - despite setting the size of the object and the contrast, I'm finding it difficult to get it where I'm happy:
  • Often a vehicle is already past the the camera when the camera starts to record - I get an image showing the vehicle but the video won't. I have also played with the "record X seconds before motion detection" and that isn't helping either.
  • If a person is walking, he'll appear, then disappear, then re-appear, and so-on.
  • Night-time motion that you can see in the live clips does not activate an event to start recording.

Possibly unrelated - when I do play-back, it'll often start on the wrong video clip - usually one much earlier from that camera. Then I have to scan ahead and back in the video clip to find what is associated with what I want to watch.

I spent the afternoon playing with iSpyConnect Agent and out of the box, I'm not having the same recording and playback issues with it. Being, it'll recognize motion a lot sooner (like I expected), capture all motion, and stop recording when I'd expect. This is just with the "simple" motion detector too.

I'd prefer to use BI over Agent but this motion detection and playback issue is kinda a show stopper if I can't get it right - that's what a surveillance system is supposed to get right! Any help/guideance would be appreciated.

I'm currently using Lorex cameras outside (that are recognized by the Amcrest software), and an Amcrest camera inside.
 
Your experiences are not what others experience, so it is a setup error somewhere.

What is your network topology - are cameras going thru a router?

Post some screen shots of a problematic camera setting and your BI camera status page showing FPS/bitrate/key etc.

But off the top of my head I think you probably have iframes and double or triple the FPS and that will miss motion. Make them both 15. This has to be done within the camera GUI not in BI.

What is the make time to trigger motion?
 
  • Like
Reactions: YrbkMgr
My BI is nothing like you describe, it works great, been using it for a full year and I just renewed my annual support.

You must have something set wrong. How many cameras are you running and are they all inadequate? The reason I mention that is if one is working well you might use it to compare settings.
 
Hi,

I am installing Blue Iris for the farmyard. Things are going well other than for motion detection - despite setting the size of the object and the contrast, I'm finding it difficult to get it where I'm happy:
  • Often a vehicle is already past the the camera when the camera starts to record - I get an image showing the vehicle but the video won't. I have also played with the "record X seconds before motion detection" and that isn't helping either.
  • If a person is walking, he'll appear, then disappear, then re-appear, and so-on.
  • Night-time motion that you can see in the live clips does not activate an event to start recording.

Possibly unrelated - when I do play-back, it'll often start on the wrong video clip - usually one much earlier from that camera. Then I have to scan ahead and back in the video clip to find what is associated with what I want to watch.

I spent the afternoon playing with iSpyConnect Agent and out of the box, I'm not having the same recording and playback issues with it. Being, it'll recognize motion a lot sooner (like I expected), capture all motion, and stop recording when I'd expect. This is just with the "simple" motion detector too.

I'd prefer to use BI over Agent but this motion detection and playback issue is kinda a show stopper if I can't get it right - that's what a surveillance system is supposed to get right! Any help/guideance would be appreciated.

I'm currently using Lorex cameras outside (that are recognized by the Amcrest software), and an Amcrest camera inside.
You need to read the help. This is REALLY important. First change the motion detection algorithm to simple. Second, make sure your iframe interval matches the cameras frame rates or at most is double the cameras frame rate. Blue iris can only begin recording on a new iframe when using direct to disk.
 
You need to read the help. This is REALLY important. First change the motion detection algorithm to simple. Second, make sure your iframe interval matches the cameras frame rates or at most is double the cameras frame rate. Blue iris can only begin recording on a new iframe when using direct to disk.

Thanks, and I am.

Turning off the "combine or cut video" setting for the camera helps. I also started with a completely new directory to try to deal with any old issues. And changing to "simple" - evaluating that now, thanks.

But:
  • I have lots of examples where pre-trigger video buffer simply isn't working. I cranked it right up to 7 seconds and verified that video is to be recorded "When Triggered", and I am using "direct-to-disk" recording. I even cranked up the receive buffer in size to see if that would help. But release notes (not doc's on the setting) indicate that (now, as of 5.4.9.11), playback starts at the motion-leading position, not the start of the pre-trigger buffer.....
  • I have a few examples where there's a disconnect between what's listed in the "Alerts" bar and what's played back. Right now, if I double-click a video that is reportedly 18 seconds, it chooses to play a different video - with a different initial frame image and that is 5 seconds in duration.

To answer other questions
  • I had already tuned the frame rates back to anywhere from 12fps to 18fps (camera, not BI settings)
  • All cameras are via a router (and were for the Agent test too).
  • 4 active cameras, from 4MP to 8MP
  • host machine is i7-11700k, 32GB RAM, recording to a 4TB HDD (not SSD), doing nothing other than running this software
 
Thanks, and I am.

Turning off the "combine or cut video" setting for the camera helps. I also started with a completely new directory to try to deal with any old issues. And changing to "simple" - evaluating that now, thanks.

But:
  • I have lots of examples where pre-trigger video buffer simply isn't working. I cranked it right up to 7 seconds and verified that video is to be recorded "When Triggered", and I am using "direct-to-disk" recording. I even cranked up the receive buffer in size to see if that would help. But release notes (not doc's on the setting) indicate that (now, as of 5.4.9.11), playback starts at the motion-leading position, not the start of the pre-trigger buffer.....
  • I have a few examples where there's a disconnect between what's listed in the "Alerts" bar and what's played back. Right now, if I double-click a video that is reportedly 18 seconds, it chooses to play a different video - with a different initial frame image and that is 5 seconds in duration.

To answer other questions
  • I had already tuned the frame rates back to anywhere from 12fps to 18fps (camera, not BI settings)
  • All cameras are via a router (and were for the Agent test too).
  • 4 active cameras, from 4MP to 8MP
  • host machine is i7-11700k, 32GB RAM, recording to a 4TB HDD (not SSD), doing nothing other than running this software
Combine and cut will have zero effect on your issue.
In the lengthy reply you have yet to address the major factor which is the iframe interval.
 
As I and others mentioned, you need to match frame rates FPS with the iframes.

As an example, if the FPS is 10 and the iframes is 40, then any movement that is in and out of the motion trigger area within 4 seconds is missed, or if it is in there longer, then the beginning is cut off. If FPS is 10 and iframes is 60, then it is 6 seconds for an object...

You need to get the cameras off the router.

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. 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 wifi camera and it is fairly instantaneous (within the latency of the stream itself)...

Sending all this non-buffer video stream through a router. Most consumer grade wifi routers are not designed to pass the constant video stream data of cameras, and since they do not buffer, you get these issues. The consumer routers are just not designed for this kind of traffic even a GB speed router.

And let's not talk about the security issues with having the cameras on the router....
 
Combine and cut will have zero effect on your issue.
In the lengthy reply you have yet to address the major factor which is the iframe interval.

I can set the iframe interval on the Amcrest camera - but that was only available after turning off the smart CODEC option.
I do not have a way to set the iframe interval on the Lorex cameras. I can choose between H.264/264H/264B/265 and "super H.265/H.264", resolution, FPS, bit rate type (CBR, VBR), and overall bit rate. But not the iframe interval - which seems to target 0.5.

@Flintstone61 - thanks - my settings were not that far off from yours.
 
I can set the iframe interval on the Amcrest camera - but that was only available after turning off the smart CODEC option.
I do not have a way to set the iframe interval on the Lorex cameras. I can choose between H.264/264H/264B/265 and "super H.265/H.264", resolution, FPS, bit rate type (CBR, VBR), and overall bit rate. But not the iframe interval - which seems to target 0.5.

@Flintstone61 - thanks - my settings were not that far off from yours.
And there is your problem. Smart codec MUST be turned off. The smart codec creates a dynamic i-frame interval and therefore can extending it significantly causing the exact problem you have.
 
Thanks - that's tweaked, but how does it help with this problem?
  • I have a few examples where there's a disconnect between what's listed in the "Alerts" bar and what's played back. Right now, if I double-click a video that is reportedly 18 seconds, it chooses to play a different video - with a different initial frame image and that is 5 seconds in duration.
 
Thanks - that's tweaked, but how does it help with this problem?
  • I have a few examples where there's a disconnect between what's listed in the "Alerts" bar and what's played back. Right now, if I double-click a video that is reportedly 18 seconds, it chooses to play a different video - with a different initial frame image and that is 5 seconds in duration.
Because the new iframe was not sent for 13 seconds after the initial trigger.
 
I appreciate this help, this form is great. But, well, only the Amcrest camera lets my set the key frame rate. The other (Lorex) cameras don't have that option (discussed), and they don't the option for the smart codec. The other cameras also had people repeatedly appearing and disappearing, and where I can't get the pre-trigger video to work.

Here's the settings for 2 of these cameras.
 

Attachments

  • spotlight.PNG
    spotlight.PNG
    42.4 KB · Views: 53
  • tractorshed.PNG
    tractorshed.PNG
    43 KB · Views: 45
At the very least match the coding between main and substreams as that could cause an issue as well. I would suggest making them both H264 - maybe that gives you the i-frames?

Or depending on the model of the camera, you could flash it with Dahua firmware and gain that parameter. Do a search here for the model number and see if it is possible.

Also suggest CBR instead of VBR and up it to at least 8192. 4096 is low for 4k.