共用方式為


使用 Two-Pass 編碼(Microsoft 媒體基礎)

雙階段編碼可使用於某些 Windows 媒體編解碼器的常數比特率 (CBR) 和可變比特率 (VBR) 編碼。 您可以透過擷取 MFPKEY_PASSESRECOMMENDED 屬性,找到編解碼器支援的編碼傳遞數目上限。 沒有一個編解碼器支援兩個以上的傳遞。 將 DMO 設定為使用兩次處理,方法是將 MFPKEY_PASSESUSED 屬性設定為 2。

將樣本逐一傳送至編碼器 DMO,就像您在單次傳遞模式中一樣。 當您處理前置處理階段的輸入範例時,呼叫 IMediaObject::P rocessInputIMFTransform::P rocessInput 會傳回 S_FALSE,表示不會產生任何輸出。

在第一次傳遞結束時(在第一次處理最後一個輸入之後),您接著必須設定 MFPKEY_ENDOFPASS 屬性,通知編解碼器下一個處理的輸入是第二次傳遞的第一個輸入。 此屬性不需要任何值,因此您應該使用空 VARIANT 結構。

Windows Media 編解碼器