Método IMFSourceResolver::CreateObjectFromByteStream (mfidl.h)

Cria uma fonte de mídia de um fluxo de bytes. Esse método é síncrono.

Sintaxe

HRESULT CreateObjectFromByteStream(
  [in]  IMFByteStream  *pByteStream,
  [in]  LPCWSTR        pwszURL,
  [in]  DWORD          dwFlags,
  [in]  IPropertyStore *pProps,
  [out] MF_OBJECT_TYPE *pObjectType,
  [out] IUnknown       **ppObject
);

Parâmetros

[in] pByteStream

Ponteiro para a interface IMFByteStream do fluxo de bytes.

[in] pwszURL

Cadeia de caracteres terminada em nulo que contém a URL do fluxo de bytes. A URL é opcional e pode ser NULL. Confira Comentários para obter mais informações.

[in] dwFlags

OR bit a bit de sinalizadores. Consulte Sinalizadores de resolvedor de origem.

[in] pProps

Ponteiro para a interface IPropertyStore de um repositório de propriedades. O método passa o repositório de propriedades para o manipulador de fluxo de bytes. O manipulador de fluxo de bytes pode usar o repositório de propriedades para configurar a origem da mídia. Este parâmetro pode ser NULL. Para obter mais informações, consulte Configurando uma fonte de mídia.

[out] pObjectType

Recebe um membro da enumeração MF_OBJECT_TYPE , especificando o tipo de objeto que foi criado.

[out] ppObject

Recebe um ponteiro para a interface IUnknown da fonte de mídia. O chamador deve liberar a interface .

Valor retornado

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
S_OK
O método foi bem-sucedido.
MF_E_SOURCERESOLVER_MUTUALLY_EXCLUSIVE_FLAGS
O parâmetro dwFlags contém sinalizadores mutuamente exclusivos.
MF_E_UNSUPPORTED_BYTESTREAM_TYPE
Não há suporte para esse fluxo de bytes.

Comentários

O parâmetro dwFlags deve conter o sinalizador MF_RESOLUTION_MEDIASOURCE e não deve conter o sinalizador MF_RESOLUTION_BYTESTREAM .

O resolvedor de origem tenta localizar um ou mais manipuladores de fluxo de bytes para o fluxo de bytes, com base na extensão de nome de arquivo da URL ou no tipo MIME do fluxo de bytes (ou ambos). A URL é especificada no parâmetro pwszURL opcional e o tipo MIME pode ser especificado no atributo MF_BYTESTREAM_CONTENT_TYPE no fluxo de bytes. Manipuladores de fluxo de bytes são registrados por extensão de nome de arquivo ou tipo MIME, ou ambos, conforme descrito em Manipuladores de Esquema e manipuladores de Byte-Stream. O chamador deve especificar pelo menos um desses valores (se possível):

  • Especifique a URL no parâmetro pwszURL .
  • Especifique o tipo MIME definindo o atributo MF_BYTESTREAM_CONTENT_TYPE no fluxo de bytes. (Esse atributo já pode estar definido quando você cria o fluxo de bytes, dependendo de como o fluxo de bytes foi criado.)
Nota Esse método não pode ser chamado remotamente.
 

Requisitos

   
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 mfidl.h
Biblioteca Mfuuid.lib

Confira também

IMFSourceResolver

Resolvedor de Origem