Método IMFDeviceTransform::P rocessOutput (mftransform.h)
O método ProcessOutput obtém a saída processada dos fluxos de saída MFT do dispositivo.
Sintaxe
HRESULT ProcessOutput(
[in] DWORD dwFlags,
[in] DWORD cOutputBufferCount,
[in] MFT_OUTPUT_DATA_BUFFER *pOutputSample,
[in] DWORD *pdwStatus
);
Parâmetros
[in] dwFlags
OR bit a bit de zero ou mais sinalizadores da enumeração _MFT_PROCESS_OUTPUT_FLAGS .
[in] cOutputBufferCount
Número de elementos na matriz pOutputSamples . O valor deve ser pelo menos 1.
[in] pOutputSample
Ponteiro para uma matriz de estruturas MFT_OUTPUT_DATA_BUFFER , alocadas pelo chamador. O MFT usa essa matriz para retornar dados de saída para o chamador.
[in] pdwStatus
Recebe um OR bit a bit de zero ou mais sinalizadores da enumeração _MFT_PROCESS_OUTPUT_STATUS .
Valor retornado
O método retorna um HRESULT. Os valores possíveis incluem, mas não se limitam aos valores fornecidos na tabela a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi bem-sucedido. |
|
Argumento inválido passado. |
|
O dispositivo MFT não pôde dar suporte à solicitação no momento. |
|
Uma ID de fluxo inválida foi passada. |
|
A transição de fluxo solicitada não é possível. |
|
O tipo de mídia de entrada não foi definido. |
Comentários
Na maioria dos casos, se o método for bem-sucedido, a MFT (transformação da Media Foundation) armazenará a amostra e conterá uma contagem de referência no ponteiro IMFSample . Quando o MFT terminar de usar o exemplo, ele deverá liberá-lo para evitar vazamentos de memória.
Depois que o DTM (gerenciador de transformações de dispositivo) tiver definido tipos de mídia válidos em todos os fluxos, o MFT sempre deverá ser capaz de aceitar mais entradas e ser capaz de produzir mais saída.
Se um MFT encontrar um erro não fatal nos dados de entrada, ele poderá simplesmente remover os dados e tentar recuperar quando obter mais dados de entrada. Se o MFT remover dados, ele deverá definir o atributo MFSampleExtension_Discontinuity no próximo exemplo de saída, para notificar o chamador de que há uma lacuna no fluxo de dados.
Requisitos
Cliente mínimo com suporte | Windows 10, versão 1703 |
Plataforma de Destino | Windows |
Cabeçalho | mftransform.h |