When no frames are received after a "device lost" time
out, the filters tries to reconnect automatically or notifies the
graph that the device has been lost.
By default the filter
tries to reconnect automatically. The auto reconnection can be
disabled:
- either by specifying >autoreconnect=0 at the end of the RTSP URL,
- either by
invoking
DatasteadRtspSourceConfig.SetBool(RTSP_Source_AutoReconnect_bool,
false)
when configuring the filter.
When the device lost timeout occurs, an EC_DEVICE_LOST notification event is notified to the filter graph, that stops.
When the device lost timeout occurs:
- an EC_RTSPNOTIFY (EC_RTSP_PARAM1_DEVICELOST_RECONNECTING, 0) notification event is sent to the filter graph,
- the filter graph is paused,
- the auto reconnection process begins
When the reconnection completes:
- the filter graph is run again,
- a custom EC_RTSPNOTIFY
(EC_RTSP_PARAM1_DEVICELOST_RECONNECTED, 0) notification is sent to
the filter graph.
If the reconnection fails again after the
device lost timeout, the reconnection cycle is repeated until it
succeeds or the graph stops.