The MediaStreamSink replaces the deprecated AVISink. A MediaStreamSink can save image data in video files and optionally allows you to specify one or more IFrameFilters that can analyze and/or transform the image data before it is written to the video file.
The IFrameFilter implementation can also drop certain frames in order to implement time lapse recording. The video file format is specified by a MediaStreamContainer, while the format of the image data in the file is determined either by a GUID (uncompressed format) or a codec (compressed format). The MediaStreamContainer determines the video file format; the most common MediaStreamContainer is AVI. Many media stream containers allow the specification of a Codec to compress the image data before writing it to the file.
Header File: tisudshl.h
Namespace: DShowLib
Introduced in version 3.0
GrabberSinkType
MediaStreamSink
Method | Description | ||
create | Creates a new MediaStreamSink. |
||
getCodec | Returns the Codec that was set when creating this sink. |
||
getContainer | Returns the MediaStreamContainer that was set when this sink was created. |
||
getCreateData | Returns a tCreateData structure, containing the information that was used to create this instance. |
||
getFilename | Returns the currently set target filename. |
||
getFrameFilters | Returns a tFrameFilterList, containing the frame filters that are currently used to analyze or transform the image data before it is written to the video file. |
||
getSinkType | This implementation of GrabberSinkType::getSinkType returns eMEDIASTREAM_SINK. |
||
getSubType | Returns the subtype of the selected uncompressed format. |
||
setFilename | Sets the target video filename. |
||
setFrameFilter | Sets a frame filter or a tFrameFilterList or frame filters. The filters are used to transform the image data before it is written to the video file. |
||
Struct | Description | ||
tCreateData | This structure describes the parameters, which were used to create a MediaStreamSink. You can access the tCreateData of a MediaStreamSink by calling MediaStreamSink::getCreateData, and passing it to MediaStreamSink::create to create a similar MediaStreamSink. |
||