Codec
Definición
Un códec es un algoritmo de software que transforma flujos de audio en formatos adecuados para su transmisión por redes IP. Permite tanto codificar como decodificar los datos de audio, y el códec específico se elige durante la negociación de establecimiento de la llamada SIP entre las partes comunicantes.
Cómo lo implementa VICIdial
Opciones de códec soportadas:
- G.711 (ulaw/alaw): el predeterminado en sistemas de Norteamérica, entrega audio de calidad telefónica a 64 kbps por llamada con una sobrecarga de CPU mínima.
- G.729: comprime el audio a 8 kbps, reduciendo los requisitos de ancho de banda en aproximadamente un 87%, pero exige más recursos de CPU y una licencia comercial.
- Opus: una opción moderna y de código abierto, usada principalmente en conexiones WebRTC.
Detalles de configuración: los códecs se configuran a nivel de endpoint SIP/PJSIP y de troncal. Cuando distintos endpoints usan códecs incompatibles, Asterisk realiza una transcodificación entre formatos, un proceso que aumenta considerablemente el consumo de CPU. El desempeño óptimo se logra estandarizando la selección de códec entre las troncales del carrier y los endpoints de agente, para eliminar la necesidad de transcodificación.
Impacto en la grabación: las grabaciones en G.711 requieren aproximadamente 480 KB de almacenamiento por minuto, mientras que las grabaciones en G.729 consumen alrededor de 60 KB por minuto.
Por qué importa la elección del códec
Se ven afectadas tres áreas operativas críticas:
- Calidad de llamada y desempeño de audio: G.711 ofrece mejor fidelidad de audio.
- Requisitos de ancho de banda: un servidor que gestiona 200 llamadas concurrentes en G.711 requiere aproximadamente 100 Mbps, mientras que el mismo volumen en G.729 necesita solo 13 Mbps.
- Capacidad del servidor: la transcodificación de G.729 puede limitar el número de llamadas simultáneas por restricciones de CPU.
Buenas prácticas
G.711 ulaw es el predeterminado recomendado para la mayoría de los despliegues, ofreciendo la mejor relación entre calidad y eficiencia de CPU. Reservar G.729 específicamente para entornos con ancho de banda limitado, como agentes remotos con conexiones restringidas.