Jump to content

Calls set to use PCMU on app


RichardDCG
 Share

Recommended Posts

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.

Link to comment
Share on other sites

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. 

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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. 

Link to comment
Share on other sites

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?

Link to comment
Share on other sites

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. 

Link to comment
Share on other sites

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?

Link to comment
Share on other sites

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. 

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...