共用方式為


設定音訊編碼 (Microsoft Media Foundation)

Windows 媒體音訊編碼器會以完整的格式列舉其所有支持的輸出類型。 藉由呼叫 IMediaObject::GetOutputTypeIMFTransform::GetAvailableOutputType來擷取您想要的類型後,直接將該類型作為輸出類型設定,方法是呼叫 IMediaObject::SetOutputTypeIMFTransform::SetOutputType

音訊編碼器所支援的輸出媒體類型會隨著編碼器屬性的設定而變更。 您必須先設定您想要使用的所有編碼器屬性,才能列舉輸出類型。

音訊編碼器支援雙傳遞和 VBR 模式,但設定方式與視訊不同。 如需詳細資訊,請參閱 列舉特定編碼模式的音訊類型

在您設定輸出類型之前,音訊編碼器所支援的輸入類型無法使用。 如果您在設定輸出類型之前呼叫 IMediaObject::GetInputTypeIMFTransform::GetInputType,則方法會分別傳回DMO_E_NO_MORE_ITEMS或MFT_E_NO_MORE_TYPES。 設定輸出類型之後,編碼器會列舉它針對所選輸出類型所支援的輸入類型。

Windows 媒體音訊編碼器不會執行音訊重新取樣。 這表示編碼器輸出類型和編碼器輸入類型必須具有相同數目的通道、每個樣本的位和取樣率。 如需詳細資訊,請參閱 尋找音訊編碼器輸出類型

注意

   音訊編碼器所列舉的每個輸出類型都包含一個由 AM_MEDIA_TYPE.pbFormat指向的 WAVEFORMATEX 結構,並附加延伸數據。 擴充數據的大小是由 WAVEFORMATEX.cbSize所指定。 此數據必須與編碼的內容一起保留,才能將其傳遞至譯碼器。 若沒有擴充格式數據,就無法解壓縮內容。

 

處理音訊