Java Video Camera Play With Jmf
import javax.media.*;
import java.io.*;
import java.awt.*;
class CaptureVideo extends Frame implements ControllerListener
{
    private CaptureDeviceInfo infor;
    private MediaLocator mediaLocator;
    private String url = "vfw:Microsoft WDM Image Capture (Win32):0";
    private Component com;
    private Panel panel;
    Player player;
    public CaptureVideo()
    {
        infor = CaptureDeviceManager.getDevice(url);
        mediaLocator = infor.getLocator();
    }
    public void play()
    {
        try
        {
 
            player = Manager.createPlayer(mediaLocator);// create player with mediaLocator
            player.addControllerListener(this);
            player.realize();
            // System.out.println("infor:"+infor);
            // System.out.println("mediaLocator:"+mediaLocator);
        }
        catch (NoPlayerException e)
        {
            e.printStackTrace();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
    }
    public void createComponent()
    {
        setTitle("Video");
        // addWindowListener(new WinClose());
        setBounds(100, 100, 200, 200);
        panel = newPanel();
        if ((com = player.getVisualComponent()) != null)
        {
            panel.add(com);
        }
        add(panel);
        setVisible(true);
    }
    public synchronized void controllerUpdate(ControllerEvent arg0)
    {
        if (arg0 instanceofRealizeCompleteEvent)
        {
            System.out.println("realized");
            createComponent(); // add player to panel
            player.prefetch();
        }
        if (arg0 instanceofPrefetchCompleteEvent)
        {
            player.start();
            System.out.println("prefetched");
        }
    }
    public static void main(String[] arg0)
    {
        CaptureVideo video = newCaptureVideo();
        video.play();
    }
}