BlueCherry BC-08240A

Forum for questions and support relating to the 1.24.x releases only.
Locked
williamthrilliam
Posts: 7
Joined: Wed Aug 11, 2010 12:05 am

BlueCherry BC-08240A

Post by williamthrilliam »

Hello,

I recently purchased the BC-08240A, 8 channel hardware compression, which is apparently not being sold anymore as a standalone item. You can find the product description here: BC-08240A

As you can see, its sold along with their DVR software, which I did not buy. I admit I got a good deal, but I was forewarned support would be limited. So now here I am with you.

I have zoneminder installed and all set up on Ubuntu 10.04 x86_64 and would like to know how to connect/view the camera sources. When using xawtv, as mentioned I should do in the wiki, I get this output:
$ xawtv
This is xawtv-3.95.dfsg.1, running on Linux/x86_64 (2.6.32-24-generic)
xinerama 0: 1680x1050+0+0
WARNING: No DGA direct video mode for this display.
can't open /dev/video0: No such device or address
v4l-conf had some trouble, trying to continue anyway
v4l2: open /dev/video0: No such device or address
v4l2: open /dev/video0: No such device or address
v4l: open /dev/video0: No such device or address
no video grabber device available

I'm guessing something has to be probed in order for v4l to recognize my card, and had hoped someone with previous Blucherry hardware experience could give me a hand.

Any help is much appreciated.
curtishall
Posts: 440
Joined: Sat Sep 25, 2004 12:45 am
Location: Fulton, MO

Re: BlueCherry BC-08240A

Post by curtishall »

williamthrilliam wrote:Hello,

I recently purchased the BC-08240A, 8 channel hardware compression, which is apparently not being sold anymore as a standalone item. You can find the product description here: BC-08240A
Actually the OEM card (without software) is here: http://store.bluecherry.net/ProductDeta ... ow=ExtInfo

It doesn't appear the driver is loaded. You can download the driver and get some technical information from here: http://support.bluecherrydvr.com/entrie ... eg-4-h-264

Zoneminder, like all V4L applications, is expecting to receive MPEG2/TS. This card produces MPEG-4 (m4v). We have a patch that we are working for Zoneminder in the (little) free time have (all of our focus is on the next major release of our software). Hopefully we'll have this patch uploaded to Zoneminder sometime in the next couple weeks.

This patch would support obtaining a hardware compressed stream. You would gain deinterlacing support since the card does this on the fly. Zoneminder would still have to decompress the image and handle the motion detection.

Thanks
--
Curtis Hall
Bluecherry
www.bluecherrydvr.com
store.bluecherry.net
williamthrilliam
Posts: 7
Joined: Wed Aug 11, 2010 12:05 am

Post by williamthrilliam »

Awesome, thank you for your help. You also responded to my request in your support portal, but I would like to continue the discussion here for the community if you wouldn't mind.

I have vlc up detecting both the raw /dev/video0 and then an mjpeg stream from /dev/video1. If I were to use the mjpeg stream (because neither vlc nor zoneminder currently does mpeg4), how can I increase the resolution? As it is right now, I am getting 352x240, but my camera allows for 510x492.

Obviously I want this to transfer over to zoneminder, but I'm using vlc right now just to make sure everything is working.

Thank you for you continued support.
williamthrilliam
Posts: 7
Joined: Wed Aug 11, 2010 12:05 am

Re: BlueCherry BC-08240A

Post by williamthrilliam »

curtishall wrote: We have a patch that we are working for Zoneminder in the (little) free time have (all of our focus is on the next major release of our software). Hopefully we'll have this patch uploaded to Zoneminder sometime in the next couple weeks.

This patch would support obtaining a hardware compressed stream. You would gain deinterlacing support since the card does this on the fly. Zoneminder would still have to decompress the image and handle the motion detection.
And btw, I am very excited you are working on this. I created a small footprint server for my setup using a dual core atom cpu and 2gigs of ram. I bought the hardware compression card because I believed it would take the load off of the rest of my hardware. So needless to say, please keep me informed.
williamthrilliam
Posts: 7
Joined: Wed Aug 11, 2010 12:05 am

Post by williamthrilliam »

Oh, and I had to install ffmpeg in order for /dev/video1 to be viewable. Just for future reference.
williamthrilliam
Posts: 7
Joined: Wed Aug 11, 2010 12:05 am

