Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How can I access the audio/video being captured by gst-meet? + Connection reset after 2 minutes issue. #32

Closed
serenaraju opened this issue Feb 10, 2022 · 7 comments

Comments

@serenaraju
Copy link

serenaraju commented Feb 10, 2022

I am currently having two problems with gst-meet:

  1. I am not able to figure out how to access the video being captured by gst-meet. I am getting the following output on verbose. gst-meet enters the room successfully.
  2. gst-meet leaves the room after 2 minutes as in issue WebSocket connection reset after 1 minute #2 . However, I am unable to activate ping to keep the connection from resetting. I have mentioned the steps that I took in the issue WebSocket connection reset after 1 minute #2 comments. I might be including ping inaccurately. Can you please guide me to make this work?
  3. I have also built gst-meet from source so that every new update is included.
 cargo run --release -- --web-socket-url=wss://tifr.ml/xmpp-websocket \
>          --xmpp-domain=tifr.ml \
>          --room-name=roomname \
>          --recv-pipeline-participant-template="webmmux name=muxer ! filesink location={participant_id}.webm
>                                                opusparse name=audio ! muxer.audio_0
>                                                capsfilter caps=video/x-vp8 name=video ! muxer.video_0" --verbose
warning: field is never read: `ssrc`
 --> lib-gst-meet/src/source.rs:3:3
  |
3 |   pub(crate) ssrc: u32,
  |   ^^^^^^^^^^^^^^^^^^^^
  |
  = note: `#[warn(dead_code)]` on by default

warning: field is never read: `name`
  --> lib-gst-meet/src/xmpp/extdisco.rs:31:3
   |
31 |   pub(crate) name: Option<String>,
   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: field is never read: `transport`
  --> lib-gst-meet/src/xmpp/extdisco.rs:34:3
   |
34 |   pub(crate) transport: Option<String>,
   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: field is never read: `restricted`
  --> lib-gst-meet/src/xmpp/extdisco.rs:35:3
   |
35 |   pub(crate) restricted: Option<bool>,
   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: field is never read: `expires`
  --> lib-gst-meet/src/xmpp/extdisco.rs:38:3
   |
38 |   pub(crate) expires: Option<String>,
   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: `lib-gst-meet` (lib) generated 5 warnings
warning: unused import: `error`
  --> gst-meet/src/main.rs:17:15
   |
17 | use tracing::{error, info, trace, warn};
   |               ^^^^^
   |
   = note: `#[warn(unused_imports)]` on by default

warning: `gst-meet` (bin "gst-meet") generated 1 warning
    Finished release [optimized] target(s) in 0.10s
     Running `target/release/gst-meet '--web-socket-url=wss://tifr.ml/xmpp-websocket' --xmpp-domain=tifr.ml --room-name=roomname '--recv-pipeline-participant-template=webmmux name=muxer '\!' filesink location={participant_id}.webm
                                               opusparse name=audio '\!' muxer.audio_0
                                               capsfilter caps=video/x-vp8 name=video '\!' muxer.video_0' --verbose`
