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.
Este tópico descreve o modelo de objeto para fontes de mídia no Microsoft Media Foundation. Uma fonte de mídia deve implementar dois objetos:
- Um descritor de apresentação, que descreve o conteúdo da fonte, incluindo o número de fluxos e o formato de cada fluxo. Para obter mais informações sobre descritores de apresentação, consulte Descritores de apresentação.
- Um ou mais fluxos de mídia, que geram os dados de origem.
A fonte não cria os fluxos até que a reprodução seja iniciada.
Interfaces de fonte de mídia
Uma fonte de mídia deve expor as seguintes interfaces por meio QueryInterface.
| Interface | Descrição |
|---|---|
| IMFMediaSource | Obrigatório para todas as fontes de mídia. |
| IMFMediaEventGenerator | Obrigatório para todas as fontes de mídia. A interface IMFMediaSource herda essa interface. |
Opcionalmente, uma fonte de mídia pode implementar a interfaceIMFGetService e implementar qualquer uma das seguintes interfaces como serviços:
| Interface de serviço | Descrição |
|---|---|
| IMFRateControl | Controla a taxa de reprodução. |
| IMFRateSupport | Informa o intervalo de taxas de reprodução suportadas. |
| IMFQualityAdvise | Permite que o gestor de qualidade ajuste a qualidade de áudio ou vídeo. |
| IMFMetadataProvider | Fornece metadados. |
Se a fonte de mídia pode reproduzir em taxas diferentes da velocidade normal (1.0), ele deve expor o serviço de controle de taxa (IMFRateControl e IMFRateSupport). Caso contrário, presume-se que a fonte só suporta reprodução à velocidade normal. Para obter mais informações, consulte Implementing Rate Control.
Para obter mais informações sobre interfaces de serviço e IMFGetService, consulte Service Interfaces.
Interfaces de fluxo de mídia
Os fluxos de mídia devem implementar as seguintes interfaces.
| Interface | Descrição |
|---|---|
| IMFMediaStream | Necessário para todos os fluxos de mídia. |
| IMFMediaEventGenerator | Necessário para todos os fluxos de mídia. A interface IMFMediaStream herda essa interface. |
Atualmente, nenhuma interface de serviço é definida para fluxos de mídia.
Tópicos relacionados