Bad video quality - never going up from 180p

Hi :slight_smile:

We have our own jitsi instance (docker) and currently we are having problems with the resolution. My own video stream is at 720p, but the video stream of other participants stays at 180p - no matter what we do. Even if you show the speaker as fullscreen, it stays at 180p. (also if you share the desktop, the resolution stays at 180p).
It can’t be an upload problem on the client side, since I have 50mbit upload (other participants as well) - and on the hosted jitsi instance it works. I tried every configuration that sounds like it could help, but so far no luck. (like config.enableLayerSuspension = true;)
I noticed, that somehow the speaker recognition does not work - the currently active speaker is not automatically shown. And the speaker stats are not working either - maybe this could be related?

Thanks for your help!

Yes, all those observations point to a websocket problem. Is your JVB hosted on the same server as JMS?

I use a kubernetes setup - and with version 5765 it was working as intended.
I checked a little bit more and noticed warnings in the js console “Bridge Channel send: no opened channel”. I googled it, but there is no firewall or anything else. The jvbs are accessible over udp 30300.
Maybe this is related too?

Oh yes - you are right. There is some kind of websocket problem.
All websocket requests return a 500.

The websocket config in nginx is:

# colibri (JVB) websockets
location ~ ^/colibri-ws/([a-zA-Z0-9-\.]+)/(.*) {
    proxy_pass http://$1:9090/colibri-ws/$1/$2$is_args$args;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    tcp_nodelay on;

and some logs are:

"GET /colibri-ws//f12a72e184a6ecdd/08cb2cc0?pwd=d8kadgvac8f0er952ev0jpa86 HTTP/1.1" 500
"GET /colibri-ws//29c160c16068e033/859ebd2a?pwd=1r7katofhg19n864gq98gbtji9 HTTP/1.1" 500

Any ideas to why this is not working? It looks like something is missing in the url - the $1 part seems to be empty - and I guess that was an IP.

no, that’s an identifier for jvb.

  websockets {
      enabled = true
      // server-id=jvb1
      domain = "meet.yourdomain.yoururl:443"
      tls = true

if the identifier is missing, like the commented out ‘jvb1’ here, it’s at ‘default-id’

Thanks for your help!
That was the correct hint - JVB_WS_SERVER_ID is not getting filled correctly in a docker/kubernetes setup. I’ve set JVB_WS_SERVER_ID to the hostname of the jvbs and now it’s working again :slight_smile: