我在swing中創建了一個GUI應用程序。我必須將web cam與我的GUI集成。任何機構都有這個想法?如何將Webcam整合到Java的Swing應用程序中?
6
A
回答
2
Freedom for Media in Java是JMF(API兼容)的替代實現。以防萬一你想使用OpenSource庫。
7
- 下載並安裝JMF
- 添加jmf.jar到項目庫
- 下載FrameGrabber源文件並將其添加到您的項目
如下開始捕捉視頻使用它。
new FrameGrabber()。start();
要獲得底層圖像,只需在FrameGrabber引用上調用getBufferedImage()。你可以在Timer任務中做到這一點,例如每33毫秒。
示例代碼:
public class TestWebcam extends JFrame {
private FrameGrabber vision;
private BufferedImage image;
private VideoPanel videoPanel = new VideoPanel();
private JButton jbtCapture = new JButton("Show Video");
private Timer timer = new Timer();
public TestWebcam() {
JPanel jpButton = new JPanel();
jpButton.setLayout(new FlowLayout());
jpButton.add(jbtCapture);
setLayout(new BorderLayout());
add(videoPanel, BorderLayout.CENTER);
add(jpButton, BorderLayout.SOUTH);
setVisible(true);
jbtCapture.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
timer.schedule(new ImageTimerTask(), 1000, 33);
}
}
);
}
class ImageTimerTask extends TimerTask {
public void run() {
videoPanel.showImage();
}
}
class VideoPanel extends JPanel {
public VideoPanel() {
try {
vision = new FrameGrabber();
vision.start();
} catch (FrameGrabberException fge) {
}
}
protected void paintComponent(Graphics g) {
super.paintComponent(g);
if (image != null)
g.drawImage(image, 10, 10, 160, 120, null);
}
public void showImage() {
image = vision.getBufferedImage();
repaint();
}
}
public static void main(String[] args) {
TestWebcam frame = new TestWebcam();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(190, 210);
frame.setVisible(true);
}
}
+0
謝謝JRL,我試圖實現它,我想知道它是否會自動檢測我的攝像頭? – 2009-09-05 10:39:35
相關問題
- 1. Java Webcam GUI應用程序
- 2. 如何在Swing應用程序中混合Java Swing和JavaFX?
- 3. 如何將混合應用程序整合到iOS本機應用程序?
- 4. 如何開始將Java Swing應用程序遷移到JavaFX?
- 5. 如何將facebook整合到我的iphone應用程序中
- 6. 如何將WebDAV整合到我的iPhone應用程序中?
- 7. 如何將phpThumb整合到CodeIgniter應用程序的架構中?
- 8. 如何將Google的reCAPTCHA整合到React Native應用程序中?
- 9. 如何將Zoom.us整合到我的angularJS應用程序中?
- 10. 如何將iAd整合到我的Flash應用程序中?
- 11. 如何減慢Java Swing應用程序
- 12. 如何部署Java Swing應用程序
- 13. 如何從Java Swing應用程序
- 14. 如何將廣告整合到混合應用程序
- 15. 將Twitter整合到iPhone應用程序
- 16. 如何將谷歌地圖整合到struts2應用程序中
- 17. 如何將Twitter支持整合到iOS應用程序中?
- 18. 如何將paypal與ruby整合到rails應用程序中?
- 19. 如何將論壇整合到應用程序中?
- 20. 如何將torrent下載整合到android應用程序中?
- 21. 如何將Nokogiri整合到Rails應用程序中
- 22. 如何將文檔掃描整合到Qt應用程序中?
- 23. 如何將位置信息整合到Twitter應用程序中?
- 24. 如何將Python代碼整合到移動應用程序中?
- 25. 如何將dagger2整合到GWT應用程序中?
- 26. 如何將twitter,facebook整合到iPhone應用程序中?
- 27. 如何將貝寶整合到JSF應用程序中
- 28. 如何將qml文件整合到qt-widgets應用程序中?
- 29. 如何將Facebook整合到我自己的應用程序?
- 30. 將Java數據庫加載到Java Swing應用程序
有Java的媒體框架。有了JMF,你可以播放電影,查看攝像頭,...也許是你的解決方案 – 2009-09-05 05:55:11