Post by williamthrilliam »

I apologize for so many questions, but I really am getting excited about the progress of my system. I will have to post a build tutorial when its all said and done.

Question: You say that when mpeg4 support is implemented (and in the future hopefully h.264), zoneminder will have to decompress it in order to do motion detection. If this is true, what will it use to decompress the video stream? ffmpeg? What I'm getting at is, could I implement hardware acceleration to decompress that stream, such as the Broadcom CrystalHD. It is said (through loose google searches) that ffmpeg now uses the crystalhd card to decompress video when available.
curtishall
Posts: 440
Joined: Sat Sep 25, 2004 12:45 am
Location: Fulton, MO

Post by curtishall »

williamthrilliam wrote:I apologize for so many questions, but I really am getting excited about the progress of my system. I will have to post a build tutorial when its all said and done.

Question: You say that when mpeg4 support is implemented (and in the future hopefully h.264), zoneminder will have to decompress it in order to do motion detection. If this is true, what will it use to decompress the video stream? ffmpeg? What I'm getting at is, could I implement hardware acceleration to decompress that stream, such as the Broadcom CrystalHD. It is said (through loose google searches) that ffmpeg now uses the crystalhd card to decompress video when available.
ffmpeg isn't required for the devices to work. All you should need to do is load the solo6010 driver and the devices will load. The card supports resolutions of 352x240, 720x480 and 720x240. Camera resolution does not equal card resolution, so keep that in mind.

The card you purchased does MPEG-4 compression on the card. We will have an H.264 card out soon, but it will be the same compression (on the card), so there's not a way to 'upgrade' the card from MPEG-4 to H.264 without purchasing another card.

Zoneminder has to decompress the video stream, perform an analysis, then save each image as a separate JPEG. This is really counter productive for a hardware compression card, but it's how Zoneminder does things so there's nothing we can do. To make true use of the compression (and the on-board motion detection) then you would need to use our software, write your own, or spend months (?) modifying the way Zoneminder does things.

You still gain on-card de interlacing, so it's not a total loss to use these cards with Zoneminder, and you will gain performance compared to software compression cards (You can obtain 'real' FPS, instead of having to wait for the chip to switch inputs). So, 720x480 @ 15FPS (for a 8 port card) is possible instead of @10FPS (since software compression cards have to multiplex the port). You also have the 'display' port, which is a separate stream, that lets you control the tv output on the card. For example, if you wanted to put cameras 1-4 in a quad view on the composite output off the card you would run:

mplayer tv://0/4

mplayer is another utility to play the MJPEG devices:

mplayer -tv device=/dev/video1:outfmt=mjpeg tv://
Last edited by curtishall on Sun Aug 15, 2010 7:29 pm, edited 1 time in total.
--
Curtis Hall
Bluecherry
www.bluecherrydvr.com
store.bluecherry.net
williamthrilliam
Posts: 7
Joined: Wed Aug 11, 2010 12:05 am

Post by williamthrilliam »

Ok, well, I have zoneminder up and running. I don't know if you can help me with this one Curtis, but any help is appreciated.

Debug log when I open up "Garage" /dev/video1 V4L2 320x240 NTSC greyscale

Code: Select all

