Datastead RTSP/RTMP/HTTP/ONVIF DirectShow Source Filter - Overview

RTSP/RTMP/HTTP/ONVIF DirectShow Source Filter


The RTSP/RTMP/HTTP/ONVIF DirectShow Source Filter is able tocapture RTSP, RTMP, UDP, TCP, MMS, HTTP streams, render uncompressed audio and video streams, and can simultaneously record the audio/video streams to a file without decompression/recompression. It is also able to re-stream the source to another UDP or RTSP destination.

Most of the audio/video codecs are decoded, including H264 and H265.

This filter is natively supported by our TVideoGrabber SDK.


The filter can:

- decode and render live audio/video sources received through the ONVIF, RTSP, RTMP, HTTP, UDP, TS, MMS/MMSH protocols,

- record at the same time the audio/video streams in their native format without transcoding, directly to a file (MP4, FLV, MOV, AVI, or MKV file),

- perform backtimed recording (pre-roll recording),

- decode H264, H265 and most of the other audio/video codecs,

- connect asynchronously to the URL without blocking the main thread (the filter graph receives a notification when the connection completes),

- expose the uncompressed pins,

- capture snapshots,

- apply multiple text overlays over the decoded frames,

- adjust the brightness, hue, saturation,

- capture snapshots to a memory bitmap or to a file in BMP, JPG, PNG or TIFF format,

- encode the audio streams to PCM, MP3 or AAC, depending on the recording file name (e.g. H264/AAC for a MP4 recording),

- re-stream the URL to another destination in UDP unicast, UDP multicast or RTSP format

- while recording, generate new files on the fly without loosing frames and without pausing/stopping/restarting the graph.

The filter includes sample callback capabilities. It includes internally the required multiplexers (MP4, FLV, MOV, AVI and MKV mux) and does not transcode to H264, it saves directly the native H264/H265 samples to the file.
If the audio recording is enabled the audio stream is encoded to PCM, MP3 or AAC, depending on the format being recorded (e.g. H264/AAC or H265/AAC to MP4).


Limitations of the evaluation version

- the evaluation version of the filter stops running after a variable time, from a few minutes to a few hours.
- after the timed out occurred, the filter will NOT restart anymore until the application is restarted.
- if several filters are running concurrently in the same application, when a filter stops upon evaluation time out the other filters go on running independently independently until they time out by themselves.
- if several filters are used concurrently in the same application, once one filter has timed out, none of the other filters can restart until the application is restarted.