AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi TBitmap32 in ByteArray (schneller) oder Alternative
Thema durchsuchen
Ansicht
Themen-Optionen

TBitmap32 in ByteArray (schneller) oder Alternative

Ein Thema von Delphi-Narr · begonnen am 15. Apr 2013 · letzter Beitrag vom 16. Apr 2013
 
Benutzerbild von Delphi-Narr
Delphi-Narr

Registriert seit: 29. Aug 2009
Ort: Duisburg
437 Beiträge
 
Delphi 2007 Professional
 
#1

TBitmap32 in ByteArray (schneller) oder Alternative

  Alt 15. Apr 2013, 20:36
Hallo,

ich arbeite immer noch an meinem Plugin für die Logitech G19 und habe nun ein weiteres Problem, welches die Performance betrifft.
Die G19 DLL erlaubt es, ein 320x240 Bitmap auf den Bildschirm der Tastatur zu legen und das bis zu 60 mal pro Sekunde.
Bisher möchte ich lediglich eine Progressbar anzeigen lassen, welche ich zuvor auf ein Bitmap32 zeichne.
Allein das häufige Zeichnen lässt die CPU schon ordentlich arbeiten (5% bei einem AMD FX-8120, per Timer gesteuertes Neuzeichnen alle 30ms) und die
DLL Funktion will das Bitmap auch als Bytearray haben, welches 320*240*4 Bytes enthält.
Ein Pixel setzt sich dabei aus je 4 Bytes zusammen: B G R Alpha
Um das Bitmap jetzt in ein solches Array zu konvertieren wird jedes Mal eine Schleife über alle Pixel des Bitmaps durchlaufen und die Farben dann
in das Array geschrieben (Seit Kurzem gibts dabei jetzt eine Zugriffsverletzung, obwohl es bis eben noch klappte - Reboot wirds schon richten).
Bei diesem Verfahren rackert der Prozessor dann bei 12% und das ist für ein kleines Applet wesentlich zu viel!
Gibt es eine Alternative, die 320*240 Grafiken zu erstellen und diese als Bytearray zu formatieren, ohne dabei derartig Ressourcen zu verballern?

Viele Grüße!

Geändert von Delphi-Narr (15. Apr 2013 um 22:35 Uhr)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz