Author Topic: Newbie camera question  (Read 8773 times)

jgalak

  • Regular Poster
  • **
  • Posts: 26
    • View Profile
Newbie camera question
« on: July 04, 2012, 08:27:38 pm »
I am in the early stages of designing an automation system for my new house, and one of the things I'd like to do is have surveillance cameras.  To that end, I have a few questions:

1) Do I understand correctly that with IP cameras I can have either pan/tilt/zoom, or motion-triggered events, but not both?

2) With motion triggered events, is the system able to exclude non-human motion (cats, etc.)?

3) In terms of IP vs. analog cameras, what are the pluses and minuses of each approach?  I plan on a mix of indoor and outdoor cameras, and see at least 3 different options - IP cameras, analog going to motion capture cards (I am expecting about 10-12 cameras, are there any cards that can support that many inputs?), or analog going to a separate security DVR (designed for multiple cameras), most of which have an IP output, not sure if anyone's used any of these with Linux MCE.

I've heard that IP cameras can be laggy, by as much as 8 seconds or so, any truth to that? 

Also, if I have IP cameras and want to output to a TV, I assume I can do that through a media director, but how's the quality in those cases?  Can I have a media director with an HDMI output to get good quality video on the screen?  In the past, hooking up a computer to a TV (using composite or S-video) has left much to be desired in terms of quality, never tried it on an HD TV with HDMI connections.

Thanks,
Juliean.


Marie.O

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 3676
  • Wastes Life On LinuxMCE Since 2007
    • View Profile
    • My Home
Re: Newbie camera question
« Reply #1 on: July 04, 2012, 09:42:37 pm »
There is currently development happening in terms of advanced IP camera support.

If you a bit of digging, you will find out, that atm the speed at which LinuxMCE can update the camera images isn't very good, especially when you are using multiple cameras.

sambuca

  • Guru
  • ****
  • Posts: 462
    • View Profile
Re: Newbie camera question
« Reply #2 on: July 05, 2012, 02:26:33 pm »
Q 1 and 2 really depend on the ip camera itself and not lmce.

As posde said, there is development on using more advanced features of ip cameras like built in motion detection. If you use analog cameras you will need the motion wrapper to detect motion. This is a program that runs on the core and checks for motion in the video stream, assuming you dont have a video card with motion detection.

Br,
Sambuca

JaseP

  • Addicted
  • *
  • Posts: 526
    • View Profile
    • JaseP's LinuxMCE Wiki User page
Re: Newbie camera question
« Reply #3 on: July 05, 2012, 03:12:48 pm »
I am in the early stages of designing an automation system for my new house, and one of the things I'd like to do is have surveillance cameras.  To that end, I have a few questions:

...
[ #'d Qs omitted ]
...

I've heard that IP cameras can be laggy, by as much as 8 seconds or so, any truth to that? 

Also, if I have IP cameras and want to output to a TV, I assume I can do that through a media director, but how's the quality in those cases?  Can I have a media director with an HDMI output to get good quality video on the screen?  In the past, hooking up a computer to a TV (using composite or S-video) has left much to be desired in terms of quality, never tried it on an HD TV with HDMI connections.

Thanks,
Juliean.

I'll let the experts comment on the more technical stuff,... But as to lag and quality, I can help a little. Yes, IP cameras will be laggy over an internet connection, on any kind of system, not just LinuxMCE. I have a MCV Vera as my primary Z-wave controller and can tell you that, at most, you'll get a snapshot every 5 seconds, even locally (but the local limitation is more software than hardware).

As for quality of the image, remember that these cameras are usually standard VGA resolution (640x480) or lower, which is going to look badly pixelated unless the images are post-processed for anti-aliasing, smoothing, etc. Combine that with non-optimal lighting conditions, and well, you get what you get. Even low-light cameras have trouble at some light levels, and those that have night-vision have trouble at the transition point, between regular and night-vision. If you add an hdmi connection to the mix, you might even have a situation where the TV is further adjusting the image from the MD, depending on the TV... which can lead to artifacts in the image.

So as for an hdmi connection, try playing back an avi file that was filmed at VGA resolution, ... That's likely the top qualify you can expect from your camera setup (and less for poor lighting conditions).
See my User page on the LinuxMCE Wiki for a description of my system configuration (click the little globe under my profile pic).

jamo

  • Guru
  • ****
  • Posts: 463
    • View Profile
    • LMCE user Page
Re: Newbie camera question
« Reply #4 on: July 05, 2012, 04:04:36 pm »
I have one cheap IP Camera attached to my system and it is working really well. It is only 640x480 res so the limitation is more at the camera side. Viewing it from an MD is fine except that occasionally there is a sort of top-to-bottom screen refresh but I think that may be related to the motion detection software because it only happens when motion is detected. Still very easy to see what is going on and nothing like 5 seconds lag at all. In fact, I have an event that pops the camera up on my main MD screen whenever motion is detected (provided you're not in the middle of a movie) and you can immediately see what's going on (the camera watches the driveway, gate and parked cars).

Can't comment on what will happen if I add more (though I do plan to) and can't compare to analog but I personally like the simplicity of IP and the fact that I can access it from a browser independently of my LMCE system.

I'm sold on the motion-based recordings as well and plan to add more cameras. Very useful to be able to look back in time and see what happened around your property at a particular time.

As with all LMCE projects-> start small and get the hang of the capabilities with a couple of devices. It's very difficult to know what will work best until you've had some hands on experience.

EDIT: PS, Possy, I did do some digging but could not fiind references to the new development around IP Cameras (and speed issues) of which you speak. This is a topic of great interest to me so please point me in the right direction so I can stay in the loop. Thanks.

EDIT2: Oh, I see Sambuca jumped in there and I missed the post. For what it's worth, I for one would prefer to keep motion detection in the realm of motion wrapper or some other wrapper software in LMCE rather than relying on the Camera's built in detection because my feeling is these features will be of greatly varying functionality and we'll have to get to grips with a great number of different devices. I like the fact that at the moment any IP Camera that you can get a video stream from, you can use in LMCE. But that's just me ;-)
« Last Edit: July 05, 2012, 04:09:20 pm by jamo »

Marie.O

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 3676
  • Wastes Life On LinuxMCE Since 2007
    • View Profile
    • My Home
Re: Newbie camera question
« Reply #5 on: July 05, 2012, 04:25:26 pm »
Jamo,

a couple of moons ago some Russian complained about speed of cameras, and they created an inhouse solution for them, that worked fine. Unfortunately, we never heard again from him.

sambuca is working on a new advanced camera device. This does not mean, the old interface will go away.

RE picture quality: you get what you pay for. If you pay a few bucks, you get a few pixels, if you pay mucho bucks, you get mucho pixels ;)

