Hallo!
Habe folgendes Problem:
Ich habe ein Image auf einer Webcam liegen, die ich mithilfe eines Applets und dessen getImage()-Methode
(hab auch alle anderen Methode versucht: ImageIO, über Toolkit) von dort hole.
Das geladene Image wird in einem Panel dargestellt (paintComponent überschrieben, per drawImage() gezeichnet).
Dies funktioniert grundsätzlich auch einwandfrei.
Das Bild auf der Webcam soll sich aber nach Buttonklick aktualisieren. Dies funktioniert auch mithilfe eines CGI-Scripts.
Anschließend sollte das neu erstellte Bild von der Webcam wieder runtergeladen werden und statt dem alten im Panel gezeichnet werden.
Da ist nun der Punkt wo das Problem anfängt.
Das Bild wird nur einmal erfolgreich dargestellt, aber dann wird nur immer wieder das alte Bild gezeichnet, obwohl die Webcam definitiv ein neues Bild anlegt.
Ich habe somit vor dem erneuten Laden ein img.flush() aufgerufen und danach zur Sicherheit ein System.gc().
Danach speichere ich auf das img-Objekt ein neues Bild mit getImage();
Nun zur Frage, was mache ich falsch?
Ich nehme an das Problem besteht, weil das alte Bild im Cache liegt und so nicht mehr neu geladen wird.
Aber sollte das durch einen Aufruf von flush() nicht beseitigt werden?
Ich hoffe auf baldige Antowrt!
Vielen Dank im Voraus!
mfg
Habe folgendes Problem:
Ich habe ein Image auf einer Webcam liegen, die ich mithilfe eines Applets und dessen getImage()-Methode
(hab auch alle anderen Methode versucht: ImageIO, über Toolkit) von dort hole.
Das geladene Image wird in einem Panel dargestellt (paintComponent überschrieben, per drawImage() gezeichnet).
Dies funktioniert grundsätzlich auch einwandfrei.
Das Bild auf der Webcam soll sich aber nach Buttonklick aktualisieren. Dies funktioniert auch mithilfe eines CGI-Scripts.
Anschließend sollte das neu erstellte Bild von der Webcam wieder runtergeladen werden und statt dem alten im Panel gezeichnet werden.
Da ist nun der Punkt wo das Problem anfängt.
Das Bild wird nur einmal erfolgreich dargestellt, aber dann wird nur immer wieder das alte Bild gezeichnet, obwohl die Webcam definitiv ein neues Bild anlegt.
Ich habe somit vor dem erneuten Laden ein img.flush() aufgerufen und danach zur Sicherheit ein System.gc().
Danach speichere ich auf das img-Objekt ein neues Bild mit getImage();
Nun zur Frage, was mache ich falsch?
Ich nehme an das Problem besteht, weil das alte Bild im Cache liegt und so nicht mehr neu geladen wird.
Aber sollte das durch einen Aufruf von flush() nicht beseitigt werden?
Ich hoffe auf baldige Antowrt!
Vielen Dank im Voraus!
mfg