Verwenden des Windows Media Audio Voice Codec
Der Windows Media Audio Voice-Codec bietet eine niedrige Bitratenkomprimierung, die für Audio mit Sprache optimiert ist. Die Fähigkeit des Codecs, so kleine Stichproben zu erzeugen, ist auf den begrenzten Frequenzbereich der Töne der menschlichen Stimme zurückzuführen. Diese Optimierung bedeutet, dass ein dedizierter Sprachencoder eine ausgabeschwache Ausgabe für Inhalte erstellt, die kompliziertere Sounds wie Musik enthalten. Der Windows Media Audio Voice-Codec kompensiert dieses potenzielle Qualitätsproblem jedoch durch die Bereitstellung separater Modi für Stimme, Musik und gemischte Inhalte. Der Codec analysiert gemischten Inhalt, um zu bestimmen, welcher Modus für jeden Teil der Datei verwendet werden soll.
Der Windows Media Audio Voice-Codec wird im Encoderobjekt implementiert, das durch den Klassenbezeichner CLSID _ CWMSPEncMediaObject2 identifiziert wird, und im Decoderobjekt, das durch den Klassenbezeichner CLSID _ CWMSPDecMediaObject identifiziert wird. Das Formattag der Medientypen, die diesen Codec verwenden, ist 0x00A.
Konfigurieren des Encoders
Der Sprachencoder unterstützt drei Modi: Sprache, Musik und Gemischt. Jeder Modus ist optimiert, um die besten Ergebnisse für diesen Inhaltstyp zu erhalten. Sie können den Modus des Sprachencoders konfigurieren, indem Sie die Methoden von IPropertyStore verwenden, um die MFPKEY _ WMAVOICE _ ENC _ MusicSpeechClassMode-Eigenschaft festzulegen.
Bei Der Konfiguration für gemischten Inhalt erkennt der Windows Media Audio Voice-Codec automatisch Musikabschnitte im Inhalt. Wenn Sie mit den Ergebnissen nicht zufrieden sind, können Sie den Speicherort der Musik im Inhalt mithilfe einer Bearbeitungsentscheidungsliste (Editing Decision List, EDL) angeben. Weitere Informationen finden Sie unter Using an Editing Decision List for Encoding Voice.
Im Gegensatz zu den anderen Audioencodern können Sie den Pufferfensterwert für Sprachinhalte mithilfe der MFPKEY _ WMAVOICE _ ENC _ BufferWindow-Eigenschaft festlegen. Die Standardwerte sollten jedoch in den meisten Fällen einwandfrei funktionieren.
Hinweis
Beim Konfigurieren des Sprachencoders ist es sehr wichtig, dass Sie den Ausgabetyp festlegen, bevor Sie den Eingabetyp festlegen. Dies ist die empfohlene Reihenfolge der Vorgänge für alle Audiocodecs, aber der Sprachencoder kann fehlerhafte Ausgabetypen melden, wenn eine Eingabe festgelegt wird, wenn Sie IMediaObject::GetOutputType oder EINENTRANSFORM::GetOutputType aufrufen.
Decodierung
Es gibt keine besonderen Anforderungen für die Decodierung von Sprachaudiodaten. Weitere Informationen finden Sie unter Konfigurieren der Audiodecodierung.