Forum: PC-Programmierung Processing: Merkwürdiger Video-Fehler


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Frank E. (Firma: Q3) (qualidat)


Bewertung
0 lesenswert
nicht lesenswert
In einem Museums-Projekt läuft seit ca. 2 Jahren eine Processing-App 
(unter Windows 7 Pro 64 Bit), die für ein "digitales Schattentheater" 
ein Video und ein Kamera-Livebild mischt.

Von einem Tag auf den anderen ist diese App (und auch eine ganz einfache 
Test-App) nicht mehr in der Lage ein mp4-Video zu öffnen. Als 
Fehlermeldung bekomme ich:

"(java.exe:5564): GStreamer-CRITICAL **:
Trying to dispose element Movie Player, but it is in READY instead of 
the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element."

Ich kann das übersetzen, aber ich verstehe es nicht. Kann mir jemand 
einen Tip geben? Also ein einfacher Neustart des PC ist nicht die 
Lösung, mehrfach probiert. Das Web gibt leider auch nichts her, was ich 
verwenden könnte. Danke.

Hier der Code der Test-App:
import processing.video.*;
   Movie video;
   void setup()
   {
     size(640, 360);
     background(0);
     video = new Movie(this, "video.mp4");
     video.play();
   }
   
   void movieEvent(Movie m)
   {
     m.read();
   }
 
   void draw()
   {
     image(video, 0, 0, 640, 360);  
   }

von Philipp K. (philipp_k59)


Bewertung
0 lesenswert
nicht lesenswert

von Frank E. (Firma: Q3) (qualidat)


Bewertung
-1 lesenswert
nicht lesenswert
Philipp K. schrieb:
> Also erster google Eintrag bei "Gstreamer Critical":
>
> 
https://forum.processing.org/two/discussion/25428/help-figuring-out-error-when-using-video-library

Danke, aber Google kann ich auch bedienen.

1. Bei mir tritt das Problem nicht wie in dem dortigen Post bei 
vodeo.pause() oder video.stop() auf, sondern es startet garnicht erst 
(obwohl es das monatelang tat).

2. Wie versetze ich den "GStreamer" ind den NULL-Zustand?

Ich habe den Rechner (mehrfach) neu gestartet und ich habe Processing 
neu installiert. Was noch bliebe, wäre Java zu entfernen (geht das 
überhaupt zu 100%?) und neu zu installieren. Ob das hilft?

von Philipp K. (philipp_k59)


Bewertung
0 lesenswert
nicht lesenswert
Es kann sich ja eigentlich nur irgendwas geupdated haben.

Gstreamer Wiki:
GST_STATE_NULL is the default state of an element. In this state, it has 
not allocated any runtime resources, it has not loaded any runtime 
libraries and it can obviously not handle data.

Ich würde einfach jeden Aufruf mit Try&Catch einbetten und überprüfen ob 
vorher schon ein Fehler auftritt.

Frank E. schrieb:
> Was noch bliebe, wäre Java zu entfernen (geht das
> überhaupt zu 100%?) und neu zu installieren.

Das ist Standard deinstallation.

