Expand my Community achievements bar.

SOLVED

Limitation of total 3 p2p streams - precisions?

Avatar

Level 2

Hello,

I'd like to be sure to know precisly how is count the limitation of 3 p2p streams.

Does the limitation of 3 p2p streams apply only for one user, or for the whole room?

For example in room 1, i have

user 1 publish webcam stream to user 2 and user 2 publish webcam stream to user 1

user 3 publish webcam stream to user 4 and user 4 publish webcam stream to user 3

So i have 4 streams published in my room, but not for one user.

Do you consider that it is out of the limitation of 3 you talk about?

In the same idea, do you count only published streams or also received streams?

For example if i have in room 1:

user 1 publish webcam stream to user 2

user 1 publish sound stream to user 2

user received webcam and sound streams from user 2

So i have 4 streams for user 1, but only 2 published streams.

Do you consider that it is out of the limitation of 3 you talk about?

Is there any documentation available to get those detailed informations whithout disturbing you in forums?

Thanks

Seb

1 Accepted Solution

Avatar

Correct answer by
Former Community Member

Hi,

Yes you are right . So, for private streams also it will take into account as we do not consider p2p private streams for calculation.

Yes, multicast is better option for having large number of p2p streams because even if you randomly increase the value of maxp2pstreampublish, still it won't guarantee to have that many p2p streams in one mesh without multicast. That’s why put that limit in first place for player 10 without multicast. Also, till now the player 10.1 source wasn't made available but in the coming update in next few days we will have be also giving out 10.1 source that will help you for any debugging with multicast.

Lastly, You are right, I will either put up the details in the doc or a blog post in a future release.

Thanks

Regards

Hironmay Basu

View solution in original post

4 Replies

Avatar

Former Community Member

Hi,

The way we calculate is number of users you are sending your stream to( excluding yourself) multiplied by number of stream any user is publishing. If this is more than 3 for any one of the user, then we don't allow p2p in player 10, though this parameter is configurable and you can increase it by assigning value to maxP2PStreamPublish which is a public property exposed from StreamManager.

Another point is you can user lot of p2p streams through multicast using our 10.1 swc and we don't enforce this 3 limit there.

Now, taking a sample case

Lets say there are two users 1 and 2

For e.g.

Case 1 : If user 1 publish webcam stream to user 2 and user 2 publish webcam stream to user 1 , then for either of the user , the value is 1( number of user excluding him) * 1( as he is just publishing only one webcam stream)

We don't take into account private streams now. So, the users will be all accounted for. Therefore, if you want more streams, I would suggest use either multicast 10.1 or increase the maxp2pstreampublish value.

Hope this helps

Thanks

Hironmay Basu

Avatar

Level 2

Hello,

Thanks for the answer.

But your example is to simple to make it crystal clear.

I mean:

if in one room, i have two private discussions:

User 1 is publishing webcam and audio to User 2.

User 2 is publishing webcam and audio to User 1.

I count: 1*2 = 2. Ok?

But if in same time in same room i also have

User 3 is publishing webcam and audio to User 4.

User 4 is publishing webcam and audio to User 3.

So when you say "We don't take into account private streams now" it means that i must count:
3*2=6 > 3 ?
So even if User 1 is publishing only to User 2, the fact that User 3 and 4 are in same room, make it out of limits, am i right?
So multicast and player 10.1 is better solution than only changing maxP2PStreamPublish, because i don't know in advance the number of simultanous private chats?
Thanks.
It could be explained with such details in LCCS documentation! cause it's very important to understand limits.
Regards,
Seb

Avatar

Correct answer by
Former Community Member

Hi,

Yes you are right . So, for private streams also it will take into account as we do not consider p2p private streams for calculation.

Yes, multicast is better option for having large number of p2p streams because even if you randomly increase the value of maxp2pstreampublish, still it won't guarantee to have that many p2p streams in one mesh without multicast. That’s why put that limit in first place for player 10 without multicast. Also, till now the player 10.1 source wasn't made available but in the coming update in next few days we will have be also giving out 10.1 source that will help you for any debugging with multicast.

Lastly, You are right, I will either put up the details in the doc or a blog post in a future release.

Thanks

Regards

Hironmay Basu

Avatar

Level 2

Ok thanks,

Its all clear now.

Seb

The following has evaluated to null or missing: ==> liqladmin("SELECT id, value FROM metrics WHERE id = 'net_accepted_solutions' and user.id = '${acceptedAnswer.author.id}'").data.items [in template "analytics-container" at line 83, column 41] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign answerAuthorNetSolutions = li... [in template "analytics-container" at line 83, column 5] ----