OVRU_EVCB
Appearance
This structure describes a synchronization overrun event. This event occurs when a slave stream cannot maintain synchronization with the master stream, often due to system latency or hardware constraints. The event can be enabled through an SpiEnableEvent call.
typedef struct _OVRU_EVCB {
ULONG ulType; /* Event type. */
ULONG ulSubType; /* Event subtype. */
ULONG ulFlags; /* Flags. */
HSTREAM hstream; /* Stream handle. */
HID hid; /* Stream handler ID. */
ULONG ulStatus; /* Event status. */
MMTIME mmtimeSlave; /* Slave stream time. */
MMTIME mmtimeStart; /* Start start offset. */
MMTIME mmtimeMaster; /* Master stream time. */
} OVRU_EVCB;
typedef OVRU_EVCB * POVRU_EVCB ;
Fields
- ulType
- Specifies the event type (typically EVENT_SYNC_OVERRUN).
- ulSubType
- Specifies the event subtype.
- ulFlags
- Event control flags.
- hstream
- The handle of the stream that triggered the overrun event.
- hid
- The stream handler ID associated with the event.
- ulStatus
- Provides specific status information regarding the nature of the overrun.
- mmtimeSlave
- The current time position of the slave stream when the overrun was detected.
- mmtimeStart
- The starting offset for the stream.
- mmtimeMaster
- The current time position of the master stream at the moment of the overrun. Comparing this with `mmtimeSlave` allows the application to calculate the drift.