Наборы свойств Кодировщика

В этом разделе описываются наборы свойств кодировщика и кодека, доступные для мини-driver кодировщиков, использующих службы потоковой передачи ядра WDM в Microsoft Windows 98/Me, Windows 2000 и Windows XP и более поздних версий.

Эталонная страница для каждого свойства содержит таблицу с заголовками столбцов, отображаемыми ниже.

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.

Таблица в описании каждого свойства указывает, требуются ли мини-driver видеокодировщика для чтения или записи свойства. Мини-driver видеокодировщика должен возвращать STATUS_NOT_SUPPORTED в ответ на получение или задание запросов на свойства, которые не поддерживаются мини-driver.

Следующие свойства задают каждое свойство, содержащее одно свойство, которое должно быть реализовано мини-driver видеокодировщиком. 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