Monitor JPEG output is black square MPEG output is blank

Forum for questions and support relating to the 1.25.x releases only.
Locked
Culprit
Posts: 2
Joined: Sun Oct 26, 2014 10:16 am

Monitor JPEG output is black square MPEG output is blank

Post by Culprit »

Hi,

I'm having trouble with an OnVIF 2.0 camera displaying live stream in Zoneminder. I appreciate that the issue could be outside of ZM but I've been hammering away at this for three weeks with no luck.

Issue:
When viewing the Monitor for my camera I only get a black output frame in JPEG mode and nothing at all in MPEG mode.

Camera:
ONVIF Device Manager lists the camera as "H264 NVT" as it is your generic eBay type. The RTSP string detected by ODM works great in VLC on my Windows 7 PC. From the forums and Wiki info this usually means the camera should stream fine to ZM.

So I don't think the camera is the issue.

For reference the string is:
rtsp://<local IP>:<port>/user=<user>_password=<password>_channel=1_stream=0.sdp

ZM Server:
I am using the ZM 1.25 VM appliance from waldrondigital which seems to work well for most people and the simplest way to get going.

VM Host:
I am running Virtualbox on a HP N40L Microserver (AMD Turion II Neo 1.5GHz 2-Core, Onboard AMD HD4200 VGA: 128MB, 1920x1200 @ 60hz, 4GB RAM, 6TB storage) with OpenMediaVault as the OS.

When the ZM Appliance is running the VM Host CPU is only using 16% capacity so no stress there.

Things I have tried:
Update & Upgrade the VM Appliance and the video drivers
Give extra video memory to the VM (256MB)
Setup the monitor in various configurations including Monitor/Modect. remote/FFMPEG. When set as remote I have set the method to all of the types available.
In ZM Options -> Images I have -
1) enabled FFMPEG and provided the correct path (/usr/bin/ffmpeg) and installed cambozola (this just gives me Java security errors in my browser)
2) Changed the live and replay stream formats to swf/avi/mpeg/mpg and mov with no success.

In ZM Options -> High B/W I have:
1) Tried all options of WEB_H_CAN_STREAM
2) Set WEB_H_STREAM_METHOD to MPEG (no output) and JPEG (black square output)

My suspicion is that either the VM Host can't process H264 or the video drivers are not configured correctly but I don't know enough about Linux to be able to tell. I am more than happy to post screenshots and CLI output if anyone can lend a hand.

Thanks.
Culprit
Posts: 2
Joined: Sun Oct 26, 2014 10:16 am

Re: Monitor JPEG output is black square MPEG output is blank

Post by Culprit »

Update:

After working through the logs and more searching I changed the max memory segment size and then used this tip from lachlanmiskin's blog

"Shared data size conflict in shared_data for monitor Monitor-1, expected 328, got 316.
I traced this error back to /usr/share/perl5/ZoneMinder/Memory.pm with the cause sourcing at line 130 in the perl script.
To hopefully fix this issue, change the line at 130 from:
our $arch = int(3.2*length(~0));
To the following (It's advisable to comment out the old line and leave it there).
our $arch = 32;

I am not sure if this is the best fix, but it does seem to cease the error in ZoneMinder. I believe is due to the script incorrectly identifying the computers architecture between 32 and 64-bit."

After this change I now have a datestamped but corrupted monitor output. Only the top 10% of the output is clear, the rest is stripes. This is in JPEG mode. Enabling FFMPEG and MPEG stream gives no output at all.

The log is still complaining of shared memory issues so any suggestions on shmall values would be most welcome.
Locked