Bonjour,

J'ai un problème pour capturer des photos à partir d'une webcam.

J'utilise la classe ci-dessous pour le faire en important toutes les librairies nécessaires dans mon projet. Mais lors de l'exécution, aussitôt ouverte, la fenêtre se referme et dans la console on me renvoie un message que je ne comprend pas.

voici la classe en question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
public class capure extends javax.swing.JFrame {
 
    /**
     * Creates new form capure
     */
    public static Image img;
    public static List<Device> devices;
    public static Device devic;
 
    public capure() {
        initComponents();
        devices = DeviceManager.getAllDevices();
        devic = devices.get(0);
        int x = 0, y = 0;
        try {
            devic.addDeviceErrorListener(errorListener);
            devic.addDeviceStatusListener(statusListener);
            devic.showPreview(x, y, 300, 300, IWS.WS_OVERLAPPEDWINDOW | IWS.WS_VISIBLE, ""
                    + "Capture de l'image", 0, 0);
        } catch (Exception e) {
            e.printStackTrace();
        }
        int deviceDisposed = 0;
        while (deviceDisposed < devices.size()) {
            deviceDisposed = 0;
            if (!devic.isDisposed()) {
                devic.readAndDispatch();
            } else {
                deviceDisposed++;
            }
        }
    }
 
    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {
 
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
 
        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 400, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 300, Short.MAX_VALUE)
        );
 
        pack();
    }// </editor-fold>                        
 
    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /*
         * Set the Nimbus look and feel
         */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /*
         * If Nimbus (introduced in Java SE 6) is not available, stay with the
         * default look and feel. For details see
         * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(capure.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(capure.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(capure.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(capure.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>
 
        /*
         * Create and display the form
         */
        java.awt.EventQueue.invokeLater(new Runnable() {
 
            public void run() {
                new capure().setVisible(true);
            }
        });
    }
    private static DeviceErrorListener errorListener = new DeviceErrorListener() {
 
        public void deviceError(Device device, int errorId, String errorMessage) {
            System.err.println(device + "->" + errorId + ": " + errorMessage);
        }
    };
    private static DeviceStatusListener statusListener = new DeviceStatusListener() {
 
        public void deviceStatus(Device device, int statusId, String statusMessage) {
            System.out.println(device + "->" + statusId + ": " + statusMessage);
        }
    };
}
Et le message d'erreur :
Execution protection violation
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x003eacc0, pid=5364, tid=6992
#
# JRE version: 7.0_05-b05
# Java VM: Java HotSpot(TM) Client VM (23.1-b03 mixed mode, sharing windows-x86 )
# Problematic frame:
# C 0x003eacc0
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# An error report file with more information is saved as:
# E:\JAVA\fx\WebCamTout\hs_err_pid5364.log
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Quand je vais dans le fichier de rapport créé pour en savoir plus, je vois ceci :
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x003eacc0, pid=5364, tid=6992
#
# JRE version: 7.0_05-b05
# Java VM: Java HotSpot(TM) Client VM (23.1-b03 mixed mode, sharing windows-x86 )
# Problematic frame:
# C 0x003eacc0
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Le rapport étant tellement long, je vous ai présenté juste une partie (la première).

Quelqu'un saurait-il m'indiquer comment résoudre ce problème ?

Merci d'avance pour votre aide.