Hallo zusammen
Für mein Geburtstag in gut einer Woche möchte ich mit Hilfe von JMF ein Programm schreiben, welches alle 5 Minuten ein Foto mit der Webcam festhält. Dazu habe ich folgende Klasse geschireben, welche ich später in einem Thread ausrufen möchte. Jedoch wird einfach keine Webcam gefunden (Exception siehe unten)
Exception: javax.media.NoPlayerException: Cannot find a Player for :vfw:
at javax.media.Manager.createPlayerForContent(Manager.java:1412)
at javax.media.Manager.createPlayer(Manager.java:417)
at javax.media.Manager.createRealizedPlayer(Manager.java:553)
at Web_cam.<init>(Web_cam.java:35)
at Web_cam.main(Web_cam.java:59)
Exception in thread "main" java.lang.NullPointerException
at Web_cam.<init>(Web_cam.java:47)
at Web_cam.main(Web_cam.java:59)
"javax.media.NoPlayerException: Cannot find a Player for :vfw:" weißt darauf hin, dass keine cam gefunden wurde. versteh beim besten Wille einfach nicht warum
Hoffe ihr könnt mir helfen
Schönste Grüße BitStubbi
Für mein Geburtstag in gut einer Woche möchte ich mit Hilfe von JMF ein Programm schreiben, welches alle 5 Minuten ein Foto mit der Webcam festhält. Dazu habe ich folgende Klasse geschireben, welche ich später in einem Thread ausrufen möchte. Jedoch wird einfach keine Webcam gefunden (Exception siehe unten)
Java:
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.media.Buffer;
import javax.media.CannotRealizeException;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.NoPlayerException;
import javax.media.Player;
import javax.media.control.FrameGrabbingControl;
import javax.media.format.VideoFormat;
import javax.media.util.BufferToImage;
public class Web_cam {
public String space="C:\\";
public int id;
public Image tempImage;
public BufferedImage bi;
public File f;
public FrameGrabbingControl fgc;
public Buffer buf;
public MediaLocator ml;
public Player player;
public BufferToImage bti;
public Web_cam(){
try {
ml = new MediaLocator("vfw:\0");
player = Manager.createRealizedPlayer(ml);
player.start();
fgc = (FrameGrabbingControl) player.getControl("javax.media.controll.FrameGrabbingControll");
buf =fgc.grabFrame();
bti = new BufferToImage((VideoFormat)buf.getFormat());
tempImage = bti.createImage(buf);
f=new File(id+"");
ImageIO.write(toBufferedImage(tempImage), "png", f);
System.out.println("bild gespeichert");
} catch (NoPlayerException | CannotRealizeException | IOException e) {
e.printStackTrace();
}
player.close();
player.deallocate();
}
public BufferedImage toBufferedImage(Image i){
BufferedImage bi = new BufferedImage(i.getWidth(null),i.getHeight(null),BufferedImage.TYPE_INT_ARGB);
Graphics2D g2d = bi.createGraphics();
g2d.drawImage(i, 0, 0, null);
return bi;
}
public static void main(String[] args) {
new Web_cam();
}
}
Exception: javax.media.NoPlayerException: Cannot find a Player for :vfw:
at javax.media.Manager.createPlayerForContent(Manager.java:1412)
at javax.media.Manager.createPlayer(Manager.java:417)
at javax.media.Manager.createRealizedPlayer(Manager.java:553)
at Web_cam.<init>(Web_cam.java:35)
at Web_cam.main(Web_cam.java:59)
Exception in thread "main" java.lang.NullPointerException
at Web_cam.<init>(Web_cam.java:47)
at Web_cam.main(Web_cam.java:59)
"javax.media.NoPlayerException: Cannot find a Player for :vfw:" weißt darauf hin, dass keine cam gefunden wurde. versteh beim besten Wille einfach nicht warum
Hoffe ihr könnt mir helfen
Schönste Grüße BitStubbi