import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import javax.swing.JFrame;
import uk.co.caprica.vlcj.medialist.MediaListItem;
import com.github.sarxos.webcam.Webcam;
import com.github.sarxos.webcam.WebcamPanel;
import com.github.sarxos.webcam.ds.vlcj.VlcjDriver;
public class WebcamPanelForWindows {
private static List<MediaListItem> EMPTY = new ArrayList<MediaListItem>();
/* NOTE!
*
* The vlclib does not implement video device discovery on Windows.
* Therefore, to make it working on this operating system one needs
* to manually provide the list of media list items from vlcj. This
* is not necessary on Linux and Mac.
*/
private static final MediaListItem dev0 = new MediaListItem("HP HD Webcam [Fixed]", "dshow://", EMPTY);
private static final MediaListItem dev1 = new MediaListItem("USB2.0 Camera", "dshow://", EMPTY);
private static final MediaListItem dev2 = new MediaListItem("Logitech Webcam", "dshow://", EMPTY);
static {
Webcam.setDriver(new VlcjDriver(Arrays.asList(dev0, dev1, dev2)));
}
public static void main(String[] args) {
JFrame window = new JFrame("Webcam Panel");
window.add(new WebcamPanel(Webcam.getDefault()));
window.setResizable(false);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.pack();
window.setVisible(true);
}
}