Olá pessoal, o código abaixo é um construtor de um JDialog, onde instancio um player JMF, com o objetivo de capturar imagens da minha webcam, tudo está funcionando perfeito, só tem um problema está muito lento para mostrar a janela, alguém conhece um método mais rápido de fazer a mesma coisa? Acredito que não seja o micro, pois é um P4 3.0G tem 1G de memória. Além disso de vez em quando o aplicativo trava nessa parte, estou usando Windows XP, testei com o software que veio com a câmera e nele funciona legal, mas quando o uso o visualizador que vem na instalação da JMF também fica travado.
public jnCamera(JDialog dialogoPai) {
super(dialogoPai);
initComponents();
centerWindow(this);
imgSelecionada="";
contaFoto=0;
String str2 = "vfw//0";
di = CaptureDeviceManager.getDevice(str2);
ml = new MediaLocator("vfw://0");
try {
Manager.setHint(Manager.LIGHTWEIGHT_RENDERER, Boolean.TRUE);
player = Manager.createRealizedPlayer(ml);
player.realize();
player.start();
visualMedia = player.getVisualComponent();
if (visualMedia != null) {
visualMedia.setBounds(10,25,200,200);
this.jPanelCamera.add(visualMedia, BorderLayout.CENTER);
}
mediaControl = player.getControlPanelComponent();
if (mediaControl != null) {
mediaControl.setBounds(10,230,200,20);
this.jPanelCamera.add(mediaControl, BorderLayout.SOUTH);
}
this.jButtonCaptura.setEnabled(true);
}
catch (Exception e) {
String erro="ERRO: Nenhuma câmera foi encontrada.";
JOptionPane.showMessageDialog(this,erro,"ERRO",JOptionPane.ERROR_MESSAGE);
Fechar(true);
}
}
Valeu pessoal!