Page 1 of 2
Zoneminder and Trendnet TV-IP110
Posted: Fri Apr 25, 2008 10:16 pm
by mawindholz
Is there anyway to make the Trendnet TV-IP110 work with Zoneminder? If not, does anybody know if it will be supported in the future?
Posted: Sat May 03, 2008 6:46 pm
by kp4djt
I have on too, and am in the same boat. If there is anyone out there that knows how to make it work sure would like to have that info...
Trendnet TV-IP110W
Posted: Fri May 09, 2008 5:22 pm
by tzm
I have been trying to use TV-IP110W in ZoneMinder. According to its
CGI command manual (send by Trendnet customer support), mjpeg
stream is available at:
http://192.168.1.30/cgi/mjpg/mjpeg.cgi
When I entered the path above in ZM, I could not see the video.
I tried to add username and password in the "Remote Host Name"
section as
admin:passwd@192.168.1.30
but it did not work. If username&passwd are not supplied, the camera
does not allow access, however the above method is not useful for
authentication. If I use lynx to dump the stream to a file:
lynx -dump
http://192.168.1.30/cgi/mjpg/mjpeg.cgi > file
then I have the message HTTP: Access authorization required.
I can save the stream if I provide authentication as:
lynx -dump -auth=user:passwd
http://192.168.1.30/cgi/mjpg/mjpeg.cgi > file
If ZM can pass authentication similar to lynx, then it may be possible
to use this camera. I am also trying to find a way to disable user
authentication in IP110W, but I am not sure if this is possible (I am
waiting for an answer from Trendnet).
Re: Trendnet TV-IP110W
Posted: Sat May 10, 2008 8:34 pm
by onidlo
Please, take a look at my post:
http://www.zoneminder.com/forums/viewtopic.php?t=11649
Even I have a different model, the URL seems to be very similar and probably they use the same software in the camera. Could you please copy-paste result of:
wget -S http://<CAMERA-IP>/cgi/mjpg/mjpeg.cgi -user=admin -password=pass
In my case, the camera returned something like:
...
Content-Type: multipart/mixed; boundary=--myboundary
...
28 bytes of strange data... jpeg header...jpeg....jpeg footer
...
So, it did not provide:
1) content-type for every part of the response
2) valid content-type (only multipart/mixed instead multipart/x-mixed-replace)
3) valid JPEG code
Re: Trendnet TV-IP110W
Posted: Sun May 11, 2008 7:04 am
by tzm
Even I have a different model, the URL seems to be very similar and probably they use the same software in the camera. Could you please copy-paste result of:
wget -S http://<CAMERA>/cgi/mjpg/mjpeg.cgi -user=admin -password=pass
Here is the result of wget:
wget -S
http://192.168.1.30/cgi/mjpg/mjpeg.cgi --http-user=admin --http-password=passwd
--01:36:40--
http://192.168.1.30/cgi/mjpg/mjpeg.cgi
Connecting to 192.168.1.30:80... connected.
HTTP request sent, awaiting response...
HTTP/1.1 200 OK
Content-Type: multipart/mixed;boundary=myboundary
Length: unspecified [multipart/mixed]
Saving to: `mjpeg.cgi'
After that, it keeps on saving the stream. The file mjpeg.cgi starts
with something like this:
--myboundary
Content-Length: 10537
ä¾&JVQ›E...
I am not sure if this stream is useful for ZM, is there a way to check?
Re: Trendnet TV-IP110W
Posted: Sun May 11, 2008 7:21 am
by tzm
I checked your camera, I guess Micronet SP5511W and Trendnet IP110W
are identical models. Their shapes and specifications are the same, you
can check this web page:
http://trendnet.com/products/proddetail ... 10W&cat=48
In your other post, you mentioned that you had some changes in
zm_remote_camera.cpp to get it working. Could you post the modified
file (and any other step)? Does it work well after that?
Re: Trendnet TV-IP110W
Posted: Sun May 11, 2008 9:51 am
by onidlo
tzm wrote:In your other post, you mentioned that you had some changes in
zm_remote_camera.cpp to get it working. Could you post the modified
file (and any other step)?
I can post also diff file, if you know, how to create it

The most important part of the code follows:
Code: Select all
if ( format == JPEG && buffer.Size() >= 2 ) {
if (
(micronet_mode == MICRONET_MODE)&&
( buffer[0] != 0xff || buffer[1] != 0xd8 )
) {
Debug (3, ("Fixing Micronet problem, buffersize = %d, content_length = %d", buffer.Size(), content_length));
buffer.Consume(28);
content_length -= 28;
//Debug (3, ("Micronet problem fixed!, buffersize = %d, content_length = %d", buffer.Size(), content_length));
micronet_fix_count++;
Disconnect();
}
}
/*
if (micronet_fix_count>=10) {
micronet_fix_count = 0;
// close the connection when 10 images were received
Disconnect();
}
*/
Debug( 3, ( "Returning %d (%d) bytes of captured content", content_length, buffer.Size() ));
return( content_length );
The "enum" variable microned_mode is set, if header multipart/mixed is found.
tzm wrote: Does it work well after that?
Yes, now it works. But it has to disconnect after every image, otherwise the system load rises to very high numbers (after 5 minutes to 12 with only one camera and quite good CPU). And also, with every minute the video delayed approximately 10 seconds.
Re: Trendnet TV-IP110W
Posted: Mon May 12, 2008 9:50 pm
by tzm
OK, I replaced the original code:
Code: Select all
if ( format == JPEG && buffer.Size() >= 2 )
{
if ( buffer[0] != 0xff || buffer[1] != 0xd8 )
{
Error(( "Found bogus jpeg header '%02x%02x'", buffer[0], buffer[1] ));
return( -1 );
}
}
with the modified version:
Code: Select all
if ( format == JPEG && buffer.Size() >= 2 )
{
if ( buffer[0] != 0xff || buffer[1] != 0xd8 )
{
Debug (3, ("Fixing Micronet problem, buffersize = %d, content_length = %d", buffer.Size(), content_length));
buffer.Consume(28);
content_length -= 28;
Disconnect();
}
}
I assumed MICRONET_MODE is always ON, and removed the commented
sections, so micronet_fix_count was not needed. After compiling and
starting zm (I have version 1.23.3), I still do not have any video. After
checking the /tmp/zmwatch.log file, I have seen the following errors:
zmwatch[13823].ERR [Can't get shared memory id '7a6d0003', 3: No such file or directory]
zmwatch[13823].INF [Restarting capture daemon for Ipcam1, shared memory not valid]
zmwatch[13823].INF ['zmc -m 3' starting at 08/05/12 16:39:22, pid = 14275]
Did you have these kind of messages? By the way, my remote camera
name is ipcam1 (I also tried IP addr, made no difference), and I have
the following settings:
Remote Host Name: admin:passwd@ipcam1
Remote Host Port: 80
Remote Host Path: /cgi/mjpg/mjpeg.cgi
Remote Image Colors: 24 bit color
Capture Width (pixels): 640
Capture Height (pixels): 480
Posted: Fri May 30, 2008 5:34 pm
by Aressel
Here's a question,
Does anyone think that it would be possible to write a wrapper, such that it would be able to handle this sort of input, clean it up into a form that ZM can read, and rebroadcast it? I'm looking to run a heterogeneous camera system, so I don't really want to change the ZM code.
Someone did something similar for a different type of camera,
http://d-austin.net/maxipcam.html. I tried editing the pertinent connection strings, but with no luck. It appears to connect, but cannot seem to make any sense of the stream. I'm not much of a programmer, so I can only look at the code and make some sense of it, but not make any major changes myself.
Thanks for any help,
Aressel
Try jpg stream!
Posted: Fri May 30, 2008 7:49 pm
by we4zonM
I have a different camera, the Airlink101 AIC250, and I could not find the right settings to get it to work with the cgi video. The Zoneminder Wiki says you can get 10 fps with "/video.cgi" but I do not get any video with it! You have the cgi command manual, so see if there is a command to get a jpg and adjust your Zoneminder settings so that you tell ZM to stream jpg and use "ffmpeg" to encode it. For me, it meant changing the Monitor settings to use "host=<ip>", "path= /image.jpg" and setting the camera to have NO password and NO user, not even "admin". It did not work with the password protection with those settings. There may be a syntax to get it to work with password protection, I just have not found that in the documentation yet, if it is there.
Summary: Try jpg stream, use no password / username on camera, use ffmpeg, use jpg stream.
Downside: may get low fps (I get only 2 fps in 640x480). You must select the right resolution for your camera and the right color mode.
new solution
Posted: Thu Sep 11, 2008 7:34 pm
by pen1010b
It might be an old thread, but a solution is now possible with this, and has been tested with the newest .80 firmware.
http://[WEBCAMIP]/cgi/jpg/image.cgi
This will take a snapshot image, on my setup it seems to capture about 2 pictures/second..
It was kinda easy to find, as they released the GPL of of their linux setup...
Posted: Sat Sep 13, 2008 2:50 pm
by Andi
pen1010b,
Can I ask what settings you used?
I've installed ZM, set it up with my TV card without problems, but cannot access my Trendnet IP110 cameras.
Using that link direct in a browser I do get a picture, however, through ZM I just get an image placeholder.
Thanks!
Posted: Sun Sep 14, 2008 2:11 am
by kp4djt
That worked just fine for me, all I did was plug in the web cam address and off it took.
By way, I had to upgrade the software to get it to work but once that was done it works great.
Posted: Wed Feb 04, 2009 9:20 pm
by Cal-G
By way, I had to upgrade the software to get it to work but once that was done it works great.
Do you mean you upgraded the firmware on the TV-IP110 ?
If so, did you upgrade from build 37 to build 51 ?
Posted: Thu Feb 05, 2009 8:55 pm
by Cal-G
Hi
Trying to edit the zm_remote_camera.cpp as indicated above but can't find any such file:
]# find / -name zm_r*
/usr/share/zoneminder/www/zm_request_alarm.php
/usr/share/zoneminder/www/zm_request_event.php
/usr/share/zoneminder/www/zm_request_control.php
/usr/share/zoneminder/www/zm_request_stream.php
/usr/share/zoneminder/www/zm_request_status.php
what am i doing wrong ?