I have a console version of linphone-3.0.0 ported to ARM with added some functionality such as enabling and disabling codecs on the fly. Also I added my peculiar codec to linphone with which SIP-clients in our network can have conversations safely.
I use the following code to enable/disable codecs:
The problem is that my codec (described as cruis_amr above) is not fully disabled. Actually if g711 is disabled or not is not important, because cruis_amr is safty codec. Two peers get connected with cruis_amr codec always if the calling peer has cruis_amr codec enabled, while the called peer can have it disabled. So I don't understand which additional steps I should perform to avoid such mistakes (safety call should be safety :) ).