Konfiguration des Codecs
Codecs werden pro Channel-Treiber konfiguriert: In pjsip.conf für
SIP-Endpoints, in iax.conf für IAX-Peers.
Beispiel mit einem festen Codec
Soll ein PJSIP-Endpoint ausschließlich G.711 (alaw) sprechen:
[2000]
type=endpoint
disallow=all
allow=alaw
; ...
Beispiel mit mehreren Codecs zur Auswahl
Die allow=-Zeilen werden in der Reihenfolge ausgehandelt — die erste
hat die höchste Priorität.
[2000]
type=endpoint
disallow=all
allow=ulaw
allow=alaw
allow=g722
allow=opus
; ...
Mit dieser Liste handelt Asterisk mit dem Telefon den Codec aus:
Wenn beide Seiten opus unterstützen, gewinnt opus nicht
automatisch — die Reihenfolge gibt die Präferenz vor, und hier steht
ulaw vorn. Wer HD-Audio bevorzugen möchte, dreht die Reihenfolge um.
|
Mit PJSIP-Templates (siehe Konfigurations-Templates) vermeiden Sie, die Codec-Liste in jedem Endpoint-Block zu wiederholen:
|
Im Dialplan: was spricht mein Channel gerade?
Die Funktion CHANNEL(audionativeformat) (ausgehend) bzw.
CHANNEL(audioreadformat) (eingehend) verrät den aktuell gewählten
Codec:
exten => 123,1,NoOp(Ich hoere: ${CHANNEL(audioreadformat)})
same => n,NoOp(Ich sende: ${CHANNEL(audiowriteformat)})
Das ist beim Troubleshooting von Qualitäts- oder Transkodierungsproblemen extrem nützlich.