Capturer une image a partir d'une webcam
Bonjour a tous,
J'ai une webcam sur un robot, j'arrive a voir les images en live a l'aide de ce code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
| public void playVideo() {
CaptureDeviceInfo captureDevice = CaptureDeviceManager.getDevice("vfw:Microsoft WDM Image Capture (Win32):0");
//
MediaLocator mediaLocator = captureDevice.getLocator();
try {
//Prend la dataSource
ds = Manager.createDataSource(mediaLocator);
// Fait la connection avec la date source
ds.connect();
System.out.println("ds.connect");
//Crée le processeur de la data source
proc = Manager.createProcessor(ds);
proc.realize();
while (proc.getState() != proc.Realized) {
attend(10);
}
// lie la data source du processeur
dataOriginal = proc.getDataOutput();
// démarre le processeur
proc.start();
while (proc.getState() != proc.Started) {
attend(10);
}
// fait un clone de la data source du processeur pour l'affichage
dataCloned = Manager.createCloneableDataSource(dataOriginal);
// crée un player avec la data source clonée
player = Manager.createPlayer(dataCloned);
System.out.println("player cree");
player.realize();
while (player.getState() != player.Realized) {
attend(10);
}
System.out.println("player.realized");
// démarrage de la lecture
player.start();
System.out.println("player.start");
while (player.getState() != player.Started) {
attend(10);
}
System.out.println("player started");
} catch (IOException ex) {
Logger.getLogger(FluxVideo.class.getName()).log(Level.SEVERE, null, ex);
} catch (NoProcessorException ex) {
Logger.getLogger(FluxVideo.class.getName()).log(Level.SEVERE, null, ex);
} catch (NoDataSourceException ex) {
Logger.getLogger(FluxVideo.class.getName()).log(Level.SEVERE, null, ex);
} catch (NoPlayerException ex) {
Logger.getLogger(FluxVideo.class.getName()).log(Level.SEVERE, null, ex);
}
} |
(Je ne met pas le reste de la classe. Mais si vous en avez besoin dites moi.)
Mais maintenant, j'aimerais pouvoir capturer une image et l'enregistrer. J'ai déjà fait des recherches mais les codes qui j'ai trouvé pour l'instant ne fonctionne pas. Si qqun a des idées.
Merci d'avance