- I have a single WebRTC Transport object in my server, and as per the docs it can handle both consuming and producing on server side.
- On my client side I have a producer transport, and a consumer transport.…both of them generate dtls params, {role, dtlsFingerprints} “on connect” which equates to role:client, dtlsFingerprints: algo:… , value:… ;
- Both these dtls params are different.
- In my server code i have a transport.connect method that takes in these dtls params after being signalled from client side. (currently i am not signalling the client consumer dtls params to the server transport.connect() .
- How can the same transport object be configured to have multiple [sender and reciever] dtls params?
[problem: i am receiving a media track in my client consumer but it is not playing… i guess it is due to the encryption thing ] need some insights…
You have to create 2 transport in server side, one for each client side transport.
I did. Still no luck.
i have created two transports on the server side and on the client side. And on connect is done in client side for both transport and consumer in which i am signaling dtlsparams to server.
in transport.produce where i need to send the audio track and codec and encodings (from the client [browser] ) , I am passing only track… I have no idea what codec or encoding to pass here.
In the mediasoup server while creating the router I am passing the following as mediaCodecs :
[
{
kind: ‘audio’,
mimeType: ‘audio/opus’,
clockRate: 48000,
channels: 2,
},
{
kind: ‘video’,
mimeType: ‘video/VP8’,
clockRate: 90000,
parameters: {
‘x-google-start-bitrate’: 1000,
},
},
]
Verify that the ICE and DTLS states of the transports are connected. There is API for that in server and client side.
I wonder what does this.voiceComService.getProducerID().subscribe(...) mean?
Judging by its name, getProducerID() looks like a function returning none other than producer’s id (a string).
yes… it gets the producer id from the server…

