共用方式為


編碼器屬性集

本節說明編碼器和編解碼器 API 特定的屬性集,這些屬性集可用於在 Microsoft Windows 98/Me、Windows 2000 和 Windows XP 和更新版本中使用 WDM 核心串流服務的編碼器迷你驅動程式。

每個屬性的參考頁面都包含一個表格,其中包含如下所示的直欄標題。

Get Set Target 屬性描述項類型 屬性值類型

這些標題具有下列意義:

  • Get

    目標 KS 物件是否支援KSPROPERTY_TYPE_GET屬性要求?

  • Set

    目標 KS 物件是否支援KSPROPERTY_TYPE_SET屬性要求?

  • Target

    這是將屬性要求傳送至的 KS 物件。 視訊編碼器屬性的目標是篩選或針腳。 (屬性要求會依其核心控制碼指定目標物件。

  • 屬性描述元類型

    屬性描述元會指定屬性,以及要對該屬性執行的作業。 The descriptor always begins with a KSPROPERTY structure.

  • 屬性值類型

    屬性有一個值,而此值的類型取決於屬性。 例如,屬性只能處於兩種狀態之一 (開啟或關閉) 通常具有 BOOL 值。 可以假設從 0x0 到 0xFFFFFFFF 的整數值的屬性可能具有 ULONG 值。 更複雜的屬性可能具有陣列或結構的值。

上述屬性描述元和屬性值是 KS 屬性、事件和方法中討論的實例規格和作業資料緩衝區的屬性特定版本。

屬性要求會使用下列其中一個旗標來指定要在屬性上執行的作業:

  • KSPROPERTY_TYPE_BASICSUPPORT

  • KSPROPERTY_TYPE_GET

  • KSPROPERTY_TYPE_SET

所有篩選器和釘選物件都支援其屬性的基本支援作業。 Whether they support the get and Set operations depends on the property. A property that represents an inherent capability of the filter or pin object is likely to require only a get operation. A property that represents a configurable setting might require only a Set operation, although a get operation might also be useful for reading the current setting. For more information about using the get, set, and basic-support operations with video encoder properties, see KS Properties.

每個屬性描述中的數據表會指出是否需要視訊編碼器迷你驅動程式來支援讀取或寫入屬性。 視訊編碼器迷你驅動程式應該傳回STATUS_NOT_SUPPORTED以回應,以取得或設定迷你驅動程式不支援之屬性的要求。

下列屬性集每個都包含必須由視訊編碼器迷你驅動程式實作的單一屬性。 That is, effectively each property gets its own set, so specify 0 in the PropertyId member of the KSPROPERTY_ITEM member in the KSPROPERTY_SET structure as required.

下列屬性集屬於編解碼器 API:

CODECAPI_VIDEO_ENCODER

CODECAPI_AUDIO_ENCODER

CODECAPI_SETALLDEFAULTS

CODECAPI_ALLSETTINGS

CODECAPI_SUPPORTSEVENTS

CODECAPI_CURRENTCHANGELIST

下列屬性集屬於編碼器 API:

ENCAPIPARAM_BITRATE

ENCAPIPARAM_BITRATE_MODE

ENCAPIPARAM_PEAK_BITRATE