Jitsi doesn't work with more than 2 participants => 3, 4

Hello,

When two participants access the conference, it works. Chat, video/sound.

When a third participant arrives, all cameras shut down, the sound also.
But the chat still works.

I see this message

Nov 16, 2018 9:50:11 PM net.java.sip.communicator.util.Logger error
SEVERE: An uncaught exception occurred in thread=Thread[org.jitsi.videobridge.SctpConnection-pool-9-thread-28,5,main] and message was: Could not initialize class org.jitsi.sctp4j.Sctp
java.lang.NoClassDefFoundError: Could not initialize class org.jitsi.sctp4j.Sctp
at org.jitsi.videobridge.SctpConnection$1.run(SctpConnection.java:472)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

On another message I saw
…jnsctp.so is compiled against a version of libc that your debian version doesn’t have.
http://lists.jitsi.org/pipermail/users/2015-September/010061.html

Could that be the problem ? I use Openbsd.

They say

Try setting openSctp:false in config.js which might solve the problem, but active speaker switches won’t work

But what is active speaker and where is that option because I don’t see it in config.js

In jvb logs I see

Nov 16, 2018 9:50:06 PM org.jitsi.util.LoggerImpl log
WARNING: SCTP connection with 1c5fd89a not ready yet.
Nov 16, 2018 9:50:06 PM org.jitsi.util.LoggerImpl log
WARNING: No available transport channel, can’t send a message
Nov 16, 2018 9:50:10 PM org.ice4j.util.Logger log
INFO: Gathering candidates for component stream.RTP. Local ufrag 4nnrq1csf4jhrq

Nov 16, 2018 9:50:11 PM org.ice4j.util.Logger log
INFO: CheckList of stream stream is COMPLETED

Nov 16, 2018 9:50:11 PM net.java.sip.communicator.util.Logger error
SEVERE: An uncaught exception occurred in thread=Thread[org.jitsi.videobridge.SctpConnection-pool-9-thread-28,5,main] and message was: Could not initialize class org.jitsi.sctp4j.Sctp
java.lang.NoClassDefFoundError: Could not initialize class org.jitsi.sctp4j.Sctp
at org.jitsi.videobridge.SctpConnection$1.run(SctpConnection.java:472)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

In jifoco logs I see

