VLprojects / webrtc-issue-detector

Diagnostic tool and troubleshooter for WebRTC applications with Mean Opinion Score (MOS) calculator
https://github.com/VLprojects/webrtc-issue-detector/
MIT License
87 stars 16 forks source link

How to distinguish MOS in group call? #20

Closed IlgamGabdullin closed 5 months ago

IlgamGabdullin commented 5 months ago

Hi! How can I distinguish inbound MOS if I have several participants in videocall?

I want to connect partner id's and inbound mos value

IlgamGabdullin commented 5 months ago

I'd want to make a pr with the needed changes which lets us to distinguish several inbound stats by some id.

As I saw in the code, CompositeStatsParser.addPeerConnection has 'id' in params (interface AddConnectionPayload), but it never gets back to the client.

The possible solution I see is to change params of method handleNewPeerConnection(pc) to handleNewPeerConnection(pc, id?), then pass the id to addPeerConnection({pc, id}), and emit the id back to the client in callbacks like onIssues and onNetworkScoresUpdated

If you have any concerns on why the solution above might not work, lets discuss

evgmel commented 5 months ago

Hi @IlgamGabdullin, thank your for reaching out. If I got your question right, you can make the match by ssrc that is returned with issues. Your suggested changes look useful, but it's better if you could create a PR so that our community could look through the suggested changes. Please, try not to make breaking changes in your proposal PR

IlgamGabdullin commented 5 months ago

make the match by ssrc that is returned with issues.

Thank you for your answer! Seems like issues could be matched as you said, but mos could not (does not have ssrc field in NetworkScores).

I will come back with pr

desher commented 5 months ago

@IlgamGabdullin thank you for your contribution! Look forward to further cooperation