Verwenden von Two-Pass Encoding (Microsoft Media Foundation)
Die Zwei-Pass-Codierung kann für die Codierung mit konstanter Bitrate (CONSTANT Bit Rate, CBR) und für die Codierung mit variabler Bitrate (VBR) mit einigen der Windows Mediencodecs verwendet werden. Sie können die maximale Anzahl von Codierungsdurchläufen ermitteln, die von einem Codec unterstützt werden, indem Sie die MFPKEY _ PASSESRECOMMENDED-Eigenschaft abrufen. Keiner der Codecs unterstützt mehr als zwei Durchläufe. Konfigurieren Sie die DMO für die Verwendung von zwei Durchläufen, indem Sie die MFPKEY _ PASSESUSED-Eigenschaft auf 2 festlegen.
Übermitteln Sie die Beispiele an den Encoder DMO nacheinander, wie sie im One-Pass-Modus durchgeführt werden würden. Wenn Sie die Eingabebeispiele für Ihren Vorverarbeitungsdurchlauf verarbeiten, geben die Aufrufe von IMediaObject::P rocessInput oder DERTRANSFORM::P rocessInput S _ FALSE zurück, um anzugeben, dass keine Ausgabe erzeugt wird.
Am Ende des ersten Durchlaufs (nachdem die letzte Eingabe zum ersten Mal verarbeitet wurde) müssen Sie dann die MFPKEY _ ENDOFPASS-Eigenschaft festlegen, um den Codec zu benachrichtigen, dass die nächste verarbeitete Eingabe die erste Eingabe des zweiten Durchlaufs ist. Für diese Eigenschaft ist kein Wert erforderlich, daher sollten Sie eine leere VARIANT-Struktur verwenden.