Bilderstapel schnell durchschalten? Speicherprobleme.

muckelzwerg

Bekanntes Mitglied
Hey, ich hab da mal ein Problem. ;)
Ich habe Rotationsvideos von verschiedenen Objekten. (Modellautos, Menschen ... egal)
Die Videos liegen als Bilder vor und sollen in einem Java-Frontend angezeigt werden.
Allerdings laufen die kleinen Filme nicht einfach nur ab, sondern werden mit einer Scrollbar vorwärts und rückwärts gespult.
(Das entspricht dann einer Drehung des Objekts.)

1) Eigentlich würde ich die Bilder auf die Grafikkarte schieben und den Stapel dann durchblättern. Leider geht das in dieser Umgebung nicht, es muss mit normalen Java2D/Swing Hausmitteln gelöst werden.

2) Da es um eine Demo von etwas anderem geht und <keine> große Rolle spielt, wie gut die Anzeige implementiert ist, habe ich sämtliche Bilder in Bufferedimages geladen und wollte sie durchschalten/durchscrollen lassen.
Mit entsprechend hochgesetztem Speicher geht das auch gerade so. Allerdings ist das dann selbst für eine Demo doch etwas zu heftig.

3) Gibt es Alternativen mit "Compressed Images"? Schafft man da 30-60Hz? Geht sowas in Java ohne großen Aufwand? Also quasi ein Ersatz für das BufferedImage, der die Daten nur auf Anfrage dekomprimiert und sonst im Hintergrund z.B. ein JPG/PNG verwendet?

4) Gibt es Alternativen mit Videoformaten? Die Bilder sind sowieso aus Filmen extrahiert (flv und mp4). Gibt Videoplayer für Java, die ein schnelles Spulen bei einigermaßen großen Bildern (720x720 z.B.) ermöglichen?

5) Hat jemand Empfehlungen welche Kompressionen/Videoformate sich da eigenen?

6) Irgendwas anderes? ...
 
Zuletzt bearbeitet:

Marco13

Top Contributor
Zu 3: Theoretisch (und auch praktisch) kann man die Daten eines JPG- oder PNG-Bildes in einem Byte-Array speichern, und dann mit ImageIO über einen ByteArrayInputStream die Daten da als BufferedImage rauslesen. Allerdings wird DA dann das Problem sein, dass das kaum mit 30 FPS hinzukriegen sein wird. Sonst... Video kann halt beliebig aufwändig werden, und 720x720 mit 30 FPS schafft man da auch nicht ohne weiteres....
 

muckelzwerg

Bekanntes Mitglied
Stimm ja, ich kann die Daten für ImageIO natürlich vorher laden. *gnä*
Aber ich fürchte auch die Chancen, dass es schnell genug geht, sind ziemlich gering.
 

Marco13

Top Contributor
Je nachdem, um welche Arten von Bildern es sich handelt, KÖNNTE man ausprobieren, was sich erreichen läßt, wenn man die Daten in anderen komprimierten Formaten speichert (d.h. im byte array liegen hat). JPG zu dekomprimieren ist wohl relativ langsam, PNG ist AFAIK einiges schneller, aber man könnte auch mal probieren, was es bringt, den byte array pratkisch ganz normal mit ZIP zu komprimieren. Wenn die Bilder z.B. "große" gleichfarbige Bereiche haben, könnte das den benötigten Speicher schon reduzieren, und AFAIK ist ZIP relativ schnell. Aber zuuu viel Hoffnung, dass man das 30 mal Pro Sekunde machen kann, würde ich mir nicht machen...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Einfache Navigations-App schnell selber Programmieren? Bitte um Ideen und Anregungen. Allgemeine Java-Themen 17
K Große JSON-Dateien schnell und effizient verarbeiten Allgemeine Java-Themen 16
T Collections Liste schnell/nebenläufig durchgehen Allgemeine Java-Themen 2
S Schnell eine fortlaufende nummer erzeugen SQL, kein Primkey Allgemeine Java-Themen 8
A Möglichkeiten, ein Bild schnell auszuwerten Allgemeine Java-Themen 56
parite.b schnell frage ;) API CONTENTS ? Allgemeine Java-Themen 5
E brauche schnell Ausführbare Datei Allgemeine Java-Themen 4
G ganzzahlige Potenz schnell berechnen Allgemeine Java-Themen 4
T Serialisierung: Wie macht RMI das so schnell? Allgemeine Java-Themen 14
G schnell Strings vergleichen Allgemeine Java-Themen 4
G Datenbank-Anwendung schnell erstellen. Allgemeine Java-Themen 7
J Datei Inhalt vergleichen (schnell & effizient!) Allgemeine Java-Themen 10
M Schnell kleine Hilfe gesucht! Allgemeine Java-Themen 3
C Daten möglichst schnell einem Baum zuordnen Allgemeine Java-Themen 2
M 2-dimensionalen array schnell kopieren Allgemeine Java-Themen 6
G Soundsamples schnell hintereinander abspielen Allgemeine Java-Themen 4
T Bilder schnell in BufferedImage laden Allgemeine Java-Themen 4
A mein Frame wird nicht schnell genung aktualisiert Allgemeine Java-Themen 7
F Große Dateien schnell einlesen Allgemeine Java-Themen 14

Ähnliche Java Themen

Neue Themen


Oben