Videoaufnahme: Ein minimaler Ansatz
Die Videoaufnahme digitalisiert einen Datenstrom von Video- und Audiodaten und speichert ihn auf einer Festplatte oder einem anderen Persistentspeichergerät. In diesem Abschnitt wird beschrieben, wie Sie einer Anwendung mithilfe von drei Code-Anweisungen eine einfache Form der Videoaufnahme hinzufügen. Außerdem wird beschrieben, wie eine Erfassungssitzung beendet oder abgebrochen wird, indem Nachrichten an das Erfassungsfenster gesendet werden.
Ein AVICap-Erfassungsfenster verarbeitet die Details des Streamings von Audio- und Videoaufnahmen an AVI-Dateien. Dadurch wird ihre Anwendung von der Beteiligung am AVI-Dateiformat, der Verwaltung von Video- und Audiopuffern und dem low-level-Zugriff auf Video- und Audiogerätetreibern frei. AVICap bietet eine flexible Schnittstelle für Anwendungen. Sie können Ihrer Anwendung Videoaufnahmen hinzufügen, indem Sie nur die folgenden Codezeilen verwenden:
hWndC = capCreateCaptureWindow ( "My Own Capture Window",
WS_CHILD | WS_VISIBLE , 0, 0, 160, 120, hwndParent, nID);
SendMessage (hWndC, WM_CAP_DRIVER_CONNECT, 0 /* wIndex */, 0L);
SendMessage (hWndC, WM_CAP_SEQUENCE, 0, 0L);
Es ist auch eine Makroschnittstelle verfügbar, die eine Alternative zur Verwendung der SendMessage-Funktion bietet und die Lesbarkeit einer Anwendung verbessert. Im folgenden Beispiel wird die Makroschnittstelle verwendet, um einer Anwendung Videoaufnahmen hinzuzufügen.
hWndC = capCreateCaptureWindow ( "My Own Capture Window",
WS_CHILD | WS_VISIBLE , 0, 0, 160, 120, hwndParent, nID);
capDriverConnect (hWndC, 0);
capCaptureSequence (hWndC);
Nachdem Ihre Anwendung ein Erfassungsfenster der FENSTERklasse AVICap erstellt und mit einem Videotreiber verbindet, kann das Erfassungsfenster Daten erfassen. An diesem Punkt kann Ihre Anwendung einfach die WM _ CAP _ SEQUENCE-Nachricht (oder das CapCaptureSequence-Makro) senden, um mit der Erfassung zu beginnen.
Mithilfe der Standardeinstellungen initiiert WM CAP SEQUENCE die Erfassung von Video- und Audioeingaben in einer _ _ Datei namens CAPTURE.AVI. Die Erfassung wird fortgesetzt, bis eines der folgenden Ereignisse eintritt:
- Der Benutzer drückt die ESC-Taste oder eine Maustaste.
- Ihre Anwendung beendet oder bricht den Erfassungsvorgang ab.
- Der Datenträger wird voll.
In einer Anwendung können Sie das Streamen erfasster Daten an eine Datei beenden, indem Sie die WM _ CAP _ STOP-Nachricht (oder das CapCaptureStop-Makro) an ein Erfassungsfenster senden. Sie können den Erfassungsvorgang auch abbrechen, indem Sie die WM _ CAP _ ABORT-Nachricht (oder das CapCaptureAbort-Makro) an ein Erfassungsfenster senden.