Page 1 of 1
JPEG-2000 Support
Posted: Tue Sep 25, 2007 4:07 pm
by warpedrive
Hi - I'm with Agilence, Inc. , the lead engineer in charge of hardware.
We recently have been asked if Zoneminder supports our products.
We produce a line of JPEG-2000 network video encoder units. (See agilityvideo.com for line)
8/4/2/1 channel analog input units are available, as well as network cameras in NTSC/PAL and 2MP resolutions.
The images are available on a web page, or via continuous streaming, through a simple format over single / multiple TCP or UDP/RTP ports.
Question is - are we compatible, and if not, what can I do to help out to make it so? I'm ready and willing to make changes, or provide support to Zoneminder to make things happen.
Anyone? Help?
Thanks in advance, and feel free to email me if you wish at " tzielinski at agilenceinc . com"
Todd Z.
Posted: Tue Sep 25, 2007 8:58 pm
by zoneminder
Hi Todd,
Thanks for your post. I think the main obstacle to jpeg2000 support at the moment is a lack of a library to support encoding and decoding the images, and to a lesser extent browser support if you wanted to display images in that format. Currently the libjpeg library does not support jpeg2000 as far as I am aware so we would need some kind of replacement that does. Is that something you can help with?
Cheers
Posted: Wed Sep 26, 2007 3:28 pm
by warpedrive
Right now I know of several Linux libraries, and Linux plug in for JP2K:
Libraries: ImageMagick, NetPBM, libjasper, KDE
Web plugin:
http://linuxj2k.org/
Hopefully that is a place to start?
Todd Z.
Posted: Wed Sep 26, 2007 6:23 pm
by cordel
None of those are libraries and nothing that ZM can be compiled against to gain functionality.
Woops.. My bad.. here's a library:
Posted: Thu Oct 11, 2007 6:08 pm
by warpedrive
OK, was just trying to be helpful; but you are correct, I didn't list a library for source that could be used in ZM.
However, there is a BSD-compatible library for JPEG-2000:
http://www.openjpeg.org/
This should do it, right? Includes a makefile, and build for Linux..
So, what can I do to help move the ball forward?
Posted: Tue Mar 25, 2008 7:48 pm
by warpedrive
Just wondering how I go about integrating the OpenJPEG library, or other JP2K support into ZoneMinder.. we have our own JP2K DirectShow and ActiveX plug-in, but it is based on a library that I can't give the source code for...
I think there all alternatives, Jasper, OpenJPEG, and so on.. anyone mind pointing me to somewhere I could help make this happen? Thanks again, in advance..
Todd
Posted: Tue Apr 15, 2008 8:09 pm
by wasabi
I'd focus on integrating support for this, first, as an image source. I'd worry about implementing support for JPEG2000 as output as a secondary project. That said, src/zm_image.cpp is pretty clear. There is a ReadJpeg method that accepts a file path and simply uses libjpeg. It would be relatively easy to convert the JPEG2000 on input into a normal libjpeg set of structs. That would accomplish the first goal, getting it to work.
Second you'd want to clean it all up.
I just implemented support for an "Executable" source type. This will let you specify a binary to launch and use it's stdout as jpeg source. I did this because I had a few cameras supplying "bad" jpeg headers. Running them through imagemagick "fixes" them. =)
Soon as I find a contact I'll be trying to get this commited. It would solve your issue in the short term. You could just use Exec to launch a small shell script that piped the camera through imagemagik.
Posted: Tue Jun 17, 2008 1:32 am
by cordel