Propriedades de codificação

Os codificadores de Áudio do Windows Media e Vídeo do Windows Media dão suporte a uma variedade de modos de codificação. Esses modos geralmente são configurados definindo propriedades na MFT (transformação do Codificador Media Foundation ). Para executar a codificação de arquivo, seja usando componentes de nível WMContainer ou criando uma topologia parcial, você deve configurar o codificador adequadamente definindo as propriedades dependendo do modo de codificação e do tipo de mídia do fluxo. O mesmo conjunto de propriedades deve ser definido no codificador e no objeto (coletor de arquivos ASF ou multiplexer ASF) que você está usando para gravar o arquivo ASF.

As propriedades do codificador são definidas em wmcodecdsp.h. As propriedades específicas usadas para configurar o codificador são definidas usando os métodos da interface IPropertyStore .

Propriedades do Fluxo de Áudio

A tabela a seguir mostra as configurações do codificador para um fluxo de áudio.

Tipo de codificação Nome da propriedade – Valor
Codificação de taxa de bits constante MFPKEY_VBRENABLED - FALSE (opcional)Por padrão, MFPKEY_VBRENABLED é definido como FALSE.
Codificação de taxa de bits variável baseada em qualidade MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 1 (opcional)
Por padrão, MFPKEY_PASSESUSED é definido como 1.
MFPKEY_DESIRED_VBRQUALITY - De 0 a 100
Codificação de taxa de bits variável não treinada MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 2
Codificação de taxa de bits variável restrita de pico MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 2
MFPKEY_RMAX – Taxa máxima de bits
MFPKEY_BMAX – Janela máxima do buffer

 

Propriedades do Fluxo de Vídeo

A tabela a seguir mostra as configurações do codificador para um fluxo de vídeo.

Tipo de codificação Nome da propriedade
Codificação de taxa de bits constante MFPKEY_VBRENABLED – FALSE (opcional)
Por padrão, MFPKEY_VBRENABLED é definido como FALSE.
MFPKEY_VIDEOWINDOW - Janela buffer
Codificação de taxa de bits variável baseada em qualidade MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 1 (opcional)
Por padrão, MFPKEY_PASSESUSED é definido como 1.
MFPKEY_DESIRED_VBRQUALITY - De 0 a 100
Codificação de taxa de bits variável não treinada MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 2
Codificação de taxa de bits variável restrita de pico MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 2
MFPKEY_RMAX – Taxa máxima de bits
MFPKEY_BMAX – Janela máxima do buffer

 

Configurando o repositório de propriedades do codificador

Você deve configurar um codificador especificando o tipo de codificação e as várias configurações específicas do fluxo antes da sessão de codificação. Você também deve definir as propriedades do codificador no repositório de propriedades de um Objeto ContentInfo do ASF que representa o Objeto de Cabeçalho ASF do arquivo de saída.

Se você estiver usando um codificador MFT:

  1. Obtenha uma referência à interface IMFTransform do codificador MFT, conforme descrito em Usando a interface IMFTransform de um codificador.
  2. Consultar o MFT do codificador para a interface IPropertyStore .
  3. Definindo as propriedades necessárias chamando IPropertyStore::SetValue.

Se você estiver usando os objetos de ativação do codificador interno e já tiver criado um coletor de arquivos ASF configurado, poderá passar o repositório de propriedades do coletor de mídia DO ASF para MFCreateWMAEncoderActivate ou MFCreateWMVEncoderActivate. O codificador é configurado automaticamente com base nas configurações especificadas pelo aplicativo. Para obter mais informações, consulte o procedimento descrito em Usando objetos de ativação de um codificador.

Para obter mais informações sobre como criar objetos do Media Foundation usando objetos de ativação, consulte Objetos de Ativação.

Instanciando um MFT de codificador

Codificadores do Windows Media