Partilhar via


Componentes ASF da camada de pipeline

No modelo de pipeline da Media Foundation, uma fonte de mídia é conectada a uma transformação que é ainda mais conectada a um coletor de mídia. Os dados contidos na fonte fluem através da transformação e geram amostras de mídia de saída no coletor para fins de reprodução ou codificação. Dependendo se o aplicativo deseja reproduzir conteúdo ASF ou codificar para um arquivo ASF, o aplicativo deve criar o pipeline de forma diferente.

Os tópicos a seguir contêm informações sobre os componentes da camada de pipeline.

Os três componentes principais de um pipeline ASF para reprodução são os seguintes:

  • A fonte de mídia ASF é fornecida pela Media Foundation que representa um arquivo ASF.
  • Resampleadores de áudio, redimensionadores de imagens de vídeo, etc., (transformar)
  • Renderizador de áudio e vídeo (coletores)

Para obter informações sobre como criar um pipeline de reprodução, consulte Criando topologias de reprodução.

Os três componentes principais de um pipeline ASF para codificação são os seguintes:

  • Fonte de mídia que representa os dados em um formato que precisa ser convertido. Esse componente pode ser uma das fontes de mídia padrão fornecidas pelo Media Foundation ou uma fonte personalizada que expõe o interface de IMFMediaSource.
  • Codificadores do Windows Media (transformação) que executam a conversão de formato.
  • Coletores de mídia ASF fornecidos pelo Media Foundation que gravam objetos ASF e amostras de mídia em um arquivo de saída especificado pelo aplicativo.

O pipeline é representado em uma topologia e cada objeto no pipeline é representado por um nó de topologia. Tanto para reprodução quanto para codificação, todas as operações de pipeline são tratadas pela Media Session. Uma das responsabilidades da Media Session é certificar-se de que o pipeline tem todos os componentes necessários para gerar saída. Por exemplo, em um pipeline de codificação, se o formato de origem de áudio for diferente do formato de destino, a Sessão de Mídia insere componentes de transformação adicionais, como o resampler que executa conversões de taxa de amostragem apropriadas. O controle de fluxo de dados através do pipeline também é gerenciado pela Sessão de Mídia. Em um cenário de reprodução, iniciando a sessão de mídia, a sessão de mídia envia amostras para SAR e EVR, que as processa no dispositivo de saída. Para codificação, iniciar a sessão de mídia inicia o processo de codificação. A sessão notifica de forma assíncrona o aplicativo quando a codificação é concluída.

O tópico a seguir contém instruções passo a passo sobre como usar os componentes da camada de pipeline para criar uma topologia de codificação. componentes para leitura e gravação de arquivos ASF.

Apoio ASF na Media Foundation