jamo

  • Guru
  • ****
  • Posts: 463
    • View Profile
    • LMCE user Page
Re: Newbie camera question
« Reply #6 on: July 05, 2012, 09:23:13 pm »
Jamo,

a couple of moons ago some Russian complained about speed of cameras, and they created an inhouse solution for them, that worked fine. Unfortunately, we never heard again from him.

sambuca is working on a new advanced camera device. This does not mean, the old interface will go away.

RE picture quality: you get what you pay for. If you pay a few bucks, you get a few pixels, if you pay mucho bucks, you get mucho pixels ;)
Cool, that all sounds good. I'm planning on putting in a range of cameras from a few bucks to a a few more bucks so I'll report back.

JaseP

  • Addicted
  • *
  • Posts: 526
    • View Profile
    • JaseP's LinuxMCE Wiki User page
Re: Newbie camera question
« Reply #7 on: July 05, 2012, 10:18:40 pm »
@ Jamo,...

I should clarify my earlier statement,... Five seconds wasn't the lag, but the timing between screen shots from the so-called "live" feed,... The (MCV Vera) system doesn't do (true) live video, due to the bandwidth restrictions of the service host. With live feeds,  I've noticed actual live video lag of 1-3 seconds over LAN, depending on hardware... with both LinuxMCE and other systems/devices. You notice it more when you're in visual and earshot range of the devices. With my one USB webcam hooked into LinuxMCE, the delay's about 1 second over LAN.
See my User page on the LinuxMCE Wiki for a description of my system configuration (click the little globe under my profile pic).

mkbrown69

  • Guru
  • ****
  • Posts: 213
    • View Profile
Re: Newbie camera question
« Reply #8 on: July 06, 2012, 03:37:41 am »
One of the interesting things that kmotion2 does, to improve performance, is that it grabs images from the camera to a RAM disk in /dev/shm, and runs motion (and other processing) against the images in the RAM disk.  It also spools them back out to disk for archival purposes.  I've been looking at possibly integrating it's functionality, but Kmotion2 and LMCE are both complicated systems, and I haven't made much headway into it yet (still trying to figure out both, and what parts should/could be integrated where).  I was considering what baby steps could be made, when I noticed Sambuca working on the Advanced IP camera template.  I have a D-Link DCS-932L configured with it right now, and was considering posting for suggestions as to the configuration options so I could help test it.

