Sto creando un'applicazione GUI in swing Java. Devo integrare la web cam con la mia GUI. Qualche corpo ha idea di questo?Come integrare Webcam nell'applicazione Swing di Java?
6
A
risposta
2
Freedom for Media in Java è un'implementazione alternativa di JMF (compatibile API). Nel caso in cui ti piacerebbe utilizzare la libreria OpenSource.
7
- Scaricare e installare JMF
- Add jmf.jar alle librerie di progetto
- Scaricare il file FrameGrabber sorgente e aggiungerlo al progetto
usarlo come segue per iniziare a registrare il video.
new FrameGrabber(). Start();
Per ottenere l'immagine sottostante, è sufficiente chiamare getBufferedImage() sul riferimento FrameGrabber. È possibile farlo in un'attività del timer, ad esempio, ogni 33 millisecondi.
codice di esempio:
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
Grazie a JRL, sto cercando di implementarlo, voglio sapere se rileverà automaticamente la mia webcam? –
Problemi correlati
- 1. GoogleEarth all'interno di Java Swing
- 2. finestre "bambini" di swing Java
- 3. Selettore di caratteri Java Swing
- 4. Java Swing Text Editor
- 5. java swing background image
- 6. Layout swing Java
- 7. Java Swing - avvisi utente
- 8. Zoom nell'applicazione Java Swing
- 9. Java Swing ActionMap chiavi
- 10. Java Swing JMenu Mnemonic
- 11. Java Swing FlowLayout Alignments
- 12. Corrupted Java Swing Window
- 13. Java Swing Caricamento Animazione
- 14. Java Swing JTextField inserto
- 15. Java Swing: Jtable ArrayIndexOutOfBoundsException
- 16. Java Swing Timer
- 17. Come integrare i byte in java?
- 18. Come funziona JComponent.paintImmediately() in Java Swing?
- 19. Come aggiungere mnemonici in java swing?
- 20. Errore tecnico di grafica di Java Swing?
- 21. Java Swing - Come disabilitare un JPanel?
- 22. Come riprodurre video in Java Swing?
- 23. Come creare un'applicazione java swing in intelijidea
- 24. java swing JTextField set PlaceHolder
- 25. Giochi Java 2d con Java SWING
- 26. Struttura del programma Java Swing
- 27. Java Swing setMaximumSize non funziona
- 28. Zoom JPanel in Java Swing
- 29. Cattura video utilizzando la webcam in Java
- 30. Java Swing Dice Rolling Animation
c'è Java Media Framework. Con JMF puoi riprodurre film, vedere webcam, ... Forse è una soluzione per te –