[jitsi-users] The number of upstream video streams to JVB


#1

Hi,

I set up a local jitsi-meet and play around it. With 3 party video
conference, I found something that surprised me :slight_smile:

From the wireshark trace captured one PC, Google chrome sends two upstream

video streams to JVB with two different SSRCs. Based on my understanding of
SFU, each party only needs to send ONE upstream video stream to SFU to save
bandwidth.

Can anyone explain this?

Thanks,

/Kaiduan


#2

Hi Kaiduan,

The senders send N streams because of simulcast. The server decides which one of the N streams to forward to each receiver based on the video layout at the receiver and, in the future, based on the available downlink bandwidth of the receiver. This has the negative effect of wasting some bandwidth at the sender, but greatly optimizes bandwidth and CPU usage for the server and the receivers.

I hope this helps.

Best,
George

路路路

On Feb 3, 2017, at 10:02 AM, Kaiduan Xie <kaiduanx@gmail.com> wrote:

Hi,

I set up a local jitsi-meet and play around it. With 3 party video conference, I found something that surprised me :slight_smile:

From the wireshark trace captured one PC, Google chrome sends two upstream video streams to JVB with two different SSRCs. Based on my understanding of SFU, each party only needs to send ONE upstream video stream to SFU to save bandwidth.

Can anyone explain this?

Thanks,

/Kaiduan

_______________________________________________
users mailing list
users@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/users


#3

George,

Thank you very much for the detailed explanation. How JVB knows the video
layout at the receiver side?

Is there a way to disable simulcast via configuration?

Also where is the code in JVB that handles the selective forwarding?

Thanks,

/Kaiduan

路路路

On Fri, Feb 3, 2017 at 11:39 AM, George Politis <gp@jitsi.org> wrote:

Hi Kaiduan,

The senders send N streams because of simulcast. The server decides which
one of the N streams to forward to each receiver based on the video layout
at the receiver and, in the future, based on the available downlink
bandwidth of the receiver. This has the negative effect of wasting some
bandwidth at the sender, but greatly optimizes bandwidth and CPU usage for
the server and the receivers.

I hope this helps.

Best,
George

> On Feb 3, 2017, at 10:02 AM, Kaiduan Xie <kaiduanx@gmail.com> wrote:
>
> Hi,
>
> I set up a local jitsi-meet and play around it. With 3 party video
conference, I found something that surprised me :slight_smile:
>
> From the wireshark trace captured one PC, Google chrome sends two
upstream video streams to JVB with two different SSRCs. Based on my
understanding of SFU, each party only needs to send ONE upstream video
stream to SFU to save bandwidth.
>
> Can anyone explain this?
>
> Thanks,
>
> /Kaiduan
>
>
>
>
> _______________________________________________
> users mailing list
> users@jitsi.org
> Unsubscribe instructions and other list options:
> http://lists.jitsi.org/mailman/listinfo/users

_______________________________________________
users mailing list
users@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/users


#4

Hi Kaiduan,

The clients send layout information to the bridge via data channel messages (e.g. on stage participant). In order to disable simulcast you can set disableSimulcast: true in the config.js. You can find the code that decides what to send to which endpoint in the BitrateController class in the JVB.

Hope this helps.

Best,
George

路路路

On Feb 3, 2017, at 12:10 PM, Kaiduan Xie <kaiduanx@gmail.com> wrote:

George,

Thank you very much for the detailed explanation. How JVB knows the video layout at the receiver side?

Is there a way to disable simulcast via configuration?

Also where is the code in JVB that handles the selective forwarding?

Thanks,

/Kaiduan

On Fri, Feb 3, 2017 at 11:39 AM, George Politis <gp@jitsi.org <mailto:gp@jitsi.org>> wrote:
Hi Kaiduan,

The senders send N streams because of simulcast. The server decides which one of the N streams to forward to each receiver based on the video layout at the receiver and, in the future, based on the available downlink bandwidth of the receiver. This has the negative effect of wasting some bandwidth at the sender, but greatly optimizes bandwidth and CPU usage for the server and the receivers.

I hope this helps.

Best,
George

> On Feb 3, 2017, at 10:02 AM, Kaiduan Xie <kaiduanx@gmail.com <mailto:kaiduanx@gmail.com>> wrote:
>
> Hi,
>
> I set up a local jitsi-meet and play around it. With 3 party video conference, I found something that surprised me :slight_smile:
>
> From the wireshark trace captured one PC, Google chrome sends two upstream video streams to JVB with two different SSRCs. Based on my understanding of SFU, each party only needs to send ONE upstream video stream to SFU to save bandwidth.
>
> Can anyone explain this?
>
> Thanks,
>
> /Kaiduan
>
>
>
>
> _______________________________________________
> users mailing list
> users@jitsi.org <mailto:users@jitsi.org>
> Unsubscribe instructions and other list options:
> http://lists.jitsi.org/mailman/listinfo/users

_______________________________________________
users mailing list
users@jitsi.org <mailto:users@jitsi.org>
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/users
_______________________________________________
users mailing list
users@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/users