Se ambos os lados da chamada SIP usam SAME codec, você precisa de um módulo de formatação (format_g729.so, por exemplo), mas NÃO precisa de um módulo de codec (codec_g729.so)
No entanto, se você reproduzir algo e a gravação não estiver em .g729, você precisará de um codec.
Se você usa fluxo descompactado (outro codec ou cartão pstn / e1), precisa de codec.
Além disso, em algumas variantes pode haver situações em que um stream downway vai com um codec, upstream mesmo stream para outro codec (se ambos os side support 2 codec mas conjunto de preferência diferente)
O mecanismo de mixagem Asterisk tentará evitar o codec se possível (principalmente na versão acima de 11.x). No entanto, devido à limitação interna, pode haver uma situação em que o codec é suportado por ambas as extremidades, mas ainda seleciona o codec diferente nas duas etapas das chamadas.
Por exemplo, se você tiver de um lado
allow=g729
allow=g723
do outro lado
allow=g723
allow=g729
E ambos os telefones suportam os dois codecs, o asterisco selecionará o codec superior para ambos e exigirá o codec binary. Na versão mais nova você pode controlar isso alterando as opções em sip.conf
preferred_codec_only=
Além disso, você pode colocar a preferência de codecs em variáveis