begin process at 2010 02 10 09:17:49
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Api

 > WEBCAM LIB, VIDEO FOR JAVA, API JAVA JNA POUR AVICAP.DLL, MSVFW.DLL, VFW.H

WEBCAM LIB, VIDEO FOR JAVA, API JAVA JNA POUR AVICAP.DLL, MSVFW.DLL, VFW.H


 Information sur la source

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Api Classé sous :webcam, avicap, JNA, vwh, vidéo window Niveau :Débutant Date de création :13/02/2008 Date de mise à jour :24/02/2008 17:43:04 Vu / téléchargé :10 328 / 542

Auteur : the_wwt

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (13)
Ajouter un commentaire et/ou une note


 Description

"Certaines webcams (Philips SPC520NC...) ne fonctionnent pas avec JMF", dont la mienne, d'après ce constat j'ai réalisé une librairie utilisant du code natif via JNA basée sur avicap.dll et vfw.h.

Cette librairie fonctionnant exclusivement sous win32 permet d'accéder et de communiquer avec le driver d'une ou plusieurs webcam.
Aussi pas moyen à l'heure actuelle de l'intégrer avec AWT ou Swing, seulement avec la SWT.
Le développement continue...

Je me suis basé sur la description de Video For Window dont la doc est disponible ici : http://msdn2.microsoft.com/en-us/library/ms712699% 28VS.85%29.aspx

La classe org.hypik.webcamlib.DeviceManager permet de lister tous les drivers installés en renvoyant des instances de org.hypik.webcamlib.device.Device.
Cette dernière propose une API permettant de:
- Créer la fenêtre de la webcam avec les différents styles possibles,
- Se connecter à la webcam,
- Demander à la webcam de copier la frame courante dans le presse-papier,
- Se déconnecter,
- De s'aboner aux erreurs renvoyées par la webcam,
- De s'abonner aux messages de status,
- De s'abonner à chaque frame affichées,
- De récupérer une frame,
- Détruire la fenêtre,
- D'ouvrir les boites de dialogues de configuration proposées par le driver,
- De dispatcher les messages du système vers la fenêtre de la webcam si on utilise pas la SWT ( marche pas avec AWT/Swing)

Le package org.hypik.webcam.compressor permet de décompresser une frame dans un certain format vers un autre. L'api permet de:
-Lister tous les décompresseurs disponible,
-Recherche un décompresseur pour un format d'entrée vers un format de sortie,
-Bien sur de décompresser une frame,

Je vous propose trois classes de tests (Simple, SWT et AWT) pour bien prendre en main la librairie.
Elles peuvent être lancées directement en renommant les fichiers contenu dans bin en .bat.
Pour le test utilisant la swt il vous faut la librairie disponible sur http://www.eclipse.org/swt/

Ci-dessous le code du simple test.

J'espère pouvoir faire évoluer cette librairie rapidement.
Vos retours/suggestions sont les bienvenus.
NB: Toutes mes excuses au pingouin mais j'ai pas le courage de me pencher sur video4linux.
Pierrick Hymbert

