Compartilhar via


Método CSourceStream.GetMediaType (Source.h)

[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

O GetMediaType método recupera um tipo de mídia preferencial.

Sintaxe

virtual HRESULT GetMediaType(
   CMediaType *pMediaType
);

Parâmetros

pMediaType

Ponteiro para um objeto CMediaType que recebe o tipo de mídia.

Retornar valor

Retorna um dos valores HRESULT mostrados na tabela a seguir.

Código de retorno Descrição
S_OK
Êxito.
VFW_S_NO_MORE_ITEMS
Indexar fora do intervalo.
E_INVALIDARG
Índice menor que zero.
E_UNEXPECTED
Erro inesperado.

Comentários

Há duas versões desse método. Uma versão substitui o método CBasePin::GetMediaType e usa um valor de índice como parâmetro. A outra versão foi projetada para recuperar um único tipo de mídia, portanto, ela não tem o parâmetro index.

O método de parâmetro único retorna E_UNEXPECTED. O método de dois parâmetros verifica se o parâmetro iPosition é zero e, em seguida, chama a versão de parâmetro único. Dependendo do número de tipos de mídia compatíveis com o pin, você deve substituir um destes métodos:

  • Se o pin der suporte a exatamente um tipo de mídia, substitua a versão de parâmetro único. Preencha o tipo de mídia compatível com o pino.
  • Se o pin der suporte a mais de um tipo de mídia, substitua a versão de dois parâmetros. Substitua também o método CSourceStream::CheckMediaType .

Requisitos

Requisito Valor
parâmetro
Source.h (inclua Streams.h)
Biblioteca
Strmbase.lib (builds de varejo);
Strmbasd.lib (builds de depuração)

Confira também

Classe CSourceStream