Hi. Not sure what “reuse the WebRTC FEC source code” means but we want to get rid of libwebrtc dependency. We prefer to implement all RTP and RTCP related stuff from scratch to have full control over it.
Regarding such a “40% of packet loss” it looks to me too hardcoded. I don’t really know how it should be though. Also, AFAIK we should implement FLEX FEC rather than other older FEC mechanisms. But, at the same time, I’m not fully aware of how FLEX FEC support is in current libwebrtc (in client/browser side). AFAIR there were limitations when simulcast or SVC are used.
In the other side, I’m not sure if mediasoup should be a FEC terminator (it receives FEC packets from clients and constructs RTP packets with them, and also constructs its own FEC packets for consumers supporting it) or whether mediasoup should just relay FEC packets received from senders supporting it to consumers that also support it. I think we need much more planning and discussion about this.