MmfExSinkSource demonstrates how to implement sink and source plug-ins for the Multimedia Framework. A sink is an object that can receive multimedia data; a source is an object that can supply it. This example implements a sink and a source as descriptor objects.
Both the sink and source are implemented in a single class, CMMFExDescriptor, that derives from CMMFClip. CMMFClip represents a multimedia clip (i.e. not a stream or hardware device), which, in turn, derives from the ECom sink interface MDataSink, and the source interface MDataSource.
Both the example source and sink are passed on creation a packaged TMMFExDescriptorParams object, which specifies the descriptor to read/write, and the thread to which the descriptor belongs.
Note that the default audio controller only uses the default sink/sources, and returns "not supported" if you attempt to use other sink/sources with it.
Click on the following link to download the example: MmfExSinkSource.zip file
Click:browse to view the example code.