Setting up Sub Streams as event trigger
-
- Posts: 27
- Joined: Tue Mar 25, 2025 2:19 pm
Setting up Sub Streams as event trigger
Can anyone describe how to setup SubStreams as a trigger for a higher resolution stream?
I have found plenty of write-ups for older versions, but they all say "Set the sub stream to MoDect and the high resolution stream to NoDect" ...which is great, but those settings are not available in 1.37, or they are but have changed how they are described.
I am running 1.37 on Debian Bookworm. I have a server. Everything seems stable, but I have not had much luck getting a substream to trigger recording consistently (it works sort of, but then stops or fails to trigger an event)
I have found plenty of write-ups for older versions, but they all say "Set the sub stream to MoDect and the high resolution stream to NoDect" ...which is great, but those settings are not available in 1.37, or they are but have changed how they are described.
I am running 1.37 on Debian Bookworm. I have a server. Everything seems stable, but I have not had much luck getting a substream to trigger recording consistently (it works sort of, but then stops or fails to trigger an event)
-
- Posts: 139
- Joined: Tue Dec 09, 2014 10:20 pm
Re: Setting up Sub Streams as event trigger
I found linked monitors to be too flakey to use.
Instead, I connect to the hires stream, tell Zoneminder it's 640x400, and when a recording happens, use passthrough. The end result is lower load on the system, low resolution live and montage viewing, and high resolution captures. No the best, but it works.
Instead, I connect to the hires stream, tell Zoneminder it's 640x400, and when a recording happens, use passthrough. The end result is lower load on the system, low resolution live and montage viewing, and high resolution captures. No the best, but it works.
-
- Posts: 27
- Joined: Tue Mar 25, 2025 2:19 pm
-
- Posts: 27
- Joined: Tue Mar 25, 2025 2:19 pm
Re: Setting up Sub Streams as event trigger
Ok. I am going to give your method a try, since I am having a heck-of-a-time getting linked monitors to work. They seem to work fine on initial setup, but stop working an hour or so later.geraldbrandt wrote: ↑Sat Mar 29, 2025 1:47 pm I found linked monitors to be too flakey to use.
Instead, I connect to the hires stream, tell Zoneminder it's 640x400, and when a recording happens, use passthrough. The end result is lower load on the system, low resolution live and montage viewing, and high resolution captures. No the best, but it works.
Here is what I am trying now:
- set up a new monitor using the high-res stream of a camera
- instead of giving the correct resolution of that camera, tell ZM it is 640x400 or some other low resolution (I am using 704x396 to match the aspect ratio of the camera...which is running at 2304x1296)
- set analysis to always
- set recording to On Motion/Trigger and VideoWriter to Camera Passthrough
-
- Posts: 139
- Joined: Tue Dec 09, 2014 10:20 pm
Re: Setting up Sub Streams as event trigger
I don't care about aspect ratio, since I prefer my montage view to be nice looking. Aspect ratio is -- of course -- fine on passthrough.adam.robertson wrote: ↑Sun Mar 30, 2025 10:49 pmOk. I am going to give your method a try, since I am having a heck-of-a-time getting linked monitors to work. They seem to work fine on initial setup, but stop working an hour or so later.geraldbrandt wrote: ↑Sat Mar 29, 2025 1:47 pm I found linked monitors to be too flakey to use.
Instead, I connect to the hires stream, tell Zoneminder it's 640x400, and when a recording happens, use passthrough. The end result is lower load on the system, low resolution live and montage viewing, and high resolution captures. No the best, but it works.
Here is what I am trying now:
- set up a new monitor using the high-res stream of a camera
- instead of giving the correct resolution of that camera, tell ZM it is 640x400 or some other low resolution (I am using 704x396 to match the aspect ratio of the camera...which is running at 2304x1296)
- set analysis to always
- set recording to On Motion/Trigger and VideoWriter to Camera Passthrough
I have seven hires (2K or greater) cameras working this way.
-
- Posts: 27
- Joined: Tue Mar 25, 2025 2:19 pm
Re: Setting up Sub Streams as event trigger
I can confirm that this method works fine, and seems like an elegant solution as opposed to using linked low-res substreams as triggers.
I double-checked the videos it was saving ( the web interface was telling me the footage was the lower-res 704x396 , but opening the file and viewing in VLC shows it at the higher resolution that the camera is running at.
Thanks @geraldbrandt
I double-checked the videos it was saving ( the web interface was telling me the footage was the lower-res 704x396 , but opening the file and viewing in VLC shows it at the higher resolution that the camera is running at.
Thanks @geraldbrandt
Re: Setting up Sub Streams as event trigger
I decided to test geraldbrandt metod and I also confirm it works surprisingly effectively.
In my case It reduced CPU load.
Originally I had low resolution monitor motion detection triggering high resolution camera passthrough on second monitor.
Now I'm testing geraldbrandt metod.
I can give you some advice.
When playback of recorded event has set "Scale: Actual" it shows in low resolution set in "Source / Capture Resolution (pixels) ".
But when I change the "Scale: Max 1024px" and higher it shows playback in high resolution.
In my case It reduced CPU load.
Originally I had low resolution monitor motion detection triggering high resolution camera passthrough on second monitor.
Now I'm testing geraldbrandt metod.
I can give you some advice.
When playback of recorded event has set "Scale: Actual" it shows in low resolution set in "Source / Capture Resolution (pixels) ".
But when I change the "Scale: Max 1024px" and higher it shows playback in high resolution.
-
- Posts: 139
- Joined: Tue Dec 09, 2014 10:20 pm
Re: Setting up Sub Streams as event trigger
I have my event playback scale set to Auto, that way it always plays back the largest video size possible for the current window size.
Re: Setting up Sub Streams as event trigger
Hello,
I'am testing the method described and it works very well for reducing CPU load. But i can't make use of the montage review, i always get this error : web_js 5439 ERR There was an error - error()
I guess the js component is expecting the lower resolution frame and can't load the real frame, does anybody know how to fix this ?
I'am testing the method described and it works very well for reducing CPU load. But i can't make use of the montage review, i always get this error : web_js 5439 ERR There was an error - error()
I guess the js component is expecting the lower resolution frame and can't load the real frame, does anybody know how to fix this ?
-
- Posts: 27
- Joined: Tue Mar 25, 2025 2:19 pm
Re: Setting up Sub Streams as event trigger
Does the montage review work if you are using the main stream of the camera?FloD wrote: ↑Tue Jun 03, 2025 12:27 pm Hello,
I'am testing the method described and it works very well for reducing CPU load. But i can't make use of the montage review, i always get this error : web_js 5439 ERR There was an error - error()
I guess the js component is expecting the lower resolution frame and can't load the real frame, does anybody know how to fix this ?
Under "Source>Decoding" do you have that set to always?
-
- Posts: 139
- Joined: Tue Dec 09, 2014 10:20 pm
Re: Setting up Sub Streams as event trigger
My montage works fine. No substreams, just the high res stream and telling ZM it's low res.FloD wrote: ↑Tue Jun 03, 2025 12:27 pm Hello,
I'am testing the method described and it works very well for reducing CPU load. But i can't make use of the montage review, i always get this error : web_js 5439 ERR There was an error - error()
I guess the js component is expecting the lower resolution frame and can't load the real frame, does anybody know how to fix this ?
-
- Posts: 139
- Joined: Tue Dec 09, 2014 10:20 pm
Re: Setting up Sub Streams as event trigger
I've moved a couple of my cameras to use in the camera Source configuration. It seems to add about 1 - 1.5% CPU usage, but gives me high res views when looking at an individual camera.
Code: Select all
SourceSecondPath
-
- Posts: 139
- Joined: Tue Dec 09, 2014 10:20 pm
Re: Setting up Sub Streams as event trigger
That was a fast experiment. When multiple cameras had a lot of activity, iowait went through the roof and Zoneminder became unresponsive. Back to lying about the resolution.geraldbrandt wrote: ↑Wed Jun 04, 2025 6:10 pm I've moved a couple of my cameras to usein the camera Source configuration. It seems to add about 1 - 1.5% CPU usage, but gives me high res views when looking at an individual camera.Code: Select all
SourceSecondPath
I run Zoneminder in a VM.
Re: Setting up Sub Streams as event trigger
Yes when using the main stream the montage review works fine.adam.robertson wrote: ↑Tue Jun 03, 2025 12:48 pm Does the montage review work if you are using the main stream of the camera?
Under "Source>Decoding" do you have that set to always?
"Source>Decoding" is set to "on demand + keyframes