Hallo,
@kurtm1 hat Deine Grafikkarte einen Videoausgang ? (Videorekorder)
An welche Aufnahmelaufzeiten denkst Du "Sekunden, Minuten, Stunden, Tage"
In Abhängiglkeit davon würde ich mir erstmal Gedanken darüber machen wie Du die Datenmenge
auf Seite schieben kannst.
Deinen Code kann man noch optimieren
einmalig die Objekte erzeugen
Funktionen wie Screen.DesktopWidth, Screen.DesktopHeight oder GetWindowDC(0)
außerhalb der function ScreenToFile ermittlen und als Register-Variable speichern
Dann Laufzeitmessungen (Geschwindigkeit) durchführen über
BitBlt (h, 0, 0, w, ...
dann ermitteln ob es an der Grafikkarte liegt oder am Treiber
Die Auflösung (Ausschnitt) wurde ebenfalls angesprochen
reicht eine 640x480 oder muss es wirklich 1280x1024 sein ?
Erst mal alle technischen Probleme angehen
bevor man wirklich sich zu tote hackt und dann nur noch Assembler der letzt Ausweg ist
Gibt es ähnliche Hardcopy-Routinen bei
DirectX oder
OpenGL ? und wie wird dort das Streaming
realisiert.
Vom TTimer würde ich die Finger lassen und eher einen eigenen MultiMediaTimer schreiben oder bei Torry suchen.
Früher
unter dem guten alten DOS
konnte man direkt auf den Bildspeicher zugreifen,
gibt es unter
Win32 die Möglichkeit den Speicher (Pages) der Grafikkarte direkt auszulesen ?
(Achtung Synchronisation ((hier sind dann wieder die Threads gefragt)) )
ansonsten muss man sich in die Treiber-Entwicklung von Microsoft einarbeiten
ist dann hier ein
Win9x-System besser als ein abgeschiermtes NT, 2000 oder XP ...
naja, viele Fragen