Page 2 of 3
Tiny Cam Monitor for Android and ZoneMinder PTZ
Posted: Sat Feb 05, 2011 7:07 am
by alexvas
Thanks everyone for feedback.
I have released
a new version of tinyCam Monitor which supports
PTZ for ZoneMinder (Pan/Tilt, Presets, Zoom, Focus, Iris). Now also if you choose M-JPEG codec real M-JPEG data will be used from ZM (more fps).
ZoneMinder should be installed in default location to work properly with tinyCam Monitor.
As usual PRO version has more features. See this
YouTube video.
1. I forgot to mention that in
Camera Settings -> Advanced Settings -> Edit channel number you can specify which camera number to use with ZM (by default, 1).
2. Regarding custom url for controls:
- No, currently I'm not planning to release this functionality since it will overload UI interface.
3. Regarding wake/sleep button:
- I'm not sure that I understood you correctly. What are they used for? I have Relay On/Off button for on screen control. Is it the same?
Posted: Sat Feb 05, 2011 3:39 pm
by mrd
Alexvas,
Thanks for the new features!
What I meant by "wake" and "sleep" buttons was to provide on and off buttons for the PTZ controllable ZM cameras because most cameras support "can wake" and "can sleep" functions in ZM. I personally leave my PTZ camera turned off most of the time, but would like to be able to turn it on with Tiny Cam Pro.
An advanced PTZ configuration sure would be nice some day...
Thanks again.
M
Wake/sleep buttons for ZM
Posted: Sun Feb 06, 2011 8:13 pm
by alexvas
I have released
a new update of tinyCam Monitor today on both
Android Market and
SlideME. Now it have
wake/sleep on screen buttons (available only for ZM). Enjoy!
Posted: Sun Feb 06, 2011 10:05 pm
by mrd
Alexvas,
I've been trying to use the new features, but realized that the only way I can get tiny cam to work with my ZM install is to use the method specified in this thread where I input the full url of the camera in the "Edit JPEG image address" field in advanced settings. As you can understand, doing that disables the options that seem specific to ZM.
I've tried adding the camera without specifying a url and filling in the other fields, but I get an error about the image file being bad. I've tried both codecs as well.
I use the Arch Linux version of ZM and my webroot appears to be at /var/lib/zm/www .
Any hints as to what I am doing wrong.
Thanks,
Michael
Posted: Sun Feb 06, 2011 10:12 pm
by zoneminder
I've just downloaded the free version of this and I have to say it's pretty cool. The only things I've found so far that I can't figure out how to delete cameras 5-8 and I can't find where the PTZ settings are (if they are present at all in the free version).
The only other thing that would be handy is if you could copy cameras to create new ones. For ZM most cameras would be identical except for the channel number and it would be useful to be able to duplicate a camera and just chance that rather than re-enter all the details again.
I would mention that I recommend that for this, or any other kind of third party app, you create a specific 'viewer' user in ZM that can do nothing else except view the cameras you want to see.
tinyCam Monitor and ZM
Posted: Mon Feb 07, 2011 7:23 am
by alexvas
mrd,
These are the requests I've been using to access ZM.
Code: Select all
MJPEG: "/cgi-bin/nph-zms?mode=jpeg&monitor=%CAMERANO%&user=%USERNAME%&pass=%PASSWORD%"
JPEG: "/cgi-bin/nph-zms?mode=single&monitor=%CAMERANO%&user=%USERNAME%&pass=%PASSWORD%"
PTZ: "/zm/?view=request&request=control&id=%CAMERANO%&control=moveConLeft&yge=75"
Try to run these requests in browser and let me know if it works for you.
I guess this requests should work if you have configured ZM with default "./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin". You can change MJPEG/JPEG request by specifying your own in "Edit JPEG image address" field, however you will not be able to specify custom PTZ requests in Tiny Cam Monitor.
Camera removing:
Go to Manage Cameras window, press and hold on any right hand buttons or camera text and Delete message will popup (see
this video on YouTube).
Camera copy:
This is a good idea. I will make a Copy button to allow camera settings to be cloned. Added to my TODO list.
PTZ controls:
PTZ controls are available on both Free and Pro versions. Go to 1 cam layout and tap on screen. A small dot will popup at the left bottom. Pressing this dot will change PTZ on screen controls windows (see
this video).
Posted: Wed Feb 09, 2011 4:05 am
by lazerusrm
Alexvas :
I am running the Arch Linux Distro, and the default directory for the "cgi-bin" is
"/cgi-zm/nph-zms"
and not
"/cgi-bin/nph-zms"
I tried for HOURS to ad a Alias to my httpd.conf and though i could add it successfully, ZM would NOT let me access the zm or nph-zms from
"http://%myserverip%/cgi-bin/
do you know what i might have been missing?
i tried adding:
Alias /cgi-bin "/var/www/zm/cgi-bin"
And also tried
ServerAlias /cgi-bin "/var/www/zm/cgi-bin"
The default configuration had it set to
ServerAlias /cgi-zm "/var/www/zm/cgi-bin"
And the PATH_ZM in the configuration gui set to /cgi-zm/nph-zms.
It would be SO AWESOME if i could find some help figuring this out. unfortunately i have very little *nix experience.
I re-installed with a bluecherry livecd, and now i can get video, but no PTZ function (PTZ camera functions normally from within ZM web gui)
-Brad
Posted: Wed Feb 09, 2011 5:49 am
by lazerusrm
** This is for the Arch Linux Live-CD Install, which has a non standard /cgi-bin directory set! It uses /cgi-zm/ instead of /cgi-bin/ !!
Okay, well i ended up figuring out a way to do it. Instead of using the
"Alias" command in the httpd-zm.conf
all i did was make a /cgi-bin/ in the root web directory and copied the files over.
or in other words i did this:
sudo su
mkdir /svr/http/cgi-bin/
cp /var/lib/zm/cgi-bin/zms /svr/http/cgi-bin/
cp /var/lib/zm/cgi-bin/nph-zms /svr/http/cgi-bin/
Thats it!
not exactly how i wanted to make it work. but it works, and i have mobile control!!!!
Is there a way to add in more Preset buttons, perhaps with another page?
Serial PTZ cameras do not yet work using the up / down / left / right buttons. in fact, i have to re-start the program to regain function of PTZ if i attempt to use them.
--Brad Tiny Cam Pro owner.
Also i want to talk to you some more about maybe customizing a version of this program for me? possibly?
tinyCam Monitor and serial PTZ cams
Posted: Wed Feb 09, 2011 8:42 am
by alexvas
More PTZ presets buttons
I will add 4 more PTZ presets buttons in landscape mode (8 total). In portrait mode it will be still 4.
Serial controls
I can make serial controls work if you send me HTTP GET commands which have to be send for up/down/lef/right/home/etc (use Wireshark to dump them). I can make a separate profile and put it under "Serial PTZ camera" name as a camera model in Tiny Cam Monitor.
Re: Tiny Cam Monitor and ZM
Posted: Fri Feb 18, 2011 12:10 pm
by miohe
alexvas wrote:
These are the requests I've been using to access ZM.
Code: Select all
MJPEG: "/cgi-bin/nph-zms?mode=jpeg&monitor=%CAMERANO%&user=%USERNAME%&pass=%PASSWORD%"
JPEG: "/cgi-bin/nph-zms?mode=single&monitor=%CAMERANO%&user=%USERNAME%&pass=%PASSWORD%"
PTZ: "/zm/?view=request&request=control&id=%CAMERANO%&control=moveConLeft&yge=75"
Try to run these requests in browser and let me know if it works for you.
PTZ only works if there is no OPT_USE_AUTH (Authenticate user logins to ZoneMinder) set in ZoneMinder. Otherwise the request does not have sufficient privileges.
Workaround is to "fix" /usr/share/zoneminder/ajax/control.php
from
Code: Select all
line 6: if ( canView( 'Control', $_REQUEST['id'] ))
to for example
Code: Select all
line 6: if (isset($_REQUEST['id']))
but you are losing security.
If I may suggest a solution would be to insert before line 6 in /usr/share/zoneminder/ajax/control.php the following lines:
Code: Select all
if (isset($_REQUEST['user']) && isset($_REQUEST['pass']))
{
userLogin( $_REQUEST['user'], $_REQUEST['pass']);
}
to make the start of control.php like:
Code: Select all
<?php
// Monitor control actions, require a monitor id and control view permissions for that monitor
if ( empty($_REQUEST['id']) )
ajaxError( "No monitor id supplied" );
if (isset($_REQUEST['user']) && isset($_REQUEST['pass']))
{
userLogin( $_REQUEST['user'], $_REQUEST['pass']);
}
if ( canView( 'Control', $_REQUEST['id'] ))
{
....
and to add to PTZ request from Tiny Cam Monitor user and pass parameters:
Code: Select all
PTZ: "/zm/?view=request&request=control&id=%CAMERANO%&control=moveConLeft&yge=75&user=%USERNAME%&pass=%PASSWORD%"
it would still work without the OPT_USE_AUTH and also with it set.
Regards,
Miha
Posted: Sat Feb 19, 2011 8:23 pm
by alexvas
I will add %USERNAME% and %PASSWORD% to all PTZ requests. The new 2.8.x version will contain this fix. It will be released in a day or two.
New version of Tiny Cam Monitor
Posted: Sun Feb 20, 2011 2:58 pm
by alexvas
The
new version of Tiny Cam Monitor is ready and available on both Android Market and SlideME.
1. It contains the
PTZ fix for ZoneMinder.
2. Now it is possible
to buy Pro version through SlideME Marketplace. This is particular useful for those countries which have disabled paid apps in Android Market or for the devices without Android Market installed. You will need to install SAM application from SlideME to be able to buy the app.
Posted: Sun Feb 20, 2011 6:04 pm
by miohe
alexvas,
works great - thanx!
Also for SlideME I can buy the Pro version now...
New version of tinyCam Monitor
Posted: Sat Feb 26, 2011 8:04 am
by alexvas
The new version of tinyCam Monitor 2.9.0 has been released and available on both Android Market and SlideME.
I have added Copy Settings feature in Advanced Camera Settings menu. This makes easier to setup multiple cameras connected to ZM. Now you need to setup one camera (channel) and make as much copies as you want by specifying new channel numbers.
Posted: Wed Mar 02, 2011 12:32 pm
by zoneminder
It would be handy to have a setting for ZM cams which is the path to the installation. I know the default is /zm but I have mine installed as a virtual host so there is no path. When using the PTZ it tries to use a hardcoded /zm/ path to the control functionality which fails.