AGC()

Since 1.6.1.0 Functions Found this useful? Upvote it. ×

Apply automatic gain control to audio on a channel.

Last reviewed 2026-04-14

AGC(channeldirection)
Description

The AGC function will apply automatic gain control to the audio on the channel that it is executed on. Using rx for audio received and tx for audio transmitted to the channel. When using this function you set a target audio level. It is primarily intended for use with analog lines, but could be useful for other channels as well. The target volume is set with a number between 1-32768. The larger the number the louder (more gain) the channel will receive.

Apply automatic gain control
exten => 1,1,Set(AGC(rx)=8000)
exten => 1,2,Set(AGC(tx)=off)
Arguments
  • channeldirection required - This can be either rx or tx
User Notes

Know a tip or gotcha for this topic? Share it below and help others.

Contribute a note

Share a tip, gotcha, or practical example. Keep it under 2000 characters. No questions (use the Asterisk community forums for support). Wrap code in backticks.

Moderated before publishing. Email never shown.
Functions
CDR() ABS() AES_DECRYPT() AES_ENCRYPT() AGC() AGENT() AMI_CLIENT() ARRAY() AST_CONFIG() AST_SORCERY() BASE64_DECODE() BASE64_ENCODE() BASENAME() BLACKLIST() CALENDAR_BUSY() CALENDAR_EVENT() CALENDAR_QUERY() CALENDAR_QUERY_RESULT() CALENDAR_WRITE() CALLCOMPLETION() CALLERID() CALLERPRES() CDR_PROP() CHANNEL() CHANNELS() CHANNEL_EXISTS() CHECKSIPDOMAIN() CONFBRIDGE() CONFBRIDGE_CHANNELS() CONFBRIDGE_INFO() CONNECTEDLINE() CSV_QUOTE() CURL() CURLOPT() CUT() DAHDI_CHANNEL() DB() DB_DELETE() DB_EXISTS() DB_KEYCOUNT() DB_KEYS() DEC() DELETE() DENOISE() DEVICE_STATE() DIALGROUP() DIALPLAN_EXISTS() DIGIT_SUM() DIRNAME() DUNDILOOKUP() DUNDIQUERY() DUNDIRESULT() ENUMLOOKUP() ENUMQUERY() ENUMRESULT() ENV() EVAL() EVAL_EXTEN() EVAL_SUB() EXCEPTION() EXISTS() EXPORT() EXTENSION_STATE() FAXOPT() FEATURE() FEATUREMAP() FIELDNUM() FIELDQTY() FILE() FILE_COUNT_LINE() FILE_FORMAT() FILTER() FRAME_DROP() FRAME_TRACE() GEOLOC_PROFILE() GLOBAL() GLOBAL_DELETE() GLOBAL_EXISTS() GROUP() GROUP_COUNT() GROUP_LIST() GROUP_MATCH_COUNT() HANGUPCAUSE() HANGUPCAUSE_KEYS() HASH() HASHKEYS() HINT() HOLD_INTERCEPT() IAXPEER() IAXVAR() ICONV() IF() IFMODULE() IFTIME() IMPORT() INC() ISNULL() JABBER_RECEIVE() JABBER_STATUS() JITTERBUFFER() JSON_DECODE() KEYPADHASH() LEN() LISTFILTER() LOCAL() LOCAL_PEEK() LOCK() LOG_GROUP() LTRIM() MAILBOX_EXISTS() MASTER_CHANNEL() MATH() MAX() MD5() MEETME_INFO() MESSAGE() MESSAGE_DATA() MIN() MINIVMACCOUNT() MINIVMCOUNTER() MIXMONITOR() MUTEAUDIO() ODBC() ODBC_FETCH() PARK_GET_CHANNEL() PASSTHRU() PERIODIC_HOOK() PITCH_SHIFT() PJSIP_AOR() PJSIP_CONTACT() PJSIP_DIAL_CONTACTS() PJSIP_DTMF_MODE() PJSIP_ENDPOINT() PJSIP_HEADER() PJSIP_HEADERS() PJSIP_HEADER_PARAM() PJSIP_INHERITABLE_HEADER() PJSIP_MEDIA_OFFER() PJSIP_MOH_PASSTHROUGH() PJSIP_PARSE_URI() PJSIP_PARSE_URI_FROM() PJSIP_RESPONSE_HEADER() PJSIP_RESPONSE_HEADERS() PJSIP_SEND_SESSION_REFRESH() PJSIP_TRANSFER_HANDLING() POLARITY() POP() PP_EACH_EXTENSION() PP_EACH_USER() PRESENCE_STATE() PUSH() QUEUE_EXISTS() QUEUE_GET_CHANNEL() QUEUE_MEMBER() QUEUE_MEMBER_COUNT() QUEUE_MEMBER_LIST() QUEUE_MEMBER_PENALTY() QUEUE_VARIABLES() QUEUE_WAITING_COUNT() QUOTE() RAND() REALTIME() REALTIME_DESTROY() REALTIME_FIELD() REALTIME_HASH() REALTIME_STORE() RECORDING_INFO() REDIRECTING() REGEX() REPLACE() RTRIM() SAYFILES() SCRAMBLE() SET() SHA1() SHARED() SHELL() SHIFT() SIPPEER() SIP_HEADER() SIP_HEADERS() SMDI_MSG() SMDI_MSG_RETRIEVE() SORT() SPEECH() SPEECH_ENGINE() SPEECH_GRAMMAR() SPEECH_RESULTS_TYPE() SPEECH_SCORE() SPEECH_TEXT() SPRINTF() SQL_ESC() SQL_ESC_BACKSLASHES() SRVQUERY() SRVRESULT() STACK_PEEK() STAT() STIR_SHAKEN() STIR_SHAKEN_ATTESTATION() STRBETWEEN() STRFTIME() STRPTIME() STRREPLACE() SYSINFO() TALK_DETECT() TESTTIME() TIMEOUT() TOLOWER() TONE_DETECT() TOUPPER() TRIM() TRYLOCK() TXTCIDNAME() UNLOCK() UNSHIFT() URIDECODE() URIENCODE() UUID() VALID_EXTEN() VARIABLE_EXISTS() VERSION() VMCOUNT() VM_INFO() VOLUME()
Functions
CDR() ABS() AES_DECRYPT() AES_ENCRYPT() AGC() AGENT() AMI_CLIENT() ARRAY() AST_CONFIG() AST_SORCERY() BASE64_DECODE() BASE64_ENCODE() BASENAME() BLACKLIST() CALENDAR_BUSY() CALENDAR_EVENT() CALENDAR_QUERY() CALENDAR_QUERY_RESULT() CALENDAR_WRITE() CALLCOMPLETION() CALLERID() CALLERPRES() CDR_PROP() CHANNEL() CHANNELS() CHANNEL_EXISTS() CHECKSIPDOMAIN() CONFBRIDGE() CONFBRIDGE_CHANNELS() CONFBRIDGE_INFO() CONNECTEDLINE() CSV_QUOTE() CURL() CURLOPT() CUT() DAHDI_CHANNEL() DB() DB_DELETE() DB_EXISTS() DB_KEYCOUNT() DB_KEYS() DEC() DELETE() DENOISE() DEVICE_STATE() DIALGROUP() DIALPLAN_EXISTS() DIGIT_SUM() DIRNAME() DUNDILOOKUP() DUNDIQUERY() DUNDIRESULT() ENUMLOOKUP() ENUMQUERY() ENUMRESULT() ENV() EVAL() EVAL_EXTEN() EVAL_SUB() EXCEPTION() EXISTS() EXPORT() EXTENSION_STATE() FAXOPT() FEATURE() FEATUREMAP() FIELDNUM() FIELDQTY() FILE() FILE_COUNT_LINE() FILE_FORMAT() FILTER() FRAME_DROP() FRAME_TRACE() GEOLOC_PROFILE() GLOBAL() GLOBAL_DELETE() GLOBAL_EXISTS() GROUP() GROUP_COUNT() GROUP_LIST() GROUP_MATCH_COUNT() HANGUPCAUSE() HANGUPCAUSE_KEYS() HASH() HASHKEYS() HINT() HOLD_INTERCEPT() IAXPEER() IAXVAR() ICONV() IF() IFMODULE() IFTIME() IMPORT() INC() ISNULL() JABBER_RECEIVE() JABBER_STATUS() JITTERBUFFER() JSON_DECODE() KEYPADHASH() LEN() LISTFILTER() LOCAL() LOCAL_PEEK() LOCK() LOG_GROUP() LTRIM() MAILBOX_EXISTS() MASTER_CHANNEL() MATH() MAX() MD5() MEETME_INFO() MESSAGE() MESSAGE_DATA() MIN() MINIVMACCOUNT() MINIVMCOUNTER() MIXMONITOR() MUTEAUDIO() ODBC() ODBC_FETCH() PARK_GET_CHANNEL() PASSTHRU() PERIODIC_HOOK() PITCH_SHIFT() PJSIP_AOR() PJSIP_CONTACT() PJSIP_DIAL_CONTACTS() PJSIP_DTMF_MODE() PJSIP_ENDPOINT() PJSIP_HEADER() PJSIP_HEADERS() PJSIP_HEADER_PARAM() PJSIP_INHERITABLE_HEADER() PJSIP_MEDIA_OFFER() PJSIP_MOH_PASSTHROUGH() PJSIP_PARSE_URI() PJSIP_PARSE_URI_FROM() PJSIP_RESPONSE_HEADER() PJSIP_RESPONSE_HEADERS() PJSIP_SEND_SESSION_REFRESH() PJSIP_TRANSFER_HANDLING() POLARITY() POP() PP_EACH_EXTENSION() PP_EACH_USER() PRESENCE_STATE() PUSH() QUEUE_EXISTS() QUEUE_GET_CHANNEL() QUEUE_MEMBER() QUEUE_MEMBER_COUNT() QUEUE_MEMBER_LIST() QUEUE_MEMBER_PENALTY() QUEUE_VARIABLES() QUEUE_WAITING_COUNT() QUOTE() RAND() REALTIME() REALTIME_DESTROY() REALTIME_FIELD() REALTIME_HASH() REALTIME_STORE() RECORDING_INFO() REDIRECTING() REGEX() REPLACE() RTRIM() SAYFILES() SCRAMBLE() SET() SHA1() SHARED() SHELL() SHIFT() SIPPEER() SIP_HEADER() SIP_HEADERS() SMDI_MSG() SMDI_MSG_RETRIEVE() SORT() SPEECH() SPEECH_ENGINE() SPEECH_GRAMMAR() SPEECH_RESULTS_TYPE() SPEECH_SCORE() SPEECH_TEXT() SPRINTF() SQL_ESC() SQL_ESC_BACKSLASHES() SRVQUERY() SRVRESULT() STACK_PEEK() STAT() STIR_SHAKEN() STIR_SHAKEN_ATTESTATION() STRBETWEEN() STRFTIME() STRPTIME() STRREPLACE() SYSINFO() TALK_DETECT() TESTTIME() TIMEOUT() TOLOWER() TONE_DETECT() TOUPPER() TRIM() TRYLOCK() TXTCIDNAME() UNLOCK() UNSHIFT() URIDECODE() URIENCODE() UUID() VALID_EXTEN() VARIABLE_EXISTS() VERSION() VMCOUNT() VM_INFO() VOLUME()