Exemplo de MPEG1Source

Mostra como escrever uma fonte de mídia personalizada no Microsoft Media Foundation. O exemplo implementa uma fonte de mídia que analisa fluxos de camada de sistemas MPEG-1 e gera exemplos que contêm cargas MPEG-1.

APIs demonstradas

Este exemplo demonstra as seguintes interfaces do Media Foundation:

Antes de examinar este exemplo, talvez você queira examinar o WavSource Sample, que fornece uma implementação mais simples de uma fonte de mídia. O exemplo MPEG1Source adiciona alguns recursos que seriam encontrados na maioria das implementações do mundo real de uma fonte de mídia:

  • Vários fluxos
  • Métodos assíncronos
  • E/S assíncrona

No SDK do Windows para Windows Server 2008, este exemplo também inclui um decodificador de vídeo MPEG-1 de exemplo que exibe o código de tempo para cada quadro de vídeo. (Na verdade, ele não decodifica o bitstream MPEG-1.)

A partir do SDK do Windows para Windows 7, o decodificador foi movido para um exemplo separado. Consulte Exemplo de decodificador.

Uso

O exemplo MPEG1Source cria uma DLL que é um servidor COM para a fonte de mídia, o manipulador de fluxo de bytes da fonte de mídia e o MFT do decodificador. Antes de usar a fonte de mídia, você deve registrar a DLL.

Para usar a fonte de mídia, você pode executar o BasicPlayback Sample. O resolvedor de origem carregará automaticamente a fonte de mídia se você selecionar um arquivo MPEG-1 para reprodução. (Se ocorrer um erro, verifique se você registrou com êxito a DLL MPEG1Source.)

Você também pode usar a ferramenta TopoEdit para criar uma topologia de reprodução que contenha a fonte de mídia. Para obter mais informações sobre TopoEdit, consulte TopoEdit.

Requisitos

Produto Versão
SDK do Windows Windows 7

 

Baixando o exemplo

Este exemplo está disponível no repositório github de exemplos clássicos do Windows.

Exemplos de SDK do Media Foundation

Fontes de mídia

Manipuladores de esquema e manipuladores de Byte-Stream

Tutorial: Escrever uma fonte de mídia personalizada

Exemplo de WavSource