diff --git a/src/lib/stream/gst/utils.rs b/src/lib/stream/gst/utils.rs index a6472fee..f0dcfbf8 100644 --- a/src/lib/stream/gst/utils.rs +++ b/src/lib/stream/gst/utils.rs @@ -233,7 +233,7 @@ fn make_source_description_from_stream_uri(stream_uri: &url::Url) -> Result { Ok(format!( - "rtspsrc name=source location={stream_uri} is-live=true latency=0 do-retransmission=true" + "rtspsrc name=source location={stream_uri} is-live=true latency=0 do-retransmission=true protocols=tcp" )) } "udp" => { diff --git a/src/lib/stream/pipeline/onvif_pipeline.rs b/src/lib/stream/pipeline/onvif_pipeline.rs index 5ba21701..0b8921d6 100644 --- a/src/lib/stream/pipeline/onvif_pipeline.rs +++ b/src/lib/stream/pipeline/onvif_pipeline.rs @@ -71,7 +71,7 @@ impl OnvifPipeline { Some(VideoEncodeType::H264) => { format!( concat!( - "rtspsrc location={location} is-live=true latency=0 do-retransmission=true", + "rtspsrc location={location} is-live=true latency=0 do-retransmission=true protocols=tcp", " ! application/x-rtp, media=(string)video", " ! rtph264depay", " ! h264parse config-interval=-1", @@ -89,7 +89,7 @@ impl OnvifPipeline { Some(VideoEncodeType::H265) => { format!( concat!( - "rtspsrc location={location} is-live=true latency=0 do-retransmission=true", + "rtspsrc location={location} is-live=true latency=0 do-retransmission=true protocols=tcp", " ! application/x-rtp, media=(string)video", " ! rtph265depay", " ! h265parse config-interval=-1", diff --git a/src/lib/stream/pipeline/redirect_pipeline.rs b/src/lib/stream/pipeline/redirect_pipeline.rs index eb891f47..add4c991 100644 --- a/src/lib/stream/pipeline/redirect_pipeline.rs +++ b/src/lib/stream/pipeline/redirect_pipeline.rs @@ -65,7 +65,7 @@ impl RedirectPipeline { "rtsp" => { format!( concat!( - "rtspsrc location={location} is-live=true latency=0 do-retransmission=true", + "rtspsrc location={location} is-live=true latency=0 do-retransmission=true protocols=tcp", " ! application/x-rtp, media=(string)video", ), location = url,