Codierungseigenschaften
Die Windows Media Audio und Windows Media Video-Encoder unterstützen eine Vielzahl von Codierungsmodi. Diese Modi werden in der Regel durch Festlegen von Eigenschaften auf dem Encoder Media Foundation Transform (MFT) konfiguriert. Zum Ausführen der Dateicodierung, unabhängig davon, ob Komponenten auf WMContainer-Ebene oder eine partielle Topologie erstellt werden, müssen Sie den Encoder entsprechend konfigurieren, indem Sie Eigenschaften abhängig vom Codierungsmodus und dem Medientyp des Streams 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 werden in wmcodecdsp.h definiert. Die spezifischen Eigenschaften, die zum Konfigurieren des Encoders verwendet werden, werden mithilfe der Methoden der IPropertyStore-Schnittstelle festgelegt.
Audiostreameigenschaften
Die folgende Tabelle zeigt die Encoderkonfigurationen für einen Audiostream.
| Codierungstyp | Eigenschaftenname – Wert |
|---|---|
| Codierung der konstanten Bitrate | MFPKEY _ VBRENABLED – FALSE (optional)Standardmäßig ist MFPKEY _ VBRENABLED auf FALSE festgelegt. |
| Qualitätsbasierte Codierung mit variabler Bitrate | MFPKEY _ VBRENABLED – TRUE MFPKEY _ PASSESUSED – 1 (optional) Standardmäßig ist MFPKEY _ PASSESUSED auf 1 festgelegt. MFPKEY _ DESIRED _ VBRQUALITY – Von 0 bis 100 |
| Codierung der unkonstraineden Variablenbitrate | MFPKEY _ VBRENABLED – TRUE MFPKEY _ PASSESUSED - 2 |
| Codierung der variablen Bitrate mit eingeschränkter Spitzenrate | MFPKEY _ VBRENABLED – TRUE MFPKEY _ PASSESUSED - 2 MFPKEY _ RMAX – Maximale Bitrate MFPKEY _ BMAX – Maximales Pufferfenster |
VideoStream-Eigenschaften
Die folgende Tabelle zeigt die Encoderkonfigurationen für einen Videostream.
| Codierungstyp | Eigenschaftenname |
|---|---|
| Codierung der konstanten Bitrate | MFPKEY _ VBRENABLED – FALSE (optional) Standardmäßig ist MFPKEY _ VBRENABLED auf FALSE festgelegt. MFPKEY _ VIDEOWINDOW – Pufferfenster |
| Qualitätsbasierte Codierung mit variabler Bitrate | MFPKEY _ VBRENABLED – TRUE MFPKEY _ PASSESUSED – 1 (optional) Standardmäßig ist MFPKEY _ PASSESUSED auf 1 festgelegt. MFPKEY _ DESIRED _ VBRQUALITY – Von 0 bis 100 |
| Codierung der unkonstraineden Variablenbitrate | MFPKEY _ VBRENABLED – TRUE MFPKEY _ PASSESUSED - 2 |
| Codierung der variablen Bitrate mit eingeschränkter Spitzenrate | MFPKEY _ VBRENABLED – TRUE MFPKEY _ PASSESUSED - 2 MFPKEY _ RMAX – Maximale Bitrate MFPKEY _ BMAX – Maximales Pufferfenster |
Konfigurieren der Eigenschaft des Encoders Store
Sie müssen einen Encoder konfigurieren, indem Sie vor der Codierungssitzung den Typ der Codierung und die verschiedenen streamspezifischen Einstellungen 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:
- Hiermit erhalten Sie einen Verweis auf die BENUTZEROBERFLÄCHEtransform-Schnittstelle des Encoders MFT, wie unter Verwenden der ENCODER-SCHNITTSTELLE FÜR DIETRANSFORM-Schnittstelle beschrieben.
- Abfragen des Encoder-MFT für die IPropertyStore-Schnittstelle.
- Festlegen der erforderlichen Eigenschaften durch Aufrufen von IPropertyStore::SetValue.
Wenn Sie die integrierten Encoderaktivierungsobjekte verwenden und bereits eine konfigurierte ASF-Dateisenke erstellt 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 von Aktivierungsobjekten eines Encoders beschriebenen Prozedur.
Weitere Informationen zum Erstellen von Media Foundation-Objekten mithilfe von Aktivierungsobjekten finden Sie unter Activation Objects.