Windows Front End for ZM
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
Windows Front End for ZM
Update 27/11/05
Added playabck and video creation (currently only in beta version) i will change to stable in about a week if no one has any problems
update 12/11/05
Another huge feature added (well i think so)
Map view
Allows
upto 36 cams
place buttons for cameras where req in settings using x,y coordinates, have put the x,y values in the status bar at the bottom to aid setup.
clciking the relevant button will load up a max 2fps windows showing live video form the selected camera, pause view local caxhe etc still function in this view. The quality settings will be remebered from the main app (not sure this is right but am gonna run with it this way for now)
Multi sites will work as you need to enter the path to the jpeg you are using as the map. If you have 4 sites make 1 jpeg with all sites drawn and then place cams as req. As it uses any jpg and zooms it to fit you could add any text, company name etc to this jpeg for a well profesional look.
Anyhow its up for download now.
Have also fixed all previous issues i have found and the final instant replay will only work if the split screen contains 9 or less cameras. I have done this as it consumes ram with a passion.
James
update 9/11/05
Basically i have fully rewritten it.the old one was a first atttepmt not bad but we are getting there now. I felt the previous version looked unprofessional from a users point of view. Also it was very dumb.
New version does all as before exept i have removed cycle in anticipation of new feature hitting the zm server (cycling streams)
Features
Views Pip, 4 way, 9 way, 13 way, 24 way, 36 way and custom view
All cameras now are in resizeable windows, with a progress bar at the top showing image load status.
Pressing the default view buttons accross the tool bar will open 4, 9 or 36 way etc as expexted. These views will automatically be scaled to fit the size of the window whether the window is maximised or not. I have tested it down to 640 x 480 but why you would want a 36 way split on 640x480 monitor i donk know.
As all windows are now sizeable and moveable they can be positioned, closed and sized as required then pressing save view will remeber the current view and pressing recall view will load this custom view. I think end users will like this one.
As before refresh rates are lowered on the bigger views to prevent overloading of server and bandwidth.
Before clicking on an image opened the spot monitor, i have removed this as it seemed to be abused by end users (ie left open perminantly) and replaced it with full screen view. Double clicking the camera title bar will maximise the current cam to fill the main apps window size. WHen this happens it will change its update rate from whatever it was befopre to 2 fps (bandwidth permitting)
Now clicking on the image loads a pause still image of what was there when you clicked. clicking again gets a new image etc. I plan to be able to save this print when i finish that part.
I have also added a low, med and high quality button. Does the obvious in favour of update speed on low bandwith connections.
Also added a weblogin button that currently just loads mozilla (well any program really, just enter the path and exe in settings), this is temp until i get started on either a playback app or better control of mozilla for playback purposes.
Settings has now changed and all that is required is as ip and a start monitor number
When you open settings you will see a group of boxes on the left that relate to IP and MON. IP being zm server IP and MON being monitor number on that server. If you have your monitors seqentially ordered starting at 1, if you enter the ip of the server and a 1 in cam 1 ip and mon and press the buttons at the top marked 'copy ip' and Auto numbewr monitors it will fill out all 36 for you.
Then check the path is correct (default should work with most but ctu zm needs an additional /zm after cgi-bin
Also in here you will find default refresh rate in milliseconds
and the password settings.
Available here
http://www.zoneminder.com/forums/viewto ... c&start=45
http://217.154.38.122:8080/zm4ms.zip
This one should be far more use than the last
old version
just to let you all know (as i think its been missed) in the user contribs section of the forum i have posted a small .net windows app for viewing live images from one or upto 32 single cam zm boxes.
supports 1 to 36 cams at the moment
James
Added playabck and video creation (currently only in beta version) i will change to stable in about a week if no one has any problems
update 12/11/05
Another huge feature added (well i think so)
Map view
Allows
upto 36 cams
place buttons for cameras where req in settings using x,y coordinates, have put the x,y values in the status bar at the bottom to aid setup.
clciking the relevant button will load up a max 2fps windows showing live video form the selected camera, pause view local caxhe etc still function in this view. The quality settings will be remebered from the main app (not sure this is right but am gonna run with it this way for now)
Multi sites will work as you need to enter the path to the jpeg you are using as the map. If you have 4 sites make 1 jpeg with all sites drawn and then place cams as req. As it uses any jpg and zooms it to fit you could add any text, company name etc to this jpeg for a well profesional look.
Anyhow its up for download now.
Have also fixed all previous issues i have found and the final instant replay will only work if the split screen contains 9 or less cameras. I have done this as it consumes ram with a passion.
James
update 9/11/05
Basically i have fully rewritten it.the old one was a first atttepmt not bad but we are getting there now. I felt the previous version looked unprofessional from a users point of view. Also it was very dumb.
New version does all as before exept i have removed cycle in anticipation of new feature hitting the zm server (cycling streams)
Features
Views Pip, 4 way, 9 way, 13 way, 24 way, 36 way and custom view
All cameras now are in resizeable windows, with a progress bar at the top showing image load status.
Pressing the default view buttons accross the tool bar will open 4, 9 or 36 way etc as expexted. These views will automatically be scaled to fit the size of the window whether the window is maximised or not. I have tested it down to 640 x 480 but why you would want a 36 way split on 640x480 monitor i donk know.
As all windows are now sizeable and moveable they can be positioned, closed and sized as required then pressing save view will remeber the current view and pressing recall view will load this custom view. I think end users will like this one.
As before refresh rates are lowered on the bigger views to prevent overloading of server and bandwidth.
Before clicking on an image opened the spot monitor, i have removed this as it seemed to be abused by end users (ie left open perminantly) and replaced it with full screen view. Double clicking the camera title bar will maximise the current cam to fill the main apps window size. WHen this happens it will change its update rate from whatever it was befopre to 2 fps (bandwidth permitting)
Now clicking on the image loads a pause still image of what was there when you clicked. clicking again gets a new image etc. I plan to be able to save this print when i finish that part.
I have also added a low, med and high quality button. Does the obvious in favour of update speed on low bandwith connections.
Also added a weblogin button that currently just loads mozilla (well any program really, just enter the path and exe in settings), this is temp until i get started on either a playback app or better control of mozilla for playback purposes.
Settings has now changed and all that is required is as ip and a start monitor number
When you open settings you will see a group of boxes on the left that relate to IP and MON. IP being zm server IP and MON being monitor number on that server. If you have your monitors seqentially ordered starting at 1, if you enter the ip of the server and a 1 in cam 1 ip and mon and press the buttons at the top marked 'copy ip' and Auto numbewr monitors it will fill out all 36 for you.
Then check the path is correct (default should work with most but ctu zm needs an additional /zm after cgi-bin
Also in here you will find default refresh rate in milliseconds
and the password settings.
Available here
http://www.zoneminder.com/forums/viewto ... c&start=45
http://217.154.38.122:8080/zm4ms.zip
This one should be far more use than the last
old version
just to let you all know (as i think its been missed) in the user contribs section of the forum i have posted a small .net windows app for viewing live images from one or upto 32 single cam zm boxes.
supports 1 to 36 cams at the moment
James
Last edited by jameswilson on Sun Nov 27, 2005 5:49 pm, edited 4 times in total.
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
I have just been wondering as i connected this viewer today to an 18 cam server, is it best to have maybe mu-tiple clients making a 2 fps demand on zms?
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
- zoneminder
- Site Admin
- Posts: 5215
- Joined: Wed Jul 09, 2003 2:07 pm
- Location: Bristol, UK
- Contact:
Do you mean, is it a good idea to have 18 zms's running at once? Probably not.
The process that takes place for each image stream are (1) zms gets images from shared memory (2) compresses images to jpeg (3) sends over network (4) viewer decodes image to raw format (5) viewer presents image. Steps 2 and 4 are cpu intensive for server and client respectively.
So if your viewer has plenty of bandwidth available and can handle raw images (which is should be able to) I would suggest a small patch to zms to allow raw images to be sent directly from shared memory instead of compressed. This would mean zms essentially uses virtually no cpu and would have much less effect on the server.
Phil
The process that takes place for each image stream are (1) zms gets images from shared memory (2) compresses images to jpeg (3) sends over network (4) viewer decodes image to raw format (5) viewer presents image. Steps 2 and 4 are cpu intensive for server and client respectively.
So if your viewer has plenty of bandwidth available and can handle raw images (which is should be able to) I would suggest a small patch to zms to allow raw images to be sent directly from shared memory instead of compressed. This would mean zms essentially uses virtually no cpu and would have much less effect on the server.
Phil
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
great, dont think it runs 18 zms though. looking at top there only ever appears to be max 2 zms processes running, i thought maybe zmc did too?
Basically all it does is request jpg at 2 fps per cameras view so obviously if you are using the 36 camera view it will be pulling (or trying to pull) 72 images per second from the server.
As the viewer was originally designed for local viewing only this patch ideas sounds great, maybe if its possible could a different zms request be made to the server to send a raw images or jpegs?
And i assume i can make it handle raw images but ill need a raw image to play with, any idea where i can get one to view/downlaod/test with, im not an image format expert by any stretch
James
Basically all it does is request jpg at 2 fps per cameras view so obviously if you are using the 36 camera view it will be pulling (or trying to pull) 72 images per second from the server.
As the viewer was originally designed for local viewing only this patch ideas sounds great, maybe if its possible could a different zms request be made to the server to send a raw images or jpegs?
And i assume i can make it handle raw images but ill need a raw image to play with, any idea where i can get one to view/downlaod/test with, im not an image format expert by any stretch
James
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
- zoneminder
- Site Admin
- Posts: 5215
- Joined: Wed Jul 09, 2003 2:07 pm
- Location: Bristol, UK
- Contact:
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
well before you an di go to the lengths of doing this, i think the load generated currently is very low. Would the zms process be the one generating the jpegs to send to the viewer, if so then the 2 processes that run to send the images currently only use .6% processor time on a 3.2 Gig P4
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
Phil, I have noticed that on the bigger views that the load put on the server even at 2 fps per monitor 36way view is low. well the processor and mem req increases are very small, but the load con go out of control upto 14 or 15. system is still responsice with a good 20% idle on the processor. IS this cos zms cant keep up with requests and its queing, can you think of a way round it or should i make the request speed dynamic on the update.
James
James
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
- zoneminder
- Site Admin
- Posts: 5215
- Joined: Wed Jul 09, 2003 2:07 pm
- Location: Bristol, UK
- Contact:
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
thats what i thought Thanks
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
ok then new version ready for trial
Basically i have fully rewritten it.the old one was a first atttepmt not bad but we are getting there now. I felt the previous version looked unprofessional from a users point of view. Also it was very dumb.
New version does all as before exept i have removed cycle in anticipation of new feature hitting the zm server (cycling streams)
Features
Views Pip, 4 way, 9 way, 13 way, 24 way, 36 way and custom view
All cameras now are in resizeable windows, with a progress bar at the top showing image load status.
Pressing the default view buttons accross the tool bar will open 4, 9 or 36 way etc as expexted. These views will automatically be scaled to fit the size of the window whether the window is maximised or not. I have tested it down to 640 x 480 but why you would want a 36 way split on 640x480 monitor i donk know.
As all windows are now sizeable and moveable they can be positioned, closed and sized as required then pressing save view will remeber the current view and pressing recall view will load this custom view. I think end users will like this one.
As before refresh rates are lowered on the bigger views to prevent overloading of server and bandwidth.
Before clicking on an image opened the spot monitor, i have removed this as it seemed to be abused by end users (ie left open perminantly) and replaced it with full screen view. Double clicking the camera title bar will maximise the current cam to fill the main apps window size. WHen this happens it will change its update rate from whatever it was befopre to 2 fps (bandwidth permitting)
Now clicking on the image loads a pause still image of what was there when you clicked. clicking again gets a new image etc. I plan to be able to save this print when i finish that part.
I have also added a low, med and high quality button. Does the obvious in favour of update speed on low bandwith connections.
Also added a weblogin button that currently just loads mozilla (well any program really, just enter the path and exe in settings), this is temp until i get started on either a playback app or better control of mozilla for playback purposes.
Settings has now changed and all that is required is as ip and a start monitor number
When you open settings you will see a group of boxes on the left that relate to IP and MON. IP being zm server IP and MON being monitor number on that server. If you have your monitors seqentially ordered starting at 1, if you enter the ip of the server and a 1 in cam 1 ip and mon and press the buttons at the top marked 'copy ip' and Auto numbewr monitors it will fill out all 36 for you.
Then check the path is correct (default should work with most but ctu zm needs an additional /zm after cgi-bin
Also in here you will find default refresh rate in milliseconds
and the password settings.
Available here
http://www.zoneminder.com/forums/viewto ... c&start=45
This one should be far more use than the last
[/url][/url]
Basically i have fully rewritten it.the old one was a first atttepmt not bad but we are getting there now. I felt the previous version looked unprofessional from a users point of view. Also it was very dumb.
New version does all as before exept i have removed cycle in anticipation of new feature hitting the zm server (cycling streams)
Features
Views Pip, 4 way, 9 way, 13 way, 24 way, 36 way and custom view
All cameras now are in resizeable windows, with a progress bar at the top showing image load status.
Pressing the default view buttons accross the tool bar will open 4, 9 or 36 way etc as expexted. These views will automatically be scaled to fit the size of the window whether the window is maximised or not. I have tested it down to 640 x 480 but why you would want a 36 way split on 640x480 monitor i donk know.
As all windows are now sizeable and moveable they can be positioned, closed and sized as required then pressing save view will remeber the current view and pressing recall view will load this custom view. I think end users will like this one.
As before refresh rates are lowered on the bigger views to prevent overloading of server and bandwidth.
Before clicking on an image opened the spot monitor, i have removed this as it seemed to be abused by end users (ie left open perminantly) and replaced it with full screen view. Double clicking the camera title bar will maximise the current cam to fill the main apps window size. WHen this happens it will change its update rate from whatever it was befopre to 2 fps (bandwidth permitting)
Now clicking on the image loads a pause still image of what was there when you clicked. clicking again gets a new image etc. I plan to be able to save this print when i finish that part.
I have also added a low, med and high quality button. Does the obvious in favour of update speed on low bandwith connections.
Also added a weblogin button that currently just loads mozilla (well any program really, just enter the path and exe in settings), this is temp until i get started on either a playback app or better control of mozilla for playback purposes.
Settings has now changed and all that is required is as ip and a start monitor number
When you open settings you will see a group of boxes on the left that relate to IP and MON. IP being zm server IP and MON being monitor number on that server. If you have your monitors seqentially ordered starting at 1, if you enter the ip of the server and a 1 in cam 1 ip and mon and press the buttons at the top marked 'copy ip' and Auto numbewr monitors it will fill out all 36 for you.
Then check the path is correct (default should work with most but ctu zm needs an additional /zm after cgi-bin
Also in here you will find default refresh rate in milliseconds
and the password settings.
Available here
http://www.zoneminder.com/forums/viewto ... c&start=45
This one should be far more use than the last
[/url][/url]
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
ok then i have just put the finishing touches to this (i think) so should be ready to go, still needs .net 2 beta framework. I am trying to get my vs to work with plain .net 2.0 should install like a charm then
James
James
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
another feature added see contribs
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
Phil
Im coming on leaps and bounds with this but id like to impliment an alarm function
ideally i want to make the icons change colour on alarm and alos have an alarm view window which would show the last monitor to alarm in a pop up stylee. and a couple of other things, monitor status view etc
A couple of weeks back we mentioned a means of querying zm (or maybe zms) as to what its current status was.
Dur to load and bandwith limitations i think that quering individual monitors if they are in alarm is unrealistic
Iwas thinking a status page/text list would be better
ie i request a status page and get back what ever info via http as a webpage i assume, this i can then import and use.
Would need a standard layout or something that was constant but i was thinking alaon the lines of
Alarm status
1 = 0
2= 1
3=0
4=0
etc etc
I assume we could add more to this than just alarm info and could also maybe do a human readable version (or make it slectable) for at a glace checking)
thoughts??
James
Im coming on leaps and bounds with this but id like to impliment an alarm function
ideally i want to make the icons change colour on alarm and alos have an alarm view window which would show the last monitor to alarm in a pop up stylee. and a couple of other things, monitor status view etc
A couple of weeks back we mentioned a means of querying zm (or maybe zms) as to what its current status was.
Dur to load and bandwith limitations i think that quering individual monitors if they are in alarm is unrealistic
Iwas thinking a status page/text list would be better
ie i request a status page and get back what ever info via http as a webpage i assume, this i can then import and use.
Would need a standard layout or something that was constant but i was thinking alaon the lines of
Alarm status
1 = 0
2= 1
3=0
4=0
etc etc
I assume we could add more to this than just alarm info and could also maybe do a human readable version (or make it slectable) for at a glace checking)
thoughts??
James
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
- zoneminder
- Site Admin
- Posts: 5215
- Joined: Wed Jul 09, 2003 2:07 pm
- Location: Bristol, UK
- Contact:
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
thanks
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk