RichardDCG Posted May 5, 2022 Report Share Posted May 5, 2022 Our default codec is PCMA but the app is defaulting to PCMU and we continually get one way or no audio. I cant see anywhere to change it on the app, I have set the extensions to be PCMA preferred, but this is ignored by the app. Quote Link to comment Share on other sites More sharing options...
Vodia PBX Posted May 5, 2022 Report Share Posted May 5, 2022 This used to be a problem on older app versions, but this should be solved in the newer ones (at least three months ago). Transcoding between PCMU and PCMA is not a big deal, it is lossless and it does not take much CPU. Quote Link to comment Share on other sites More sharing options...
RichardDCG Posted May 5, 2022 Author Report Share Posted May 5, 2022 5 hours ago, Vodia PBX said: This used to be a problem on older app versions, but this should be solved in the newer ones (at least three months ago). Transcoding between PCMU and PCMA is not a big deal, it is lossless and it does not take much CPU. It appears that it may be a big deal in that we get no audio. It may well be a provider issue, but we are hesitant to answer calls on our mobile app for this reason. The app is the latest version - 1.17(55). Our extension and SIP trunks are all set to be PCMA first but the mobile app insists on being PCMU.... and no way to change it. All we need is the ability for the app to either take the extension settings or be able to manually set it. Preference obviously for it to be automatic from the PBX. Quote Link to comment Share on other sites More sharing options...
Vodia PBX Posted May 9, 2022 Report Share Posted May 9, 2022 In such cases I would first all all try to isolate problems. This can be done simply by calling into a mailbox from the app. In most cases the fact that you can hear voice (outbound RTP from PBX) and navigate with DTMF (inbound RTP) means that the app is probably okay. If you want you can record something then listen to it from the app (e.g. record own name or leave message in another mailbox then listen to it). If you have another extension, e.g. a VoIP phone that you know works fine, you can also call that one and see if you have two way audio. If yes, it is typically a trunk problem. If the app is the problem, I would turn PCAP recording on and look at it. The IP addresses in the SDP of the app are irrelevant (the PBX assumes that the phone is behind some kind of NAT anyway), but the addresses in the SDP coming from the PBX must be reachable from the app. If the address is not okay, e.g. because the PBX is on a private IP address, you can try to put public into the IP routing list (/reg_sipsettings.htm) to make the PBX present its public IP address. If you have the PBX in the LAN and the app also in the LAN things might get tricky because of the HTTPS requirement for the app. Of course if there is a firewall in the path it needs to be set up properly. For example, if your RTP port range on the PBX is not the same like on your firewall, that can lead to very frustrating random problems, depending on which RTP ports were chosen. IMHO it's important to understand what went wrong, and obviously to fix it, so that all calls work properly. Quote Link to comment Share on other sites More sharing options...
RichardDCG Posted May 9, 2022 Author Report Share Posted May 9, 2022 If I make a call from the app it negotiates PCMA and is fine, if I call to the app it negotiates PCMU and is regularly no audio. Is there a reason why the app does not use the preferences set in the PBX trunk and extension? Quote Link to comment Share on other sites More sharing options...
Vodia PBX Posted May 9, 2022 Report Share Posted May 9, 2022 Generally the PBX tries to avoid transcoding. It's mostly for non-G711 codecs that can stress the CPU significantly. A workaround is to force one codec. This is typically useful on the SIP trunk (which you could try), but you can also force a codec on the APP by setting the extension codec preference to that one specific codec. We had many cases where the trunk would negotiate asymmetric codecs but would not be able to actually handle it. The iOS app 1.17 should be able to handle it tough. Quote Link to comment Share on other sites More sharing options...
RichardDCG Posted May 10, 2022 Author Report Share Posted May 10, 2022 ext to ext internal. ext. 405 is an iphone over 4G. Below is call from 405 to 406 match PCMA 405 Vodia-WebRTC/68.0.12 PCMA/8000 tls:49.x.x.x:6286 406 Grandstream DP752 1.0.17.4 PCMA/8000 udp:192.y.y.y:47391 This is call from 406 to 405 mismatch PCMU/PCMA 405 VodiaPhone/1.17 iOS/15.4.1 PCMU/8000 udp:49.x.x.x:12528 406 Grandstream DP752 1.0.17.4 PCMA/8000 tcp:192.y.y.y:36844 Our default is PCMA first priority, inbound answered by the iphone app is always PCMU. Does it use different technology for inbound and outbound? Quote Link to comment Share on other sites More sharing options...
Vodia PBX Posted May 10, 2022 Report Share Posted May 10, 2022 Well according to the RFC it is okay if one direction sends a different codec than the other direction, though some service providers have a problem with it—and some devices. Seems like the DP752 cannot handle sending PCMA and receiving PCMA? I agree for the sake of better interoperability the app should prefer the codec that was also preferred by the other side of the call. We'll include that in the next build. Quote Link to comment Share on other sites More sharing options...
RichardDCG Posted May 10, 2022 Author Report Share Posted May 10, 2022 Thanks, it would help if the app followed PBX set preferences. The DP752 was used just to show the difference was with the app, whether it made the call or received it. The 2 calls are also internally within the system and not over any external SIP trunk. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.