Leitor de origem
O Leitor de Origem é uma alternativa ao uso da Sessão de Mídia e do pipeline do Microsoft Media Foundation para processar dados de mídia.
Por que usar o Leitor de Origem?
O Media Foundation fornece um pipeline otimizado para reprodução. O pipeline é de ponta a ponta, o que significa que ele manipula o fluxo de dados da origem (como um arquivo de vídeo) até o destino (como a exibição de gráficos). No entanto, se você quiser ler ou modificar os dados conforme eles passam pelo pipeline, você deve escrever um plug-in personalizado. Isso requer um conhecimento bastante profundo do pipeline da Media Foundation. Para determinadas tarefas, criar um novo plug-in é muita sobrecarga. O leitor de origem foi projetado para esse tipo de situação, quando você deseja obter os dados brutos de uma fonte sem a sobrecarga de todo o pipeline.
Internamente, o leitor de origem mantém um ponteiro para uma fonte de mídia. Uma fonte de mídia é um objeto do Media Foundation que gera dados de mídia de uma fonte externa, como um arquivo de mídia ou um dispositivo de captura de vídeo. O leitor de origem gerencia todas as chamadas de método para a fonte de mídia. (Para obter mais informações sobre fontes de mídia, consulte Fontes de mídia.)
Se a fonte de mídia fornecer dados compactados, você poderá usar o leitor de origem para decodificar os dados. Nesse caso, o leitor de origem carregará o decodificador correto e gerenciará o fluxo de dados entre a fonte de mídia e o decodificador. O leitor de origem também pode executar alguns processamentos de vídeo limitados: conversão de cores de YUV para RGB-32 e desinterlacização de software, embora essas operações não sejam recomendadas para renderização de vídeo em tempo real. A imagem a seguir ilustra esse processo.
O leitor de origem não envia os dados para um destino; cabe ao aplicativo consumir os dados. Por exemplo, o leitor de origem pode ler um arquivo de vídeo, mas não renderizará o vídeo para a tela. Além disso, o leitor de origem não gerencia um relógio de apresentação, lida com problemas de tempo ou sincroniza vídeo com áudio.
Considere usar o leitor de origem quando:
- Você deseja obter dados de um arquivo de mídia sem se preocupar com a estrutura de arquivos subjacente.
- Você deseja obter dados de um dispositivo de captura de áudio ou vídeo.
- Suas tarefas de processamento de dados não diferenciam o tempo ou você não precisa de um relógio de apresentação.
- Você já tem um pipeline de mídia que não é baseado na Media Foundation e deseja incorporar as fontes de mídia do Media Foundation em seu próprio pipeline.
O leitor de origem não é recomendado nas seguintes situações:
- Para conteúdo protegido. O leitor de origem não dá suporte ao DRM (gerenciamento de direitos digitais).
- Se você se preocupa com os detalhes da estrutura de arquivos subjacente. O leitor de origem oculta esse tipo de detalhe.
Nesta seção
Tópico | Descrição |
---|---|
Usando o Leitor de Origem para processar dados de mídia |
Este tópico descreve como usar o Leitor de Origem para processar dados de mídia. |
Usando o leitor de origem no modo assíncrono |
Este tópico descreve como usar o Leitor de Origem no modo assíncrono. |
Tutorial: Decodificação de áudio |
Este tutorial mostra como usar o Leitor de Origem para decodificar áudio de um arquivo de mídia e gravar o áudio em um arquivo WAVE. |
Tópicos relacionados