Webcam wird nicht gefunden

Bitstubbi

Mitglied
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)

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
 
[JAVA=34] ml = new MediaLocator("vfw:\0"); [/code]

Ein
Code:
\0
als String also mit dem Back-Slash sieht immer etwas ungesund aus, da dies in der Regel genutzt wird um Sonderzeichen darzustellen.

Versuche es doch mal mit folgendem

[JAVA=34] ml = new MediaLocator("vfw://0"); [/code]

Übrigens, wenn du die beiden Zeilen in einer Suchmaschine deiner Wahl eingibst, bekommst du sehr oft die Version mit dem
Code:
vfw://0
zu sehen.
 
Schuldigung das hatte ich nicht erwähnt hatte da schon alles ausprobiert.

Java:
ml = new MediaLocator("vfw://0");
Java:
ml = new MediaLocator("vfw://1");
Java:
ml = new MediaLocator("vfw:Microsoft WDM Image Capture (Win32): 0");
Java:
ml = new MediaLocator("vfw:Microsoft WDM Image Capture (Win64): 0");
Java:
ml = new MediaLocator("vfw:1.3M Microsoft Webcam: 0"); // der Name der cam

Sorry Ärgerlich das ich das nicht erwähnt habe

Ich habe einige Foren durchgelesen in vielen wurde mir von JMF abgeraten. Was meint ihr dazu?
 

Neue Themen


Zurück
Oben