Domanda

Sto usando JMF per operare la mia web cam.My usb webcam funziona perfettamente con JMF, L'ho usato in JMStudio però, quando faccio questa chiamata dal mio codice Java

deviceListVector = CaptureDeviceManager.getDeviceList( null );

il mio "dispositivo di acquisizione audio" viene rilevato tuttavia, la mia webcam USB vfw: // 0 non viene rilevato. Per chiarire, il dispositivo di acquisizione audio e la cam USB sono dispositivi completamente separati. Come posso riconoscere correttamente la webcam usb e suoi formati, da JMF?

Grazie in anticipo

È stato utile?

Soluzione

Inoltre si può provare LTI-Civil o xuggler .

Altri suggerimenti

Per rilevare solo Webcam si dovrebbe passare argomento al metodo getDeviceList(Format) (invece che null):

Vector<Object> devices = CaptureDeviceManager.getDeviceList(new Format("RGB"));
Iterator<Object> di = devices.iterator();
while (di.hasNext()) {
    CaptureDeviceInfo info = (CaptureDeviceInfo) di.next();
    System.out.println(info);
}

Questo dovrebbe stampare tutte le webcam - costruire e quelli connessi alla porta USB. Ho provato questo codice e funziona per me.

Se questo non aiuterà (dal JMF è mooolto vecchio e alcune parti del codice può essere obsoleto), si può provare a utilizzare parte del mio Capture webcam del progetto. Si sta lavorando correttamente con la maggior parte delle piattaforme di Windows - x86 e x64, x86 e x64 Linux, Mac OS, ecc Se si decide di provarlo, si dovrà scrivere qualcosa del genere per elencare tutti i dispositivi webcam:

List<Webcam> webcams = Webcam.getDevices();

Si prega di notare che si può anche lavorare sulla parte superiore del JMF - per sostituire il driver di default build-in per JMF uno, si dovrà aggiungere JMF conducente JAR nel classpath e chiamare questa prima messa in webcam:

Webcam.setDriver(new JmfDriver());

Spero che questo aiuto.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top