Codierungseigenschaften

Die Encoder Windows Media Audio und Windows Media Video unterstützen eine Vielzahl von Codierungsmodi. Diese Modi werden in der Regel durch Festlegen von Eigenschaften für die Encoder-Media Foundation-Transformation (MFT) konfiguriert. Um die Dateicodierung durchzuführen, unabhängig davon, ob Sie Komponenten auf WMContainer-Ebene verwenden oder eine partielle Topologie erstellen, müssen Sie den Encoder entsprechend konfigurieren, indem Sie die Eigenschaften abhängig vom Codierungsmodus und dem Medientyp des Datenstroms festlegen. Derselbe Satz von Eigenschaften muss sowohl für den Encoder als auch für das Objekt (ASF-Dateisenke oder ASF-Multiplexer) festgelegt werden, die Sie zum Schreiben der ASF-Datei verwenden.

Die Encodereigenschaften sind in wmcodecdsp.h definiert. Die spezifischen Eigenschaften, die zum Konfigurieren des Encoders verwendet werden, werden mithilfe der Methoden der IPropertyStore-Schnittstelle festgelegt.

Audiostreameigenschaften

In der folgenden Tabelle sind die Encoderkonfigurationen für einen Audiostream aufgeführt.

Codierungstyp Eigenschaftsname – Wert
Codierung konstanter Bitrate MFPKEY_VBRENABLED – FALSE (Optional)Standardmäßig ist MFPKEY_VBRENABLED auf FALSE festgelegt.
Qualitätsbasierte Codierung variabler Bitraten MFPKEY_VBRENABLED – TRUE
MFPKEY_PASSESUSED - 1 (Optional)
Standardmäßig ist MFPKEY_PASSESUSED auf 1 festgelegt.
MFPKEY_DESIRED_VBRQUALITY - Von 0 auf 100
Codierung mit nicht eingeschränkter variabler Bitrate MFPKEY_VBRENABLED – TRUE
MFPKEY_PASSESUSED - 2
Codierung variabler Bitrate mit Spitzenbeschränkung MFPKEY_VBRENABLED – TRUE
MFPKEY_PASSESUSED - 2
MFPKEY_RMAX – Maximale Bitrate
MFPKEY_BMAX – Maximale Pufferfenster

 

Videostreameigenschaften

Die folgende Tabelle zeigt die Encoderkonfigurationen für einen Videostream.

Codierungstyp Eigenschaftenname
Codierung konstanter Bitrate MFPKEY_VBRENABLED – FALSE (Optional)
Standardmäßig ist MFPKEY_VBRENABLED auf FALSE festgelegt.
MFPKEY_VIDEOWINDOW – Pufferfenster
Qualitätsbasierte Codierung variabler Bitraten MFPKEY_VBRENABLED – TRUE
MFPKEY_PASSESUSED - 1 (Optional)
Standardmäßig ist MFPKEY_PASSESUSED auf 1 festgelegt.
MFPKEY_DESIRED_VBRQUALITY - Von 0 auf 100
Codierung mit nicht eingeschränkter variabler Bitrate MFPKEY_VBRENABLED – TRUE
MFPKEY_PASSESUSED - 2
Codierung variabler Bitrate mit Spitzenbeschränkung MFPKEY_VBRENABLED – TRUE
MFPKEY_PASSESUSED - 2
MFPKEY_RMAX – Maximale Bitrate
MFPKEY_BMAX – Maximale Pufferfenster

 

Konfigurieren des Eigenschaftenspeichers des Encoders

Sie müssen einen Encoder konfigurieren, indem Sie den Codierungstyp und die verschiedenen streamspezifischen Einstellungen vor der Codierungssitzung angeben. Sie müssen auch die Encodereigenschaften im Eigenschaftenspeicher eines ASF ContentInfo-Objekts festlegen, das das ASF-Headerobjekt der Ausgabedatei darstellt.

Wenn Sie einen Encoder MFT verwenden:

  1. Rufen Sie einen Verweis auf die IMFTransform-Schnittstelle des Encoders ab, wie unter Verwenden der IMFTransform-Schnittstelle eines Encoders beschrieben.
  2. Abfragen des Encoders MFT für die IPropertyStore-Schnittstelle .
  3. Festlegen der erforderlichen Eigenschaften durch Aufrufen von IPropertyStore::SetValue.

Wenn Sie die integrierten Encoderaktivierungsobjekte verwenden und die ASF-Dateisenke bereits konfiguriert haben, können Sie den Eigenschaftenspeicher der ASF-Mediensenke an MFCreateWMAEncoderActivate oder MFCreateWMVEncoderActivate übergeben. Der Encoder wird automatisch basierend auf den von der Anwendung angegebenen Einstellungen konfiguriert. Weitere Informationen finden Sie in der unter Verwenden der Aktivierungsobjekte eines Encoders beschriebenen Verfahren.

Weitere Informationen zum Erstellen von Media Foundation-Objekten mithilfe von Aktivierungsobjekten finden Sie unter Aktivierungsobjekte.

Instanziieren eines Encoder-MFT

Windows Media Encoder