Método CSourceStream.GetMediaType (Source.h) – parâmetros iPosition e pMediaType
[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in 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 Audio/Video Capture in 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 método GetMediaType recupera um tipo de mídia preferencial.
Sintaxe
virtual HRESULT GetMediaType(
int iPosition,
CMediaType *pMediaType
);
Parâmetros
-
iPosition
-
Valor de índice baseado em zero.
-
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 |
---|---|
|
Êxito. |
|
Índice fora do intervalo. |
|
Índice menor que zero. |
|
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 de índice.
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) |