avstack / gst-meet

Connect GStreamer pipelines to Jitsi Meet conferences
Apache License 2.0
71 stars 25 forks source link

"fatal: no colibri channel" with meet.jit.si #109

Open jmatsushita opened 4 months ago

jmatsushita commented 4 months ago

Hi there,

Just tried to test gst-meet running the master branch at commit 5b1f842920a8a31c211a9bf02acc0c299ebdecc1 built with cargo build --release on macos with the public meet.jit.si server. It gets "pretty far" into connecting but fails with a fatal: no colibri channel. Here's the end of the log:

2024-07-13T21:50:27.661246Z DEBUG XMPP    <<< <iq to='5f261d6f-a333-4e43-840a-3628f2084148@meet.jit.si/HtEljP6H4rrg' from='blankuncertaintiespinsimilarly@conference.meet.jit.si/focus' type='set' id='NWYyNjFkNmYtYTMzMy00ZTQzLTg0MGEtMzYyOGYyMDg0MTQ4QG1lZXQuaml0LnNpL0h0RWxqUDZINHJyZwBZNklFUS0xMjc1NDgzNwA/Vujkza+mRA==' xmlns='jabber:client' xml:lang='en'><jingle sid='d3mpt9907jeie' action='source-add' xmlns='urn:xmpp:jingle:1'><content name='audio'><description media='audio' xmlns='urn:xmpp:jingle:apps:rtp:1'><source ssrc='1088648253' name='8f243a0d-a0' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='8f243a0d' xmlns='http://jitsi.org/jitmeet'/><parameter value='8f243a0d-audio-0-3 65875085-db44-485e-9a99-09abc11e8e91-3' name='msid' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source></description></content><content name='video'><description media='video' xmlns='urn:xmpp:jingle:apps:rtp:1'><source ssrc='992398687' videoType='camera' name='8f243a0d-v0' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='8f243a0d' xmlns='http://jitsi.org/jitmeet'/><parameter value='8f243a0d-video-0-3 f2d07317-919d-4e48-b3b6-1306bb011a60-3' name='msid' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='2744264803' videoType='camera' name='8f243a0d-v0' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='8f243a0d' xmlns='http://jitsi.org/jitmeet'/><parameter value='8f243a0d-video-0-3 f2d07317-919d-4e48-b3b6-1306bb011a60-3' name='msid' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><ssrc-group semantics='FID' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='992398687'/><source ssrc='2744264803'/></ssrc-group></description></content></jingle></iq>
2024-07-13T21:50:27.661449Z DEBUG Received Jingle source-add
2024-07-13T21:50:27.661457Z DEBUG adding ssrc to remote_ssrc_map: Source { id: 1088648253, name: Some("8f243a0d-a0"), video_type: None, parameters: [Parameter { name: "msid", value: Some("8f243a0d-audio-0-3 65875085-db44-485e-9a99-09abc11e8e91-3") }], info: Some(SsrcInfo { owner: "8f243a0d" }) }
2024-07-13T21:50:27.661464Z DEBUG adding ssrc to remote_ssrc_map: Source { id: 992398687, name: Some("8f243a0d-v0"), video_type: Some("camera"), parameters: [Parameter { name: "msid", value: Some("8f243a0d-video-0-3 f2d07317-919d-4e48-b3b6-1306bb011a60-3") }], info: Some(SsrcInfo { owner: "8f243a0d" }) }
2024-07-13T21:50:27.661818Z DEBUG adding ssrc to remote_ssrc_map: Source { id: 2744264803, name: Some("8f243a0d-v0"), video_type: Some("camera"), parameters: [Parameter { name: "msid", value: Some("8f243a0d-video-0-3 f2d07317-919d-4e48-b3b6-1306bb011a60-3") }], info: Some(SsrcInfo { owner: "8f243a0d" }) }
2024-07-13T21:50:27.661858Z DEBUG XMPP    <<< <iq to='5f261d6f-a333-4e43-840a-3628f2084148@meet.jit.si/HtEljP6H4rrg' from='blankuncertaintiespinsimilarly@conference.meet.jit.si/focus' type='result' id='fc0dfb6a-d1ba-4164-8b10-71bd7ef297e0' xmlns='jabber:client' xml:lang='en'/>
2024-07-13T21:50:27.661871Z DEBUG Focus acknowledged session-accept
2024-07-13T21:50:27.661888Z DEBUG join{xmpp_connection=Connection { tx: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x137020800, tail_position: 6 }, semaphore: Semaphore { semaphore: Semaphore { permits: 64 }, bound: 64 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } }, inner: Mutex { data: ConnectionInner { state: Idle, jid: Some(FullJID(5f261d6f-a333-4e43-840a-3628f2084148@meet.jit.si/HtEljP6H4rrg)) } }, tls_insecure: false } glib_main_context=MainContext { inner: Shared { inner: 0x600003e50b40 } } config=JitsiConferenceConfig { muc: BareJID(blankuncertaintiespinsimilarly@conference.meet.jit.si), focus: Full(FullJID(focus@auth.meet.jit.si/focus)), nick: "gst-meet", region: None, video_codec: "vp8", extra_muc_features: [], start_bitrate: 800, stereo: false, recv_video_scale_width: 1280, recv_video_scale_height: 720, buffer_size: 200 }}: close time.busy=1.46ms time.idle=837ms
2024-07-13T21:50:27.661928Z DEBUG XMPP    >>> <iq xmlns='jabber:client' from="5f261d6f-a333-4e43-840a-3628f2084148@meet.jit.si/HtEljP6H4rrg" id="NWYyNjFkNmYtYTMzMy00ZTQzLTg0MGEtMzYyOGYyMDg0MTQ4QG1lZXQuaml0LnNpL0h0RWxqUDZINHJyZwBZNklFUS0xMjc1NDgzNwA/Vujkza+mRA==" to="blankuncertaintiespinsimilarly@conference.meet.jit.si/focus" type="result"/>
2024-07-13T21:50:27.662463Z ERROR fatal: no colibri channel
jbg commented 1 month ago

Jitsi has recently switched from defaulting to WebSocket for the secondary ("Colibri") signaling channel that goes directly from the client to the JVB, to defaulting to SCTP. Most likely meet.jit.si is offering only SCTP here. We don't yet support that, so it bails out. I'll use this issue to track progress to supporting SCTP for Colibri signalling.

daimoc commented 1 month ago

Hi @jbg, what is your plan for Colibri SCTP support ? Do you have identified a rust SCTP stack ?

c-zolotko commented 2 weeks ago

I also got this error in gst-meet trying to connect to our self-hosted docker running stable-9753, still works in stable-8252.