2022-02-10T10:26:20.519189Z  INFO Connecting XMPP WebSocket to wss://tifr.ml/xmpp-websocket
2022-02-10T10:26:20.877917Z DEBUG Client handshake done.    
2022-02-10T10:26:20.878170Z DEBUG XMPP    >>> <open xmlns="urn:ietf:params:xml:ns:xmpp-framing" to="tifr.ml" version="1.0"/>
2022-02-10T10:26:20.968114Z DEBUG XMPP    <<< <open xmlns='urn:ietf:params:xml:ns:xmpp-framing' id='081494ce-6c24-4cdc-b7fe-7b88001cea79' xml:lang='en' from='tifr.ml' version='1.0'/>
2022-02-10T10:26:20.968143Z  INFO Connected XMPP WebSocket
2022-02-10T10:26:20.968148Z DEBUG XMPP    <<< <stream:features xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client'><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>ANONYMOUS</mechanism></mechanisms></stream:features>
2022-02-10T10:26:20.968211Z DEBUG XMPP    >>> <auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="ANONYMOUS"></auth>
2022-02-10T10:26:21.057422Z DEBUG XMPP    <<< <success xmlns='urn:ietf:params:xml:ns:xmpp-sasl'/>
2022-02-10T10:26:21.057642Z DEBUG XMPP    >>> <open xmlns="urn:ietf:params:xml:ns:xmpp-framing" to="tifr.ml" version="1.0"/>
2022-02-10T10:26:21.147403Z DEBUG XMPP    <<< <open xmlns='urn:ietf:params:xml:ns:xmpp-framing' id='adc09968-72ee-469d-a5f5-fa930a442147' xml:lang='en' from='tifr.ml' version='1.0'/>
2022-02-10T10:26:21.147432Z  INFO Logged in anonymously
2022-02-10T10:26:21.147436Z DEBUG XMPP    <<< <stream:features xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client'><ver xmlns='urn:xmpp:features:rosterver'/><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><required/></bind><session xmlns='urn:ietf:params:xml:ns:xmpp-session'><optional/></session><sm xmlns='urn:xmpp:sm:2'><optional/></sm><sm xmlns='urn:xmpp:sm:3'><optional/></sm><c hash='sha-1' xmlns='http://jabber.org/protocol/caps' ver='qFXOfccDxZpF5X9IlbgbY3aec/w=' node='http://prosody.im'/></stream:features>
2022-02-10T10:26:21.147497Z DEBUG XMPP    >>> <iq xmlns="jabber:client" id="48c7b418-7a31-42b6-910c-67f3ebe8a969" type="set"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"/></iq>
2022-02-10T10:26:21.237435Z DEBUG XMPP    <<< <iq id='48c7b418-7a31-42b6-910c-67f3ebe8a969' xmlns='jabber:client' type='result'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><jid>k66rln0ffxv4jfea@tifr.ml/dEIQSOBo</jid></bind></iq>
2022-02-10T10:26:21.237475Z  INFO My JID: k66rln0ffxv4jfea@tifr.ml/dEIQSOBo
2022-02-10T10:26:21.237506Z DEBUG XMPP    >>> <iq xmlns="jabber:client" from="k66rln0ffxv4jfea@tifr.ml/dEIQSOBo" id="b85699de-393c-46d6-9f49-162f9915dc8e" to="tifr.ml" type="get"><query xmlns="http://jabber.org/protocol/disco#info"/></iq>
2022-02-10T10:26:21.327773Z DEBUG XMPP    <<< <iq type='result' id='b85699de-393c-46d6-9f49-162f9915dc8e' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client' from='tifr.ml'><query xmlns='http://jabber.org/protocol/disco#info'><identity name='conferenceduration.tifr.ml' category='component' type='conference_duration'/><identity name='speakerstats.tifr.ml' category='component' type='speakerstats'/><identity name='Prosody PubSub Service' category='pubsub' type='service'/><identity name='Prosody' category='pubsub' type='pep'/><identity name='lobby.tifr.ml' category='component' type='lobbyrooms'/><identity name='avmoderation.tifr.ml' category='component' type='av_moderation'/><identity name='breakout.tifr.ml' category='component' type='breakout_rooms'/><identity name='Prosody' category='server' type='im'/><feature var='msgoffline'/><feature var='vcard-temp'/><feature var='urn:xmpp:carbons:2'/><feature var='jabber:iq:private'/><feature var='http://jabber.org/protocol/pubsub'/><feature var='http://jabber.org/protocol/pubsub#subscription-options'/><feature var='http://jabber.org/protocol/pubsub#outcast-affiliation'/><feature var='http://jabber.org/protocol/pubsub#meta-data'/><feature var='http://jabber.org/protocol/pubsub#retrieve-subscriptions'/><feature var='http://jabber.org/protocol/pubsub#create-and-configure'/><feature var='http://jabber.org/protocol/pubsub#item-ids'/><feature var='http://jabber.org/protocol/pubsub#retrieve-items'/><feature var='http://jabber.org/protocol/pubsub#retrieve-default'/><feature var='http://jabber.org/protocol/pubsub#delete-nodes'/><feature var='http://jabber.org/protocol/pubsub#create-nodes'/><feature var='http://jabber.org/protocol/pubsub#publisher-affiliation'/><feature var='http://jabber.org/protocol/pubsub#modify-affiliations'/><feature var='http://jabber.org/protocol/pubsub#multi-items'/><feature var='http://jabber.org/protocol/pubsub#subscribe'/><feature var='http://jabber.org/protocol/pubsub#config-node'/><feature var='http://jabber.org/protocol/pubsub#persistent-items'/><feature var='http://jabber.org/protocol/pubsub#access-open'/><feature var='http://jabber.org/protocol/pubsub#retract-items'/><feature var='http://jabber.org/protocol/pubsub#publish-options'/><feature var='http://jabber.org/protocol/pubsub#publish'/><feature var='http://jabber.org/protocol/pubsub#member-affiliation'/><feature var='http://jabber.org/protocol/pubsub#instant-nodes'/><feature var='http://jabber.org/protocol/pubsub#delete-items'/><feature var='http://jabber.org/protocol/pubsub#purge-nodes'/><feature var='http://jabber.org/protocol/commands'/><feature var='urn:xmpp:extdisco:2'/><feature var='urn:xmpp:extdisco:1'/><feature var='urn:xmpp:blocking'/><feature var='jabber:iq:last'/><feature var='jabber:iq:version'/><feature var='jabber:iq:roster'/><feature var='http://jabber.org/protocol/disco#info'/><feature var='http://jabber.org/protocol/disco#items'/><feature var='jabber:iq:register'/><feature var='urn:xmpp:time'/><feature var='jabber:iq:time'/><feature var='urn:xmpp:ping'/></query></iq>
2022-02-10T10:26:21.328027Z DEBUG XMPP    >>> <iq xmlns="jabber:client" from="k66rln0ffxv4jfea@tifr.ml/dEIQSOBo" id="ba8f18c5-a1a6-40de-abba-e8ed20a6f677" to="tifr.ml" type="get"><services xmlns="urn:xmpp:extdisco:2"/></iq>
2022-02-10T10:26:21.418186Z DEBUG XMPP    <<< <iq type='result' id='ba8f18c5-a1a6-40de-abba-e8ed20a6f677' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client' from='tifr.ml'><services xmlns='urn:xmpp:extdisco:2'><service port='3478' host='tifr.ml' type='stun'/><service username='1644575181' expires='2022-02-11T10:26:21Z' password='aoZf/eyGQLA3D/fiisognRO12p0=' type='turn' transport='udp' port='3478' restricted='1' host='tifr.ml'/><service username='1644575181' expires='2022-02-11T10:26:21Z' password='aoZf/eyGQLA3D/fiisognRO12p0=' type='turns' transport='tcp' port='5349' restricted='1' host='tifr.ml'/></services></iq>
2022-02-10T10:26:21.418284Z DEBUG external services: [Service { type: "stun", name: None, host: "tifr.ml", port: Some(3478), transport: None, restricted: None, username: None, password: None, expires: None }, Service { type: "turn", name: None, host: "tifr.ml", port: Some(3478), transport: Some("udp"), restricted: Some(true), username: Some("1644575181"), password: Some("aoZf/eyGQLA3D/fiisognRO12p0="), expires: Some("2022-02-11T10:26:21Z") }, Service { type: "turns", name: None, host: "tifr.ml", port: Some(5349), transport: Some("tcp"), restricted: Some(true), username: Some("1644575181"), password: Some("aoZf/eyGQLA3D/fiisognRO12p0="), expires: Some("2022-02-11T10:26:21Z") }]
2022-02-10T10:26:21.418522Z DEBUG XMPP    >>> <iq xmlns="jabber:client" id="47e08b57-ffda-4650-8aab-0a9ccc959191" to="focus@auth.tifr.ml/focus" type="set"><conference xmlns="http://jitsi.org/protocol/focus" machine-uid="d0d06fbc-98c7-4c1f-a4ee-029ae77cf431" room="roomname@conference.tifr.ml"><property name="stereo" value="true"/><property name="startBitrate" value="800"/></conference></iq>
2022-02-10T10:26:21.507249Z DEBUG XMPP    <<< <iq type='result' from='focus@auth.tifr.ml/focus' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client' id='47e08b57-ffda-4650-8aab-0a9ccc959191'><conference focusjid='focus@auth.tifr.ml' room='roomname@conference.tifr.ml' ready='true' xmlns='http://jitsi.org/protocol/focus'><property name='authentication' value='false'/></conference></iq>
2022-02-10T10:26:21.507407Z DEBUG send_presence{self=JitsiConference { jid: FullJID(k66rln0ffxv4jfea@tifr.ml/dEIQSOBo), config: JitsiConferenceConfig { muc: BareJID(roomname@conference.tifr.ml), focus: Full(FullJID(focus@auth.tifr.ml/focus)), nick: "gst-meet", region: None, video_codec: "vp8", extra_muc_features: [] }, inner: Mutex { data: <locked> } } payloads=[Element { name: "x", namespace: "http://jabber.org/protocol/muc", prefix: None, prefixes: Prefixes(), attributes: {}, children: [] }, Element { name: "c", namespace: "http://jabber.org/protocol/caps", prefix: None, prefixes: Prefixes(), attributes: {"hash": "sha-1", "node": "https://github.com/avstack/gst-meet", "ver": "swMAgANtyBNi66ghGYklxmQQoAQ="}, children: [] }, Element { name: "c", namespace: "urn:xmpp:caps", prefix: None, prefixes: Prefixes(), attributes: {}, children: [Element(Element { name: "hash", namespace: "urn:xmpp:hashes:2", prefix: None, prefixes: Prefixes(), attributes: {"algo": "sha-256"}, children: [Text("G/kN7Lvb58mV9M0f+E0V9ctHF3+2rT5irZCuqldbjGU=")] })] }, Element { name: "stats-id", namespace: "jabber:client", prefix: None, prefixes: Prefixes(), attributes: {}, children: [Text("gst-meet")] }, Element { name: "jitsi_participant_codecType", namespace: "jabber:client", prefix: None, prefixes: Prefixes(), attributes: {}, children: [Text("vp8")] }, Element { name: "audiomuted", namespace: "jabber:client", prefix: None, prefixes: Prefixes(), attributes: {}, children: [Text("false")] }, Element { name: "videomuted", namespace: "jabber:client", prefix: None, prefixes: Prefixes(), attributes: {}, children: [Text("false")] }, Element { name: "nick", namespace: "http://jabber.org/protocol/nick", prefix: None, prefixes: Prefixes(), attributes: {}, children: [Text("gst-meet")] }]}: close time.busy=22.8µs time.idle=1.90µs
2022-02-10T10:26:21.507488Z DEBUG XMPP    >>> <presence xmlns="jabber:client" to="roomname@conference.tifr.ml/k66rln0ffxv4jfea"><x xmlns="http://jabber.org/protocol/muc"/><c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="https://github.com/avstack/gst-meet" ver="swMAgANtyBNi66ghGYklxmQQoAQ="/><c xmlns="urn:xmpp:caps"><hash xmlns="urn:xmpp:hashes:2" algo="sha-256">G/kN7Lvb58mV9M0f+E0V9ctHF3+2rT5irZCuqldbjGU=</hash></c><stats-id>gst-meet</stats-id><jitsi_participant_codecType>vp8</jitsi_participant_codecType><audiomuted>false</audiomuted><videomuted>false</videomuted><nick xmlns="http://jabber.org/protocol/nick">gst-meet</nick></presence>
2022-02-10T10:26:21.598465Z DEBUG XMPP    <<< <presence from='roomname@conference.tifr.ml/focus' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client'><priority>0</priority><etherpad xmlns='http://jitsi.org/jitmeet/etherpad'>roomname</etherpad><versions xmlns='http://jitsi.org/jitmeet'><component name='focus'>1.0.840</component></versions><conference-properties xmlns='http://jitsi.org/protocol/focus'><property value='true' key='support-terminate-restart'/><property value='1' key='bridge-count'/></conference-properties><c hash='sha-1' node='http://jitsi.org/jicofo' ver='Lg0vhCNhxjoeKJi2/hukdsizNWA=' xmlns='http://jabber.org/protocol/caps'/><x xmlns='vcard-temp:x:update'><photo/></x><x xmlns='http://jabber.org/protocol/muc#user'><item affiliation='owner' role='moderator' jid='focus@auth.tifr.ml/focus'/></x></presence>
2022-02-10T10:26:21.598628Z DEBUG XMPP    <<< <presence from='roomname@conference.tifr.ml/8ec106b7' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client'><stats-id>Marisa-HgH</stats-id><c hash='sha-1' node='https://jitsi.org/jitsi-meet' ver='D50Kz2zZl6ZxcI7RzgE166vg6PM=' xmlns='http://jabber.org/protocol/caps'/><features><feature var='https://jitsi.org/meet/e2ee'/></features><jitsi_participant_codecType>vp8</jitsi_participant_codecType><jitsi_participant_e2ee.idKey>E0OfxTV7RaUYzpLyvpp05yL2NS77lpoHBz+7+zxa81g</jitsi_participant_e2ee.idKey><audiomuted>false</audiomuted><videomuted>false</videomuted><x xmlns='vcard-temp:x:update'><photo/></x><x xmlns='http://jabber.org/protocol/muc#user'><item affiliation='owner' role='moderator' jid='dlpogs4oowkw6dwo@tifr.ml/3UeasO0m'/></x></presence>
2022-02-10T10:26:21.598712Z DEBUG XMPP    <<< <presence from='roomname@conference.tifr.ml/k66rln0ffxv4jfea' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client'><c hash='sha-1' node='https://github.com/avstack/gst-meet' ver='swMAgANtyBNi66ghGYklxmQQoAQ=' xmlns='http://jabber.org/protocol/caps'/><c xmlns='urn:xmpp:caps'><hash algo='sha-256' xmlns='urn:xmpp:hashes:2'>G/kN7Lvb58mV9M0f+E0V9ctHF3+2rT5irZCuqldbjGU=</hash></c><stats-id>gst-meet</stats-id><jitsi_participant_codecType>vp8</jitsi_participant_codecType><audiomuted>false</audiomuted><videomuted>false</videomuted><nick xmlns='http://jabber.org/protocol/nick'>gst-meet</nick><x xmlns='vcard-temp:x:update'><photo/></x><x xmlns='http://jabber.org/protocol/muc#user'><status code='100'/><item affiliation='none' role='participant' jid='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo'/><status code='110'/></x></presence>
2022-02-10T10:26:21.598773Z DEBUG Joined MUC: roomname@conference.tifr.ml
2022-02-10T10:26:21.598788Z DEBUG XMPP    <<< <message from='speakerstats.tifr.ml' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client'><json-message xmlns='http://jitsi.org/jitmeet'>{&quot;users&quot;:{&quot;8ec106b7&quot;:{&quot;totalDominantSpeakerTime&quot;:32688,&quot;facialExpressions&quot;:{&quot;happy&quot;:0,&quot;fearful&quot;:0,&quot;sad&quot;:0,&quot;surprised&quot;:0,&quot;neutral&quot;:0,&quot;angry&quot;:0,&quot;disgusted&quot;:0}},&quot;5melme_c18eqthds&quot;:{&quot;displayName&quot;:&quot;gst-meet&quot;,&quot;totalDominantSpeakerTime&quot;:0,&quot;facialExpressions&quot;:{&quot;happy&quot;:0,&quot;fearful&quot;:0,&quot;sad&quot;:0,&quot;surprised&quot;:0,&quot;neutral&quot;:0,&quot;angry&quot;:0,&quot;disgusted&quot;:0}}},&quot;type&quot;:&quot;speakerstats&quot;}</json-message></message>
2022-02-10T10:26:21.598810Z DEBUG XMPP    <<< <message from='conferenceduration.tifr.ml' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client'><json-message xmlns='http://jitsi.org/jitmeet'>{&quot;created_timestamp&quot;:1644488704000,&quot;type&quot;:&quot;conference_duration&quot;}</json-message></message>
2022-02-10T10:26:21.598824Z DEBUG XMPP    <<< <message from='roomname@conference.tifr.ml' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client' type='groupchat'><subject/></message>
2022-02-10T10:26:21.696987Z DEBUG XMPP    <<< <iq type='set' from='roomname@conference.tifr.ml/focus' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client' id='azY2cmxuMGZmeHY0amZlYUB0aWZyLm1sL2RFSVFTT0JvAFg3Mlg5LTE3NwCh7Rb+VEnCMt36DNsrizGb'><jingle initiator='focus@auth.tifr.ml/focus' action='session-initiate' sid='a045okmrde75i' xmlns='urn:xmpp:jingle:1'><content name='audio' creator='initiator' senders='both'><description maxptime='60' media='audio' xmlns='urn:xmpp:jingle:apps:rtp:1'><payload-type name='opus' channels='2' clockrate='48000' id='111'><parameter name='minptime' value='10'/><parameter name='useinbandfec' value='1'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='103' clockrate='16000' name='ISAC'/><payload-type id='104' clockrate='32000' name='ISAC'/><payload-type id='126' clockrate='8000' name='telephone-event'/><rtp-hdrext id='1' uri='urn:ietf:params:rtp-hdrext:ssrc-audio-level' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='5' uri='http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtcp-mux/><source ssrc='1799763942' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-audio-1 8be49ad8-a380-42e6-94a1-e65ce298b0f5-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source name='jvb-a0' ssrc='2623813084' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='jvb' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='mixedmslabel mixedlabelaudio0' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source></description><transport ufrag='b9l5i1frhims2n' pwd='61ct04j3io26dn8veeh8k2sap5' xmlns='urn:xmpp:jingle:transports:ice-udp:1'><web-socket url='wss://tifr.ml:443/colibri-ws/default-id/e292f7d43441301c/k66rln0ffxv4jfea?pwd=61ct04j3io26dn8veeh8k2sap5' xmlns='http://jitsi.org/protocol/colibri'/><rtcp-mux/><fingerprint hash='sha-256' setup='actpass' required='false' xmlns='urn:xmpp:jingle:apps:dtls:0'>99:F4:AC:FE:AF:A4:3D:A7:9B:3A:08:C7:99:42:82:6E:B7:40:CC:7F:3A:41:57:CD:18:FC:23:84:C3:12:73:5B</fingerprint><candidate ip='192.168.200.61' foundation='1' type='host' protocol='udp' network='0' generation='0' component='1' id='5f81d8670adc4e70ffffffffcec91816' port='10000' priority='2130706431'/><candidate ip='122.200.18.71' foundation='2' protocol='udp' network='0' generation='0' rel-port='10000' component='1' rel-addr='192.168.200.61' id='1b3af99970adc4e70ffffffff88e86220' port='10000' priority='1694498815' type='srflx'/></transport></content><content name='video' creator='initiator' senders='both'><description media='video' xmlns='urn:xmpp:jingle:apps:rtp:1'><payload-type id='100' clockrate='90000' name='VP8'><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><parameter name='x-google-start-bitrate' value='800'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='107' clockrate='90000' name='H264'><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><parameter name='x-google-start-bitrate' value='800'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><parameter name='profile-level-id' value='42e01f;level-asymmetry-allowed=1;packetization-mode=1;'/></payload-type><payload-type id='101' clockrate='90000' name='VP9'><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><parameter name='x-google-start-bitrate' value='800'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='96' clockrate='90000' name='rtx'><parameter name='apt' value='100'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='97' clockrate='90000' name='rtx'><parameter name='apt' value='101'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='99' clockrate='90000' name='rtx'><parameter name='apt' value='107'/></payload-type><rtp-hdrext id='3' uri='http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='5' uri='http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtcp-mux/><source ssrc='3326384229' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='868419519' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='2955437961' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='2771060444' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='4013738996' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='2417336756' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source name='jvb-v0' ssrc='882837485' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='jvb' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='mixedmslabel mixedlabelvideo0' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><ssrc-group semantics='FID' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='3326384229'/><source ssrc='868419519'/></ssrc-group><ssrc-group semantics='SIM' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='3326384229'/><source ssrc='2955437961'/><source ssrc='2771060444'/></ssrc-group><ssrc-group semantics='FID' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='2955437961'/><source ssrc='4013738996'/></ssrc-group><ssrc-group semantics='FID' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='2771060444'/><source ssrc='2417336756'/></ssrc-group></description><transport ufrag='b9l5i1frhims2n' pwd='61ct04j3io26dn8veeh8k2sap5' xmlns='urn:xmpp:jingle:transports:ice-udp:1'><web-socket url='wss://tifr.ml:443/colibri-ws/default-id/e292f7d43441301c/k66rln0ffxv4jfea?pwd=61ct04j3io26dn8veeh8k2sap5' xmlns='http://jitsi.org/protocol/colibri'/><rtcp-mux/><fingerprint hash='sha-256' setup='actpass' required='false' xmlns='urn:xmpp:jingle:apps:dtls:0'>99:F4:AC:FE:AF:A4:3D:A7:9B:3A:08:C7:99:42:82:6E:B7:40:CC:7F:3A:41:57:CD:18:FC:23:84:C3:12:73:5B</fingerprint><candidate ip='192.168.200.61' foundation='1' type='host' protocol='udp' network='0' generation='0' component='1' id='5f81d8670adc4e70ffffffffcec91816' port='10000' priority='2130706431'/><candidate ip='122.200.18.71' foundation='2' protocol='udp' network='0' generation='0' rel-port='10000' component='1' rel-addr='192.168.200.61' id='1b3af99970adc4e70ffffffff88e86220' port='10000' priority='1694498815' type='srflx'/></transport></content><group semantics='BUNDLE' xmlns='urn:xmpp:jingle:apps:grouping:0'><content name='audio'/><content name='video'/></group><bridge-session id='f5d7d' xmlns='http://jitsi.org/protocol/focus'/></jingle></iq>
2022-02-10T10:26:21.697665Z DEBUG Received non-Jingle IQ
2022-02-10T10:26:21.867715Z DEBUG XMPP    <<< <iq type='set' from='roomname@conference.tifr.ml/8ec106b7' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client' id='azY2cmxuMGZmeHY0amZlYUB0aWZyLm1sL2RFSVFTT0JvAGE5OGE4NWU2LTYyYWEtNGE1YS1hMzdjLTE2ZjYwZTIzMmYxYjpzZW5kSVEA30AtpGBCIw0pMM54cNxuWw=='><jingle initiator='roomname@conference.tifr.ml/8ec106b7' action='session-initiate' sid='603601da14fe' xmlns='urn:xmpp:jingle:1'><group semantics='BUNDLE' xmlns='urn:xmpp:jingle:apps:grouping:0'><content name='0'/><content name='1'/></group><content name='0' creator='initiator' senders='both'><description ssrc='3746007970' media='audio' xmlns='urn:xmpp:jingle:apps:rtp:1'><payload-type name='opus' id='111' clockrate='48000' channels='2'><parameter name='minptime' value='10'/><parameter name='useinbandfec' value='1'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type name='ISAC' id='103' clockrate='16000' channels='1'/><payload-type name='ISAC' id='104' clockrate='32000' channels='1'/><payload-type name='G722' id='9' clockrate='8000' channels='1'/><payload-type name='PCMU' id='0' clockrate='8000' channels='1'/><payload-type name='PCMA' id='8' clockrate='8000' channels='1'/><payload-type name='CN' id='106' clockrate='32000' channels='1'/><payload-type name='CN' id='105' clockrate='16000' channels='1'/><payload-type name='CN' id='13' clockrate='8000' channels='1'/><payload-type name='telephone-event' id='110' clockrate='48000' channels='1'/><payload-type name='telephone-event' id='112' clockrate='32000' channels='1'/><payload-type name='telephone-event' id='113' clockrate='16000' channels='1'/><payload-type name='telephone-event' id='126' clockrate='8000' channels='1'/><source ssrc='3746007970' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><parameter name='msid' value='249848e4-a743-4471-90b5-2efbe761576c-2 8be49ad8-a380-42e6-94a1-e65ce298b0f5-2'/></source><rtcp-mux/><rtp-hdrext id='1' uri='urn:ietf:params:rtp-hdrext:ssrc-audio-level' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='2' uri='http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='3' uri='http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='4' uri='urn:ietf:params:rtp-hdrext:sdes:mid' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='5' uri='urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='6' uri='urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/></description><transport ufrag='UkHo' pwd='83s5Xnk64RUgpOsLKbLW9gc/' xmlns='urn:xmpp:jingle:transports:ice-udp:1'><fingerprint hash='sha-256' setup='actpass' xmlns='urn:xmpp:jingle:apps:dtls:0'>10:F8:47:F8:13:CD:BC:55:19:7E:65:F6:EB:E0:F8:C3:6C:E9:5B:A0:C0:09:7A:CC:45:0E:84:78:9A:72:4D:AD</fingerprint></transport></content><content name='1' creator='initiator' senders='both'><description ssrc='3959483027' media='video' xmlns='urn:xmpp:jingle:apps:rtp:1'><payload-type name='VP8' id='96' clockrate='90000' channels='1'><rtcp-fb type='goog-remb' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type name='VP9' id='98' clockrate='90000' channels='1'><parameter name='profile-id' value='0'/><rtcp-fb type='goog-remb' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type name='VP9' id='100' clockrate='90000' channels='1'><parameter name='profile-id' value='2'/><rtcp-fb type='goog-remb' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type name='H264' id='102' clockrate='90000' channels='1'><parameter name='level-asymmetry-allowed' value='1'/><parameter name='packetization-mode' value='1'/><parameter name='profile-level-id' value='42001f'/><rtcp-fb type='goog-remb' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type name='H264' id='104' clockrate='90000' channels='1'><parameter name='level-asymmetry-allowed' value='1'/><parameter name='packetization-mode' value='0'/><parameter name='profile-level-id' value='42001f'/><rtcp-fb type='goog-remb' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type name='H264' id='106' clockrate='90000' channels='1'><parameter name='level-asymmetry-allowed' value='1'/><parameter name='packetization-mode' value='1'/><parameter name='profile-level-id' value='42e01f'/><rtcp-fb type='goog-remb' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type name='H264' id='108' clockrate='90000' channels='1'><parameter name='level-asymmetry-allowed' value='1'/><parameter name='packetization-mode' value='0'/><parameter name='profile-level-id' value='42e01f'/><rtcp-fb type='goog-remb' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type name='AV1X' id='35' clockrate='90000' channels='1'><rtcp-fb type='goog-remb' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type name='red' id='110' clockrate='90000' channels='1'/><payload-type name='rtx' id='97' clockrate='90000' channels='1'><parameter name='apt' value='96'/></payload-type><payload-type name='rtx' id='99' clockrate='90000' channels='1'><parameter name='apt' value='98'/></payload-type><payload-type name='rtx' id='101' clockrate='90000' channels='1'><parameter name='apt' value='100'/></payload-type><payload-type name='rtx' id='103' clockrate='90000' channels='1'><parameter name='apt' value='102'/></payload-type><payload-type name='rtx' id='105' clockrate='90000' channels='1'><parameter name='apt' value='104'/></payload-type><payload-type name='rtx' id='107' clockrate='90000' channels='1'><parameter name='apt' value='106'/></payload-type><payload-type name='rtx' id='109' clockrate='90000' channels='1'><parameter name='apt' value='108'/></payload-type><payload-type name='rtx' id='36' clockrate='90000' channels='1'><parameter name='apt' value='35'/></payload-type><payload-type name='rtx' id='111' clockrate='90000' channels='1'><parameter name='apt' value='110'/></payload-type><source ssrc='3959483027' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><parameter name='msid' value='af8d217d-3f22-49bd-9093-68f5418cf43e-2 5f89b9af-3483-462e-8a0f-bca83478b703-2'/></source><source ssrc='1826632984' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><parameter name='msid' value='af8d217d-3f22-49bd-9093-68f5418cf43e-2 5f89b9af-3483-462e-8a0f-bca83478b703-2'/></source><ssrc-group semantics='FID' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='3959483027'/><source ssrc='1826632984'/></ssrc-group><rtcp-mux/><rtp-hdrext id='14' uri='urn:ietf:params:rtp-hdrext:toffset' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='2' uri='http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='13' uri='urn:3gpp:video-orientation' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='3' uri='http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='12' uri='http://www.webrtc.org/experiments/rtp-hdrext/playout-delay' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='11' uri='http://www.webrtc.org/experiments/rtp-hdrext/video-content-type' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='7' uri='http://www.webrtc.org/experiments/rtp-hdrext/video-timing' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='8' uri='http://www.webrtc.org/experiments/rtp-hdrext/color-space' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='4' uri='urn:ietf:params:rtp-hdrext:sdes:mid' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='5' uri='urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='6' uri='urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/></description><transport ufrag='UkHo' pwd='83s5Xnk64RUgpOsLKbLW9gc/' xmlns='urn:xmpp:jingle:transports:ice-udp:1'><fingerprint hash='sha-256' setup='actpass' xmlns='urn:xmpp:jingle:apps:dtls:0'>10:F8:47:F8:13:CD:BC:55:19:7E:65:F6:EB:E0:F8:C3:6C:E9:5B:A0:C0:09:7A:CC:45:0E:84:78:9A:72:4D:AD</fingerprint></transport></content></jingle></iq>
2022-02-10T10:26:21.869496Z DEBUG Ignored Jingle session-initiate from roomname@conference.tifr.ml/8ec106b7
2022-02-10T10:26:21.958135Z DEBUG XMPP    <<< <iq type='set' from='roomname@conference.tifr.ml/8ec106b7' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client' id='azY2cmxuMGZmeHY0amZlYUB0aWZyLm1sL2RFSVFTT0JvAGM0NzVmOGZjLWFlODAtNDNjNC1iNzg1LTAyOGM5MThjNjdmMTpzZW5kSVEA30AtpGBCIw0pMM54cNxuWw=='><jingle initiator='roomname@conference.tifr.ml/8ec106b7' action='transport-info' sid='603601da14fe' xmlns='urn:xmpp:jingle:1'><content name='0' creator='initiator'><transport ufrag='UkHo' pwd='83s5Xnk64RUgpOsLKbLW9gc/' xmlns='urn:xmpp:jingle:transports:ice-udp:1'><candidate ip='2402:3a80:165f:1184:6962:43ec:f3fc:6782' foundation='4222391609' type='host' protocol='udp' network='1' generation='0' component='1' id='o8qpem1r5d' priority='2122262783' port='48877'/><candidate ip='192.168.24.124' foundation='52084401' type='host' protocol='udp' network='1' generation='0' component='1' id='ym71lnuwoa' priority='2122194687' port='54480'/><candidate ip='2402:3a80:165f:1184:6962:43ec:f3fc:6782' foundation='3039783369' protocol='tcp' network='1' generation='0' component='1' priority='1518283007' id='iv1t5qfnoi' port='9' tcptype='active' type='host'/><candidate ip='192.168.24.124' foundation='1301889601' protocol='tcp' network='1' generation='0' component='1' priority='1518214911' id='lwvpppapgz' port='9' tcptype='active' type='host'/><fingerprint hash='sha-256' required='true' xmlns='urn:xmpp:jingle:apps:dtls:0'>10:F8:47:F8:13:CD:BC:55:19:7E:65:F6:EB:E0:F8:C3:6C:E9:5B:A0:C0:09:7A:CC:45:0E:84:78:9A:72:4D:AD</fingerprint></transport></content></jingle></iq>
2022-02-10T10:26:21.958350Z DEBUG Received non-Jingle IQ
2022-02-10T10:27:21.932283Z ERROR fatal (in read loop): WebSocket protocol error: Connection reset without closing handshake

