mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2024-12-28 13:00:31 +00:00
542030fd82
If a user constrained the supported CAPS, for instance using `video-caps`: ```shell gst-launch-1.0 videotestsrc ! video/x-raw,format=I420 ! x264enc \ ! webrtcsink video-caps=video/x-vp8 ``` ... a panic would occur which was internally caught without the user being informed except for the following message which was written to stderr: > thread 'tokio-runtime-worker' panicked at net/webrtc/src/webrtcsink/imp.rs:3533:22: > expected audio or video raw caps: video/x-h264, [...] <br> > note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace The pipeline kept running. This commit converts the panic into an `Error` which bubbles up as an element `StreamError::CodecNotFound` which can be handled by the application. With the above `gst-launch`, this terminates the pipeline with: > [...] ERROR webrtcsink net/webrtc/src/webrtcsink/imp.rs:3771:gstrswebrtc:: > webrtcsink:👿:BaseWebRTCSink::start_stream_discovery_if_needed::{{closure}}:<webrtcsink0> > Error running discovery: Unsupported caps: video/x-h264, [...] <br> > ERROR: from element /GstPipeline:pipeline0/GstWebRTCSink:webrtcsink0: > There is no codec present that can handle the stream's type. <br> > Additional debug info: <br> > net/webrtc/src/webrtcsink/imp.rs(3772): gstrswebrtc::webrtcsink:👿:BaseWebRTCSink:: > start_stream_discovery_if_needed::{{closure}} (): /GstPipeline:pipeline0/GstWebRTCSink:webrtcsink0: > Failed to look up output caps: Unsupported caps: video/x-h264, [...] <br> > Execution ended after 0:00:00.055716661 <br> > Setting pipeline to NULL ... Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1540> |
||
---|---|---|
.. | ||
aws | ||
hlssink3 | ||
ndi | ||
onvif | ||
raptorq | ||
reqwest | ||
rtp | ||
rtsp | ||
webrtc | ||
webrtchttp |