tobiasschulz
Anmeldungsdatum: 31. Mai 2006
Beiträge: 339
Wohnort: /root/
|
Hier gibt es ein Tutorial wie man Webcams und andere USB-Kameras unter Ubuntu sum Laufen bringt: sudo gedit /etc/apt/sources.ist Oben das Einfügen:
deb http://home.arcor.de/tobidonald/apt-tobi/ stable main Dann in Synaptic das Paket "tsclasses" (eine Java-Library) installieren. Dann den Firefox aufrufen und auf http://java.sun.com/javase/downloads/index.jsp gehen, dann bei "Java Runtime Environment (JRE) 5.0 Update 7" auf "Download" klicken. Dann auf Accept License klicken und "Linux self-extracting file" downloaden und nach /tmp abspeichern. Dann ein Terminal öffnen und folgende Kommandos ausführen:
sudo mkdir -p /opt/java
cd /opt/java
cp /tmp/*.bin .
chmod 0777 jre-1_5_0_07-linux-i586.bin
./jre-1_5_0_07-linux-i586.bin Dann "q" druecken und "yes" eingeben. mv jre1.5.0_07 jre Die Konsole offen lassen und im FF auf http://java.sun.com/products/java-media/jmf/2.1.1/download.html gehen, "Download" und "Linux Performance Pack" downloaden, nach /tmp. In der Konsole: cd jre
cp /tmp/jmf-2_1_1e-linux-i586.bin .
./jmf-2_1_1e-linux-i586.bin
ln -s /opt/java/jre/JMF-2.1.1e/lib/* /opt/java/jre/jre/lib/ext
ln -s /opt/java/jre/bin/java /bin Dann kann das Programm für die Kamera mit runcamview.sh gestartet werden. Viel Glück. PS: Bitte nicht vor Erfahrungsberichten scheuen.
|
seth2k1
Anmeldungsdatum: 7. Juni 2006
Beiträge: 124
Wohnort: Hanau
|
Wäre es nicht sinnvoller das ins Wiki zu stellen anstatt hier in "Projekte"? Schliesslich ist es ja genaugenommen keins 😉 EDIT Sorry, schneller geschrieben als richtig gelsen.. Würde aber deutlicher auf dein Script hinweisen 😉
|
Manni2000
Anmeldungsdatum: 7. Februar 2006
Beiträge: 33
|
Ich würde es ja gerne einmal ausprobieren um meine USB Webcam somit evtl. unter Linux Dapper Drake zum laufen zu bekommen. Jedoch würde ich vorher gerne wissen was ich da überhaupt mache im System und welche Befehle Dein Script ausführt und überhaupt hätte ich ganz gerne ein paar Hintergrundinformationen dazu da ich ungern einfach etwas mit meinem System anstelle ohne genau zu wissen was ich da gerade eigentlich tue... Vielleicht bist Du ja so nett und fütterst mich dahingehend mit ein wenig mehr Informationen zu diesem "Projekt" - mit freundlichem Gruß Manni
|
tobiasschulz
(Themenstarter)
Anmeldungsdatum: 31. Mai 2006
Beiträge: 339
Wohnort: /root/
|
Manni2000 hat geschrieben: Ich würde es ja gerne einmal ausprobieren um meine USB Webcam somit evtl. unter Linux Dapper Drake zum laufen zu bekommen. Jedoch würde ich vorher gerne wissen was ich da überhaupt mache im System und welche Befehle Dein Script ausführt und überhaupt hätte ich ganz gerne ein paar Hintergrundinformationen dazu da ich ungern einfach etwas mit meinem System anstelle ohne genau zu wissen was ich da gerade eigentlich tue... Vielleicht bist Du ja so nett und fütterst mich dahingehend mit ein wenig mehr Informationen zu diesem "Projekt" - mit freundlichem Gruß Manni
Also. Erst wird das aktuellste Java-Runtime-Environment von SUN heruntergeladen. Mit dem Open-Source-Java (GCJ) von Ubuntu funktioniert es nicht, so weit sind die OpenSource-Entwickler noch nicht. (jre-1_5_0_07-linux-i586.bin) Dann wird die Multimedia-Bibliothek JMF (Java Media Framework) heruntergeladen. Diese macht die "Verbindung" von meinem Programm zu Kamra. (jmf-2_1_1e-linux-i586.bin) Beides wird nach /opt installiert. Dann wird mein Programm heruntergeladen, welche die JMF-Lib benutzt. Das Programm ist in der Java-Bibliothek "tsclasses" (Tobias Schulz Java Klassen) enthalten. Diese lib wird in Synaptic installiert. Soweit verdtanden Manni2000? mfg Tobias
|
adun
Anmeldungsdatum: 29. März 2005
Beiträge: 8606
|
Im Wiki steht wie man Sun Java .bin (beliebige Version) sauber installiert.
|
tobiasschulz
(Themenstarter)
Anmeldungsdatum: 31. Mai 2006
Beiträge: 339
Wohnort: /root/
|
adun hat geschrieben: Im Wiki steht wie man Sun Java .bin (beliebige Version) sauber installiert.
Meine Lösung ist nicht unsauber. Außerdem habe ich mich dazu entschieden, es so zu machen, da das JMF in den Java-Ordner installiert wird und so das seperate Java + JMF in /opt/java nicht von anderen Progs / Paketmanager "gestört" wird. mfg Tobias
|
Prinz_Igor
Anmeldungsdatum: 29. März 2006
Beiträge: 470
Wohnort: Uslar
|
Wozu eigentlich der ganze Aufwand? sudo apt-get install mplayer mencoder Anzeigen:
mplayer tv:// -tv driver=v4l:width=352:height=288:device=/dev/video0 Aufnehmen:
mencoder tv:// -tv driver=v4l:width=352:height=288:device=/dev/video0 -nosound -ovc lavc -o webcam.avi MfG, Prinz Igor
|
tobiasschulz
(Themenstarter)
Anmeldungsdatum: 31. Mai 2006
Beiträge: 339
Wohnort: /root/
|
Prinz Igor hat geschrieben: Wozu eigentlich der ganze Aufwand? sudo apt-get install mplayer mencoder Anzeigen:
mplayer tv:// -tv driver=v4l:width=352:height=288:device=/dev/video0 Aufnehmen:
mencoder tv:// -tv driver=v4l:width=352:height=288:device=/dev/video0 -nosound -ovc lavc -o webcam.avi MfG, Prinz Igor
Zu kompliziert für Anfänger. Bei meiner Lösung muss man nur bei der Installation umständliche Befehle eingeben. Nicht jeder User weiß, was video4linux ist. Woher soll ich wissen, ob meine Kamera unter /dev/video0, /dev/video1 oder gar /dev/video ist? Was "-ovc lavc" ist, wissen die wenigsten. Welche Bildmaße hatte die Cam nochmal?!? Alles viel zu umständlich. Mein Interface könnte sogar ein Grundschul-Kind bedienen. Aber das? Sagt nicht, "Bei dir müssen ja auch kommandos eingegeben werden". Das ist nur bei der Installation so. Danach kann das programm durch ein simples 1-Wort-Kommando gestartet werden: runcamview.sh Aber in den nächsten Versionen wird es sowieso einen GNOME/KDE-Menüeintrag geben. mfg Tobias
|
Prinz_Igor
Anmeldungsdatum: 29. März 2006
Beiträge: 470
Wohnort: Uslar
|
tobiasschulz hat geschrieben: Zu kompliziert für Anfänger.
Zunächst einmal gebe ich Dir recht. Die Bedienung einer Videosource ist per Kommandozeile für Anfänger natürlich zu schwierig oder zumindest abschreckend. Es wäre allerdings kein großer Akt, eine nette, kleine Gui drumherum zu schreiben. Das hätte den Vorteil, daß der ganze Java-Kram nicht notwendig wäre - auch nicht die komplizierte Installation. Wenn ich nach meinem Urlaub wieder etwas Zeit habe, werde ich mich mal dran setzen. Mal abgesehen davon, läuft Dein Prog bei mir nicht: Ich habe JMF in meinem Homeverzeichnis abgelegt. Mit folgenden Befehlen kann man die Position der Library angeben:
export JMFHOME=<irgendwo>/JMF-2.1.1e
export CLASSPATH=$JMFHOME/lib/jmf.jar:$JMFHOME/lib/mediaplayer.jar:$JMFHOME/lib/multiplayer.jar:$CLASSPATH Ich habe mir tsclasses_2.2-2.tar.gz von Deinen Seiten runtergeladen und entpackt.
Wenn ich einfach so runcamview.sh ausführe, bekomme ich eine Fehlermeldung, daß nicht genügend Speicher zur Verfügung stände. Daraufhin habe ich in runcamview.sh den Wert von RAM_JAVA auf 300 gesetzt. Damit startet daß Programm und die verschiedenen Modi meiner Cam werden erkannt. Wenn ich dann einen Modi auswähle bekomme ich folgende Fehlermeldung:
java.io.IOException: java.lang.Error: Couldn't initialize capture device
FrameGrabber: Unable to create dataSource
javax.media.NoDataSourceException: Error instantiating class: com.sun.media.protocol.v4l.DataSource : java.io.IOException: java.lang.Error: Couldn't initialize capture device
at javax.media.Manager.createDataSource(Manager.java:1012)
at org.homedns.tobiasschulz.video.camera.PicGrabber.<init>(PicGrabber.java:100)
at org.homedns.tobiasschulz.video.camera.CameraManager.connectToCamera(CameraManager.java:156)
at org.homedns.tobiasschulz.video.camera.CameraManager.connectToCamera(CameraManager.java:142)
at org.homedns.tobiasschulz.video.camera.CameraManager$3.actionPerformed(CameraManager.java:291)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1000)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1041)
at java.awt.Component.processMouseEvent(Component.java:5488)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
at java.awt.Component.processEvent(Component.java:5253)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1774)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110) Kannst du damit was anfangen?
|
tobiasschulz
(Themenstarter)
Anmeldungsdatum: 31. Mai 2006
Beiträge: 339
Wohnort: /root/
|
Prinz Igor hat geschrieben: Kannst du damit was anfangen?
Entweder ist die Cam nicht angeschlossen oder der Treiber funktioniert nicht. Überprüfe das mal. mfg Tobias
|
tobiasschulz
(Themenstarter)
Anmeldungsdatum: 31. Mai 2006
Beiträge: 339
Wohnort: /root/
|
Prinz Igor hat geschrieben: Ich habe mir tsclasses_2.2-2.tar.gz von Deinen Seiten runtergeladen und entpackt.
Wieso eigentlich 2.2 ? Wenn du es über "deb http://home.arcor.de/tobidonald/apt-tobi/ stable main" (in sources.list) installierst, hast du seit Anfang Juli die Version 2.3. Ein kleiner Unterschied. mfg Tobias PS: Einiges zu tsclasses gibt's unter http://tobiasschulz.homedns.org/index.php?article_id=24 !
|
Prinz_Igor
Anmeldungsdatum: 29. März 2006
Beiträge: 470
Wohnort: Uslar
|
tobiasschulz hat geschrieben: Wieso eigentlich 2.2 ?
Uups - my fault. Mit 2.3-1 läuft es allerdings auch nicht. Starten kann ich es auch nur, wenn ich wie gesagt in runcamview.sh den Speicher runterschraube (hat ja nicht jeder 1.5 GB Arbeitsspeicher).
|
tobiasschulz
(Themenstarter)
Anmeldungsdatum: 31. Mai 2006
Beiträge: 339
Wohnort: /root/
|
Prinz Igor hat geschrieben: tobiasschulz hat geschrieben: Wieso eigentlich 2.2 ?
Uups - my fault. Mit 2.3-1 läuft es allerdings auch nicht. Starten kann ich es auch nur, wenn ich wie gesagt in runcamview.sh den Speicher runterschraube (hat ja nicht jeder 1.5 GB Arbeitsspeicher).
Ohh. Das stimmt wohl. Ich habe 1GB RAM und 10 GB swap (auch wenn ich die nicht unbedingt brauche, das gönne ich mir). Den Speicher kann man aberbrauchen, wenn man unter "Status" / "Schlafmodus" auswählt. Dann nimmt das Prog in höchster möglicher Geschwindigkeit Bilder auf, zeigt sie aber nicht an. Daher der Speicher. Du brauchst aber auch nur soviel, wenn du das so 6 Stunden laufen lässt. mfg Tobias PS: Werde morgen eine neue Version uploaden.
|
moser
Anmeldungsdatum: 20. Dezember 2004
Beiträge: 65
Wohnort: Bad Kreuznach
|
Also ich versuch jetzt nicht gerade diese Software zum Laufen zu bringen, aber ich hab ebenfalls Probleme mit JMF. Ich benutze Ubunu 6.06, habe die Sun1.5 Pakete aus den Repository und mit update-alternatives alles richtig eingestellt. In /etc/bash.bashrc exportiere ich den Classpath (jmf.jar ist enthalten), habe JMF-Home gesetzt und den LD_LIBRARY_PATH. auf der Shell wird via echo $CLASSPATH etc auch alles ordentlich ausgespuckt. Habs nun mit dem Linux und dem Crossplatform JMF versucht, aber egal was ich mache, es funzt einfach nicht. Will ich ein Demo-Skript in eclipse ausführen (habe in Eclipse dem Projekt-Classpath sogar die jmf.jar explizit hinzufügt) bekomme ich ein "Can't initialize Capture-Device", meine Cam findet er aber unter v4l://0. Will ich auf der Sun-JMF-Seite das Demo-Applet ausführen sagt er JMF-Classes not found. JMStudio bricht mit Fehlermeldungen ab:
Exception in thread "main" java.lang.NullPointerException at sun.awt.X11.XMenuPeer.repaintMenuItem(XMenuPeer.java:363) at sun.awt.X11.XMenuItemPeer.setEnabled(XMenuItemPeer.java:71) at sun.awt.X11.XMenuItemPeer.disable(XMenuItemPeer.java:93) at java.awt.MenuItem.disable(MenuItem.java:280) at java.awt.MenuItem.enable(MenuItem.java:267) at java.awt.MenuItem.setEnabled(MenuItem.java:242) at JMStudio.updateMenu(JMStudio.java:1274) at JMStudio.<init>(JMStudio.java:119) at JMStudio.createNewFrame(JMStudio.java:1412) at JMStudio.main(JMStudio.java:1401)
Customizer, jmfregistry und jmfinit sind ausführbar In der Registry werden auch alle Devices (Sound und Cam) ordentlich erkannt. Es ist zum Mäusemelken...
|
tobiasschulz
(Themenstarter)
Anmeldungsdatum: 31. Mai 2006
Beiträge: 339
Wohnort: /root/
|
moser hat geschrieben: Also ich versuch jetzt nicht gerade diese Software zum Laufen zu bringen, aber ich hab ebenfalls Probleme mit JMF. Ich benutze Ubunu 6.06, habe die Sun1.5 Pakete aus den Repository und mit update-alternatives alles richtig eingestellt. In /etc/bash.bashrc exportiere ich den Classpath (jmf.jar ist enthalten), habe JMF-Home gesetzt und den LD_LIBRARY_PATH. auf der Shell wird via echo $CLASSPATH etc auch alles ordentlich ausgespuckt. Habs nun mit dem Linux und dem Crossplatform JMF versucht, aber egal was ich mache, es funzt einfach nicht. Will ich ein Demo-Skript in eclipse ausführen (habe in Eclipse dem Projekt-Classpath sogar die jmf.jar explizit hinzufügt) bekomme ich ein "Can't initialize Capture-Device", meine Cam findet er aber unter v4l://0. Will ich auf der Sun-JMF-Seite das Demo-Applet ausführen sagt er JMF-Classes not found. JMStudio bricht mit Fehlermeldungen ab:
Exception in thread "main" java.lang.NullPointerException at sun.awt.X11.XMenuPeer.repaintMenuItem(XMenuPeer.java:363) at sun.awt.X11.XMenuItemPeer.setEnabled(XMenuItemPeer.java:71) at sun.awt.X11.XMenuItemPeer.disable(XMenuItemPeer.java:93) at java.awt.MenuItem.disable(MenuItem.java:280) at java.awt.MenuItem.enable(MenuItem.java:267) at java.awt.MenuItem.setEnabled(MenuItem.java:242) at JMStudio.updateMenu(JMStudio.java:1274) at JMStudio.<init>(JMStudio.java:119) at JMStudio.createNewFrame(JMStudio.java:1412) at JMStudio.main(JMStudio.java:1401)
Customizer, jmfregistry und jmfinit sind ausführbar In der Registry werden auch alle Devices (Sound und Cam) ordentlich erkannt. Es ist zum Mäusemelken...
Hast du es schon mal so probiert :
ln -s /xxx/JMF-2.1.1e/lib/* /usr/lib/jvm/java-1.5.0-sun/jre/lib/ext/ Versuch mal alles aus JMF-2.1.1e/lib/ nach $JAVA_HOME/jre/lib/ext zu kopieren / linken . Den Classpath kannst du dir dann schenken Und probier mal jmf-pfad/bin/jmfinit (als der User, mit dem du das JMF installiert hast) auszufuehren. Alles geht aber (bei mir, auf meinem Test-VMWare PC und normal), wenn ich die Antleitung von oben ausführe (also nicht das Java aus den Ubuntu-Repos) Hmm Gruß Tobias
|