GSVideo: why doesn't read my external DVD camera firewire?
in
Contributed Library Questions
•
2 years ago
I am new to Processing. I'll be very grateful if somebody can help me. I am not able to captured into Processing from my IIDC FireWire Video/ DVCPRO HD (1080i50) camera.
When I open Photobooth or any other programme it will recognise the camera connected through the Firewire, but I can't make it work through Processing, instead I get the integrated webcam of my computer Buiilt-in_isight.
I did lots of trials. It reads the camera in Quick time version 10. My operating system,: Mac ox 10.6.8
My camera is a sony full HD 1080.
I'm using Processing 1.5.1 and GSVideo 0.9
Thanks you in advance.
The option should be [1] "DVCPRO HD (1080i50)" but I tried to replace all the different options that appears and none of them works.
[0] "DV Video"
[1] "DVCPRO HD (1080i50)"
[2] "DVCPRO HD (1080i60)"
[3] "DVCPRO HD (720p25/50)"
[4] "DVCPRO HD (720p60)"
[5] "Google Camera Adapter 0"
[6] "Google Camera Adapter 1"
[7] "IIDC FireWire Video"
[8] "USB Video Class Video"
This is the code I am using:
import processing.opengl.*;
import codeanticode.glgraphics.*;
import codeanticode.gsvideo.*;
GSCapture cam;
GLTexture tex;
void setup() {
size(640, 480, GLConstants.GLGRAPHICS);
cam = new GSCapture(this, 640, 480);
// Use texture tex as the destination for the camera pixels.
tex = new GLTexture(this);
cam.setPixelDest(tex);
cam.play();
/*
// You can get the resolutions supported by the
// capture device using the resolutions() method.
// It must be called after creating the capture
// object.
int[][] res = cam.resolutions();
for (int i = 0; i < res.length; i++) {
println(res[i][0] + "x" + res[i][1]);
}
*/
/*
// You can also get the framerates supported by the
// capture device:
String[] fps = cam.framerates();
for (int i = 0; i < fps.length; i++) {
println(fps[i]);
}
*/
}
void captureEvent(GSCapture cam) {
cam.read();
}
void draw() {
// If there is a new frame available from the camera, the
// putPixelsIntoTexture() function will copy it to the
// video card and will return true.
if (tex.putPixelsIntoTexture()) {
image(tex, 0, 0, width, height);
}
}
When I open Photobooth or any other programme it will recognise the camera connected through the Firewire, but I can't make it work through Processing, instead I get the integrated webcam of my computer Buiilt-in_isight.
I did lots of trials. It reads the camera in Quick time version 10. My operating system,: Mac ox 10.6.8
My camera is a sony full HD 1080.
I'm using Processing 1.5.1 and GSVideo 0.9
Thanks you in advance.
The option should be [1] "DVCPRO HD (1080i50)" but I tried to replace all the different options that appears and none of them works.
[0] "DV Video"
[1] "DVCPRO HD (1080i50)"
[2] "DVCPRO HD (1080i60)"
[3] "DVCPRO HD (720p25/50)"
[4] "DVCPRO HD (720p60)"
[5] "Google Camera Adapter 0"
[6] "Google Camera Adapter 1"
[7] "IIDC FireWire Video"
[8] "USB Video Class Video"
This is the code I am using:
import processing.opengl.*;
import codeanticode.glgraphics.*;
import codeanticode.gsvideo.*;
GSCapture cam;
GLTexture tex;
void setup() {
size(640, 480, GLConstants.GLGRAPHICS);
cam = new GSCapture(this, 640, 480);
// Use texture tex as the destination for the camera pixels.
tex = new GLTexture(this);
cam.setPixelDest(tex);
cam.play();
/*
// You can get the resolutions supported by the
// capture device using the resolutions() method.
// It must be called after creating the capture
// object.
int[][] res = cam.resolutions();
for (int i = 0; i < res.length; i++) {
println(res[i][0] + "x" + res[i][1]);
}
*/
/*
// You can also get the framerates supported by the
// capture device:
String[] fps = cam.framerates();
for (int i = 0; i < fps.length; i++) {
println(fps[i]);
}
*/
}
void captureEvent(GSCapture cam) {
cam.read();
}
void draw() {
// If there is a new frame available from the camera, the
// putPixelsIntoTexture() function will copy it to the
// video card and will return true.
if (tex.putPixelsIntoTexture()) {
image(tex, 0, 0, width, height);
}
}
1