Veja esse código que esta funcionando na imagem da webcam:
a classe é Dispositivo de Video:
import java.awt.Component;
import java.awt.Dimension;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.media.CannotRealizeException;
import javax.media.CaptureDeviceInfo;
import javax.media.CaptureDeviceManager;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.NoPlayerException;
import javax.media.Player;
public class DispositivodeVideo extends javax.swing.JPanel {
public static Player player = null;
public static CaptureDeviceInfo di = null;
public static MediaLocator ml = null;
private Dimension d;
public void Fecha (){
player.close();
player.deallocate();
//System.out.println("Player fechado...");
//System.exit(0);
}
public void Abre(Dimension d){
String str1 = "vfw:Microsoft WDM Image Capture (Win32):0"; // AQUI MOSTRAR A IMAGEM DA WEBCAM BELEZA
String str1 = "D:/java estudos/pipoqueira/imagem de bola/24bolasini.avi"; // MUDANDO PARA O AVI NÃO EXECUTOU
di = CaptureDeviceManager.getDevice(str1);
System.out.println(di.getName());
ml = di.getLocator();
try {
player = Manager.createRealizedPlayer(ml);
Component comp;
if ((comp = player.getVisualComponent()) != null)
{
comp.setSize(d);
add(comp) ;
player.start();
}
} catch (IOException ex) {
Logger.getLogger(DispositivodeVideo.class.getName()).log(Level.SEVERE, null, ex);
} catch (NoPlayerException ex) {
Logger.getLogger(DispositivodeVideo.class.getName()).log(Level.SEVERE, null, ex);
} catch (CannotRealizeException ex) {
Logger.getLogger(DispositivodeVideo.class.getName()).log(Level.SEVERE, null, ex);
}
}
public DispositivodeVideo(Dimension d){
Abre(d);
}
}
a chamada do video:
imgcamera = new DispositivodeVideo(Jlabel_Globo.getSize());
Jlabel_Globo.add(imgcamera);