Skip to content

Commit d50521d

Browse files
committed
Upgrade JavaCV from 0.8 to 1.0, fixes #363
1 parent 1a8501f commit d50521d

File tree

3 files changed

+19
-4
lines changed

3 files changed

+19
-4
lines changed

webcam-capture-drivers/driver-javacv/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
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

webcam-capture-drivers/driver-javacv/src/example/java/JavaCvDriverExample.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff 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);

webcam-capture-drivers/driver-javacv/src/main/java/com/github/sarxos/webcam/ds/javacv/JavaCvDevice.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
import java.io.File;
66

77
import org.bytedeco.javacpp.videoInputLib.videoInput;
8+
import org.bytedeco.javacv.Frame;
89
import org.bytedeco.javacv.FrameGrabber;
10+
import org.bytedeco.javacv.Java2DFrameConverter;
911

1012
import com.github.sarxos.webcam.WebcamDevice;
1113
import 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 {

0 commit comments

Comments
 (0)