von Horst (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ist da vielleicht eine SD-Karte als Speichermedium im Spiel? Eventuell 
ist die mit der Zeit kaputt geworden!

von Frank E. (Firma: Q3) (qualidat)


Bewertung
0 lesenswert
nicht lesenswert
Horst schrieb:
> Ist da vielleicht eine SD-Karte als Speichermedium im Spiel?
> Eventuell
> ist die mit der Zeit kaputt geworden!

Nein, ist ein "normaler" PC mit SSD. Am darunter liegenden Win 7 Pro 
gibts keine Auffälligkeiten. Er startet flink, im Dateisystem gibts 
keine Fehler ... usw.

Da muss im Laufe der Zeit irgend eine (für den User normalerweise nicht 
sichtbare bzw. relevante Datei) korrupt geworden sein. Diese 
Fehlermeldung liest man im Web recht oft, aber keine brauchbare Lösung. 
Ich hab jedenfalsl bis jetzt keine gefunden ...

von Experte (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Frank E. schrieb:
> Da muss im Laufe der Zeit irgend eine (für den User normalerweise nicht
> sichtbare bzw. relevante Datei) korrupt geworden sein.

Na, dann spiel das Backup ein und gut ist.

Kein Backup? Kein Mitleid!

von ● J-A V. (Firma: FULL PALATINSK) (desinfector) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
hängt der Rechner (was für einer???) am Web?

ein Memtest kann auch schon mal nicht schaden.

wie alt ist der Rechner?

Ich will jetzt mal NICHT das Thema leer
werdende BIOS-Batterie ins Spiel bringen.

Wobei... bei all den kruden Fehlern,
die ich deswegen schon hatte...

von Frank E. (Firma: Q3) (qualidat)


Bewertung
1 lesenswert
nicht lesenswert
Experte schrieb:
> Frank E. schrieb:
>> Da muss im Laufe der Zeit irgend eine (für den User normalerweise nicht
>> sichtbare bzw. relevante Datei) korrupt geworden sein.
>
> Na, dann spiel das Backup ein und gut ist.
>
> Kein Backup? Kein Mitleid!

Backup? Für einen Einzel-PC, an dem niemand arbeitet und an dem keine 
Daten entstehen? Wer macht denn sowas?

Du hast zwar im Prinzip recht, das würde mir jetzt helfen, unter den 
gegebenen Umständen ist dein Einwurf aber einfach nur unpassend 
arrogant.

von Frank E. (Firma: Q3) (qualidat)


Bewertung
0 lesenswert
nicht lesenswert
● J-A V. schrieb:
> hängt der Rechner (was für einer???) am Web?

nein, wozu?

> ein Memtest kann auch schon mal nicht schaden.

Es ist immer nur der eine Fehler vom "GStreamer". Ich wusste bis zu dem 
Fehler garnicht, dass der zusammen mit Processing instaliert wird. aber 
kann ich mal machen.

> wie alt ist der Rechner?

Ca. 5 Jahre, für den aktuellen Zweck aber neu aufgesetzt und mit SSD 
versehen. So ein HP Mini Super Slim "Elite ... " , ca. 25 x 25 x 5 cm

> Ich will jetzt mal NICHT das Thema leer
> werdende BIOS-Batterie ins Spiel bringen.

Dann würde ich das wohl zuerst an der Uhrzeit merken. Die ist zwar ohne 
Internet nicht super-genau, passt aber (ca. 5min Differenz in 2 Jahren)

> Wobei... bei all den kruden Fehlern,
> die ich deswegen schon hatte...

von ● J-A V. (Firma: FULL PALATINSK) (desinfector) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Frank E. schrieb:
>> Ich will jetzt mal NICHT das Thema leer
>> werdende BIOS-Batterie ins Spiel bringen.
>
> Dann würde ich das wohl zuerst an der Uhrzeit merken.

und da sage ich NEIN!

5 Jahre alt?
Bitte erstmal die Batterie wechseln.

: Bearbeitet durch User
von Εrnst B. (ernst)


Bewertung
0 lesenswert
nicht lesenswert
> Ich habe den Rechner (mehrfach) neu gestartet und ich habe Processing
> neu installiert. Was noch bliebe, wäre Java zu entfernen (geht das
> überhaupt zu 100%?) und neu zu installieren. Ob das hilft?

Andere Option, wenn der Rechner eh kein Internet hat:
Stell die Uhr mal ein oder zwei Jahre zurück, und versuchs nochmal.

Könnte mir vorstellen, dass irgendein 
Codesigning-(Intermediate-)Zertifikat zwischendurch abgelaufen ist, und 
ein nötiger Codec, JAR-File, DLL, whatever nicht mehr geladen werden 
kann/darf.

Da ist Uhrzeit-verstellen schneller zielführend als "alles updaten", 
wenn auch nicht nachhaltig...

von Schlauberger (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Frank E. schrieb:
> Backup? Für einen Einzel-PC, an dem niemand arbeitet und an dem keine
> Daten entstehen? Wer macht denn sowas?

Das tun Menschen, die effektiv arbeiten möchten und sich das 
Neuaufsetzen von PCs und die Fehlersuche ersparen möchten. Festplatten, 
Caches und RAMs können Fehler haben und infolgedessen kann das Windows 
unverhoft sich selber was kaputtschreiben. Also hat man ein 
Systembackup.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.