Caused by:
    Connection reset without closing handshake

@jbg

@jbg
Copy link
Contributor

jbg commented Feb 14, 2022

Your GStreamer pipeline template:

webmmux name=muxer ! filesink location={participant_id}.webm
opusparse name=audio ! muxer.audio_0
capsfilter caps=video/x-vp8 name=video ! muxer.video_0

Should create .webm files for each other participant in the room with the muxed audio and video. Do you get those files?

There does seem to be a problem here:

2022-02-10T10:26:21.696987Z DEBUG XMPP    <<< <iq type='set' from='roomname@conference.tifr.ml/focus' to='k66rln0ffxv4jfea@tifr.ml/dEIQSOBo' xmlns='jabber:client' id='azY2cmxuMGZmeHY0amZlYUB0aWZyLm1sL2RFSVFTT0JvAFg3Mlg5LTE3NwCh7Rb+VEnCMt36DNsrizGb'><jingle initiator='focus@auth.tifr.ml/focus' action='session-initiate' sid='a045okmrde75i' xmlns='urn:xmpp:jingle:1'><content name='audio' creator='initiator' senders='both'><description maxptime='60' media='audio' xmlns='urn:xmpp:jingle:apps:rtp:1'><payload-type name='opus' channels='2' clockrate='48000' id='111'><parameter name='minptime' value='10'/><parameter name='useinbandfec' value='1'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='103' clockrate='16000' name='ISAC'/><payload-type id='104' clockrate='32000' name='ISAC'/><payload-type id='126' clockrate='8000' name='telephone-event'/><rtp-hdrext id='1' uri='urn:ietf:params:rtp-hdrext:ssrc-audio-level' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='5' uri='http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtcp-mux/><source ssrc='1799763942' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-audio-1 8be49ad8-a380-42e6-94a1-e65ce298b0f5-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source name='jvb-a0' ssrc='2623813084' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='jvb' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='mixedmslabel mixedlabelaudio0' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source></description><transport ufrag='b9l5i1frhims2n' pwd='61ct04j3io26dn8veeh8k2sap5' xmlns='urn:xmpp:jingle:transports:ice-udp:1'><web-socket url='wss://tifr.ml:443/colibri-ws/default-id/e292f7d43441301c/k66rln0ffxv4jfea?pwd=61ct04j3io26dn8veeh8k2sap5' xmlns='http://jitsi.org/protocol/colibri'/><rtcp-mux/><fingerprint hash='sha-256' setup='actpass' required='false' xmlns='urn:xmpp:jingle:apps:dtls:0'>99:F4:AC:FE:AF:A4:3D:A7:9B:3A:08:C7:99:42:82:6E:B7:40:CC:7F:3A:41:57:CD:18:FC:23:84:C3:12:73:5B</fingerprint><candidate ip='192.168.200.61' foundation='1' type='host' protocol='udp' network='0' generation='0' component='1' id='5f81d8670adc4e70ffffffffcec91816' port='10000' priority='2130706431'/><candidate ip='122.200.18.71' foundation='2' protocol='udp' network='0' generation='0' rel-port='10000' component='1' rel-addr='192.168.200.61' id='1b3af99970adc4e70ffffffff88e86220' port='10000' priority='1694498815' type='srflx'/></transport></content><content name='video' creator='initiator' senders='both'><description media='video' xmlns='urn:xmpp:jingle:apps:rtp:1'><payload-type id='100' clockrate='90000' name='VP8'><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><parameter name='x-google-start-bitrate' value='800'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='107' clockrate='90000' name='H264'><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><parameter name='x-google-start-bitrate' value='800'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><parameter name='profile-level-id' value='42e01f;level-asymmetry-allowed=1;packetization-mode=1;'/></payload-type><payload-type id='101' clockrate='90000' name='VP9'><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><parameter name='x-google-start-bitrate' value='800'/><rtcp-fb type='transport-cc' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='96' clockrate='90000' name='rtx'><parameter name='apt' value='100'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='97' clockrate='90000' name='rtx'><parameter name='apt' value='101'/><rtcp-fb subtype='fir' type='ccm' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/><rtcp-fb subtype='pli' type='nack' xmlns='urn:xmpp:jingle:apps:rtp:rtcp-fb:0'/></payload-type><payload-type id='99' clockrate='90000' name='rtx'><parameter name='apt' value='107'/></payload-type><rtp-hdrext id='3' uri='http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtp-hdrext id='5' uri='http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01' xmlns='urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'/><rtcp-mux/><source ssrc='3326384229' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='868419519' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='2955437961' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='2771060444' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='4013738996' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source ssrc='2417336756' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='roomname@conference.tifr.ml/8ec106b7' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='8ec106b7-video-1 5f89b9af-3483-462e-8a0f-bca83478b703-1' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><source name='jvb-v0' ssrc='882837485' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><ssrc-info owner='jvb' xmlns='http://jitsi.org/jitmeet'/><parameter name='msid' value='mixedmslabel mixedlabelvideo0' xmlns='urn:xmpp:jingle:apps:rtp:1'/></source><ssrc-group semantics='FID' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='3326384229'/><source ssrc='868419519'/></ssrc-group><ssrc-group semantics='SIM' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='3326384229'/><source ssrc='2955437961'/><source ssrc='2771060444'/></ssrc-group><ssrc-group semantics='FID' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='2955437961'/><source ssrc='4013738996'/></ssrc-group><ssrc-group semantics='FID' xmlns='urn:xmpp:jingle:apps:rtp:ssma:0'><source ssrc='2771060444'/><source ssrc='2417336756'/></ssrc-group></description><transport ufrag='b9l5i1frhims2n' pwd='61ct04j3io26dn8veeh8k2sap5' xmlns='urn:xmpp:jingle:transports:ice-udp:1'><web-socket url='wss://tifr.ml:443/colibri-ws/default-id/e292f7d43441301c/k66rln0ffxv4jfea?pwd=61ct04j3io26dn8veeh8k2sap5' xmlns='http://jitsi.org/protocol/colibri'/><rtcp-mux/><fingerprint hash='sha-256' setup='actpass' required='false' xmlns='urn:xmpp:jingle:apps:dtls:0'>99:F4:AC:FE:AF:A4:3D:A7:9B:3A:08:C7:99:42:82:6E:B7:40:CC:7F:3A:41:57:CD:18:FC:23:84:C3:12:73:5B</fingerprint><candidate ip='192.168.200.61' foundation='1' type='host' protocol='udp' network='0' generation='0' component='1' id='5f81d8670adc4e70ffffffffcec91816' port='10000' priority='2130706431'/><candidate ip='122.200.18.71' foundation='2' protocol='udp' network='0' generation='0' rel-port='10000' component='1' rel-addr='192.168.200.61' id='1b3af99970adc4e70ffffffff88e86220' port='10000' priority='1694498815' type='srflx'/></transport></content><group semantics='BUNDLE' xmlns='urn:xmpp:jingle:apps:grouping:0'><content name='audio'/><content name='video'/></group><bridge-session id='f5d7d' xmlns='http://jitsi.org/protocol/focus'/></jingle></iq>
2022-02-10T10:26:21.697665Z DEBUG Received non-Jingle IQ