Source

  • /**
  • * Webcam Library, version 1.2
  • * The easiest way to manage webcam devices in java.
  • * (c) 2008 Pierrick HYMBERT <pierrick.hymbert@gmail.com>
  • * This library is "PROVIDED AS IS" without guaranty of any kinds.
  • * Webcam Library is freely distribuable under the terms of an MIT-style license.
  • * Visit www.hypik.fr
  • */
  • package org.hypik.webcamlib.test.sample;
  • import java.util.List;
  • import org.hypik.webcamlib.DeviceManager;
  • import org.hypik.webcamlib.device.Device;
  • import org.hypik.webcamlib.device.IWS;
  • import org.hypik.webcamlib.device.listener.DeviceErrorListener;
  • import org.hypik.webcamlib.device.listener.DeviceStatusListener;
  • import com.sun.jna.Native;
  • /**
  • * This class have only a main method to start all webcam devices found in a webcam preview window.
  • * @author Pierrick Hymbert <a href="mailto:pierrick.hymbert@gmail.com">Contact</a>
  • *
  • */
  • public class SimpleTest {
  • /**
  • * Start all webcam devices found in a webcam preview window
  • * @param args N/A
  • */
  • public static void main(String[] args){
  • // Prevent VM crash
  • Native.setProtected(true);
  • // List all devices
  • List<Device> devices = DeviceManager.getAllDevices();
  • try {
  • // Print all device driver name and version
  • for (Device device : devices) {
  • System.out.println("Found: " + device);
  • }
  • } catch (Exception e) {
  • e.printStackTrace();
  • }
  • // Check if at least one device is found
  • if( devices.size() == 0 ){
  • System.err.println("No device found.");
  • System.exit(0);
  • }
  • // Start all webcam preview
  • int x = 0, y = 0;
  • for (Device device : devices) {
  • // Add the listeners
  • device.addDeviceErrorListener(errorListener);
  • device.addDeviceStatusListener(statusListener);
  • // Show preview
  • device.showPreview(x, y, 300, 300, IWS.WS_OVERLAPPEDWINDOW | IWS.WS_VISIBLE, device.getName(), 0, 0);
  • x += 320;
  • if( x > 800 ){
  • x = 0;
  • y += 320;
  • }
  • }
  • // Run all devices loop
  • int deviceDisposed = 0;
  • while( deviceDisposed < devices.size()){
  • deviceDisposed = 0;
  • for (Device device : devices) {
  • if( !device.isDisposed() ){
  • device.readAndDispatch();
  • }else{
  • deviceDisposed++;
  • }
  • }
  • }
  • System.exit(0);
  • }
  • /**
  • * The device error listener.
  • */
  • private static DeviceErrorListener errorListener = new DeviceErrorListener(){
  • /**
  • * Fire the listener that the device throws an error message.
  • *
  • * @param device
  • * The device in error state.
  • * @param errorId
  • * The error id is one of the constants below.
  • * @param errorMessage
  • * The error message.
  • */
  • public void deviceError(Device device, int errorId, String errorMessage) {
  • System.err.println(device + "->" + errorId + ": " + errorMessage);
  • }
  • };
  • /**
  • * The device error listener.
  • */
  • private static DeviceStatusListener statusListener = new DeviceStatusListener(){
  • /**
  • * Fire the listener that the device fire a status message.
  • *
  • * @param device
  • * The device in error state.
  • * @param statusId
  • * The status id is one of the constants below.
  • * @param statusMessage
  • * The status message.
  • */
  • public void deviceStatus(Device device, int statusId, String statusMessage){
  • System.out.println(device + "->" + statusId + ": " + statusMessage);
  • }
  • };
  • }
/**
 * Webcam Library, version 1.2
 * The easiest way to manage webcam devices in java.
 * (c) 2008 Pierrick HYMBERT <pierrick.hymbert@gmail.com>	
 * This library is "PROVIDED AS IS" without guaranty of any kinds.
 * Webcam Library is freely distribuable under the terms of an MIT-style license.
 * Visit www.hypik.fr
 */
package org.hypik.webcamlib.test.sample;

import java.util.List;

import org.hypik.webcamlib.DeviceManager;
import org.hypik.webcamlib.device.Device;
import org.hypik.webcamlib.device.IWS;
import org.hypik.webcamlib.device.listener.DeviceErrorListener;
import org.hypik.webcamlib.device.listener.DeviceStatusListener;

import com.sun.jna.Native;
/**
 * This class have only a main method to start all webcam devices found in a webcam preview window.
 * @author  Pierrick Hymbert <a href="mailto:pierrick.hymbert@gmail.com">Contact</a>
 *
 */
