- 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.
your intuition was right… the producer transport does not get connected [on client side]. it fails.
here is my handlers of on produce and on connect… what could be the possible reason for this
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).
Thanks a lot. that worked… for me… i checked if the connection is getting connected or not with :
Then i changed listenIps to listenInfos and it worked…it got connected …
And the voice tranfer was successful …great it worked !!
yes… it gets the producer id from the server…