- Joined
- Jan 4, 2019
- Messages
- 14,530
- Reaction score
- 3,701
The Webclient uses WebRTC standard, you cannot control this from the 3CX client codecs list.
The WebRTC standard will send all the codecs it supports, with Opus as the highest priority. You can see this in Chrome when looking at the WebRTC internals menu.
Outgoing Calls: The PBX accepts the Opus offer which comes first as you see above, and then transcodes if the next leg does not support Opus (ie a Yealink deskphone). If the destination is another 3CX client with Opus in the provisioning list, then there no transcoding of course.
Incoming Calls: If we are talking about a call from your trunk for example, that came in as PCMU, then it will follow the same logic. The PBX will use its own priority list which you can control, so if it happens to offer PCMU first then the Webclient will accept it and again no transcoding will take place.
This is why I suggested to keep the same codec as your provider in the highest priority throughout, so that you will minimize any chances of transcoding if your goal is to maintain the original audio quality. There are no plans on changing this behavior for now, but you can visit the Ideas forum and upvote this as other members have already made the suggestion.
The WebRTC standard will send all the codecs it supports, with Opus as the highest priority. You can see this in Chrome when looking at the WebRTC internals menu.
Code:
m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 110 112 113 126
a=rtpmap:111 opus/48000/2
a=rtcp-fb:111 transport-cc
a=fmtp:111 minptime=10;useinbandfec=1
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
Outgoing Calls: The PBX accepts the Opus offer which comes first as you see above, and then transcodes if the next leg does not support Opus (ie a Yealink deskphone). If the destination is another 3CX client with Opus in the provisioning list, then there no transcoding of course.
Incoming Calls: If we are talking about a call from your trunk for example, that came in as PCMU, then it will follow the same logic. The PBX will use its own priority list which you can control, so if it happens to offer PCMU first then the Webclient will accept it and again no transcoding will take place.
This is why I suggested to keep the same codec as your provider in the highest priority throughout, so that you will minimize any chances of transcoding if your goal is to maintain the original audio quality. There are no plans on changing this behavior for now, but you can visit the Ideas forum and upvote this as other members have already made the suggestion.