08/15/10 16:14:15.090005 zmc_dvideo1[-1].INF-zm_debug.c/292 [New Debug Level = 1, New Debug Log = /tmp/zm_debug.log.04566]
08/15/10 16:14:15.090456 zmc_dvideo1[-1].DB1-zm_monitor.cpp/1712 [Got 1 monitors]
08/15/10 16:14:15.090892 zmc_dvideo1[-1].DB1-zm_monitor.cpp/338 [monitor purpose=1]
08/15/10 16:14:15.090930 zmc_dvideo1[-1].DB1-zm_monitor.cpp/345 [mem.size=3073524]
08/15/10 16:14:15.094041 zmc_dvideo1[-1].DB1-zm_zone.cpp/50 [Initialised zone 0/All - 1 - 320x240 - Rgb:ff0000, CM:3, MnAT:15, MxAT:0, MnAP:50, MxAP:75000, FB:3x3, MnFP:50, MxFP:50000, MnBS:10, MxBS:0, MnB:0, MxB:0, OF: 0]
08/15/10 16:14:15.104009 zmc_dvideo1[-1].DB1-zm_monitor.cpp/458 [Monitor Garage has function 2]
08/15/10 16:14:15.104057 zmc_dvideo1[-1].DB1-zm_monitor.cpp/459 [Monitor Garage LBF = '%N - %y/%m/%d %H:%M:%S', LBX = 0, LBY = 0]
08/15/10 16:14:15.104077 zmc_dvideo1[-1].DB1-zm_monitor.cpp/460 [Monitor Garage IBC = 40, WUC = 25, pEC = 10, PEC = 10, EAF = 1, FRI = 1000, RBP = 7, FM = 0]
08/15/10 16:14:15.104346 zmc_dvideo1[-1].DB1-zm_zone.cpp/889 [Got 1 zones for monitor Garage]
08/15/10 16:14:15.104401 zmc_dvideo1[-1].DB1-zm_zone.cpp/50 [Initialised zone 6/All - 1 - 320x240 - Rgb:ff0000, CM:3, MnAT:25, MxAT:0, MnAP:2304, MxAP:57600, FB:3x3, MnFP:2304, MxFP:57600, MnBS:1536, MxBS:0, MnB:1, MxB:0, OF: 0]
08/15/10 16:14:15.113805 zmc_dvideo1[-1].DB1-zm_monitor.cpp/1814 [Loaded monitor 6(Garage), 1 zones]
08/15/10 16:14:15.113838 zmc_dvideo1[-1].INF-zmc.cpp/188 [Starting Capture]
08/15/10 16:14:15.114214 zmc_dvideo1[-1].FAT-zm_local_camera.cpp/386 [Failed to set video format: Invalid argument]
08/15/10 16:14:15.114650 zmc_dvideo1[-1].INF-zm_signal.cpp/64 [Got signal 6 (Aborted), exiting and forcing backtrace]
curtishall
Posts: 440
Joined: Sat Sep 25, 2004 12:45 am
Location: Fulton, MO

Post by curtishall »

Yea, this is a bug in Zoneminder. If you save the jpeg to disk and load it that way it usually works...but Zoneminder can't access the MJPEG encoder.

Your best bet is mess around with piping the video in from ffmpeg, or wait for the patch to use the MPEG-4 encoder.
--
Curtis Hall
Bluecherry
www.bluecherrydvr.com
store.bluecherry.net
curtishall
Posts: 440
Joined: Sat Sep 25, 2004 12:45 am
Location: Fulton, MO

Post by curtishall »

In order to use a (higher) resolution you need to set the resolution (once) and the driver will stick to that resolution. Opening the device up in vlc, mplayer and (maybe?) ffmpeg with the resolution setting you need (and the device supports) should be all you need to do. You would need to run this once on startup as the changes aren't saved.
--
Curtis Hall
Bluecherry
www.bluecherrydvr.com
store.bluecherry.net
curtishall
Posts: 440
Joined: Sat Sep 25, 2004 12:45 am
Location: Fulton, MO

Post by curtishall »

curtishall wrote:In order to use a (higher) resolution you need to set the resolution (once) and the driver will stick to that resolution.
You could try this mplayer command to manually set the resolution
mplayer -tv device=/dev/video1:width=704:height=480:outfmt=mjpeg:fps=25:decimation=1 tv://
--
Curtis Hall
Bluecherry
www.bluecherrydvr.com
store.bluecherry.net
mastertheknife
Posts: 678
Joined: Wed Dec 16, 2009 4:32 pm
Location: Israel

Re: BlueCherry BC-08240A

Post by mastertheknife »

Hi,

Thanks to allangood's report, it seems not all hope is lost and it actually supports the MJPEG capture palette, so it can be used in ZoneMinder with a patch i created, or through mjpg_streamer.

mastertheknife
Kfir Itzhak.
curtishall
Posts: 440
Joined: Sat Sep 25, 2004 12:45 am
Location: Fulton, MO

Re: BlueCherry BC-08240A

Post by curtishall »

Just FYI, the MJPEG encoder on this card will not support deinterlacing. Only the MPEG4|H.264 encoder will. Also, make sure you are using the latest driver (https://github.com/bluecherrydvr/solo6x10). Previously you linked to a PPA, which hasn't been updated in quite some time.
--
Curtis Hall
Bluecherry
www.bluecherrydvr.com
store.bluecherry.net
Locked