File tree Expand file tree Collapse file tree 3 files changed +19
-4
lines changed
webcam-capture-drivers/driver-javacv
main/java/com/github/sarxos/webcam/ds/javacv Expand file tree Collapse file tree 3 files changed +19
-4
lines changed Original file line number Diff line number Diff line change 2323 <dependency >
2424 <groupId >org.bytedeco</groupId >
2525 <artifactId >javacv</artifactId >
26- <version >0.8 </version >
26+ <version >1.0 </version >
2727 </dependency >
2828 </dependencies >
2929
Original file line number Diff line number Diff line change @@ -13,7 +13,13 @@ public class JavaCvDriverExample {
1313
1414 public static void main (String [] args ) {
1515 JFrame frame = new JFrame ("JavaCV Webcam Capture Driver Example" );
16- frame .add (new WebcamPanel (Webcam .getDefault ()));
16+
17+ WebcamPanel panel = new WebcamPanel (Webcam .getDefault ());
18+ panel .setFPSDisplayed (true );
19+ panel .setFitArea (true );
20+ panel .setImageSizeDisplayed (true );
21+
22+ frame .add (panel );
1723 frame .pack ();
1824 frame .setVisible (true );
1925 frame .setDefaultCloseOperation (JFrame .EXIT_ON_CLOSE );
Original file line number Diff line number Diff line change 55import java .io .File ;
66
77import org .bytedeco .javacpp .videoInputLib .videoInput ;
8+ import org .bytedeco .javacv .Frame ;
89import org .bytedeco .javacv .FrameGrabber ;
10+ import org .bytedeco .javacv .Java2DFrameConverter ;
911
1012import com .github .sarxos .webcam .WebcamDevice ;
1113import com .github .sarxos .webcam .WebcamException ;
@@ -78,11 +80,18 @@ public BufferedImage getImage() {
7880 throw new WebcamException ("Cannot grab image - webcam device is not open" );
7981 }
8082
83+ Frame frame = null ;
8184 try {
82- return grabber .grab (). getBufferedImage ();
85+ frame = grabber .grab ();
8386 } catch (Exception e ) {
84- throw new WebcamException ("Cannot grab image... " );
87+ throw new WebcamException ("OpenCV cannot grab image frame " );
8588 }
89+ if (frame == null ) {
90+ throw new WebcamException ("OpenCV image frame is null" );
91+ }
92+
93+ return new Java2DFrameConverter ().getBufferedImage (frame );
94+
8695 }
8796
8897 private FrameGrabber buildGrabber () throws FrameGrabber .Exception {
You can’t perform that action at this time.
0 commit comments