Kivy: Problem mit der sequentiellen Bildverarbeitung für Himbeer-Pi

Erstellt am 2. Feb. 2015  ·  4Kommentare  ·  Quelle: kivy/kivy

Beim Versuch, ein sequenzielles Bild .zip (im Gegensatz zu einem .gif) auf Kivy über Rasberry Pi (PipaOS / Raspbian) mit dem kivy.uix.image-Include zu "spielen", scheinen die ersten 20 Frames ohne Probleme abzuspielen , dann den Rest ausschneiden.

Die verbleibenden sequentiellen Bildframes werden als einfache schwarze Leinwand angezeigt, die Framedauer scheint jedoch noch zu gelten. (Die Schleife eines sequentiellen Bildes würde normalerweise ~3 Sekunden dauern, das Bild wird nach ~0,8 Sekunden schwarz, bleibt für die nächsten 2,2 Sekunden schwarz und startet die Schleife neu.)

Code zum Testen:

''' to be saved as main.py '''

from kivy.app import App
from kivy.lang import Builder
from kivy.uix.image import Image
from kivy.uix.boxlayout import BoxLayout


Builder.load_string('''
<Interface>:
    orientation: 'vertical'
    Image:
        source: 'loader_anim.zip'
        anim_delay: 0.05
''')

class Interface(BoxLayout):
    pass

class SettingsApp(App):
    def build(self):
        return Interface()

SettingsApp().run()

''' save this [https://github.com/LovelyHorse/prometheus/blob/master/assets/loader_anim.zip?raw=true] file in the same directory as "loader_anim.zip", and run main.py '''

Möchten Sie dieses Problem unterstützen? Setzen Sie ein Kopfgeld darauf aus! Wir akzeptieren Prämien über Bountysource .

RPi

Hilfreichster Kommentar

Für Leute, die sich diesen Thread immer noch ansehen, ist dies wahrscheinlich kein Kivy-spezifisches Problem. Ich hatte das gleiche Problem und löste es schließlich, indem ich den Speicher für die GPU in meinem Raspberry Pi erhöhte. Es scheint, dass Kivy nicht in der Lage ist, die gesamte Animation von PNGs in den Speicher zu laden, und es schneidet nur die Bilder aus, für die kein Platz vorhanden ist. Dies erklärt auch, warum das Zeug unter Windows einwandfrei funktioniert (wo Speicher im Allgemeinen kein Problem ist). Die Lösung scheint, wie gesagt, darin zu bestehen, der GPU mehr Speicher zuzuweisen oder die Qualität Ihrer PNGs leicht zu verringern (z. B. TinyPNG.com). Hoffe das hilft!

Alle 4 Kommentare

Ich sollte auch erwähnen, dass dieselbe .zip-Datei perfekt unter Windows angezeigt wird.

+1 dazu. Habe es auch mit einem anderen Reißverschluss getestet, gleiches Problem.

Für Leute, die sich diesen Thread immer noch ansehen, ist dies wahrscheinlich kein Kivy-spezifisches Problem. Ich hatte das gleiche Problem und löste es schließlich, indem ich den Speicher für die GPU in meinem Raspberry Pi erhöhte. Es scheint, dass Kivy nicht in der Lage ist, die gesamte Animation von PNGs in den Speicher zu laden, und es schneidet nur die Bilder aus, für die kein Platz vorhanden ist. Dies erklärt auch, warum das Zeug unter Windows einwandfrei funktioniert (wo Speicher im Allgemeinen kein Problem ist). Die Lösung scheint, wie gesagt, darin zu bestehen, der GPU mehr Speicher zuzuweisen oder die Qualität Ihrer PNGs leicht zu verringern (z. B. TinyPNG.com). Hoffe das hilft!

Dieses Problem wurde automatisch als veraltet markiert, da es in letzter Zeit keine Aktivität gab. Es wird geschlossen, wenn keine weiteren Aktivitäten stattfinden. Vielen Dank für Ihre Beiträge.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen