mikrocontroller.net

Forum: PC-Programmierung libpng Speicherverbrauch eindampfen


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.
Autor: Mw E. (Firma: fritzler-avr.de) (fritzler)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
kennt sich hier wer mit libpng aus?

Ich würde da gerne den Speicherverbauch eindampfen, damit es auf einem 
µC mit 128k RAM läuft.
Bei der Codegröße hab ich noch garnicht nachgeforscht, aber ich hab 1MB 
Flash.

Nur der Zlib Kompressor holt sich immer 4x64k, das ist dann doch etwas 
viel.
Auch wenn ich die Komprimierung abschalte zieht der sich 4x64k. (ja gut 
dann wäre png eh hinfällig)
Der sonstige Verbrauch wurde schon reduziert durch zeilenweises 
Bildfüttern und Buffer verkleinern.

Gibts da noch eine Einstellung dem Kompressor das abzugewöhnen?
Der Code ist im Anhang mit Kommentaren was wieviel Speicher zieht.

Zur Not muss die SCreenshotfunktion doch bmp ausspucken.

Autor: chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine passende pnglib verwenden?

bspw lodepng

Autor: Mw E. (Firma: fritzler-avr.de) (fritzler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei lodepng hab ich mal kurz in die Doku geguckt.
Die können leider nur immer ein ganzes Bild aus dem RAM zu einem png 
codieren.
Bei mir liegt das Bild aber nie komplett im RAM.

Aber ja, ich muss mir mal noch andere libs ansehen.
Hat da wer einen Vorschlag für eine png lib die wenig RAM braucht und 
das Bild Zeilenweise/Teilweise schreibt?

Ansonsten müsst ich ein paar durchtesten auf den Speicherverbrauch.

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.