No video or audio with others on Safari

Hi,

We are using lib-jitsi-meet with our own servers and since recently we are experiencing a strange issue: while Chrome and Firefox clients can communicate without any problem, Safari has local video/audio only and is not able to communicate with others. To be more clear:

  • all clients, including Safari, are connected to the conference
  • all, including Safari, appear to others as participants
  • all see all the audio and video tracks
  • but those coming from Safari and those received by Safari are blank

In the Safari console, I see the following:

In the videobridge logs, I see some warnings for a Safari user:

JVB 2021-05-23 12:30:44.921 INFO: [2919] [confId=b8c900aa441f96d8 epId=8f20893c local_ufrag=bte4u1f6cj9j5p gid=12788 conf_name=ghi@conference.ourserver ufrag=bte4u1f6cj9j5p] Agent.gatherCandidates#622: Gathering candidates for component stream-8f20893c.RTP.
JVB 2021-05-23 12:30:44.925 INFO: [2919] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 conf_name=ghi@conference.ourserver] Endpoint.setTransportInfo#662: Ignoring empty DtlsFingerprint extension: <transport xmlns='urn:xmpp:jingle:transports:ice-udp:1'><fingerprint xmlns='urn:xmpp:jingle:apps:dtls:0' required='false'/></transport>
JVB 2021-05-23 12:30:45.714 INFO: [2919] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] DtlsTransport.setSetupAttribute#120: The remote side is acting as DTLS client, we'll act as server
JVB 2021-05-23 12:30:45.714 INFO: [2919] [confId=b8c900aa441f96d8 epId=8f20893c local_ufrag=bte4u1f6cj9j5p gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] IceTransport.startConnectivityEstablishment#184: Starting the Agent without remote candidates.
JVB 2021-05-23 12:30:45.714 INFO: [2919] [confId=b8c900aa441f96d8 gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver ufrag=bte4u1f6cj9j5p epId=8f20893c local_ufrag=bte4u1f6cj9j5p] Agent.startConnectivityEstablishment#713: Start ICE connectivity establishment.
JVB 2021-05-23 12:30:45.714 INFO: [2919] [confId=b8c900aa441f96d8 gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver ufrag=bte4u1f6cj9j5p epId=8f20893c local_ufrag=bte4u1f6cj9j5p] Agent.initCheckLists#949: Init checklist for stream stream-8f20893c
JVB 2021-05-23 12:30:45.714 INFO: [2919] [confId=b8c900aa441f96d8 gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver ufrag=bte4u1f6cj9j5p epId=8f20893c local_ufrag=bte4u1f6cj9j5p] Agent.setState#923: ICE state changed from Waiting to Running.
JVB 2021-05-23 12:30:45.714 INFO: [2919] [confId=b8c900aa441f96d8 epId=8f20893c local_ufrag=bte4u1f6cj9j5p gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] IceTransport.iceStateChanged#323: ICE state changed old=Waiting new=Running
JVB 2021-05-23 12:30:45.714 INFO: [2919] [confId=b8c900aa441f96d8 gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver ufrag=bte4u1f6cj9j5p epId=8f20893c local_ufrag=bte4u1f6cj9j5p] ConnectivityCheckClient.startChecks#142: Start connectivity checks.
JVB 2021-05-23 12:33:38.901 INFO: [27] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] Endpoint.shouldExpire#856: Endpoint's ICE connection has neither failed nor connected after PT2M53.980874S expiring
JVB 2021-05-23 12:33:38.901 INFO: [27] VideobridgeExpireThread.expire#157: Expiring endpoint 8f20893c
JVB 2021-05-23 12:33:38.902 INFO: [2927] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] AbstractEndpoint.expire#271: Expiring.
JVB 2021-05-23 12:33:38.902 INFO: [2927] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] Endpoint.expire#996: Spent 0 seconds oversending
JVB 2021-05-23 12:33:38.902 INFO: [2927] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] Transceiver.teardown#324: Tearing down
JVB 2021-05-23 12:33:38.902 INFO: [2927] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] RtpReceiverImpl.tearDown#339: Tearing down
JVB 2021-05-23 12:33:38.902 INFO: [2927] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] RtpSenderImpl.tearDown#311: Tearing down
JVB 2021-05-23 12:33:38.904 INFO: [2927] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] DtlsTransport.stop#186: Stopping
JVB 2021-05-23 12:33:38.904 INFO: [2927] [confId=b8c900aa441f96d8 epId=8f20893c local_ufrag=bte4u1f6cj9j5p gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] IceTransport.stop#237: Stopping
JVB 2021-05-23 12:33:38.904 INFO: [2927] [confId=b8c900aa441f96d8 gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver ufrag=bte4u1f6cj9j5p epId=8f20893c local_ufrag=bte4u1f6cj9j5p] Agent.setState#923: ICE state changed from Running to Terminated.
JVB 2021-05-23 12:33:38.904 INFO: [2927] [confId=b8c900aa441f96d8 epId=8f20893c local_ufrag=bte4u1f6cj9j5p gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] IceTransport.iceStateChanged#323: ICE state changed old=Running new=Terminated
JVB 2021-05-23 12:33:38.904 INFO: [2927] [confId=b8c900aa441f96d8 gid=12788 stats_id=Quinton-Mss componentId=1 conf_name=ghi@conference.ourserver ufrag=bte4u1f6cj9j5p name=stream-8f20893c epId=8f20893c local_ufrag=bte4u1f6cj9j5p] MergingDatagramSocket.close#142: Closing.
JVB 2021-05-23 12:33:38.904 INFO: [2927] [confId=b8c900aa441f96d8 epId=8f20893c gid=12788 stats_id=Quinton-Mss conf_name=ghi@conference.ourserver] Endpoint.expire#1014: Expired.

...

JVB 2021-05-23 12:33:39.979 WARNING: [37] ColibriWebSocketServlet.createWebSocket#144: Received request for a nonexistent endpoint: 8f20893c(conference b8c900aa441f96d8)
JVB 2021-05-23 12:33:41.982 WARNING: [39] ColibriWebSocketServlet.createWebSocket#144: Received request for a nonexistent endpoint: 8f20893c(conference b8c900aa441f96d8)

...

JVB 2021-05-23 12:43:41.262 WARNING: [2946] [confId=b8c900aa441f96d8 epId=ecfaaee6 gid=12788 stats_id=Leonor-3mz conf_name=ghi@conference.ourserver] EndpointMessageTransport.endpointMessage#534: Unable to find endpoint to send EndpointMessage to: 8f20893c
JVB 2021-05-23 12:43:41.977 WARNING: [33] ColibriWebSocketServlet.createWebSocket#144: Received request for a nonexistent endpoint: 8f20893c(conference b8c900aa441f96d8)

Versions are:

  • Safari 14.1
  • Chrome and Firefox latest
  • lib-jitsi-meet tag 5870
  • jitsi-meet on the server 2.0.5870-1, videobridge2 2.1-492-g5edaf7dd-1, jicofo 1.0-747-1, jitsi-meet-prosody 1.0.4985-1

It’s not clear when it started but it was working before, maybe on previous versions.

I understand there is an ICE connectivity issue, but I don’t know why.

Would anyone have any idea what could cause this?

Do you repro same scenario on meet.jit.si?

Hi @damencho, nope, the official server works well with the same browsers.

So it maybe some implementation problem on your UI… Or a config. Anything different like codecs compared to meet.jit.si config?

@damencho I really don’t know, is there maybe a way to get more logs or detailed messages on lib-jitsi-meet or the videobridge?

You can get the logs from your app and compare it with one from meet.jit.si