IMFSequencerSource::GetPresentationContext method (mfidl.h)

Maps a presentation descriptor to its associated sequencer element identifier and the topology it represents.

Syntax

HRESULT GetPresentationContext(
  [in]  IMFPresentationDescriptor *pPD,
  [out] MFSequencerElementId      *pId,
  [out] IMFTopology               **ppTopology
);

Parameters

[in] pPD

Pointer to the IMFPresentationDescriptor interface of the presentation descriptor.

[out] pId

Receives the sequencer element identifier. This value is assigned by the sequencer source when the application calls IMFSequencerSource::AppendTopology. This parameter is optional and can be NULL.

[out] ppTopology

Receives a pointer to the IMFTopology interface of the original topology that the application added to the sequencer source. The caller must release the interface. This parameter can receive the value NULL if the sequencer source has switched to the next presentation. This parameter is optional and can be NULL.

Return value

The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return code Description
S_OK
The method succeeded.
E_INVALIDARG
The presentation descriptor is not valid.
MF_S_SEQUENCER_CONTEXT_CANCELED
This segment was canceled.

Remarks

The topology returned in ppTopology is the original topology that the application specified in AppendTopology. The source nodes in this topology contain pointers to the native sources. Do not queue this topology on the Media Session. Instead, call IMFMediaSourceTopologyProvider::GetMediaSourceTopology to get the sequencer source's modified topology. The source nodes in the modified topology contain pointers to the sequencer source, rather than the native sources.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header mfidl.h
Library Mfuuid.lib

See also

IMFSequencerSource

Sequencer Source