Problemas com o JMF, travamento, lentidão

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!