The xmpp-parsers Jingle::try_from on the element must be failing due to something specific about the Jingle stanza your focus is sending (https://github.com/avstack/gst-meet/blob/master/lib-gst-meet/src/conference.rs#L546).

@serenaraju
Copy link
Author

image
The files are not showing up in gst-meet location where I am running the command. (I am running it in the same location as where gst-meet is installed. Is that an issue with GStreamer? Should I try to reinstall that? The files are not showing up anywhere. For now, I am considering reinstalling the packages that were installed. But that will still not fix the connection closed issue (pinger issue). What can I do about that?

@jbg
Copy link
Contributor

jbg commented Feb 14, 2022

  • The connection closed issue implies that pings are not being sent from server side (mod_pinger not installed or not working), and something in the path (router, firewall, load balancer etc) is closing the connection after a short timeout. gst-meet does not yet send pings itself.
  • It looks like the Jingle session is not being set up because the session-initiate is ignored, as per my previous comment. You can look into the code of xmpp-parsers to see why your Jingle XML (in the logs above) doesn't match the structure expected by xmpp-parsers

@linkmauve
Copy link
Contributor

Instead of blindly looking at the code, I would recommend to use match on the result of TryFrom::try_from, replacing if let Ok(jingle) = Jingle::try_from(element) { with something like:

match Jingle::try_from(element) {
    Ok(jingle) => {},
    Err(err) => error!("Jingle element failed to parse: {err}"),
}

Doing so everywhere will lead to a much better debugging experience.

@jbg
Copy link
Contributor

jbg commented Feb 14, 2022

Yes absolutely, improvements to error handling in general would be welcomed!

@jbg
Copy link
Contributor

jbg commented Mar 7, 2022

@serenaraju

  • As of 68c9935, client -> server pings are implemented, so the connection should stay alive even in the face of routers/firewalls/LBs with short timeouts. Please let me know if that solves your connection reset issue.
  • In 3f27c90 I updated GStreamer to the released 1.20 version, and removed the vendored xmpp-parsers dependency in favour of a smaller crate with some customised elements for Jitsi's non-standard stuff. (Further improvement is planned here, but this at least makes it easier to track upstream xmpp-parsers updates). As part of this work I also improved the logging when a Jingle element fails to parse, so you should get a more useful error message now.

@jbg
Copy link
Contributor

jbg commented May 13, 2023

@serenaraju I'm going to close this issue, please let me know if you are still hitting issues with the latest code.

@jbg jbg closed this as completed May 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants