We closed this forum 18 June 2010. It has served us well since 2005 as the ALPHA forum did before it from 2002 to 2005. New discussions are ongoing at the new URL http://forum.processing.org. You'll need to sign up and get a new user account. We're sorry about that inconvenience, but we think it's better in the long run. The content on this forum will remain online.
Page Index Toggle Pages: 1
IP Camera capture (Read 2232 times)
IP Camera capture
Jan 21st, 2009, 9:24pm
 
I'm just diving into this, I did skim thought the reference and have had no trouble capturing from a web cam. I have been considering using processing for a project that involves displaying a video stream from an IP Camera. If anyone could point me in the right direction about how the best way to go about this is, I'd much appreciate it!


Re: IP Camera capture
Reply #1 - Mar 18th, 2009, 10:59am
 
Hi

Did you figure something out?
I just ran into the same dilemma, I can't even find a camera where it will let
me capture the images directly from the IP address, and not go through the browser interface first:/
Re: IP Camera capture
Reply #2 - Mar 18th, 2009, 12:20pm
 
You won't be able to use the Capture class, but you should be able to just do:

PImage img=loadImage("http://192.168.0.2/image.jpg"); //or whatever the URL of the image is when you go in via a browser.
Re: IP Camera capture
Reply #3 - Mar 18th, 2009, 4:00pm
 
Hi,

I'm trying to do the same thing.

Loading the image works fine but it is very slow. I only get about 4 frames per seconds. I'm loading the image every void draw()

Is there a way to speed it up? or at least let the rest of the program run at normal speed not 4 fps.

So my sensors and other udp network connection keep working normal.



Thanks.
Re: IP Camera capture
Reply #4 - Mar 18th, 2009, 11:07pm
 
ok, so I'm using an Axis 207w.

I'm not even able to get a slow feed of the images. I get this error over and over again till I kill the program. I'm obviously missing something:

Could not find a method to load http://152.117.205.34/axis-cgi/mjpg/video.cgi?resolution=320x240

EDIT:
what I'm really trying to do is use that video stream in the url I just posted. someone HAS to know how to do this. the company wouldn't include a motion jpeg stream if you can't use it! Processing really seems like the perfect environment to make this easy?
Re: IP Camera capture
Reply #5 - Mar 18th, 2009, 11:55pm
 
I don't think Processing can use MJPEG by default.. there should be a Java library somewhere that can.. how easy it'd be to integrate with Processing though I don't know.
Re: IP Camera capture
Reply #6 - Mar 19th, 2009, 12:00am
 
there appears to be one, jipcam. but thus far, I have been unable to even get it working in a java applet. if anyone has experience with this, it'd be great to get some pointers. thanks

EDIT:

so I have been unsuccessful finding useful documentation on jipCam, but I did stumble across a post on a sun forum with a solution using java without JMF and jipCam.
the 19th post. major kudos to Carl Gould
http://forums.sun.com/thread.jspa?threadID=494920&start=15

this has been helping me big time seeing what's going on. hopefully it helps you too. Once I get all my stuff developed based off of this example, I hope to be able to integrate this into a processing app?
Re: IP Camera capture
Reply #7 - May 6th, 2010, 6:11am
 
     
URGENT HELP REQUIRED LINKING cam to processing

Hi there, i m wanting to link 4 IP cameras to processing.

I m trying to access the path of my ip cameras , one is seen below,however there is a problem with the access viewing the live  video stream,

DESPERATE FOR ANY HELP TO MOVE THIS FORWARD AS TIME IS RUNNING OUT

import codeanticode.gsvideo.*;
import hypermedia.video.*;
GSPipeline pipe;
OpenCV opencv;
void setup() {
//  pipe = new GSPipeline(this, "gnomevfssrc location=http://192.168.1.118/axis-cgi/mjpg/video.cgi?resolution=640x480 ! jpegdec ! ffmpegcolorspace");
//  http://192.168.2.3/jpg/image.jpg
pipe = new GSPipeline(this, "gnomevfssrc location=http://192.168.2.3/mjpg/video.mjpg");
opencv = new OpenCV( this );
opencv.allocate(width,height);
}
void draw() {
if (pipe.available() == true) {
   pipe.read();
   opencv.copy(pipe, 0, 0, 640, 480, 0, 0, width, height);
   print ("   hello    ");
}
print ("   not found   ");
}
Page Index Toggle Pages: 1