Moin Sharky,
die einfachste Variante die mir dazu einfällt, wäre es Screenshots zu machen, diese abzuspeichern, und mit einer Software, die aus BMPs AVIs macht umzuwandeln.
Ein Screenshot lässt sich selbst bei 1280er Auflösung sehr schnell machen, nur ist der Platzbedarf dann nicht sonderlich gering.
Ich hab' mir dass mal so geschrieben:
Delphi-Quellcode:
function TForm1.ScreenShot(const AiLeft : integer;const AiTop : integer;const AiWidth : integer;const AiHeight : integer) : TBitmap;
var
dcWork : HDC;
begin
try
Result := TBitmap.Create;
Result.Width := AiWidth;
Result.Height := AiHeight;
dcWork := GetDC(0);
try
BitBlt(Result.Canvas.Handle,0,0,AiWidth,AiHeight,dcWork,AiLeft,AiTop,SRCCOPY);
finally
ReleaseDc(0, dcWork);
end;
except
FreeAndNil(Result);
end;
end;
Vermutlich wird das ganze daran scheitern, dass das Abspeichern der einzelnen Screenshots zeitintensiv ist.