コードの非常に単純なセクションのように見えるものがありますが、なぜそれが機能しないのか、一生解決できません。
カメラからの画像の更新をリッスンするメソッドがあり、それを受信すると別のコード セグメントを呼び出します。
私のリスナーは次のとおりです。
public void imageUpdated(BufferedImage image) {
if (null != video) {
video.setImage(image);
}
File outputfile = new File("savedingui.jpg");
try {
ImageIO.write(image, "jpg", outputfile);
} catch (IOException e) {
e.printStackTrace();
}
これにより、正しいイメージがディスクに保存されます。ただし、setImage メソッド (リスナー コードの 3 行目で呼び出される) から画像を再度保存すると、
public void setImage(BufferedImage image) {
File outputfile = new File("savedorig.jpg");
try {
ImageIO.write(image, "jpg", outputfile);
} catch (IOException e) {
e.printStackTrace();
}
これで、黒の jpeg が保存されるようになりました。しかし、適切なサイズの黒の正方形。
何が起こっているかについての手がかりはありますか?