PERFINFO_DSHOW_STREAMTRACE structure
[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]
The PERFINFO_DSHOW_STREAMTRACE
structure contains data for a DirectShow trace event of type GUID_STREAMTRACE.
Syntax
typedef struct _PERFINFO_DSHOW_STREAMTRACE {
ULONG id;
ULONG reserved;
ULONGLONG dshowClock;
ULONGLONG data[4];
} PERFINFO_DSHOW_STREAMTRACE, *PPERFINFO_DSHOW_STREAMTRACE;
Members
-
id
-
Event identifier. See Remarks.
-
reserved
-
Reserved. Set to zero.
-
dshowClock
-
Stream time for this event, in 100-nanosecond units. This value is optional and can be zero.
-
data
-
Optional event data consisting of four ULONGLONG values. The meaning of this data depends on the event identifier.
Remarks
The following event identifiers are defined.
Event identifier | Description |
---|---|
PERFINFO_STREAMTRACE_MPEG2DEMUX_PTS_TRANSLATION | Logged when the MPEG-2 Demultiplexer filter converts a presentation time stamp (PTS) to stream time.
|
PERFINFO_STREAMTRACE_MPEG2DEMUX_SAMPLE_RECEIVE | Logged when MPEG-2 Demultiplexer receives a sample.
|
PERFINFO_STREAMTRACE_VMR_BEGIN_ADVISE | Logged when the VMR schedules a sample for rendering, immediately before the VMR calls IReferenceClock::AdviseTime.
|
PERFINFO_STREAMTRACE_VMR_BEGIN_DECODE | Logged when the VMR begins a decoding operation—that is, when the decoder calls IAMVideoAccelerator::BeginFrame. No event data. |
PERFINFO_STREAMTRACE_VMR_BEGIN_DEINTERLACE | Logged when the VMR begins a deinterlacing or video compositing operation. No event data. |
PERFINFO_STREAMTRACE_VMR_DROPPED_FRAME | Logged when the VMR drops a frame; for example, if a sample was late.
|
PERFINFO_STREAMTRACE_VMR_END_ADVISE | Logged when the VMR receives an advise notification from the reference clock. No event data. |
PERFINFO_STREAMTRACE_VMR_END_DECODE | Logged when the VMR ends a decoding operation—that is, when the decoder calls IAMVideoAccelerator::EndFrame. No event data. |
PERFINFO_STREAMTRACE_VMR_END_DEINTERLACE | Logged when the VMR completes a deinterlacing or video compositing operation. No event data. |
PERFINFO_STREAMTRACE_VMR_RECEIVE | Logged when the VMR receives a new sample. No event data. |
PERFINFO_STREAMTRACE_VMR_RENDER_TIME | Logged when the VMR finishes rendering a frame.
|
To log this event from a DirectShow filter, use the PERFLOG_STREAMTRACE function, which is defined in the header file Dxmperf.h. This header is included in the DirectShow base classes.
Requirements
Requirement | Value |
---|---|
Header |
|
See also