(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) |