AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia TWicImage und seine Ladezeiten
Thema durchsuchen
Ansicht
Themen-Optionen

TWicImage und seine Ladezeiten

Ein Thema von Delbor · begonnen am 28. Mai 2012 · letzter Beitrag vom 2. Jun 2012
Antwort Antwort
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#1

TWicImage und seine Ladezeiten

  Alt 28. Mai 2012, 13:17
Hi zusammen

Mit folgender Prozedur lade ich eine NEF-Datei:

Code:
procedure TTWICImageMain.Oeffnen1Click(Sender: TObject);
  var P : TPicture; G: TGraphic; H,W: Integer; Path: String;
      freq, startTime, endTime: Int64; startTimer, EndTimer: Cardinal;
begin
  if OpenPictureDialog1.Execute then begin
    StartTimer := GetTickCount;
    QueryPerformanceFrequency(freq);
    QueryPerformanceCounter(startTime);
    Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
    QueryPerformanceCounter(endTime);
    EndTimer := GetTickCount;
    Image1.Invalidate;
    G := Image1.Picture.Graphic;
    H := G.Height;
    W := G.Width;
    Edit1.Text := G.ToString +' / Hoehe ='+ IntToStr(H) + ' / Breite ='+ IntToStr(W);
    Memo1.Lines.Add('Format := ' + WICImageFormatDescription(FWIC));
    Memo1.Lines.Add('GetTickCount benötigte etwa ' + IntToStr(EndTimer - startTimer) + ' ms');
    Memo1.Lines.Add(('QueryPerformanceCounter benötigte etwa ' + 
                      IntToStr((endTime - startTime) * 1000 div freq) + 'ms Ladezeit'));
  end
  else
    raise Exception.Create('Die Datei existiert nicht'); { Otherwise raise an exception. }
end;
Dabei messe ich die Zeit, welche TPicture, bzw. TWicImage benötigt, um das Bild zu laden - sie beträgt sage und schreibe mehr als fünf Sekunden!
Ginge es nur um eines oder zwei Bilder, wäre das letztlich egal. Die Bilder sollen aber von einer Sandisk gelesen, daraus Thumbnails erstellt und schliesslich die Originale und diese Thumbnails in eine Datenbank geschrieben werden - und auf dieser Sandisk können, je nach Ergiebigkeit einer Fotopirsch, bis zu 4 - 600 Bilder liegen. Das ergäbe bis zu 50 Minuten für nur diesen Vorgang!! Kommt hinzu, dass Irwanview solche Bilder sehr viel schneller lädt. Da beträgt die gefühlte Zeit wohl weniger als eine Sekunde...

Ich suche jetzt schon weiss nicht wie lange, Stichworte sind TDirect2DCanvas, TDirect2DCanvas.Graphic etc.
Aber auch wenn ich auf den Seiten von Embarcadero wohl schon (fast?) alles dazu durch habe, fühl ich mich wie ein Fussgänger in der Wüste - ich komme irgendwie immer an den Anfang zurück...

Übrigens - ich hab das auch schon hier zur Sprache gebracht.

Hat jemand einen Tip, wie man die Sache beschleunigen könnte?
Danke!

Gruss
Delbor

PS: Ups, vielleicht gehts ja doch etwas genauer:

Zitat:
Hat jemand einen Tip, wie man die Sache beschleunigen könnte?
Damit meine ich natürlich, wie man die Grafiken schneller laden kann
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch

Geändert von Delbor (28. Mai 2012 um 20:20 Uhr)
  Mit Zitat antworten Zitat
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: TWicImage und seine Ladezeiten

  Alt 2. Jun 2012, 09:43
Hi zusammen

Eine Teillösung ist die Installation des neuesten Codecs. Mittlerweile bietet auch Microsoft ein solches Ding an. Dessen Vorteil gegenüber einer kameraspezifischen Lösung ist, dass er verschiedene RAW-Formate versteht.
Seit ich das Ding installiert habe, werden meine NEF-Dateien rund dreimal schneller geladen - in etwa 1.6 bis 2 Sekunden statt in 5.5 bis 6.5 Sekunden.
Die aber immer noch etwas langen Ladezeiten dürften jedoch auf meine inzwischen 6-jährige Grafikkarte zurückgehen.

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:35 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