Comment connaître la durée de lecture

[MFPlay peut être utilisé dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il sera peut-être modifié ou indisponible dans les versions ultérieures. ]

Cette rubrique explique comment obtenir la durée de lecture d’un fichier multimédia à l’aide de MFPlay.

Pour connaître la durée de lecture

  1. Appelez IMFPMediaPlayer :: CreateMediaItemFromURL ou IMFPMediaPlayer :: CreateMediaItemFromObject pour créer un élément multimédia pour le fichier.
  2. Appelez IMFPMediaItem :: GetDuration. Spécifiez MFP _ POSITIONTYPE _ 100 ns pour le premier paramètre. La durée est retournée sous la forme d’un PROPVARIANT qui contient une valeur _ entière importante . La durée est donnée en unités de 100 nanosecondes.

L’exemple suivant illustre l’étape 2 :

#include <propvarutil.h>

HRESULT GetPlaybackDuration(IMFPMediaItem *pItem, ULONGLONG *phnsDuration)
{
    PROPVARIANT var;

    HRESULT hr = pItem->GetDuration(MFP_POSITIONTYPE_100NS, &var);

    if (SUCCEEDED(hr))
    {
        hr = PropVariantToUInt64(var, phnsDuration);
        PropVariantClear(&var);
    }

    return hr;
}

Spécifications

MFPlay requiert Windows 7.

Utilisation de MFPlay pour la lecture audio/vidéo