WebRTC connection failed due to DTLS error

Sean DuBois sean at siobud.com
Sat Dec 19 22:18:47 UTC 2020


Hey Vladimir,

Would you mind getting a pcap of your DTLS traffic? I assume you are
getting a Close because the clients are incompatible. These are the big
ones I have seen with DTLS.

* One side doesn't have use_srtp
* DTLS v1.0 and v1.2 mismatch
* One side requiring Extended Master Secret, other side not supporting
* .... lots of other crazy stuff :)

thanks

On Sat, Dec 19, 2020 at 04:54:58PM +0300, Vladimir Tyutin wrote:
> Please assist me to solve the issue below.
> I observe WebRTC peer connection can't be established.
> In log I see some errors related to dtls. Please help me understand the log
> below and get the issue resolved:
>
> 0:01:21.644288173  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1073:_collate_peer_connection_states:<webrtc>
> transceiver 0x1ab0f08 DTLS state: 0x0
> 0:01:21.644405214  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1086:_collate_peer_connection_states:<webrtc>
> transceiver 0x1ab0f08 ICE state: 0x1
> 0:01:21.644569089  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1073:_collate_peer_connection_states:<webrtc>
> transceiver 0x1bed050 DTLS state: 0x3
> 0:01:21.644678631  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1086:_collate_peer_connection_states:<webrtc>
> transceiver 0x1bed050 ICE state: 0x2
> 0:01:21.644764381  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1131:_collate_peer_connection_states:<webrtc>
> ICE connection state: 0x6. DTLS connection state: 0x9
> 0:01:21.644837673  1090  0x1b401b0 FIXME              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1189:_collate_peer_connection_states:<webrtc>
> Undefined situation detected, returning old state
> 0:01:21.762102246  1090  0x1f1b7b0 WARN           dtlssrtpdemux
> gst-plugins-bad-1.18.2/ext/dtls/gstdtlssrtpdemux.c:134:sink_chain:<dtlssrtpdemux2>
> received invalid buffer: 1
> 0:01:21.769914036  1090  0x1f1b7b0 ERROR         dtlsconnection
> gst-plugins-bad-1.18.2/ext/dtls/gstdtlsconnection.c:985:handle_error:<GstDtlsConnection at 0x1da56f0>
> Fatal SSL error
> 0:01:21.770157620  1090  0x1f1b7b0 ERROR         dtlsconnection
> gst-plugins-bad-1.18.2/ext/dtls/gstdtlsconnection.c:968:ssl_err_cb:<GstDtlsConnection at 0x1da56f0>
> ssl error:
> 2947169560:error:14102410:lib(20):func(258):reason(1040):NA:0:SSL alert
> number 40
>
> 0:01:21.770551453  1090  0x1f1b7b0 ERROR                dtlsdec
> gst-plugins-bad-1.18.2/ext/dtls/gstdtlsdec.c:502:process_buffer:<dtlsdec2>
> Error processing buffer: Fatal SSL error
> 0:01:21.770553453  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1073:_collate_peer_connection_states:<webrtc>
> transceiver 0x1ab0f08 DTLS state: 0x0
> 0:01:21.770745245  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1086:_collate_peer_connection_states:<webrtc>
> transceiver 0x1ab0f08 ICE state: 0x1
> 0:01:21.770861286  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1073:_collate_peer_connection_states:<webrtc>
> transceiver 0x1bed050 DTLS state: 0x2
> 0:01:21.770951120  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1086:_collate_peer_connection_states:<webrtc>
> transceiver 0x1bed050 ICE state: 0x2
> 0:01:21.771039203  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1131:_collate_peer_connection_states:<webrtc>
> ICE connection state: 0x6. DTLS connection state: 0x5
> 0:01:21.771119036  1090  0x1b401b0 TRACE              webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1145:_collate_peer_connection_states:<webrtc>
> returning failed
> 0:01:21.771230036  1090  0x1b401b0 INFO               webrtcbin
> gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1295:_update_peer_connection_state_task:<webrtc>
> Peer connection state change from connecting(1) to failed(4)
> [CAMERA_DEBUG] Peer connection state: failed
> 0:01:21.770664245  1090  0x1f1b7b0 WARN                 dtlsdec
> gst-plugins-bad-1.18.2/ext/dtls/gstdtlsdec.c:503:process_buffer:<dtlsdec2>
> error: Fatal SSL error
> 0:01:21.772238245  1090  0x1f1b7b0 ERROR                dtlsdec
> gst-plugins-bad-1.18.2/ext/dtls/gstdtlsdec.c:618:sink_chain:<dtlsdec2>
> Failed to process buffer: error
> 0:01:21.808121366  1090  0x1f1ba90 WARN                 basesrc
> gstreamer-1.18.2/libs/gst/base/gstbasesrc.c:3127:gst_base_src_loop:<nicesrc2>
> error: Internal data stream error.
> 0:01:21.808266866  1090  0x1f1ba90 WARN                 basesrc
> gstreamer-1.18.2/libs/gst/base/gstbasesrc.c:3127:gst_base_src_loop:<nicesrc2>
> error: streaming stopped, reason error (-5)
> 0:01:21.809681158  1090  0x1f1ba90 WARN                   queue
> gstreamer-1.18.2/plugins/elements/gstqueue.c:990:gst_queue_handle_sink_event:<queue8>
> error: Internal data stream error.
> 0:01:21.809811158  1090  0x1f1ba90 WARN                   queue
> gstreamer-1.18.2/plugins/elements/gstqueue.c:990:gst_queue_handle_sink_event:<queue8>
> error: streaming stopped, reason error (-5)

> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



More information about the gstreamer-devel mailing list