Menu Close

Multipurpose Directshow Encoder

The Datastead Multipurpose Encoder is a Directshow multiplexer and sink filter, able to transcode audio/video streams.

It can be used in 2 different ways:
– from the TVideoGrabber SDK as compression/recording/streaming codecs to encode in various formats (c.f. “Datastead Encoder” in the TVideoGrabber SDK help),
– as a DirectShow Sink filter to compress/encode audio/video streams through the FFmpeg command line.

Note: if the MultiPurpose Encoder is used as plugin from TVideoGrabber, the codec parameters can be set programmatically, without requiring the FFMpeg command line syntax.

It can encode in H264 through the OpenH264 codec, in HEVC/H265 through the Kvazaar codec, and supports hardware encoding through Intel QuickSync, NVidia NVENC and AMD AMF.

With this filter is is possible to encode the audio/video streams to various file containers (e.g. MP4), to stream in UDP or to push the video to media servers like Youtube, Wowza, Ant Media, etc…

This filter is natively supported by ourTVideoGrabber SDK, allowing to record or re-stream real time sources like webcams, HD PCIe cards or IP cameras.

To configure the filter, just invoke SetCommandLine from the filter interface and specify the desired command line.
Some examples are provided in the documentation.

Technically, when the Directshow graph runs, the transcoding process starts in the background, and stops when the graph is stopped. Pause/Resume is supported.

Several instances of the filter can be used concurrently in the same application.

System requirements

  • Recommended: Intel Core I5, Core I7, Core I9, AMD Ryzen, or higher
  • Windows 11, Windows 10, Windows 8.1, Windows 7

Documentation

Datastead_Multipurpose_DirectShow_Encoder.pdf

Screenshot of the filter settings in GraphEdit

click to enlarge:

Datastead Multiplexer to FFmpeg command-line GraphEdit demo

Limitations of the evaluation version

An “evaluation” text overlay appears over the video window, and/or the filter stops running after a while.