Thema: Delphi Video Speichern (DSPack)

Einzelnen Beitrag anzeigen

chris_82

Registriert seit: 26. Aug 2003
112 Beiträge
 
Delphi 6 Enterprise
 
#1

Video Speichern (DSPack)

  Alt 4. Dez 2003, 21:55
Also ich bin gerade dabei einn Prog zum capturen von des Bildes einer Webcam zu schreiben.

Ich Stell das Bild in einem VideoWindow dar und möchte dieses nun speichern, dazu hab ich bis jetzt folgenden Code:

Delphi-Quellcode:
procedure TCapSource.SaveVideo(VideoWindow:TVideoWindow);
var
  multiplexer: IBaseFilter;
  Writer: IFileSinkFilter;
  i: integer;
  mypath:widestring;
begin
  mypath:='D:\test.avi';

  FilterGraph.Active := true;

  with FilterGraph as IcaptureGraphBuilder2 do
  begin
   SetOutputFileName(MEDIASUBTYPE_Avi, PWideChar(mypath), multiplexer, Writer);

     if Filter.FilterGraph <> nil then
      RenderStream(@PIN_CATEGORY_CAPTURE, nil, Filter as IBaseFilter,
        nil, multiplexer as IBaseFilter);

  end;
end;
So dann die datei erscheint auch in dem Verzeichnis,aber wenn ich das Prog stoppe, dann verschwindet sie wieder.

Liegt ja , falls in dem Code kein Fehler sein sollte und ich recht habe , daran, dass die Aufnahme nicht wieder gestoppt wird. Nur hab ich noch keine Möglichkeit gefunden das zu machen. Weil ich möchte ja, dass das Bild in dem VideoWindow weiter angezeigt wird. und nicht das die Filter getrennt werden.

Hier noch mal die Variablen in der Klasse:

Delphi-Quellcode:
var capenum:TSysDevEnum;
    FilterGraph:TFilterGraph;
    Filter:Tfilter;
    SampleGrabber:TSampleGrabber;
....oop und nun...??
http://www.sengewald.info
  Mit Zitat antworten Zitat