Speex provides fairly good audio qualities at reasonable CPU and bandwidth requirements.
mod_speex offers some support for RFC 5574 fmtp codec negotiation. If the fmtp for Speex is defined in an offer or response, FreeSWITCH will configure the codec to use the preferred bit rate, vad, quality, etc. If the fmtp line is not present, FreeSWITCH will configure the codec using the default settings.
FreeSWITCH does not currently offer fmtp when originating calls except in the case where an A-leg has already offered an fmtp and the call is being bridged.
Speex offers many configuration options to control the default quality, complexity, VAD, etc. The conf/autoload_configs/speex.conf.xml file defines these options. See the Speex manual for a description of what these options control.
Example default configuration