Funzione MFCreateSequencerSegmentOffset (mfidl.h)
Crea un PROPVARIANT che può essere utilizzato per cercare all'interno di una presentazione di origine sequencer.
Sintassi
HRESULT MFCreateSequencerSegmentOffset(
[in] MFSequencerElementId dwId,
[in] MFTIME hnsOffset,
[out] PROPVARIANT *pvarSegmentOffset
);
Parametri
[in] dwId
Identificatore dell'elemento Sequencer. Questo valore specifica il segmento in cui iniziare la riproduzione. L'identificatore dell'elemento viene restituito nel metodo IMFSequencerSource::AppendTopology .
[in] hnsOffset
Posizione iniziale all'interno del segmento, in unità di 100 nanosecondi.
[out] pvarSegmentOffset
Puntatore a un PROPVARIANT. Il metodo inserisce in PROPVARIANT le informazioni necessarie per eseguire un'operazione di ricerca. Il chiamante deve liberare il PROPVARIANT chiamando PropVariantClear.
Valore restituito
Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Il PROPVARIANT restituito in pvarSegmentOffset può essere usato per il parametro pvarStartPosition nel metodo IMFMediaSession::Start . Usare il GUID del formato ora MF_TIME_FORMAT_SEGMENT_OFFSET.
Esempio
// 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;
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | mfidl.h |
Libreria | Mf.lib |
DLL | Mf.dll |