Codec Error

Buonasera

Eseguendo chiamate in uscita e ingresso vengono abbattute appena si risposnde con il seguente errore:

raspbx CLI> [2021-11-28 15:51:45] WARNING[7508]: channel.c:5686 set_format: Unable to find a codec translation path: (g722) → (g729)
raspbx
CLI> [2021-11-28 15:51:45] WARNING[7508]: channel.c:5686 set_format: Unable to find a codec translation path: (g729) → (g722)

In Asterisk SIP Setting suno attivi
Mi potete dare una mano

Have you installed and licensed the G.279 codec?

No

Ma ho sempre usato Asterisk senza licenze, dopo nuova installazione ora è in errore

Asterisk does not have a G.729 codec, but can pass through G.729 if both sides are using G.729… You have one side that has chosen to use G.722 and one side that has chosen to use G.729, That requires the codec. You have to obtain the codec separately from Asterisk. The only Asterisk implementation of G.729 for which I am confident that there can be valid licences is the one that Sangoma supply. There is a charge for licences to use it.

Your simplest solution is likely to be to remove G.729 from the list of permitted codecs.

Incidentally, my understanding of EU law is that you do need a licence to use Asterisk, although that licence is free and is covered by the GPL. My understanding is that running a program for which you have a copy of the code does not require a licence in the USA, but does in the EU.

G.729 I think was bundled in the official distro from v15 I think. However I wouldn’t recommend transcoding to G729 on a Raspberry PI anyway as you are likely to kill it pretty quickly. If you have low bandwidth issues you might want to try OPUS codec instead.

Sangoma don’t do an ARM build of the codec and don’t provide source code. Chances are that it contains some assembler code.

At least the original problem with the purported open source one was that it used code from Intel intended only for Intel machines The licensing problem was that code was no commercial use and no distribution, both of which conflicted with the claimed GPL. I assume the Intel optimisations are assembler.

Grazie ragazzi

Ok trovato la soluzione con codec G722 e ALAW

Ciao @Domgi, solo per riassumere.
Come dice @david55 Asterisk può fare passthrough nel caso non abbia il coded a bordo. In ogni caso, come suggerisce anche @rsmithuk su una Raspberry, eviterei di fare transcoding di qeusto tipo, data la pesantezza dell’operazione.

nelle configurazioni SIP di FreePBX elimina il codec g729 dalle preferenze e possibilmente lascia solo alaw (g711a) che viene usato in Europa. ulaw è usato in America. g711 è un codec non compresso e facile da gestire dal sistema.
Per aggiungere qualunque altro codec, ti consiglio di indagare sulle capacità dell’altro endpoint (Provider o telefono che sia) e attivare solo i codec in uso, per evitare qualunque tipo di transcoding.

Esegui questo comando in asterisk “core show translation” e vedrai che capirai meglio quanto ti cost il transcoding.
Ciao

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.