Compartilhar via


Método IMFDeviceTransform::SetInputStreamState (mftransform.h)

O método SetInputStreamState define o estado do fluxo de entrada do Dispositivo MFT e o tipo de mídia.

Sintaxe

HRESULT SetInputStreamState(
  [in] DWORD             dwStreamID,
  [in] IMFMediaType      *pMediaType,
  [in] DeviceStreamState value,
  [in] DWORD             dwFlags
);

Parâmetros

[in] dwStreamID

ID de fluxo do fluxo de entrada em que o estado e o tipo de mídia precisam ser alterados.

[in] pMediaType

O tipo de mídia preferencial para o fluxo de entrada é passado por meio desse parâmetro. O MFT do dispositivo deverá alterar o tipo de mídia somente se o tipo de mídia de entrada for diferente do tipo de mídia atual.

[in] value

Especifica o DeviceStreamState para o qual o fluxo de entrada deve fazer a transição.

[in] dwFlags

Quando S_OK é retornado, execute a operação de alteração de estado. Caso contrário, isso conterá um erro que ocorreu ao definir o tipo de mídia no pino de saída devproxy. Nesse caso, propague o erro adequadamente.

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
S_OK
Inicialização bem-sucedida
MF_E_INVALIDREQUEST
O MFT do dispositivo não pôde dar suporte à solicitação no momento.
MF_E_INVAILIDSTREAMNUMBER
Uma ID de fluxo inválida foi passada.
MF_E_INVALID_STREAM_STATE
A transição de fluxo solicitada não é possível.

Comentários

Essa função de interface ajuda a fazer a transição do fluxo de entrada para um estado especificado com um tipo de mídia especificado definido no fluxo de entrada. Isso será usado pelo DTM (gerenciador de transformação de dispositivo) quando o Dispositivo MFT solicitar que o estado e o tipo de mídia de um fluxo de entrada específico sejam alterados. O MFT do dispositivo precisaria solicitar essa alteração quando uma das saídas do Dispositivo MFT fosse alterada.

Por exemplo, considere um Dispositivo MFT que tem dois fluxos de entrada e três fluxos de saída. Deixe a Saída 1 e a Saída 2 origem da Entrada 1 e transmita a 720p. Agora, se o tipo de mídia da Saída 2 mudar para 1080p, o MFT do Dispositivo precisará alterar o tipo de mídia de Entrada 1 para 1080p. Para isso, o Dispositivo MFT deve solicitar que o DTM chame esse método usando a mensagem METransformInputStreamStateChanged .

Requisitos

   
Cliente mínimo com suporte Windows 10, versão 1703
Plataforma de Destino Windows
Cabeçalho mftransform.h

Confira também

IMFDeviceTransform