Поделиться через


Свойства кодирования

Кодировщики аудио и видеокодировщики Windows Media Поддерживают различные режимы кодирования. Эти режимы обычно настраиваются путем установки свойств кодировщика Media Foundation transform (MFT). Чтобы выполнить кодировку файлов, независимо от того, используется ли компонент уровня WMContainer или путем создания частичной топологии, необходимо настроить кодировщик соответствующим образом, задав свойства в зависимости от режима кодирования и типа носителя потока. Один и тот же набор свойств должен быть задан как в кодировщике, так и в объекте (приемнике файлов ASF или мультиплексоре ASF), который вы используете для записи ФАЙЛА ASF.

Свойства кодировщика определяются в wmcodecdsp.h. Определенные свойства, используемые для настройки кодировщика, задаются с помощью методов интерфейса IPropertyStore.

Свойства аудиопотока

В следующей таблице показаны конфигурации кодировщика для аудиопотока.

Тип кодирования Имя свойства — значение
кодирование с постоянной битовой скоростью MFPKEY_VBRENABLED — false (необязательно)По умолчанию MFPKEY_VBRENABLED установлено значение FALSE.
Quality-Based кодирование с переменной битовой скоростью MFPKEY_VBRENABLED — TRUE
MFPKEY_PASSESUSED - 1 (по желанию)
По умолчанию для MFPKEY_PASSESUSED задано значение 1.
MFPKEY_DESIRED_VBRQUALITY — от 0 до 100
кодирование с неограниченной переменной скоростью передачи данных MFPKEY_VBRENABLED — ИСТИНА
MFPKEY_PASSESUSED - 2
Peak-Constrained Кодировка с переменной скоростью битрейта MFPKEY_VBRENABLED — ИСТИНА
MFPKEY_PASSESUSED - 2
MFPKEY_RMAX — максимальная скорость бита
MFPKEY_BMAX — максимальное окно буфера

 

Свойства видеопотока

В следующей таблице показаны конфигурации кодировщика для видеопотока.

Тип кодирования Имя свойства
кодирование с постоянной битовой скоростью MFPKEY_VBRENABLED — FALSE (необязательно)
По умолчанию для MFPKEY_VBRENABLED задано значение FALSE.
MFPKEY_VIDEOWINDOW — окно буфера
Quality-Based кодировка с переменной битовой скоростью MFPKEY_VBRENABLED — TRUE
MFPKEY_PASSESUSED - 1 (необязательно)
По умолчанию для MFPKEY_PASSESUSED задано значение 1.
MFPKEY_DESIRED_VBRQUALITY — от 0 до 100
кодирование переменной битовой скорости без ограничения MFPKEY_VBRENABLED — ИСТИНА
MFPKEY_PASSESUSED - 2
Peak-Constrained кодирование с переменной скоростью передачи данных MFPKEY_VBRENABLED — TRUE
MFPKEY_PASSESUSED - 2
MFPKEY_RMAX — максимальная скорость бита
MFPKEY_BMAX — максимальное окно буфера

 

Настройка хранилища свойств кодировщика

Кодировщик необходимо настроить, указав тип кодирования и различные параметры, относящиеся к потоку, перед сеансом кодирования. Также необходимо задать свойства кодировщика в хранилище свойств объекта ASF ContentInfo, представляющего объект заголовка ASF выходного файла.

Если вы используете кодировщик MFT:

  1. Получите ссылку на интерфейс IMFTransform кодировщика MFT, как описано в Использовании интерфейса IMFTransform.
  2. Запрос MFT кодировщика для интерфейса IPropertyStore.
  3. Задание необходимых свойств путем вызова IPropertyStore::SetValue.

Если вы используете встроенные объекты активации кодировщика и уже настроили файловый приемник ASF, вы можете передать хранилище свойств мультимедийного приемника ASF в MFCreateWMAEncoderActivate или MFCreateWMVEncoderActivate. Кодировщик настраивается автоматически на основе параметров, указанных приложением. Дополнительные сведения см. в процедуре, описанной в разделе Использование объектов активации кодировщика.

Дополнительные сведения о создании объектов Media Foundation с помощью объектов активации см. в разделе Объекты активации.

создание экземпляра MFT кодировщика

кодировщики Windows Media