MEStreamTick event
Signals that a media stream does not have data available at a specified time.
Event values
Possible values retrieved from IMFMediaEvent::GetValue include the following.
VARTYPE | Description |
---|---|
VT_I8 |
Time at which the gap occurs, in 100-nanosecond units. |
Remarks
This event signals a gap in the data. The event notifies downstream components not to expect any data at the specified time.
The event should be sent by whichever object generates the time stamps for the media samples in the stream. Depending on the format of the data, this is either:
- The media stream on the media source (IMFMediaStream interface), or
- The decoder transform (IMFTransform interface).
During the gap, the object should send the event about as often as it would normally produce samples. For video, send one event for each missing frame. For audio, send the event at least once per second during the gap. The value of the event is the time stamp of the missing sample. Send as many MEStreamTick events as needed to fill the gap in the data.
If a media source has several streams and there is a gap in more than one stream, each stream should send MEStreamTick events. For example, if there is a gap in both audio and video data, then both streams send the event.
The MEStreamTick event does not complete an IMFMediaStream::RequestSample request. The media source must still send an MEMediaSample event for each call to RequestSample.
Media sinks cannot consume this event directly. To signal a gap in the stream to a media sink, call IMFStreamSink::PlaceMarker with an MFSTREAMSINK_MARKER_TICK marker. The Media Foundation pipeline converts MEStreamTick events to MFSTREAMSINK_MARKER_TICK markers when needed.
Do not set the MFSampleExtension_Discontinuity attribute on the next media sample after an MEStreamTick event. The MFSampleExtension_Discontinuity attribute implies that the time stamp is discontinuous with previous time stamps, whereas MEStreamTick implies that time stamps are continuous but some data is missing.
Note
An earlier version of the documentation incorrectly stated that the sample after an MEStreamTick event should have the MFSampleExtension_Discontinuity attribute.
Requirements
Requirement | Value |
---|---|
Minimum supported client |
Windows Vista [desktop apps only] |
Minimum supported server |
Windows Server 2008 [desktop apps only] |
Header |
|
See also