Share via


IAsyncReader::SyncReadAligned-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 SyncReadAligned -Methode führt einen synchronen Lesevorgang aus. Die -Methode blockiert, bis die Anforderung abgeschlossen ist. Die Dateipositionen und die Pufferadresse müssen ausgerichtet werden. Überprüfen Sie die Zuteilungseigenschaften auf die erforderliche Ausrichtung.

Syntax

HRESULT SyncReadAligned(
  IMediaSample *pSample
);

Parameter

pSample

Zeiger auf die IMediaSample-Schnittstelle eines vom Aufrufer bereitgestellten Medienbeispiels.

Rückgabewert

Gibt einen HRESULT-Wert zurück. Die folgenden Werte sind möglich.

Rückgabecode Beschreibung
VFW_E_BADALIGN
Ungültige Ausrichtung.
S_FALSE
Weniger Bytes als angefordert abgerufen. (Wahrscheinlich wurde das Ende der Datei erreicht.)
S_OK
Erfolg.

Hinweise

Rufen Sie vor dem Aufrufen dieser Methode ein Medienbeispiel aus dem Zuteilungsgeber des Pins ab. Zeitstempel des Beispiels mit den Byteoffsets, die Sie anfordern, einschließlich erster und letzter, multipliziert mit 10.000.000. Byteoffsets sind relativ zum Anfang des Datenstroms.

Die Start- und Stopppositionen sollten mit der Ausrichtung übereinstimmen, die beim Verbinden der Pins festgelegt wurde. Andernfalls gibt die Methode VFW_E_BADALIGN zurück. Wenn die vereinbarte Ausrichtung gröber als die tatsächliche Ausrichtung des Streams ist, kann die Stoppposition die tatsächliche Dauer überschreiten. Wenn ja, rundet die Methode die Stoppposition auf die tatsächliche Ausrichtung ab.

Diese Methode führt einen nicht gepufferten Lesevorgang aus, sodass sie möglicherweise schneller als die IAsyncReader::SyncRead-Methode ist.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile strmif.h (include Dshow.h)
Bibliothek Strmiids.lib

Weitere Informationen

Fehler- und Erfolgscodes

IAsyncReader-Schnittstelle