Jicofo 2018-11-16 21:50:10.918 INFO: [37] org.jitsi.jicofo.JitsiMeetConferenceImpl.log() Member expertinet@conference.jitsi.mydomain.org/868503bb joined.
Jicofo 2018-11-16 21:50:10.919 INFO: [37] org.jitsi.jicofo.JitsiMeetConferenceImpl.log() Added participant jid= expertinet@conference.jitsi.mydomain.org/868503bb, bridge=jitsi-videobridge.jitsi.mydomain.org
Jicofo 2018-11-16 21:50:10.919 INFO: [37] org.jitsi.jicofo.JitsiMeetConferenceImpl.log() Region info, conference=ff5b0b octo_enabled= false: [[null, null, null, null]]
Jicofo 2018-11-16 21:50:10.920 INFO: [84] org.jitsi.jicofo.AbstractChannelAllocator.log() Using jitsi-videobridge.jitsi.mydomain.org to allocate channels for: [Participant endpointId=868503bb
Jicofo 2018-11-16 21:50:10.925 INFO: [41] org.jitsi.jicofo.Bridge.log() Adding 5 video streams on jitsi-videobridge.jitsi.mydomain.org video streams: 0 diff: 9 (estimated: 9)
Jicofo 2018-11-16 21:50:10.972 INFO: [84] org.jitsi.jicofo.LipSyncHack.log() Not merging A/V streams from expertinet@conference.jitsi.mydomain.org/1c5fd89a to expertinet@conference.jitsi.mydomain.org/868503bb
Jicofo 2018-11-16 21:50:10.972 INFO: [84] org.jitsi.jicofo.LipSyncHack.log() Not merging A/V streams from expertinet@conference.jitsi.mydomain.org/f7964f7f to expertinet@conference.jitsi.mydomain.org/868503bb
Jicofo 2018-11-16 21:50:11.740 INFO: [37] org.jitsi.jicofo.JitsiMeetConferenceImpl.log() Received session-accept from 868503bb with accepted sources:Sources{ audio: [ssrc=844440975 ] }@830241899
Jicofo 2018-11-16 21:50:11.741 INFO: [37] org.jitsi.protocol.xmpp.AbstractOperationSetJingle.sendAddSourceIQ().476 Notify add SSRC expertinet@conference.jitsi.mydomain.org/f7964f7f SID: 6c78k4musorii Sources{ video: audio: [ssrc=844440975 ] }@1507728359 source_Groups{ }@752160907
Jicofo 2018-11-16 21:50:11.743 INFO: [37] org.jitsi.protocol.xmpp.AbstractOperationSetJingle.sendAddSourceIQ().476 Notify add SSRC expertinet@conference.jitsi.mydomain.org/1c5fd89a SID: 35bk7qp213orh Sources{ video: audio: [ssrc=844440975 ] }@1507728359 source_Groups{ }@752160907

Have you checked the ports, firewall or forwarding maybe? https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md#advanced-configuration

Yes, from my PC at home I tried to telnet the ports

A capture on the jitsi server

tcpdump -n -i vmx0 ‘port 4443 or port 10000’
tcpdump: listening on vmx0, link-type EN10MB
14:39:50.920392 IPHOME.61653 > IPJITSI_PRIVATE.4443: S 321753147:321753147(0) win 64240 <mss 1440,nop,wscale 8,nop,nop,sackOK>
14:39:50.920508 IPJITSI_PRIVATE.4443 > IPHOME.61653: R 0:0(0) ack 321753148 win 0 (DF)
14:40:09.509183 IPHOME.61658 > IPJITSI_PRIVATE.10000: S 3409574584:3409574584(0) win 64240 <mss 1440,nop,wscale 8,nop,nop,sackOK>
14:40:09.509226 IPJITSI_PRIVATE.10000 > IPHOME.61658: R 0:0(0) ack 3409574585 win 0 (DF)

I opened 10000/tcp and 10000/udp

But on port 443, what URL is it going to request ?
I have a reverse proxy in front. port 443 is natted to the reverse proxy then the reverse proxy redirects to the Jitsi machine if the vhost is queried.

Could you reexplain what would be the difference between a conference with 2 and a conference with 3 in terms of flows ?

I have checked with tcpdump, I don’t have flows on port 4443, I have some on port 443 either to xmpp or to jitsi-meet and I have udp flows on port 10000.

With 2 you connect p2p, with 3 you use jvb, is your jvb behind nat? If so have you configured its public and private addresses? It is not just forwarding in that case, jvb needs to known its public address sobit can announce it for a way to connect to it.

Thank you for your answer,

Yes I have

cat /root/.sip-communicator/sip-communicator.properties
org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
org.jitsi.videobridge.AUTHORIZED_SOURCE_REGEXP=focus@auth.jitsi.mydomain.org/.*
org.jitsi.videobridge.NAT_HARVESTER_LOCAL_ADDRESS=IPPRIVJITSI
org.jitsi.videobridge.NAT_HARVESTER_PUBLIC_ADDRESS=IPPUBJITSI

I start jicofo and jvb as a root user right now

When I start it I see this in the logs so it’s confirmed>

Nov 17, 2018 3:39:37 PM org.jitsi.util.LoggerImpl log
INFO: org.jitsi.videobridge.AUTHORIZED_SOURCE_REGEXP=focus@auth.jitsi.mydomain.org/.*
Nov 17, 2018 3:39:37 PM org.jitsi.util.LoggerImpl log
INFO: org.jitsi.videobridge.NAT_HARVESTER_PUBLIC_ADDRESS=IPPUBJITSI
Nov 17, 2018 3:39:37 PM org.jitsi.util.LoggerImpl log
INFO: org.jitsi.videobridge.NAT_HARVESTER_LOCAL_ADDRESS=IPPRIVJITSI
Nov 17, 2018 3:39:37 PM org.jitsi.util.LoggerImpl log
INFO: org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
Nov 17, 2018 3:39:37 PM org.jitsi.util.LoggerImpl log
INFO: org.ice4j.ipv6.DISABLED=true

It is a long time ago, but did you find a solution ? I am in the same place

@fvv195 Hi

Do the same test with 2 participants from your mobile removing the peer to peer and you will see you will have the same problem.
In jitsi-meet-cfg/jvb/sip-communicator.properties:
put this with a space after the = and without <> :
org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS= my_vps_local_ip_addr
org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS= my_public_ip_addr

Dear Jerome,
Thank you for your quick and very helpfull reply. This seems to be the trick !!!

BTW, do you happen to know a solution for the secure domain issue as well. I can get this solved via the instructions provided. I have either no inlog or an inlog for every participants and I like to have the case where the meeting owner needs to have an inlog/password and the participants not
Thanks again
Frans

You need to just create the anonymous domain in prosody and uncomment it in config.js, but this is already explained in the docs.

hi is this solution for jvb2 instance?

I tried it on my jvb2 but it didn’t work… 3rd+ participant drops video and audio completely.

yes it is

Hi, I just installed jitsi. So it is the recent version. And I am a newbee to this :wink:

It is not a containerised installation, but in combination with matrix synapse.
I am facing the same problem. Two participants work great, but more of them result in shutting down audio and video.
As far as I understand this thread, the problem may be the jvb2, but I just followed the good installation guide provided by jitsi.
The server in configured that you need an account for opening a room and can then set a password for other participants to join.
For test purposes I configured the server so that no passwords or accounts are needed, but it has the same result.

Since it is not behind NAT
org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS= my_vps_local_ip_addr
org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS= my_public_ip_addr
should have no effect.

The only thing I could find in the jvb.log is something like this:
ConnectivityCheckClient$PaceMaker.run#919: Pair failed: 185.194.143.20:10000/udp/host -> 192.168.2.102:43683/udp/host

Would be lucky if someone could help me.

Here: Not working for more than 2 people in the room

@albercuba: Thanx for advice. The problem seems to be the existing installation of matrix. I switched to a new host and now It’s working.

Hello,
Thank you for your answers in this topic