(strmif.h) IEncoderAPI 介面

[與此頁面相關聯的 功能 Microsoft TV Technologies 是舊版功能。 Microsoft 強烈建議新程序代碼不使用此功能。]

[IEncoderAPI 不再可供使用。 請改用 ICodecAPI。]

IEncoderAPI 介面會定義應用程式和驅動程式與實作介面的第三方硬體或軟體編碼器通訊的標準方式。 如需此介面的詳細資訊,請參閱 編碼器 API

繼承

IEncoderAPI 介面繼承自 IUnknown 介面。 IEncoderAPI 也有下列類型的成員:

  • 方法

方法

IEncoderAPI 介面具有這些方法。

 
IEncoderAPI::GetDefaultValue

如果參數存在,GetDefaultValue 方法會擷取參數的預設值。
IEncoderAPI::GetParameterRange

GetParameterRange 方法會擷取參數支援的有效值範圍,以防參數支援階梯狀範圍,而不是特定值的清單。
IEncoderAPI::GetParameterValues

GetParameterValues 方法會擷取指定參數所支援的值清單。
IEncoderAPI::GetValue

GetValue 方法會擷取指定參數的目前值。
IEncoderAPI::IsAvailable

IEncoderAPI 不再可供使用。 (IEncoderAPI.IsAvailable)
IEncoderAPI::IsSupported

IsSupported 方法會查詢是否支援指定的參數。
IEncoderAPI::SetValue

SetValue 方法會設定參數的目前值。

備註

在各種介面方法中,uuids.h 中定義的下列 GUID 可用來指出要設定或擷取的參數。

參數 Description
ENCAPIPARAM_BITRATE 指定每秒位的比特率。 在常數比特率 (CBR) 模式中,值會提供常數比特率。 在任一可變比特率模式中,它會提供平均比特率。 此值為32位無符號長。
ENCAPIPARAM_PEAK_BITRATE 指定尖峰比特率。 只有當 ENCAPIPARAM_BITRATE_MODE 已設定為 VariableBitRatePeak 時,此參數才相關。
ENCAPIPARAM_BITRATE_MODE 指定位速率模式,做為 VIDEOENCODER_BITRATE_MODE 列舉值, (32 位帶正負號的長) 。

下表描述 VIDEOENCODER_BITRATE_MODE中所定義之兩種可變比特率模式中,編碼器在極高或低比特率情況下的預期行為。

條件 模式 行為
場景落在黑色或零動作 VariableBitRateAverage 在短時間內 (數秒,) 比特率會低於為 ENCAPIPARAM_BITRATE 參數指定的速率。 但在四分鐘的期間內,編碼器會視需要將「虛擬」位新增至數據流,以維持平均速率。
場景落在黑色或零動作。 VariableBitRatePeak 比特率會低於ENCAPIPARAM_BITRATE參數值中指定的預期速率。 速率會維持在該層級,直到更複雜的場景開始為止。
場景非常複雜。 VariableBitRateAverage 幾秒鐘后,速率就會增加。 如果場景維持複雜狀態,速率會回復,而且圖片會變成封鎖狀態,以維持ENCAPIPARAM_BITRATE參數值中指定的平均值。
場景非常複雜。 VariableBitRatePeak 速率會向上並持續增加,可能高於ENCAPIPARAM_BITRATE參數值中指定的預期速率,但絕不會高於ENCAPIPARAM_PEAK_BITRATE參數中指定的尖峰。

OCUR 裝置

此介面支援 (OCUR) 裝置的 OpenCable 單向纜線接收器。 請參閱 OCUR 裝置

規格需求

需求
目標平台 Windows
標頭 strmif.h (包含 Dshow.h)

另請參閱

編碼器 API