Skip to main content
IWMSyncReader interface

The IWMSyncReader interface provides the ability to read ASF files using synchronous calls. This is in contrast to many of the methods in IWMReader, which are called asynchronously.

You get a pointer to an IWMSyncReader interface when you create a new synchronous reader object with a call to WMCreateSyncReader.

In addition to enabling synchronous reading, the methods of IWMSyncReader are tailored to meet the demands of editing applications. Default playback from IWMSyncReader delivers uncompressed samples for the default streams of all outputs. However, you can manipulate the selected streams during streaming without having to enable manual stream selection. You can also receive compressed or uncompressed samples, though you cannot change between them during streaming. Samples are delivered by either output number or stream number, so you can receive uncompressed samples from mutually exclusive streams.

Many of the methods in this interface are almost identical to corresponding methods in the asynchronous reader.

Use of this interface, as well as the implementation of an IStream COM object that passes data to this object, is demonstrated in the WMSyncReader SDK sample.

Members

The IWMSyncReader interface inherits from the IUnknown interface. IWMSyncReader also has these types of members:

Methods

The IWMSyncReader interface has these methods.

MethodDescription
Close

Removes a file from the synchronous reader.

GetMaxOutputSampleSize

Retrieves the maximum sample size for an output in the file.

GetMaxStreamSampleSize

Retrieves the maximum sample size for a stream in the file.

GetNextSample

Gets the next sample from the file.

GetOutputCount

Retrieves the number of outputs in the file.

GetOutputFormat

Retrieves one output format for one output in the file.

GetOutputFormatCount

Retrieves the number of formats supported by an output in the file.

GetOutputNumberForStream

Retrieves the output number that corresponds to a stream in the file.

GetOutputProps

Retrieves the current properties of an output in the file.

GetOutputSetting

Retrieves a setting for a particular output by name.

GetReadStreamSamples

Ascertains whether a stream is configured to deliver uncompressed samples.

GetStreamNumberForOutput

Retrieves the current stream number that corresponds to an output number in the file.

GetStreamSelected

Retrieves whether or not a particular stream is selected for sample delivery.

Open

Opens a file for reading.

OpenStream

Opens a stream for reading.

SetOutputProps

Sets the properties of an output in the file.

SetOutputSetting

Sets a named setting for an output in the file.

SetRange

Sets a start time and duration for playback.

SetRangeByFrame

Sets a start time and duration for playback based upon the frame number of a frame-indexed video stream.

SetReadStreamSamples

Sets a stream to deliver compressed or uncompressed samples.

SetStreamsSelected

Sets the streams for which the reader will deliver samples.

 

For information on which interfaces can be obtained by calling the QueryInterface method of this interface, see Synchronous Reader Object.

See also

Interfaces