COutputQueue::NewSegment

 
Microsoft DirectShow 9.0

COutputQueue::NewSegment

The NewSegment method delivers a new segment to the input pin.

Syntax

  HRESULT NewSegment(
    REFERENCE_TIME tStart,
    REFERENCE_TIME tStop,
    double dRate
);

Parameters

tStart

Starting media position of the segment, in 100-nanosecond units.

tStop

End media position of the segment, in 100-nanosecond units.

dRate

Rate at which this segment should be processed, as a percentage of the original rate.

Return Value

Returns an HRESULT value.

Remarks

If the object is using a thread, it queues the following items, in order:

  • A NEW_SEGMENT control message.
  • The segment data.

The NEW_SEGMENT message notifies the thread that the next item on the queue will contain segment data. The segment data is bundled in a structure, declared as follows:

struct NewSegmentPacket {
    REFERENCE_TIME tStart;
    REFERENCE_TIME tStop;
    double dRate;
}; 

The thread calls the IPin::NewSegment method on the input pin, using the data given in the structure.

If the object is not using a thread, it calls the COutputQueue::SendAnyway method to deliver any pending samples. Then it calls IPin::NewSegment on the input pin.

Requirements

**  Header:** Declared in Outputq.h; include Streams.h.

**  Library:** Use Strmbase.lib (retail builds) or Strmbasd.lib (debug builds).

See Also