Método IMFTransform::SetInputType (mftransform.h)
Define, testa ou limpa o tipo de mídia para um fluxo de entrada nesta MFT (transformação do Media Foundation).
Sintaxe
HRESULT SetInputType(
[in] DWORD dwInputStreamID,
[in] IMFMediaType *pType,
[in] DWORD dwFlags
);
Parâmetros
[in] dwInputStreamID
Identificador de fluxo de entrada. Para obter a lista de identificadores de fluxo, chame IMFTransform::GetStreamIDs.
[in] pType
Ponteiro para a interface IMFMediaType ou NULL.
[in] dwFlags
Zero ou mais sinalizadores da enumeração _MFT_SET_TYPE_FLAGS .
Retornar valor
O método retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi bem-sucedido. |
|
O MFT não pode usar o tipo de mídia proposto. |
|
Identificador de fluxo inválido. |
|
O tipo proposto não é válido. Esse código de erro indica que o tipo de mídia em si não está configurado corretamente; por exemplo, ele pode conter atributos mutuamente contraditórios. |
|
O MFT não pode alternar tipos durante o processamento de dados. Tente esvaziar ou liberar o MFT. |
|
Você deve definir os tipos de saída antes de definir os tipos de entrada. |
|
O MFT não pôde encontrar uma configuração adequada de Aceleração de Vídeo DirectX (DXVA). |
Comentários
Esse método pode ser usado para definir, testar sem definir ou limpar o tipo de mídia:
- Para definir o tipo de mídia, defina dwFlags como zero e defina pType como um ponteiro não NULL que especifica o tipo de mídia.
- Para testar o tipo de mídia sem defini-lo, defina dwFlags como MFT_SET_TYPE_TEST_ONLY e defina pType como um ponteiro não NULL que especifica o tipo de mídia. Se o tipo de mídia for aceitável, o método retornará S_OK. Caso contrário, ele retornará MF_E_INVALIDMEDIATYPE. Independentemente do valor retornado, o tipo de mídia atual não é alterado.
- Para limpar o tipo de mídia, defina pType como NULL.
Um MFT pode exigir que o chamador defina um ou mais tipos de saída antes de definir o tipo de entrada. Nesse caso, o método retorna MF_E_TRANSFORM_TYPE_NOT_SET.
Se o MFT der suporte à Aceleração de Vídeo DirectX (DXVA), mas não conseguir encontrar uma configuração DXVA adequada (por exemplo, se o driver de gráficos não tiver os recursos corretos), o método deverá retornar MF_E_UNSUPPORTED_D3D_TYPE. Para obter mais informações, consulte Suporte ao DXVA 2.0 no Media Foundation.
Se MFT_UNIQUE_METHOD_NAMES for definido antes de incluir mftransform.h, esse método será renomeado como MFTSetInputType. Consulte Criando objetos DMO/MFT híbridos.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | mftransform.h |
Biblioteca | Mfuuid.lib |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de