public class SimpleTest {
	/**
	 * Start all webcam devices found in a webcam preview window
	 * @param args N/A
	 */
	public static void main(String[] args){
		// Prevent VM crash
		Native.setProtected(true);
		
		// List all devices
		List<Device> devices = DeviceManager.getAllDevices();
		try {
			// Print all device driver name and version
			for (Device device : devices) {
				System.out.println("Found: " + device);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
		// Check if at least one device is found
		if( devices.size() == 0 ){
			System.err.println("No device found.");
			System.exit(0);
		}
		
		// Start all webcam preview
		int x = 0, y = 0;
		for (Device device : devices) {
			// Add the listeners
			device.addDeviceErrorListener(errorListener);
			device.addDeviceStatusListener(statusListener);
			// Show preview
			device.showPreview(x, y, 300, 300, IWS.WS_OVERLAPPEDWINDOW | IWS.WS_VISIBLE, device.getName(), 0, 0);
			x += 320;
			if( x > 800 ){
				x = 0;
				y += 320;
			}
		}
		
		// Run all devices loop
		int deviceDisposed = 0;
		while( deviceDisposed < devices.size()){
			deviceDisposed = 0;
			for (Device device : devices) {
				if( !device.isDisposed() ){
					device.readAndDispatch();
				}else{
					deviceDisposed++;
				}
			}
		}		
		System.exit(0);
	}
	/**
	 * The device error listener.
	 */
	private static DeviceErrorListener errorListener = new DeviceErrorListener(){
		/**
		 * Fire the listener that the device throws an error message.
		 * 
		 * @param device
		 *            The device in error state.
		 * @param errorId
		 *            The error id is one of the constants below.
		 * @param errorMessage
		 *            The error message.
		 */
		public void deviceError(Device device, int errorId, String errorMessage) {
			System.err.println(device + "->" + errorId + ": " + errorMessage);
		}
	};
	/**
	 * The device error listener.
	 */
	private static DeviceStatusListener statusListener = new DeviceStatusListener(){
		/**
		 * Fire the listener that the device fire a status message.
		 * 
		 * @param device
		 *            The device in error state.
		 * @param statusId
		 *            The status id is one of the constants below.
		 * @param statusMessage
		 *            The status message.
		 */
		public void deviceStatus(Device device, int statusId, String statusMessage){
			System.out.println(device + "->" + statusId + ": " + statusMessage);
		}
	};
}

 Conclusion

A oui... Il vous faut au moins une webcam!!!

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   bin
    •   com
      •   sun
        •   jna
          • PointerNotSafe.classTélécharger ce fichier [Réservé aux membres club]575 octets
    •   org
      •   hypik
        •   conversion
          • YUV2RGB.classTélécharger ce fichier [Réservé aux membres club]782 octets
        •   webcamlib
          •   codecs
            • Codec.classTélécharger ce fichier [Réservé aux membres club]1 473 octets
            • Codecs.classTélécharger ce fichier [Réservé aux membres club]17 821 octets
          •   compressor
            •   jna
              • ICM.classTélécharger ce fichier [Réservé aux membres club]1 832 octets
              • Vfw32$1.classTélécharger ce fichier [Réservé aux membres club]814 octets
              • Vfw32$HIC.classTélécharger ce fichier [Réservé aux membres club]847 octets
              • Vfw32$ICDecompress.classTélécharger ce fichier [Réservé aux membres club]572 octets
              • Vfw32$ICDecompressEx.classTélécharger ce fichier [Réservé aux membres club]621 octets
              • Vfw32$ICInfo.classTélécharger ce fichier [Réservé aux membres club]673 octets
              • Vfw32.classTélécharger ce fichier [Réservé aux membres club]2 160 octets
            • CompressionException.classTélécharger ce fichier [Réservé aux membres club]2 328 octets
            • DecompressVideo.classTélécharger ce fichier [Réservé aux membres club]6 308 octets
          •   device
            •   dialog
              • Dialog.classTélécharger ce fichier [Réservé aux membres club]610 octets
              • VideoCompressionDialog.classTélécharger ce fichier [Réservé aux membres club]1 307 octets
              • VideoDisplayDialog.classTélécharger ce fichier [Réservé aux membres club]1 295 octets
              • VideoFormatDialog.classTélécharger ce fichier [Réservé aux membres club]1 292 octets
              • VideoSourceDialog.classTélécharger ce fichier [Réservé aux membres club]1 292 octets
            •   listener
              • DeviceErrorListener.classTélécharger ce fichier [Réservé aux membres club]2 128 octets
              • DeviceFrameListener.classTélécharger ce fichier [Réservé aux membres club]396 octets
              • DeviceStatusListener.classTélécharger ce fichier [Réservé aux membres club]943 octets
            •   struct
              • WCStruct$CapDriverCaps.classTélécharger ce fichier [Réservé aux membres club]730 octets
              • WCStruct$CapInfoChunk.classTélécharger ce fichier [Réservé aux membres club]500 octets
              • WCStruct$CapStatus.classTélécharger ce fichier [Réservé aux membres club]1 026 octets
              • WCStruct$CaptureParams.classTélécharger ce fichier [Réservé aux membres club]1 059 octets
              • WCStruct$Point.classTélécharger ce fichier [Réservé aux membres club]449 octets
              • WCStruct$VideoHDR.classTélécharger ce fichier [Réservé aux membres club]624 octets
              • WCStruct.classTélécharger ce fichier [Réservé aux membres club]820 octets
            •   utils
              • Utils.classTélécharger ce fichier [Réservé aux membres club]306 octets
            • Device$1.classTélécharger ce fichier [Réservé aux membres club]2 076 octets
            • Device$2.classTélécharger ce fichier [Réservé aux membres club]2 083 octets
            • Device$3.classTélécharger ce fichier [Réservé aux membres club]2 503 octets
            • Device$4.classTélécharger ce fichier [Réservé aux membres club]782 octets
            • Device.classTélécharger ce fichier [Réservé aux membres club]15 017 octets
            • IDevice.classTélécharger ce fichier [Réservé aux membres club]2 667 octets
            • IWS.classTélécharger ce fichier [Réservé aux membres club]1 056 octets
          •   jna
            • AviCap.classTélécharger ce fichier [Réservé aux membres club]766 octets
            • AviCapNative.classTélécharger ce fichier [Réservé aux membres club]784 octets
            • Kernel32.classTélécharger ce fichier [Réservé aux membres club]670 octets
            • User32$BitmapInfo.classTélécharger ce fichier [Réservé aux membres club]702 octets
            • User32$BitmapInfoHeader.classTélécharger ce fichier [Réservé aux membres club]1 255 octets
            • User32$CapDriverCaps.classTélécharger ce fichier [Réservé aux membres club]834 octets
            • User32$capErrorCallback.classTélécharger ce fichier [Réservé aux membres club]641 octets
            • User32$CapInfoChunk.classTélécharger ce fichier [Réservé aux membres club]462 octets
            • User32$CapStatus.classTélécharger ce fichier [Réservé aux membres club]1 080 octets
            • User32$capStatusCallback.classTélécharger ce fichier [Réservé aux membres club]643 octets
            • User32$CaptureParams.classTélécharger ce fichier [Réservé aux membres club]1 054 octets
            • User32$capVideoStreamCallback.classTélécharger ce fichier [Réservé aux membres club]658 octets
            • User32$HOOKPROC.classTélécharger ce fichier [Réservé aux membres club]324 octets
            • User32$HPALETTE.classTélécharger ce fichier [Réservé aux membres club]461 octets
            • User32$MSG.classTélécharger ce fichier [Réservé aux membres club]911 octets
            • User32$POINT.classTélécharger ce fichier [Réservé aux membres club]411 octets
            • User32$RGBQuad.classTélécharger ce fichier [Réservé aux membres club]469 octets
            • User32$VideoHDR.classTélécharger ce fichier [Réservé aux membres club]862 octets
            • User32.classTélécharger ce fichier [Réservé aux membres club]3 785 octets
            • User32Native$CallBack.classTélécharger ce fichier [Réservé aux membres club]747 octets
            • User32Native$CallBackFrame.classTélécharger ce fichier [Réservé aux membres club]736 octets
            • User32Native$HOOKPROC.classTélécharger ce fichier [Réservé aux membres club]342 octets
            • User32Native$MSG.classTélécharger ce fichier [Réservé aux membres club]947 octets
            • User32Native$POINT.classTélécharger ce fichier [Réservé aux membres club]435 octets
            • User32Native.classTélécharger ce fichier [Réservé aux membres club]2 247 octets
            • W32API$1.classTélécharger ce fichier [Réservé aux membres club]708 octets
            • W32API$2.classTélécharger ce fichier [Réservé aux membres club]706 octets
            • W32API$3.classTélécharger ce fichier [Réservé aux membres club]792 octets
            • W32API$4.classTélécharger ce fichier [Réservé aux membres club]788 octets
            • W32API$HANDLE.classTélécharger ce fichier [Réservé aux membres club]763 octets
            • W32API$HANDLEByReference.classTélécharger ce fichier [Réservé aux membres club]1 342 octets
            • W32API$HBITMAP.classTélécharger ce fichier [Réservé aux membres club]422 octets
            • W32API$HDC.classTélécharger ce fichier [Réservé aux membres club]410 octets
            • W32API$HICON.classTélécharger ce fichier [Réservé aux membres club]416 octets
            • W32API$HINSTANCE.classTélécharger ce fichier [Réservé aux membres club]428 octets
            • W32API$HMODULE.classTélécharger ce fichier [Réservé aux membres club]428 octets
            • W32API$HRGN.classTélécharger ce fichier [Réservé aux membres club]413 octets
            • W32API$HWND.classTélécharger ce fichier [Réservé aux membres club]413 octets
            • W32API$LONG_PTR.classTélécharger ce fichier [Réservé aux membres club]553 octets
            • W32API$LPARAM.classTélécharger ce fichier [Réservé aux membres club]520 octets
            • W32API$LRESULT.classTélécharger ce fichier [Réservé aux membres club]523 octets
            • W32API$SIZE_T.classTélécharger ce fichier [Réservé aux membres club]522 octets
            • W32API$SSIZE_T.classTélécharger ce fichier [Réservé aux membres club]523 octets
            • W32API$UINT_PTR.classTélécharger ce fichier [Réservé aux membres club]746 octets
            • W32API$ULONG_PTR.classTélécharger ce fichier [Réservé aux membres club]556 octets
            • W32API$WPARAM.classTélécharger ce fichier [Réservé aux membres club]520 octets
            • W32API.classTélécharger ce fichier [Réservé aux membres club]2 050 octets
            • W32Errors.classTélécharger ce fichier [Réservé aux membres club]309 octets
          •   test
            •   awt
              • AWTFrame.classTélécharger ce fichier [Réservé aux membres club]1 581 octets
              • AWTTest$1.classTélécharger ce fichier [Réservé aux membres club]1 706 octets
              • AWTTest$2.classTélécharger ce fichier [Réservé aux membres club]1 738 octets
              • AWTTest$3.classTélécharger ce fichier [Réservé aux membres club]631 octets
              • AWTTest$4.classTélécharger ce fichier [Réservé aux membres club]1 344 octets
              • AWTTest$5.classTélécharger ce fichier [Réservé aux membres club]1 167 octets
              • AWTTest$6.classTélécharger ce fichier [Réservé aux membres club]1 171 octets
              • AWTTest.classTélécharger ce fichier [Réservé aux membres club]4 378 octets
            •   sample
              • SimpleTest$1.classTélécharger ce fichier [Réservé aux membres club]1 188 octets
              • SimpleTest$2.classTélécharger ce fichier [Réservé aux membres club]1 192 octets
              • SimpleTest.classTélécharger ce fichier [Réservé aux membres club]2 660 octets
              • Test.classTélécharger ce fichier [Réservé aux membres club]1 968 octets
            •   swt
              • CustomizePreview.classTélécharger ce fichier [Réservé aux membres club]545 octets
              • SWTTest$1.classTélécharger ce fichier [Réservé aux membres club]3 256 octets
              • SWTTest$10.classTélécharger ce fichier [Réservé aux membres club]1 204 octets
              • SWTTest$11.classTélécharger ce fichier [Réservé aux membres club]1 133 octets
              • SWTTest$12.classTélécharger ce fichier [Réservé aux membres club]3 979 octets
              • SWTTest$13$1.classTélécharger ce fichier [Réservé aux membres club]2 071 octets
              • SWTTest$13.classTélécharger ce fichier [Réservé aux membres club]780 octets
              • SWTTest$2.classTélécharger ce fichier [Réservé aux membres club]2 063 octets
              • SWTTest$3.classTélécharger ce fichier [Réservé aux membres club]1 390 octets
              • SWTTest$4.classTélécharger ce fichier [Réservé aux membres club]1 987 octets
              • SWTTest$5.classTélécharger ce fichier [Réservé aux membres club]1 620 octets
              • SWTTest$6.classTélécharger ce fichier [Réservé aux membres club]2 126 octets
              • SWTTest$7.classTélécharger ce fichier [Réservé aux membres club]1 608 octets
              • SWTTest$8.classTélécharger ce fichier [Réservé aux membres club]2 442 octets
              • SWTTest$9.classTélécharger ce fichier [Réservé aux membres club]1 605 octets
              • SWTTest.classTélécharger ce fichier [Réservé aux membres club]10 196 octets
          • DeviceManager.classTélécharger ce fichier [Réservé aux membres club]2 939 octets
  •   lib
    • jna.jarTélécharger ce fichier [Réservé aux membres club]372 479 octets
  •   src
  •   test
  • README.txtTélécharger ce fichier [Réservé aux membres club]Voir ce fichier553 octets
  • SAMPLE_TESTTélécharger ce fichier [Réservé aux membres club]72 octets
  • SWT_TESTTélécharger ce fichier [Réservé aux membres club]86 octets
  • webcamlib.jarTélécharger ce fichier [Réservé aux membres club]65 156 octets

Télécharger le zip


 Historique

18 février 2008 13:09:31 :
Ajout des fonctionnalités de la version 1.1 suivantes: -Récupération d'une frame sous forme d'image, -Gestion des boites de dialogues de paramétrage proposées par le driver, -Interfaces pour s'abonner aux messages renvoyées par la webcam, -Implémentation de la méthode isDisposed pour détecter si la fenêtre a été détruite -Refacto du code vers la version 1.1
24 février 2008 14:40:59 :
Ajout du package compressor permettant d'accéder aux routines ICM... de msvfw.dll pour la gestion de la décompression des frames.
24 février 2008 17:43:04 :
Bug dans la recherche de décompresseur. J'avais confondu l'index du décompresseur avec le fccHandler...

 Sources du même auteur

Source avec Zip WEBCAM HTTP SERVEUR LIVE SANS JMF
Source avec Zip Source avec une capture STEGANOGRAPHIE & RSA, SWT

 Sources de la même categorie

ENVOI D'UNE ARBORESSENCE EN JAVA VERS SERVEUR FTP par moumou95
ENREGISTRER L'ARBORESCENCE D'UN JTREE DANS UN XML AVEC JDOM par coltman
Source avec Zip WIZARD JAVA API par aissam36
JCONFIGURATIONMANAGER - GESTION DES CONFIGURATIONS par Francks11
Source avec Zip Source avec une capture FRAGMENTER, DÉFRAGMENTER UN FICHIER par Chatbour

 Sources en rapport avec celle ci

Source avec Zip WEBCAM HTTP SERVEUR LIVE SANS JMF par the_wwt
Source avec Zip SERVEUR DE WEBCAM par Rocco123
Source avec Zip WEBCAM LIVE par madmat1

Commentaires et avis

Commentaire de the_wwt le 13/02/2008 22:50:08

Petite correction:
les fichiers à renommer pour lancer les tests sont à la racine du zip et non pas dans le répertoire bin ( qui lui contient les *.class)
A+
Pierrick

Commentaire de throws le 25/05/2008 10:49:57

Je viens de tester ta lib avec les fichiers SAMPLE_TEST , niquel la webcam de mon portable un fujitsu amilo est toute suite reconnu et me retourne l'image ..
Bon travail ....

Commentaire de Amenophis77 le 10/03/2009 21:02:22 8/10

Très bon programme lol, Je voudrai savoir comment faire pour prendre des photos en mode photo et non en mode vidéo. Car je voudrai utiliser la resolution maximal de ma webcam donc 1280x1024 par Philips ToUcam Pro- PCVC740k---> Pour la photo d'astronomie).
Et aussi, Utiliser la Webcam SPC1300NC Philipps en HD (en test -> Plus grande résolution 3200x2048 en 24bits Usb2. Merci d'avance pour ton aide.

Commentaire de yep666 le 22/04/2009 11:01:27

J'ai pas de webcam sous la main donc je n'ai pas pu tester mais j'ai relevé une petite erreur dans la classe
org.hypik.webcamlib.test.sample.Test
IDevice.WS_SHELL_TRIM cannot be resolved
Sinon les autres classes de test compilent.
En tous cas ton travail m'intéresse beaucoup :)

Commentaire de yep666 le 23/04/2009 09:54:56

J'ai eu l'occasion de tester sur un portable et ça marche impec. Je vais pouvoir reprendre un vieux projet mis dans un carton, merci :)

Commentaire de the_wwt le 23/04/2009 15:57:25

Salut,

enchanté que cette librairie fasse ton bonheur!
N'hésites pas à poser des questions pour enrichir cette page!

Cordialement;
Pierrrick

Commentaire de Amenophis77 le 23/04/2009 19:18:52

Re coucou
Je cherche a utiliser 2 Webcam avec tes focntions.Mais, je trouve pas la solution. Il me dit que j'utilise déja la webcam. Et j'en ai deux lol. il me le propose pas. Je suis entrain de développer un programme perso pour le téléguidage d'un téléscope (port com sans problème). Le but est de suivre une étoile avec la premier Webcam Guide et la 2eme Webcam Longue Pose. Si une personne peux m'aidé lol. Ce serais super sympa ! Après j'attaque la partie analyse des frames de la Webcam Guide.

Merci :p
Aménophis77

Commentaire de the_wwt le 23/04/2009 19:22:38

Bonjour,

Si avec la méthode DeviceManager.getAllDevices(); tu ne reçois qu'un seul device la limitation vient du driver window utilisé par la librairie.

On m'avait déjà remonté ce problème, et j'avoue ne pas avoir de solution.

Bon courage,

Pierrick

Commentaire de Amenophis77 le 23/04/2009 19:28:59

Pourtant quand on utilise ton programme la premier fois il propose bien les webcams, mais pas pour le lancement de la 2eme. il faut peux etre utilisé une thread pour chaque webcam. Pour eviter les comflits !

Commentaire de the_wwt le 23/04/2009 19:34:01

Alors génial!

Essaye de gérer les devices dans des threads séparés...

Cordialement :P

Commentaire de Amenophis77 le 23/04/2009 19:40:56

C'est marrant, car quand on lance 2 programmes. Sa passe nickel. mais c'est pas le but.
Merci lol

Commentaire de yep666 le 06/05/2009 16:37:06

Amenophis, il te suffit de modifier le code de la classe de test pour obtenir ce que tu veux. C'est pas un problème lié à son API à proprement parler.
En revanche dommage que l'enregistrement d'une vidéo ne fonctionne pas. Si un jour j'ai le temps je me pencherais sur la question.
Pour le reste ça fait le job.

Commentaire de zibo3 le 07/10/2009 16:15:14

Bonjour je suis intéressé par une partie de ton code. Dans la class User32Native, tu déclare une fonction :
public int SendMessageA(HWND hWnd, int wMsg, WPARAM wParam, String lParam);

or quand j'utilise cette fonction il semblerait que le string passer en paramètre soit mal reçu par la fenêtre et que ce soit le pointeur du string et non son contenu qui soit envoyé.
As tu une solution ???

Merci

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Comment interroger une webcam ??? [ par ghilliesuit ] Salut !J'aimerais savoir comment je pourrais interroger une webcam avec du code java pour en retirer ce qu'elle film.....Merci d'avance ! Chat Java (IRC) avec photo (et webcam ?) [ par Orkyd ] Bonjour,Je suis webmaster et je cherche a installer un chat java avec photo, c'est à dire un chat ou lorsqu on clic sur un pseudo sa photo apparait. u webcam en java [ par ultraxa ] bonjourComment peut t'on recuperer le flux de donner sortant de la webcam et l'afficher dans une fenetre , tout çaen java!!!merci Photos avec webcam en java [ par mageti ] Salut à tous,Je suis débutant, mais on m'a chargé de faire un programme assez complexe. Pour le moment je m'en sort, mais il me manque de quoi prendre Acquisition et restitution d'images webcam en local [ par projetapplimm ] Nous sommes 4 étudiants en informatique qui cherchent de l'aide pour leur projet d'etude sur JMF et le développement d'une application multimédia dist Récupération du flux vidéo d'une webcam en java [ par romain_seb ] Bonjour tout le monde!Nous sommes deux étudiants qui devont faire un projet pour nos études. On cherche notamment a récupérer le flux d'une webcam bra pilotage automatique d'une webcam [ par zerti ] Bonjourg un projet en reseau et g suis bloqué .g doi piloter une webcam (ki contient une @ ip automatiquement pour kel suit une auteur et g sais pa co Voir les images d'une webcam dans une applet [ par devil02 ] Bonjour cela fait plusieurs jours que je cherche comment acquerir en temps réel les images depuis une webcam dans une applet java mais je n'y suis tou Application chat avec du son et Webcam [ par Nippondotnet ] Dozo Yorushkibon tout d'abord , mon projet est de r&#233;aliser une application de vid&#233;o-conf&#233;rence bon c&#224;d du texte , du son et de l'i Incrustation (symboles ou texte) sur une vidéo de webcam [ par patricel ] Bonjour &#224; tous,J'arrive &#224; cr&#233;er une application en Java2D (dessin de symboles ou de texte)J'arrive &#224; cr&#233;er une application qu


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,827 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales