Fonction MFCreateSequencerSegmentOffset (mfidl.h)
Crée un PROPVARIANT qui peut être utilisé pour rechercher dans une présentation source de séquenceur.
Syntaxe
HRESULT MFCreateSequencerSegmentOffset(
[in] MFSequencerElementId dwId,
[in] MFTIME hnsOffset,
[out] PROPVARIANT *pvarSegmentOffset
);
Paramètres
[in] dwId
Identificateur d’élément Sequencer. Cette valeur spécifie le segment dans lequel commencer la lecture. L’identificateur d’élément est retourné dans la méthode IMFSequencerSource ::AppendTopology .
[in] hnsOffset
Position de départ dans le segment, en unités de 100 nanosecondes.
[out] pvarSegmentOffset
Pointeur vers un PROPVARIANT. La méthode remplit le PROPVARIANT avec les informations nécessaires à l’exécution d’une opération de recherche. L’appelant doit libérer propVARIANT en appelant PropVariantClear.
Valeur retournée
Si cette fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Le PROPVARIANT retourné dans pvarSegmentOffset peut être utilisé pour le paramètre pvarStartPosition dans la méthode IMFMediaSession ::Start . Utilisez l’MF_TIME_FORMAT_SEGMENT_OFFSET GUID de format d’heure.
Exemples
// Skips to the specified segment in the sequencer source
HRESULT CPlaylist::SkipTo(DWORD index)
{
if (index >= m_count)
{
return E_INVALIDARG;
}
MFSequencerElementId ID = m_segments[index].SegmentID;
PROPVARIANT var;
HRESULT hr = MFCreateSequencerSegmentOffset(ID, NULL, &var);
if (SUCCEEDED(hr))
{
hr = m_pSession->Start(&MF_TIME_FORMAT_SEGMENT_OFFSET, &var);
PropVariantClear(&var);
}
return hr;
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | mfidl.h |
Bibliothèque | Mf.lib |
DLL | Mf.dll |