PERFINFO _ DSHOW _ STREAMTRACE-Struktur

Die PERFINFO_DSHOW_STREAMTRACE -Struktur enthält Daten für ein DirectShow-Ablaufverfolgungsereignis vom Typ GUID _ STREAMTRACE.

Syntax

typedef struct _PERFINFO_DSHOW_STREAMTRACE {
  ULONG     id;
  ULONG     reserved;
  ULONGLONG dshowClock;
  ULONGLONG data[4];
} PERFINFO_DSHOW_STREAMTRACE, *PPERFINFO_DSHOW_STREAMTRACE;

Member

id

Ereignisbezeichner. Siehe Hinweise.

reserved

Reserviert. Auf NULL festlegen.

dshowClock

Streamzeit für dieses Ereignis in Einheiten von 100 Nanosekunden. Dieser Wert ist optional und kann 0 (null) sein.

data

Optionale Ereignisdaten, die aus vier ULONGLONG-Werten bestehen. Die Bedeutung dieser Daten hängt vom Ereignisbezeichner ab.

Hinweise

Die folgenden Ereignisbezeichner werden definiert.

Ereignisbezeichner BESCHREIBUNG
PERFINFO_STREAMTRACE_MPEG2DEMUX_PTS_TRANSLATION Wird protokolliert, wenn der MPEG-2 Demultiplexer-Filter einen Präsentationszeitstempel (PTS) in die Streamzeit konvertiert.
  • data[0]: Konvertierte Startzeit.
  • data[1]: Konvertierte Beendigungszeit.
  • data[2]. Streambezeichner für den Eingabepin.
  • data[3]: PTS, der konvertiert wurde.
PERFINFO_STREAMTRACE_MPEG2DEMUX_SAMPLE_RECEIVE Wird protokolliert, wenn MPEG-2 Demultiplexer ein Beispiel empfängt.
PERFINFO_STREAMTRACE_VMR_BEGIN_ADVISE Wird protokolliert, wenn die VMR ein Beispiel für das Rendering plant, unmittelbar bevor die VMR IReferenceClock::AdviseTime aufruft.
  • data[0]: Referenzzeit zum Beginn des Streamings, was der Streamzeit 0 (null) entspricht.
PERFINFO_STREAMTRACE_VMR_BEGIN_DECODE Wird protokolliert, wenn die VMR einen Decodierungsvorgang startet, d. h., wenn der Decoder IAMVideoAccelerator::BeginFrameaufruft. Keine Ereignisdaten.
PERFINFO_STREAMTRACE_VMR_BEGIN_DEINTERLACE Wird protokolliert, wenn die VMR einen Deinterlacing- oder Video-Compositingvorgang startet. Keine Ereignisdaten.
PERFINFO_STREAMTRACE_VMR_DROPPED_FRAME Protokolliert, wenn die VMR einen Frame löscht; Beispielsweise, wenn ein Beispiel zu spät war.
  • data[0]: Beispielstartzeit.
  • data[1]: Beispielendzeit.
PERFINFO_STREAMTRACE_VMR_END_ADVISE Wird protokolliert, wenn die VMR eine Empfehlungsbenachrichtigung von der Referenzuhr empfängt. Keine Ereignisdaten.
PERFINFO_STREAMTRACE_VMR_END_DECODE Wird protokolliert, wenn die VMR einen Decodierungsvorgang beendet, d. h., wenn der Decoder IAMVideoAccelerator::EndFrameaufruft. Keine Ereignisdaten.
PERFINFO_STREAMTRACE_VMR_END_DEINTERLACE Wird protokolliert, wenn die VMR einen Deinterlacing- oder Video-Compositingvorgang abschließt. Keine Ereignisdaten.
PERFINFO_STREAMTRACE_VMR_RECEIVE Wird protokolliert, wenn die VMR ein neues Beispiel empfängt. Keine Ereignisdaten.
PERFINFO_STREAMTRACE_VMR_RENDER_TIME Wird protokolliert, wenn die VMR das Rendern eines Frames beendet.
  • data[0]: Zeit, die zum Rendern dieses Frames gedauert hat.
  • data[1]: Durchschnittliche Ausführung der Framerenderingzeiten.

Verwenden Sie zum Protokollieren dieses Ereignisses aus einem DirectShow-Filter die PERFLOG _ STREAMTRACE-Funktion, die in der Headerdatei Dxmperf.h definiert ist. Dieser Header ist in den DirectShow-Basisklassen enthalten.

Anforderungen

Anforderung Wert
Header
Perfstruct.h

Weitere Informationen

DirectShow-Strukturen

Ereignisablaufverfolgung in DirectShow

GUIDs für Ablaufverfolgungsereignisse