Many cards have four or even more inputs. Anyway a single bt chip (a single device) can handle up to four inputs with a multiplexer. When an input is selected, you can gain a framerate of 25 fps (PAL). I must acquire images from multiple cameras (at least two) continuosly. Does anybody know hot to get the best framerate per input (ideally 25/4 fps less switch time) grabbing sequentially from all the avaiable channels? With the following mode I can achieve only 4 fps per camera (with 2 cameras): while (1) { switchInput(0) read(); ... (process image) switchInput(1) read() ... (process image) } With the following mode (memory mapped buffers) I can achieve 12 fps per camera, but the images are corrupted (contains informations from more than a single camera) when using more than 1 buffer, and using 1 buffer the result is tipically the same as reading with read(): while (1) { dqbuf(); ... (process image) switchInput(1) qbuf(); dqbuf(); ... (process image) switchInput(0) qbuf(); } I've tried inserting some usleep(), from 10 to 80 msec, in different places, in order to synchronize, but there are corrupted images anyway. I repeat, many cards have four inputs, so I suppose that will exist a method to grab from multiple cameras and gain a real-time framerate. Thanks, Fabrizio Cornelli and Sandro Bosio