I thought that I should point out the RAM disk thing, as that is something that should be implemented across the board (if the Dev's choose to do so), so that it could be leveraged by all camera templates as infrastructure. It could also tie in with other's suggestions to move the caamera's storage location to the media pools, vs /home, as many seem to be running with small OS drives.

Just some thoughts for consideration...

/Mike

jamo

  • Guru
  • ****
  • Posts: 463
    • View Profile
    • LMCE user Page
Re: Newbie camera question
« Reply #9 on: July 06, 2012, 08:30:36 am »
I'll have a look at the lag thing once I have someone else back in the house who I can commission to go and perform in front of the camera. The dogs have not been trained to that degree. Will compare the direct feed to the camera web page with the LMCE camera viewer in the security scenarios.

Glad you're still fiddling with kmotion, Mike. What, apart from the RAM disk buffering, does kmotion bring to the party? I had initially assumed it was just a graphical wrapper for motion and would not add functionality beyond visualisation.

davegravy

  • Addicted
  • *
  • Posts: 551
    • View Profile
Re: Newbie camera question
« Reply #10 on: July 06, 2012, 03:21:53 pm »
... once I have someone else back in the house who I can commission to go and perform in front of the camera. The dogs have not been trained to that degree.


You might ask bongowongo... I gather he's fairly experienced with this :p

mkbrown69

  • Guru
  • ****
  • Posts: 213
    • View Profile
Re: Newbie camera question
« Reply #11 on: July 09, 2012, 06:49:06 pm »
Glad you're still fiddling with kmotion, Mike. What, apart from the RAM disk buffering, does kmotion bring to the party? I had initially assumed it was just a graphical wrapper for motion and would not add functionality beyond visualisation.

Jamo,

Kmotion2 brings a few things (as a stand-alone package), but not all apply in the LMCE context.  Some of those features can be replicated with existing LMCE features.  So, I was looking to try and understand both, rather than just bolting on Kmotion2 and incurring the wrath of Thom. ;)

  • Fire off scripts (like e-mails w/picture attachments) when motion events occur (some functions could be done with LMCE events)
  • Ability to configure motion masks in the Web GUI (doesn't presently exist in LMCE)
  • A timeline view on a per-camera basis (I'm still trying to understand LMCE and it's alerts view)
  • Selectable multi-camera views, single , pairs, quads, up to 16 cameras
  • Motion conf file configuration using a web GUI ('motion wrapper' and individual devices in LMCE)
  • motion executable service management (done with motion wrapper and/or OS init scripts in LMCE)
  • RAM-disk based processing, for multi-camera performance improvements

The big ones for me were the Mask configuration (mask off areas that you don't want triggering motion events), the firing off of scripts/e-mails/events, and the camera views.  I'm going to back-burner this project until I get the CM-19a 'mochad' driver done, and look at what the Advanced IP Camera template will do for me...  Too many projects on the go right now...

HTH!

/Mike

l3mce

  • NEEDS to work for LinuxMCE
  • ***
  • Posts: 1084
    • View Profile
Re: Newbie camera question
« Reply #12 on: July 09, 2012, 08:13:05 pm »
Using our unemplimented GStreamer for this is something I was thinking about.

svn co http://svn.linuxmce.org/svn/branches/LinuxMCE-1004/src/gstreamer-player
It currently creates a gstreamer named Xine_Player  because I was just hacking around learning the system, and dropped this in over Xine_Player using the existing Xine_Plugin. A couple of quick name changes from Xine to GStreamer will give it its own name if you don't want to do that. I am picking this project back up for sort of a swiss army knife player of our own for various things. I had abandoned it previously. See the readme/comments in SVN, for prerequisites.


see http://wiki.oz9aec.net/index.php/Gstreamer_cheat_sheet#From_recorded_video

And I think this is pretty doable pretty easy pretty quick... and could actually record h.264. A schema for recording blocks/size allotment would need to be developed. Then our generic remote could be used... the only real pain in the but is creating/populating a media grid.

I think it could be pretty slick.
I never quit... I just ping out.

jamo

  • Guru
  • ****
  • Posts: 463
    • View Profile
    • LMCE user Page
Re: Newbie camera question
« Reply #13 on: July 10, 2012, 09:27:30 am »
Mike

It does help, thanks. I hope to also address (or at least understand) some of this stuff once I've had success or complete failure sorting out the gamepad stuff. Thanks for the info regarding Kmotion's feature set.
  • Event-based stuff
    I have had some basic success setting up a little pop-pup of my camera whenever motion is detected. I have it on my TV room MD which is usually on playing music in the backround and displaying our photogallery. It works nicely because it grabs your attention if you're in the living area and soemone's stealing the car out the driveway etc, and immediately shows you what's happening. Quite neat. Sort of electronic curtain-twitching. I did, however, have to set the event criteria to not interrupt a movie.. that can be annoying.

    From this little foray into event setup I can tell you that it is fairly arcane as expected but looks pretty powerful once you get the hang of it and I'm sure with some work will be able to do most of the things you ask.
  • motion masks
    Shucks, I thought that was standard with motion as well? Or is it just the webconfig that isn't available? I haven't tried it because I'm waiting for my next camera... the gateCAM gets too much motion with cars going past etc, I'm hoping to set up my next camera almost as an outdoor beam- looking at part of the estate that should only be accessed by authorised personnel and then masking off the dog-height parts.

  • timeline view
    Nice. This is a feature I'd really like. Currently I view my motion events logs manually - just open a file browser from my desktop machine and based on date/time and file size I can see any that are interesting. But that's very manual. I had thought of trying to code some sort of timeline into a php page... something that picks up the date/times by filename and then possibly just marks the "events" on a graph or something... then click the event to view it. But there are other options too... I thought of some software that actually fakes a continuous video stream by assuming the last frame from the last motion event clip stays constant until the first frame of the next one and then allowing you to view any date/time like that.

The rest sounds cool too, but those are the ones that initially caught my eye.

L3: I'm going to read more about the Gstreamer thing... that also sounds very promising for this and other things too. Darn, so little time. Why didn't my dad setup that trust fund?