Seite 1 von 1

Probleme mit animierten GIFs

Verfasst: 7. September 2006 12:15
von MannMitHut
Hallo!

Ich möchte in einem QLabel mittels QMovie ein animiertes GIF abspielen.
Dabei ergeben sich 2 Probleme:

- die Wiedergabe der Animation flackert fürchterlich; ich finde keine Möglichkeit die Wiedergabe zu verbessern, QMovie bietet da scheinbar keine Möglichkeit irgendwie einzugreifen. Einzig die bufsize im Konstruktor schien diesbezüglich interessant zu sein - in der Doku steht dazu:
The bufsize argument sets the maximum amount of data the movie will transfer from the data source per event loop. The lower this value, the better interleaved the movie playback will be with other event processing, but the slower the overall processing will be.
Aber sowohl Versuche mit kleinen als auch großen Werten für bufsize brachten so ziemlich das gleiche Ergebnis;

- die Transparenz wird nicht richtig dargestellt;
nachdem mein animiertes GIF nicht auf einem einfärbigen Hintergrund laufen soll, sollten transparente Pixel im GIF auch transparent dargestellt werden. Das ist aber nicht der Fall, sondern es wird ein Farbwert hergenommen, wobei mir nicht recht klar ist wo der herkommt.


falls jemand schon Erfahrungen mit animierten GIFs gesammelt hat, oder sonst irgendwelche Antworten zu meinen Fragen hat, wäre ich ewig dankbar .........

Verfasst: 7. September 2006 13:10
von caligano
a) Du arbeitest mit Qt3, das solltest du vllt dazuschreiben :roll:

b) wegen Hintergrundfarbe: --> setBackgroundColor

c) das Beispiel hier kennst du wahrscheinlich ?! --> http://doc.trolltech.com/3.3/movies-example.html

d) GIF muss sein? oder geht auch MNG ?

Verfasst: 7. September 2006 15:07
von MannMitHut
- stimmt, meine Version ist Qt3.3

- hab jetzt versuchsweise meine anim. GIF in MNG umgewandelt;
leider verhält sich die Darstellung bzgl. Flackern und Transparenz genauso wie mit GIFs

- die BackgroundColor des QMovie auf eine best. Farbe zu setzen ist nicht das was ich will, weil ja die darunterliegende Grafik durch die transparenten Pixel "durchscheinen" soll; auch den BackgroundMode des QLabel (in dem das QMovie abgespielt wird) auf Qt::NoBackground zu setzen bewirkt nicht das was ich will;


.... jedenfalls danke für die Antwort ......