IVMRFilterConfig::SetNumberOfStreams-Methode (strmif.h)
[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]
Die SetNumberOfStreams
-Methode legt die Anzahl der zu mischenden Streams fest und weist die VMR an, in den Mixermodus zu wechseln.
Syntax
HRESULT SetNumberOfStreams(
[in] DWORD dwMaxStreams
);
Parameter
[in] dwMaxStreams
Doppeltes Wort, das die maximale Anzahl von Eingabedatenströmen enthält, die der VMR mischen muss. Darf nicht größer als MAX_MIXER_STREAMS sein (16).
Rückgabewert
Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Bei einem Fehler wird ein Fehlercode zurückgegeben.
Rückgabecode | Beschreibung |
---|---|
|
Der Mixer ist bereits konfiguriert. |
|
Es wurde versucht, den Mixer für mehr als 16 Eingabedatenströme zu konfigurieren. |
|
Arbeitsspeicher zum Verwalten der Streams konnte nicht zugewiesen werden. |
Hinweise
dwMaxStreams sollte der Anzahl der erforderlichen Eingabenadeln entsprechen. Pins können nicht hinzugefügt oder entfernt werden, nachdem der VMR verbunden wurde. Wenn Sie im Voraus nicht wissen, wie viele Eingabedatenströme erforderlich sind, legen Sie dxMaxStreams auf die maximal erforderliche Anzahl fest. Der Wert 1 ist für dwMaxStreams gültig. Dieser Wert führt nicht dazu, dass zusätzliche Pins erstellt werden, erzwingt jedoch, dass die VMR in den "Mixermodus" wechselt. Daher können Sie nach dem Aufrufen dieser Methode Nicht mehr SetRenderingMode aufrufen, um den Modus auf VMRMode_Renderless
Der VMR erstellt so viele Eingabenadeln wie angegeben, ohne zu ermitteln, ob genügend Videospeicher vorhanden ist, um sie alle zu unterstützen. Dies liegt daran, dass es derzeit keine Möglichkeit hat, den Medientyp oder die Rechteckdimensionen zu kennen. Wenn später ein Upstream-Filter versucht, eine Verbindung mit einem Pin herzustellen, ist der Medientyp zu diesem Zeitpunkt bekannt, und der VMR untersucht den Videospeicher und schlägt die Verbindung fehl, wenn nicht genug vorhanden ist, um den Stream zu verarbeiten.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP mit SP1 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | strmif.h (include Dshow.h) |
Bibliothek | Strmiids.lib |
Weitere Informationen
IVMRFilterConfig-Schnittstelle