Anscheinend geht das über die GDI in der WinAPI. Hat da schon einer Erfahrung damit?
Hallo,
gibt es eine Möglichkeit den Framebuffer in Windows XP auszulesen? Programmiesprache ist egal. Ich stoß immer nur auf Linux Lösungen.
Gruß Hacker
Ich würde ja gern die Welt verändern..., doch Gott gibt mir den Quellcode nicht!
Anscheinend geht das über die GDI in der WinAPI. Hat da schon einer Erfahrung damit?
Ich würde ja gern die Welt verändern..., doch Gott gibt mir den Quellcode nicht!
Welche Framebuffer willst du lesen ?
Ist dein Thema Video ?
Gruß
P: Meine Tochter (06.11.07) und https://www.carnine.de
M: Träumen hat nix mit Dummheit zu tun es ist die Möglichkeit neues zu erdenken
mit GetDC(NULL) ein handle besorgen, mit CreateBitmap() ein Pufferbild erzeugen, und mit BitBlt() rüberkopieren.
dann hast du aber im grunde nur einen screenshot deines desktops. wenn ein programm directDraw verwendet, oder openGL, sind eher diese libraries ein ansatzpunkt.
direkt aus dem grafikram zu lesen ist (vermute ich) schwieriger, weil windows die hardware verwaltet, und dich da so einfach nicht ranlässt.
gruesse
EDIT: es ist aber nicht unmöglich. es gibt programme, die zB. bei spielen im hintergrund mitlaufen können, und als framegrabber ständig den bildschirminhalt sichern, um daraus ein video zu machen.
Ich hab da ein VC - Project, in dem ich von der Kamera oder aus einer AVI-File mit den Video-daten herumwurstle.
An sich steht da alles drin, was du dazu brauchst.
Natürlich nicht sehr komfortabel, logo, is'n nur ein Prototype.
(da müßtest du schon mitdenken, um damit was anzufangen)
Würde dir sowas helfen ?
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
(Als Attachment hat's nicht geklappt)
http://www.oldformation.at/electronic/download/down.htm
Versuch mal, ob es klappt.
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
Fein, und laß deine Mietze schön grüssen...guck ich mir den code mal durch.
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
Hallo Hacker,
in der MSDN lib ist das alles schön dokumentiert.
Du schreibst dir einfach eine callback function und meldest sie mit capSetCallbackOnFrame an.
Deine callback function erhält dann immer einen pointer auf eine videohdr struktur und diese enthält einen pointer auf den framebuffer. Dort bedienst du dich dann nach Herzenslust.
grüsse,
vohopri
Lesezeichen