Hallo, Delphi- Freunde !
Wer kennt sich mit VFW aus ? Problem AVI- Capturen: Capturen funktioniert- hab' da schon was zusammenbekommen...Aber ich brauche noch die Anzahl der gecaptureten Frames, sowie der Dropped Frames...VFW bietet dazu unter CAPSTATUS an:
DWORD dwCurrentVideoFrame; # of video frames cap'td
DWORD dwCurrentVideoFramesDropped; # of video frames dropped
Sollte doch dem Namen nach so sein, daß man
während des Capturens dort die Anzahl der gecaptureten Frames/ Dropped Frames abgreifen kann.
Ein Versuch, etwas anzuzeigen, schlägt aber fehl.
Weder die Anzeige in einem Editfeld (zeigt immer "1") noch dasselbe mit Hilfe
eines Timers funktioniert (zeigt immer "5346703717930793", egal, welches Timerintervall).
Gefunden habe ich auch nichts drüber. Nur einen Trick mit einem Timer, der nebenbei mitläuft und die Anzahl der Frames "künstlich" darstellt (Zeit/ Millisekunden für einen Frame), das kann es doch nicht sein...
In einigen Samples, die ich fand, wurde ein Errorstring von der AVICAP-
Unit abgegriffen, der steht aber erst nach dem Capture- Vorgang zur Verfügung...
Hat da jemand 'ne Idee, was da falsch läuft ?
ft16a
Delphi-Quellcode:
procedure TMain.Timer1Timer(Sender: TObject);
VAR
_CapStatus: TCapStatus ;
_CapturedFrames: Int64 ;
begin
_CapturedFrames:= _CapStatus.dwCurrentVideoFrame + _CapturedFrames ;
Edit_Frame.Text := IntToStr(_CapturedFrames) ;
end;