Just a general question. I’ve been playing with the codec setup on my system to enable HD codecs between endpoints. I have generally been able to do this by using “allow=all” in the setup for the extensions and trunks, and leave it to the endpoints themselves to negotiate the best codec to use.
My question is, why would you want to disallow any codecs anyway? Is it just to work-around buggy endpoints? Assuming the endpoints are configured and correctly, is there any reason why I would disallow any codecs?
The only answer I can think of is that you might encounter a provider that gives priority to a lower quality codec, and you might prefer to use the higher quality codec instead.
Some people prefer to only allow high quality codecs (ulaw and alaw, and maybe G722 if any endpoints support it) because the sound quality is much better, and you don’t run into as many issues with things not working (for example, you at least have a chance of using an old-school fax machine over a ulaw/alaw connection, but forget it if you’re using a highly compressed codec). On the other hand, some people pay dearly for their bandwidth, so they may choose to use only the high-compression, lower quality codecs (that make calls sound like you are using a really bad cell phone, in my opinion).
I’m among those that disallow the high-compression, low quality codecs, as you might have guessed!