Page 1 of 1

Tenvis IP Cameras - no video feed (SOLVED)

Posted: Fri Mar 21, 2014 11:55 pm
by nugget
A new thread - originally posted in the Zoneminder 1.25 forum. I've just upgraded to 1.26.5 and my problem remains.

A new installation of Zoneminder 1.25 (now upgraded to 1.26.5 with ffmpeg turned off) on Centos 6.5. I purchased a Tenvis IP602W and managed to get it working reasonably well using the remote HTTP feed (/videostream.cgi?user=User&pwd=Password&resolution=32&rate=14). The resolution is a bit so-so, but I can live with it.

Making the assumption the IP602W worked reasonably well, I have since purchased a Tenvis IP391W-HD. I think this is a reasonably new model, it is 720p resolution and claims to do H.264 video streaming. I've all but given in on the H.264 for now, and wanted to do a simple configuration using HTTP/videostream.cgi, unfortunately I'm unable to see any video feed in the monitor window.

In a Firefox browser I'm able to view the feed (at 640x480), eg: /videostream.cgi?user=User&pwd=Password&resolution=32&rate=14; the stream is stable and looks like the sort of thing I'm expecting (based on my experience wit the previous Tenvis camera). Unfortunately Zoneminder does not display any video (just the "broken jpeg" icon).

My last troubleshooting was to turn on debug and compare the output between my working and broken cameras:

Tenvis IP602W (working); debug level 3 _zmc_m1
3/22/14 10:13:33.554418 zmc_m1[3318].DB1-/usr/local/src/ZoneMinder-1.26.5/src/zm_zone.cpp/50 [Initialised zone 1/All - 1 - 494x202 - Rgb:0000ff, CM:1, MnAT:40, MxAT:0, MnAP:6728, MxAP:0, FB:3x3, MnFP:6024, MxFP:150618, MnBS:4016, MxBS:0, MnB:1, MxB:0, OF: 2]
03/22/14 10:13:33.557362 zmc_m1[3318].DB1-/usr/local/src/ZoneMinder-1.26.5/src/zm_monitor.cpp/2652 [Loaded monitor 1(Driveway), 1 zones]
03/22/14 10:13:33.557425 zmc_m1[3318].INF-/usr/local/src/ZoneMinder-1.26.5/src/zmc.cpp/195 [Starting Capture]
03/22/14 10:13:33.619589 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/119 [Connected to host, socket = 5]
03/22/14 10:13:33.619749 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/141 [Request sent]
03/22/14 10:13:33.621945 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/187 [Expecting 174 bytes]
03/22/14 10:13:33.621990 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/212 [Read 174 bytes]
03/22/14 10:13:33.622022 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/729 [Got status '200' (OK), http version 1.1]
03/22/14 10:13:33.622031 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/736 [Got connection 'close']
03/22/14 10:13:33.622040 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/751 [Got content type 'multipart/x-mixed-replace']
03/22/14 10:13:33.622052 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/760 [Got content boundary '--ipcamera']
03/22/14 10:13:33.622061 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/929 [Unable to extract subheader from stream, retrying]
03/22/14 10:13:34.084932 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/187 [Expecting 63 bytes]
03/22/14 10:13:34.085069 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/212 [Read 63 bytes]
03/22/14 10:13:34.085100 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/910 [Got boundary '--ipcamera']
03/22/14 10:13:34.085118 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/916 [Got subcontent length '48223']
03/22/14 10:13:34.085132 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/923 [Got subcontent type 'image/jpeg']
03/22/14 10:13:34.085156 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/187 [Expecting 1448 bytes]
03/22/14 10:13:34.085173 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/212 [Read 1448 bytes]
03/22/14 10:13:34.085551 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/187 [Expecting 2896 bytes]
03/22/14 10:13:34.085640 zmc_m1[3318].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/212 [Read 2896 bytes]
(etc)
Tenvis IP391W-HD (not working); debug level 3 _zmc_m2
3/22/14 10:12:22.992746 zmc_m2[3231].DB1-/usr/local/src/ZoneMinder-1.26.5/src/zm_zone.cpp/50 [Initialised zone 2/All - 1 - 640x480 - Rgb:0000ff, CM:3, MnAT:25, MxAT:0, MnAP:9216, MxAP:230400, FB:3x3, MnFP:9216, MxFP:230400, MnBS:6144, MxBS:0, MnB:1, MxB:0, OF: 0]
03/22/14 10:12:23.002304 zmc_m2[3231].DB1-/usr/local/src/ZoneMinder-1.26.5/src/zm_monitor.cpp/2652 [Loaded monitor 2(FrontDoor), 1 zones]
03/22/14 10:12:23.002371 zmc_m2[3231].INF-/usr/local/src/ZoneMinder-1.26.5/src/zmc.cpp/195 [Starting Capture]
03/22/14 10:12:23.395934 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/119 [Connected to host, socket = 5]
03/22/14 10:12:23.396068 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/141 [Request sent]
03/22/14 10:12:23.397689 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/187 [Expecting 109 bytes]
03/22/14 10:12:23.397757 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/212 [Read 109 bytes]
03/22/14 10:12:23.397780 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/729 [Got status '200' (OK), http version 1.1]
03/22/14 10:12:23.397790 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/751 [Got content type 'multipart/x-mixed-replace']
03/22/14 10:12:23.397801 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/760 [Got content boundary '--pictureboundary']
03/22/14 10:12:23.397821 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/929 [Unable to extract subheader from stream, retrying]
03/22/14 10:12:23.418907 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/187 [Expecting 1476 bytes]
03/22/14 10:12:23.419025 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/212 [Read 1476 bytes]
03/22/14 10:12:23.419046 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/929 [Unable to extract subheader from stream, retrying]
03/22/14 10:12:23.419059 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/187 [Expecting 1448 bytes]
03/22/14 10:12:23.419069 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/212 [Read 1448 bytes]
03/22/14 10:12:23.419077 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/929 [Unable to extract subheader from stream, retrying]
03/22/14 10:12:23.419165 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/187 [Expecting 1448 bytes]
03/22/14 10:12:23.419182 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/212 [Read 1448 bytes]
03/22/14 10:12:23.419206 zmc_m2[3231].DB3-/usr/local/src/ZoneMinder-1.26.5/src/zm_remote_camera_http.cpp/929 [Unable to extract subheader from stream, retrying]
(etc)
There is an obvious difference in the startup HTTP get (Got boundary '--ipcamera' vs --pictureboundary), so it seems to me I have a configuration problem, which is the limit of my knowledge at this point.

