Compartilhar via


Método IMFSourceReaderEx::SetNativeMediaType (mfreadwrite.h)

Define o tipo de mídia nativo para um fluxo na fonte de mídia.

Sintaxe

HRESULT SetNativeMediaType(
  [in]  DWORD        dwStreamIndex,
  [in]  IMFMediaType *pMediaType,
  [out] DWORD        *pdwStreamFlags
);

Parâmetros

[in] dwStreamIndex

[in] pMediaType

Um ponteiro para a interface IMFMediaType do tipo de mídia.

[out] pdwStreamFlags

Recebe um OR bit a bit de zero ou mais dos sinalizadores a seguir.

Valor Significado
MF_SOURCE_READERF_ALLEFFECTSREMOVED
Todos os efeitos foram removidos do fluxo.
MF_SOURCE_READERF_CURRENTMEDIATYPECHANGED
O tipo de saída atual foi alterado.

Retornar valor

Esse método pode retornar um desses valores.

Código de retorno Descrição
S_OK
Êxito.
MF_E_INVALIDREQUEST
Solicitação inválida.
MF_E_INVALIDSTREAMNUMBER
O parâmetro dwStreamIndex é inválido.

Comentários

Esse método define o tipo de saída produzido pela fonte de mídia. Ao contrário do método IMFSourceReader::SetCurrentMediaType , esse método não insere nenhum decodificador, processadores de vídeo ou outras transformações. A fonte de mídia deve dar suporte ao tipo de mídia especificado nativamente. Para obter uma lista de tipos com suporte da fonte de mídia, chame IMFSourceReader::GetNativeMediaType.

No modo assíncrono, esse método falhará se uma solicitação de exemplo estiver pendente. Nesse caso, aguarde até que o retorno de chamada OnReadSample seja invocado antes de chamar o método . Para obter mais informações sobre como usar o Leitor de Origem no modo assíncrono, consulte IMFSourceReader::ReadSample.

Esse método pode disparar uma alteração no formato de saída para o fluxo. Nesse caso, o sinalizador MF_SOURCE_READERF_CURRENTMEDIATYPECHANGED será retornado no parâmetro pdwStreamFlags . O método também pode fazer com que o Leitor de Origem remova quaisquer efeitos que foram adicionados pelo método IMFSourceReaderEx::AddTransformForStream . Se isso ocorrer, o sinalizador MF_SOURCE_READERF_ALLEFFECTSREMOVED será retornado em pdwStreamFlags.

Esse método é útil com dispositivos de captura de áudio e vídeo, pois um dispositivo pode dar suporte a vários formatos de saída. Esse método permite que o aplicativo escolha o formato do dispositivo antes que decodificadores e outras transformações sejam adicionadas.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho mfreadwrite.h

Confira também

IMFSourceReaderEx