Interface IMFSample (mfobjects.h)
Representa um exemplo de mídia, que é um objeto de contêiner para dados de mídia. Para vídeo, um exemplo normalmente contém um quadro de vídeo. Para dados de áudio, um exemplo normalmente contém vários exemplos de áudio, em vez de uma única amostra de áudio.
Um exemplo de mídia contém zero ou mais buffers. Cada buffer gerencia um bloco de memória e é representado pela interface IMFMediaBuffer . Um exemplo pode ter vários buffers. Os buffers são mantidos em uma lista ordenada e acessados pelo valor de índice. Também é válido ter um exemplo vazio sem buffers.
Herança
A interface IMFSample herda de IMFAttributes. IMFSample também tem estes tipos de membros:
Métodos
A interface IMFSample tem esses métodos.
IMFSample::AddBuffer Adiciona um buffer ao final da lista de buffers no exemplo. |
IMFSample::ConvertToContiguousBuffer Converte um exemplo com vários buffers em um exemplo com um único buffer. |
IMFSample::CopyToBuffer Copia os dados de exemplo para um buffer. Esse método concatena os dados válidos de todos os buffers do exemplo, na ordem. |
IMFSample::GetBufferByIndex Obtém um buffer do exemplo, por índice. |
IMFSample::GetBufferCount Recupera o número de buffers no exemplo. |
IMFSample::GetSampleDuration Recupera a duração do exemplo. |
IMFSample::GetSampleFlags Recupera sinalizadores associados ao exemplo. No momento, nenhum sinalizador é definido. |
IMFSample::GetSampleTime Recupera o tempo de apresentação do exemplo. |
IMFSample::GetTotalLength Recupera o comprimento total dos dados válidos em todos os buffers no exemplo. O comprimento é calculado como a soma dos valores recuperados pelo método IMFMediaBuffer::GetCurrentLength. |
IMFSample::RemoveAllBuffers Remove todos os buffers do exemplo. |
IMFSample::RemoveBufferByIndex Remove um buffer em um índice especificado do exemplo. |
IMFSample::SetSampleDuration Define a duração do exemplo. |
IMFSample::SetSampleFlags Define sinalizadores associados ao exemplo. No momento, nenhum sinalizador é definido. |
IMFSample::SetSampleTime Define a hora da apresentação do exemplo. |
Comentários
Para criar um novo exemplo de mídia, chame MFCreateSample.
Quando você chama CopyAllItems, herdado da interface IMFAttributes , em um IMFSample, o tempo, a duração e os sinalizadores de exemplo não são copiados para o exemplo de destino. Você deve copiar esses valores para o novo exemplo manualmente.
- Windows XP com Service Pack 2 (SP2) e posterior.
- Windows XP Media Center Edition 2005 com KB900325 (Windows XP Media Center Edition 2005) e KB925766 (pacote cumulativo de atualizações de outubro de 2006 para Windows XP Media Center Edition) instalados.
Requisitos
Requisito | Valor |
---|---|
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 | mfobjects.h (include Mfidl.h) |