Share via


Método IMFPMediaPlayer::GetDuration (mfplay.h)

Importante Preterido. Essa API pode ser removida de versões futuras do Windows. Os aplicativos devem usar a Sessão de Mídia para reprodução.
 

Obtém a duração da reprodução do item de mídia atual.

Sintaxe

HRESULT GetDuration(
  [in]  REFGUID     guidPositionType,
  [out] PROPVARIANT *pvDurationValue
);

Parâmetros

[in] guidPositionType

Especifica a unidade de tempo para a duração. O valor a seguir é definido.

Valor Significado
MFP_POSITIONTYPE_100NS
Unidades de 100 nanossegundos.

O valor retornado em pvDurationValue é um ULARGE_INTEGER.

  • Tipo de variante (vt): VT_UI8
  • Membro Variant: uhVal

[out] pvDurationValue

Ponteiro para um PROPVARIANT que recebe a duração.

Valor retornado

Esse método pode retornar um desses valores.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.
MF_E_ATTRIBUTENOTFOUND
A fonte de mídia não tem uma duração. Esse erro pode ocorrer com uma fonte ao vivo, como uma câmera de vídeo.
MF_E_INVALIDREQUEST
Não há nenhum item de mídia atual.

Comentários

Esse método calcula a duração da reprodução, levando em conta os tempos de início e parada para o item de mídia. Para definir os horários de início e parada, chame IMFPMediaItem::SetStartStopPosition no item de mídia. Para obter a duração real do arquivo de mídia subjacente, independentemente dos horários de início e parada, chame IMFPMediaItem::GetDuration.

Por exemplo, suponha que você carregue um arquivo de áudio de 30 segundos e defina a hora de início como 2 segundos e o tempo de parada igual a 10 segundos. O método IMFPMediaItem::GetDuration retornará 30 segundos, mas o método IMFPMediaPlayer::GetDuration retornará 8 segundos.

Requisitos

   
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho mfplay.h

Confira também

IMFPMediaPlayer

Usando mfplay para reprodução de áudio/vídeo