Compartilhar via


Método IMFASFSplitter::GetNextSample (wmcontainer.h)

Recupera um exemplo do divisor asf (Formato de Sistemas Avançados) depois que os dados são analisados.

Sintaxe

HRESULT GetNextSample(
  [out] DWORD     *pdwStatusFlags,
  [out] WORD      *pwStreamNumber,
  [out] IMFSample **ppISample
);

Parâmetros

[out] pdwStatusFlags

Recebe um dos valores a seguir.

Valor Significado
ASF_STATUSFLAGS_INCOMPLETE
Mais exemplos estão prontos para serem recuperados. Chame GetNextSample em um loop até que o parâmetro pdwStatusFlags receba o valor zero.
Zero
Nenhum exemplo adicional está pronto. Chame IMFASFSplitter::P arseData para fornecer mais dados de entrada ao divisor.

[out] pwStreamNumber

Se o método retornar um exemplo no parâmetro ppISample , esse parâmetro receberá o número do fluxo ao qual a amostra pertence.

[out] ppISample

Recebe um ponteiro para a interface IMFSample da amostra analisada. O chamador deve liberar a interface. Se nenhum exemplo estiver pronto, esse parâmetro receberá o valor NULL.

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
S_OK
O método foi bem-sucedido.
MF_E_ASF_INVALIDDATA
Os dados ASF no buffer são inválidos.
MF_E_ASF_MISSINGDATA
Há uma lacuna nos dados do ASF.

Comentários

Antes de chamar esse método, chame IMFASFSplitter::P arseData para fornecer dados de entrada ao divisor. Se a entrada não contiver dados suficientes para um exemplo completo, o método GetNextSample terá êxito, mas retornará NULL no parâmetro ppISample .

O divisor ASF ignora exemplos para fluxos não selecionados. Para selecionar fluxos, chame IMFASFSplitter::SelectStreams.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho wmcontainer.h
Biblioteca Mfuuid.lib

Confira também

Divisor ASF

IMFASFSplitter