I also recieve the following in the ZM error log:
Can't open memory map file /dev/shm/zm.mmap.2, probably not enough space free: Permission denied
Which confuses me - all research points me to shared memory sizes, the defaut shmmax for Centos 6.5 is 64 GB. Any ideas?

Both cameras are configured similarly:
Source type: remote
remote protocol: http
remote method: simple
remote host IP/port (is correct)
remote host path: /videostream.cgi?user=<user>&pwd=<password>&resolution=32&rate=14
target colorspace: 32 bit color
Capture width/height: 640x480

Connecting to the camera via a web browser returns expected results (http://<IP-addr>:<port>/videostream.cgi?user=<user>&pwd=<password>&resolution=32&rate=14 - both cameras are working fine. I should point out there is an onboard software difference between the 2 cameras - they are Chinese clones of something (unsure what at this stage), both cameras appear to be from 2 different OEMs as the software is completely different.

Any ideas? I'm approaching the point where I bin the new camera and find an affordable IP based substitute.

Re: Tenvis IP Cameras - no video feed

Posted: Tue Mar 25, 2014 6:19 am
by nugget
Tenvis IP cameras - I'd rate 6/10. Cheap; but support is lousy.

I've managed to get my IP391W-HD working, but not using the "advanced features" of this camera, ie 720p and RTSP streaming.

For a $110 IP camera at 640x480 it's a nice build, OK resolution. The case and mount of this camera is excellent - once bolted to a wall it would take some effort to disturb the setup of the camera, for positions where the camera is easily accessible (eg my front door) this is a feature I need.

In the hope of helping others out, the settings I've used are as follows:
General:
Source Type: remote

Source:
Remote Protocol: http
remote method: simple
remote port: 8001
remote host path: /snapshot.cgi?user=admin&pwd=<password>&resolution=32&rate=6
Target Colourspace: 24 bit colour
Capture width/height: 640x480

RTSP may have to wait; I am in no hurry to solve that particular problem.