IVideoFrameStep::Step-Methode (strmif.h)
[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]
Die Step
-Methode bewirkt, dass das Filterdiagramm um die angegebene Anzahl von Frames vorschritten wird.
Syntax
HRESULT Step(
DWORD dwFrames,
IUnknown *pStepObject
);
Parameter
dwFrames
Gibt die Anzahl der zu überspringenden Frames an. Wenn dwFrames den Wert 1 aufweist, wird das Diagramm um einen Frame vorwärts ausgeführt. Wenn dwFrames eine Zahl n größer als 1 ist, überspringt das Diagramm n bis 1 Frames und zeigt den n n tenFrame an.
pStepObject
Zeiger auf eine Schnittstelle im Filter, die den Schrittvorgang steuert, oder NULL. Geben Sie NULL an, um den Frameschritt mit dem Rendererfilter im Graphen auszuführen. Wenn nicht NULL, muss das Objekt die IKsPropertySet-Schnittstelle implementieren und die AM_KSPROPSETID_FrameStep-Eigenschaft unterstützen. (Weitere Informationen finden Sie unter Frame Stepping Property Set.) Wenn das Diagramm einen benutzerdefinierten Filter enthält, der das Frameschrittschritt implementiert, kann pStepObject einen Zeiger auf diesen Filter angeben.
Rückgabewert
Gibt ein HRESULT zurück. Die folgenden Werte sind möglich.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Erfolg. |
|
Das Frameschritten wird nicht unterstützt. |
|
Der pStepObject-Parameter ist ungültig. |
Hinweise
Wenn der Schrittvorgang abgeschlossen ist, sendet diese Methode eine EC_STEP_COMPLETE Ereignisbenachrichtigung an den Filtergraph-Manager, der ihn an die Ereignisschleife der Anwendung übergibt und den Filtergraphen auf einen angehaltenen Zustand festlegt.
Der Framesschritt in Echtzeit, d. h., wenn der Film mit 30 Bildern pro Sekunde wiedergegeben wird, dauert der Aufruf von IVideoFrameStep::Step mit dwFrames , der auf 60 festgelegt ist, 2 Sekunden. Alle Methoden in dieser Schnittstelle sind asynchron, sodass die Steuerung sofort an die Anwendung zurückgegeben wird.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | strmif.h (include Dshow.h) |
Bibliothek | Strmiids.lib |