Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Para converter arquivos de mídia em formato ASF, você pode usar codificadores do Windows Media. Para usar esses codificadores, eles devem estar registrados no sistema.
Para obter informações sobre o registro do codificador, consulte Instanciando uma MFT do codificador.
- Usando os objetos de ativação de um codificador
- Enumeração do Codificador no Windows 7 e Posteriores
- Tópicos relacionados
Usando objetos de ativação de um codificador
Como alternativa ao uso da interface IMFTransform de de um codificador (descrita em Criar um Codificador usando CoCreateInstance), pode-se criar uma instância do objeto de ativação para o codificador. Os objetos de ativação facilitam a criação do codificador e o Media Foundation fornece as duas funções a seguir para essa abordagem:
- MFCreateWMAEncoderActivate para instanciar o codificador de áudio do Windows Media.
- MFCreateWMVEncoderActivate para instanciar o codificador de vídeo do Windows Media.
Ambas as funções exigem que você crie o tipo de mídia de destino e defina as propriedades de codificação antes de chamar essas funções. Se o seu aplicativo estiver usando os componentes ASF da camada de pipeline para codificar um arquivo para o formato ASF e já tiver criado e configurado os recetores de mídia ASF , você poderá obter esse conjunto de informações dos recetores de mídia ASF.
MFCreateWMAEncoderActivate e MFCreateWMVEncoderActivate definir o tipo de saída do codificador para o tipo de mídia especificado pelo aplicativo.
Observação Se você estiver usando MFCreateWMAEncoderActivate e MFCreateWMVEncoderActivate poderá ativar o codificador chamando IMFActivate::ActivateObject mas não poderá alterar os tipos de mídia de entrada e saída do codificador nem poderá alterar nenhuma das propriedades de codificação.
Para obter mais informações sobre como criar objetos do Media Foundation usando objetos de ativação, consulte Activation Objects.
Para obter o tipo de mídia de destino do coletor de mídia ASF
- Obtenha um ponteiro para o ponteiro de IMFASFContentInfo do coletor de mídia ASF chamando IMFMediaSink::QueryInterface no coletor de mídia ASF e passando IID_IMFASFContentInfo como identificador de interface.
- Obtenha o objeto de perfil ASF associado ao objeto ContentInfo.
- Enumere os fluxos no perfil para obter o tipo de mídia do fluxo.
Para obter as propriedades de codificação do coletor de mídia ASF
Se você configurou o Propriedades de Codificação de no coletor de mídia (descrito em Propriedades de Configuração noColetor de Arquivos), poderá fazer uma referência ao repositório de propriedades do coletor chamando IMFMediaSink::QueryInterface no coletor de mídia ASF e passando IID_IPropertyStore como identificador de interface.
Se você tiver um ponteiro para o objeto ContentInfo do coletor, poderá chamar IMFASFContentInfo::GetEncodingConfigurationPropertyStore para obter uma referência ao repositório de propriedades do coletor de mídia.
Certifique-se de que todas as propriedades de codificação definidas no sistema de saída de mídia ASF sejam refletidas no repositório de propriedades passado para MFCreateWMAEncoderActivate e MFCreateWMVEncoderActivate. O codificador é configurado automaticamente com base nas configurações especificadas pelo aplicativo.
Ao criar o nó de transformação na topologia de codificação, pode-se definir o tipo de objeto como um IMFActivate ponteiro que é recebido nestas duas chamadas. Quando a topologia é resolvida, a sessão de mídia usa o objeto de ativação para criar uma instância do codificador MFT.
Enumeração de codificadores em Windows 7 e posterior
Para aplicativos que estão sendo executados no Windows 7, além de MFTEnum você pode enumerar os MFTs codificadores chamando MFTEnumEx. Esta função retorna um ponteiro para o objeto de ativação do codificador MFT. A estrutura da função é muito semelhante à de MFTEnum, descrita acima, exceto que MFTEnumExdevolve um array de ponteiros IMFActivate para as MFTs do codificador que correspondem aos critérios de pesquisa.
Tópicos relacionados